deepin系统引导_关于Windows和deepin双系统无法进入到引导界面

时间: 2025-05-19 admin 互联网

问题是这样的,一开始装了一个固态硬盘,然后就把Linux装在机械硬盘里了。

但是之后问题是没有出现引导界面,直接就是进入了Windows10.

十分悲催啊。

然后网上各种搜,改BIOS设置的启动。

修改之后是:

launch CSM            Enable

launch PXE OpROM    Enable

但是开机之后发现引导是有了,(但是发现进不了Windows了,引导里就只有Linux)

也就是Linux的引导好了,但是Windows的引导又崩了。

于是又是一波百度,最终找到了一个比较靠普的解决方案,方案如下:

首先打开shell 进入bash 输入命令 sudo  update - grub 然后回车。

你会发现有这么一句话Found Windows 8 (loader) on /dev/sda6,但是此时候还是不要高兴的太早。

重启计算机。如果出现了Windows的引导,那么你就成功了,但是如果没有出来,不急,请看下面。

如果有童鞋跟作者一样不走运的话,会遇到即使update-grub成功识别了你分区中的windows loader而且重启计算机后在grub列表里也确实有windows选项,但点进去后仍然不

会引导windows系统,而只是黑屏一个光标不停地闪。这就很尴尬了。。。

但同志们不要怕!作者已经帮你们趟出一条路了!那就是:修改grub.cfg !(围观群众毫不吃惊脸…)

作者猜想,可能经过PE的修复,grub已经可以识别出windows的引导器了,然而由于是人工修复的windows引导,所有默认生成的grub.cfg中的代码并不能使grub准确找到windows loader,所以当我们选中grub列表中的windows选项后才仍然不能引导系统。

我们只需进入已经可以引导的ubuntu系统,唤出终端,输入

sudo su回车,获取ROOT权限。

之后输入gedit /boot/grub/grub.cfg回车,以打开grub.cfg。作者用的是gedit编辑器,如果读者平时都是用vim那么就输入vim /boot/grub/grub.cfg,使用什么编辑器都可以,然后我们找到cfg文件中关于windows的部分,作者的看起来像这样:

menuentry 'Windows 8 (loader) (on /dev/sda6)' --class windows --class os $menuentry_id_option 'osprober-chain-9C28EFB228EF899A' {

insmod part-msdos

insmod ntfs

set root='hd0,msdos6'

if [ x$feature_platform_search_hint = xy ]; then

search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos6 --hint-efi=hd0,msdos6 --hint-baremetal=ahci0,msdos6 9C28EFB228EF899A

else

search --no-floppy --fs-uuid --set=root 9C28EFB228EF899A

fi

parttool ${root} hidden-

drivemap -s (hd0) ${root}

chainloader +1

}

这一大坨是个什么玩意?反正这么写引导不了,那就改!

好在grub是个十分强大的工具,最后作者决定使用search命令修改以上片段。

如下:

menuentry 'Windows 8 (loader) (on /dev/sda6)' --class windows --class os $menuentry_id_option 'osprober-chain-9C28EFB228EF899A' {

insmod ntfs

insmod ntldr

set root='hd0,msdos6'

search --set -f /bootmgr

ntldr /bootmgr

}

建议在此之前将文件备份一下,以防万一。