1.
1.查询用户的组信息
id test
2. 修改用户所属组
usermod -g 新主名 用户名
3. 添加附属组
usermod -aG 附属组 用户名
-a
选项表示追加(append),-G
指定附加组。如果不使用 -a
选项,用户将只属于指定的附加组,其他附加组会被移除。=
2.
1. 添加用户到组
gpasswd -a 用户名 新增组名
2. 从组中移除用户
gpasswd -d 用户名 组名
1. chattr命令
chattr命令用于设置文件的隐藏权限,英文全称为change attributes,语法格式为“chattr [参数] 文件名称”。
如果想要把某个隐藏功能添加到文件上,则需要在命令后面追加“+参数”,如果想要把某个隐藏功能移出文件,则需要追加“-参数”。chattr命令中可供选择的隐藏权限参数非常丰富
chattr命令中的参数及其作用
参数 | 作用 |
i | 无法对文件进行修改;若对目录设置了该参数,则仅能修改其中的子文件内容而不能新建或删除文件 |
a | 仅允许补充(追加)内容,无法覆盖/删除内容(Append Only) |
S | 文件内容在变更后立即同步到硬盘(sync) |
s | 彻底从硬盘中删除,不可恢复(用0填充原文件所在硬盘区域) |
A | 不再修改这个文件或目录的最后访问时间(atime) |
b | 不再修改文件或目录的存取时间 |
D | 检查压缩文件中的错误 |
d | 使用dump命令备份时忽略本文件/目录 |
c | 默认将文件或目录进行压缩 |
u | 当删除该文件后依然保留其在硬盘中的数据,方便日后恢复 |
t | 让文件系统支持尾部合并(tail-merging) |
x |
可以直接访问压缩文件中的内容 |
查看文件的隐藏权限
lsattr 文件名
添加隐藏权限
chattr +a 文件名
删除隐藏权限
chattr -a 文件名
2. setfacl命令
setfacl命令用于管理文件的ACL权限规则,英文全称为“set files ACL”,语法格式为“setfacl [参数] 文件名称”。
ACL权限提供的是在所有者、所属组、其他人的读/写/执行权限之外的特殊权限控制。使用setfacl命令可以针对单一用户或用户组、单一文件或目录来进行读/写/执行权限的控制。其中,针对目录文件需要使用-R递归参数;针对普通文件则使用-m参数;如果想要删除某个文件的ACL,则可以使用-b参数。
setfacl命令中的参数以及作用
参数 | 作用 |
-m | 修改权限 |
-M | 从文件中读取权限 |
-x | 删除某个权限 |
-b | 删除全部权限 |
-R | 递归子目录 |
禁止test01用户访问()/root/目录 仅仅允许只读
setfacl -Rm u:test:r /root
查看目录下的权限限制
getfacl /root
取消目录策略
getfacl -x u:test /root
在执行目录策略前,可以先将目录的策略备份
getfacl -R /root > back.acl
如果想恢复策略可直接执行以下命令
setfacl --restore=back.acl