一.权限控制机制

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

  1.基本概念        Linux为每个文件都分配了一个所有者,称为文件主,并赋予文件主唯一的注册名。对文件的控制取决于文件主或超级用户(root)。

  文件主:

  文件的所属关系是可以改变的,你可以将文件或目录的所有权转让给其他用户,但只有文件主或root才有权改变文件的所属关系。可以用chown命令更改某个文件或目录的所有权。例如,超级用户把自己的一个文件复制给用户user1,为了让用户user1能够访问这个文件,超级用户(root)应该把这个文件的属主设为user1,否则,用户user1无法访问这个文件。如果改变了文件或目录的所有权,原文件主将不再拥有该文件或目录的控制权

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

  访问权限
        Linux系统中的每个文件和目录都有访问权限,用它来确定谁可以通过何种方式对文件和目录进行访问和操作.
        Linux系统中规定了3种不同类型的用户:文件主(user)、同组用户(group)、可以访问系统的其他用户(others)。
    访问权限规定3种访问文件或目录的方式:读(r)、写(w)、可执行或查找(x)

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

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

  chmod命令chown命令chgrp命令、umask命令

二.Linux用户管理

         Linux是一个多任务、多用户的操作系统,要能做到不同的用户能同时访问不同的文件,允许不同的用户从本地登录或远程登录,这时用户必须拥有一个合法的账号,Linux系统正是通过账号来实现对用户的访问进行控制的,因此,需要对用户与组进行有效的管理。Linux操作系统下的用户:

  1.用户

  Linux下的用户可以分为三类:超级用户、系统用户和普通用户。超级用户的用户名为root,它具有一切权限,只有进行系统维护(例如建立用户等)或其他必要情形下才用超级用户登录,以避免系统出现安全问题。系统用户是Linux系统正常工作所必需的内建的用户,主要是为了满足相应的系统进程对文件属主的要求而建立的,系统用户不能用来登录,如bin、daemon、adm、lp等用户。

  而普通用户是为了让使用者能够使用Linux系统资源而建立的,我们的大多数用户属于此类。每个用户都有一个数值,称为UID。超级用户的UID为0,系统用户的UID一般为1~499,普通用户的UID为500~60000之间的值。

        2.账号系统文件

  Linux系统采用纯文本文件来保存账号的各种信息,其中最重要的文件有/etc/passwd、/etc/shadow、/etc/group这几个。我们可以使用vi或其他编辑器来更改它们,也可以使用专门的命令来更改它们。账号的管理实际上就是对这几个文件的内容进行添加、修改和删除记录行的操作,不管以哪种形式管理账号,了解这几个文件的内容十分必要。

  (1)/etc/passwd文件:是账号管理中最重要的一个文件,它是一个纯文本文件。每一个注册用户在该文件都有一个对应的记录行,这一记录行记录了此用户的必要信息。

  例1:显示/etc/passwd文件。

  #cat/etc/passwd

  root:x:0:0:root:/root:/bin/bash

  bin:x:1:1:bin:/bin:

  从passwd文件中可以看到,第一行是root用户,紧接的是系统用户,普通用户通常在文件的尾部。passwd文件中的每一行由7个字段的数据组成,字段之间用“:”分隔,其格式如下:

  ◆账号名称:密码:UID:GID:个人资料:主目录:Shell

  说明如下:

  ◆账号名称:用户登录Linux系统时使用的名称。

  ◆密码:这里的密码是经过加密后的密码,而不是真正的密码,若为“x”,说明密码经过了shadow的保护。

  ◆UID:用户的标识,是一个数值,Linux系统内部使用它来区分不同的用户。

  ◆GID:用户所在组的标识,是一个数值,Linux系统内部使用它来区分不同的组,相同的组具有相同的GID。

  ◆个人资料:可以记录用户的个人信息,如姓名、电话等信息(上例中test用户本项为空)。

  ◆主目录:通常是/home/username,这里username是用户名,用户执行“cd~”命令时当前目录会切换到个人主目录。

  ◆Shell:定义用户登录后使用的Shell,默认是bash。

  (2)/etc/shadow文件:任何用户对passwd文件都有读的权限,虽然密码已经经过加密,但还是不能避免有人会获取加密后的密码。为了安全,Linux系统对密码提供了更多一层的保护,即把加密后的密码重定向到另一个文件/etc/shadow。密码如果经过shadow保护,在/etc/passwd文件中,每一记录行的密码字段会变成“x”,并且在/etc目录下存在文件shadow。只有超级用户能够读取shadow的内容。

  (3)pwconv和pwunconv文件:安装Linux系统时,系统缺省采用shadow来保护密码。?如果安装Linux时未启用shadow,可以使用pwconv命令启用shadow。注意用root用户登录来执行该命令,执行的结果是/etc/passwd文件中的密码字段被改为“x”,同时产生/etc/shadow文件。相反,如果要取消shadow功能,可使用pwunconv命令。

  以上讲解的是Linux用户管理

