偶然的BIOS模式安装
我有带UEFI设置实用程序的Intel 64位硬件。Ubuntu 14.04.1 LTS被安装为唯一连接的驱动器上的唯一操作系统。偶然地,Ubuntu以BIOS / CSM /传统模式安装。
转换为UEFI
稍后了解UEFI时,目标是将现有的Ubuntu安装更改为通过EFI / UEFI引导(快速启动)。我仍然希望显示某种形式-2秒-引导菜单,允许我进入UEFI设置实用程序。因此,我认为我确实需要使用Grub(不能使用EFI引导存根),并且GOP支持需要Grub 1.99或更高版本。我已经使用Live CD对驱动器进行了重新分区,并在驱动器的开头插入了200 MiB EFI分区,并将fat16格式化的分区标记为id 0xEF。
之前:
# fdisk -l /dev/sda
...
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 108478463 54238208 83 Linux
/dev/sda2 108480510 125044735 8282113 5 Extended
/dev/sda5 108480512 125044735 8282112 82 Linux swap / Solaris
后:
Device Boot Start End Blocks Id System
/dev/sda1 * 411648 108478463 54033408 83 Linux
/dev/sda2 108480510 125044735 8282113 5 Extended
/dev/sda3 2048 411647 204800 ef EFI (FAT-12/16/32)
/dev/sda5 108480512 125044735 8282112 82 Linux swap / Solaris
Partition table entries are not in disk order
请不进行引导修复
Ubuntu社区Wiki建议使用引导修复将Ubuntu转换为EFI模式。我不想使用GUI或安装任何额外的软件包,也不想将任何数据意外发送到pastebin.com,并且因为我确实想知道将要完全更改的内容,所以我不想使用Boot-repair。
引擎盖下
为了弄清楚引导修复的实际作用,我发现了以下片段:
引导修复将通过卸载grub-pc并安装grub-efi(如果gpt已分区)将BIOS安装转换为UEFI。
来源:http : //ubuntuforums.org/showthread.php?t=2147295&p=12657352#post12657352
UEFI模式安装比较
在UEFI模式下进行的全新Ubuntu 14.04.1全新安装会创建512 MiB Fat32格式的EFI分区。该分区包含一个目录/EFI/ubuntu
,包含4个文件:grub.cfg
,grubx64.efi
,MokManager.efi
和shimx64.efi
。grub.cfg包含:
search.fs_uuid 7d843e47-3917-4114-8725-55dfa1fbe002 root hd0,gpt2
set prefix=($root)'/boot/grub'
configfile $prefix/grub.cfg
Search.fs_uuid指向Linux安装分区的UUID,在此比较中,UEFI安装Linux安装在分区/ dev / sda2 (与BIOS模式安装中的sda1相比)。
找不到潜在的Asrock固件问题
仍在固件中禁用CSM并使用全新UEFI模式Ubuntu安装。使用Live CD将512 MiB EFI分区的大小调整为200 MiB,gparted
结果是其格式从FAT32更改为FAT16。Asrock固件P1.50 (在启动消息“ BIOS date”中被AMI错误地称为BIOS)仍然能够启动到UEFI模式Ubuntu:UEFI + FAT16 = ok。使用相同的Live CD终端命令及其命令
将分区表从GPT转换为MBR(msdos)gdisk
,r
g
p
w
还会在MBR分区驱动器上生成UEFI可引导的Ubuntu:UEFI + MBR = ok。
题
这是否意味着我只需要执行的命令(从旧版Ubuntu安装开始并按此顺序执行)是:
# apt-get install grub-efi
# apt-get remove grub-pc
?还是需要做更多的事情?
apt-get install boot-repair
在此Ubuntu服务器上执行安装,会导致245MB的GTK,如要安装的依赖项boot-repair。并且boot-repair
向后执行命令失败。更新较新的grub-efi命名确实很有帮助。