Linux启动详解:从BIOS到rc.sysinit

需积分: 9 7 下载量 121 浏览量 更新于2024-08-25 收藏 416KB PPT 举报
本文档主要介绍了Linux系统的启动过程及其基础应用,涵盖了广州学院和广东科学技术职业学院的教学内容。Linux的启动过程是一个关键的学习环节,对于理解操作系统内部工作原理至关重要。以下是详细的步骤和知识点: 1. **BIOS (Basic Input Output System)**: 在启动时,计算机首先会通过BIOS进行硬件检测和初始化,包括加载引导装载程序GRUB。 2. **GRUB (Grand Unified Bootloader)**: GRUB是Linux系统的引导装载程序,存储在MBR(主引导记录)或分区的boot分区中。它读取`grub.conf`配置文件,根据设置决定启动哪个内核或加载启动菜单。 3. **`grub.conf` 文件**:这个配置文件包含了启动选项,如选择不同的内核版本、加载启动脚本等。它决定了Linux的启动级别。 4. **Linux的启动级别 (Run Levels)**: Linux支持6个不同的运行级别,每个级别代表不同的系统状态: - #0: 停机模式,避免误操作设置为默认。 - #1: 单用户模式,仅允许一个用户登录,用于故障修复。 - #2: 多用户模式但不支持网络文件系统(NFS)。 - #3: 完全多用户模式,最常见的日常使用级别。 - #4: 很少使用,保留给特殊用途。 - #5: X11图形界面,用于桌面环境。 - #6: 重启,同样不建议设为默认。 5. **`/etc/inittab` 文件**:这是早期Linux系统中的核心配置文件,定义了启动时的操作顺序。在现代Linux中,它已被`systemd`所取代,但在某些旧版系统中仍有所应用。`inittab`文件中包含如下部分: - `id:3:initdefault:`: 设置默认运行级别,通常为3,表示多用户模式。 - `si::sysinit:/etc/rc.d/rc.sysinit`: 启动`rc.sysinit`脚本,负责设置系统环境和初始化操作。 6. **`/etc/rc.d/rc.sysinit` 文件**:这是一个重要的脚本,包含诸如设置主机名、网络配置、USB设备管理、时间同步、硬件配置(如LVM和RAID)、磁盘检查(fsck)、交换分区和硬盘参数调整等系统初始化任务。 学习Linux启动过程不仅涉及了解BIOS、GRUB和启动级别的概念,还要掌握早期Linux系统中的配置文件管理和初始化流程。随着技术的发展,现代Linux系统更倾向于使用`systemd`来管理启动和服务,但了解这些基础知识对于理解整个系统的工作原理仍然是至关重要的。