【2017.10.21】Windows下简单手动添加Deepin引导项
Tofloor
poster avatar
comzhong
deepin
2017-01-04 07:33
Author
本帖最后由 comzhong 于 2018-4-13 22:11 编辑

         Windows下手动添加Deepin引导,不能说是最好的方法,但是算是比较简单、实用
附件:
启动到Deepin引导菜单:win_grub2_deepin_2017.10.21.rar

Bootice_x86 x64_v1.3.4.zip
系统分区挂载管理1.4.0_x64_x86.zip
Notepad2 V5.0.26.0 绿色中文版.zip

======================
目录:
1 传统BIOS模式+MBR磁盘添加引导项
2 新型UFEI模式+GPT磁盘添加引导项
3 直接启动重要说明——直接启动deepin,不通过deepin的 /boot 分区中的grub
======================
重要补充说明
          如果文件系统不是 ext ,而是 btrfs 等等,不能启动 deepin,需要在 附件的 菜单:/boot/grub/grub.cfg 中,在:set timeout=0 下面添加如:insmod btrfs 等模块,以支持相应的文件系统。

……
set timeout=0
insmod btrfs
……
======================

     1 传统BIOS模式+MBR磁盘添加引导项
                1.1  使用附件:win_grub2_deepin 解压到C盘。

                1.2  打开bootice——BCD编辑——当前系统BCD——智能编辑模式,添加Grub4dos启动项,选择添加——新建实模式启动项(Grub/Linux),填写菜单标题(Deepin Linux)和启动文件路径(\boot\grub\grldr.mbr),保存当前系统设置,关闭bootice。

       2 新型UFEI模式+GPT磁盘添加引导项
                         2.1 下载挂载管理系统分区批处理系统分区挂载管理1.4.0_x64_x86.zip以管理员权限运行
1) 首先选择1挂载系统分区,根据提示挂载ESP分区.
2) 再选择3.  文件管理器 ,会打开一个资源管理器窗口,这个时候就可以在这个资源管理器窗口里面正常操作ESP分区文件了。
3) 操作完成后选择2.卸载系统分区,去卸载挂载的ESP分区。

                        2.2 启动到Deepin引导菜单使用附件:win_grub2_deepin 解压到到ESP分区。


                        2.3 添加UEFI启动序列,打开bootice,按下图添加启动序列,之后就可以在启动时按F12 或 ESC 选择了 , 或者在这里调整顺序为第一,或者较新的电脑可以进BIOS设置调整顺序也可以



       3 启动不成功             附件中的 grub.cfg 若不能成功启动,请用附件中 notepad2 编辑修改 /boot/grub/grub.cfg 内容,set root=(hd1,4) 如何确定请参见 5  判断启动分区号。
==============================
set prefix=(${root})/boot/Grub
set timeout=0
insmod btrfs

menuentry "Deepin Linux"{
         set root=(hd1,4)
        set prefix=($root)/boot/grub
        configfile  $prefix/grub.cfg
}
==============================


       4  直接启动重要说明——直接启动deepin,不通过deepin的 /boot 分区中的grub
                        菜文件为:/boot/grub/grub.cfg,菜单为UTF-8无BOM格式,编码不对可能出错,可以使用附件中 notepad2 编辑。

grub2 的第一磁盘好像是 grub2 所处磁盘,Linux 第一磁盘好像是 内核所处磁盘,所以双硬盘的要注意了。
==================================
set prefix=(${root})/boot/Grub
set timeout=0

menuentry "Deepin Linux"{
        set root=(hd0,4)
        linux /vmlinuz root=/dev/sda4 ro quiet splash
        initrd /initrd.img
}
=================================



5  判断启动分区号

grub2          Linux
(hd0,1)      /dev/sda1         第一硬盘的第一分区(通用于MBR与GPT分区)
(hd0,2)     /dev/sda2         第一硬盘的第二分区(通用于MBR与GPT分区)

(hd1,1)     /dev/sdb1         第二硬盘的第一分区(通用于MBR与GPT分区)
(hd1,2)     /dev/sdb2         第二硬盘的第二分区(通用于MBR与GPT分区)

5.1 grub2 命令行判断
         将附件中 /boot/grub/grub.cfg 修改 “set timeout=0” 时间改长,比如 “set timeout=10” ,删除后面的内容,启动到 grub2 菜单,按 C 进入 grub2 命令行,用 “ls” 命令查看有那些分区。

         再用 “ls (hd0,1)/” 看分区根目录文件,判断分区内容,比如deepin单分区时 “ls (hd1,3)/” 出现 deepin 分区文件,那么用下面两条命令
======================
set root=(hd1,3)
set prefix=($root)/boot/grub
configfile $prefix/grub.cfg
======================
应该就加载deepin 的 grub2 菜单了。之后进系统,修改前面 放在 Windows 下的gurb 2 菜单。

5.2 自己观察判断
比如:我是单硬盘 GPT分区表,linux 分区位于磁盘第 4 分区,则菜单中要改为:set root=(hd0,4) 和 root=/dev/sda4
比如:如果是单硬盘 MBR 分区表,主分区号依次是 1、2、3、4,不管有多少个主分区,扩展分区从 5 开始,依次是 5、6、7、8……。
           如下图,,linux 分区位于磁盘第一个扩展分区即第 5 分区,则菜单中要改为:set root=(hd0,5) 和 root=/dev/sda5
