Fedora 34 和 Windows 7 双系统引导修复
背景
一块硬盘,硬盘上有一个Windows 7,安装Fedora 34后,开机没有系统引导列表,直接进入Fedora。两个启动U盘,一个老毛桃WINPE,另一个Fedora 34 live。经过许久的尝试,不明所以的修复了,很大的运气成分。
进入Fedora修复(硬盘)
#1, 在磁盘/dev/sda上安装引导
sudo grub2-install /dev/sda
#2, 搜索并生成引导列表,保存在/boot/grub2/grub.cfg
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
第1条顺利执行,或许不执行也可以。第2条提示发现Windows,则引导已经修复。
事情总是不顺利的,可能执行第一条就提示缺少文件,或许更新一下软件就好了sudo dnf update
,再试试。还不行,一一装上与grub2
有关的包就可以了,sudo dnf search grub2
查看与grub2
相关的包。貌似装了ostree
就可以了。有可能还不行,说不定fedora把windows的引导破坏得很彻底,可能需要使用WINPE(老毛桃)修复一下,修复成功直接进windows。
进入Fedora Live修复(U盘)
操作与前面一样,不过在操作前要硬盘上Fedora的根目录作为命令执行的根目录,操作如下。
- 确定磁盘分区与挂载目录
sudo fdisk -l
查看磁盘分区,通过分区大小等方式确定挂载目录,也可以现挂载,通过内容判断。假设如下:
分区 | 挂载 |
---|---|
/dev/sda5 | /boot |
/dev/sda6 | / |
/dev/sda7 | /home |
- 挂载和绑定
#root
su
#挂载磁盘
mount /dev/sda6 /mnt
mount /dev/sda5 /mnt/boot
#绑定目录,硬盘fedora与live共享
mount --bind /dev /mnt/dev
mount --bind /proc /mnt/proc
mount --bind /sys /mnt/sys
#切换根目录,指定目录为根目录
chroot /mnt
以上执行完成,/mnt为当前/。这时进入Fedora(硬盘)修复一样操作,成不成看运气。