讲述Linux用户管理的全部过程(1)


经过长时间学习Linux用户管理,于是和大家分享一下,看完本文你肯定有不少收获,希望本文能教会你更多东西。

一.权限控制机制

Linux系统是个多用户系统,能做到不同的用户能同时访问不同的文件,因此一定要有文件权限控制机制。Linux系统的权限控制机制和Windows的权限控制机制有着很大的差别。Linux的文件或目录被一个用户拥有时,这个用户称为文件的拥有者或文件主),同时文件还被指定的用户组所拥有,这个用户组称为文件所属组。一个用户可以是不同组的成员,这可以由管理员控制。文件的权限由权限标志来决定,权限标志决定了文件的拥有者、文件的所属组、其他用户对文件访问的权限。
用户和权限

1.基本概念

1)文件主  Linux为每个文件都分配了一个所有者,称为文件主,并赋予文件主唯一的注册名。对文件的控制取决于文件主或超级用户root)。
文件的所属关系是可以改变的,你可以将文件或目录的所有权转让给其他用户,但只有文件主或root才有权改变文件的所属关系。可以用chown命令更改某个文件或目录的所有权。例如,超级用户把自己的一个文件复制给用户user1,为了让用户user1能够访问这个文件,超级用户root)应该把这个文件的属主设为user1,否则,用户user1无法访问这个文件。如果改变了文件或目录的所有权,原文件主将不再拥有该文件或目录的控制权

2)用户组   Linux下,每个文件又属于一个用户组。当创建一个文件或目录时,系统会赋予它一个用户组关系,chgrp命令可以改变文件的组关系。

3)访问权限  Linux系统中的每个文件和目录都有访问权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作。

2.访问权限

Linux系统中规定了3种不同类型的用户:文件主user)、同组用户group)、可以访问系统的其他用户others)。

访问权限规定3种访问文件或目录的方式:读r)、写w)、可执行或查找x)

1)文件访问权限
读权限r)表示只允许指定用户读取相应文件的内容,禁止对它做任何的更改操作。写权限w)表示允许指定用户打开并修改文件。执行权限x)表示允许指定用户将该文件作为一个程序执行。

2)目录访问权限
在ls命令后加上-d选项,可以了解目录文件的使用权限。读权限r)表示可以列出存储在该目录下的文件,即读目录内容。写权限w)表示允许你从目录中删除或创建新的文件或目录。执行权限x)表示允许你在目录中查找,并能用cd命令将工作目录切换到该目录。用chmod命令可改变文件或目录的访问权限。例如:

1.chmod命令
功能:chmod命令用于改变或设置文件或目录的访问权限。
格式:chmod[选项]模式文件或目录名
说明:只有文件主或超级用户root才有权用chmod改变文件或目录的访问权限。
选项参数:
◆-c:若文件或目录权限确实已经更改,才显示其更改动作。
◆-f:若文件或目录权限无法被更改也不要显示错误信息。
◆-v:显示权限变更的详细资料。
◆-R:对目前目录下的所有档案与子目录进行相同的权限变更即以递归式的方式逐个变更)。
设定文件权限时,在模式中常用以下的字母代表用户或用户组:
◆uuser)表示文件的所有者。
◆ggroup)表示文件的所属组。
◆oothers)表示其他用户。
◆aall)代表所有用户即u+g+o)。
权限用以下字符表示:r表示读权限;w表示写权限;x表示执行权限。最后要指明是增加+)还是取消-)权限,或是只赋予权限=)。

2.chown命令
功能:改变某个文件或目录的拥有者和所属的组。
格式:chown[选项]用户或组文件名
说明:只有文件主和超级用户才可以使用该命令。同时改变文件主和文件所属的组时,用户名和用户组名由冒号分开。在文件名中可以包含通配符。
参数选项:
◆-R递归式地改变指定目录及其所有子目录、文件的文件主。

3.chgrp命令
功能:改变文件或目录的所属组。
格式:chgrp[选项]组名文件名
说明:如果用户不是该文件的文件主或超级用户,则不能改变该文件或目录的所属组。chown可以同时改变文件拥有者和所属组,chgrp只具有改变所属组的功能。
参数选项:
◆-R递归式地改变指定目录及其下面的所有子目录和文件的用户组。

4.umask命令
功能:用来设置新建文件权限的掩码。
格式:umask[模式]
说明:模式为新建文件权限的掩码值。
文件访问权限可以通过chmod命令来修改。当用户创建一个新文件后,如果不使用chmod修改权限,则这个文件的权限是什么呢?这个文件的权限由系统默认权限和默认权限掩码共同确定,它等于系统默认权限减去默认权限掩码。Linux系统中目录的默认权限是777,文件的默认权限是666。因此,有以下公式:
◆新目录的权限=777-默认权限掩码
◆新文件的权限=666-默认权限掩码
◆注意:基于安全原因,Linux系统不允许文件的默认权限有执行权。不带任何参数的umask命令显示当前的默认权限掩码值。下面讲解Linux用户管理。


相关内容