2020-3-12 linux 基础 5 用户管理

1.什么是用户

是指 能够正常登录linux或windows系统。

linux系统支持同时多个用户登录。

Windows也是多用户系统,单不允许同时多用户登录。

2.为什么要创建用户

系统上的每一个进程,都需要一个特定的用户运行

通常在公司都是使用普通用户 root权限过大 容易造成故障

3.我们的用户存在哪?

linux系统将用户存在/etc/passwd

用户密码存在/etc/shadow

这两个文件非常重要 不要轻易删改

1./etc/passwd 配置文件解释如图

QQ图片20200312103021.png

2./etc/shadow

QQ图片20200312105054.jpg

4.UID 的系统约定

centOS7 之前是500以后是普通用户

QQ图片20200312105405.png

5.添加用户 useradd

useradd xxx用户名

选项表

选项 作用
-u 指定创建用户的UID
-g (group) 指定创建用户的默认组
-G 指定创建用户的附加组 id查询 ,后为附加组
-c 指定创建用户的注释信息 “ 注释信息 ”
-s 指定创建用户的默认shell解释器 /bin/bash /sbin/nologin不允许登录系统
-d 指定创建用户的家目录
-M 创建用户时不创建家目录
-r 创建系统用户 默认没有家目录

注: 创建完用户 要grep "xxx" /etc/passwd 检查

练习:

1.创建一个用户 UID为 5001 基本组位students 附加组为 sa 注释为2020 new student 解释器为/bin/bash

[root@wangjc ~]# groupadd students
[root@wangjc ~]# groupadd sa
[root@wangjc ~]# useradd bgx -u 5001 -g students -c "2020 new student" -s /bin/bash -G sa
[root@wangjc ~]# id bgx
uid=5001(bgx) gid=1000(students) groups=1000(students),1001(sa)

2.1.-r创建一个系统用户mysql,系统用户默认就没有家目录,-s 在指定不运行登陆系统
[root@oldboy ~]# useradd mysql -r -s /sbin/nologin

[root@wangjc ~]# useradd mysql -r -s /sbin/nologin 
[root@wangjc ~]# id mysql
uid=998(mysql) gid=996(mysql) groups=996(mysql)

3.-M不给用户创建家目录,并指定登陆的bash是/sbin/nologin

[root@oldboy ~]# useradd mysql2 -M -s /sbin/nologin

[root@wangjc ~]# useradd mysql2 -m -s /sbin/nologin 
[root@wangjc ~]# id mysql2
uid=5002(mysql2) gid=5002(mysql2) groups=5002(mysql2)

6.修改用户属性 usermod

usermod xxx

选项 -l 修改用户名 不常用

[root@wangjc ~]# usermod mysql -u 5003 -d /home/mysql -s /bin/bash -g students -c "2020 new student"
[root@wangjc ~]# grep "mysql" /etc/passwd
mysql:x:5003:1000:2020 new student:/home/mysql:/bin/bash
mysql2:x:5002:5002::/home/mysql2:/sbin/nologin
[root@wangjc ~]# id mysql
uid=5003(mysql) gid=1000(students) groups=1000(students)

7.删除用户 userdel

选项 ==-r== 删除用户同时删除其家目录 及邮件目录

测试环境:随便删除

生产环境:尽量不要-r操作 其家目录中可能有一些比较重要的文件

[root@wangjc ~]# userdel mysql2 -r
[root@wangjc ~]# id mysql2
id: mysql2: no such user

8.查询当前登录用户 who whoami w

who

[root@wangjc ~]# who
root     pts/0        2020-03-12 12:04 (10.0.0.1)

whoami

[root@wangjc ~]# whoami
root

w 查询登录系统用户的详细信息

[root@wangjc ~]# w
 12:13:09 up 59 min,  1 user,  load average: 0.00, 0.01, 0.05
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    10.0.0.1         12:04    5.00s  0.02s  0.01s w

9.如何为新用户设定密码 和修改密码 passwrd

passwd xxxx用户

普通用户只允许变更自己的密码,无法修改别人的密码,并且密码长度必须8位字符

管理员用户可以修改任何用户的密码,无论密码长度

非交互式修改

echo "xxx" | passwd --stdin xxxxx用户

[root@wangjc ~]# echo "123456" | passwd --stdin mysql
Changing password for user mysql.
passwd: all authentication tokens updated successfully.

10.系统内置变量生成随机字符串

echo $RANDOM |md5sum |cut -c 1-8

[root@wangjc ~]# echo $RANDOM |md5sum 
749fd1bee2cffccc5143442f9f2e827e  
[root@wangjc ~]# echo $RANDOM |md5sum |cut -c 1-8
13e61e0e

11.mkpasswd生成随机字符串

默认没有

yum provides mkpasswd 查询软件包

安装软件后使用

选项表

选项 作用
-l 设定字符串长度
-d 设定生成几位数字
-c 小写 设定生成几位小写字母
-c大写 设定生成几位大写字母
-s 设定生成几位特殊符号

注:-l 设定位数 需等于其他参数设定的和

例:

[root@wangjc ~]# mkpasswd -l 8 -d 2 -c 3 -C 1 -s 2
hQs_49'n
[root@wangjc ~]# mkpasswd -l 8 -d 2 -c 3 -C 1 -s 2
y5}Vgy7|

PS: 推荐密码保存套件工具,支持windows、MacOS、Iphone以及浏览器插件Lastpass官方网站

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。