Day08-文件编辑vim2
导读
- 今日内容
- 1.什么是用户
- 2.windows系统和linux系统的用户有什么区别
- 3.为什么要创建用户
- 4.如何查看系统中所存在的用户
- 5.创建用户会在系统的哪个配置中保存信息
- 6.系统对用户有一个约定
- 7.用户管理相关命令
- 相关命令
今日内容
什么是用户
能正常登录系统的都算用户
windows系统和linux系统的用户有什么区别
本质上没有区别,linux允许多个用户同一时刻登录系统,相互之间不影响
而windows同一时刻不允许多个用户登录
为什么要创建用户
系统上的每一个进程,都需要一个特定的用户运行
通常在公司是使用普通用户管理服务器,因为root权限过大,容易造成故障
如何查看系统中所存在的用户
[root@oldboy ~]# id
uid=0(root) gid=0(root) groups=0(root)
[root@oldboy ~]# id jack
id: jack: no such user
创建用户会在系统的哪个配置中保存信息
当创建一个用户,系统会操作/etc/passwd和/etc/shadow这两个文件,变更文件中的内容
`/etc/passwd` 用户配置
`/etc/shadow` 用户密码
[root@oldboy ~]# head -1 /etc/passwd
root:x:0:0:root:/root:/bin/bash
用户名称:密码占位符:用户UID:组GID:注释信息:用户家目录:登录shell
[root@oldboy ~]# head -1 /etc/shadow
bgx:`!!`:16312:`0`:`99999`:`7`:`2`:66275:
用户名称:密码为一长串字符,!!则表示无密码:最近一次变更密码,从1970年到现在,过了多少天:密码最少使用天数,0无限制:密码最长使用天数,默认999999不过期:密码到期前系统会在到期前7天提醒变更密码:密码过期后2天强制提示变更用户密码:账户失效时间,从1970年起,账户在这个日期前可使用,到期后失效
系统对用户有一个约定
`0` 超级管理员,最高权限
`1-200` 系统用户,用来运行系统自带的进程,无需登录用户
`201-999` 系统用户,用来运行用户安装的进程,无需登录系统
`1000+` 普通用户,正常可以登录系统的用户,权限比较小,能执行的任务有限
Ps:在Centos7之前,1-499是系统用户,普通用户500+
用户管理相关命令
添加用户
#创建一个用户指定uid为5001,主组为students,附加组为sa,注释信息为2020 new,指定登录shell为/bin/bash
[root@oldboy ~]# useradd old -u5001 -g students -G sa -c "2020 new" -s /bin/bash
[root@oldboy ~]# id old
uid=5001(old) gid=1000(students) groups=1000(students),1001(sa)
[root@oldboy ~]# grep "old" /etc/passwd
old:x:5001:1000:2020 new:/home/old:/bin/bash
#创建一个mysql系统用户,-M不建立家目录,-s指定nologin使其无法登录系统
[root@oldboy ~]# useradd -r mysql -M -s /sbin/nologin
[root@oldboy ~]# id mysql
uid=998(mysql) gid=996(mysql) groups=996(mysql)
[root@oldboy ~]# grep "mysql" /etc/passwd
mysql:x:998:996::/home/mysql:/sbin/nologin
[root@oldboy ~]# useradd yinliqiang -u6666 -G sa -d /tmp/yinliqiang -s /sbin/nologin
-u 指定要创建用户的UID,不允许冲突
-g 指定要创建用户默认组(基本组,主要的组)
-G 指定要创建用户附加组,逗号隔开可添加多个附加组
-d 指定要创建用户的家目录
-s 指定要创建用户的bash shell #不指定默认/bin/bash
-c 指定要创建用户的注释信息
-M 给创建的用户不创建家目录
-r 创建系统用户,默认无家目录 [999-200]
修改用户
#修改yinliqiang用户uid9999、gid (devops),附加组sa、dsb、dba
[root@oldboy ~]# usermod yinliqiang -u 9999 -g devops -aG dba,sa,dsb
[root@oldboy ~]# id yinliqiang
uid=9999(yinliqiang) gid=6668(devops) groups=6668(devops),1001(sa),6667(dsb),6669(dba)
#修改yinliqiang用户的注释信息,用户家目录,登录shell,登录名
[root@oldboy ~]# usermod yinliqiang -c "oldboyedu.com" -md /home/oldboy -s /bin/bash -l oldboy
[root@oldboy ~]# id oldboy
uid=9999(oldboy) gid=6668(devops) groups=6668(devops),1001(sa),6667(dsb),6669(dba)
[root@oldboy ~]# grep "oldboy" /etc/passwd
oldboy:x:9999:6668:oldboyedu.com:/home/oldboy:/bin/bash
-u 修改UID
-g 修改基本组
-G 修改附加组,覆盖 -aG 追加附加组
-d 修改用户家目录 -md 旧家搬新家
-s 修改bash shell
-c 修改用户注释信息
-l 修改用户的登录名
删除用户
[root@oldboy ~]# userdel yinliqiang
只删除用户,不删除家目录和mail spool
[root@oldboy ~]# userdel -r yinliqiang
连同家目录一起删除
Ps:UID GID在整个系统中是唯一的
[root@oldboy ~]# finger
Login Name Tty Idle Login Time Office Office Phone Host
root root pts/0 Aug 5 11:40 (10.0.0.2)
root root pts/1 53 Aug 5 11:40 (10.0.0.2)
[root@oldboy ~]# finger root
Login: root Name: root
Directory: /root Shell: /bin/bash
On since Mon Aug 5 11:40 (CST) on pts/0 from 10.0.0.2
1 second idle
On since Mon Aug 5 11:40 (CST) on pts/1 from 10.0.0.2
53 minutes 53 seconds idle
Mail last read Wed Jul 31 15:17 2019 (CST)
No Plan.
[root@oldboy ~]# chsh
Changing shell for root.
New shell [/bin/bash]:
[root@oldboy ~]# chfn
Changing finger information for root.
Name [root]:
Office []:
Office Phone []:
Home Phone []:
Finger information not changed.
[root@oldboy ~]# chsh
Changing shell for root.
New shell [/bin/bash]:
[root@oldboy ~]# who
root pts/0 2019-08-05 11:40 (10.0.0.2)
root pts/1 2019-08-05 11:40 (10.0.0.2)
[root@oldboy ~]# whoami
root
[root@oldboy ~]# w
12:32:48 up 52 min, 2 users, load average: 0.01, 0.06, 0.07
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 10.0.0.2 11:40 0.00s 0.21s 0.00s w
root pts/1 10.0.0.2 11:40 52:08 3.43s 3.40s top
当前系统时间,当前系统运行了多久,有多少用户登录,当前系统的负载状态(平均1分钟,5分钟,15分钟)
jcpu指的是与该tty终端连接后所产生的进程占用的时间,不包括链接之前的后台进程时间;
pcpu指的是当前进程所占用的时间。
相关命令
id #查看用户uid gid 附加组
useradd #创建用户
usermod #修改用户
userdel #删除用户
finger
whoami #查看当前登录系统的用户
who #查看当前登录系统的用户,详细信息(用户通过哪个IP地址,什么时间,什么终端)
w