Linux系统用户与组管理详解

需积分: 10 1 下载量 5 浏览量 更新于2024-09-03 收藏 21KB DOC 举报
"本文将介绍如何在Linux系统中管理和设置用户及组权限,涵盖用户添加、权限配置以及用户信息存储的相关知识。" 在Linux系统中,用户和组的管理是操作系统安全性和权限控制的关键部分。下面将详细阐述如何操作。 1. **添加用户** Linux系统中,通常使用`useradd`命令来创建新用户。例如,要创建名为“zhangsan”的用户,可以执行`useradd zhangsan`。`useradd`命令支持多个选项来定制用户属性: - `-u`:指定用户ID(UID)。 - `-d`:指定用户的家目录位置。 - `-g`:设置用户的基本组。 - `-G`:指定用户所属的附加组。 - `-s`:设定用户使用的Shell解释器。 2. **用户信息存储** 创建用户后,用户信息会被记录在`/etc/passwd`文件中。这是一个文本文件,每行代表一个用户,字段间由冒号分隔,包含以下信息: - 用户名 - 密码占位符(实际密码存储在`/etc/shadow`中) - UID - 基本组GID - 用户描述信息 - 家目录 - 解释器程序 3. **用户密码管理** 用户的密码信息存储在`/etc/shadow`文件,以加密形式保存,且具有严格的权限控制,防止非授权访问。`/etc/shadow`文件包含: - 账户名 - 加密后的密码 - 最近密码修改日期 - 密码更改间隔 - 密码过期策略 - 提前警告天数 - 口令过期日 - 账户失效日期 4. **权限设置** 在Linux中,权限控制通过文件的权限位和用户组来实现。`chmod`命令用于改变文件或目录的权限,而`chown`和`chgrp`分别用于改变文件或目录的所有者和组。此外,`usermod`命令可以用来修改已有用户的属性,例如修改用户密码、用户组等。 5. **组管理** 组管理主要涉及创建、删除和管理用户组。`groupadd`用于创建新组,`groupdel`用于删除组,而`gpasswd`则允许添加或删除用户到组。通过将用户分配到不同的组,可以更方便地管理权限,比如共享文件夹或设定一组用户有特定的系统访问权限。 6. **用户权限模型** Linux使用Unix权限模型,包括读(r)、写(w)和执行(x)权限,分别对应4、2和1的数值。这些权限可以分别针对文件所有者、同组用户和其他用户设置。例如,`755`表示所有者有读、写、执行权限,而组内其他用户和其他用户只有读和执行权限。 7. **sudo和su命令** `sudo`允许用户以其他用户(通常是root)的权限运行命令,而`su`命令则用于切换用户身份,常用于提升权限至root用户。 理解并熟练掌握这些用户和组管理技巧,对于日常的系统维护和安全管理至关重要。通过合理的权限设置,可以确保系统的稳定性和安全性。