=====================================
硬盘安装和U盘安装Deepin_最简单iSO启动方法
https://bbs.deepin.org/post/135051

Reply Favorite View the author
All Replies
3 / 7
To page
comzhong
deepin
2017-03-20 21:57
#41
https://bbs.deepin.org/post/133725
我怕的是硬盘能否正常启动 用深度制作的U盘启动安装盘可以安装系统但win10下无法识别。那个老硬盘是mbr的 ...

我的方法可以同时支持 传统BIOS 和 新型UEFI 启动的,你给移动硬盘分别添加两种引导就行,不会互相影响,或者你可以看看另一篇,其实都差不多的,只是从不同的角度写的。

简单手动制作BIOS+UEFI的syslinux+grub+boomgr+grub2互转U盘(2016.11.23)
https://bbs.deepin.org/post/38714
Reply View the author
Comments
dxqwx1
2017-03-20 22:19
好的过几天试试。。。
shield
deepin
2017-03-21 02:05
#42
第4步里绿色的菜单怎样弄出来的,我重启后进不了这个
Reply View the author
comzhong
deepin
2017-03-21 03:47
#43
你是说这个?这个是传统BIOS启动下的,如果你是UEFI要用 “二、新型UFEI模式+GPT磁盘” 里面的方法。

Reply View the author
dxqwx1
deepin
2017-03-22 17:41
#44
https://bbs.deepin.org/post/133725
你是说这个?这个是传统BIOS启动下的,如果你是UEFI要用 “二、新型UFEI模式+GPT磁盘” 里面的方法。

...

楼主你那个qemu启动测试器很好使啊,一个光盘映像如果只可以启动在legacy BIOS模式是否说明这个光盘不能在UFEI模式下启动。
Reply View the author
kim0x00f
deepin
2017-03-22 18:17
#45
进不去win的怎么办
Reply View the author
dxqwx1
deepin
2017-04-11 14:40
#46
楼主可以帮忙写下 引导记录吗 现在硬盘5个分区  第一个 esp分区  第三个是D盘深度体验安装在这里  第四个是想启动的分区  第五个是win10系统分区 现在第四个分区系统已安装好  下载了你提供deepin的EFI文件把ubuntu拷贝到了esp分区修改grub.cfg为grub.efi 但是你这个是iso启动的 如何引导第四个分区 第四个分区在虚拟机中可以启动引导就合grub引导win系统一样就可以。。。说一下这个系统好像只支持mbr硬盘 他的光盘映像 efix64下无法引导
Reply View the author
comzhong
deepin
2017-04-11 19:14
#47
https://bbs.deepin.org/post/133725
楼主可以帮忙写下 引导记录吗 现在硬盘5个分区  第一个 esp分区  第三个是D盘深度体验安装在这里  第四个是 ...

第一项就是自动搜索启动deepin,后面两项只是为了方便一些人罢了,可以删掉

Reply View the author
dxqwx1
deepin
2017-04-11 19:22
#48
https://bbs.deepin.org/post/133725
第一项就是自动搜索启动deepin,后面两项只是为了方便一些人罢了,可以删掉

...

不是要搜索deepin 深度启动正常 现在是另一个系统就是硬盘上第四个分区要启动。。。。这个分区的引导程序已安装好 需要grub指定就好 这个分区在虚拟机中已能进入,现在是想试试真实硬件环境启动。。。。第四个分区是hd0 3吧。。。安装深度时分区符号很复杂没记住
Reply View the author
dxqwx1
deepin
2017-04-11 19:44
#49
本帖最后由 dxqwx1 于 2017-4-11 11:58 编辑
https://bbs.deepin.org/post/133725
MBR磁盘的话,大概应该这样

不是mbr磁盘 mbr没这么麻烦   mbr磁盘在本本下不支持启动是gpt磁盘 我是这么加的 硬盘第四个分区
menuentry "Haiku " {set root=(hd0,3)
chainloader +1
}

加在esp分区 efi目录Ubuntu下
启动不成功直接进win10 连选择深度的提示也没看到
Reply View the author
Comments
comzhong
2017-04-11 22:28
chainloader  1        这个是传统bios用的,uefi不用
dxqwx1
deepin
2017-04-11 21:40
#50
本帖最后由 dxqwx1 于 2017-4-11 13:47 编辑
https://bbs.deepin.org/post/133725
你是想直接启动,而不是启动分区的grub2菜单是吧?,你试试这个

这个代码不能用 系统不是深度系统 在mbr硬盘下用menuentry "Haiku " {set root=(hd0,3)
chainloader +1
}这个启动系统。。。。。。。直接进win10 是否因为改grub.cfg为grub.efi 导致grub启动失败
grub.cfg
set timeout=3
menuentry "Deepin Linux"{
        search -f /boot/grub/grub.cfg --set=root
        set prefix=($root)'/boot/grub'
        configfile $prefix/grub.cfg

        search -f /grub/grub.cfg --set=root
        set prefix=($root)'/grub'
        configfile $prefix/grub.cfg
}

