Linux用户管理是Linux系统运维中的重要部分,涉及到用户账户与用户组的创建、修改、删除以及权限分配等一系列操作。以下是一些关键点摘要:
用户类型:
- 超级用户 (root): 拥有系统最高权限,可以执行所有操作。
- 普通用户:受限权限,只能访问其主目录和系统允许的资源。
- 系统用户:通常用于运行后台服务或守护进程,不允许直接登录系统。
用户管理命令:
useradd
:用于创建新用户,并在/etc/passwd
文件中添加用户条目,同时创建用户的家目录和初始化相关文件权限。usermod
:修改已存在的用户属性,比如用户ID(UID)、组ID(GID)、家目录、登录Shell等。userdel
:删除用户账号,可选参数-r
可以连同用户的家目录一起删除。passwd
:用于更改用户密码,存储在/etc/shadow
文件中。
用户组管理命令:
groupadd
:创建新的用户组。groupdel
:删除用户组。groupmod
:修改用户组属性。gpasswd
:管理组成员,可以向组中添加或删除用户,也可以设置组密码(对于加密的组)。
用户和组信息文件:
/etc/passwd
:存储了用户的基本信息,包括用户名、密码哈希(实际密码不在这个文件中存放,而在/etc/shadow
中)、用户ID、组ID以及其他一些信息。/etc/group
:包含了系统中的所有组及其成员列表。
权限机制:
- Linux采用基于用户和组的权限模型,通过文件的属主(owner)、属组(group)和其他用户(others)来进行细粒度的权限控制。
切换用户:
su
或sudo
命令可以用来切换用户身份,其中su -
可以模拟完整的登录环境切换到目标用户。newgrp
命令可以让当前用户暂时改变其初始组。
模板目录:
- 在创建新用户时,Linux会使用
/etc/skel
目录下的文件作为新用户家目录的模板,复制这些文件至新用户的家目录中。
- 在创建新用户时,Linux会使用
通过以上这些工具和机制,Linux管理员能够有效地管理和维护系统中的用户和用户组,确保系统安全和资源合理分配。