zoukankan      html  css  js  c++  java
  • 系统引导修复,grub2下的各种骚作

    新买的xps装了一个rhel7.5,各种恶心。。。

    第一次:升级内核之后居然引导不了! 进入bios setup,把bios 引导的文件选择为 grub64.eif,成功进入系统

    第二次:升级grub2后,再次引导不了! 同上一步结果失败,进入 grub模式。

    grub> ls #查看有哪些分区
    grub> ls (hd0,gpt1)    #查看该分区下有哪些文件,实际上是要找到vmlinuz开头和 initramfs开头的文件目录,一般在/boot下的分区下
    grub> set root=(hd0,gpt1) # 设置根目录位置,(hd0,gpt1)是我根据上一步找到的文件所在分区(如果是U盘启动:如果U盘有镜像选U盘)
    grub> ls /            #查看设置是否正确,可略
    grub> linuxefi /vmlinuz-xxx root=/dev/rhel/root      #加载内核文件,并制定根目录位置, 早期版本的grub此指令头为linux 或linux16
    grub> initrdefi /nitramfs-xxx.img           #加载镜像文件,早期版本的grub此指令头为linux 或linux16,指令可能打错建议补全
    grub> boot # 至此成功引导

    进入系统后:
    shell# ll /etc/|grep grub      # 可能有多个grub.cfg的文件软连接记得逐个查看我在 /boot/grub2 和/boot/efi/EFI/centos 下面各一个
    shell# grub2-mkconfig -o /boot/...    #生成grub配置文件,这个目录位置得看上一步软连接对应的目录位置,我的在/boot/efi下面
    shell# shutdown -r now          # 重启如果不能引导到,重复grub加载的步骤,grub.cfg生成目录选择另外一个

    第三次:grub.cfg 把启动菜单设置成 0 秒跳过了(作死),做了个最小化的引导U盘:

    UltralISO, 如果你U盘空间足够的话选择“启动”→“写入硬盘镜像”的方法就好了(网上说明很多)

    如果空间不够的话,手动逐个提取文件夹 /EFI /images /isolinux ,其他根据空间提取,
    反正Packages和repodata不提取就好了

    grub进入拯救模式的代码如下(能直接选取启动就忽略这步吧):
    grub> ls
    grub> set root=(hd1,msdos_1)
    grub> linuxefi /images/pxeboot/vmlinuz inst.stage2=hd:/dev/sdb1 rescue quiet
    grub> initrdefi /images/pxeboot/initrd.img
    grub> boot

    第四次: linuxefi 引导内核后提示:

    invalid signature detected   #内核的签名不可用

    出这个问题也没办法呢,谁叫你的内核是DIY呢

    解决方法:

    进入bios,

    找到 secure boot control, 设置为disable

    启动成功!(或许应该学一下怎么搞个有效的签名?)

    总结: 拜此所赐,我把grub2的引导操作都弄得闭着眼睛也能操作了,各种手动引导改参数哈哈哈哈

  • 相关阅读:
    C#文件拖放至窗口的ListView控件获取文件类型
    android内存释放处理
    赵雅智_运用Bitmap和Canvas实现图片显示,缩小,旋转,水印
    POJ 3070 Fibonacci 矩阵高速求法
    poj 3261 后缀数组 找反复出现k次的子串(子串能够重叠)
    Codeforces Round #313 C. Gerald's Hexagon(放三角形)
    HTTP服务端JSON服务端
    iPad popView封装
    OpenCv 人脸检測的学习
    《深入理解java虚拟机》:类的初始化
  • 原文地址:https://www.cnblogs.com/caya-yuan/p/10534640.html
Copyright © 2011-2022 走看看