1.useradd命令
格式: useradd [选项] ...用户名
2.1-常用命令选项
-u:指定UID标记号
-d:指定宿主目录,默认为/home/用户名
-e:指定账号失效时间
-g:指定用户的基本组名(或者GID号)
-G:指定用户地附加组名(或者GID号)
-M:不为用户建立并初始化宿主目录
-s:指定用户的登录shell
-c:用户注释描述信息
-r:新建系统用户,不会有新建家目录
-g 主要组 --》主业
-G 次要组 --》副业
[root@localhost liming]# groupadd mingjiao [root@localhost liming]# groupadd wudang [root@localhost liming]# useradd -g mingjiao -G wudang zhangwuji [root@localhost liming]# cat /etc/passwd | grep zhangwuji zhangwuji:x:1029:1029::/home/zhangwuji:/bin/bash [root@localhost liming]# id zhangwuji uid=1029(zhangwuji) gid=1029(mingjiao) 组=1029(mingjiao),1030(wudang)
-u 指定uid号
-d 指定家目录所在
[root@localhost mail]# useradd -g mingjiao -G wudang -d /guangmingdin -u 9000 zhangwuji [root@localhost mail]# cat /etc/passwd | grep zhangwuji zhangwuji:x:9000:1029::/guangmingdin:/bin/bash [root@localhost mail]# id zhangwuji uid=9000(zhangwuji) gid=1029(mingjiao) 组=1029(mingjiao),1030(wudang)
-s 指定用户登录的shell
[root@localhost /]# useradd -s /sbin/nologin libai [root@localhost /]# cat /etc/passwd | grep libai libai:x:1024:1024::/home/libai:/sbin/nologin
[root@serv-test home]# useradd test002 -r -M -s /sbin/nologin [root@serv-test home]# id test002 uid=494(test002) gid=493(test002) 组=493(test002) [root@serv-test home]# tail -1 /etc/passwd test002:x:494:493::/home/test002:/sbin/nologin
-c 用户描述信息
[root@localhost mail]# useradd -g mingjiao -G wudang -d /guangmingdin -c mingjiaomaster -u 9000 zhangwuji [root@localhost mail]# cat /etc/passwd | grep zhangwuji zhangwuji:x:9000:1029:mingjiaomaster:/guangmingdin:/bin/bash
2,userdel 删除用户
-f #强制删除用户账号 -r #删除用户主目录及其中的任何文件 -h #显示命令的帮助信息
删除用户,但不删除其家目录及文件
[root@mingongge ~]# userdel mingongge
1.
删除用户,并将其家目录及文件一并删除
登录后复制
[root@mingongge ~]# userdel -r mingongge
1.
强制删除用户
[root@mingongge ~]# userdel -f mingongge
3,usermod命令
- -l : 更改用户账号的登录名称
- -L:锁定用户账号
- -U:解锁用户账号
- 以下选项与useradd命令中的含义相同
- -g -G -c -d
-u 修改uid号
[root@localhost home]# usermod -u 1029 zhangwuji [root@localhost home]# id zhangwuji uid=1029(zhangwuji) gid=1029(mingjiao) 组=1029(mingjiao),1030(wudang)
-L 锁定用户账号
LOCK 禁用用户 --》不能ssh登录linux系统
本质:将某个用户锁住,其实就是在/etc/shadow里面该用户的密码字段前面加一个!,就可以将该用户锁定,也可以直接vim该文件在密码前面修改
[root@localhost home]# usermod -L feng2 [root@localhost home]# passwd -S feng2 feng2 LK 2022-02-27 0 99999 7 -1 (密码已被锁定。)
4,passwd命令
交互式设置密码
[root@localhost home]# useradd liang
[root@localhost home]# passwd liang
更改用户 liang 的密码 。
新的 密码:
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
非交互式设置密码
[root@localhost home]# echo 123456 | passwd liang --stdin 更改用户 liang 的密码 。 passwd:所有的身份验证令牌已经成功更新。 [root@localhost home]# --stdin 的作用是告诉passwd使用前面传过来的作为密码
-l锁定用户账号
-S查看用户的状态(是否被锁定)
usermod禁用用户的时候,在shadow文件里的密码字段加一个! passwd 禁用用户的时候,在shadow文件里的密码字段加两个! [root@localhost home]# passwd -l feng3 锁定用户 feng3 的密码 。 passwd: 操作成功 [root@localhost home]# passwd -S feng3 feng3 LK 2022-02-27 0 99999 7 -1 (密码已被锁定。)
设置强度较高的随机密码
-l 长度
-d 数字
-c 小写
-C 大写
-s 特殊字符
yum install -y expect [root@serv-test home]# mkpasswd -l 25 -d 5 -c 6 -C 7 -s 3 DVJsez&SSjzfu0u81>9Ajz"R6
5,groupadd 新建组
groupadd只能一次新建一个组,不能一次新建多个组
[root@localhost lianxi2]# groupadd nongda
[root@localhost lianxi2]# groupadd gongda
[root@localhost lianxi2]# groupadd wenli
groupdel 删除组
删除gongda组,验证是否可以成功删除?
不能,group只能删除空的组,如果里面有人的话是不能删除的
如果想删除需要将里面用户的组换到别的组
[root@localhost lianxi2]# groupdel gongda
--用户创建流程--
系统创建用户参考的两个配置文件
/etc/login.defs
/etc/default/useradd
如果在创建时,我们自行指定了参数,那么优先使用定义的;
如果没有定义,则使用默认配置(/etc/login.defs | /etc/default/useradd)
[root@serv-test home]# grep -vEn "^#|^$" /etc/login.defs 15:MAIL_DIR /var/spool/mail 25:PASS_MAX_DAYS 99999 26:PASS_MIN_DAYS 0 27:PASS_MIN_LEN 5 28:PASS_WARN_AGE 7 33:UID_MIN 500 34:UID_MAX 60000 39:GID_MIN 500 40:GID_MAX 60000 54:CREATE_HOME yes 58:UMASK 077 62:USERGROUPS_ENAB yes 65:ENCRYPT_METHOD SHA512
[root@serv-test home]# cat /etc/default/useradd # useradd defaults file GROUP=100 HOME=/home INACTIVE=-1 EXPIRE= SHELL=/bin/bash SKEL=/etc/skel CREATE_MAIL_SPOOL=yes