用户管理
超级用户、普通用户、组
- 使用useradd命令增加新用户,注意:adduser 命令软链接指向useradd命令
选项:-u 指定要创建用户的UID,不允许冲突
-g 指定要创建用户的默认组
-G 指定要创建用户的附加组,逗号隔开可添加多个附加组
-c 指定要创建用户的注释信息
-s 指定要创建用户的bash shell .bin/bash /sbin/nologin
-d 指定要创建用户家目录(默认为/home)
-M 给创建的用户不创建家目录
-r 创建系统账号,默认无家目录
#创建bgx用户,UID5001,基本组student,附加组sa,注释信息2019 new student,登陆shell:/bin/bash
groupadd student #创建组
groupadd sa #创建组
useradd bgx -u 5001 -g student -G sa -c "2020 new student" -s /bin/bash #创建bgx用户
id bgx #检查bgx用户
grep "bgx" /etc/passwd #过滤配置文件,检查用户详情(只显示基本组)
useradd mysql -r -s /sbin/nologin #-r创建一个系统用户,系统用户默认就没有家目录,-s 在指定不运行登陆系统
useradd mysql2 -M -s /sbin/nologin #-M不给用户创建家目录,并指定登陆的bash是/sbin/nologin
#系统创建用户时保存配置信息的文件
cat /etc/passwd #用户名称:X(密码占位符):用户UID:组GID:注释信息:用户家目录:登陆shell
cat /etc/shadow
#用户名称:加密密码(!!为无密码):新密码距现在多少天:密码最少使用天数:最长使用天数:到期提醒天数:强制更改密码天数:账户失效天数
- 使用usermod命令修改用户信息
选项:-u 修改用户UID
-g 修改用户基本组
-G 修改用户附加组
-d 修改用户家目录
-s 修改用户的bash shell
-c 修改用户的注释信息
-l 修改用户的登录名
-L 指定锁定用户
-U 指定解锁用户
#检查bgx的用户信息并修改为uid6001,group:devops,groups:network,sa
grep "bgx" /etc/passwd
groupadd devops #添加组
groupadd network #添加组
usermod bgx -u 6001 -g devops -G network,sa
id bgx #检查
#修改bgx用户的注释信息,用户家目录/opt/bgx,登陆shell:/bin/sh,账户名
usermod bgx -c "2200 new student" -d /opt/bgx -s /bin/sh -l bgx_new
id bgx_new
echo "123" | passwd --stdin username #修改密码
usermid -L username #锁定用户
usermod -U username #解锁用户
#使用userdel命令删除账户
#选项 -r 删除用户的家目录以及用户的邮件
userdel user1 #删除用户家目录和mail spool
userdel -r user1 #-r参数连同家目录一起删除(慎用)
- 新用户设定密码,老用户修改密码
passwd #修改当前用户的密码,用户只能修改自己的密码(密码长度必须为8位)
passwd root #只有root才有权限修改
passwd lemontree #修改lemontree的密码,root才拥有此权限(长度不限)
echo "123" | passwd --stdin lemontree #非交互式修改密码
- mkpasswd 生成随机字符串
选项:-l 设定密码长度
-d 数字
-c 小写字母
-C 大写字母
-s 特殊字符
#系统内置随机生成字符串
echo $RANDOM #随机生成数字
echo $RANDOM | md5sum #随机生成加密数字
echo $RANDOM | md5sum | cut -c 2-10 #随机生成并取第二位到第十位
#若没有mkpasswd命令,则需要安装
yum intsall expect -y
#可以不指定选项
mkpasswd -l 10 -d 2 -c 3 -C 3 -s 2