问题描述
解决问题
a:Append Only,系统只允许在这个文件之后追加数据,不允许任何进程覆盖或截断这个文件。如果目录具有这个属性,系统将只允许在这个目录下建立和修改文件,而不允许删除任何文件。 i:Immutable,系统不允许对这个文件进行任何的修改。如果目录具有这个属性,那么任何的进程只能修改目录之下的文件,不允许建立和删除文件。
命令详解
lsattr 命令
Linux lsattr命令用于显示文件属性,用chattr执行改变文件或目录的属性,可执行lsattr指令查询其属性
语法
lsattr [-adlRvV] [文件或目录...]
参数
- -a 显示所有文件和目录,包括以”.“为名称开头字符的额外内建,现行目录”.“与上层目录”…”
- -d 显示当前目录名称,而非其内容
- -l 显示当前目录下所有文件/目录的权限
- -R 递归处理,将指定目录下的所有文件及子目录一并处理
- -v 显示文件或目录版本
- -V 显示版本信息
chattr 命令
Linux chattr命令用于改变文件属性
这项指令可改变存放在ext2文件系统上的文件或目录属性,这些属性共有以下8种模式:
- a:让文件或目录仅供附加用途。
- b:不更新文件或目录的最后存取时间。
- c:将文件或目录压缩后存放。
- d:将文件或目录排除在倾倒操作之外。
- i:不得任意更动文件或目录。
- s:保密性删除文件或目录。
- S:即时更新文件或目录。
- u:预防意外删除。
注意:文件属性为 -a 时,追加文件内容需要使用 echo 命令,不能使用 vim ,原因就是 vim 会生成新的文件,echo 是在源文件上追加, 想了解具体去别的,看我另一篇博客
Linux:vim 与 echo 的区别.
语法
chattr [-RV][-v<版本编号>][+/-/=<属性>][文件或目录...]
参数
- -R 递归处理,将指定目录下的所有文件及子目录一并处理
- -v<版本编号> 设置文件或目录版本
- -V 显示指令执行过程
- +<属性> 开启文件或目录的该项属性
- -<属性> 关闭文件或目录的该项属性
- =<属性> 指定文件或目录的该项属性
实例
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/232324.html原文链接:https://javaforall.net
