Linux文件属性管理——chattr、lsattr(如何避免在root权限下误删重要文件)

chattr 是 Linux 系统中的一个命令,它允许用户设置或删除文件的特殊属性,以影响文件的行为和保护文件不被意外修改或删除。即使是root用户权限时依旧不能够实现删除和修改操作。

命令描述

chattr 修改文件在Linux第二扩展文件系统(E2fs)上的特有属性

符号模式有+-=[ASacdisu]几种格式.

操作符`+'用来在文件已有属性的基础上增加选定的属性; `-'用来去掉文件上的选定的属性;而`='用来指定该文件的唯一属性.

字符`ASacdisu'用作文件新属性的选项: 不更新atime(A),同步更新(S),只能添加(a), 压缩(c),不可变(i),不可转移(d),删除保护(s)以及不可删除(u).

命令选项

-R     递归地修改目录以及其下内容的属性.  如果在递归目录时遇到了符号链接,遍历将跳过.

-V     详尽地给出chattr的输出信息并打印出程序的版本.

-v version        设置文件系统的版本.

常用选项和参数

+a:将文件标记为只能追加数据。任何对文件内容的修改都只能在文件末尾进行,不能覆盖文件中的现有数据。适用于日志文件等场景。

chattr +a filename

-a:移除文件的追加数据属性。

chattr -a filename

+i:将文件标记为不可变。即使是 root 用户也无法修改、删除或重命名文件,文件也不能被写入。此属性常用于保护系统文件和关键配置文件。

chattr +i filename

-i:移除文件的不可变属性,使文件可以被修改、删除和重命名。

chattr -i filename

查看对应的已添加属性:

lsattr filename

实测使用

使用命令将test.c文件进行添加属性i:

sudo chattr +i test.c

尝试删除该文件:

rm -rf bool.c

删除结果:

$sudo rm -rf test.c
rm: 无法删除"test.c": 不允许的操作
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值