Linux下的用户管理(一)——用户及组的建立和删除

1.用户存在的意义
系统用户即系统的使用者,用户管理是对文件进行管理,用户的存在是为了回收权力

2.组存在的意义
组的存在是为了共享权力,组和用户是两个不同的机制

3.组的分类
组可以分为初始组和附加组;

初始组 用户出生时就加入的组
附加组 用户后期加入的组

4.系统中查看用户信息的命令

命令 作用
(1)whoami 查看当前用户
(2)id 用户名 查看用户的id信息
(3)id -u 用户名 查看用户的uid(用户出生时就有的id)
(4)id -g 用户名 查看用户的gid (用户的初始组)
(5)id -G 用户名 查看用户的所有组的id(包括用户的初始组和附加组)
(6)id -n 用户名 查看用户组的名字(和-G一起使用可以查看用户的所有组的名字)

以上命令的作用由下图可以看出:
在这里插入图片描述
5.用户切换
(1)su - student 切换用户,还在超级用户下,但窗口的环境变了
‘-’会改变用户所在环境和身份,不加‘-’环境不变身份变了,su表示切换身份;
低级用户切换向高级用户需要输入密码,高级向低级不需要输密码,平级切换也需要输密码,密码没有回显
***** 操作完后 exit退出 ,多层次打开容易出错,是不规范的操作 *****

如图:
在这里插入图片描述
(2)gnome-session-quit --force 注销当前用户,重新登陆

6.用户在系统中的存储方式
(1)/etc/passwd 用户信息文件(查看这些文件可以用vim)
用户名:x是占位符,密码:uid(用户的id):gid(用户初始组的id): 用户说明文字: 家目录: 用户默认使用软件 (默认shell必须是系统里已有的软件)

如图是vim查看passwd文件和group文件
在这里插入图片描述
root列表示用户名;x列是占位符,这个位置上的是用户密码;0列是root的uid;第二个0列是root用户的gid;下来是用户说明;/root列是该用户的家目录;/bin/bash列表示的是该用户默认使用的软件
在这里插入图片描述
(2)/ect/group 用户组信息文件
组的名字:组密码:组id:组成员
如图所示:
在这里插入图片描述
(3)/etc/shadows 认证信息文件
(4)/etc/skel/.* 默认开启shell文件的配置,用户的骨文件
(5)/home/username 用户的家目录( 用户和系统交流时对话的软件,含有nologin不提供交互界面,sbin下含有nologin,其他的shell是提供交互界面的)
*********注:序号不能超过2^32,uid最小是1000,最大是60000 *********

7.查看命令当前的状态
watch 查看命令当前的状态,进入之后ctrl+c退出
如:watch date 查看时间 watch -n 1 每秒更新一次
注:同时监控多个命令时可以用’ ‘将watch -n 1后的命令括起来,’ '里的命令可以用;隔开
例如:用户信息监控命令 watch -n 1 ‘tail -n 3 /etc/passwd /etc/group;ls -l /home/’

如图第一行的命令是每秒更新一次并查看passwd和group文件的后三行;第二行则是查看后七行
在这里插入图片描述
8.用户管理命令
(1)新建用户

命令 作用
useradd 用户名 建立新的用户
useradd -u xxx 用户名 指定用户的uid即建立id为xxx的用户(uid默认为1001,因为student用户的uid是1000)
useradd -g xxx 用户名 指定用户的gid,此时的xxx必须是已经存在的组
useradd -G xxx 用户名 指定用户的附加组,这个组也必须存在
useradd -c “www” 用户名 指定用户的说明
useradd -d /home/hhh 用户名 指定用户的家目录
useradd -s /bin/lala 用户名 指定用户的默认shell

以下是依次建立并监控上述要求的用户的过程,-g和 -G后的id必须是已经存在的
在这里插入图片描述

下图是一次性将所有要求都实现在一个用户上的操作
在这里插入图片描述
(2)删除用户

userdel 用户名 删除用户但没有删除用户的配置文件
userdel -r 用户名 删除用户并且删除用户的配置文件

如图是将刚刚建立的所有用户的过程可以监控到passwd和group文件下已经没有了刚刚建立的所有用户的信息
在这里插入图片描述
注:一般删除用户时避免出现问题都加“ -r ”删除用户并且删除其配置文件
(3)新建组

groupadd 组名 建立组
groupadd -g xxx 组名 指定组的id

如图:
在这里插入图片描述
(4)组的删除
groupdel 组名 ##删除组
注:当组内的用户没有删除时组删除不了

如图 当组内的用户还存在时删除组会报错
在这里插入图片描述
而删除了组下的用户后删除组就不会报错
在这里插入图片描述
(5)如果建立好用户之后用su - xxx切换到了新用户,又打开一个新的terminal,在其中要删除刚刚建好的用户这时会报错:此用户被进程xxxx占用,这是kill -9 进程ID 可以杀死进程

下面是建立了一个新的用户并切换到该用户下,打开一个新的terminal,并删除刚刚建立的用户,此时系统提示这个用户正在被进程占用
在这里插入图片描述
kill -9 进程号 杀死该进程,之后再删除用户,这时会自动切换回之前的目录
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_44224894/article/details/85609801
今日推荐