第三章 用户和组管理
3.4 usermod命令
usermod命令用于修改用户的基本信息。usermod命令不允许你改变正在线上的使用者帐号名称。当usermod命令用来改变user id,必须确认这名user没在电脑上执行任何程序。
语法: usermod [选项] [username]
选项:
-u:更改用户uid
-g:更改所属组(跟组名)
-d:更改用户家目录
-s:更改用户shell
3.5 passwd 用户密码管理
语法: passwd [选项] [username]
选项:
无选项时表示设置某用户密码。
-l:锁定某用户密码(= usermod -L)
-u:解锁某用户密码(= usermod -U) -d:删除密码,仅有系统管理者才有此权限
密码设置规则:
1)长度大于10个字符
2)密码中包含大小写字母、数字、特殊符号
3)不规则性
4)禁用明码(即不要带有自己的名字、公司名字、自己电话、自己生日等等)
说明: 只有root用户才可以更改其他用户密码,普通用户只能更改自己的密码。
命令:passwd --stdin [username]
可直接设置用户密码,且明文显示。
[root@3 ~]# passwd --stdin aming01
更改用户 aming01 的密码 。
123456
passwd:所有的身份验证令牌已经成功更新。
[root@3 ~]# passwd -d aming01
清除用户的密码 aming01。
passwd: 操作成功
3.6 mkpasswd命令
mkpasswd=make password生成密码,使用前需要安装一个包“expect”。
语法: mkpasswd [选项]
选项:
-l:指定密码长度
-s:=special指定特殊字符个数
-d:指定数字的个数
注: mkpasswd命令配合echo、passwd命令以及管道符“|”使用更加方便。
eg: 一条命令修改用户密码(两种方法)
1)echo -e "yourpasswd\nyourpasswd" |passwd user
2)echo "yourpasswd"|passwd --stdin user
说明:
第一种方法,echo -e可以使用换行符\n,这样相当于我们人工打了一次回车。
第二种,passwd --stdin直接设定密码。