文件属性在文件系统的安全管理方面起很重要的作用,linux下lsattr命令用于查看文件属性信息。
语法:
lsattr [-adRvV] [文件或目录...]选项介绍:
-a: 显示所有文件和目录,包括隐藏文件
-d: 显示目录名称,而非其内容
-R: 递归处理,将指定目录下的所有文件及子目录一并处理
-v: 显示文件或目录版本
-V: 显示版本信息
执行范例:
1 $ chattr +ai text
2 $ lsattr
3 ----ia------- text
扩展阅读:
chattr命令用于修改文件属性,chattr命令需要root权限。
文件属性:
a: append only系统只允许在这个文件之后追加数据,不允许任何进程覆盖或截断这个文件。如果目录具有这个属性,系统将只允许在这个目录下建立和修改文件,而不允许删除任何文件。
c: compressed系统以透明的方式压缩这个文件。从这个文件读取时,返回的是解压之后的数据;而向这个文件中写入数据时,数据首先被压缩之后才写入磁盘。
d: no dump在进行文件系统备份时,dump程序将忽略这个文件。
i: immutable系统不允许对这个文件进行任何的修改。如果目录具有这个属性,那么任何的进程只能修改目录之下的文件,不允许建立和删除文件。
j: data journalling如果一个文件设置了该属性,那么它所有的数据在写入文件本身之前,写入到ext3文件系统日志中,如果该文件系统挂载的时候使用了”data=ordered” 或”data=writeback”选项。当文件系统采用”data=journal”选项挂载时,所有文件数据已经记录日志,因此这个属性不起作用。仅仅超级用户或者拥有CAP_SYS_RESOURCE能力的进程可以设置和删除该属性。
s: secure deletion让系统在删除这个文件时,使用0填充文件所在的区域。
t: no tail-merging和其他文件合并时,该文件的末尾不会有部分块碎片(为支持尾部合并的文件系统使用)。
u: undeletable当一个应用程序请求删除这个文件,系统会保留其数据块以便以后能够恢复删除这个文件。
A: no atime updates告诉系统不要修改对这个文件的最后访问时间
D: synchronous directory updates任何改变将同步到磁盘;这等价于mount命令中的dirsync选项:
S: synchronous updates一旦应用程序对这个文件执行了写 *** 作,使系统立刻把修改的结果写到磁盘。
T: top of directory hierarchy如果一个目录设置了该属性,它将被视为目录结构的顶极目录
通过ll命令可以查看一个目录下的文件和子目录的属性和大小,以下面的例子讲解:[root@localhost ~]# ll
total 88
-rw-r--r-- 1 root root 1022 Feb 13 16:07 anaconda-ks.cfg
drwxr-xr-x 2 root root 4096 Feb 13 16:07 Desktop
-rw-r--r-- 1 root root 49229 Feb 13 16:07 install.log
-rw-r--r-- 1 root root 5133 Feb 13 16:06 install.log.syslog
-rw-r--r-- 1 root root 7 May 2 05:28 test
[root@localhost ~]#
我以其中一行讲解:
-rw-r--r-- 1 root root 1022 Feb 13 16:07 anaconda-ks.cfg
-rw-r--r-- 1 root root 1022这些都是文件的属性,包括文件的属主、属组和其他组的权限,属主和属组的名称,1022表示文件的大小,Feb 13 16:07是文件的修改时间。
至于被谁修改过是看不出来的。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)