Как установить Ubuntu с полным шифрованием диска на нескольких дисках?

Я хочу установить Ubuntu с полным шифрованием диска с помощью LVM, но с разделением на несколько дисков.

Например, если бы я хотел, чтобы в /dev/sda было все, кроме /var, которое находилось в /dev/sdb? Я вижу, как это сделать без LVM, отредактировав разделы с помощью опции «что-то еще»

. Из установщика кажется, что я могу установить только на один диск при выборе LVM. Я что-то пропустил?

0
задан 14 October 2020 в 02:53

1 ответ

Установщик не поддерживает этот сценарий, поэтому вам придется сделать это вручную.

Есть много подходов, которые вы можете использовать, и поскольку вы хотите, чтобы /var явно находился на отдельном физическом томе, вот что я бы сделал:

  • Прежде всего, установите Ubuntu, используя установщик на первый физический том (sda) с шифрованием LUKS и LVM, а позже добавьте второй том. Это установит /var на ваш диск, чего вы не хотите, но это временно.

  • Затем настройте LUKS на втором физическом томе (sdb). Вы можете использовать кодовую фразу:

    cryptsetup luksFormat /dev/sdb1 # Предполагая, что sdb1 — это раздел, в котором
     # вы хотите создать контейнер LUKS.
     # Вы также можете использовать весь диск (/dev/sdb)
     # и не имеют таблицы разделов.
    
  • Откройте только что созданный контейнер LUKS:

    cryptsetup luksOpen /dev/sdb1 lvm-var
    

    Теперь, если вы отметите dmsetup, вы должны увидеть два контейнера LUKS: один, который был создан во время установки Ubuntu (назовем его для простоты lvm-ubuntu, хотя имя будет другой) и тот, который мы только что создали:

    $ dmsetup ls --target=crypt
    лвм-убунту...
    lvm-вар ...
    
  • Инициализируйте контейнер LUKS для использования с LVM:

    pvcreate /dev/mapper/lvm-var
    

    Теперь, если вы наберете pvs, вы должны увидеть два физических тома LVM: тот, на который вы установили Ubuntu, и новый физический том lvm-var:

    $ pvs
    PV VG Fmt Attr PSize PFree
     /dev/mapper/lvm-ubuntu ubuntu-vg lvm2 ... ... ...
     /dev/mapper/lvm-var lvm2 ... ... ...
  • Создайте новую группу томов LVM внутри нашего нового физического тома LVM:

    vgcreate var-vg /dev/mapper/lvm-var
    

    Теперь vgs должен указывать его вместе с группой томов, созданной во время установки:

    $ vgs
    VG #PV #LV #SN Attr VSize VFree
    убунту-vg 1 1 ...
    вар-вг 1 0 ...
    
  • Создайте новый логический том LVM внутри группы:

    lvcreate -L<размер> -n var var-vg # Выберите размер для вашей группы томов. Ты сможешь
     # указать 100%, но я всегда рекомендую использовать
     # часть доступного пространства, потому что вы
     # всегда можно увеличить логические тома и
     # файловые системы в сети, но их сжатие
     # боль.
    

    И lvs должны отражать наши изменения:

     LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
    root ubuntu-vg -wi-ao---- ...
    вар вар-вг -ви-а----- ...
    
  • Инициализируйте файловую систему ext4 на этом логическом томе (или файловую систему любого другого типа):

    mkfs.ext4 /dev/var-vg/var
    

    Подтвердите, что файловая система была создана с помощью lsblk.

  • Почти готово! Теперь нам нужно сказать Ubuntu, чтобы он автоматически открывал монтирование контейнера LUKS и файловой системы при загрузке. Для этого:

    • Добавьте эту строку в /etc/crypttab:

      var-vg UUID= none luks,discard,keyscript=decrypt_keyctl
      

      Вы можете получить UUID командой lsblk -f. keyscript=decrypt_keyctl позволяет вам не вводить одну и ту же фразу-фразу дважды при загрузке (в случае, если ваши два контейнера LUKS используют одну и ту же фразу-фразу).

    • Добавьте эту строку в /etc/fstab:

      /dev/var-vg/var /var ext4 defaults 0 1
      

Готово! Теперь вы можете скопировать все файлы из /var на первом диске в новый логический том на втором диске.

1
ответ дан 6 December 2020 в 20:37

Другие вопросы по тегам:

Похожие вопросы: