博客地址 http://blog.51cto.com/ccj168/1976265
在linux中的每个用户必须属于一个组,不能独立于组外。每个文件有所有者、所属组、其它组的概念。
所有者
一般为文件的创建者,谁创建了该文件,自然成为该文件的所有者,也可以使用chown来修改文件的所有者。
所属组
当某个用户创建了一个文件后,这个文件的所属组就是该用户所属的组,也可以使用chgrp来修改文件所属的组。
其它组
除了文件的所有者和所属组的用户外,系统的其它用户都是文件的其它组。
文件和目录权限
文件权限规定了文件所有者对文件/目录的权限、文件所属用户组的成员对文件/目录的权限、其他用户对于文件/目录的权限。
r:可读权限
w:可写权限
x:可执行权限
对于目录和文件来说,这些权限代表的意义是不同的。
对于文件:
r:可以读取文件的内容。
w:可以写入文件内容,不能删除文件,如果要赋予删除文件的权限,则需要指定目录权限。
x:执行文件,不是每个文件都需要这个权限的,比如txt文件不需要。
对于目录:
r:可以读取目录下的目录结构,即能够执行ls查看目录下的文件名。
w:能够改变目录的结构,即添加、删除目录下的文件、对文件重命名。
x:能够进入目录,即cd到该目录。
ls -l查看文件或者目录
第一位字符代表文件(-)、目录(d),链接(l)。
后九位的权限划分为三段,第一段是所有者的权限,第二段是所属组的权限,第三段是其它用户对这文件的权限。
chmod命令
改变文件或目录的权限。
权限可表示为rwx:
r为读,w为写,x执行,---为无权限。
例:-rwxrwxrwx . 1 root root 所有者是root,所属组是root组,所有用户对这个文件可读可写可执行。
数字表示:
7=rwx 读、写、执行权限
6=rw- 读、写权限
5=r-x 读、执行权限
4=r-- 读权限
3=-wx 写、执行权限
2=-w- 写权限
1=--x 执行权限
#chmod 700 a.txt或#chmod u=rwx,g=-rwx,o=-rwx 修改为root对a.txt有rwx权限。
u:所有者 g:所属组 o:其他用户 a:所有用户
+加入权限,-除去权限,=设置权限。
chown命令
改变文件或目录的所有者或所属组。
#chown user1 修改所有者为user1
#chown:user2 修改所有组为user2
#chgrp user2 修改所有组为user2
#chown user1:user2 同时修改所有者和所有组。
#chmod -R 递归处理,可将目录下的所有文件及子目录一并修改。
umask
用来设置限制新建文件权限的掩码。
创建的目录默认权限是755。
创建的文件默认权限是644。
是因为usmask默认是0022 ,所以777-022=755(目录权限),666-022=644(文件权限)。
例:把umask设置为0002,创建的目录权限便是775,文件默认权限是664。
注意:用户对目录须有X权限,否则无法打开。
文件隐藏属性
a:文件只能添加内容,不能修改、移动、删除,常用于日志文件。
i :文件不能修改、移动、删除,即使root也不行,用于固定不变的文件。
lsattr命令
查看文件或目录的隐藏属性。
chattr命令
改变文件或目录的隐藏属性。
chattr +a 添加a属性
chattr +i 添加i属性
需要删除i、a权限,使用chattr -i 、chattr-a或chattr -ia即可。
编辑回复