用户管理命令
用户添加命令
命令格式
useradd [选项] 用户名
选项:
-u UID: #人为指定用户UID号
-d 家目录: #手工指定用户的家目录
-c 用户说明: #手工指定用户的说明
-g 组名: #手工指定用户的初始组
-G 组名: #指定用户的附加组
-s Shell: #手工指定用户的登陆shell。默认是/bin/bash

例如建立一个名叫ceshi的用户:

useradd -u 250 -G root,bin -c "test" -d /zhou -s /bin/bash ceshi


用户默认值文件
路径 /etc/default/useradd
GROUP=100 #用户默认组
HOME=/home #用户家目录
INACTIVE=-1 #密码过期宽限天数(shadow的第7个字段)
EXPIRE= #密码失效时间(shadow的第8个字段)
SHELL=/bin/bash #默认shell
SKEL=/etc/skel #模板目录
CREATE_MAIL_SPOOL=yes #是否建立邮箱

但这个文件中只定义了shadow文件的第七和第八个字段,其余字段的定义在下面这个文件中。

路径 /etc/login.defs
PASS_MAX_DAYS #密码有效期(shadow的第5个字段)
PASS_MIN_DAYS #密码修改间隔(shadow的第4个字段)
PASS_MIN_LEN #密码的最小位数(现在是PAM生效)
PASS_WARN_AGE #密码到期警告(shadow的第6个字段)
UID_MIN #最小和最大UID范围
UID_MAX
ENCRYPT_METHOD SHA512 #密码加密算法是SHA512

修改用户密码
命令格式
passwd [选项] 用户名
选项:
-S #查询用户密码的密码状态,仅root可用
-l #暂时锁定用户(仅root可用)
-u #解锁用户(仅root可用)
--stdin #可以通过管道符输出的数据作为用户的密码

这里重点说一下最后一个选项的使用:

echo"456"|passwd --stdin 用户名

这句命令的意思是默认将456这个字符串作为该用户的密码,这种方法在创建多个用户时比较有效。

修改用户信息
usermod [选项] 用户名
选项:
-u UID #修改用户的UID号
-c "用户说明" #修改用户的说明信息
-G 组名 #修改用户的附加组
-L #临时锁定用户(Lock)
-U #解锁用户锁定(Unlock)

修改用户密码状态
其实用vim直接修改shadow文件更好。

chage [选项] 用户名
选项:
-l #列出用户的详细密码状态
-d 日期: #修改密码最后一次更改日期(shadow第3字段),天数设为0就可以使用户登陆就要修改密码
-m 天数: #两次密码修改间隔(第4字段)
-M 天数: #密码有效期(第5字段)
-W 天数: #密码过期前警告天数(第6字段)
-I 天数: #密码过后宽限天数(第7字段)
-E 日期: #账号失效时间(第8字段)

删除用户
userdel -r 用户名
选项:
-r #连同用户的家目录一起删除

用户ID
id 用户名

切换用户身份
su [选项] 用户名
选项:
-: #连带用户的环境变量一起切换
-c "命令": #仅执行一次命令,而不切换用户身份

示例:

su - root
su - root -c "useradd zhou"

posted on 2023-11-26 20:19  姑苏寒钟  阅读(20)  评论(0)    收藏  举报