前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >每天学一个 Linux 命令(24):chattr/lsattr

每天学一个 Linux 命令(24):chattr/lsattr

作者头像
民工哥
发布2021-01-21 19:31:57
1.4K1
发布2021-01-21 19:31:57
举报

chattr 用来改变文件(扩展)属性。通常我们叫这个属性为特殊属性。

lsattr 查看文件扩展属性。

这种特殊属性有以下8种模式:

代码语言:javascript
复制
a #限定文件具有某种功能。这个对于日志文件非常有作用,比如,不允许删除,只允许向里面追加内容。
b #不更新或修改文件或目录的最后存储时间
c #将文件或目录压缩后存储
d #将文件或目录排除在倾倒操作之外
i #锁定文件或目录,不被更改
s #秘密删除文件或目录
S #动态实时更新文件或目录
u #防止文件或目录被意外删除

如果文件或目录被配置了上述8种之一的扩展属性,通过lsattr命令可以查看到:

代码语言:javascript
复制
[root@centos7 testdir]# lsattr
----i----------- ./dir
#结果说明这个目录被配置扩展属性
[root@centos7 testdir]# chattr -i dir
[root@centos7 testdir]# lsattr
---------------- ./dir

语法格式

代码语言:javascript
复制
chattr [选项] mode file
lsattr [选项] file

选项说明

chattr选项说明

代码语言:javascript
复制
-R  #递归处理,将目录下的所有文件及子目录都加上此扩展属性
-v<版本编号> #设置文件或目录版本号
-V  #显示指令执行过程;
+ <属性> #添加文件或目录的某个扩展属性
- <属性> #解除文件或目录的某个扩展属性
= <属性> #指定某个扩展性至指定的文件或目录

lsattr选项说明

代码语言:javascript
复制
-E  #显示属性的当前值
-D  #显示扩展属性的名称
-R  #递归
-V  #显示版本信息
-a  #列出目录下所有文件,包括隐藏文件
#注意-E -D -R三个选项是不可以一起使用的,它们是相互排斥的。

应用举例

代码语言:javascript
复制
#防止误删除的作用
[root@centos7 testdir]# chattr +a test2.txt
[root@centos7 testdir]# lsattr test2.txt
-----a---------- test2.txt
#不允许直接替换,只允许追加内容
[root@centos7 testdir]# echo "12345">test2.txt
-bash: test2.txt: Operation not permitted  

#查看文件或目录有没有扩展属性
[root@centos7 testdir]# echo "12345">>test2.txt
[root@centos7 testdir]# lsattr
---------------- ./dir
---------------- ./test2.txt~
-----a---------- ./test2.txt
lsattr: Operation not supported While reading flags on ./cp

这两个命令在日常工作也会常用到,锁定文件,或者当文件或系统出现故障时用于排查。

代码语言:javascript
复制
[root@centos7 testdir]# lsattr
---------------- ./dir
---------------- ./test2.txt~
----i----------- ./test2.txt
lsattr: Operation not supported While reading flags on ./cp
[root@centos7 testdir]# echo "12345">>test2.txt
-bash: test2.txt: Permission denied

比如上述情况,如果此文件是一个要实时存储数据的文件,被锁定了,那么就可能会引发应用运行故障,所以,这时就可以通过lsattr命令来查看与排查。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-01-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 民工哥技术之路 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 语法格式
  • 选项说明
  • 应用举例
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档