欢迎来到福编程网,本站提供各种互联网专业知识!
您的位置:网站首页 > 操作系统 > LINUX

Linux系统中修改与查看文件属性的基本方法

发布时间:1970-01-01 作者:张映 来源:Linux命令手
这篇文章主要介绍了Linux系统中修改与查看文件属性的基本方法,分别讲解了chattr和lsattr命令的基础用法,需要的朋友可以参考下

chattr

chattr 修改文件在Linux第二扩展文件系统(E2fs)上的特有属性

符号模式有+-=[ASacdisu]几种格式.

操作符`+'用来在文件已有属性的基础上增加选定的属性; `-'用来去掉文件上的选定的属性;而`='用来指定该文件的唯一属性.

字符`ASacdisu'用作文件新属性的选项: 不更新atime(A),同步更新(S),只能添加(a), 压缩(c),不可变(i),不可转移(d),删除保护(s)以及不可删除(u).

-R

递归地修改目录以及其下内容的属性. 如果在递归目录时遇到了符号链接,遍历将跳过.

-V

详尽地给出chattr的输出信息并打印出程序的版本.

-vversion

设置文件系统的版本.

当修改设置了'A'属性的文件时,它的atime记录不会改变. 这可以在笔记本电脑系统中避免某些磁盘I/O处理.

设置了`a'属性的文件只能在添加模式下打开用于写入. 只有超级用户可以设置或清除该属性.

设置了`c'属性的文件在磁盘上由内核自动进行压缩处理. 从该文件读取时返回的是未压缩的数据. 对该文件的一次写入会在保存它们到磁盘之前进行数据压缩.

设置了`d'属性的文件不能对其运行 dump(8) 程序进行备份.

设置了`i'属性的文件不能进行修改:你既不能删除它, 也不能给它重新命名,你不能对该文件创建链接, 而且也不能对该文件写入任何数据. 只有超级用户可以设置或清除该属性.

当删除设置了`s'属性的文件时,将对其数据块清零 并写回到磁盘上.

当修改设置了`S'属性的文件时, 修改会同步写入到磁盘上;这与应用 到文件子系统上的`sync'挂载选项有相同的效果.

当删除设置了`u'属性的文件时, 将会保存其内容. 这使得用户可以请求恢复被删除的文件.

例:

复制代码代码如下:

[root@localhost ~]# chattr +i nginx.conf #设置该文件不能进行任何形势的修改

[root@localhost ~]# mv nginx.conf nginx.conf_bak

mv: 无法将"nginx.conf" 移动至"nginx.conf_bak": 不允许的操作

[root@localhost ~]# lsattr nginx.conf #查看chattr设置的权限

----i--------e- nginx.conf

[root@localhost ~]# chattr -i nginx.conf #取消-i的权限设置

[root@localhost ~]# lsattr nginx.conf #查看chattr设置的权限

-------------e- nginx.conf

lsattr

lsattr 显示文件在Linux第二扩展文件系统上的特有属性

-R

递归地列出目录以及其下内容的属性.

-V

显示程序版本.

-a

列出目录中的所有文件,包括以`.'开头的文件的属性.

-d

以列出其它文件的方式那样列出目录的属性, 而不列出其下的内容.

-v

显示文件版本.

例:

复制代码代码如下:

[root@localhost ~]# chattr +i nginx.conf #设置该文件不能进行任何形势的修改

[root@localhost ~]# mv nginx.conf nginx.conf_bak

mv: 无法将"nginx.conf" 移动至"nginx.conf_bak": 不允许的操作

[root@localhost ~]# lsattr nginx.conf #查看chattr设置的权限

----i--------e- nginx.conf

[root@localhost ~]# chattr -i nginx.conf #取消-i的权限设置

[root@localhost ~]# lsattr nginx.conf #查看chattr设置的权限

-------------e- nginx.conf

相关推荐