Centos中chattr和lsattr命令使用详解

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Centos中chattr和lsattr命令使用详解相关的知识,希望对你有一定的参考价值。

参数说明:

+-= :分别为 [+ 增加] [- 减少] [= 设定] 属性的意思

A  :当设定了 A 这个属性时,这个档案(或目录)的存取时间atime (access) 将不可被修改, 可避免例如手提式计算机容易有磁盘 I/O 错误的情况发生!

S  :这个功能有点类似 sync 的功能!就是会将数据同步写入磁盘当中!可以有效的避免数据流失!

a  :当设定 a 之后,这个档案将只能增加数据,而不能删除,只有 root 才能设定这个属性。

c  :这个属性设定之后,将会自动的将此档案『压缩』,在读取的时候将会自动解压缩出来,但是在储存的时候,将会先进行压缩之后再储存(看来对于大档案似乎蛮有用的!)

d  :当 dump (备份)程序被执行的时候,设定 d 属性将可使该档案(或目录)具有 dump 功效!

i  :这个 i 可就很厉害了!他可以让一个档案『不能被删除、改名、设定连结也无法写入或新增数据!对于系统安全性有相当大的帮助!

j  :当使用 ext3 这个档案系统格式时,设定 j 属性将会使档案在写入时先记录在 journal 中! 但是当 filesystem 设定参数为 data=journalled 时,由于已经设定了日志了,所以这个属性无效!

s  :当档案设定了 s 参数时,他将会被完全的移除出这个硬盘空间。

u  :与 s 相反的,当使用 u 来设定档案时,则数据内容其实还存在磁盘中,可以使用来 undeletion.



chattr示例Shell


 


chattr +i  /etc/shadow    #添加“i”隐藏属性后,就无法更动这个文件了

chattr -i  /etc/shadow      #解除"i"这个隐藏属性

lsattr命令的用法:lsattr [-aR]

参数说明:

-a :将隐藏文件的属性也列出来;

-R :连同子目录的数据也一并列出来!


lsattr示例Shell


 


chattr +i .bash_logout     #添加一个隐藏的“i”属性,后面再细讲

lsattr -a          #将当前目录的文件或目录下的文件所有属性(包括隐藏属性)列出 

-------------- ./. 

-------------- ./.. 

---i---------- ./.bash_logout 

-------------- ./.bash_profile 

-------------- ./.bashrc


例如,这是一个很正常的删除逻辑,用户是root,从常理上说,只要不是文件处于被打开状态,root可以删除任何文件:


[email protected]:~/test# ls -l

total 0

-rw-r--r-- 1 root root 0 Jul 18 15:02 1.txt

-rw-r--r-- 1 root root 0 Jul 18 15:02 2.txt

[email protected]:~/test# rm 1.txt

[email protected]:~/test# ls

2.txt

[email protected]:~/test#


小小的chattr一下,则2.txt无法被简单的删除,且lsattr发现2.txt多了一个属性:


[email protected]:~/test# chattr +i 2.txt

[email protected]:~/test# rm 2.txt

rm: cannot remove 2.txt: Operation not permitted

[email protected]:~/test#

[email protected]:~/test# lsattr 2.txt

----i--------e-- 2.txt


取消掉2.txt的i属性后,2.txt又可以删除了


[email protected]:~/test# chattr -i 2.txt

[email protected]:~/test# rm 2.txt

[email protected]:~/test# ls

[email protected]:~/test#


以上是关于Centos中chattr和lsattr命令使用详解的主要内容,如果未能解决你的问题,请参考以下文章

chattr和lsattr命令

lsattr chattr命令使用范例

chattr和lsattr命令

chattr与lsattr 命令详解

chattr和lsattr命令,不能被删除改名设定链接关系,同时不能写入或新增内容

Linux 20180412 隐藏权限lsattr_chattr等