文章首发于Linux学习总结(十二)—— CentOS用户管理,请尊重原创保留原文链接。
创建用户
useradd -g webadmin -d /home/zhangsan zhangsan
passwd zhangsan
上面的命令创建了用户zhangsan,并将其归属于webadmin用户组,默认目录为/home/zhangsan,之后用passwd命令为zhangsan设置密码。
更多useradd命令的参数如下表所示:
参数 | 描述 |
---|---|
-u | 指定用户的UID(超级用户UID=0,普通用户UID 500-60000,伪用户UID 1-499) |
-g | 指定用户缺省所属的用户组的GID |
-G | 指定用户组所属多个组(用英文逗号隔开) |
-d | 指定宿主目录 |
-s | 指定命令解释器Shell |
-c | 指定描述信息 |
-e | 指定用户失效时间 |
修改用户
usermod -l lisi -md /home/lisi zhangsan
上面的命令将zhangsan用户登录名改为lisi,并将其默认目录改为/home/lisi。可以看到在运行命令后,zhangsan目录变成了lisi。
usermod命令可用参数列表如下:
参数 | 描述 |
---|---|
-l | 修改登录名 |
-u | 指定用户的UID(超级用户UID=0,普通用户UID 500-60000,伪用户UID 1-499) |
-g | 指定用户缺省所属的用户组的GID |
-G | 指定用户组所属多个组(用英文逗号隔开) |
-d | 指定宿主目录 |
-m | 将家目录内容移至新位置 (仅于 -d 一起使用) |
-s | 指定命令解释器Shell |
-c | 指定描述信息 |
-e | 指定用户失效时间 |
-L | 锁定用户帐号 |
-U | 解锁用户帐号 |
文章首发于Linux学习总结(十二)—— CentOS用户管理,请尊重原创保留原文链接。
删除用户
userdel -r lisi
上面的命令删除了lisi账户,并删除其用户目录。在/etc/passwd文件中也可以看到lisi用户的记录不见了。
修改密码
passwd lisi
上面的命令可以为用户lisi设置新的密码。
更多可用参数列表如下:
参数 | 描述 |
---|---|
-d | 删除密码,仅有系统管理者才能使用 |
-f | 强制执行 |
-k | 设置只有在密码过期失效后,方能更新 |
-l | 锁住密码 |
-u | 解开已上锁的账号 |
-s | 列出密码的相关信息,仅有系统管理者才能使用 |
密码有效期
chage命令用于修改账号和密码的相关设定。
chage -E 2017/06/30 lisi
上面的命令设置lisi用户在2017年6月30日过期,修改过后可以在/etc/passwd文件中看到对应标志位修改。
更多关于chage命令的参数可参考下表:
参数 | 描述 |
---|---|
-l | 查看用户密码设置(如:密码失效时间、最后一次修改密码时间等) |
-m | 密码修改最小天数 |
-M | 密码修改最大天数 |
-d | 密码最后修改的日期 |
-I | 密码过期后,锁定账户的天数 |
-E | 设置密码的过期日期,如果为0,代码密码立即过期;如果为-1,代表密码永不过期 |
-W | 设置密码过期前,开始警告的天数 |
禁用账户
禁用账户使用的是usermod命令,配合-L参数锁住账户。
usermod -L lisi
上面的命令将lisi账户锁定禁用,用passwd命令也可以实现同样的效果:
passwd -l lisi
我们用ssh zhangsan@192.168.1.1
登陆服务器的时候,会发现服务器拒绝了登陆,那就说明账户成功被禁用。
恢复账户
禁用账户使用的是usermod命令,配合-U参数锁住账户。
usermod -U lisi
上面的命令将lisi账户解锁,用passwd命令也可以实现同样的效果:
passwd -u lisi
查看所有用户信息
在Linux系统中,所有用户的账户信息保存在/etc/passwd文件中。
上图红色框中的内容就是我们上面创建的用户zhangsan对应的一条记录。文件中每一条记录对应一个用户,每条记录都遵守着固定的格式。
用户名:密码位:UID:GID:描述信息:宿主目录:使用的shell命令
我们创建的zhangsan用户,其用户名就是zhangsan,UID为1002,GID为888,没有描述信息,宿主目录为/home/zhangsan,使用的shell命令为/bin/bash。
查看所有用户的密码信息
在Linux系统中,所有用户的账户信息保存在/etc/shadow文件中。
上图红框部分的就是zhangsan的密码信息。文件中每一条记录对应一个用户的密码信息,每条记录都遵守着固定的格式。
用户名:加密密码:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:帐号闲置时间:失效时间:标志
我们创建的zhangsan用户,其用户名就是zhangsan,最后一次修改时间为17295天(1970年到今天的日期),最小时间间隔为0,最大时间间隔为99999天,警告时间为7天,账号闲置时间、失效时间、标识都为空。
关于各项标志位的意义,可以参考下表:
标志位 | 含义 |
---|---|
最后一次修改时间 | 是指最后一次修改密码的天数与1970年1月1日相隔的天数 |
最小时间间隔 | 指两次修改密码之间的最小天数(当为0时表示不限制)。 |
最大时间间隔 | 是指密码多少天之后失效,但是可以在重新密码使账户可以重新启用。而失效时间是指多久之后账户就直接无效(当不限制无效时间时,直接设置一个很大的值即可。) |
警告时间 | 当密码失效前n天就进行提示警告(当为0时表示不警告) |
帐号闲置时间 | 指用户没有登录活动但账号仍能保持有效的最大天数(不设置则留空) |
失效时间 | 指多久之后账户就直接无效。一般应用于短期外来人员的帐号。 |
标志 | 一般不使用 |