Linux考试复习资料
### Linux与UNIX的区别 Linux 和 UNIX 作为两个重要的操作系统,它们之间既有相似之处也有区别: - **起源**:UNIX 操作系统诞生于 1969 年,由 AT&T 的贝尔实验室开发;而 Linux 是在 1991 年由芬兰人 Linus Torvalds 开发的开源操作系统内核。 - **兼容性**:Linux 在源代码级别上兼容绝大多数 UNIX 标准,这意味着许多为 UNIX 编写的程序可以在未经修改的情况下在 Linux 上运行。 - **许可证**:UNIX 大多采用专有软件许可模式,而 Linux 是基于 GNU 通用公共许可证 (GPL) 发布的自由软件,这使得任何人都可以查看、修改和分发 Linux 的源代码。 - **支持**:Linux 支持更多的硬件平台,如 x86、ARM、MIPS 等,是目前运行平台最多的操作系统之一。UNIX 则通常针对特定硬件平台进行了优化。 ### VMware Workstation 网络的四种工作模式 VMware Workstation 提供了多种网络配置模式,以适应不同的网络环境需求: 1. **桥接模式 (Bridged)**:在此模式下,虚拟机与物理主机处于同一网络层面上,相当于通过网线直接连接到了物理网络交换机。虚拟机拥有一个独立的 IP 地址,并且可以与其他网络设备(如其他物理机或虚拟机)通信。 2. **NAT 模式**:虚拟机通过 NAT(网络地址转换)服务与外部网络通信,此时虚拟机与物理主机不处于同一网络层面上,虚拟机获得的 IP 地址来自于 NAT 服务器(通常是 VMware 软件提供的虚拟 NAT 服务)。这种方式适合不需要直接 IP 访问的场景。 3. **仅主机模式 (Host-only)**:虚拟机只能与物理主机通信,不能连接到外部网络。这种模式常用于安全测试或隔离环境。 4. **自定义模式 (Custom)**:允许用户手动指定虚拟机的网络配置,例如使用特定的虚拟网卡或物理网卡,以便满足特殊的网络需求。 ### Linux 的 /etc/inittab 文件 `/etc/inittab` 文件是早期 Linux 系统启动和服务管理的核心配置文件之一,它定义了系统的初始化行为和运行级别切换的行为。虽然现代 Linux 发行版大多使用 systemd 替代了传统的 init 进程,但了解 `/etc/inittab` 仍然有助于理解 Linux 的启动过程。 - **控制运行级别**:不同的运行级别对应着不同的系统状态,比如运行级别 3 通常代表图形界面不可用的基本多用户模式,而运行级别 5 则代表带有图形界面的完全多用户模式。 - **定义启动行为**:如自动登录某个用户、启动特定的服务等。 ### Linux 用户管理 #### 用户和组 ID - **用户 ID (UID)**:每个 Linux 用户都有一个唯一的 UID 来标识,通常普通用户的 UID 从 1000 开始(部分系统从 500 或 1000 开始)。 - **组 ID (GID)**:与 UID 类似,每个用户组也有一个唯一的 GID 来标识。用户可以属于多个组,但有一个主要组,主要组的 GID 就是在 `/etc/passwd` 文件中与用户关联的那个。 #### 超级用户 - **超级用户**:通常指具有 root 权限的用户,可以执行系统上的所有命令,并访问所有文件和目录。root 用户的 UID 为 0。 - **特权管理**:在需要进行系统级别的操作时,通常会切换到 root 用户身份,可以通过 `su -` 命令完成这一操作。 ### etc/passwd 和 etc/shadow 文件 - **/etc/passwd**:存储了关于用户的非敏感信息,包括用户名、用户 ID、组 ID、用户主目录以及默认 Shell。 - **/etc/shadow**:存储了用户的密码信息以及其他敏感信息,如密码过期日期等,以增强安全性。 ### 用户管理命令 - **useradd**:用于添加新用户。 - `-c`:描述用户的注释信息。 - `-d`:设置用户的主目录。 - `-g`:指定用户所属的主要组。 - `-s`:指定用户的默认 Shell。 - **passwd**:用于更改用户的密码。 - **userdel**:用于删除用户。 ### 文件和目录 #### 普通文件 - **文本文件**:以 ASCII 码形式存储。 - **数据文件**:由数字和文本数据组成。 - **二进制文件**:以二进制形式存储。 #### 目录文件 - **目录**:用于组织文件结构。 - **符号链接**:指向其他文件或目录的引用。 #### 设备文件 - **块设备**:如硬盘驱动器。 - **字符设备**:如串行端口。 ### 文件权限 - **读权限 (r)**:允许读取文件内容。 - **写权限 (w)**:允许修改文件。 - **执行权限 (x)**:允许执行文件(对于目录意味着可以进入目录)。 ### 常用命令 - **ls**:列出目录内容。 - `-a`:显示所有文件,包括隐藏文件。 - `-l`:长格式显示。 - **cd**:切换目录。 - **cp**:复制文件。 - **mv**:移动文件或重命名文件。 - **rm**:删除文件。 - `-i`:交互模式,删除前提示。 - `-f`:强制删除。 - `-r`:递归删除目录及其内容。 - **chmod**:改变文件权限。 - **umask**:设置文件创建时的默认权限掩码。 - **ln**:创建链接。 - `-s`:创建符号链接。 - **grep**:搜索文本文件中的模式。 - `-E`:扩展正则表达式。 - `-F`:固定字符串匹配。 - `-b`:显示字节偏移量。 - `-c`:只显示匹配行的数量。 - `-i`:忽略大小写。 - `-r`:递归搜索目录。 - `-n`:显示匹配行的行号。 以上是 Linux 操作系统考试复习资料中的关键知识点,这些内容不仅对准备考试的学生非常重要,对于日常使用 Linux 的用户也非常实用。掌握这些基础知识可以帮助用户更好地管理 Linux 系统,并提高工作效率。