无需重装GRUB引导程序,快速重建USB闪存盘指定/boot/grub文件的命令咨询
无需重装GRUB引导程序,快速重建USB闪存盘指定/boot/grub文件的命令咨询
嘿,我完全懂你的困扰——USB闪存盘装GRUB引导慢也就算了,现在MBR里的GRUB已经没问题,但/boot/grub下的i386-pc模块文件和grubenv要么丢了、要么坏了,不想折腾重装整个引导程序,就想快速把这俩部分修复好对吧?
下面是针对你的需求的快速操作步骤,前提是你已经把USB闪存盘的根分区挂载到了比如/mnt/usb(如果已经在USB的系统里直接操作,就跳过挂载相关的前提,直接用下面的命令就行):
步骤1:重建/boot/grub/i386-pc目录下的所有模块文件
用grub-install命令指定目标架构和根目录,只安装GRUB的模块文件(不会覆盖MBR里已有的引导程序):
sudo grub-install --root-directory=/mnt/usb --target=i386-pc /dev/sdX
注意:把/dev/sdX换成你的USB闪存盘的设备名(比如sdb,不是分区名sdb1),别搞错了哦!
如果已经在USB启动的系统里操作,直接简化成:
sudo grub-install --target=i386-pc /dev/sdX
步骤2:重建/boot/grub/grubenv文件
用grub-editenv命令创建一个全新的、格式正确的grubenv文件:
sudo grub-editenv /mnt/usb/boot/grub/grubenv create
同样,如果你已经在USB系统里,直接用:
sudo grub-editenv /boot/grub/grubenv create
补充说明
- 这两个命令完全不会生成或修改
grub.cfg,完全符合你不需要这个文件的要求。 - 操作前一定要确认挂载路径或者当前系统环境的正确性,避免误操作到本地硬盘。
备注:内容来源于stack exchange,提问作者Talaat Etman
相关产品推荐
相关产品推荐

