Зашифрованный набор данных ZFS не монтируется: Отказано в доступе

Зашифрованный набор данных ZFS не монтируется: Отказано в доступе

Я использую NixOS и пытаюсь зашифровать раздел жесткого диска (возможно, и больше в будущем) с помощью ZFS. Я старался придерживатьсяэто руководство, поэтому я добавил

boot.zfs = {
  enableUnstable = true;
  requestEncryptionCredentials = true;
};
boot.supportedFilesystems = [ "zfs" ];

к моему configuration.nix, и создал пул и набор данных zrootи zroot/gencс mountpoint=legacy acltype=posixacl xattr=sa. Я зашифровал пул с

$ sudo zfs create -o acltype=posixacl -o xattr=sa -o encryption=aes-256-gcm -o keyformat=passphrase -o mountpoint=none zroot/genc

Меня попросили назвать пароль, и я это сделал.

$ sudo zfs set mountpoint=legacy zroot/genc
$ sudo mount -t zfs zroot/genc /home/gecku/genc
$ sudo chown gecku:users ~/genc
$ touch ~/genc/hello
$ sudo nixos-generate-config

Все это работало нормально (я смог создать файл ~/genc/hello). Однако после nixos-rebuild switchменя перебросило в аварийную оболочку, и я ничего не мог сделать. Я вернулся к предыдущей версии NixOS и удалил записи zfsиз /etc/nixos/hardware-configuration.nix, чтобы система не пыталась импортировать пулы ZFS (потому что, по-видимому, она потерпела неудачу в этом). С этой новой конфигурацией я сделал

$ sudo zfs import zroot
$ sudo mount -t zfs zroot/genc ~/genc
> filesystem 'zroot/genc' can not be mounted: Permission denied

Я не дошел до момента, когда меня попросили ввести пароль. zroot/gencимеет атрибуты canmount=on keylocation=prompt.

Итак, как мне это исправить? Как мне смонтировать зашифрованный набор данных?

решение1

Это руководствохорошо обобщает процесс монтирования. Короче говоря, вам, вероятно, следует использовать zfs mountвместо , mount -t zfsпотому что он будет знать, что нужно загрузить / запросить ключи шифрования. Чтобы сделать это во время загрузки, вы также можете использовать флаг -lto zpool import(хотя вам понадобится какой-то способ предоставить вашему загрузочному скрипту пароль).

Связанный контент