对于系统管理员来说,控制用户对文件访问的系统权限管理是基本技能,今天小编就来讲解下,Linux系统对于系统权限管理的操作。
1、chown 命令
chown命令是用于更改文件的用户和组的所有权。要将文件 foo 的用户和组的所有权更改为 root,可以使用以下命令:
1)chown root:root foo
2)chown root: foo
在用户名后跟冒号【: 】运行该命令将同时设置用户和组所有权。要仅将文件 foo 的用户所有权设置为 root 用户,操作命令:
chown root foo
要仅更改文件 foo 的组所有权,则需要在组之前加冒号,操作命令:
chown :root foo
2、chmod 命令
chmod命令控制属主、组以及既不是属主也不属于与文件关联的组的所有其他用户的文件许可权。chmod 命令可以以八进制和符号格式设置权限。
如果想将“读取”和“写入”分配给文件的属主,而只将“读取”分配给组的成员和所有其他用户,则可以使用以下 chmod命令:
chmod 644 foo_file
在下面的示例中,在不同的分组中使用符号表示法。注意字母 u、g 和 o 分别代表“用户/属主”、“组”和“其他”。将 u、g 和 o 与 +、- 或 = 结合使用来添加、删除或设置权限位。
要将“执行”位添加到所有权权限集中,操作命令:
chmod u+x foo_file
要从组成员中删除“读取”、“写入”和“执行”,操作命令:
chmod g-rwx foo_file
要将所有其他用户的所有权设置为“读取”和“写入”,操作命令:
chmod o=rw
3、设置用户 ID(suid)
当在文件上设置 suid 时,将以文件的属主的身份而不是运行该文件的用户身份执行操作。其中好的操作范本是 passwd 命令,它需要设置 suid 位,以便更改密码的操作具有 root 权限。
1)ls -l /bin/passwd
2)-rwsr-xr-x. 1 root root 27832 Jun 10 2014 /bin/passwd
设置 suid 位的示例:
chmod u+s /bin/foo_file_name
4、设置组 ID(sgid)
sgid 位与 suid 位类似,操作是在目录的组所有权下完成的,而不是以运行命令的用户身份。
一个使用 sgid 的例子是,如果多个用户正在同一个目录中工作,并且目录中创建的每个文件都需要具有相同的组权限。下面的示例创建一个名为meilian_net 的目录,设置 sgid 位,并将组所有权更改为 webdev。
1)mkdir meilian_net
2)chmod g+s meilian_net
3)chown :webdev meilian_net
现在,在该目录中创建的任何文件都将具有 webdev 的组所有权,而不是创建该文件的用户的组。
1)cd meilian_net
2)touch file-sgid
3)ls -lah file-sgid
4)-rw-r--r--. 1 root webdev 0 Jun 12 06:04 file-sgid
以上就是基础的Linux系统权限的介绍,系统管理员还有许多其他方法可以控制对系统文件的访问,下次小编再介绍更多的操作方式,有需要的用户可以关注小编哦。
举报/反馈