
正文
Shell命令-文件及目录操作之chattr、lsattr
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
文件及目录操作 - chattr、lsattr1. chattr:改变文件属性chattr命令的功能说明
chattr命令用于改变文件属性。这项指令可改变存放在ext2文件系统上的文件或目录属性,这些属性共有以下8种模式:
- a:让文件或目录仅供附加用途。
- b:不更新文件或目录的最后存取时间。
- c:将文件或目录压缩后存放。
- d:将文件或目录排除在倾倒操作之外。
- i:不得任意更动文件或目录。
- s:保密性删除文件或目录。
- S:即时更新文件或目录。
- u:预防意外删除。
chattr命令的语法格式
chattr [ -RVf ] [ -v version ] [ mode ] files...
chattr [-RV] [-v] [+/-/=] [文件或目录...]
chattr命令的选项说明
chattr 参数有几个,表1为 chattr 命令的参数及说明:
表1: chattr命令的参数及说明
chattr命令的功能说明
chattr命令用于改变文件属性。这项指令可改变存放在ext2文件系统上的文件或目录属性,这些属性共有以下8种模式:
- a:让文件或目录仅供附加用途。
- b:不更新文件或目录的最后存取时间。
- c:将文件或目录压缩后存放。
- d:将文件或目录排除在倾倒操作之外。
- i:不得任意更动文件或目录。
- s:保密性删除文件或目录。
- S:即时更新文件或目录。
- u:预防意外删除。
chattr命令的语法格式
chattr[ -RVf ] [ -v version ] [ mode ] files...chattr[-RV] [-v] [+/-/=] [文件或目录...]
chattr命令的选项说明
chattr参数有几个,表1为chattr命令的参数及说明:
表1:
chattr命令的参数及说明
| 参数选项 | 解释说明 |
|---|---|
| -R | 递归处理,将指定目录下的所有文件及子目录一并处理。 |
| -v | 设置文件或目录版本。 |
| -V | 显示指令执行过程。 |
| + | 开启文件或目录的该项属性。 |
| - | 关闭文件或目录的该项属性。 |
| = | 指定文件或目录的该项属性。 |
chattr命令的实践操作
范例1: 用
chattr命令防止系统中某个关键文件被修改:
[root@oldboyedu ~]# chattr +i /etc/resolv.conf[root@oldboyedu ~]# lsattr /etc/resolv.conf <-->lsattr显示文件属性(后面会讲)----i-------- /etc/resolv.conf
[root@oldboyedu ~]# chattr +i /etc/passwd #<==锁定文件不能删除,不能修改[root@oldboyedu ~]# lsattr /etc/passwd----i----------- /etc/passwd[root@oldboyedu ~]# lsattr /etc/hosts---------------- /etc/hosts[root@oldboyedu ~]# cp /etc/passwd{,.ori}[root@oldboyedu ~]# rm -f /etc/passwdrm: cannot remove ‘/etc/passwd’: Operation not permitted[root@oldboyedu ~]# echo ddd > /etc/passwd-bash: /etc/passwd: Permission denied[root@oldboyedu ~]# useradd littleboyuseradd: cannot open /etc/passwd[root@oldboyedu ~]chattr -i /etc/passwd #<==解锁文件。
范例2: 让某个文件只能往里面追加数据,但不能删除,适用于各种日志文件:
[root@oldboyedu ~]# chattr +a oldboy.txt[root@oldboyedu ~]# rm -f oldboy.txtrm: cannot remove ‘oldboy.txt’: Operation not permitted[root@oldboyedu ~]# echo dddd >>oldboy.txt[root@oldboyedu ~]# echo dddd >>oldboy.txt
2. lsattr:显示文件属性lsattr命令的功能说明
lsattr命令用于显示文件属性。用chattr执行改变文件或目录的属性,可执行lsattr指令查询其属性。
lsattr命令的语法格式
lsattr [ -RVadv ] [ files... ]
lsattr [-adlRvV] [文件或目录...]
lsttr命令的选项说明
lsattr 参数有几个,表1为 lsattr 命令的参数及说明:
表1: lsattr命令的参数及说明
lsattr命令的功能说明
lsattr命令用于显示文件属性。用chattr执行改变文件或目录的属性,可执行lsattr指令查询其属性。
lsattr命令的语法格式
lsattr[ -RVadv ] [ files... ]lsattr[-adlRvV] [文件或目录...]
lsttr命令的选项说明
lsattr参数有几个,表1为lsattr命令的参数及说明:
表1: lsattr命令的参数及说明
| 参数选项 | 解释说明 |
|---|---|
| -a | 显示所有文件和目录,包括以"."为名称开头字符的额外内建,现行目录"."与上层目录".."。 |
| -d | 显示,目录名称,而非其内容。 |
| -l | 此参数目前没有任何作用。 |
| -R | 递归处理,将指定目录下的所有文件及子目录一并处理。 |
| -v | 显示文件或目录版本。 |
| -V | 显示版本信息。 |
lsattr命令的实践操作
范例1: 用
chattr命令防止系统中某个关键文件被修改,然后用lsattr查看
[root@oldboyedu ~]# chattr +i /etc/passwd #<==锁定文件不能删除,不能修改[root@oldboyedu ~]# lsattr /etc/passwd----i----------- /etc/passwd[root@oldboyedu ~]# lsattr /etc/hosts---------------- /etc/hosts
今天就写到这里,有什么疑问或出现什么错误,随时欢迎大神们发表评论指点迷津





