centos 7引导过程及排障

  • 系统引导过程
  • 1.模拟centos7忘记root密码恢复方法
  • 2.模拟MBR扇区修复
  • 3.模拟grub修复


系统引导过程

1、bios加电自检------当机器上电之后,根据主板上bios的设置进行硬件的自检,如cpu、内存等并初始化,它找到可引导的硬盘之后把控制器给MBR

2、MBR引导-------硬盘启动时根据MBR的设置,将系统控制权传递给包含系统操作引导文件的分区;或者直接根据MBR 记录中的引导信息调用启动菜单。

3、grub2菜单-------系统控制权传递给GRUB 以后,将会显示提供用于选择,并根据-选项加载linux内核文件。

4、加载内核------系统引导器程序会从本地硬盘中加载内核以及内存文件系统 initramfs,其中包含启动时所有必要的硬件内核模块、初始化脚本等。

5、初始化进程------在initramfs中找到驱动程序的所有硬件,然后作为PID 1从initramfs执行/lib/systemd/systemd
systemd启动initrd.target中所有单元,包括挂载/etc/fstab
然后从initramfs根文件系统切换到磁盘根目录并且systemd启动默认target(字符界面还是图形化界面)也就 /etc/systemd/system/default.target 最后等待用户登陆。

1.模拟centos7忘记root密码恢复方法

启动系统,并在GRUB2启动屏显时,按下e键进入编辑模式

在linux16/linux/linuxefi所在参数行尾添加以下内容:init=/bin/sh
按Ctrl+x启动到shell

挂载文件系统为可写模式:mount –o remount,rw /
运行passwd,并按提示修改root密码

运行命令exec /sbin/init来正常启动,或者用命令exec /sbin/reboot重启

2.模拟MBR扇区修复

故障原因:病毒、木马等造成的破坏,不正确的分区操作,磁盘读写操作
应对思路:应提前做好备份文件 以安装光盘引导进入紧急急救模式,重备份文件中恢复
1、首先模拟故障
新加一块硬盘,格式化挂载
dd if=/dev/sda of=/opt/sdb/mbr.bak bs=512 count=1
dd if=/dev/zero of=/dev/sda bs=512 count=1
2、重启电脑,无法进入系统
3、设置boot选项从光盘进入
4、选择修复模式进入
5、mkdir /bak
6、重新挂载sdb,mount /dev/sdb /bak
7、dd if=/bak/mbr.bak of=/dev/sda
8、reboot重启
9、boot修改第一启动项为硬盘,顺利进入系统

3.模拟grub修复

1.从光盘启动,进入救援模式,进入修复shell

2.执行chroot /mnt/sysimage #初始系统已经挂载到了/mnt/sysimage下面

3.想要进入初始系统下面,
需要执行chroot /mnt/sysimage命令

4.grub2-install /dev/sda
grub2-mkconfig -o /boot/grub2/grub.cfg

5.exit退出
reboot重启

命令

解释

systemctl reload

在不停止服务的情况下,重新加载

systemctl stat

开启服务

systemctl stop

关闭服务

systemctl enable

设置服务开机自启

systemctl disable

设置服务开机不自启

systemctl is-enabled

查看服务是否开机启动

systemctl analyze

查看系统启动耗时

systemctl status

查看服务的状态

runlevel

查看当前运行级别