目录
1. 改变文件/目录所有者 chown
2. 改变文件/目录的所属组 chgrp
3. 显示文件的缺省(默认)权限 umask [-S]
1. 改变文件/目录所有者 chown
改变文件权限使用chmod,只有root和当前文件拥有者可以更改,如果想要更改目录/文件的所有者,则使用chown,具体用法:chown [用户] [文件/目录]
示例:改变文件hello.txt的所有者为 liu
chown liu hello.txt
2. 改变文件/目录的所属组 chgrp
默认当前文件的所属组为创建用户,如果想要更改文件的所属组,用法: chgrp [用户组] [文件/目录]
示例:改变文件hello.txt的所属组为 group1
chgrp group1 hello.txt
3. 显示文件的缺省(默认)权限 umask [-S]
umask显示的是默认的新建文件权限,可以通过umask命令改变文件/目录权限控制的预设值
语法:umask [-S],其中-S是以rwx形式显示新建文件默认权限
liu@SLR:/hd1/Dling/lane/Wmq/hello$ umask -S
u=rwx,g=rwx,o=rx
所以新建一个文件夹 hello1,该文件默认的属性如下为 rwxrwxr-x(不同电脑跟用户可能不同)
liu@SLR:/hd1/Dling/lane/Wmq/hello$ ls -l
total 4
drwxrwxr-x 2 liu liu 4096 1月 21 14:55 hello1
但注意,如果新建的是一个文件hello1.txt,则该文件相对于文件夹,其默认权限会缺少一个可执行属性 x: rwxrwxr-x -> rw-rw-r--
如果我们使用 umask,出现的则是一串数字,如下:
liu@SLR:/hd1/Dling/lane/Wmq/hello$ umask
0002
该结果和umask所表示的相同,只不过需要特殊的计算方式,如下:
0002中的第一个0表示特殊权限,则002对应到rwx为:--- --- -w-,然后用对应的rwx与777(即 rwx rwx rwx)做逻辑与操作,则得到 rwx rwx r-x作为最终的结果,也就是umask [-S]中显示的结果。但是上述操作对应的是文件夹,如果要是文件的话,则要减去x,即为 rw- rw- r--
如果要是想修改默认权限值,就直接按照umask的计算方式,反推回去设置默认值即可:
如果想要创建目录的默认权限为 700(即rwx --- ---),则与777进行的操作权限为 --- rwx rwx,【因为777为 rwx rwx rwx,--- rwx rwx与 rwx rwx rwx (777)进行逻辑与操作,能够得到想要穿件目录的默认权限 rwx --- ---(700),所以直接设置umaks权限值为 077,代码如下】
umask 077
【但一般情况下不要修改默认权限,没有必要!!】
今天是除夕夜,祝看到博客的大家除夕夜快乐,新年快乐,万事胜意!