Предварительная установка стабильной установки Debian со сложной схемой разметки - отсутствует физический том
Мои персональные системы работают на:
- Открытый / загрузочный раздел
- отдельно зашифрованный случайный ключ / разделы tmp и swap и
- Зашифрованный паролем том btrfs lvm, содержащий все остальное.
Мой последний проект состоит в том, чтобы использовать предварительную установку программы установки Debian и попытаться воссоздать ее автоматически. Ниже то, что я придумал. Это происходит с ошибкой, что рецепт автоматического разделения содержит определение группы томов, которая не содержит физического тома.
К сожалению, документации по конкретному случаю шифрования очень мало - может кто-нибудь выяснить, как исправить эту настройку?
Спасибо за ваше время, Джо
d-i partman-auto/disk string /dev/sda
d-i partman-lvm/device_remove_lvm boolean true
d-i partman-md/device_remove_md boolean true
d-i partman-lvm/confirm boolean true
d-i partman-lvm/confirm_nooverwrite boolean true
d-i partman-auto-lvm/new_vg_name multiselect vg_crypto_swap, vg_crypto_tmp, \
vg_crypto_root
d-i partman-auto/expert_recipe string \
joh-complex :: \
100 150 200 ext3 \
$primary{ } \
$bootable{ } \
label{ boot_nocrypto } \
method{ format } \
format{ } \
use_filesystem{ } \
filesystem{ ext4 } \
mountpoint{ /boot } \
options/discard{ discard } \
options/relatime{ relatime } \
device{ /dev/sda1 } \
. \
1000 5000 5000 lvm \
$primary{ } \
$defaultignore{ } \
method{ lvm } \
device{ /dev/sda2 } \
vg_name{ vg_crypto_tmp } \
. \
1000 5000 5000 ext3 \
$lvmok{ } \
method{ format } \
format{ } \
in_vg{ vg_crypto_tmp } \
lv_name{ tmp_crypto } \
use_filesystem{ } \
filesystem{ ext2 } \
mountpoint{ /tmp } \
options/relatime{ relatime } \
options/noexec{ noexec } \
. \
100% 300% 300% lvm \
$primary{ } \
$defaultignore{ } \
method{ lvm } \
device{ /dev/sda3 } \
vg_name{ vg_crypto_swap } \
. \
100% 300% 300% linux-swap \
$lvmok{ } \
method{ swap } \
format{ } \
in_vg{ vg_crypto_swap } \
lv_name{ swap_crypto } \
. \
1000 10000 1000000000 lvm \
$primary{ } \
$defaultignore{ } \
method{ lvm } \
device{ /dev/sda4 } \
vg_name{ vg_crypto_root } \
. \
1000 10000 1000000000 ext3 \
$lvmok{ } \
method{ format } \
format{ } \
in_vg{ vg_crypto_root } \
lv_name{ root_crypto } \
use_filesystem{ } \
filesystem{ btrfs } \
mountpoint{ / } \
options/discard{ discard } \
options/relatime{ relatime } \
options/ssd{ ssd } \
. \
d-i partman-partitioning/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm boolean true
d-i partman/confirm_nooverwrite boolean true
d-i partman-md/confirm boolean true
d-i partman-partitioning/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm boolean true
d-i partman/confirm_nooverwrite boolean true
2 ответа
За d-i partman-auto/method string crypto
, вам нужно поместить пробел между in_vg
а также {
(фигурные скобки) вроде так:
in_vg{ vg_crypto_tmp } -> in_vg { vg_crypto_tmp }
Я с большим успехом использовал следующий рецепт для автоматизации создания зашифрованных разделов на многих пользовательских системах. Этот рецепт предполагает использование /dev/sda в качестве тома для использования и использует xfs в качестве файловой системы по умолчанию (моя предпочтительная файловая система).
Кроме того, он использует упрощенную схему разметки: небольшой /boot, ~50 ГБ /, ~200% оперативной памяти в качестве подкачки (вероятно, ограничьте ее до 64 ГБ, если системная память> 32 ГБ), а также оставшееся место на диске дома. Если вы хотите создать более надежную систему, используйте отдельные разделы для / var, / usr, / tmp и т. Д. Логика использования нескольких разделов приведена по адресу: https://www.debian.org/doc/manuals/securing-debian-howto/ch3.en.html
Стоит отметить, что, насколько я знаю, вам нужно использовать lvm, чтобы заставить шифрование работать, или, по крайней мере, я не заставил его работать иначе.
d-i partman/default_filesystem string xfs
d-i partman-auto/disk string /dev/sda
d-i partman-lvm/device_remove_lvm boolean true
d-i partman-md/device_remove_md boolean true
d-i partman-lvm/confirm boolean true
d-i partman-auto-lvm/guided_size string max
d-i partman-auto/method string crypto
d-i partman-auto/choose_recipe select boot-crypto
d-i partman-auto-lvm/new_vg_name string crypt
d-i partman-auto/expert_recipe string boot-crypto :: \
1000 2000 3000 xfs $primary{ } $bootable{ } \
method{ format } format{ } \
use_filesystem{ } filesystem{ xfs } \
mountpoint{ /boot } \
.\
45000 50000 55000 xfs $lvmok{ } lv_name{ root } \
in_vg { crypt } method{ format } format{ } \
use_filesystem{ } filesystem{ xfs } mountpoint{ / } \
.\
100% 200% 300% linux-swap $lvmok{ } lv_name{ swap } \
in_vg { crypt } method{ swap } format{ } \
.\
3000 35000 1000000000 xfs $lvmok{ } lv_name{ home } \
in_vg { crypt } method{ format } format{ } \
use_filesystem{ } filesystem{ xfs } mountpoint{ /home } \
.\
d-i partman-partitioning/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm boolean true
d-i partman/confirm_nooverwrite boolean true
Кредит, где кредит должен, я получил идею в свою очередь от: http://ptomusk.blogspot.com/2012/09/ubuntu-preseedcfg-with-encrypted-lvm.html