zoukankan      html  css  js  c++  java
  • 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为第二,以此类推),修改此项即可

  • 相关阅读:
    LeetCode 82,考察你的基本功,在有序链表中删除重复元素II
    golang | Go语言入门教程——结构体初始化与继承
    pandas | 使用pandas进行数据处理——DataFrame篇
    博弈论 | 详解搞定组合博弈问题的SG函数
    PCA算法 | 数据集特征数量太多怎么办?用这个算法对它降维打击!
    Python | 面试必问,线程与进程的区别,Python中如何创建多线程?
    Pytorch | 详解Pytorch科学计算包——Tensor
    通过Windows Visual Studio远程调试WSL2中的.NET Core Linux应用程序
    MSIL入门(二)通过对象看IL
    MSIL入门(一)C#代码与IL代码对比
  • 原文地址:https://www.cnblogs.com/tony3154/p/10095848.html
Copyright © 2011-2022 走看看