menuentry menuentry "Haiku " {set root=(hd0,3)
chainloader +1
}
用这个如何?有个问题 bootice加引导时需要efi文件 这个如何解决?

Reply View the author
dxqwx1
deepin
2017-04-11 22:12
#51
本帖最后由 dxqwx1 于 2017-4-11 14:15 编辑

不是我的本本只支持uefi mbr不能启动  mbr硬盘只能虚拟机中启动 现在系统是安装在gpt分区中在虚拟机中安装的。。。。。。。mbr硬盘现在做成移动硬盘存储数据如果mbr硬盘 电脑启动时可以引导启动就基本不用折腾了。。。。。现在电脑启动时发现不了usb接口的硬盘
Reply View the author
comzhong
deepin
2017-04-11 22:24
#52
https://bbs.deepin.org/post/133725
不是我的本本只支持uefi mbr不能启动  mbr硬盘只能虚拟机中启动 现在系统是安装在gpt分区中在虚拟机中安装 ...

前面写错了 ,这样

  1. menuentry “Deepin (on /dev/sda4)” {
  2. set root=(hd0,4)
  3. linux /vmlinuz root=/dev/sda4
  4. initrd /initrd.img
  5. }
Copy the Code
Reply View the author
dxqwx1
deepin
2017-04-11 22:33
#53
https://bbs.deepin.org/post/133725
前面写错了 ,这样

应该是 hd0,3 吧 第四个分区不是/dev/sda4 hd0,3吗?
Reply View the author
comzhong
deepin
2017-04-11 22:46
#54
https://bbs.deepin.org/post/133725
应该是 hd0,3 吧 第四个分区不是/dev/sda4 hd0,3吗?

grub  和 grub4dos 是 hd0,0表示磁盘1分区1
grub2 变成 hd0,1表示磁盘1分区1

不要问我为什么,人家就这样定义的,你可以看看这个

GRUB2配置文件"grub.cfg"详解(GRUB2实战手册)
http://www.jinbuguo.com/linux/grub.cfg.html
Reply View the author
dxqwx1
deepin
2017-04-11 22:54
#55
本帖最后由 dxqwx1 于 2017-4-11 15:06 编辑
https://bbs.deepin.org/post/133725
grub  和 grub4dos 是 hd0,0表示磁盘1分区1
grub2 变成 hd0,1表示磁盘1分区1

就是说第四个分区就是hd0,4在grub2下。。。。。。。。。这样就明白了 在改改看看能否启动正常。。。。希望这个系统早日支持uefi 用记事本修改grub的grub.cfg不影响使用吧 修改的是这个/EFI/ubuntu/grub.cfg文件 用bootice指定这个文件 启动分区指定那个100M的启动分区还是系统所在分区? 你那帖子里启动文件是deepin目录下的那个 这个不影响使用吧 加的是ubuntu启动项 没动deepin目录
Reply View the author
comzhong
deepin
2017-04-11 23:10
#56
https://bbs.deepin.org/post/133725
就是说第四个分区就是hd0,4在grub2下。。。。。。。。。这样就明白了 在改改看看能否启动正常。。。。希望 ...

本来就支持uefi啊,不支持你怎么在ueif下启动得了,bootice指定的是/efi/deepin/shimx64.efi 这个文件,它会启动/efi/deepin/grubx64.efi 然后加载/EFI/ubuntu/grub.cfg 配置 文件
Reply View the author
dxqwx1
deepin
2017-04-11 23:43
#57
https://bbs.deepin.org/post/133725
本来就支持uefi啊,不支持你怎么在ueif下启动得了,bootice指定的是/efi/deepin/shimx64.efi 这个文件, ...

我要启动的系统 不支持uefi 所以才这么麻烦
Reply View the author
comzhong
deepin
2017-04-11 23:45
#58
https://bbs.deepin.org/post/133725
我要启动的系统 不支持uefi 所以才这么麻烦

没明白你到底想怎么样?win7 x64 及win 8 以上 ,deepin 都支持uefi ,你前面只说了win10 和deepin
Reply View the author
dxqwx1
deepin
2017-04-12 00:21
#59
https://bbs.deepin.org/post/133725
没明白你到底想怎么样?win7 x64 及win 8 以上 ,deepin 都支持uefi ,你前面只说了win10 和deepin ...

电脑上的win10和deepin都启动正常 是第三个系统安装在第四个分区 这个系统是haikuos https://www.haiku-os.org/ 他不支持uefi 我才想用grub启动它。。。。。。。。。你不妨研究下这个系统是开源的beos
Reply View the author
comzhong
deepin
2017-04-12 00:56
#60
https://bbs.deepin.org/post/133725
电脑上的win10和deepin都启动正常 是第三个系统安装在第四个分区 这个系统是haikuos https://www.haiku-o ...

那你要添加legacy BIOS 的 grub2 或者用 grub4dos ,在BIOS里打开legacy兼容才行,你可以用这个帖子前面说的grub4dos菜单来启动haikuos
Reply View the author
3 / 7
To page