简介
本全面教程详细探讨了Linux用户和组管理,使读者具备在其Linux系统中有效管理用户账户和组成员身份的知识和技能。通过理解用户、组及其相关权限的概念,读者将能够增强其Linux环境的安全性、可访问性和整体管理水平。
本全面教程详细探讨了Linux用户和组管理,使读者具备在其Linux系统中有效管理用户账户和组成员身份的知识和技能。通过理解用户、组及其相关权限的概念,读者将能够增强其Linux环境的安全性、可访问性和整体管理水平。
Linux 用户管理是系统管理和安全的关键方面。在 Linux 中,每个进程和文件都与一个用户和组相关联,这决定了访问权限。
Linux 区分不同的用户类型:
用户类型 | 描述 | 特点 |
---|---|---|
根用户 | 系统管理员 | 拥有完全系统访问权限,UID 为 0 |
系统用户 | 特定服务账户 | 权限有限,无登录 shell |
普通用户 | 普通用户 | 对系统的访问权限有限 |
## 创建新用户
sudo adduser username
## 查看当前用户
whoami
## 列出所有用户
cat /etc/passwd
## 切换用户
su - username
## 查看用户详细信息
id username
用户账户信息存储在关键系统文件中:
/etc/passwd
:用户账户详细信息/etc/shadow
:加密的密码信息/etc/group
:组成员详细信息Linux 中的组提供了一种组织和控制用户对文件及系统资源访问的机制。每个用户可以属于多个组,从而实现灵活的权限管理。
组类型 | 描述 | 特点 |
---|---|---|
主组 | 用户的默认组 | 与用户账户一同自动创建 |
次组 | 额外的组成员身份 | 允许扩展访问权限 |
## 创建新组
sudo groupadd developers
## 将用户添加到组
sudo usermod -aG developers username
## 列出用户所属的组
groups username
## 查看组信息
cat /etc/group
## 权限格式:rwxrwxrwx
## r:读取,w:写入,x:执行
## 前三组:所有者权限
## 中间三组:组权限
## 最后三组:其他用户权限
## 示例
-rw-r--r-- file.txt
## 创建共享目录
mkdir /project
sudo chgrp developers /project
sudo chmod 770 /project
## 验证权限
ls -ld /project
Linux 中的用户管理涉及创建、修改和管理用户账户,并对系统访问和权限进行精确控制。
命令 | 功能 | 使用方法 |
---|---|---|
adduser | 创建新用户 | sudo adduser username |
usermod | 修改用户账户 | sudo usermod -选项 username |
userdel | 删除用户账户 | sudo userdel username |
passwd | 更改用户密码 | sudo passwd username |
## 使用特定配置创建新用户
sudo adduser --gecos "开发者,办公室,电话,家庭" developer
sudo usermod -aG sudo developer
## 设置账户过期时间
sudo chage -E 2024-12-31 developer
## 锁定/解锁用户账户
sudo passwd -l username ## 锁定
sudo passwd -u username ## 解锁
## 显示用户账户详细信息
sudo chage -l username
## 配置密码有效期
sudo chage -M 90 -m 7 -W 14 username
## 限制用户登录
sudo usermod -s /sbin/nologin username
## 监控用户活动
last
lastb
## 查看用户详细信息
cat /etc/passwd
cat /etc/shadow
在本Linux教程中,我们涵盖了用户和组管理的重要方面,包括理解用户账户、列出和查看用户与组、管理用户的组成员身份,以及探索实际用例和故障排除技术。通过掌握这些概念,读者将能够有效地控制对系统资源的访问、实施安全策略,并确保用户在Linux环境中拥有执行其任务所需的权限。