Linux用户和组
Linux是多用户系统,每个用户都有一个用户名和用户id(uid)。每个用户可以属于一个或者多个组,每个组也有组名和组id(gid)。
1. 一些文件内容介绍
1.1 /etc/passwd
此文件存储用户名和用户的相关信息,每行记录有7个段,like: root: x:0:0:root:/root:/bin/bash
- 用户名
- 密码->此项存储在/etc/shadow中
- 用户id
- 组id
- 注释
- 主目录:用户登录后的初始位置
- 登录shell:用户登陆成功,会交由程序控制,程序一般是shell的一种,默认是/bin/sh

- 超级用户root:0,系统用户1~999,普通用户 1000以上(32位uid了现在)
可以看到系统里面还有一些奇怪的内置用户,如nobody, ftp这些,是用来完成一些特定任务的。如nobody任何人都可以登录系统,但是没有任何特权,权限最小。其默认的登录shell是/usr/sbin/nologin,不允许登录到shell上。如果禁止某个用户登录,可以使用passwd -l uname, -u解锁。登陆时就会显示This account is currently not available. Connection to xxx closed.
touch /etc/nologin 禁止所有用户登录
1.2 /etc/shadow
存放用户登录密码的,只有root拥有可读权限。有9个字段,分别是用户名:加密密码:最后一次修改时间:最小修改时间间隔:密码有效期:密码需要变更前的警告天数:密码过期后的宽限时间:账号失效时间:保留字段,不详细展开了。

1.3 /etc/group 和 /etc/gshadow
group文件是用户组配置文件,包含用户组的相关信息。每条记录分为4个字段,组名:密码:GID:该用户组中的用户列表。密码和/etc/passwd文件一样,这里的 “x” 仅仅是密码标识,真正加密后的组密码默认保存在 /etc/gshadow 文件中。密码很少用了,用来给组设置管理员代替root管理用户进出的。

2 文件权限与归属
众所周知,linux里面一切都是文件,所以文件非常重要。文件包含目录文件,权限分为三类:所有者、所有组、其他人,具体权限有rwx,分别是421,如下图所示。


2.2 suid、sgid
2.3 文件的隐藏属性
lsattr filename显示隐藏属性, chattr [-+=] [ASacdistu] filename设置文件隐藏属性
3 一些用户管理命令
- useradd/groupadd username
- passwd username
- usermod/groupmod username
- userdel/groupdel -r username
- id username
- su username
- whoami who am i
这篇博客介绍了Linux系统中的用户和组管理,包括/etc/passwd、/etc/shadow、/etc/group和/etc/gshadow文件的作用。讨论了用户ID、组ID以及特殊用户如nobody的用途。此外,还涵盖了文件权限的rwx概念,suid、sgid的特性,以及文件的隐藏属性。最后列举了一些用户管理命令,如useradd、passwd等。
2990

被折叠的 条评论
为什么被折叠?



