Автосмонтирование зашифрованных файлов с помощью скомпилированной ZFS

В настоящее время я пытаюсь переключиться с сервера дампа данных под управлением 19.04 с LUKS + btrfs на ZFS. Системный диск зашифрован LUKS и может быть расшифрован через SSH. Он содержит файл ключа, который должен расшифровывать файловые системы ZFS. Я на полпути, но автомонтирование не работает.

  • Мне удалось скомпилировать ZFS 0.8.1 и собрать пакет DKMS, следуя вики . Читая make-файл, я также обнаружил, что мне также нужно сделать deb-utils для получения zpool и тому подобного.
  • Я создал пул, который поддерживает шифрование

    zpool create -o ashift=12 dataint /dev/disk/by-id/mydrive zpool set feature@encryption=enabled dataint

  • Я создал в нем файловые системы, которые зашифрованы с помощью файла ключей

    zfs create \ -o encryption=on \ -o keylocation=file:///root/keys/hdd256.key -o keyformat=raw\ dataint/test

  • Я могу смонтировать это с помощью zfs mount dataint -l

У меня есть следующие проблемы:

  1. zfs не загружается при запуске. Даже модуль ядра и, соответственно, не пул.

  2. Зашифрованные тома загружаются только при импорте пула или при монтировании файловой системы с опцией -l. Я думаю, что это нужно как-то решать для автозагрузки, когда 1. решена?

У меня есть некоторые службы zfs systemd, но они замаскированы. Не уверен, что это остатки предыдущей установки менеджера пакетов 0.7, которую я удалил.

0
задан 20 June 2019 в 20:23

2 ответа

Я полностью решил проблему теперь, которая по существу имеет также части.

  1. systemd сервисы должны быть встроены в deb пакет вообще. К сожалению, Wiki packe связанный выше очень неаккуратна, как обсуждено здесь в системе отслеживания ошибок .

Короче говоря, команды сборки для DKMS deb должны быть

$ ./configure
$ make -j1 deb-utils deb-dkms
  1. , Старая установка должна быть очищена

Команда:

sudo systemctl unmask zfs*

и новые сервисы должен быть включен и запущен.

я также описал, как иметь дело с зашифрованными наборами данных здесь .

0
ответ дан 24 October 2019 в 13:21

Попытайтесь вручную включить все установленные части.

Для наблюдения то, что установили zfs-связанные сервисы система:

sudo systemctl list-unit-files | grep zfs

Затем, включают все сервисы. Я являюсь подробным:

sudo modprobe zfs
sudo systemctl enable zfs-import-cache
sudo systemctl enable zfs-import-scan
sudo systemctl enable zfs-import.target
sudo systemctl enable zfs-mount
sudo systemctl enable zfs-share
sudo systemctl enable zfs-zed
sudo systemctl enable zfs.target

, Если жалобы на замаскированные вещи обнаруживаются на Вашем терминале, сила снимает все маски:

sudo systemctl unmask zfs-*
<час>

Вам, вероятно, не нужно это, но для полноты, некоторые более старые системы имеют меньше сервисов и предпочитают update-rc.d:

update-rc.d zfs-import enable
update-rc.d zfs-mount enable
update-rc.d zfs-zed enable
update-rc.d zfs-share enable
0
ответ дан 24 October 2019 в 03:21

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

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