centos update grub(updategrub找不到命令)
centos7解决update-grub无效
为解决CentOS7中update-grub无效的问题,首先我们需要了解背景。当尝试升级内核时,设置默认启动内核时可能遇到报错。在这里,我们引入了GRUB(GRand Unified Bootloader)的概念。GRUB是一个来自GNU项目的多操作系统启动程序,允许用户同时拥有多个操作系统,并在启动时选择运行的操作系统。它具备选择操作系统分区上的不同内核以及向内核传递启动参数的功能。
在尝试各种方法后,感觉似乎陷入了困境,有些沮丧。然而,关键在于正确地理解和执行正确的命令。在CentOS7环境中,update-grub命令等同于执行grub2-mkconfig-o/boot/grub2/grub.cfg。这个命令的作用在于更新GRUB配置文件,确保系统能够正确识别和加载内核。
对于使用grub2-mkconfig命令时,有时可能遇到问题,比如与grub2-tools-minimal工具的兼容性问题,这可能会导致更新过程出现问题。关键在于确保所使用工具的正确性以及执行命令的顺序。正确的执行流程是:首先,确保grub2-tools-minimal工具的版本与系统相匹配,然后执行grub2-mkconfig命令,以生成正确的grub.cfg文件。
解决步骤如下:
1.确认grub2-tools-minimal的版本与系统需求相符。
2.执行grub2-mkconfig命令,确保正确路径指向配置文件。
3.检查grub.cfg文件内容,确保内核路径、版本信息无误。
4.重启系统,验证内核切换功能是否恢复正常。
通过以上步骤,可以有效解决CentOS7中update-grub无效的问题,实现内核的正常切换和启动。
CentOs7如何修复MBR和GRUB
一、修复MBR:
MBR(Master Boot Record主引导记录):
硬盘的0柱面、0磁头、1扇区称为主引导扇区。其中446Byte是bootloader,64Byte为Partition table,剩下的2Byte为magic number。
备份MBR:
#dd if=/dev/sda of=/root/mbr.bak count=1 bs=512
破坏bootloader:
#dd if=/dev/zero of=/dev/sda count=1 bs=200
这里边block size只要小于等于446即可。
修复方式:
1、借助其他系统挂载磁盘修复。
修复方式同光盘修复类似,也是使用grub2-install命令。
2、借助安装光盘修复。
1).装入光盘,在光盘引导界面选择troubleshooting:
2).选择进入救援模式:
3).按回车键继续:
4).进入磁盘挂载选择模式:
磁盘将会被挂载至/mnt/sysimage/下
continue以rw方式挂载分区。
read only以ro方式挂载分区。
skip跳过,将来自己手工挂载磁盘。
5.选择continue,稍等片刻,提示已经挂载完成。
6.此时进入救援模式的命令行:
7.使用grub2-install命令重建bootloader:
#grub2-install root-directory=/mnt/sysimage/dev/sda
显示无错误,使用sync写入硬盘,reboot重启系统。
8.重启后无错误,grub正常运行:
至此,MBR修复完成。
二、修复grub
grub配置文件丢失:
开机后会直接进入grub界面,显示为grub>:
修复步骤如下:
grub>insmod xfs
grub>set root=(hd0,1)
grub>linux16/vmlinuz-xxxxx root=/dev/mapper/centos-root
grub>initrd16/initramfs-.xxxxx.img
修复完成后即可进入系统,重建配置文件。
注意:CentOS7因为使用的是grub2,配置文件同grub有不少变化,一定要切记备份grub.cfg以便恢复。
开机出现grub怎么办
如果开机出现GRUB提示符,通常意味着计算机的启动引导过程中出现了问题,无法直接加载操作系统。这时,你需要手动干预来修复启动项或者引导系统。
详细
段落一:GRUB的作用和出现问题的原因
GRUB是一个多操作系统启动程序,它允许用户从多个操作系统中选择一个来启动。当计算机开机时,BIOS会加载并运行MBR中的引导加载程序,通常是GRUB。如果GRUB的配置文件出现问题,或者GRUB无法找到任何可启动的操作系统,就会出现GRUB提示符。
段落二:解决GRUB提示符出现的基本步骤
1.首先,不要惊慌。GRUB提示符虽然看起来复杂,但实际上是提供了一个强大的工具来修复启动问题。
2.尝试回忆最近对系统做了什么更改,比如更新内核、安装新软件或者修改分区表等,这些可能是导致GRUB出现问题的原因。
3.如果你熟悉GRUB命令,可以尝试手动输入命令来启动系统。比如,使用“ls”命令列出所有可用的分区和文件系统,然后使用“set root=”和“linux/boot/vmlinuz-...”等命令来设置根分区和加载内核。最后,使用“boot”命令来启动系统。
段落三:对于不熟悉GRUB命令的用户
如果你不熟悉GRUB命令,或者上述方法无法解决问题,那么你可能需要更进一步的帮助。以下是一些建议:
1.使用可启动的Linux系统盘或者USB驱动器来启动计算机,然后进入救援模式或者使用chroot命令来访问你的系统。
2.一旦你能够访问系统,你可以尝试重新生成GRUB的配置文件。在Debian或Ubuntu系统上,你可以使用“update-grub”命令;在Red Hat或CentOS系统上,你可以使用“grub2-mkconfig-o/boot/grub2/grub.cfg”命令。
3.如果重新生成配置文件仍然无法解决问题,你可能需要检查磁盘的分区表或者文件系统的完整性。使用如“fdisk”、“lsblk”或“fsck”等工具可以帮助你完成这些任务。
段落四:预防措施和总结
为了避免未来再次出现GRUB提示符的问题,你可以采取以下预防措施:
1.在对系统进行重大更改之前,始终备份重要的数据和配置文件。
2.谨慎使用磁盘分区工具,确保你了解每个操作的含义和潜在风险。
3.定期更新你的系统和软件,以确保你拥有最新的安全补丁和bug修复。
总之,当开机出现GRUB提示符时,不要惊慌。通过仔细分析问题、回忆最近的系统更改并尝试上述解决方案,你很有可能能够成功修复启动问题并重新访问你的系统。