230 likes | 385 Views
用户与组群管理. 1 用户和组群的基本概念. 1.1 用户 1.2 与用户相关的文件 1.3 组群 1.4 与组群相关的文件. 1.1 用户. 用户类型 超级用户: root 拥有计算机系统的最高权限。 UID 和 GID 为 0 。 系统用户:自动创建与系统服务相关的用户 UID 和 GID 为 1~499 。 普通用户 : 由超级用户创建,只能操作拥有权限的文件和目录并管理自己启动的进程。 UID 和 GID 从 500 开始。
E N D
1 用户和组群的基本概念 1.1 用户 1.2 与用户相关的文件 1.3 组群 1.4 与组群相关的文件
1.1 用户 • 用户类型 • 超级用户:root拥有计算机系统的最高权限。UID和GID为0。 • 系统用户:自动创建与系统服务相关的用户UID和GID为1~499。 • 普通用户:由超级用户创建,只能操作拥有权限的文件和目录并管理自己启动的进程。 UID和GID从500开始。 • 属性:用户名、口令、 UID 、GID、用户主目录(/home/用户名)、全称、登录Shell
1.2 与用户相关的文件 1、用户帐号信息文件/etc/passwd 某/etc/passwd文件内容如下所示: root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin .... hellen:x:500:500::/home/hellen:/bin/bash 2、用户口令信息文件/etc/shadow 某/etc/shadow文件的内容如下所示: root:$1$nOfXUuNU$xljwp/Nb2n6UVDrodytMx0:12599:0:99999:7::: bin:*:12599:0:99999:7::: .... hellen:$$nBA6pODEUVDr67tMUooSx0TYZgyTb63w:12609:0:99999:7:::
Shadow文件含义 • 用户名 • 34位MD5加密口令。 • “!!”未设置口令不能登陆。 • “: :”删除口令无口令登陆。 • 1970.1.1起到上次修改口令的间隔天数。 • 可修改口令的间隔天数。 • 口令的有效期。 • 口令失效提前提醒天数。 • 口令失效的宽容期。 • 1970.1.1起到帐号失效的天数。
1.3 组群 • 组群:将具有相同特性的用户划归到一个组织中。 • 系统组群:安装Linux以及部分服务性程序时,系统自动设置的组群 。 • 私人组群:由超级用户新建的组群 。 • 属性 • 组群名、GID、组群口令、附加用户列表(用户之间用“,”分隔 )
1.4 与组群相关的文件 1、组群帐号信息文件 /etc/group 某/etc/group文件的内容如下所示。 root:x:0:root bin:x:1:root,bin,daemon .... hellen:x:500: 2、组群口令信息文件 /etc/gshadow /etc/gshadow文件跟/etc/shadow文件类似,根据/etc/group文件而产生,主要用于保存加密的组群口令,只有超级用户才能查看/etc/gshadow文件的内容。
2 桌面环境下管理用户和组群 • 桌面环境下依次单击「系统」=> 「管理」=> 「用户和组群」,启动「用户管理者」窗口。 • 2.1 管理用户 1、新建用户 2、修改用户属性 3、删除用户 • 2.2 管理组群 1、新建组群 2、修改组群属性 3、删除组群 4、显示所有用户和组群
课堂练习(桌面) • 用root用户登录 • 创建名为class08新组群,并指定GID=800 • 创建名为student新用户,指定UID=600,要求每隔7天修改1次口令。 • 将root用户列为class08组群的附加用户。 • 查看与此相关的4个文件内容。 • 启动另外1个虚拟终端用student用户登陆。 • 切换到root用户所在终端。 • 修改系统时间,使系统提醒student用户及时修改口令。
3 管理用户和组群的Shell命令 3.1 管理用户的Shell命令 3.2 管理组群的Shell命令 3.3 批量新建多个用户帐号
3.1 管理用户的Shell命令( useradd) 1、useradd命令 格式:useradd [选项] 用户名 功能:新建用户帐号,超级用户命令。 主要选项说明: -c 全名(comment)、-d 主目录(directory)、-e 有效期限(expire)、-g 组群ID|组群名、-G 组群ID|组群名、-u 用户ID(user) [例1] 按默认值新建tom用户。 # useradd tom [例2] 新建jerry用户并加入组群root。 # useradd -g root erry 查看相关4个文件相关记录。
3.1 管理用户的Shell命令( passwd) 2、passwd命令 格式:passwd [选项] [用户] 功能:设置或修改用户的口令以及口令(>6,不能过于规律、重复或字典单词)的属性。 主要选项说明: -d 用户名(delete)、-l 用户名(lock) 、u 用户名(unlock) -S 用户名(status) [例3]root设置口令初始口令、tom和jerry登录后修改初始口令。 [例4]删除jerry用户口令。 思考题:1、tom用户出差请求封存用户,出差回来后不能登录,请root帮忙: # passwd -l tom # passwd -S tom # passwd –u tom 思考题:2、xufqin用户忘记自己口令,请root帮忙: # passwd xufqin
3.1 管理用户的Shell命令( usermod) 3、命令 格式:usermod [选项] 用户名 功能:修改用户的属性,超级用户命令。 主要选项说明: -c 全名、-d 主目录、-g 组群ID或组群名、-G 组群ID或组群名、-u 用户ID -l (login name) 用户名(usermod增加) [例5] 将名为tom的用户改名为tommy。 思考题:将jerry加入附加组群root中 # usermod -G root jerry
3.1 管理用户的Shell命令( userdel) 4、userdel命令 格式:userdel [-r] 用户名 功能:删除指定用户帐号,超级用户命令。 选项说明 : -r 系统不仅删除此用户帐号,还将用户的主目录也一并删除。 [例6] 删除jerry用户帐号及其主目录。 查看普通用户个人主目录信息 #ls /home # userdel -r jerry 验证结果 #ls /home 思考题:仅删除tommy用户帐号。 # userdel tommy 验证结果 #ls /home
3.1 管理用户的Shell命令( su) 5、su命令(substitute) 格式:su [-] [用户名] 功能:在同一个虚拟终端上,切换用户身份。“exit”命令可返回本来的用户身份。 选项说明:-选项 切换为新用户的同时使用新用户的环境变量(工作目录、shell和命令提示符)。 [例7] 普通用户jerry切换为超级用户,并使用超级用户的环境变量。
3.1 管理用户的Shell命令( id) 6、id命令(Identity) 格式:id [用户名] 功能:查看用户的UID、GID和用户所属组群的信息。如果不指定用户,则显示当前用户的相关信息。 [例8] 查看root用户的用户信息。 #id $id root
3.2 管理组群的Shell命令( groupadd) 1、groupadd命令 格式:groupadd [选项] 组群名 功能:新建组群,超级用户命令。 主要选项说明:-g 组群ID 指定GID [例9] 新建一名为staff的组群。 思考题:创建08class新组群,指定GID=777。 # groupadd -g 777 08class
3.2 管理组群的Shell命令( groupmod) 2、groupmod命令 格式:groupmod [选项] 组群名 功能:修改指定组群属性,超级用户命令。 主要选项说明: -g 组群ID 指定GID -n 组群名(name)指定组群名 思考题:将08class组群改名为class08。 # groupmod -n class08 08class
3.2 管理组群的Shell命令( groupdel) 3、命令 格式:groupdel 组群名 功能:删除指定的组群,超级用户命令。 注:在删除指定组群之前必须保证该组群不是任何用户的主要组群,否则需要首先删除那些以此组群作为主要组群的用户才能删除这个组群。 [例10] 删除名为staff的组群 思考题:分别创建3个组群,其中group1有1个用户tom、 group2有1个附加用户xufqin,group3无用户分别删除,查看系统执行情况。
复习 • 启动虚拟终端1,root登录。 Ctrl+Alt+F1 • 创建新组群class08,GID=800。 #groupadd –g 800 class08 • 按默认值创建新用户student11。 #useradd student11 #passwd student11 • 创建新用户student22指定加入class08组群。查看工作目录绝对路径。切换为xufqin用户身份(注意命令提示行的变化) ,查看工作目录绝对路径。 # useradd – g class08 student22 #passwd student22 #pwd ( /root) #su xufqin [xufqin@teacher root]$pwd ( /root) • 启动虚拟终端2,新用户student11 登录,并立即修改初始口令。查看个人用户主目录。退出登录。 Alt+F2 $passwd $pwd (/home/ student11) Ctrl+D • 启动虚拟终端3,新用户student22 登录,并立即修改初始口令。查看个人用户主目录。 Alt+F3 $passwd $pwd (/home/ student22)
切换为root用户身份并使用相应环境(注意命令提示行的变化):student11用户出差请求封存用户,切换回student22用户身份(注意命令提示行的变化) 。 $su – [root@teacher root]# #passwd –l student11 exit ([student22 @teacher student22]$) • 启动虚拟终端2, student11用户出差回来后不能登录。 Alt+F2 • 切换到root用户身份(注意命令提示行的变化) :student11用户请root帮忙。student22用户忘记口令,也请root帮忙。 $su [root@teacher student22]#passwd –S student11 # passwd –u student11 # passwd student22 • 启动虚拟终端3,用户student22 登录,并立即修改口令。切换为student11用户身份并使用相应环境(注意命令提示行的变化),启动vi,按用户账号信息文件格式编辑userfile。要求如下: • 用户名为student01~06,UID从800号起,加入class08组群,其它采用默认值。 Alt+F3 $passwd [student22 @teacher student22]$ su - student11 [student11 @teacher student11]$vi userfile student01:x:800:800::/home/student01:/bin/bash
5-3-3 批量新建多个用户帐号 第1步:编辑用户信息文件,如user。 第2步:创建用户口令文件,如pword。 第3步:利用“newusers<用户信息文件”命令批量创建用户帐号。 第4步:利用“pwunconv”命令暂时取消shadow加密。 第5步:利用“chpasswd<用户口令文件”命令为用户设置口令。 第6步:利用“pwconv”命令恢复shadow加密。
[例10]为全班同学每人创建1个用户账号。 用户名为stu+2位学号组合。UID号从600起。 都隶属class08组群。GUID为600。 所有用户的初始口令均为123456。 #groupadd class08 #vi user.txt i stu01:x:600:600::/home/stu01:/bin/bash …… stu30:x:629:600::/home/stu30:/bin/bash :wq #vi password.txt i stu01:123456 …… stu30:123456 #newusers<user.txt #pwunconv #chpasswd<password.txt #pwconv #cat /etc/passwd