三.组的管理

  1.Linux的组

  Linux的组有私有组、系统组、标准组之分。建立账户时,若没有指定账户所属的组,系统会建立一个和用户名相同的组,这个组就是私有组,这个组只容纳了一个用户。而标准组可以容纳多个用户,组中的用户都具有组所拥有的权利。系统组是Linux系统自动建立的。一个Linux用户可以属于多个组,用户所属的组又有基本组和附加组之分。在用户所属组中的第一个组称为基本组,基本组在/etc/passwd文件中指定;其他组为附加组,附加组在/etc/group文件中指定。属于多个组的用户所拥有的权限是它所在的组的权限之和。

  Linux系统关于组的信息存放在文件/etc/group中。

  例:显示文件/etc/group内容。

  #cat/etc/group

  root:x:0:root,test

  bin:x:1:root,bin,daemon

  ……

  test:x:500:

  group1:x:1000:

  user1:x:501:

  group文件中的每一行记录了一个组的信息,每行包括4个字段,字段之间用“:”分隔。

  ◆格式为组名:组的密码:GID:组成员。

  ◆字段说明:

  ◆组名:组的名称,如root、bin等。

  ◆组的密码:设置加入组的密码,一般情况下不使用组密码,该字段通常没用。

  ◆GID:组的标识符,为数值,类似UID。

  ◆组成员:组所包含的用户,用户之间用“,”分隔。

  2.用户组的添加、修改、删除

  (1)添加组

  可以手工编辑/etc/group文件来完成组的添加,也可以用命令groupadd来添加组,

  命令格式:groupadd组名

  例:添加组group1。

  #groupaddgroup1

  (2)修改组属性

  使用groupmod命令来修改组名或GID。在groupmod-g命令后加上组的新ID号和组名来修改GID。在groupmod-n命令后加上新组名和原组名来修改组名。

  3.删除组

  使用groupdel命令来删除组。

  ◆格式:groupdel组名

  ◆说明:组被删除后,应使用chown命令将被删除用户组的目录与文件变为它隶属的用户组。

  ◆要改变组中的成员用户或改变组的密码使用gpasswd命令。

  ◆格式:gpasswd[参数][用户名]组名

  ◆不带参数时,即修改组密码。

  参数选项:

  ◆-a:将用户加入到组中。

  ◆-d:将用户从组中删除。

  四.Linux用户管理器

  用户管理器是一个图形界面形式的管理工具,利用用户管理器可以方便地管理用户和用户组。根用户root可以选择“主菜单”→“系统设置”→“用户和组群”(或者在Shell提示符下键入redhat-config-users),就打开“RedHat用户管理器”窗口.

  1.创建用户账号

  在Linux用户管理器窗口中单击“添加用户”按钮,打开“创建新用户”对话框。

  2.修改用户属性

  若要修改用户属性,首先在Linux用户管理器窗口中选择一个已存在的用户账号,然后单击“属性”按钮,则出现“用户属性”窗口,在窗口中有“用户数据”、“账号信息”、“口令信息”和“组群”四个选项卡。用户可以选择相应的选项卡进行相关属性的修改。

  3.修改用户组属性

  在“组群”选项卡中,选择一个已存在的用户组,并单击“属性”按钮打开“组群属性”窗口,在该窗口中修改设置用户组的属性,将需加入本组的用户分别打上对号即可。

One Comment

  1. I came to be searching inside Scotsman in the present day that Principle Dentists are making roughly £120k per annum – that confident does seem like an entire lot of bucks nowadays. My heart went out for the associates dentists (decrease down the pecking order) who only select up roughly £70k traditionally…all with each other now, ahhhhh

发表评论

电子邮件地址不会被公开。 必填项已用*标注

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>


*