Linux命令之网络安全基础知识( 二 )



2.格式
chgrp;[选项]...;组;文件...

chgrp;[选项]...;--reference=参考文件;文件...

将每个<文件>的所属组设定为<组> 。

3.参数
-c,;--changes;:像;--verbose , 但只在有更改时才显示结果 。
--dereference:会影响符号链接所指示的对象 , 而非符号链接本身 。
-h,;--no-dereference:会影响符号链接本身 , 而非符号链接所指示的目的地(当系统支持更改符号链接的所有者 , 此选项才有效) 。
-f,;--silent,;--quiet:去除大部分的错误信息 。
--reference=参考文件:使用<参考文件>的所属组 , 而非指定的<组> 。
-R,;--recursive:递归处理所有的文件及子目录 。
-v,;--verbose:处理任何文件都会显示信息 。

4.应用说明
该命令改变指定指定文件所属的用户组 。其中group可以是用户组ID , 也可以是/etc/group文件中用户组的组名 。文件名是以空格分开的要改变属组的文件列表 , 支持通配符 。如果用户不是该文件的属主或超级用户 , 则不能改变该文件的组 。

5.应用实例
改变/opt/local;/book/及其子目录下的所有文件的属组为book , 命令如下:
$Content$nbsp;chgrp;-;R;book;/opt/local;/book

chmod

1.作用
chmod命令是非常重要的 , 用于改变文件或目录的访问权限 , 用户可以用它控制文件或目录的访问权限 , 使用权限是超级用户 。

2.格式
chmod命令有两种用法 。一种是包含字母和操作符表达式的字符设定法(相对权限设定);另一种是包含数字的数字设定法(绝对权限设定) 。

(1)字符设定法
chmod;[who];[ ;|;-;|;=];[mode];文件名

◆操作对象who可以是下述字母中的任一个或它们的组合
u:表示用户 , 即文件或目录的所有者 。
g:表示同组用户 , 即与文件属主有相同组ID的所有用户 。
o:表示其它用户 。
a:表示所有用户 , 它是系统默认值 。

◆操作符号
:添加某个权限 。
-:取消某个权限 。
=:赋予给定权限 , 并取消其它所有权限(如果有的话) 。

◆设置mode的权限可用下述字母的任意组合
r:可读 。
w:可写 。
x:可执行 。
X:只有目标文件对某些用户是可执行的或该目标文件是目录时才追加x属性 。
s:文件执行时把进程的属主或组ID置为该文件的文件属主 。方式“u+s”设置文件的用户ID位 , “g+s”设置组ID位 。
t:保存程序的文本到交换设备上 。
u:与文件属主拥有一样的权限 。
g:与和文件属主同组的用户拥有一样的权限 。
o:与其它用户拥有一样的权限 。
文件名:以空格分开的要改变权限的文件列表 , 支持通配符 。
一个命令行中可以给出多个权限方式 , 其间用逗号隔开 。

(2);数字设定法
数字设定法的一般形式为:;chmod;[mode];文件名

数字属性的格式应为3个0到7的八进制数 , 其顺序是(u)(g)(o)文件名 , 以空格分开的要改变权限的文件列表 , 支持通配符 。

数字表示的权限的含义如下:0001为所有者的执行权限;0002为所有者的写权限;0004为所有者的读权限;0010为组的执行权限;0020为组的写权限;0040为组的读权限;0100为其他人的执行权限;0200为其他人的写权限;0400为其他人的读权限;1000为粘贴位置位;2000表示假如这个文件是可执行文件 , 则为组ID为位置位 , 否则其中文件锁定位置位;4000表示假如这个文件是可执行文件 , 则为用户ID为位置位 。

3.实例
如果一个系统管理员写了一个表格(tem)让所有用户填写 , 那么必须授权用户对这个文件有读写权限 , 可以使用命令:#chmod;666;tem

上面代码中 , 这个666数字是如何计算出来的呢?0002为所有者的写权限 , 0004为所有者的读权限 , 0020为组的写权限 , 0040为组的读权限 , ;0200为其他人的写权限 , 0400为其他人的读权限 , 这6个数字相加就是666(注以上数字都是八进制数) , tem文件的权限是-rw-rw-rw- , 即用户对这个文件有读写权限 。

推荐阅读