Linux用户与组管理:作业与命令详解

需积分: 0 0 下载量 190 浏览量 更新于2024-08-05 收藏 339KB PDF 举报
"这篇内容主要涉及Linux操作系统中的用户和组管理,包括用户和组的相关文件、命令以及一些实际操作的课堂作业。" 在Linux系统中,用户和组的管理是系统安全与协作的重要组成部分。以下是关于Linux用户和组的一些关键知识点: 1. **用户和组的相关文件** - `/etc/passwd`: 存储所有用户的基本信息,如用户名、用户ID(UID)、用户主目录、默认Shell等。 - `/etc/shadow`: 包含加密后的密码及密码策略信息,如密码过期时间等,安全性较高。 - `/etc/group`: 记录系统中的所有组信息,包括组名、GID和组成员列表。 - `/etc/gshadow`: 类似于`/etc/shadow`,但存储的是组的加密密码和组管理员信息。 - `/etc/default/useradd`: 在创建新用户时,默认使用的配置文件。 - `/etc/skel/`: 新用户创建时,其主目录会复制此目录下的文件。 - `/etc/login.defs`: 用户和组的默认配置,如密码策略、用户限制等。 - `/etc/shells`: 列出系统认可的合法Shell程序。 2. **用户和组的相关命令** - `groupadd`: 创建新组。 - `useradd`: 创建新用户。 - `passwd`: 修改用户密码。 - `groupmod`: 修改已有组的属性。 - `usermod`: 修改已有用户的属性,如添加或删除用户到/从组。 - `chage`: 管理用户的密码过期策略。 - `chsh`: 更改用户的登录Shell。 - `groupdel`: 删除用户组。 - `userdel`: 删除用户。 - `id`: 显示用户和组信息。 - `groups`: 显示用户所属的组。 - `su`: 用户身份切换。 - `sudo`: 提权执行命令,通常用于非root用户执行需要管理员权限的操作。 3. **课堂作业实例** - 添加新组和用户:可以使用`groupadd`和`useradd`命令分别创建组和用户,并设定密码。 - 修改用户属性:例如,将用户添加到特定组,可使用`usermod -a -G groupname username`命令。 - 禁用用户:通过修改`/etc/passwd`,将用户Shell更改为非交互式Shell,如`/sbin/nologin`,禁止用户登录。 - 更改密码策略:利用`chage`命令设置密码过期时间和提醒规则。 - 用户权限调整:例如,将用户添加到`sudoers`文件,允许使用`sudo`。 4. **sudo执行流程** - 当用户尝试使用`sudo`时,系统会检查 `/etc/sudoers` 文件,确认用户是否有执行特定命令的权限。 - 用户通常需要输入密码验证身份,然后在一段时间内无需再次验证(取决于`sudoers`配置)。 5. **权限管理示例** - 封禁用户:将`/etc/passwd`中用户的Shell更改为`/sbin/nologin`,阻止登录。 - 解封用户:恢复原Shell,如`/bin/bash`,允许登录。 - 加强密码安全:使用`chage`命令设置密码策略,如强制定期更换密码。 通过理解这些知识点,可以有效管理和维护Linux系统的用户和组,确保系统安全并便于多用户协作。