当前位置:文档之家› 管理用户和组群的shell命令

管理用户和组群的shell命令

注:用户帐号信息文件/etc/passwd;
用户帐号口令文件/etc/shadow;
组群帐号信息文件/etc/group;
组群口令信息文件/etc/gshasow;



一、管理用户的shell命令

1、新建用户的useradd命令
格式:useradd 【参数】 用户名
参 数
-c 全名 指定用户的全称,即用户的注释信息;
-d 主目录 指定用户的主目录
-e 有效期限 指定用户帐号的有效期限
-f 缓冲天数 指定口令过期后多久关闭次帐号
-g 组群ID|组群名 指定用户所属的主要组群
-G 组群ID|组群名 指定用户所属的附加组群
-s 登录shell 指定用户登录成功后启动的shell种类
-u 用户ID 指定用户的UID

不使用任何参数的时候,系统按默认值创建新用户。系统在/hmoe下新建与用户名相同的子目录作为用户主目录,并且新建一个与用户同名的私有组群作为该用户的主要组群,登录shell为Bash。

2、用户口令相关的passwd命令
格式:passwd 【参数】 【用户】
参数
-d 用户名 (delete) 删除用户的口令,则该用户帐号无需口令即可登录系统;
-l 用户名 (lock) 暂时锁定指定的用户帐号
-u 用户名 (lock) 解除指定帐号的锁定
-S 用户名 (status) 显示指定用户帐户的状态
超级用户可以直接编辑/etc/passwd文件,在指定用户所在行前面加上“#”“*”符号,使其成为注释行,那么该账户也是锁定状态不能使用;


3、更改用户状态的usermod命令
格式:usermod 【参数】 用户名
参数
-c 全名 指定用户的全称,即用户的注释信息;
-d 主目录 指定用户的主目录
-e 有效期限 指定用户帐号的有效期限
-f 缓冲天数 指定口令过期后多久关闭次帐号
-g 组群ID|组群名 指定用户所属的主要组群
-G 组群ID|组群名 指定用户所属的附加组群
-s 登录shell 指定用户登录成功后启动的shell种类
-u 用户ID 指定用户的UID
-l 用户名 指定用户的新名称

4、userdel命令
格式:userdel 【-r】 用户名
删除指定用户帐号,限于超级用户使用
参数:-r 当使用该参数的时候,将用户的主目录一起删除,不使用-r 则仅仅删除该用户帐号;
如果在新建该用户的时候,创建的私人组群,且该组群没有其它用户,则在删除用户的同时,将一并删除这一私人组群;
正在使用系统的用户不能被删除;


5、su命令
格式:su 【-】 【用户名】
切换用户身份。超级用户可以切换为任何普通用户,而且不需要输入口令。普通用户转换为其它用户时需要输入被转换用户的口令。使用exit命令可以返回到本来的用户身份;
使用

“-”参数,则用户切换为新用户的同时使用新用户的环境变量;
不使用用户名参数的时候,可以从普通用户切换为超级用户,但是需要输入超级用户的口令。


6、id命令
格式:id 【用户名】
查看用户的UID、GID和用户所属组群的信息。不指定用户则显示当前用户的状态;


二、管理组群的shell命令

1、新建组群的groupadd命令
格式:groupadd 【参数】 组群名
参数
-g 组群id 指定组群的GID;

2、groupmod命令
格式:groupmod 【参数】 组群名
参数
-g 组群ID 指定组群的GID
-n 组群名 指定组群的新名字

3、groupdel命令
格式: groupdel 【参数】 组群名
删除指定的组群,只有超级用户才能使用此命令。如果该组群是某用户的主要组群,则无法删除,除非先把那些以此组群作为主要组群的用户才能删除。


三、批量新建多个用户帐号
以建立一个班级的学生的帐号为例:
1、创建公用组群08students
# groupadd -g 600 08students
2、编辑用户信息文件
使用任何文件编辑器输入用户信息,用户信息必须符合/etc/passwd文件的格式,字段排列顺序也个/etc/passwd文件完全相同。每个用户的用户名和UID不一样。编辑完成如下用户信息文件(假设文件名为students.txt)
s080101:x:601:600::/home/s080101:/bin/bash
s080102:x:602:600::/home/s080102:/bin/bash
s080103:x:603:600::/home/s080103:/bin/bash
s080104:x:604:600::/home/s080104:/bin/bash
···
3、创建用户口令文件
使用文本编辑器输入用户名和口令信息。一行为一个用户帐号信息,文件内容要对应。假设学生口令文件保存为password.txt,内容如下
s080101:s2b0pkl
s080102:945jha
s080103:9KHBc38
```
4、利用newusers命令批量创建用户帐号
超级用户利用newusers命令可以批量创建用户帐号,只需要把用户信息文件重定向给newusers程序,系统会根据文件中的信息新建用户帐号。
# newusers < students.txt
如果没有错误信息,那么查看/etc/passwd文件会发现students.txt文件的内容出现在/etc/passwd文件中,并在/home目录中为每一个用户创建主目录
5、利用命令暂时取消shadow加密
# pwunconv
为了使用户口令文件中制定的口令可以使用,必须先取消原有的shadow加密。超级用户利用pwunconv命令能将/etc/shadow文件中加密口令解密后保存在/etc/passwd文件,并删除/etc/shadow文件。shell命令提示符后输入“pwunconv”命令暂时取消shadow加密。
6、利用chpasswd命令为用户设置口令
超级用户利用chpasswd命令能够魄力更新用户的口令,只需要把用户口令文件重定向给chpasswd程序,系统就会根据文件中的信息设置用户口令;
# chpasswd < password.txt
如果没

有错误信息,就成功了。
7、利用pwconv命令恢复shadow加密
pwconv命令功能跟pwunconv命令相反,它能将/etc/passwd文件中的口令进行shadow加密,并将加密的口令保存到/etc/shadow文件,至此完成批量创建用户的所有操作。

批量新建的用户登录时发现命令提示符不太一样。如果需要使用默认的命令提示符,可以复制独立创建的用户的用户主目录中的设置文件.bash_profil和.bashrc。






























相关主题
文本预览
相关文档 最新文档