系统启动有点小问题
Tofloor
poster avatar
DeepinOS
deepin
2019-06-03 23:36
Author
按之前的理解,系统启动和平台无关,我感觉是linux在传统bios模式和uefi模式启动都没有问题,但是实际操作时候发现有点小问题-》不能启动。

问题:我有一个U盘,32G,Sandisk (听说五年保修,折腾死还可以再换个新的,),然后,把deepin安装到U盘了。安装成功了。
U盘分区为
/dev/sdb1     boot     挂载为/ 分区
/dev/sdb2     efi        挂载为/boot/efi下

U盘的格式为MBR磁盘,
测试过,在我的飞行堡垒上可以用bios的启动方式启动, 按道理,安装到U盘是成功了,不过诡异的是 如果用UEFI模式启动,能成功引导,不能成功启动。
也就是说,启动的配置文件时对的,
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#
search --set=root --file /deepin.19.2
set prefix=($root)'/boot/grub'

### BEGIN /etc/grub.d/10_linux ###
function gfxmode {
        set gfxpayload="${1}"
}
set linux_gfx_mode=
export linux_gfx_mode
menuentry 'Deepin 15.9.2 GNU/Linux' --class deepin  {
        load_video
        insmod gzio
        if [ x$grub_platform = xxen ];
            then insmod xzio;
            insmod lzopio;
        fi
        insmod part_msdos
        insmod ext2
        search --set=root --file /deepin.19.2     
        linux        /boot/vmlinuz-4.15.0-30deepin-generic  ro  nouveau.modeset=0  DEEPIN_GFXMODE=$DEEPIN_GFXMODE
        initrd        /boot/initrd.img-4.15.0-30deepin-generic
}

###标红的地方用来设定root分区,为了兼容显卡,设置nouveau.modeset=0。
###中间的多余的信息我删了,
主要问题就是能引导,但不能跨平台,UEFI启动BIOS模式安装的deepin就出错误。
而且我还发现 initramfs 下,给出的信息就是启动的时候没有真正的挂载根分区,然后 ls /dev之后发现根本没有我这个应该出现的磁盘 sdb

我个人感觉是deepin系统启动这个地方逻辑有问题。
总结就是,传统模式安装的系统最后只能在传统bios模式下才能启动,uefi模式安装的系统最后只能在UEFI模式启动。即使正确引导,也不能正确启动。

有谁可以出个注意吗??

Reply Favorite View the author
All Replies
avatar
Amadeus
deepin
2019-06-04 00:27
#1
本来就是uefi安装只能uefi启动,legacy安装只能legacy方式启动啊。。。
Reply View the author
avatar
funtoo
deepin
2019-06-04 00:46
#2
可以通用的,方法是在GPT磁盘的最前面分出一个1MB左右的BIOS Boot分区,用于安装protective MBR。
然后在安装grub时候需要安装两次,分别指定--target=x86_64-efi和--target=i386-pc,这样子的话,就会在protective MBR和ESP里面各安装一份grub的引导代码,两种模式下都可以引导,grub.cfg配置文件是通用的。
Reply View the author
avatar
DeepinOS
deepin
2019-06-04 22:11
#3
https://bbs.deepin.org/post/178780
可以通用的,方法是在GPT磁盘的最前面分出一个1MB左右的BIOS Boot分区,用于安装protective MBR。
然后在安 ...

但我这个,是有MBR引导,而且能成功引导,问题是,我在UEFI条件下有引导,但是不能引导。卡在initramfs这个地方。而且我的是MBR磁盘,不太一样。尴尬。
Reply View the author