1Chapter4用户和组管理软件学院蔡莉2一、用户和组管理概述•Linux是一个多用户多任务操作系统,任何用户必须在系统上申请一个帐号,才能进入系统。•帐号管理包括:用户和组的管理、口令管理。Linux下的用户Linux下的用户分为三类:超级用户、普通用户和伪用户•超级用户:默认用户名为root,具有操作系统的一切权力。系统可以有多个超级用户,它们的UID和GID的值均为0。•普通用户:访问系统的资源受到限制。默认情况下,普通用户的UID的值在500~60000范围内。•伪用户:为了管理方便而设定的用户。它的UID值在1~499范围内。伪用户不能登录。3一、用户和组管理概述Linux下的组•组是若干用户的逻辑集合。同一个用户可以同属于多个组。•Linux下的组分为私有组和标准组。私有组:创建新用户时,如果没有指定所属组,则系统创建一个与该用户名同名的私有组。标准组:由系统和用户事先创建好的组。4一、用户和组管理概述帐号系统文件•Linux下的帐号系统文件包括/etc/passwd,/etc/shadow,/etc/group三个文件。•只有超级用户才能修改它们。1./etc/passwd•Linux系统中的每一个注册用户在/etc/passwd中都有一个对应的记录行。它记录了用户的基本属性•/etc/passwd的文件格式是:每一个用户的一条记录包括如下七个字段:用户名:口令:用户标识号:组标识号:注释性描述:所在目录:命令解释器5Chapter4用户和组管理/etc/passwd文件中各字段的含义字段说明用户名用户登录系统时使用的名字,它是唯一的。口令存放加密的口令用户标识号一个整数,用来在系统内部标识用户组标识号一个整数,用来在系统内部标识用户所属的组注释性描述存放用户全名等信息所在目录用户登录系统后进入的目录命令解释器指示该用户使用的shell,默认为bash6一、用户和组管理概述2./etc/shadow•存放系统加密后的口令字,只有超级用户可以读写。/etc/shadow的文件格式是:•每一个用户的一条记录•包括如下九个字段:用户名:口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志7/etc/shadow文件中各字段的含义字段说明用户名用户登录系统时使用的名字,它是唯一的。口令存放加密的口令最后一次修改时间标识从某一时刻起到用户最后一次修改口令的天数最小时间间隔两次修改口令之间的最小天数最大时间间隔口令保持有效的最多天数警告时间从系统开始警告到口令正式失效的天数不活动时间口令过期多少天后,该帐号被禁用失效时间指示口令失效的绝对天数标志未使用8一、用户和组管理概述3./etc/group•记录用户所属的主组,即登录时所属的默认组,存放组的所有属性。/etc/shadow的文件格式是:•每一个组一条记录•包括如下四个字段:组名:口令:组标识号:组内用户列表9Chapter4用户和组管理/etc/group文件中各字段的含义字段说明组名用户登录系统时的默认组名,它是唯一的。口令存放组的加密口令组标识号一个整数,用来在系统内部标识组组内用户列表属于该组的所有用户名表10一、用户和组管理概述4.其他文件或目录•用户shell的启动脚本,用于设置用户的登录环境。•默认设置文件和目录默认设置文件•配置文件/etc/login,/etc/default/useradd存放默认数据。默认设置目录•在/etc/skel目录中包含了可以用做其他用户的基础文件。此目录含有X的配置文件、/bin/bash的配置文件和.login文件。11二、用户帐号管理创建新的用户帐号过程:•在/etc/passwd中添加一条记录。•创建用户所在目录•在用户所在目录中设置默认的配置文件创建方法:•手工创建。•使用useradd命令创建。•使用XWindow中的图形界面工具创建•使用Linuxconf创建•使用Webmin创建12二、用户帐号管理使用useradd创建新用户格式:useradd[选项]用户名命令选项:-uuid指定新用户的uid-ggroup指定新用户的所在组,该组必须存在-Ggroup指定新用户的附加组-ddir指定新用户的所在目录-sshell指定新用户使用的shell,默认为bash-ccomment说明用户的附加信息-eexpire指定用户的登录失效时间-kskel-dir指定skel目录,默认存放在/etc/skel-m建立新用户的所在目录-M不建立新用户的所在目录-R建立一个系统用户13二、用户帐号管理删除已经存在的用户帐号格式:userdel用户名命令选项:-r删除用户的所在目录例如:#userdel–rzhchen修改用户属性格式:usermod[选项]用户名选项与useradd相同,但增加了一个-l选项,可以修改用户的登录名。例如:#usermod–lsoft_managerzhchen14二、用户帐号管理切换用户格式:su[用户名]•如果没有指定用户名,则切换到根用户帐号,系统需要询问口令。•如果从根用户切换到其他用户,则不需要口令。例如:#suzhchen#password:输入该用户口令。15二、用户帐号管理查找用户Who命令•Who命令通过检查/var/run/utmp命令来跟踪当前进入系统的用户。例如:#whoroottty1Oct1310:26zhchentty4Oct1310:36limingtty5Oct1310:38Finger命令•Finger命令检查一些系统和用户定义的文件,并报告查找的信息。例如:#fingerwanghLogin:wanghName:WangHongDirectory:/home/wanghshell:/bin/bash…16三、组的管理添加组格式:groupadd[选项]组名命令选项:-ggid指定新组的gid-r建立一个系统用户组例如:#groupadd–g567software删除组格式:groupdel组名例如:#groupdelsoftware修改组属性格式:groupmod[选项]组名选项与groupadd相同,但增加了一个-n选项,可以修改新的组名。例如:#groupmod–nsoftsoftware17四、磁盘配额•quota(磁盘限额)是系统管理员用来监控和限制用户或组对磁盘的使用的工具。•quota可以从两方面限制:其一,限制用户或组可以拥有的文件数;其二,限制分配给用户或组的磁盘块的数目。•通过使用quota,系统管理员可以限制用户无节制地使用磁盘空间。配置过程磁盘限额配置过程如下:①查看内核是否支持,默认安装是支持的。②查看系统中是否安装了quota的RPM。③查看启动脚本是否在系统启动时打开了quota。④修改/etc/fstab,并重启机器。⑤确定加载磁盘限额的分区,在想要启用quota之分区的最上层生成quota的数据库文件。⑥修改用户配额。18四、磁盘配额配置方法磁盘限额配置方法如下:方法1:使用quota相关的命令方法2:使用Linuxconf方法方法3:使用Webmin相关命令:1.Edquota:为指定的用户或组配置quota。格式:edquota用户名edquota-g组名•该命令可以为盘块限制和使用的文件总数进行限制。每种限制均有软性限制和硬性限制之分。19四、磁盘配额1.Edquota软性限制软性限制指出quota使用者在磁盘分区上拥有的磁盘用量总数。硬性限制硬性限制只在设定有缓冲期间时才起作用。它指出磁盘用量的绝对限制,quota使用者不能超越它的硬性限制。缓冲期间缓冲期间是对quota使用者实行软性限制之前的时间限制。可以使用的时间单位是秒、分、小时、日、星期以及月。20四、磁盘配额2.quotacheckquotacheck是用来扫描档案系统的磁盘用量,并更新quota.user和quato.group的quota记录达到最新的状态。建议定期在系统启动时执行此命令。3.repquotaRepquota命令产生文件系统有关quota的摘要信息。4.quotaon和quotaoff在系统启动和关闭时执行。