当使用useradd添加好用户之后,想要做一些修改,这时需要用到usermod命令。
功能说明:修改用户帐号的各项信息。
语 法:usermod [-L | U][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>]
[-l <帐号名称>][-s <指定登录shell>][-u <新的uid>] username
补充说明:usermod可用来修改用户帐号的各项设定。
参 数:
-c<备注> 修改用户帐号的备注文字。
-d<家目录的完整路径> 修改用户登入时的目录。
-e<截止日期> 修改帐号的过期时间。格式为:YYYY-MM-DD
-f<缓冲天数> 当密码过期后,直到该帐户永久失效的天数
-g<群组> 修改用户所属的群组。
-G<群组> 修改用户所属的附加群组。
-l<帐号名称> 修改用户帐号名称。
-L 锁定用户密码,使密码无效。
-s 修改用户登入后所使用的shell。
-u 修改用户ID。
-U 解除密码锁定。
注意:usermod不允许改变正在系统中使用的用户账户。当usermod用来改变UID,必须确认该用户没有在系统
中执行任何程序。
一般不建议修改用户名和用户ID,因为可能会带来对文件所有者身份变化的麻烦。比如用户在变更前在/mnt
下拥有一个文件test,修改用户名和UID后,该文件的所有人和所属组等相关信息并不会同步变更。也就是说
用户已经无法控制test文件了。
例子:
#useradd waston 添加用户waston
添加成功后,在/etc/passwd中添加了这么一行
waston:x:4036:4038::/home/waston:/bin/bash
#groupadd super 添加一个组
添加成功后,在/etc/group中添加了这么一行
super:x:4037:
#usermod -u 4037 waston 将用户waston的UID更改为4037,也就是super组
更改成功后,在/etc/passwd中更新了这么一行
waston:x:4037:4038::/home/waston:/bin/bash
其他参数的用法类似。不再详述