你是否遇到过文件或目录具有可读写权限,但是使用root用户删除、修改时提示"Operation not permitted"的情况。可能是由于chattr设置了文件的隐藏保护权限导致。通过chattr命令修改文件或目录属性能够提高系统的安全性。与chmod命令相比,chmod只是改变文件的读写、执行权限,更底层的属性控制是由chattr命令改变的。本文主要介绍chattr和lsatt命令的语法和基本介绍。

说明:这两个命令在工作中用的比较少,经常用到的场景就是解决"Operation not permitted"问题。至于它们语法,掌握最基本的就可以了。就是会查属性、会修改属性就可以了。

chattr命令语法

chattr [+-=] [ASacdistu] File/Directory

参数说明:

+-=:分别为 [+ 增加] [- 减少] [= 设定] 指定属性
A :当设定了 A 这个属性时,文件或目录的存取时间atime (access) 将不可被修改。
S :这个功能有点类似 sync 的功能!就是会将数据同步写入磁盘当中!可以有效的避免数据流失!
a :文件将只能增加数据,而不能删除,只有 root 才能设定这个属性。
c :这个属性设定之后,将会自动的将此文件『压缩』,在读取的时候将会自动解压缩出来,但是在储存的时候,将会先进行压缩之后再储存。
d :当 dump (备份)程序被执行的时候,设定 d 属性将可使该档案(或目录)具有 dump 功效!
i :指定文件不能被删除、改名、也无法写入或新增数据!对于系统安全性有相当大的帮助!
j :当使用 ext3 这个档案系统格式时,设定 j 属性将会使档案在写入时先记录在 journal 中! 但是当 filesystem 设定参数为 data=journalled 时,由于已经设定了日志了,所以这个属性无效!
s :当文件设定了 s 参数时,他将会被完全的移除出这个硬盘空间。
u :与 s 相反的,当使用 u 来设定文件时,则数据内容其实还存在磁盘中,可以使用来 undeletion.

chattr使用实例

1、设置指定文件的隐藏属性,使其无法删除、修改。

chattr +i /home/config/config.conf #添加"i"隐藏属性后,就无法更动config.conf这个文件了

2、取消文件的删除、修改保护权限

chattr -i /home/config/config.conf #解除"i"这个隐藏属性

lsattr命令语法

lsattr [-aR] File/Directory

参数说明

-a :将隐藏文件的属性也列出来;
-R :连同子目录的数据也一并列出来!

lsattr使用实例

1、查看指定文件隐藏属性

lsattr file.txt

Linux chattr和lsattr命令使用方法的更多相关文章

  1. Linux的chattr与lsattr命令详解

    Linux的chattr与lsattr命令详解 这两个命令是用来查看和改变文件.目录属性的,与chmod这个命令相比,chmod只是改变文件的读写.执行权限,更底层的属性控制是由chattr来改变的. ...

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

    chattr和lsattr命令详解 chattr命令的作用很大,其中一些功能是由Linux内核版本来支持的,如果Linux内核版本低于2.2,那么许多功能不能实现.同样-D检查压缩文件中的错误的功能, ...

  3. Shell学习(九)——chattr与lsattr命令详解

    有时候你发现用root权限都不能修改某个文件,大部分原因是曾经用chattr命令锁定该文件了.chattr命令的作用很大,其中一些功能是由Linux内核版本来支持的,不过现在生产绝大部分跑的linux ...

  4. Linux的chattr与lsattr命令

    有时候你发现用root权限都不能修改某个文件,大部分原因是曾经用chattr命令锁定该文件了.chattr命令的作用很大,其中一些功能是由Linux内核版本来支持的,不过现在生产绝大部分跑的linux ...

  5. (总结)Linux的chattr与lsattr命令详解

    PS:有时候你发现用root权限都不能修改某个文件,大部分原因是曾经用chattr命令锁定该文件了.chattr命令的作用很大,其中一些功能是由Linux内核版本来支持的,不过现在生产绝大部分跑的li ...

  6. (转)总结Linux的chattr与lsattr命令详解

    PS:有时候你发现用root权限都不能修改某个文件,大部分原因是曾经用chattr命令锁定该文件了.chattr命令的作用很大,其中一些功能是由Linux内核版本来支持的,不过现在生产绝大部分跑的li ...

  7. Linux文件系统属性权限chattr与lsattr命令

    有时候你发现用root权限都不能修改某个文件,大部分原因是曾经用chattr命令锁定该文件了.chattr命令的作用很大,其中一些功能是由Linux内核版本来支持的,不过现在生产绝大部分跑的linux ...

  8. chattr 与 lsattr 命令详解

    PS:有时候你发现用root权限都不能修改某个文件,大部分原因是曾经用chattr命令锁定该文件了.chattr命令的作用很大,其中一些功能是由Linux内核版本来支持的,不过现在生产绝大部分跑的li ...

  9. chattr和lsattr命令详解

    基础命令学习目录首页 原文链接:http://www.ha97.com/5172.html PS:有时候你发现用root权限都不能修改某个文件,大部分原因是曾经用chattr命令锁定该文件了.chat ...

随机推荐

  1. AJAX实现登陆

    先添加点击事件 <input type="button" id="submitt" value="立即登录" /> 展示信息 & ...

  2. Java面向对象和高级特性 项目实战(一)

    一.项目简介 项目名:嗖嗖移动业务大厅 技能点: 二.技能点 三.系统概述 四.整体开发思路 五.实体类和接口开发 六. 创建工具类 七.使用集合存储数据 八.开发计划 九.代码实现 1.项目目录 2 ...

  3. 漫画|Linux 并发、竞态、互斥锁、自旋锁、信号量都是什么鬼?(转)

    知乎链接:https://zhuanlan.zhihu.com/p/57354304 1. 锁的由来? 学习linux的时候,肯定会遇到各种和锁相关的知识,有时候自己学好了一点,感觉半桶水的自己已经可 ...

  4. ARC085E MUL

    https://atcoder.jp/contests/arc085/tasks/arc085_c 题目大意 略 解法 最小割即可. 直接建图有负边,但是因为我们知道最后在割上的边数一定为 \(N\) ...

  5. 如何限制指定textFiled第三方输入法切换

    在有些项目中需要用到输入纯数字的键盘,并且还不能切换到第三方输入法! textFiled.secureTextEntry = YES; [textFiled addTarget:self action ...

  6. dp练习--

    动态规划(DP)算法     动态规划是运筹学的一个分支,是求解决策过程最优化的数学方法.利用各个阶段之间的关系,逐个求解,最终求得全局最优解,需要确认原问题与子问题.动态规划状态.边界状态.边界状态 ...

  7. windows下共享式服务开发

    参考: https://blog.csdn.net/dongyewolong/article/details/8164873 https://blog.csdn.net/qwertyupoiuytr/ ...

  8. 反射 内省 BeanUtil 综合使用

    package com.zsphp.domain; public class User { private String userId; private String userName; privat ...

  9. C#类与结构体的小结

    1.定义不同 类使用class关键字来定义: 结构体用struct: 2.使用时的注意事项 ->结构体是值类型,类是引用类型 ->结构体中声明的变量不能做赋值操作,但是类可以. -> ...

  10. java 垃圾回收总结(1)(转)

    转自: http://www.cnblogs.com/aigongsi/archive/2012/04/06/2434771.html 另外可参考: http://ifeve.com/gc-orien ...