我知道这是一个非常普遍的问题,但是如果我在这里,这意味着我已经搜索并尝试了许多道路:未成功。我正在尝试在分区(也不是VM也不是Bootcamp)上运行MacOS BigSur的MacBookPro 13“ 2019上安装Ubuntu。
我目前已下载Ubuntu的最新稳定版本:Ubuntu 20.04.2.0 LTS。
然后,我插入了一个4GB的USB,并使用Disk Utility将其格式化为MS-DOS(FAT)。
重新启动我的Mac保持选项键,然后启动到我的USB(EFI启动)中。
打开“活动”概述,然后开始输入“设置”。
单击设置。
单击侧栏中的“辅助功能”以打开面板。
在“键入”部分中打开“屏幕键盘”。
我单击了桌面上的Ubuntu安装程序图标
所选语言
选择“正常安装”并选中“安装第三方软件”
当询问用于将Ubuntu安装到的分区时,选择其他选项/其他
然后,我从可用空间中创建了2个分区
然后,我确保将用于安装引导加载程序的磁盘设置为磁盘,而不是我创建的特定EFI分区(即/ dev / nvme0n1而不是/ dev / nvme0n1p3)
单击立即安装
在grub2步骤安装失败
I was having exactly the same problem whilst installing Ubuntu 20.04.2.0 LTS on a 2020 MacBook Pro with a 2 GHz Quad-Core Intel Core i5 processor using macOS Big Sur Version 11.1. After spending two days trying to get it to work I finally found a solution. Be warned it is a long process.
From my research I found that the issue is due to the Mac bootloader expecting the EFI partition to be formatted as HFS+ where the Ubuntu installer formats it as VFAT (as stated by Rohith Madhavan here).
To get around this issue I found three possible solutions:
Option one was posted seven years ago and required adding an unsigned repository to my Ubuntu installation (which I wasn't willing to do for security reasons). I didn't understand the full implications of swapping from GRUB to rEFInd so I wasn't comfortable using option two and finally, I didn't want slow memory access by using an external SSD so I didn't want to go with option three.
My final solution was to use parts of options one and three to make my own GRUB config file formatted in HFS+ so that I could boot Ubuntu from a partition on my internal SSD.
Whilst the process shouldn't cause you any issues, if a mistake occurs it could wipe your drive. As a result, it is always safest to back everything up before progressing.
Apple SSD
drive (make sure to select the parent drive not the container).Ubuntu Boot Loader
with format Mac OS Extended (Journaled)
and size 128MB. This will serve as the location for your Ubuntu bootloader later on.Ubuntu
with format MS-DOS (FAT)
and allocate it the memory size you want your Ubuntu installation to have (I would recommend no smaller than 50GB).Erase
, select the format MS-DOS (FAT)
and choose the scheme GUID Partition Map
then hit Erase
.Cmd+R
on reboot. This will put you into recovery mode.Utilities
, select the first thing in the drop down menu and change the settings to No Security
and Allow booting from external drive
.Option
key.Update Required
. Hit the Update
option. This will restart your computer. Make sure you are holding Option
when it turns back on. Then click on EFI boot again.Installation Type
page select Something Else
.MS-DOS (FAT)
partition you made and hit minus.Free Space
and hit plus.Ext4 Journaling File System
, check Format the partition
and have the mounting point as /
.Free Space
and hit plus.swap
as the format.Device for boot loader installation
select the partition where your ext4
formatted memory is.Install Now
.grub-install /dev/nvme****
failed warning but don't worry. Just hit restart. You will be asked to remove the USB and then hit Enter
.You will now have Ubuntu installed on your computer, but your GRUB bootloader won't be able to open it without some help.
Option
key when booting.At the grub console, type ls
grub> ls
(memdisk) (hd0) (hd0,msdos) (hd1) (hd2) (hd2,gpt3) (hd2,gpt2) (hd2,gpt1)
You may not get exactly the same results as this, but you’ll have some similar options.
Now, find the partition which contains your user's home directory.
grub> ls (hd2,gpt2)/home
rohith/
Keep trying until you find it.
The result from the last step has two parts: (hdX,gptY). You need to keep the hdX part, but go through all the gptY options looking for a /boot/grub directory.
grub> ls (hd2,gpt2)/boot/grub
unicode.pf2 [...] grub.cfg
Now you want to set this as your root for further commands.
grub> set root=(hd2,gpt2)
The only way to boot properly was to use the UUID of the drive. To get it -
grub> ls -l (hd2,gpt2)
Note down the UUID. You'll have to type it manually in the next step.
grub> linux /boot/vmlinuz .efi.signed root=UUID=〈the UUID from above〉
The GRUB console can do tab completion, so if you just type out the vmlinuz part and hit tab, then hit . and tab again, you won't have to type the whole file name. make sure that the efi.signed part is present.
Now, set the initial RAM disk
grub> initrd /boot/initrd〈...tab here!...〉
You should be able to boot with the command
grub> boot
You will now be in your Ubuntu installation as if everything was installed correctly. But every time you restart you have to repeat this process. To work around this you can do the following.
Here you want do reformat the VFAT boot loader that the Ubuntu installation made by default to HFS+. This can be done by making your own boot loader config using GRUB. The method I used was the same as what Floris van Breugel did (but on my internal SSD instead of an external SSD).
Making Ubuntu bootable part 1
from this all the way to the end of Turn SIP back on (for security)
. The only changes are the disk your should reference is your internal Ubuntu Boot Loader
partition (you do not need an external drive with this partition.Option
key during boot-up. You will now have two EFI boot drives. Go into the far left one. It should say you need to install an update for this to work. Click Update
.Option
再次按住该键,然后选择中间的EFI引导驱动器。这将使您再次进入GRUB屏幕。等待一两分钟,然后它应该带您到Ubuntu加载屏幕。你都做完了。您现在应该能够立即启动Ubuntu和MacOS。
希望这对您有用。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句