ПРИМЕЧАНИЕ: это был ответ ОП. Я перенес его сюда как CW, чтобы он не закрывался. Если мод видит это, пожалуйста, передайте право собственности на OP в качестве самоответа.
Ниже я подробно опишу, как заставить все это работать несколько гармонично и в некоторой степени разобраться в беспорядке.
Часть первая: установка.
Обратите внимание, что если на вашем компьютере будет установлена Windows 7 (или 8?), Вам, вероятно, придется сначала установить ее , желательно на собственный жесткий диск, и вы не сможете установить ее на свой компьютер. группа логических томов. Это потому, что установщик Windows 7 GPT / EFI очень прост и не позволит вам делать то, что вы будете здесь делать. После установки Windows вы можете изменить размер и перераспределить разделы, добавив разделы, необходимые для установки с несколькими загрузками. Системный раздел EFI, который создает Windows, всегда можно повторно использовать для установки Linux, используя вариант, описанный ниже.
Во-первых , это помогает стереть намеченный системный диск с помощью gparted (или подобного) и инициализировать его как диск GPT, прежде чем делать что-либо еще. Если вы немного нервничаете по поводу использования неграфического разделителя для настройки вашего диска с нуля, то это определенно стоит, и это легко сделать с помощью стандартного установщика USB или CD для рабочего стола. Не делай этого в Windows. Я не уверен, что это абсолютно необходимо, но это то, что я сделал. На этом этапе вы также можете выполнить базовое разбиение для разделов не-LVM, так как это не повредит и даст вам основу для правильной установки.
Теперь запишите ваши установочные CD / USB. Если вы используете Ubuntu Alternate Desktop ISO (рекомендуется), вы должны записать его на CD, так как он просто не будет работать с USB-накопителя. При использовании для установки LVM он останавливается с критической ошибкой при попытке начать загрузку и установку программного обеспечения с помощью aptitude / tasksel, поэтому используйте CD, если вы знаете, что хорошо для вас!
Во всех случаях Ubuntu Server устанавливается абсолютно нормально с USB (AFAIK), но я обнаружил, что если я хочу построить настольную систему Ubuntu / Mythbuntu поверх сервера, он вводит все виды непреднамеренных извращений, которые затем требуют времени, затрачиваемого на сортировку. Так что придерживайтесь Desktop, если это то, что вам нужно.
Quantal (12.10) имеет LVM в качестве опции в графическом установщике (что здорово!), Поэтому с альтернативным ISO покончено. Тем не менее, я обнаружил, что интерфейс ручного разбиения негибкий, в нем отсутствуют опции LVM, и он просто не работает для мультизагрузки. Возможно, это произошло из-за проблемы с USB, упомянутой ранее, но, честно говоря, у меня было так много проблем с квантовой системой, которую я попробовал, что я довольно быстро сдался и вернулся к Precise (12.04.1).
Другим основным вариантом является использование установщика Net-boot, с которым у меня нет реального опыта (кроме моего Raspberry Pi), но я считаю, что есть мини ISO с текстовыми установками и GUI (GTK), который можно сжечь и загрузить с. Они извлекают большинство установочных файлов непосредственно из репозитория и имеют широкие возможности настройки.
Затем вы должны загрузить свою систему с CD или USB, используя ее загрузочную запись UEFI из «BIOS» или из меню загрузки (обычно это одно из [F8] - [F12] на клавиатуре).
Я оставлю на ваше усмотрение прохождение предварительных этапов процесса установки, но как только вы перейдете к разделу с разделами, выберите Разделение вручную, а затем создайте (или измените, если вы уже создали некоторые из них) следующие разделы:
Один раздел размером 200 МБ, FAT32, системный раздел EFI, с именем / пометкой «EFI», с возможностью загрузки, формат.
Несколько разделов: размер 256 МБ, EXT2, загрузочный, формат;
Вы должны назвать / пометить их для каждой ОС, которую они будут представлять, то есть "OS_01_Boot" ... "OS_03_Boot" ... и т. Д.
Начните с монтирования первого из них как «/ boot», а всех остальных как «не использовать».
Создайте один раздел для каждой ОС, которую вы собираетесь установить.
Один раздел, занимающий оставшееся место на диске, как том для LVM.
- Сконфигурируйте LVM на томе, который вы только что разделили, создав группу томов для всех ваших ОС, присвоив ей подходящее имя и достаточно места для всех. Я бы рекомендовал использовать как минимум 40 ГБ для каждого, в зависимости от типа установки, которую вы планируете для каждого.
Создайте один логический том того же размера, что и физическая память в вашей системе, т. Е. 8 ГБ, назовите его «Swap», используйте как swap, format.
Создайте по одному логическому тому для каждой из ОС в группе томов, изменив их размер, как указано выше, и присвоив каждому имя, например, «Ubuntu_12.04» и т. Д.
Отформатируйте каждый в EXT4, называя / маркируя разделы, как вы идете.
Начните с монтирования первого из них как «/» (root), а всех остальных как «не использовать».
Это оно! Теперь у вас есть раздел подкачки, "/ boot" и "/" (root) для вашей системы и запасные для последующих установок. Теперь вы можете зафиксировать изменения в таблице разделов и продолжить установку.
Когда дело доходит до установки вашей следующей ОС, просто убедитесь, что вы монтируете следующий раздел "/ boot" и "/" (root) соответственно. Пожалуйста, убедитесь, что вы отметили все остальные как "не использовать", в том числе те, которые вы использовали в прошлый раз.
Часть вторая: Резервное копирование загрузочных файлов UEFI.
Как только вы загрузитесь в новую ОС, вы должны сделать резервную копию вашего загрузчика UEFI для дальнейшего использования и убедиться, что он не будет перезаписан при следующей установке. Это можно найти в "/ boot / efi / EFI", в его собственной папке, обычно называемой "ubuntu". Файл, о котором идет речь, будет иметь имя, похожее на «grubx64.efi», в зависимости от архитектуры вашего ПК; поэтому "/boot/efi/EFI/ubuntu/grubx64.efi" для моей машины.
В моем случае для резервного копирования я скопировал его через консоль, например так:
sudo cp -r /boot/efi/EFI/ubuntu /boot/efi/EFI/Ubuntu_12.04.1
На всякий случай было бы целесообразно сделать еще одну копию в вашей домашней папке или в другом безопасном месте:
cp -r /boot/efi/EFI/ubuntu /home/user/Ubuntu_12.04.1
После этого вы можете безопасно установить следующую операционную систему (следуя приведенным выше советам), которая, скорее всего, перезапишет исходный файл и папку, а также сделает себя загрузочной записью UEFI по умолчанию в «BIOS». Повторите процесс снова и столько раз, сколько необходимо, присваивая каждой папке другое, но представительное имя:
sudo cp -r /boot/efi/EFI/ubuntu /boot/efi/EFI/Server_12.04.1
cp -r /boot/efi/EFI/ubuntu /home/user/Server_12.04.1
Часть третья: изменение записей UEFI в вашем "BIOS" UEFI.
С терминала введите:
sudo efibootmgr
Вы должны получить некоторый вывод, как это:
BootCurrent: 0000
Timeout: 3 seconds
BootOrder: 0000,0006,0007,0005
Boot0000* ubuntu
Boot0005* Hard Drive
Boot0006* UEFI: MATSHITABD-MLT UJ240AS
Boot0007* CD/DVD Drive
Это довольно очевидно, правда. Он должен отражать то, что вы видите в вашем списке загрузки BIOS.
Прочитайте:
man efibootmgr
чтобы увидеть, что делают команды, измените приведенные ниже примеры команд, чтобы добавить и удалить загрузочные записи.
Сначала удалите строку «Boot0000 * ubuntu» с помощью:
sudo efibootmgr -b 0000 -B
Вывод:
BootCurrent: 0000
Timeout: 3 seconds
BootOrder: 0006,0007,0005
Boot0005* Hard Drive
Boot0006* UEFI: MATSHITABD-MLT UJ240AS
Boot0007* CD/DVD Drive
Затем мы добавим несколько записей для трех операционных систем.
ОС № 1:
sudo efibootmgr -c -g -d /dev/sda -p 1 -w -L "Ubuntu 12.04.1" -l \\EFI\\Ubuntu_12.04.1\\grubx64.efi
Вывод:
BootCurrent: 0000
Timeout: 3 seconds
BootOrder: 0000,0006,0007,0005
Boot0005* Hard Drive
Boot0006* UEFI: MATSHITABD-MLT UJ240AS
Boot0007* CD/DVD Drive
Boot0000* Ubuntu 12.04.1
ОС № 2:
sudo efibootmgr -c -g -d /dev/sda -p 1 -w -L "Ubuntu Server 12.04.1" -l \\EFI\\Server_12.04.1\\grubx64.efi
Вывод:
BootCurrent: 0000
Timeout: 3 seconds
BootOrder: 0001,0000,0006,0007,0005
Boot0000* Ubuntu 12.04.1
Boot0005* Hard Drive
Boot0006* UEFI: MATSHITABD-MLT UJ240AS
Boot0007* CD/DVD Drive
Boot0001* Ubuntu Server 12.04.1
ОС № 3:
sudo efibootmgr -c -g -d /dev/sda -p 1 -w -L "Mythbuntu 12.04.1" -l \\EFI\\Mythbuntu_12.04.1\\grubx64.efi
Вывод:
BootCurrent: 0000
Timeout: 3 seconds
BootOrder: 0002,0001,0000,0006,0007,0005
Boot0000* Ubuntu 12.04.1
Boot0001* Ubuntu Server 12.04.1
Boot0005* Hard Drive
Boot0006* UEFI: MATSHITABD-MLT UJ240AS
Boot0007* CD/DVD Drive
Boot0002* Mythbuntu 12.04.1
Чтобы изменить порядок загрузки:
sudo efibootmgr -o 0000,0001,0002,0006,0007,0005
Вывод:
BootCurrent: 0000
Timeout: 3 seconds
BootOrder: 0000,0001,0002,0006,0007,0005
Boot0000* Ubuntu 12.04.1
Boot0001* Ubuntu Server 12.04.1
Boot0002* Mythbuntu 12.04.1
Boot0005* Hard Drive
Boot0006* UEFI: MATSHITABD-MLT UJ240AS
Boot0007* CD/DVD Drive
Выполнено!
Здесь используется довольно странный синтаксис, особенно в отношении путей к файлам, но он довольно прост, если у вас есть хорошее руководство (и я надеюсь, что это так).
Спасибо за чтение. :)
https://wiki.archlinux.org/index.php/Unified_Extensible_Firmware_Interface#efibootmgr