day8——用户基本概念

用户基本概念

1.什么是用户?

用户指的是能够正常登录Linux或Windows系统

2.Linux系统与Windows系统的用户有什么区别?

  • 本质上没有区别,Linux是一个多用户的操作系统,支持同一时刻多个用户同时登陆
  • Windows支持创建多个用户,但同一时刻只能有一个用户登陆

3.为什么要创建用户?

(1)系统上的每一个进程(运行的程序),都需要一个特定的用户运行
(2)通常在公司是使用普通用户管理服务器,因为root权限过大,容易造成故障

4.如何查看系统中所存在的用户

(1)查看当前登录用户信息 id
[root@oldboy ~]# id              #查看当前登录系统的用户
uid=0(root) gid=0(root) groups=0(root) 
[root@oldboy ~]# id oldboy          #查看其他用户的信息
uid=1000(oldboy) gid=1000(oldboy) groups=1000(oldboy)
(2)查看进程信息 ps aux
[root@oldboy ~]# ps aux
USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root          1  0.0  0.3 128264  6892 ?        Ss   09:00   0:04 /usr/lib/syste
root          2  0.0  0.0      0     0 ?        S    09:00   0:00 [kthreadd]

5.创建用户存在的位置

当创建一个用户时,系统会操作/etc/passwd /etc/shadow这两个文件,变更文件的内容

(1)/etc/passwd配置文件解释:

[root@oldboy ~]# head -1 /etc/passwd
root:x:0:0:root:/root:/bin/bash

第一列(root):用户名称
第二列(x):密码占位符
第三列(0):用户UID
第四列(0):用户组GID
第五列(root):注释信息
第六列(/root):用户所在的家目录
第七列(/bin/bash):登录shell

/etc/passwd配置图片.png

(2)/etc/shadow配置文件解释:

[root@oldboy ~]# cat /etc/shadow
wzh:!!:16312:0:99999:7:2:6627567:

第一列:wzh,用户名称
第二列:!!,表示无密码,密码是为一长串字符
,*和!表示该用户被锁住了
第三列:16312,最近一次变更密码的时间,从1970年到现在,过了多少天
第四列:0,密码最少使用的天数,0无限制
第五列:99999,密码最长使用天数,设为99999不过期
第六列:7,密码到期前,系统会在密码到期前7天提醒变更密码
第七列:2,密码到期后,密码过期后2天强制提示变更用户密码

第八列:空,账户失效时间,从1970年起,账户在这个日期前可使用,到期后无效

/etc/shadow配置图片5.png

更改密码到期时间chage:https://www.cnblogs.com/xuliangwei/p/10679004.html


6.用户对系统的一个约定

0:超级管理员,最高权限,有着极强的破坏能力
1~200:系统用户,用来运行系统自带的进程,默认已创建
201~999:系统用户,用来运行用户安装的程序,所以此类用户无需登录系统
1000+:普通用户,正常可以登录系统的用户,权限比较小,能执行的任务有限
ps:在CentOS7系统之前,UID1-499用于系统用户,而UID500+则用于普通用户


用户相关命令

useradd:创建用户
usermod:变更用户
userdel:删除用户

1.使用useradd命令新增用户

adduser是useradd命令的软链接

选项:
-u:指定要创建用户的UID,不允许冲突
-g:指定要创建用户默认组GID
-G:指定要创建用户附加组,逗号隔开可添加多个附加组
-d:指定要创建用户家里目录
-s:指定要创建用户的bash shell(默认/bin/bash)(/sbin/nologin不能登入)
-c:指定要创建用户的注释信息
-M:给创建的用户不创建家目录
-r:创建系统账户,默认家目录     [999-201]
(1)创建wzh用户,UID5001,基本组students,附加组sa注释信息:nihaowzh,登陆shell:/bin/bash
创建用户
[root@oldboy ~]# groupadd sa               #首先创建用户组
[root@oldboy ~]# groupadd students        #首先创建用户组
[root@oldboy ~]# useradd wzh -u 5001 -g student -G sa -c "nihaowzh" -s /bin/bash
检查用户
[root@oldboy ~]# id wzh
uid=5001(wzh) gid=1001(student) groups=1001(student),1002(sa)
[root@oldboy ~]# tail -1 /etc/passwd
wzh:x:5001:1001:nihaowzh:/home/wzh:/bin/bash
(2)创建oldgirl系统用户,-M不建立用户家目录 -s指定nologin使其用户无法登陆
创建用户
[root@oldboy ~]# useradd oldgirl -M -r -s /sbin/nologin
检查用户
[root@oldboy ~]# id oldgirl
uid=998(oldgirl) gid=996(oldgirl) groups=996(oldgirl)
[root@oldboy ~]# grep "oldgirl" /etc/passwd
oldgirl:x:998:996::/home/oldgirl:/sbin/nologin
模拟登录
[root@oldboy ~]# su oldgirl
This account is currently not available.
PS:UID和GID在整个系统是唯一的

2.使用usermod命令修改用户

选项
-u 指定要修改用户的UID 
-g 指定要修改用户基本组 
-G 指定要修改用户附加组,使用逗号隔开多个附加组, 覆盖原有的附加组  
-aG 追加(设置多个附加组时用) 
-d 指定要修改用户家目录   -md 旧家搬新家 (把原来的环境变量也复制过去)
-s 指定要修改用户的bash shell  (默认/bin/bash)(/sbin/nologin不能登入)
-c 指定要修改用户注释信息 
-l 指定要修改用户的登陆名
-L 指定要锁定的用户 
-U 指定要解锁的用户
(1)修改wzh用户uid 9999、gid (devops),附加组 dba,sa,dsb
检查之前创建的用户
[root@oldboy ~]# id wzh
uid=5001(wzh) gid=1001(student) groups=1001(student),1002(sa)
创建组
[root@oldboy ~]# groupadd devops
[root@oldboy ~]# groupadd dba
[root@oldboy ~]# groupadd sa
[root@oldboy ~]# groupadd dsb
修改用户
[root@oldboy ~]# usermod wzh -u 9999 -g devops -aG dba,sa,dsb
检查
[root@oldboy ~]# id wzh
uid=9999(wzh) gid=6668(devops) groups=6668(devops),1002(sa),6669(dba),6670(dsb)
(2)修改wzh用户的注释信息, 用户家目录, 登录shell, 登录名
修改
[root@oldboy ~]# usermod wzh -c "wzhnihao" -md /home/oldwa -s /bin/bash  -l oldwa
检查
[root@oldboy ~]# grep "oldwa" /etc/passwd
oldwa:x:9999:6668:wzhnihao:/home/oldwa:/bin/bash

3.使用userdel命令删除用户

选项 
-r 删除用户同时删除它的家目录
(1)删除user1用户,但不删除用户家目录和/var/spool/mail
[root@oldboy ~]# userdel user1
(2)-r参数可以连同用户家目录一起删除(慎用)
[root@oldboy ~]# userdel -r user1

4.使用who、whoami、w检查用户登陆情况

[root@oldboy ~]# who
root     pts/1        2019-08-05 15:33 (10.0.0.1)
[root@oldboy ~]# whoami
root
[root@oldboy ~]# w
 17:36:14 up  8:35,  1 user,  load average: 0.00, 0.01, 0.05
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/1    10.0.0.1         15:33    6.00s  0.37s  0.00s w
w解释.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容