CentOS7系统引导顺序以及排障

引导顺序

  UEFi或BIOS初始化,运行POST开机自检

  选择启动设备

  引导装载程序, centos7是grub2

  加载装载程序的配置文件:/etc/grub.d/  /etc/default/grub  /boot/grub2/grub.cfg

  加载initramfs驱动模块

  加载内核选项

  内核初始化,centos7使用systemd代替init

  执行initrd.target所有单元,包括挂载/etc/fstab 

  从initramfs根文件系统切换到磁盘根目录

  systemd执行默认target配置,配置文件/etc/systemd/system/default.target

  systemd执行sysinit.target初始化系统及basic.target准备操作系统

  systemd启动multi-user.target下的本机与服务器服务

  systemd执行multi-user.target下的/etc/rc.d/rc.local

  Systemd执行multi-user.target下的getty.target及登录服务

  systemd执行graphical需要的服务

设置内核参数

  设置内核参数,只影响当次启动

  启动时,在linux16行后添加

    systemd.unit=desired.target

    systemd.unit=emergency.target

    systemd.unit=rescue.target

  rescue.target 比emergency 支持更多的功能,例如日志等

  systemctl default 进入默认target

破解CentOS7的root口令

  方法一:

    启动时任意键暂停启动

    按e键进入编辑模式

    将光标移动linux16开始的行,添加内核参数rd.break

    按ctrl-x启动

    mount –o remount,rw /sysroot            重新挂载根目录为读写

    chroot /sysroot                  切根

    passwd root                    修改root密码

    touch /.autorelabel                  创建文件,为避免selinux报错

    exit

    reboot

  方法二:

    启动时任意键暂停启动

    按e键进入编辑模式

    将光标移动linux16开始的行,改为rw init=/sysroot/bin/sh          挂载为读写模式

    按ctrl-x启动

    chroot /sysroot                       切根

    passwd root                         修改root密码

    touch /.autorelabel                                                                    创建文件,避免selinux报错

    exit

    reboot

故障排除

  /boot路径下所有文件丢失

    进入救援模式

    chroot /mnt/sysimage

    mkdir /mnt/cdrom

    mount /dev/sr0  /mnt/cdrom    

    rpm -ivh /mnt/cdrom/Packages/kernel-3.10.0-693.e17.x86_64.rpm --force              --force选项是必须的

    grub2-install /dev/sda                            为boot所在磁盘修复grub文件

    cd /boot/grub2/

    grub2-mkconfig   -o grub.cfg             如果不在/boot/grub2路径下需要指明路径grub2-mkconfig -o /boot/grub2/grub.cfg

    

启动默认内核选择

  /etc/default/grub文件中GRUB_DEFAULT=    (0为第一项,1为第二,以此类推),修改此项即可

原文地址:https://www.cnblogs.com/tony3154/p/10095848.html