Linux 系统启动流程及其介绍
发布时间:2022-10-14 16:25:27 所属栏目:Linux 来源:
导读: 熟悉Linux系统启动流程可以更好的排除Linux系统在启动的过程中所遇到的错误,下面介绍Linux系统在启动过程。
开机,BIOS自检:检测外置设备,目的是为了把外围设备的信息提供给操作系统使用
寻找
开机,BIOS自检:检测外置设备,目的是为了把外围设备的信息提供给操作系统使用
寻找
|
熟悉Linux系统启动流程可以更好的排除Linux系统在启动的过程中所遇到的错误,下面介绍Linux系统在启动过程。 开机,BIOS自检:检测外置设备,目的是为了把外围设备的信息提供给操作系统使用 寻找启动磁盘(boot disk),然后寻找寻找硬盘的第一个扇区(MBR master boot record 主引导记录),如果主启动扇区没有存储操作系统,则寻找磁盘中标记被启动分区的第一个扇区中的操作系统,若在找不到则会/boot 目录下进行寻找,存储操作系统信息的空间只有446字节。 找到操作系统内核之后载入内核,内核需要做的是检测硬件,驱动硬件,之后将以只读的方式挂载根文件系统(以只读的方式挂载最主要的目的就是为了安全),挂载的根文件系统至少包括以只读形式挂载根文件系统:/etc /bin /sbin /lib /dev,,然后挂载在根目录下的init服务,启动init服务系统寻找的过程:/sbin/init /etc/init /bin/init若上述目录中没有找到则会给出一个/bin/sh 让我们自己手动输入init程序的位置Linux 系统启动过程,若没有找到导致系统启动不起来则会出现类似kernel......kill init这样的字样,这说明init程序没有找到。对应init的介绍下面将会详细介绍。 然后分别启动初始化系统环境:/etc/rc.d/rc.sysinit /etc/rc.d/rc /etc/rc.d/rc.local rc.sysinit 是系统初始化脚本,位于"/etc/rc.d/rc.sysinit",这是在inittab(下面将会说到)配置文件中预先设置好的。 rc.sysinit主要完成的工作如下: 启动udev和selinux子系统:udev负责管理 /dev中的设备文件,selinux可增强linux系统的安全性,selinux的配置文件位于 /etc/selinux/config 虽然可以增加安全性,但是不建议开启,开启selinux后会占用20%的系统资源。 设置内核参数:sysctl -p 可以重新加载内核,从/etc/sysctl.conf中加载内核参数 设置系统时间:将硬件时间设置为linux系统时间 加载键盘对应表:保证输入正确的字符 启动swap:swapon -a -e根据/etc/fstab的设置启动所有交换空间 设置主机名:/etc/sysconfig/network的HOSTNAME 检查挂载文件系统:以读写的形式挂载所有文件系统,以便写入数据 初始化硬件设备:试着驱动剩余的硬件设备 加载模块:根据/etc/modprobe.conf中的信息加载模块 ISA PnP硬件设备:ISA(总线) PnP(即插即用) USB设备 启动软件磁盘阵列与LVM 卸载/initrd:节省系统资源 初始化串行端口设备: 清除过期的锁定文件:锁定文件的作用是为了保证只有一个实例运行。 重设磁盘参数:根据/etc/sysconfig/harddisk来设置磁盘参数 rc:同样由init进程进行调用,文件位于"/etc/rc.d/rc" rc脚本通过指定不同的级别参数分别加载及终止不同的系统服务,进入相应的系统运行级别。 rc.local 建立用户接口 建立虚拟控制台:/bin/login 建立图形接口:启动图形界面 管理init服务 管理init服务:建立系统使用环境 确保系统运行 监控周边设备 处理ctrl+alt+del PID恒为1 只能被重启不能被停止,重启命令如下 重启init服务 init q kill -HUP 1 telinit q 配置init服务 /etc/inittab ID:RUNLEVELS:ACTIONS:PROCESS ID:init服务参数识别名称,由1-4个字符组成 RUNLEVELS:在哪个运行级别调用 ACTIONS:init服务执行程序的方法 PROCESS:执行文件的位置,必须为绝对路径 ID字段内容 id:定义linux默认运行级别 si:系统初始化要执行的程序 l0-l6:进入到不同的运行级别时,要执行的动作 ca:拦截到ctrl+alt+del事件系统要执行的工作 pf:电源失效的时候要执行的工作 pr:电源恢复的时候要执行的工作 N:如何启动第N个控制台 x:启动图 管理启动加载器 启动加载器的作用是用加载操作系统内核,并传递一些参数给内核 GRUB LILO grub的特性 修改配置文件后,不需要重新安装 可加密 e 编辑选择的项目 a 在启动操作系统前,修改启动参数 c 进入到grub的命令行模式 p 输入grub密码 enter 确认 esc 返回/不保存退出 o 新增一行设置 d 删除选择的设置 配置文件 /boot/grub/grub.conf 安装grub grub-install /dev/hda /dev/sda 第二种方法: grub--root (hd0,0)-- setup(hd0) (编辑:海洋资讯信息网_我爱站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐


