linux文件无法删除-rw-r--r-- (用lsattr chattr设置特殊属性)
来源:互联网 发布:大数据技术发展现状 编辑:程序博客网 时间:2024/05/21 05:22
今天遇到一个问题。一个文本文件无法删除,看来要补下lsattr chattr方面的知识了,因为这个涉及到很多安全的东西
chattr命令的作用很大,其中一些功能是由Linux内核版本来支持的,如果Linux内核版本低于2.2,那么许多功能不能实现。同样-D检查压缩文件中的错误的功能,需要2.5.19以上内核才能支持。另外,通过chattr命令修改属性能够提高系统的安全 性,但是它并不适合所有的目录。chattr命令不能保护/、/dev、/tmp、/var目录。 lsattr比较简单,只是显示文件的属性
有时候你发现用root权限都不能修改某个文件,大部分原因是曾经用chattr命令锁定该文件了。chattr命令的作用很大,其中一些功能是由Linux内核版本来支持的,不过现在生产绝大部分跑的linux系统都是2.6以上内核了。通过chattr命令修改属性能够提高系统的安全性,但是它并不适合所有的目录。chattr命令不能保护/、/dev、/tmp、/var目录。lsattr命令是显示chattr命令设置的文件属性。
chattr
语法: [root @test /root ]# chattr [+-=][ASacdistu] [档案或目录名称]
参数说明:
+-= :分别为 [+ 增加] [- 减少] [= 设定] 属性的意思
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.
范例:
[root @test /root]# chattr +i/etc/shadow<==呵呵!如此则无法更动这个档案啰!
[root @test /root]# chattr -i /etc/shadow <==解除该属性!
说明:
这这个指令是重要的,尤其是在系统的安全性上面!由于这些属性是隐藏的性质,所以需要以 lsattr才能看到该属性呦!其中,个人认为最重要的当属 +i这个属性了,因为他可以让一个档案无法被更动,对于需要强烈的系统安全的人来说,真是相当的重要的!里头还有相当多的属性是需要 root才能设定的呢!此外,如果是 log file 这种的登录档,就更需要 +a这个可以增加,但不会被杀掉的参数了!怎样?很棒吧!未来提到登录档的认知时,我们再来聊一聊如何设定他吧!
--------------------------------------------------------------------------------
lsattr
语法: [root @test /root ]# lsattr [-aR]
参数说明:
-a :将隐藏文件的属性也秀出来;
-R :连同子目录的数据也一并列出来!
范例:
[root @test /root]# chattr +i .bash_logout
[root @test /root]# lsattr -a
-------------- ./.
-------------- ./..
---i---------- ./.bash_logout
-------------- ./.bash_profile
-------------- ./.bashrc
-------------- ./.emacs
-------------- ./.screenrc
说明:
这两个指令在使用上必须要特别小心,例如:某天你心情好,突然将 /etc/shadow 这个重要的密码记录档案给他设定成为具有 i的属性,那么过了若干天之后,你突然要新增使用者,却一直无法新增!别怀疑,赶快去将 i 的属性拿掉吧!
应用举例:
1、用chattr命令防止系统中某个关键文件被修改:# chattr +i /etc/resolv.conf
然后用mv /etc/resolv.conf等命令操作于该文件,都是得到Operation not permitted 的结果。vim编辑该文件时会提示W10: Warning: Changing a readonly file错误。要想修改此文件就要把i属性去掉: chattr -i /etc/resolv.conf
# lsattr /etc/resolv.conf
会显示如下属性----i-------- /etc/resolv.conf
2、让某个文件只能往里面追加数据,但不能删除,适用于各种日志文件:# chattr +a /var/log/messages
- linux文件无法删除-rw-r--r-- (用lsattr chattr设置特殊属性)
- 设置文件的特殊属性chattr、lsattr
- linux文件的隐藏属性chattr,lsattr
- Linux 文件隐藏属性和特殊权限 —— chattr/ lsattr 和 SUID/SGID/SBIT
- chattr lsattr文件隐藏属性
- 文件隐藏属性chattr,lsattr
- 文件隐藏属性chattr,lsattr
- chattr、lsattr 文件隐藏属性
- <四>Linux文件权限与属性详解--chattr & lsattr
- Linux文件系统特殊权限:chattr lsattr
- 设置文件的文件访问权限为:rw-r--r--
- 文件的隐藏属性chattr lsattr
- Linux中文件隐藏属性chattr,lsattr
- Linux下配置文件隐藏属性chattr和显示文件隐藏属性lsattr
- 20151113chattr ,lsattr 使用,设置和查看特殊权限
- linux 设置文件的隐藏属性 chattr
- linux Chattr,lsattr
- Linux chattr和lsattr
- 图说样本与总体关系
- Bringing up interface eth0: Device eth0 does not seem to be present,delaying initialization.
- "超时时间已到。在操作完成之前超时时间已过或服务器未响应"的解决方法
- Linux-top
- Ubuntu12.04不能连接小米开发
- linux文件无法删除-rw-r--r-- (用lsattr chattr设置特殊属性)
- mahout源码编译重新打包过程
- Console命令详解,让调试js代码变得更简单
- ZOJ 3644 记忆化搜索
- asterisk利器:部署asterisk项目到Netbeans进行实时调试(图解)
- Html内容分页处理函数
- [读书笔记]Ruby元编程 01
- js词法分析
- 嵌入式linux学习第三天.