Необходимо обратить внимание на UUID. Например, это - моя конфигурация:
# lsblk -o name,uuid,mountpoint
├─sda2 727fa348-8804-4773-ae3d-f3e176d12dac
│ └─sda2_crypt (dm-0) P1kvJI-5iqv-s9gJ-8V2H-2EEO-q4aK-sx4aDi
│ ├─debian_crypt-swap (dm-1) 3f9f24d7-86d1-4e21-93e9-f3c181d05cf0 [SWAP]
│ ├─debian_crypt-tmp (dm-2) 93fc8219-f985-45fb-bd5c-2c7940a7512d /tmp
│ ├─debian_crypt-home (dm-3) 12e8566c-8f0f-45ec-8524-6d9d9ee91eae /home
│ └─debian_crypt-root (dm-4) 9685570b-4c9e-43ea-815e-49d10dc7a1bf /
У меня есть зашифрованный раздел того (sda2) с 4 объемами (LVM). То, в чем я нуждаюсь, должно установить два UUID в правильных файлах. sda2 UUID переходит в /etc/crypttab
и объем UUID (например, debian_crypt-корень) переходит в /etc/fstab
.
Так, это было бы:
# cat /etc/crypttab
sda2_crypt UUID=727fa348-8804-4773-ae3d-f3e176d12dac none luks
# cat /etc/fstab
UUID=9685570b-4c9e-43ea-815e-49d10dc7a1bf / ext4 defaults,errors=remount-ro 0 1
После изменения /etc/crypttab
файл, необходимо восстановить initramfs:
# update-initramfs -u -k all
Примечание:
Пакет cryptsetup
должен быть установлен, потому что это имеет сценарии запуска, которые оказывают поддержку для автомонтирования зашифрованных томов при начальной загрузке.
Почему беспокойство для упоминания этого? Ну, если Вы устанавливаете LVM во время установки Debian Хрипящее cryptsetup-мусорное-ведро пакетов установок, libcryptsetup4
и lvm2
но нет cryptsetup
, таким образом у Вас есть инструменты для установки устройств LVM & LUKS, но не сценариев, необходимых для монтирования устройств LUKS во время начальной загрузки. Существовавшие пакета cryptsetup.
Похоже, что ответ @Mikhail Morfikov касается монтирования на этапе initramfs . Альтернативой (, если это не корневая файловая система ), является автоматическое расшифрование и монтирование раздела через systemd после загрузки ядра linuz. Конечно, это возможно, только если вы используете systemd . Я объясню метод здесь:
Запись /etc/crypttab
:
crypt2 UUID=e412-blahblah /path/to/crypt2.key luks,noauto
Здесь noauto
— это инструкция , а не , чтобы попытаться расшифровать диск на этапе initramfs .
Выше e412-blahblah
— это UUID раздела, содержащего систему luks, в моем случае это раздел /dev/sdb2
:
# blkid | grep sdb2
/dev/sdb2: UUID="e41274d8-fd83-4632-b560-ad0ba113ae75" TYPE="crypto_LUKS" PARTUUID="5673a908-02"
Во время запуска ядра linuz systemd прочитает файл /etc/crypttab
и создаст файл службы времени выполнения /run/systemd/generator/systemd-cryptsetup@crypt2.service
. Однако эта служба не запускается автоматически.Вы можете запустить его вручную
systemctl start systemd-cryptsetup@crypt2.service
но для его расшифровки и последующего монтирования во время запуска /etc/fstab
может потребоваться следующим образом:
/dev/mapper/crypt2--vg-data /media/crypt-data ext4 defaults,noauto,user,x-systemd.automount,x-systemd.requires=systemd-cryptsetup@crypt2.service 0 2
Здесь x-systemd.automount
— инструкция systemd для монтирования /media/crypt-data
, а x-systemd.requires=systemd-cryptsetup@crypt2.service
— инструкция systemd о том, что требуется расшифровка crypt2
перед тем, как это будет возможно.
В systemd не будет фактически монтировать каталог до первого обращения к нему, например. ls /media/crypt-data
, то он смонтируется только -за -раз и после этого появится в /proc/mounts
.
Связанные
Вы можете спросить: «*зачем зашифрованный диск данных с ключом в корневой файловой системе?». Это потому, что корневая файловая система также зашифрована, поэтому ключ в безопасности. Корневая файловая система расшифровывается на этапе загрузки initramfs , а-ля ответ Михаила. У меня есть другая запись в файле /etc/crypttab
для этого :
crypt1 UUID=8cda-blahbalh none luks,discard,lvm=crypt1--vg-root
и я описываю настройку этого и загрузочного USB здесь
Кроме того, :В системах на основе Debian -перед выполнением команды update-initramfs
убедитесь, что пакет cryptsetup-initramfs
установлен. Если нет, сначала установите его:
apt-get install -y cryptsetup-initramfs
UUID
но я получаю ту же ошибку. Я обновлю вопрос с деталями. – pgpb.padilla 04.01.2014, 23:48