Linux系统基础:/etc/passwd文件详解与用户管理

需积分: 33 17 下载量 46 浏览量 更新于2024-08-10 收藏 619KB PDF 举报
"Linux系统基础课程教程,关注用户管理和/etc/passwd文件详解" 在Linux操作系统中,用户管理和系统配置是至关重要的部分。其中, `/etc/passwd` 文件是记录用户账号信息的关键文件,它包含了系统中所有用户的登录信息,用于验证用户身份并提供基本的账户属性。这个文件通常具有权限`root.root 644`,意味着只有root用户可以读写,而其他用户只能读取。 `/etc/passwd` 文件的每一行代表一个用户,由7个字段组成,这些字段用冒号分隔: 1. 用户名:用户登录时使用的名称。 2. 口令:通常是一个x,实际的加密密码存储在`/etc/shadow`文件中。如果为空,则表示用户无法登录。 3. UID(用户标识符):每个用户都有一个唯一的数字ID,用于系统内部识别。 4. GID(组标识符):用户的主组ID,对应`/etc/group`文件中的组名。 5. 用户注释:通常包含用户的全名或其他描述信息。 6. 用户主目录:用户登录后的初始工作目录。 7. Shell:用户默认的命令解释器,如`/bin/bash`。 创建新用户通常使用`useradd`命令,例如`useradd z3`会创建一个名为z3的新用户。为了使用户能登录,还需要设置口令,这可以通过`passwd z3`来完成。在Redhat Linux中,`adduser`是`useradd`的软链接,两者功能相同。`useradd`命令有多个选项,例如: - `-u` 用于设置用户的UID。 - `-g` 设置用户的主GID。 - `-d` 指定用户的主目录。 - `-G` 让用户成为其他附加组的成员。 - `-s` 指定用户的登录Shell。 - `-c` 添加用户注释。 - `-p` 直接设置口令(在某些版本的Linux中可用)。 添加新用户的过程涉及修改`/etc/passwd`和`/etc/shadow`文件,同时在`/home`目录下创建用户的主目录,并将`/etc/skel`目录下的内容复制到新用户的主目录中。这样,新用户就有了一个基本的工作环境。 在Linux的发展历史中,Unix起到了核心作用。Unix最初由AT&T开发,后来发展出了多个分支,如BSD(Berkeley Software Distribution),它在TCP/IP实现上做出了重大贡献,并衍生出FreeBSD、OpenBSD、NetBSD等多个分支。另一个分支是MINIX,由Andrew Tanenbaum教授设计,作为一个教学目的的简化类UNIX系统,对后来的Linux发展产生了影响。 Linux作为Unix的一个开源变种,继承了Unix的许多特性,包括用户管理和权限控制。通过理解和熟练掌握`/etc/passwd`文件的使用,能够更好地管理和维护Linux系统中的用户账户,从而确保系统的安全性和稳定性。