Установщик Proxmox не предоставляет возможности настройки зашифрованного корневого раздела с ZFS, поэтому сначала необходимо установить Debian с зашифрованным ZFS корневым разделом, а затем установить Proxmox поверх него. Данное руководство охватывает некоторые особенности такого подхода. Сначала выполните отличное руководство, написанное авторами ZFS, для установки Debian: Started/Debian/Debian Bookworm Root on ZFS.html. Схема разделов дисков для справки создана в соответствии с руководством ZFS:
DISK1:
- part1: Раздел совместимости с MBR, не используется.
- part2: Раздел EFI, отформатированный как FAT32.
- part3: Раздел загрузки ZFS, не зашифрован.
- part4: Корневой раздел ZFS, зашифрован с использованием нативной шифровки ZFS.
DISK2:
- part1: Раздел совместимости с MBR, не используется.
- part2: Раздел EFI, отформатированный как FAT32.
- part3: Раздел загрузки ZFS, не зашифрован.
- part4: Корневой раздел ZFS, зашифрован с использованием нативной шифровки ZFS.
Выбрана двухдисковая зеркальная конфигурация с нативной шифровкой ZFS, но можно использовать и шифрование LUKs. Если вы выбрали нативную шифровку ZFS, преимущество в том, что шифрование потребуется вычислять только один раз для обоих дисков, в то время как LUKs потребует двойного шифрования данных. Недостаток использования нативной шифровки ZFS в том, что миграция Proxmox может быть недоступна, как сообщают другие пользователи:
-
-
Поэтому LUKs может быть лучшим выбором.
После того, как обычный Debian сможет загрузиться, выполните это руководство, чтобы установить Proxmox поверх Debian, но НЕ перезагружайте систему: . Это связано с тем, что система не смогла загрузиться после нескольких личных попыток после обновления Grub до версии, предоставляемой репозиториями Proxmox. Следующая цитата дает подсказку, почему:
Гипотеза заключается в том, что дистрибутив Grub от Proxmox по какой-то причине не поддерживает зашифрованный корневой раздел ZFS или ZFS вообще, поэтому вместо этого необходимо использовать загрузчик systemd. Выполните это руководство для установки загрузчика systemd в систему: . Но по сути, нужно сделать следующее:
1. `echo "root=ZFS=rpool/ROOT/debian quiet" > /etc/kernel/cmdline`
2. `apt install systemd-boot`
3. `bootctl set-timeout 4` (Необязательно, чтобы упростить отладку.)
4. Найдите ID загрузчика Grub с помощью `efibootmgr`, затем удалите его: `efibootmgr -b <ID> -B`.
После того, как система успешно загрузится из systemd boot (по умолчанию метка в NVRAM — "Linux Boot Manager"), выполните остальную часть , чтобы Proxmox заработал.
Наконец, чтобы синхронизировать раздел загрузки во время обновления ядра, выполните это руководство: .
По сути:
1. `proxmox-boot-tool format <DISK2-part2>`
2. `proxmox-boot-tool init <DISK2-part2>`
В целом — довольно сложный процесс, но он приводит к рабочей системе.
DISK1:
- part1: Раздел совместимости с MBR, не используется.
- part2: Раздел EFI, отформатированный как FAT32.
- part3: Раздел загрузки ZFS, не зашифрован.
- part4: Корневой раздел ZFS, зашифрован с использованием нативной шифровки ZFS.
DISK2:
- part1: Раздел совместимости с MBR, не используется.
- part2: Раздел EFI, отформатированный как FAT32.
- part3: Раздел загрузки ZFS, не зашифрован.
- part4: Корневой раздел ZFS, зашифрован с использованием нативной шифровки ZFS.
Выбрана двухдисковая зеркальная конфигурация с нативной шифровкой ZFS, но можно использовать и шифрование LUKs. Если вы выбрали нативную шифровку ZFS, преимущество в том, что шифрование потребуется вычислять только один раз для обоих дисков, в то время как LUKs потребует двойного шифрования данных. Недостаток использования нативной шифровки ZFS в том, что миграция Proxmox может быть недоступна, как сообщают другие пользователи:
-
-
Поэтому LUKs может быть лучшим выбором.
После того, как обычный Debian сможет загрузиться, выполните это руководство, чтобы установить Proxmox поверх Debian, но НЕ перезагружайте систему: . Это связано с тем, что система не смогла загрузиться после нескольких личных попыток после обновления Grub до версии, предоставляемой репозиториями Proxmox. Следующая цитата дает подсказку, почему:
Гипотеза заключается в том, что дистрибутив Grub от Proxmox по какой-то причине не поддерживает зашифрованный корневой раздел ZFS или ZFS вообще, поэтому вместо этого необходимо использовать загрузчик systemd. Выполните это руководство для установки загрузчика systemd в систему: . Но по сути, нужно сделать следующее:
1. `echo "root=ZFS=rpool/ROOT/debian quiet" > /etc/kernel/cmdline`
2. `apt install systemd-boot`
3. `bootctl set-timeout 4` (Необязательно, чтобы упростить отладку.)
4. Найдите ID загрузчика Grub с помощью `efibootmgr`, затем удалите его: `efibootmgr -b <ID> -B`.
После того, как система успешно загрузится из systemd boot (по умолчанию метка в NVRAM — "Linux Boot Manager"), выполните остальную часть , чтобы Proxmox заработал.
Наконец, чтобы синхронизировать раздел загрузки во время обновления ядра, выполните это руководство: .
По сути:
1. `proxmox-boot-tool format <DISK2-part2>`
2. `proxmox-boot-tool init <DISK2-part2>`
В целом — довольно сложный процесс, но он приводит к рабочей системе.
