3

У меня есть внешний диск с LUKS-зашифрованным разделом. Поскольку это внешнее USB-устройство, и оно мне не всегда нужно, я хочу расшифровывать и автоматически монтировать его по требованию. Я легко могу смонтировать файловую систему на расшифрованном разделе с помощью x-systemd.automount в /etc/fstab . Однако я не могу расшифровать раздел по требованию. Я пробовал два разных подхода:

  1. Я добавил строку

    mnt-usb-crypt UUID=<UUID> /path/to/keyfile luks
    

    в /etc/crypttab . Однако теперь раздел всегда расшифровывается, даже если я не указываю точку монтирования в /etc/fstab .

  2. Я изменил /etc/crypttab и добавил опцию noauto :

    mnt-usb-crypt UUID=<UUID> /path/to/keyfile luks,noauto
    

    Теперь нет системного устройства вообще, ожидаемый dev-mapper-mnt-usb.device не существует.

В соответствии с man- crypttab , нет никакой опции, такой как x-systemd.automount для устройств crypt.

Есть ли возможность настроить systemd для расшифровки устройства, только если оно доступно?

1 ответ1

2

Вариант 2 в вопросе действительно работает, но вы должны использовать одинаковые имена для устройства crypt в /etc/crypttab и /etc/fstab .

/etc/crypttab выглядит следующим образом:

# <name>        <device>            <password>      <options>
mnt-usb-crypt   UUID=<device-uuid>  /path/to/key    luks,noauto

/etc/fstab выглядит следующим образом:

# <file system>             <dir>       <type>  <options>                             <dump>    <pass>
/dev/mapper/mnt-usb-crypt   /mnt/usb    btrfs   defaults,noauto,x-systemd.automount   0         2

Обратите внимание, что если вы используете UUID дешифрованной файловой системы вместо пути /dev/mapper/mnt-usb-crypt , то systemd не сможет определить устройство, которое необходимо расшифровать. Но если вы используете имя устройства, как указано выше, устройство автоматически расшифровывается и монтируется, как и ожидалось.

Другим решением было бы явное указание требования к устройству шифрования systemd.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .