0.前言
并非操作系统的每个用户都应具有相同级别的文件和目录访问权限,与任何专业操作系统一样,Linux具有保护文件和目录访问的方法。系统允许系统管理员(root用户或文件所属用户)通过赋予用户读取,写入或执行文件的权限来保护其文件免受不必要的访问或篡改。对于每个文件和目录,我们可以为文件所属用户、同组用户以及其他用户指定权限状态,这在多用户操作系统中是必要的。
1.多类型用户
Linux下用户分为3类:超级用户(root)、系统用户、普通用户。
在Linux系统中,root用户非常强大,基本上可以执行任何操作。系统上的其他用户拥有有限的权限,不可能具有root用户具有的所有访问权限。将具有相似需求的用户放入被授予相关权限的组中,该组的每个成员都会继承组权限。这主要是为了便于管理权限,从而确保安全性。
在默认情况下,root用户是root组的一部分。必须将系统上的每个新用户添加到组中才能继承改组的权限。
2.赋予权限
必须为每个文件和目录分配使用它的不同身份的特定级别的权限。
三个级别的权限如下:
r 读权限 赋予用户打开与查看权限
w 写权限 赋予用户查看与编辑写入权限
x 执行权限 赋予用户执行一个文件
通过这种方式,root用户可以通过需要的权限向其他用户赋予一定级别的权限。创建文件时,通常创建文件的用户是文件的所有者,用户组是用户的当前组。该文件的所有者可以授予各种访问权限。
3.赋予个人用户权限
将文件的所有权转移到其他用户以便他们能够控制权限,我们可以使用chown(更改文件所属用户)
命令。普通用户不能将自己的文件改变成其他的拥有者。其操作权限一般为管理员。
在这里,我们给出命令,将目录/tmp/bobsfile及其下面的所有文件的所属用户改为bob的所属用户。
4.赋予用户组权限
要将文件的所有权从一个组转移到另一个组,我们可以使用chgrp(更改组)命令。chgrp命令用来改变文件或目录所属的用户组。仅限文件属主与root使用。
此命令将newIDS的所属用户主改为security。
5.检查权限
如果要查找为文件或目录的哪些用户授予的权限,请使用ls -l命令来显示显示不被隐藏的所有文件与文件夹的详细信息,并成列表显示。
我们获取有关内容的信息:
① 文件类型
② 所有者,组和用户的文件权限
③ 链接数量
④ 文件所属用户
⑤ 文件的大小(以字节为单位)
⑥ 文件创建或上次修改时间
⑦ 文件名
其中第一个字符为文件类型,其中d(dirtectory)代表目录,短划线(-)则说明文件是个普通文件。下一节则定义文件的权限,有三组三个字符组成,r(read),w(write),x(execute)。其中rwx代表所有者的权限,r-x代表用户所在组的权限,—代表其他用户权限。
如果首先看到r,则该用户或用户组都有权打开和读取该文件或目录。作为中间字母w代表者可以写入(修改)文件或目录,最后的