Существует отчет об ошибке , в котором описывается та же проблема. Кажется, есть проблема, когда порт скомпилирован с поддержкой LLVM, что вызывает ошибки сегментации.
Вам необходимо запустить
cd /usr/ports/devel/hs-cabal-install
make config
, чтобы отключить поддержку LLVM и таким образом предотвратить проблему.
Судя по вашему описанию, вполне вероятно, что вам удалось установить Ubuntu на внешний USB-диск, но GRUB, загрузчик Ubuntu, был установлен в sda2
, ваш системный раздел EFI. И если вы пытаетесь загрузиться с отключенным внешним USB, GRUB запутается, так как его конфигурация и/или некоторые из его модулей расположены на (теперь -недоступном )внешнем USB.
Возможно, вы не создали системный раздел EFI (ESP для краткости )на внешнем USB-накопителе, поэтому ESP в sda2
был единственным допустимым местом для установки загрузчика UEFI.
Поскольку ваша Windows не перезаписывается, и вы заявили, что вашей целью было установить Ubuntu на внешний USB-накопитель, я предполагаю, что ваша установка Ubuntu закончилась именно так, как вы заказывали, за исключением загрузчика. Чтобы выяснить, так ли это, вы можете снова загрузиться с работающего USB-накопителя, а затем проверить содержимое другого USB-накопителя. Если для него достаточно места, ваша цель может состоять в том, чтобы создать еще один ESP на целевом USB-устройстве установки Ubuntu и установить там загрузчик Ubuntu.
Ваша второстепенная цель — исправить загрузку Windows. Это просто :вам просто нужно переместить «Диспетчер загрузки Windows» на первое место в порядке загрузки. В Ubuntu это можно сделать с помощью команды efibootmgr
. В Windows вы можете сделать то же самое, открыв командную строку от имени администратора и используя команду bcdedit
точно так же:
Bcdedit /set {fwbootmgr} displayorder {bootmgr} /addfirst
При желании вы также можете смонтировать раздел sda2
и удалить оттуда случайно -установленный загрузчик GRUB Ubuntu, просто удалив каталог <mount point>/EFI/ubuntu/
со всем его содержимым. Но это не обязательно.