1.用户基本概述
什么是用户?
用户指的是能够正常登录linux或windows系统
那linux与windows系统用户有什么区别?
本质上都是登录系统,只不过linux支持多个用户同时登陆
难道windows就不算多用户操作系统吗?
其实不算,在windows系统中可以创建多个用户,但不允许同一时刻多个用户登录系统,但linux'系统则允许同一时刻多个用户登陆,登陆后相互之间操作并不受影响
2linux下的用户有什么用?或者说我们为什么要创建用户?
1.系统上的每一个进程(运行的程序)都需要一个特定的用户运行
2.通常在公司是使用普通用户管理服务器,因为root权限过大,容易造成故障。
3如何查看系统中所存在的用户
1查看当前登录的用户信息
[root@bgx ~]# id
uid=0(root) gid=0(root) groups=0(root)
[root@bgx ~]# id oldboy
uid=100(oldboy)gid=1000(oldboy)groups=1000(oldboy)
2每一个进程都会由一个用户身份运行
[root@bgx ~]# ps aux|less #
root 33782 0.0 0.0 0 0? R 02:46 0.00[kworker/u256:0]`
root 35637 0.0 0.0 0 0? R 05:11 0:03[kworker/0:2]
4那我们的用户存在哪里呢?
linux系统会将用户的信息存放在/etc/passwd,记录了用户的信息,但没有密码信息,密码被存放在/etc/shadow中。也就是说这两个文件非常的重要,不要轻易删除与修改
1./etc/passwd配置文件解释如下,或者man 5passwd
[root@bgx ~]#head -1 /etc/passwd
root:x:0:0:root:/root:/bin/bash 以:作为分割符,总共七列
第一列 toot用户名称
第二列 x 密码占位符
第三列 0用户UID
第四列 0组GID
第五列 root注释信息
第六列 /root用户家目录
第七列 /bin/bash登录shell
2/etcshadow配置文件教室如下,或者man 5 shadow
[root@bgx ~]#head -1 /etc/shadow
bgx:!!:16312:0:99999:7:2:66275: 以:作为分隔符,总共九列
第一列bgx 用户名称
第二列:!! 密码为一长串字符,!!则表示无密码
第三列:16312 最近一次变更密码,从1970年到现在,过了多少天
第四列:0 密码最少使用天数,0无限制
第五列:99999 密码最长使用天数,默认99999不过期
第六列:7 密码到期前,系统会在密码到期前7天提醒变更密码
第七列:2 密码到期后,密码过期后2天强制提示用户变更密码
第八列:66275 账户失效时间,从1970年起,账户在这个日期前可使用,到期后失效
用户相关命令
-u 指定要创建用户的UID,不允许冲突、
-g 指定要创建用户默认组
-G 指定要创建用户附加组,逗号隔开可添加多个附加组
-d 指定创建用户家目录
-s 指定创建用户的bash shell
-c 指定创建用户注释信息
-m 得创建的用户创建家目录
-r 创建系统账户,默认无家目录
1创建bgx用户,UID5001,基本组students,附加组sa,注释信息:2019 new student,登陆shell:/bin/bash
[root@bgx ~] #groupadd sa
[root@bgx ~] #droupadd students
[root@bgx ~] #useradd -u 5001 -g students -G sa -c "2019 new student“ -s /bin/bash bgx
2创建mysql系统用户,-m不建立用户家目录, -s 指定nologin使其用户无法登陆xt
[root@bgx ~]# useradd mysql -m -s >/sbin/nologin
[root@bgx]# useradd -r dba -s /sbin/nologin
2如何使用usermod命令修改用户信息
-u 指定要修改用户的UID
-G 指定要修改用户附加组,使用逗号隔开多个附加组,覆盖原有的附加组
-d 指定要修改用户的家目录
-s 指定要修改用户的bash shell
-l 指定要修改用户的登录名
-a 指定要修改用户注释信息
-L 指定要锁定的用户
-U 指定要解锁的用户
网友评论