一、基本权限UGO
u:属主 g:属组 o:其他人 a:所有人(u+g+o)
权限分为:读=r=4 写+w=2 执行+x=1
只能给一个用户,一个组和其他人设置权限
例如:#ll /root/1.txt
结果:-rw-r–r--. 1 root root 179 5月 25 14:27 /root/1.txt
结果字段信息:-文件类型 主人的权限,属主 属组的权限 其他人的权限 .(点)权限的扩展 文件链接 文件的属主 文件的属组 大小(单位:K) 文件最后的修改时间 文件的名和路径
1.更改权限
使用符号:
语法:#chmod 对象(u/g/o/a)赋值符(+/-/=)权限类型(r/w/x,可选择多个) 文件/目录
例如:#chmod u+x file1 //属主增加执行
#chmod ug=rw,o=r fil1 //属主属组等于读写,其他人只读
使用数字:
例如:#chmod 644 file1 //属主读写,属组和其他人只读
2.更改属主、属组
chown命令:
设置一个文件的归属(属于哪个用户和那个组)
语法:#chown 用户名.组名 文件
-R //针对目录中所有的文件
例如:#chown alice.hr file1 //改属主、属组
#chown alice file1 //只改属主
#chown .hr file1 //只改属组
chgrp命令:
只能设置一个文件的属组
#chgrp -R it dir1 //改目录及其里面所有文件目录属组为it
二、基本权限ACL
设置不同用户,不同的基本权限(r、w、x)。对象数量不同
语法:#setfale 参数 用户或组:用户名:权限 文件对象
例如:#setfacl -m u:alice:rw /home/test.txt //给用户alice对文件/home/test.txt读写的权限
-d //删除指定的用户或者组的指定权限
-b //删除文件所有ACL权限
查看文件ACL权限:getfacl 文件
例如:#getfacl /cc/1.txt
结果:getfacl: Removing leading ‘/’ from absolute path names
//查看文件权限,删除了根路径。
# file: home/test.txt 文件名
# owner: root // 属主:root
# group: root // 属组:root
user::rwx //用户:属主:rwx权限
user:alice:rw- //用户:alice:rw-权限
user:jack:— // 用户:jack:无权限
group::rwx //组:属组:rwx权限
mask::rwx //掩码::rwx权限
other::rwx //other:其他人:rwx权限
三、特殊权限
1.特殊位(suid)
通过对/root/下的命令文件赋权来实现所有用户对/root/里的文件执行已被赋权的命令
例如:#chmod u+s /usr/bin/cat ==>普通用户可查看/root/里面的文件
!赋权之后记得除去该权限
2.文件属性(chattr)
查看默认权限:#lsattr file100
结果:-------------- file100
# chattr +i file100 //该文件不能更改,重命名,删除(包括root用户)
+a //只能追加,不可修改内容,通常用于日志、邮件等等
3.进程掩码(umask)
新建文件、目录的默认权限会受到umask的影响
umask表示要减掉的权限
新目录权限是777减去umask
新文件是666减去umask,即新文件创建默认不会有执行权