centos7解决update-grub无效

背景

升级内核

yum install -y epel-release elrepo-release
yum --enablerepo=elrepo-kernel -y install kernel-ml

设置默认启动内核报错

idx=$(awk -F "'" '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg | grep -iv Rescue | head -n 1 | cut -d' ' -f1)
grub2-set-default $idx
​
cannot open file `/etc/grub2.cfg' for reading (No such file or directory)

概念

GNU GRUB(GRand Unified Bootloader简称“GRUB”)是一个来自GNU项目的多操作系统启动程序。GRUB是多启动规范的实现,它允许用户可以在计算机内同时拥有多个操作系统,并在计算机启动时选择希望运行的操作系统。GRUB可用于选择操作系统分区上的不同内核,也可用于向这些内核传递启动参数。

尝试

网上各种方法都尝试了,55555 都想放弃了 T_T

update-grub

在centos7下的update-grub命令等同效果的是:grub2-mkconfig -o /boot/grub2/grub.cfg 这个命令。

grub2-mkconfig

grub2-tools-minimal

内核切换成功

解决步骤

https://mp.weixin.qq.com/s?__biz=MzA4OTQ0MjA1Ng==&mid=2651269292&idx=1&sn=f060be47686ce1fd32ce6f3f3188f737&chksm=8be95acbbc9ed3ddfbc1a611f5cd0f18a1e2317bce157f24684ad2ab13c61d1fa71ed530e2e7&token=2133504094&lang=zh_CN#rdicon-default.png?t=N5K3https://mp.weixin.qq.com/s?__biz=MzA4OTQ0MjA1Ng==&mid=2651269292&idx=1&sn=f060be47686ce1fd32ce6f3f3188f737&chksm=8be95acbbc9ed3ddfbc1a611f5cd0f18a1e2317bce157f24684ad2ab13c61d1fa71ed530e2e7&token=2133504094&lang=zh_CN#rd

### 解决 `sudo update-grub` 命令未找到的方法 在某些 Linux 发行版中,如 CentOS 或较旧版本的 Debian 和 Ubuntu,可能会遇到 `update-grub` 命令不存在的情况。这是因为不同发行版之间的 GRUB 配置工具名称有所不同。 对于 CentOS 7 及其他基于 Red Hat 的系统,应使用 `grub2-mkconfig` 来替代 `update-grub`[^1]: ```bash sudo grub2-mkconfig -o /boot/grub2/grub.cfg ``` 而对于一些更老版本的 Debian 系统(例如 Debian 9),可能需要创建一个名为 `update-grub` 的脚本文件来兼容此命令[^3]。具体做法是在 `/usr/sbin/` 目录下新建或编辑 `update-grub` 文件并赋予可执行权限: ```bash echo '#!/bin/sh' | sudo tee /usr/sbin/update-grab echo 'exec grub-mkconfig -o /boot/grub/grub.cfg "$@"' | sudo tee -a /usr/sbin/update-grab sudo chmod +x /usr/sbin/update-grab ``` 需要注意的是,在现代的 Debian 和 Ubuntu 版本中通常已经预装了 `update-grub` 脚本,并且位于 `/usr/sbin/` 下面[^2]。如果仍然缺失,则可能是由于软件包损坏或其他原因造成的;此时可以通过重新安装对应的 GRUB解决问题[^5]: ```bash sudo apt-get install --reinstall grub-common ``` 此外,当面对 `command not found` 类型错误时,还可以尝试通过查找命令位置确认是否存在以及确切路径是什么: ```bash whereis update-grub which update-grub ``` 这些命令可以帮助定位到实际存在的二进制文件的位置,从而进一步排查问题所在。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wu858773457

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值