03、Linux 教程:基本权限与初始权限

基本权限与初始权限

修改文件权限chmod

只有所有者和root能修改对应文件的权限。

chmod(change mode)修改文件权限,chmod g+w,o-r 文件代表给所属组增加写权限,给other减少读权限,g代表group所属组,o代表other,u代表所有者,a代表all。也可以用等号,chmod g=rwx 文件表示将所属组权限全开。也可以用数字来修改权限,rwx分别对应421,如chmod 777 文件。-R表示递归修改,改变目录权限的同时修改其下的所有权限。

 

目录的写权限除了可以在目录中创建、删除文件外,还能对其中的文件和目录更名、挪动位置。

目录的执行权限意味着可以进入该目录,如果目录不具备x权限,那么就无法切换到目录下,也就无法执行该目录下的任何命令。

此时注意目录的写权限意味着可以删除目录下的文件,而不是有文件的写权限才能删除文件(只拥有对文件的写权限是无权删除该文件的)。反过来,即使用户拥有对某一文件的全部权限,但没有目录的权限,也什么都做不了。通常开放的目录r和x权限通常是同时存在的,这两个无法脱离开。

常用情况下的文件权限

 

修改文件所有者和所属组

chown(change file ownership)chown 用户 文件或目录表示将文件或目录的所有者更改为对应用户,只有root才能做这种操作。

chfrp(change group)改变文件的所属组。

文件初始权限查看与设置umask

umask -S代表查看文件初始权限设置。文件的初始权限是u=rwx g=rx o=rx,这个权限实际上是目录创建时的初始权限,文件的初始权限在这个基础上去掉了三个x,这是为了安全考虑。umask不加-S会出现四个数字0022,第一个0是特殊权限,后三位数字022转换为权限的9个字母与777对应权限的9个字母进行异或才能得到真正的权限,也就是755,目录的初始权限。用umask命令也可以修改默认权限值,修改时也是用数字,只不过这个数字不直接对应权限,而是需要进行上述的转换。

除了用异或来推断权限值外,还可以用减法,如计算对应022的文件权限,首先将022转换为权限-----w--w-,然后:

 

常用权限

常见的文件权限有三种:

不能执行类文件:-rw-rw-r--,对应644。

可执行但其他人不可修改脚本:-rwx-r-xr-x,对应755,默认权限。

其他人不可见文件:-rwxr-----,对应740。