一、添加新用户
Linux系统添加新用户的主要工具是useradd,useradd命令使用系统的默认值以及命令行参数来设置用户账户。
系统默认值被设置在/etc/default/useradd文件中。
可以用useradd -D命令查看系统默认值,系统默认值共7个参数,如下:
参数 | 描 述 |
-c | 给新用户添加备注 |
-d | 为主目录指定一个名字(如果不想用登录名作为主目录名的话) |
-D | 查看创建新用户系统赋予的默认值 |
-e | 用YYYY-MM-DD格式指定一个账户过期的日期 |
-f | 指定这个账户密码过期后多少天这个账户被禁用;0表示密码一过期就立即禁用,-1表示禁用这个功能 |
-g | 指定用户登录组的GID或组名 |
-G | 指定用户除登录组之外所属的一个或多个附加组 |
-k | 必须和-m一起使用,将/etc/skel目录的内容复制到用户的HOME目录 |
-m | 创建用户的HOME目录 |
-M | 不创建用户的HOME目录(当默认设置里要求创建时才使用这个选项) |
-n | 创建一个与用户登录名同名的新组 |
-r | 创建系统用户 |
-p | 为用户账户指定默认密码 |
-s | 指定默认的登录shell |
-u | 为账户指定唯一的UID |
二、删除用户
从系统中删除用户,userdel命令,默认情况下userdel命令只会删除/etc/passwd文件中的用户信息,而不会删除系统中属于该账户的任何文件。
userdel -r test:删除已有账户及HOME目录及邮件目录
三、修改用户
命令 | 描 述 |
usermod | 修改用户账户的字段,还可以指定主要组以及附加组的所属关系 |
passwd | 修改已有用户的密码 |
chpasswd | 从文件中读取登录名密码对,并更新密码 |
chage | 修改密码的过期日期 |
chfn | 修改用户账户的备注信息 |
chsh | 修改用户账户的默认登录shell |
1.usermod能修改/etc/passwd文件中的大部分字段,参数不部分和useradd命令参数一样。
参数 | 描 述 |
-c | 给新用户添加备注 |
-d | 为主目录指定一个名字(如果不想用登录名作为主目录名的话) |
-D | 查看创建新用户系统赋予的默认值 |
-e | 用YYYY-MM-DD格式指定一个账户过期的日期 |
-f | 指定这个账户密码过期后多少天这个账户被禁用;0表示密码一过期就立即禁用,-1表示禁用这个功能 |
-g | 指定用户登录组的GID或组名 |
-G | 指定用户除登录组之外所属的一个或多个附加组 |
-k | 必须和-m一起使用,将/etc/skel目录的内容复制到用户的HOME目录 |
-m | 创建用户的HOME目录 |
-M | 不创建用户的HOME目录(当默认设置里要求创建时才使用这个选项) |
-n | 创建一个与用户登录名同名的新组 |
-r | 创建系统用户 |
-p | 为用户账户指定默认密码 |
-s | 指定默认的登录shell |
-u | 为账户指定唯一的UID |
-l | 修改用户账户的登录名 |
-L | 锁定账户 |
-U | 解除锁定 |
-P | 修改账户的密码 |
2.passwd和chpasswd
passwd test :修改账户test的密码
passwd-e test :强制test下次登录时修改密码
passwd -u test :解除用户test的锁定状态
passwd -l test :锁定用户test
passwd -k test :禁止用户test修改密码,直到密码过期失效。
passwd -d test:删除用户test的密码
3.chsh、chfn、chage用来修改特定的账户信息
chage -d 0 test:用户test下次登录必须修改口令。
chage -m 2 -M 30 -W 5 test:用户test两天内不允许更改口令,口令存活期30天,口令过期前5天通知用户test
chage -l test:查看用户test当前的口令时效信息。