Linux 学习笔记(8)

八、 启动引导
1 Linux 的启动流程

  1. BIOS 自检
  2. 启动 GRUB/LILO
  3. 运行 Linux kernel 并检测硬件
  4. 挂载根文件系统
  5. 运行 Linux 系统的第一个进程 init( 其 PID 永远为 1 ,是所有其它进程的父进程 )
  6. init 读取系统引导配置文件 /etc/inittab 中的信息进行初始化 7) 执行系统初始化脚本- /etc/rc.d/rc.sysinit ,执行系统初始化 ( 包括很多内容 )
  7. 根据指定的运行级别 (runlevel) 来运行服务器脚本程序,再执行脚本 /etc/rc.d/rc.local
  8. 运行一些其他的特别服务,一般为 /sbin/mingetty 和 /etc/X11/prefdm
  9. Linux 控制台 (console) 提示用户输入用户名、密码进行登陆。
    总结: BIOS 初始化  检查外围设备  检查启动设备  读区 MBR

    2 、在 Linux 中常用的启动引导工具: grub lilo
    在 Linux 和 WINDOWS 两系统并存时就需要安装 GRUB ( Grand Unified Bootloader ), GRUB 被广泛地
    用于替代 lilo,GRUB 支持在启动时使用命令行模式 , 支持 md5 加密保护 还可以从 ext2/ext3 、 ReiseFS 、 JFS 、
    FAT 、 minix 及 FFS 文件系统上启动其配置文件为 /boot/grub/grub.conf, 更改 grub.conf 即可立时生效如果
    硬盘上的 MBR 被更动过,可以用 /sbin/grub-install /dev/hda 来重安装 grub 现在我们打开
    /boot/grub/grub.conf 查看一下

vim /boot/grub/grub.conf

内容如下:

grub.conf generated by anaconda

Note that you do not have to rerun grub after making changes to this file

NOTICE: You have a /boot partition. This means that

all kernel and initrd paths are relative to /boot/, eg.

root (hd0,0)

kernel /vmlinuz-version ro root=/dev/sda2 # initrd /initrd-version.img

#boot=/dev/sda
default=0
#default=0 表示默认启动第一个系统 , 如果系统有两个系统是用什么做为分隔符的呢? title 就是系统的分
隔符 , 第一个 title 后面就是第一个系统 , 用 0 表示。
timeout=5
#timout=5 ,就是默认在启动选择界面停留的时间,单位是秒。等待 5 秒自动进入默认操作系统
splashimage=(hd0,0)/grub/splash.xpm.gz
#splashimage 是 grub 启动背景画面,如果是自己写 grub.conf 文件,这个可以不用写。
hiddenmenu
title Red Hat Enterprise Linux Server (2.6.18-53.el5)
#title 后面就是系统在启动时候显示的名字
root (hd0,0)
#root 启动文件所在位置
kernel /vmlinuz-2.6.18-53.el5 ro root=LABEL=/ rhgb quiet
#kernel 内核所在位置和名字
initrd /initrd-2.6.18-53.el5.img
#initrd 内核镜象的名字
grub.conf 的范例:
timeout=10 # 等待 10 秒自动进入默认操作系统
splashimage=(hd0,0)/grub/splash.xpm.gz #grub 启动背景画面
default=0 # 默认进入第一个标题
title Red Hat Linux (2.4.20-18) #Red Hat Linux 标题
root (hd0,0) # 根文件系统位置
kernel /vmlinuz-2.4.20-18 ro root=LABEL=/ # 核心位置与核心加载参数
initrd /initrd-2.4.20-18.img # 启动 initrd ram 盘
title windows # 另一个操作系统的标题
rootnoverify (hd0,1) # 操作系统存放在 hd0,1 上,不要在 grub 里 mount
chainloader +1 # 从 hd0,1 的第一个扇面启动

相关推荐
im_AMBER几秒前
数据结构 18 【复习】广义表 | 各种内部排序 | 二叉排序树的平均查找长度 ASL
数据结构·笔记·学习·排序算法
世人万千丶4 分钟前
鸿蒙跨端框架Flutter学习day 2、常用UI组件-层叠布局 Stack & Positioned
学习·flutter·ui·实时互动·harmonyos·鸿蒙
好奇龙猫6 分钟前
【人工智能学习-AI入试相关题目练习-第四次】
人工智能·学习
马克学长9 分钟前
SSM学生出国境学习交流管理87153(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·学习·ssm 框架·学生出国境管理·在线申请
海盗123413 分钟前
VMware 中 CentOS 7 无法使用 yum 安装 wget 的完整解决方案
linux·运维·centos
chilavert31821 分钟前
DashGO框架开发应用的笔记-1
笔记
航Hang*43 分钟前
Photoshop 图形与图像处理技术——第9章:实践训练1——绘制禁烟标志和奥运五环
图像处理·笔记·学习·ui·photoshop
saoys1 小时前
Opencv 学习笔记:图像金字塔实现上采样(pyrUp)与降采样(pyrDown)
笔记·opencv·学习
gtr20201 小时前
Ubuntu24.04 基于 EtherCAT 的 SVD60N 主站
linux·ethercat
weixin_462446231 小时前
ubuntu真机安装tljh jupyterhub支持跨域iframe
linux·运维·ubuntu