За допомогою довідки, як встановити сервер Ubuntu з UEFI та RAID1 + LVM , RAID, налаштований у Ubuntu 18.04 , та підтримку RAID в установщику Ubuntu 18.04 Desktop? і Як позбутися "сканування файлових систем btrfs" при запуску? , Мені вдалося зібрати робочий HOWTO, використовуючи лише команди Linux.
Коротко
- Завантажте інсталятор альтернативного сервера.
- Встановіть з розділом вручну, EFI + RAID та LVM на RAID-розділі.
- Клоніруйте розділ EFI з встановленого розділу на інший диск.
- Встановіть другий розділ EFI у ланцюг завантаження UEFI.
- Щоб уникнути тривалого очікування під час завантаження, у випадку, коли диск порушився, видаліть
btrfs
сценарії завантаження.
Детально
1. Завантажте інсталятор
2. Встановити з ручним розділенням
- Під час встановлення на
Partition disks
кроці виберіть Manual
.
- Якщо диски містять будь-які розділи, видаліть їх.
- Якщо на ваших накопичувачах є якісь логічні томи, виберіть
Configure the Logical Volume Manager
.
- Вибирайте,
Delete logical volume
поки всі томи не будуть видалені.
- Вибирайте,
Delete volume group
поки всі групи гучності не будуть видалені.
- Якщо пристрій RAID присутній, виберіть
Configure software RAID
.
- Вибирайте,
Delete MD device
поки всі пристрої MD не будуть видалені.
- Видаліть кожен розділ на фізичних дисках, вибравши їх і вибравши
Delete the partition
.
- Створіть фізичні розділи
- На кожному диску, на початку диска створіть розділ 512 Мб (я бачив, як інші використовують 128 Мб) на початку диска. Використовуйте як :
EFI System Partition
.
- На кожному диску створюйте другий розділ розміром "max", використовуйте як :
Physical Volume for RAID
.
- Налаштувати RAID
- Виберіть
Configure software RAID
.
- Виберіть
Create MD device
, введіть RAID1
2 активні диски, 0 запасних дисків та виберіть пристрої /dev/sda2
та /dev/sdb2
пристрої.
- Налаштувати LVM
- Виберіть
Configure the Logical Volume Manager
.
- Створіть групу гучності
vg
на /dev/md0
пристрої.
- Створіть логічні томи, напр
swap
при 16G
root
при 35G
tmp
при 10G
var
при 5G
home
при 200G
- Установіть, як використовувати логічні розділи
- Для
swap
розділу виберіть Use as: swap
.
- Для інших розділів, виберіть
Use as: ext4
з належною точкою монтування ( /
, /tmp
, /var
, /home
відповідно).
- Виберіть
Finish partitioning and write changes to disk
.
- Дозвольте інсталяційну програму закінчити та перезавантажити.
Якщо ви перевстановлюєтесь на диск, який раніше мав конфігурацію RAID, крок створення RAID вище може виявитися невдалим, і ви ніколи не отримаєте md
пристрій. У цьому випадку вам, можливо, доведеться створити USB-накопичувач Ubuntu Live, завантажившись у нього, запустіть, gparted
щоб очистити всі таблиці розділів, перш ніж перезапустити цей HOWTO.
3. Огляньте систему
Перевірте, який розділ EFI встановлений. Швидше за все /dev/sda1
.
кріплення | греп черевик
Перевірте статус RAID. Швидше за все, це синхронізація.
cat / proc / mdstat
4. Клоніруйте розділ EFI
Завантажений файл EFI повинен був бути встановлений на /dev/sda1
. Оскільки цей розділ не відображається через систему RAID, нам потрібно його клонувати.
sudo dd if=/dev/sda1 of=/dev/sdb1
5. Вставте другий привід у завантажувальний ланцюг
Цей крок може не бути необхідним, оскільки якщо будь-який диск загине, система повинна завантажуватися з (однакових) розділів EFI. Однак видається доцільним забезпечити завантаження з будь-якого диска.
- Запустіть
efibootmgr -v
і помітьте ім'я файлу для запису ubuntu
завантаження. На моїй установці це було \EFI\ubuntu\shimx64.efi
.
- Біжи
sudo efibootmgr -c -d /dev/sdb -p 1 -L "ubuntu2" -l \EFI\ubuntu\shimx64.efi
. Залежно від вашої оболонки, вам, можливо, доведеться уникати нахилу від нахилу.
- Перевірте з ,
efibootmgr -v
що у вас є таке ж ім'я файлу для ubuntu
і ubuntu2
завантаження елементів , і що вони є першими двома у порядку завантаження.
- Тепер система повинна завантажуватися, навіть якщо один з дисків вийшов з ладу!
7. Зачекайте
Якщо ви хочете спробувати фізично видалити або вимкнути будь-який накопичувач, щоб перевірити вашу установку, спершу потрібно дочекатися завершення синхронізації RAID! Слідкуйте за ходом за допомогою. cat /proc/mdstat
Однак, ви можете виконати крок 8 нижче під час очікування.
8. Видаліть BTRFS
Якщо один привід вийде з ладу (після завершення синхронізації), система все одно завантажиться. Однак послідовність завантаження витратить багато часу на пошуки файлових систем btrfs. Щоб зняти непотрібне очікування, запустіть
sudo apt-get purge btrfs-progs
Це слід видалити btrfs-progs
, btrfs-tools
і ubuntu-server
. Останній пакет - це лише мета-пакет, тому якщо для видалення не вказано більше пакунків, вам слід буде добре.
9. Встановіть версію робочого столу
Запустіть, sudo apt install ubuntu-desktop
щоб встановити версію робочого столу. Після цього, ймовірно, синхронізація виконана, і ваша система налаштована і повинна пережити диск з ладу!
10. Оновіть розділ EFI після оновлення grub-efi-amd64
Після grub-efi-amd64
оновлення пакета файли на розділі EFI (встановлений на /boot/efi
) можуть змінюватися. У цьому випадку оновлення потрібно клонувати вручну до дзеркального розділу. На щастя, вам слід отримати попередження від менеджера оновлень, який grub-efi-amd64
збирається оновити, тому вам не доведеться перевіряти після кожного оновлення.
10.1 Швидкий шлях дізнатися джерело клонування
Якщо ви не перезавантажилися після оновлення, використовуйте
mount | grep boot
щоб дізнатися, який розділ EFI змонтований. Цей розділ, як правило /dev/sdb1
, повинен використовуватися як джерело клонування.
10.2 Дізнайтеся джерело клонування, параноїдальний шлях
Створіть точки монтажу та змонтуйте обидві секції:
sudo mkdir /tmp/sda1 /tmp/sdb1
sudo mount /dev/sda1 /tmp/sda1
sudo mount /dev/sdb1 /tmp/sdb1
Знайдіть часову позначку найновішого файлу в кожному дереві
sudo find /tmp/sda1 -type f -printf '%T+ %p\n' | sort | tail -n 1 > /tmp/newest.sda1
sudo find /tmp/sdb1 -type f -printf '%T+ %p\n' | sort | tail -n 1 > /tmp/newest.sdb1
Порівняйте часові позначки
cat /tmp/newest.sd* | sort | tail -n 1 | perl -ne 'm,/tmp/(sd[ab]1)/, && print "/dev/$1 is newest.\n"'
Чи слід друкувати /dev/sdb1 is newest
(найімовірніше) або /dev/sda1 is newest
. Цей розділ слід використовувати як джерело клонування.
Демонтуйте розділи перед клонуванням, щоб уникнути невідповідності кешу / розділу.
sudo umount /tmp/sda1 /tmp/sdb1
10.3 Клон
Якщо /dev/sdb1
було джерелом клонування:
sudo dd if=/dev/sdb1 of=/dev/sda1
Якщо /dev/sda1
було джерелом клонування:
sudo dd if=/dev/sda1 of=/dev/sdb1
Готово!
11. Віртуальні машини
Якщо ви хочете спробувати це спершу у віртуальній машині, є деякі застереження: мабуть, NVRAM, що містить інформацію UEFI, запам'ятовується між перезавантаженнями, а не між циклами відключення-перезавантаження. У такому випадку ви можете опинитися на консолі оболонки UEFI. Наступні команди повинні завантажувати вас у вашу машину з /dev/sda1
(використовувати FS1:
для /dev/sdb1
):
FS0:
\EFI\ubuntu\grubx64.efi
Перше рішення у верхній відповіді завантаження UEFI у virtualbox - Ubuntu 12.04 також може бути корисним.