chattr加锁解锁
Linux系统 chattr 文件加锁与解锁chattr命令用来改变文件属性,它可以改变存放在ext2文件系统上的文件或目录属性,这些属性共有8种模式a ——让文件或目录仅供附加用途;b ——不更新文件或目录的最后存取时间;c ——将文件或目录压缩后存放;d ——将文件或目录排除在倾倒操作之外;i ——不得任意改动文件或目录;s ——保密性删除文件或目录;S ——即时更新文件或目录;u ——预防意
·
Linux系统 chattr 文件加锁与解锁
chattr命令用来改变文件属性,它可以改变存放在ext2文件系统上的文件或目录属性,这些属性共有8种模式
- a ——让文件或目录仅供附加用途;
- b ——不更新文件或目录的最后存取时间;
- c ——将文件或目录压缩后存放;
- d ——将文件或目录排除在倾倒操作之外;
- i ——不得任意改动文件或目录;
- s ——保密性删除文件或目录;
- S ——即时更新文件或目录;
- u ——预防意外删除;
以/etc/passwd文件为例:
先查看当前状态
[root@localhost ~]# lsattr /etc/passwd
---------------- /etc/passwd
使用chattr锁定 编辑权限
[root@localhost ~]# chattr +i /etc/passwd
[root@localhost ~]# lsattr /etc/passwd
----i----------- /etc/passwd
以上输出 “ i ”表示该文件已经是无法改动的状态了
可以试一下rm,mv都已经无法改动包括vi,vim也无法编辑
[root@localhost ~]# rm -rf /etc/passwd
rm: 无法删除"/etc/passwd": 不允许的操作
[root@localhost ~]# mv /etc/passwd /root/
mv: 无法将"/etc/passwd" 移动至"/root/passwd": 不允许的操作
使用chattr解除锁定 编辑权限
[root@localhost ~]# chattr -i /etc/passwd
[root@localhost ~]# lsattr /etc/passwd
---------------- /etc/passwd
以上输出空表示该文件没有锁定可任意更改
[root@localhost ~]# rm -rf passwd
[root@localhost ~]# mv /etc/passwd /root/
[root@localhost ~]# ls
anaconda-ks.cfg initial-setup-ks.cfg passwd
可以任意移动
[root@localhost ~]# mv passwd /etc/
[root@localhost ~]# rm -rf /etc/passwd
[root@localhost ~]#
将文件移动回去,执行rm命令,可以直接删除。
对于一些关键的操作日志,例如用户admin家目录下的.bash_logout文件,不想用户自己能够清空,我们可以使用下面的命令来更改文件智能追加写入
[root@localhost ~]# lsattr /home/admin/.bash_logout
---------------- /home/admin/.bash_logout
[root@localhost ~]# chattr +a /home/admin/.bash_logout
[root@localhost ~]# lsattr /home/admin/.bash_logout
-----a---------- /home/admin/.bash_logout
以上输出 “ a ”表示该文件已经是只能追加写入的状态了
解锁操作
[root@localhost ~]# chattr -i /etc/passwd
更多推荐
已为社区贡献2条内容
所有评论(0)