- 查看及读取文件权限
2.更改用户拥有者和拥有组的方法
chown 更改用户拥有者
chgrp 更改用户拥有组
在更改目录的用户名,拥有组时,需要加 -R是更改用户目录及目录里边的文件,不加只更改用户目录的用户名,拥有组
实操:
更改方式:
chown 用户名 文件
chgrp 组名称 文件
chown -R 用户名 目录
chgrp -R 用户组 目录
chown 用户名:组名称 文件/目录
3.文件权限的设定方式
用chmod 命令可设置文件权限,三种方式可进行设置:字符方式,数字方式,依照模板复制文件权限
3.1 字符设定方式:
chmod u=rw TAG 给文件拥有者开通rw权限
chmod ug-w,o+x TAG 同时设置两类用户时,中间用“,”隔开
chmod -r|-x| TAR 文件拥有者,组,其他同时去掉r|x权限
chmod +r|+x| TAR 文件拥有者,组,其他同时增添r|x权限
chmod -w|+w 只针对文件拥有者(U)
chmod a-w | a+w TAR u.g.o 同时增减或去除w权限
根据需求添加权限
3.2 数字设置方式
权限可以用一个8进制表示
rwx 111 八进制:7
rw_ 110 八进制:6
r_x 101 八进制:5
r__ 100 八进制:4
_wx 011 八进制:3
w 010 八进制:2
_ _x 001 八进制:1
_ _ _ 000 八进制:0
权限管理方法
chmod 数字 TAG
3.3 依照模板复制文件权限
chmod --reference=属性源文件 TAG
实操:新建一个file1,使file1 权限属性和文件名为hounan保持一致
4.权限预留阀值
4.1临时设定预留阀值,仅在当前shell生效,退出当前环境程序设定将关闭
:umask 077
新建文件的权限为777-077-111=600
新建目录权限为777-077=700
4.2 永久设定权限预留阀值
vim /etc/bashrc :shell配置的更改
vim /etc/profile :用户环境的更改
002的更改是针对普通用户
022的更改是针对root用户
更改完成后需要:souce
souce /etc/bashrc
souce /etc/profile
再去查看umask值
5.特殊权限(SUID,SGID,STICKYID)
5.1 SUID
只针对二进制可执行文件,使用拥有SUID权限的文件,无论是谁发起的动作,都以文件的所有人去执行
实操:更改/bin/cat
ls -l /bin/cat 查看二进制文件属性,切换到student用户
可以看到student用户的用户和组都是student
现需要others用户在使用/bin/cat 文件时,是以/bin.cat的所有者身份去执行(你去出差代表的是公司而不是你个人)
chmod u+s /bin/cat
ls -l /bin/cat 发现U位设置成了RWS
再以student身份执行/bin/cat.监控到student所有人已设置/bin/cat的所有人
5.2 SGID
针对二进制可执行文件,该命令发起的程序是以该命令所有组的身份去执行
针对目录,目录新建文件的所属组与该目录的所有组保持一致
5.2.1 二进制可执行文件
与SUID针对二进制文件用法一致,只是更改的是所有组
chmod g+s /bin/cat
5.2.2针对目录
用户建立的文件自动归属到目录的所属组,file4文件的组用户被设置为root
5.3 STICKYID
当目录上有STICKYID权限时,所有用户均可在该目录下创建文件,但只有文件的拥有者和ROOT用户可以删除该目录下的文件
实操:
mkdir /mnt/pub
chmod 777 /mnt/pub
chmod o+t /mnt/pub
切换到student用户去执行删除其他用户建立的文件会出现:operation not permittied (不能删除)
5.4总结
SUID :
chmod u+s TAG
chmod 4+源文件属性 TAG
SGID:
chmod g+s TAG
chmod 2+源文件属性 TAG
STICKYID:
chmod o+tTAG
chmod 1+源文件属性 TAG
4,2,1也可自由组合
6.ACL权限列表
6.1 setfacl & getfacl
传统的权限仅有三种身份(owner,group,othe)搭配三种权限(R,W,X)
没有办法单纯的针对某一个使用者或者群组来设置特定的权限,此时需要使用ACL权限(文件访问控制列表access control list)
举例:westos文件增加student用户有RW权限
要点掌握:
setfacl -m u:student:rw /mnt/westos 给westos 增student用户有RW权限
getfacl /mnt/westos 权限查看
切换到student用户可进行文件的编辑读写功能
文件权限列表的增加,删除,关闭
增加用户特定权限
setfacl -m u/g:用户:权限 /路经
setfacl -m u:student:rw /mnt/westos
删除用户特定权限
setfacl -x u/g:用户 /路经
setfacl -x u:student /mnt/westos
关闭用户特定权限 ‘+‘变’.’
setfacl -b /路经
setfacl -b /mnt/westos
6.2 facl列表权限匹配顺序
资源拥有者>特定指定用户>权限开放多的组>权限开放少的组>其他
6.3 facl的mask阀值设定
mask阀值是指定用户能够获取的最大有效权限,当设定过fal列表后chmod缩减文件权限很可能损坏MASK
mask设定:setfacl -m m:权限值 TAG
6.4 facl的defult权限(针对目录)
6.4.1 针对当前目录已经存在的文件进行设定,新建的文件没有生效
要点掌握:setfacl -R -m u:用户:权限 /路经
setfacl -R -m u:student:rwx /mnt/westos
6.4.2 针对目录下新建文件的设置
只针对新建文件生效,目录之前存在的不起作用
setfacl -m d:u:用户:权限 /路经
setfacl -m d:u:student:rwx /mnt/westos/