linux用户和组的管理详解
Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。
作者博客:https://www.920vip.net/article/81
文章目录
- 1 简介
- 2 分类
- 2.1 用户分类
- 2.1.1 超级用户
- 2.2.2 普通用户
- 2.2.3 登录用户
- 3 名字解释
- 4 文件介绍
- 4.1 用户账号文件 passwd
- 4.1.1 用户`test`密码操作
- 4.1.1.1 更改or创建用户`test`用户的密码
- 4.1.1.2 当前用户修改自己的密码
- 4.1.1.3 禁止`test`用户修改密码
- 4.1.1.4 清除`test`用户密码
- 4.1.1.5 查询`test`用户密码
- 4.2 用户影子文件 shadow
- 4.3 用户组账号文件 groun和gshadow
- 5 创建用户 `useradd`
- 5.1 参数
- 5.2 实战演练
- 5.2.1 创建用户并加入组
- 5.2.2 创建用户and设置ID
- 5.3 实例
- 6 修改用户信息 usermod
- 6.1 将tom用户添加到staff中
- 6.2 修改tom用户名为tom1
- 6.3 锁定账号tom1
- 6.3 解除tom1用户锁定
- 7 删除用户 userdel
- 7.1 删除用户 不删目录and文件
- 7.2 删除用户 目录文件一起删
1 简介
用户和用户组管理,顾名思义就是添加用户和用户组、更改密码和设定权限等操作。可能有很多人觉得用户管理没有意义,因为我们在使用个人计算机的时候,不管执行什么操作,都以管理员账户登录,而从来没有添加和使用过其他普通用户。这样做对个人计算机来讲问题不大,但在服务器上是行不通的。
大家想象一下,我们是一个管理团队,共同维护一组服务器,难道每个人都能够被赋予管理员权限吗?显然是不行的,因为不是所有的数据都可以对每位管理员公开,而且如果在运维团队中有某位管理员对 Linux 不熟悉,那么赋予他管理员权限的后果可能是灾难性的。
因此,越是对安全性要求高的服务器,越需要建立合理的用户权限等级制度和服务器操作规范。
2 分类
2.1 用户分类
2.1.1 超级用户
| root | 0(不重复) |
2.2.2 普通用户
| CentOS6- | 1~499 |
| CentOS7+ | 1~999 |
2.2.3 登录用户
| CentOS6- | 500+ |
| CentOS7+ | 1000+ |
注意:60000+的UID通常需要用户自定义标识。
3 名字解释
名称解释:系统将用户的名称和UID进行识别。
4 文件介绍
4.1 用户账号文件 passwd
存放用户信息,每项用 : 隔开
cat /etc/passwd root:x:0:0:root:/root:/bin/bash用户名:root
x:口令、密码
第一个0:用户
第二个0:所在组
第二个root:密码
::描述
/root:用户主目录
/bin/bash:用户缺省Shell
参数介绍:
-d:删除密码,仅有系统管理者才能使用; -f:强制执行; -k:设置只有在密码过期失效后,方能更新; -l:锁住密码,不让修改。 -s:列出密码的相关信息,仅有系统管理者才能使用; -u:解开已上锁的帐号。4.1.1 用户test密码操作
4.1.1.1 更改or创建用户test用户的密码
passwd test
当用户不存在的时候后报错
4.1.1.2 当前用户修改自己的密码
passwd4.1.1.3 禁止test用户修改密码
passwd -l test4.1.1.4 清除test用户密码
passwd -d test注意:密码清除后,无需密码,即可登录。
4.1.1.5 查询test用户密码
passwd -S test4.2 用户影子文件 shadow
cat /etc/shadow4.3 用户组账号文件 groun和gshadow
jack:$!$:???:13801:0:99999:7:*:*:组名:jack
$!$:被加密的口令
13801:创建日期与今天相隔的天数
0:口令最短位数
99999:用户口令
7:到7天时提醒
*:禁用天数
*:过期天数
查看组文件
cat /etc/group cat /etc/gshadow5 创建用户 useradd
创建好的用户保存在/etc/passwd文件中
5.1 参数
-c<备注>:加上备注文字。备注文字会保存在passwd的备注栏位中; -d<登入目录>:指定用户登入时的启始目录; -D:变更预设值; -e<有效期限>:指定帐号的有效期限; -f<缓冲天数>:指定在密码过期后多少天即关闭该帐号; -g<群组>:指定用户所属的群组; -G<群组>:指定用户所属的附加群组; -m:自动建立用户的登入目录; -M:不要自动建立用户的登入目录; -n:取消建立以用户名称为名的群组; -r:建立系统帐号; -s<shell>:指定用户登入后所使用的shell; -u<uid>:指定用户5.2 实战演练
5.2.1 创建用户并加入组
在这里插入代码片5.2.2 创建用户and设置ID
useradd charles -u 520注:设定ID值时尽量大于500,避免冲突,因为linux安装后会建立一些特殊用户,一般 0~499 之间的值留给bin、mail这样的系统账号。
5.3 实例
创建一个用户 tom,并设置uid为556,主目录为/usr/tom,属于users组:
useradd -u 544 -d /usr/tom -g users -m tom-m:如果主目录不存在则自动创建
6 修改用户信息 usermod
-c<备注>:修改用户帐号的备注文字; -d<登入目录>:修改用户登入时的目录; -e<有效期限>:修改帐号的有效期限; -f<缓冲天数>:修改在密码过期后多少天即关闭该帐号; -g<群组>:修改用户所属的群组; -G<群组>;修改用户所属的附加群组; -l<帐号名称>:修改用户帐号名称; -L:锁定用户密码,使密码无效; -s<shell>:修改用户登入后所使用的shell; -u<uid>:修改用户ID; -U:解除密码锁定。6.1 将tom用户添加到staff中
usermod -G staff tom6.2 修改tom用户名为tom1
usermod -l tom1 tom6.3 锁定账号tom1
usermod -L tom16.3 解除tom1用户锁定
usermod -U tom17 删除用户 userdel
-f:强制删除用户,即使用户当前已登录; -r:删除用户的同时,删除与用户相关的所有文件。7.1 删除用户 不删目录and文件
userdel linuxde7.2 删除用户 目录文件一起删
记得提前备份
userdel -r linuxde如果在 /etc/passwd 这里面删除也行,但是要注意不要失误(不建议)。
参考文章:
https://www.cnblogs.com/ruanni/p/13922064.html
https://blog.csdn.net/thq0201/article/details/7195152
https://www.huaweicloud.com/articles/116bf3e57ee2a75bd74b121f146b5337.html
https://www.runoob.com/linux/linux-user-manage.html
http://c.biancheng.net/linux_tutorial/60/
总结
以上是生活随笔为你收集整理的linux用户和组的管理详解的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: idea 创建 Maven+Hibern
- 下一篇: linux系统换源