Linux文件特殊属性

文件特殊属性

在Linux系统中,文件特殊属性是指通过chattr命令设置的属性,这些属性可以改变文件或目录的行为。这些特殊属性通常用于系统管理,以增强文件的安全性和性能。以下是一些常见的文件特殊属性及其含义:

常见文件特殊属性

i (immutable):
含义:文件或目录被设置为不可变,无法被修改、删除、移动或重命名,直到其属性被更改。
设置方法:sudo chattr +i <file>
清除方法:sudo chattr -i <file>
a (append only):
含义:文件只能被追加内容,不能被修改或删除。
设置方法:sudo chattr +a <file>
清除方法:sudo chattr -a <file>
s (secure deletion):
含义:当文件被删除时,其数据块会被清零,确保数据被安全删除。
设置方法:sudo chattr +s <file>
清除方法:sudo chattr -s <file>
u (undeletable):
含义:文件或目录不能被删除,但可以被修改。
设置方法:sudo chattr +u <file>
清除方法:sudo chattr -u <file>
A (no atime updates):
含义:文件或目录的访问时间(atime)不会被更新。
设置方法:sudo chattr +A <file>
清除方法:sudo chattr -A <file>
S (synchronous updates):
含义:文件或目录的元数据(如修改时间)会立即同步到磁盘,而不是缓存到内存中。
设置方法:sudo chattr +S <file>
清除方法:sudo chattr -S <file>
d (no dump):
含义:文件或目录不会被dump命令备份。
设置方法:sudo chattr +d <file>
清除方法:sudo chattr -d <file>
c (compression):
含义:文件会被自动压缩。
设置方法:sudo chattr +c <file>
清除方法:sudo chattr -c <file>
e (extent format):
含义:文件使用扩展格式存储,这可以提高大文件的性能。
设置方法:sudo chattr +e <file>
清除方法:sudo chattr -e <file>
h (huge file):
含义:文件被视为大文件,适用于大文件的优化。
设置方法:sudo chattr +h <file>
清除方法:sudo chattr -h <file>

案例

lsattr命令查看文件的特殊属性:

[root@h3c-prometheus bak]# touch hack.sh aa.sh
[root@h3c-prometheus bak]# lsattr
---------------- ./zabbix.conf.php
---------------- ./maintenance.inc.php
---------------- ./hack.sh
---------------- ./aa.sh

设置文件属性为不可变

[root@h3c-prometheus bak]# chattr +i hack.sh
[root@h3c-prometheus bak]# lsattr
---------------- ./zabbix.conf.php
---------------- ./maintenance.inc.php
----i----------- ./hack.sh
---------------- ./aa.sh
[root@h3c-prometheus bak]# rm -rf hack.sh 
rm: 无法删除"hack.sh": 不允许的操作                                   #无法删除

去掉特殊属性

[root@h3c-prometheus bak]# chattr -i hack.sh
[root@h3c-prometheus bak]# rm -rf hack.sh
posted @   *一炁化三清*  阅读(19)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
点击右上角即可分享
微信分享提示