用户管理
增 -- useradd adduser
选项 |
作用 |
-u |
指定uid |
-g |
指定gid |
-c |
指定用户的注释,备注 |
-d |
指定用户家目录 |
-M |
不创建用户家目录 |
-s |
指定用户登录的shell ----bash |
-G |
指定附加组 |
-r |
创建一个用户uid在200 - 999之间 |
## 创建一个用户会影响到4个文件
/etc/passwd -----用户配置目录
/etc/shadow -----用户密码存放与配置
/etc/grou[ -----用户组配置
/etc/gshadow -----用户组密码设置 (一般不用)
## 创建用户 ----- 直接useradd 命令创建用户
[root@moban ~]# useradd newroot
[root@moban ~]# id newroot
uid=1005(newroot) gid=1006(newroot) groups=1006(newroot)
## 手动创建方法
1.
[root@moban ~]# vim /etc/group
newroot001:x:1007: ----------------- 在底添加一个新的用户组名 和gid号
2.
[root@moban ~]# vim /etc/gshadow
newroot001:!:: ----------------- 在底部添加刚刚用户组的密码
3.
[root@moban ~]# vim /etc/passwd
newroot001:x:1007:1007::/home/newroot001:/bin/bash ---- 添加用户名uid gid 家 shell
4.
[root@moban ~]# vim /etc/shadow
newroot001:!!:19823:0:99999:7::: ------------- 设置用户密码!! 是无密码
5.
[root@moban ~]# mkdir /home/newroot001/ -p -------- 创建 其家
[root@moban ~]# cp /etc/skel/.bash* /home/newroot001/ ------- 拷贝bash到其家目录下
## 指定用户uid -u
[root@moban ~]# useradd a001 -u 611
[root@moban ~]# id a001
uid=611(a001) gid=1008(a001) groups=1008(a001)
## 指定用户gid -g ----- 必须是存在的组
[root@moban ~]# useradd a002 -g 1008 ------ -g a001(作用一样)
[root@moban ~]# id a002
uid=1008(a002) gid=1008(a001) groups=1008(a001)
## 指定用户备注
[root@moban ~]# useradd a003 -c '逃离上海'
a003:x:1009:1009:逃离上海:/home/a003:/bin/bash
## 指定用户家目录
[root@moban ~]# adduser a004 -d /opt/a004
[root@moban ~]# ll /opt/a004 -d
drwx------. 2 a004 a004 62 Apr 10 15:10 /opt/a004
## 不创建家目录
[root@moban ~]# userdel a005 -M
[root@moban ~]# ll /home/a005
ls: cannot access /home/a005: No such file or directory
## 指定用户的shell
[root@moban ~]# useradd a006 -M -s /sbin/nologin
## 指定用户附加组
[root@moban ~]# useradd a007 -G 0,a006
[root@moban ~]# id a007
uid=1013(a007) gid=1013(a007) groups=1013(a007),0(root),1024(a006)
改(修改用户信息)
选项 |
作用 |
-u |
修改uid |
-g |
修改gid |
-c |
修改备注 |
-d |
修改用户家目录 (修改passwd) |
-m |
配合-d,修改完后进行移动家目录 |
-s |
修改用户shell |
-G |
修改用户的附加组,会替换原来组 |
-a |
修改附加组 配合-G使用,追加不修改 |
-L |
锁定用户(封号) |
-U |
解锁用户(解封) |
-l |
修改用户名 |
## user modify
usermod
## 修改用户名
[root@moban ~]# usermod a001 -u 425
[root@moban ~]# id a001
uid=425(a001) gid=1008(a001) groups=1008(a001)
## 修改gid 修改的组必须存在 进行替换主组
[root@moban ~]# usermod a001 -u 611 -g 0
[root@moban ~]# id a001
uid=611(a001) gid=0(root) groups=0(root)
## 修改备注
[root@moban ~]# usermod a001 -c '年方二八'
a001:x:611:0:年方二八:/home/a001:/bin/bash
## 修改家目录(passwd) 配和移动
[root@moban ~]# usermod a001 -m -d /root
## 修改用户登录的shell(bash)
[root@moban ~]# usermod a001 -s /sbin/nologin
## 修改用户附加组
1-----追加
[root@moban ~]# usermod a001 -aG a003,a005,a006
[root@moban ~]# id a001
uid=611(a001) gid=0(root) groups=0(root),1009(a003),1011(a005),1012(a006)
2-----替换 --------除了主组都替换
[root@moban ~]# id a001
uid=611(a001) gid=0(root) groups=0(root),1013(a007)
删(删除用户)
# user delete
userdel [选项]... 用户名
## 直接删除用户,类似于在/etc/passwd文件中把该用户行信息删除(家目录还在和所有用户相关文件都在)
[root@moban ~]# userdel -r a004
[root@moban ~]# ll /home/a004
ls: cannot access /home/a004: No such file or directory
拓展知识
## 创建用户的系统配置文件
/etc/login.defs
/etc/defaults/useradd
login.defs
[root@moban ~]# egrep -i '^[a-z]' /etc/login.defs
# 用户mail存放位置
MAIL_DIR /var/spool/mail
# 密码最长使用时间天数
PASS_MAX_DAYS 99999
# 密码最短使用时间天数
PASS_MIN_DAYS 0
# 密码最小长度
PASS_MIN_LEN 5
# 密码快过期,7天内提醒
PASS_WARN_AGE 7
# 最小uid
UID_MIN 1000
# 最大uid
UID_MAX 60000
# 最小系统用户 uid
SYS_UID_MIN 201
# 最大系统用户 uid
SYS_UID_MAX 999
# 同上
GID_MIN 1000
GID_MAX 60000
SYS_GID_MIN 201
SYS_GID_MAX 999
# 是否创建家目录
CREATE_HOME yes
# 家目录的默认权限
UMASK 077
# 创建用户时候是否创建同名组
USERGROUPS_ENAB yes
# 密码通过SHA512 加密
ENCRYPT_METHOD SHA512
## 创建用户时,useradd命令需要读取的配置文件
[root@localhost ~]# cat /etc/default/useradd
## 如果/etc/login.defs 中的USERGROUPS_ENAB是yes,那就不读取改行配置
## 如果/etc/login.defs 中的USERGROUPS_ENAB是no,那就走该行配置,把创建的用户加入gid为100
的组
GROUP=100
## 创建用户时,默认用户家目录放在/home下
HOME=/home
## 用户账户有没有期限 -1表示不启用
INACTIVE=-1
## 账号终止日期,不设置表示不启用
EXPIRE=
## 用户登录时的shell
SHELL=/bin/bash
## 用户家目录下的环境变量文件存放原始目录
SKEL=/etc/skel
## 创建用户是否同时创建邮箱
CREATE_MAIL_SPOOL=y
了解命令
## 查看用户信息
[root@localhost ~]# finger zls
Login: zls Name:
Directory: /home/zls Shell: /bin/bash
Last login Wed Apr 10 18:06 (CST) on pts/3 from 10.0.0.1
No mail.
No Plan.
Login: zls676767 Name: zls 123 aaa bbb aaaa
Directory: /home/zls676767 Shell: /bin/bash
Never logged in.
No mail.
No Plan.
## 修改用户的信息(finger能查看到的信息)
[root@localhost ~]# chfn zls
Changing finger information for zls.
Name []: zls11111111
Office []: oldboy
Office Phone []: 123
Home Phone []: 312
## 修改用户登录的shell
[root@localhost ~]# chsh zls
Changing shell for zls.
New shell [/sbin/nologin]: /bin/bash
Shell changed.
[root@localhost ~]# w
19:57:11 up 3:37, 2 users, load average: 0.06, 0.04, 0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root tty1 17:01 2:55m 0.01s 0.01s -bash
root pts/0 10.0.0.1 18:43 7.00s 0.34s 0.01s w