系统启动过程以及故障处理

本文发布时间: 2019-Mar-22
Linux 的系统启动过程:系统启动顺序:加载BIOS的硬件信息└ 读取MBR的Boot Loader信息 stage1,stage2,grub.conf └ Boot Loader加载内核 vminux,initrd └ 内核执行init程序并取得inittab中运行信息 ├ init执行/etc/rc.d/rc.sysinit └ /etc/fstab加载分区等 ├ init执行/etc/rc.d/rc ├ 启动对应运行级别的守护进程 └ 最后执行S99local,即/etc/rc.d/rc.local └ init启动了mingetty,打开了终端供用户登录系统 └ 执行/bin/login程序 └ 成功登陆之后启动shell控制主机 └ shell配置脚本 ├/etc/profile--->/etc/profile.d/*.sh └ ~user/.bash_profile └ ~user/.bashrc └ /etc/bashrc1.BIOS 自检 如果此过程中硬件出了问题,系统就会停留在该阶段 2.MBR引导 MBR为512字节 分为 BOOTLOADER 446字节 分区表 64字节 master 2字节BOOTLOADER 属于第一阶段 属于引导阶段其中linux中的引导程序叫做grub3.GRUB (1.)加电 ---》cmos---》post----》grub Lilo 第二阶段处于硬盘 主要是grub的配置 进入/etc/grub.confRoot (hd0,0) 指明第一块硬盘的第一个分区Kernel 指明操作系统内核 以只读模式 quite 静默 Initrd 放置额外驱动的地方1.加载内核2.加载进程 init进程树 进入inittab.conf 查看init的配置信息进入/etc/rc.d/rc.sysinitInittab里面有一行代码说明在任何级别下按ctrl+alt+del 都可以启动 一般很危险 所以呢要注释掉说明服务器当发现交流电源使用失效时,会发出通告,告诉所有用户2个小时后将关闭表示不管那个级别 都会产生5个终端二.故障处理当启动时会遇上各种各样的故障,主要发生在第一阶段(程序)和第二阶段(配置文件)1.第一阶段故障排除假如不小心将 系统的引导程序给覆盖或者删除了 ,系统将启动不起来处理方法:重建mbr进入急救模式 boot:linux rescue先转变成根目录 chroot /mnt/sysimage重建mbr中的446字节信息 执行 grub 进到 grub> 指明引导系统 rootRoot(hd0,0) 执行setup (hd0) 回车然后quit exit 2.如果不小心将grub.conf文件删除掉了 怎么办故障处理方法:进入grub> 指明引导分区 root(hd0,0) 其中83类型属于ext 83属于swap指明 kernel /vmlinux---...... Ro rooe=/dev/sda2 quite指明Initrd /initrd +tabBoot 启动起来最后呢 手动配置grub.conf文件 运用 grub.install -root-directory=/boot/grub 或 / /dev/sda3.假如将grub整个目录删掉了 ,第二阶段所有都不能进行了 怎么办 故障处理方法:进入急救模式 root: linux rescue切换到根目录下 chroot /mnt/sysimage 执行grub-install --root-directory=/ /dev/sdaExit exit 然后将光盘去掉 使用硬盘引导然后在/boot/grub下 创建grub.conf然后执行 init 6 重启 4.如果根目录没有损坏假设发生错误的磁盘块是/dev/hda7,由root进行单人单机的维护,然后输入fsck /dev/hda7,这时屏幕会显示开始修复磁盘的信息,修复完成之后,以reboot重新启动。5.管理员密码丢失处理方法:忘记root密码:首先进入单用户维护模式找到/etc/shadow文件利用chmod改变这个文件的属性,让它变得可写打开shadow文件,将root对应的密码删掉重新启动,这样不要用密码或者密码是空格就能登入root用户了最后把shadow文件的属性改回来,因为那样安全性就差了。除了上面这些问题,其实在引导过程中牵扯到的一些程序文件 都可以导致故障发生,所以说大家再启动过程中要多注意 防止故障发生


(以上内容不代表本站观点。)
---------------------------------
本网站以及域名有仲裁协议。
本網站以及域名有仲裁協議。

2024-Mar-04 02:10pm
栏目列表