linux学习记录

来源:互联网 发布:python 文本相似度 编辑:程序博客网 时间:2024/06/04 19:43

Linux chattr命令用于改变文件属性。

这项指令可改变存放在ext2文件系统上的文件或目录属性,这些属性共有以下8种模式:

a:让文件或目录仅供附加用途。

b:不更新文件或目录的最后存取时间。

c:将文件或目录压缩后存放。

d:将文件或目录排除在倾倒操作之外。

i:不得任意更动文件或目录。

s:保密性删除文件或目录。

S:即时更新文件或目录。

u:预防以外删除。

语法

chattr [-RV][-v<版本编号>][+/-/=<属性>][文件或目录...]

参数

-R 递归处理,将指定目录下的所有文件及子目录一并处理。

-v<版本编号>设置文件或目录版本。

-V 显示指令执行过程。

+<属性> 开启文件或目录的该项属性。

-<属性> 关闭文件或目录的该项属性。

=<属性> 指定文件或目录的该项属性。

实例

chattr命令防止系统中某个关键文件被修改:

chattr +i /etc/resolv.conf

lsattr /etc/resolv.conf

会显示如下属性

----i-------- /etc/resolv.conf

让某个文件只能往里面追加数据,但不能删除,适用于各种日志文件:

chattr +a /var/log/messages


Linux chgrp命令用于变更文件或目录的所属群组。

UNIX系统家族里,文件或目录权限的掌控以拥有者及所属群组来管理。您可以使用chgrp指令去变更文件与目录的所属群组,设置方式采用群组名称或群组识别码皆可。

语法

chgrp [-cfhRv][--help][--version][所属群组][文件或目录...]chgrp [-cfhRv][--help][--reference=<参考文件或目录>][--version][文件或目录...]

参数说明

-c--changes效果类似"-v"参数,但仅回报更改的部分。

-f--quiet--silent 不显示错误信息。

-h--no-dereference 只对符号连接的文件作修改,而不更动其他任何相关文件。

-R--recursive 递归处理,将指定目录下的所有文件及子目录一并处理。

-v--verbose 显示指令执行过程。

--help  在线帮助。

--reference=<参考文件或目录> 把指定文件或目录的所属群组全部设成和参考文件或目录的所属群组相同。

--version  显示版本信息。

实例

实例1:改变文件的群组属性:

chgrp -v bin log2012.log

输出:

[root@localhost test]# ll

---xrw-r-- 1 root root 302108 11-13 06:03 log2012.log

[root@localhost test]# chgrp -v bin log2012.log

"log2012.log" 的所属组已更改为 bin

[root@localhost test]# ll

---xrw-r-- 1 root bin  302108 11-13 06:03 log2012.log

说明: log2012.log文件由root群组改为bin群组

实例2:根据指定文件改变文件的群组属性

chgrp --reference=log2012.log log2013.log

输出:

[root@localhost test]# ll

---xrw-r-- 1 root bin  302108 11-13 06:03 log2012.log

-rw-r--r-- 1 root root     61 11-13 06:03 log2013.log

[root@localhost test]#  chgrp --reference=log2012.log log2013.log

[root@localhost test]# ll

---xrw-r-- 1 root bin  302108 11-13 06:03 log2012.log

-rw-r--r-- 1 root bin      61 11-13 06:03 log2013.log

说明: 改变文件log2013.log的群组属性,使得文件log2013.log的群组属性和参考文件log2012.log的群组属性相同


0 0
原创粉丝点击