一、用户管理命令
1、useradd 创建用户或更新默认新用户的信息
使用方法 useradd [options] 用户名
选项:
useradd -u 指定UID具体数值,在某些项目中要保证多台服务器某服务的UID应该是一样
useradd -o 配合-u选项,不检查UID的唯一性
useradd -g [GID|组名] GID,组ID要存在(基本组,可以通过组ID 或者组名添加),如果该指定了基本组为已有的组,那么就不会创建和user同名的组了
useradd -G [GID|组名] (附加组,组必须存在,可以同时添加多个附加组),可以是GID或者是组名
useradd -c 用户注释信息
useradd -d /home/xxxx 指定家目录,如果家目录不存在通过-m创建
useradd -s 指定SHELL路径,必须在(etc/shells)文件中出现的shell,如/sbin/nologin
useradd -m 创建用户,强制给用户创建家目录
useradd -M 创建用户,不创建用户家目录
useradd -D 为useradd 命令创建的用户指定新的默认值
useradd -r 添加系统用户 ID号再1-499之间,不会给用户创建家目录,也不创建邮箱
常用应用系统创建用户方法:useradd -r -u 48 -g apache -s /sbin/nologin -d /var/www -c "Apache" apache
举例:创建用户gentoo,附加组为bin和root,默认shell为/bin/csh,注释信息为 "Gentoo Distributio"
# useradd -G "bin,root" -s /bin/csh -c "Gentoo Distribution" gentoo
2、usermod 修改用户账户信息
使用方法: usermod [options] 用户名
选项:
usermod -u 修改UID
usermod -g 修改基本组名(必须是事先存在的组才能改)
usermod -G 修改并覆盖原有附加组
usermod -a -G 为用户在原有附加组的前提下,追加附加组
usermod -G "" 清空附加组
usermod -c 修改注释信息
usermod -d 指定新家目录,但并不迁移,和-m同时使用
usermod -d -m 指定新家目录,后移动此前家目录的文件到新的家目录
usermod -s 指定shell路径,系统允许使用的
usermod -e 指定用户过期时间
usermod -l 修改用户名,家目录不更改
usermod -L 锁定用户
usermod -U -U 解锁用户
usermod -f INACTIVE 设定非活动期限
usermod -e YYYY-MM-DD 指定用户账号过期日期
3、userdel 删除用户,默认保留用户家目录
使用方法: userdel [options] 用户名
选项:
userdel -r 删除用户并删除家目录
二、用户其他相关命令
4、id 查看用户的ID信息
使用方法: id [options] 用户名
选项:
id -u 显示UID
id -g 显示基本组GID
id -G 显示附加组GID
id -n -[u,g,G] 显示组名,配合其他命令一起使用,一次只能跟一个比如-ng
5、su 切换用户或以其他用户身份执行命令
选项:
su 用户名 非登录式切换,即不会读取目标用户的配置文件,不改变当前工作目录
su -[l] 用户名 登录式切换,会读取目标用户的配置文件,切换至家目录,完全切换。l可以省略。
su -c su - Fred -c "touch /xxx/a.txt",以Fred用户执行touch a.txt命令
6、passwd 修改指定用户的密码
使用方法: passwd [options] 用户名
选项:
passwd -l 锁用户
passwd -u 解锁用户
passwd -d 删除账户密码
passwd -n days 指定最短使用期限
passwd -x days 最大使用期限
passwd -w days 提前多少天开始警告
passwd -i days 非活动期限,密码过期后还宽限多少天可以登录使用
passwd -e 强制用户下次登录修改密码
passwd -f 强制操作
常用技巧:
1、通过标准字符串redhat来修改Fred用户的密码
#echo "redhat" | passwd --stdin Fred > /dev/null
7、chage 修改用户密码到期时间
使用方法: chage [options] 用户名
选项:
chage -d 最近一次的修改时间,
# chage -d 0 Fred 立即让Fred用户口令失效,需要重新输入新密码
chage -E 活动时间
chage -I 非活动时间
chage -m 最短使用期限
chage -M 最长使用期限
chage -W 警告时间
chage -l 相当于--list,显示账户口令有效期信息
8、chfn 修改用户的注释信息
9、finger 查看用户账号的注释信息
10、chsh 修改用户的默认shell
三、用户组管理命令
11、groupadd 创建新组
使用方法: groupadd [options] 组名
选项:
groupadd -g 创建组并为其指定GID
groupadd -r 创建系统组
12、groupmod 修改组信息
使用方法: groupmod [options] 组名
选项:
groupmod -g 修改GID
groupmod -n 新组名
13、groupdel 删除组