1.什么是用户?
1.能正常登陆系统的都算用户
2.windows系统和linux系统的用户有什么区别?
本质上没有区别, linux支持多个用户同一时刻登陆系统, 互相之间不影 响而windows只允许同一时刻不允许多个用户登录. 企业版或者服务器版win可以支持多用户登录
![](https://img.haomeiwen.com/i7795327/cebc5218e10f6e33.png)
如图所示,Superuser代表为root超级管理员用户
超级用户下为普通用户,多个普通用户能逻辑上分为一个组 当然一个用户也能隶属
于多个组
为什么要创建用户?
1.系统上的每一个进程(运行的程序),都需要一个特定的用户运行
2.通常在公司是使用普通用户管理服务器,因为root权限过大,容易 造成故障。
3.查询已拥有的系统用户
[root@localhost ~]# id
uid=0(root) gid=0(root) groups=0(root)
或者
[root@localhost ~]# id username
4.创建用户会在系统的哪个配置中保存信息?
当创建一个用户时,系统会操作/etc/passwd /etc/shadow 这两个文件,变更文件中的内容
[root@localhost ~]# head -1 /etc/passwd
root:x:0:0:root:/root:/bin/bash
以:作为分隔符,总共7列
第一列 | 第二列 | 第三列 | 第四列 | 第五列 | 第六列 | 第七列 |
---|---|---|---|---|---|---|
root | X | 0 | 0 | root | /root | /bin/bash/ |
用户名称 | 密码占位符 | 用户UID | 组GID | 注释信息 | 用户家目录 | 登录shell |
[root@localhost ~]# head -1 /etc/shadow
zj:!!:16312:0:999999:7:2:66275:
以:作为分隔符,总共9列
第一列:zj | 用户名称 |
---|---|
第二列:!! | 密码为一长字符串,!!则表示无密码 |
第三列:16312 | 最近一次变更密码,从1970年到现在,过了多少天 |
第四列:0 | 密码最少使用天数,0无限制 |
第五列:999999 | 密码最长使用天数,默认999999不过期 |
第六列:7 | 密码到期前,系统会在密码到期前7天提醒变更密码 |
第七列:2 | 密码到期后,密码过期或2天强制提示变更用户密码 |
第八列:66275 | 账号失效时间,从1970年起,账号在这个日期前可以使用,到期后失效 |
第九列:空 | 保留列 |
5.系统用户UID
用户UID | 系统中的含义 |
---|---|
0 | 超级管理员,最高权限,有着极强的破坏能力 |
1~200 | 系统用户,用来运行系统自带的进程,默认已创建 |
201~999 | 系统用户,用来运行用户安装的程序,此类用户无需登录 |
1000+ | 普通用户,正常可以登录系统的用户,权限比较小,能执行的任务有限 |
PS:在Centos7系统版本之前,UID1-499用于系统用户,而UID500+则用于普通用户
6.用户创建、修改、创建
1.useradd创建用户
1.创建bgx用户,UID5001,基本组students,附加组sa 注释信 息:2019 new student,登陆shell:/bin/bash
PS: UID GID 在整个系统是唯一的.
[root@localhost ~]# groupadd students #创建基本组
[root@localhost ~]# groupadd sa #创建附加组
[root@localhost ~]# useradd zj -u 5001 -g students -G sa -c "2019 new" -s /bin/bash
#-u:指定UID
#-g:添加到基本组
#-G:添加到附加组
#-c:写入注释信息
#-s:用户指向
#检查用户
[root@localhost ~]# id zj
uid=5001(zj) gid=1000(students) groups=1000(students),1001(sa)
[root@localhost ~]# grep "zj" /etc/passwd
zj:x:5001:1000:2019 new:/home/zj:/bin/bash
创建一个xlw用户,uid为6666,附加组为sa,用户的家目录 为/tmp/zhangjian 登陆的shell为/sbin/nologin
[root@localhost ~]# useradd zhnagjian -u 666 -G sa -d /tmp/zhangjian -s /sbin/nologin
# -u 指定要创建用户的UID,不允许冲突
# -g 指定要创建用户默认组(基本组 主要的组)
# -G 指定要创建用户附加组,逗号隔开可添加多个附加组
# -d 指定要创建用户家目录
# -s 指定要创建用户的bash shell /bin/bash /sbin/nologin # -c 指定要创建用户注释信息 # -M 给创建的用户不创建家目录
# -r 创建系统账户,默认无家目录 [999-200]
2.usermod修改用户
1.检查之前创建的用户
[root@localhost ~]# id zj
uid=5001(zj) gid=1000(students) groups=1000(students),1001(sa)
2.修改zj用户uid 9999、gid (devops),附加组 dba,sa
[root@localhost ~]# groupadd devops
[root@localhost ~]# groupadd dba
[root@localhost ~]# usermod zj -u9999 -g devops -aG dba,sa
3.修改zj用户的注释信息, 用户家目录, 登录shell, 登录名
[root@localhost ~]# usermod zj -c "oldboyedu.com" -md /home/oldboy -s /bin/bash -l oldboy
#检查
[root@localhost ~]# grep "oldboy" /etc/passwd
oldboy:x:9999:1003:oldboyedu.com:/home/oldboy:/bin/bash
# -u 指定要修改用户的UID
# -g 指定要修改用户基本组
# -G 指定要修改用户附加组,使用逗号隔开多个附加组, 覆盖原有的附 加组 -aG 追加
# -d 指定要修改用户家目录 -md 旧家搬新家
# -s 指定要修改用户的bash shell
# -c 指定要修改用户注释信息 # -l 指定要修改用户的登陆名 # -L 指定要锁定的用户
# -U 指定要解锁的用户
3.userdel删除用户
1.删除user1用户,但不删除用户家目录和 mail spool
[root@localhost ~]# userdel zj
2.-r参数可以连同用户家目录一起删除(慎用)
[root@localhost ~]# userdel -r zj
# -r 删除用户同时删除它的家目录
4.查看用户系统信息
[root@localhost ~]# w
17:56:50 up 9:52, 1 user, load average: 0.00, 0.01, 0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/3 10.0.0.1 15:38 2.00s 0.55s 0.02s w
![](https://img.haomeiwen.com/i7795327/de459a259e8a0bb1.png)
网友评论