начиная с Debian dracut -core 044+243 -3, /usr/lib/dracut/modules.d/90crypt/module -setup.sh:
require_any_binary $systemdutildir/systemd-cryptsetup cryptsetup || return 1
поэтому dracut сначала пытается включить /lib/systemd/systemd -cryptsetup, если первый не существует, включить /sbin/cryptsetup, если ни то, ни другое не удается.
каждый из них предоставляется cryptsetup -bin 2 :2.1.0 -5 и systemd 241 -1 соответственно.
Использование /lib/systemd/systemd -cryptsetup отличается от использования /sbin/cryptsetup. действительно, у него меньше функциональности:
systemd-cryptsetup attach VOLUME SOURCEDEVICE [PASSWORD] [OPTIONS]
systemd-cryptsetup detach VOLUME
Attaches or detaches an encrypted block device.
See the systemd-cryptsetup@.service(8) man page for details.
поэтому мы можем захотеть включить /sbin/cryptsetup с помощью
dracut --install "/sbin/cryptsetup" /boot/initrd.1 4.19.0-5-amd64
или в /etc/dracut.conf.d/XXX
install_items+="/sbin/cryptsetup"
Существуют также переключатели «включить», которые копируют только сам файл, в то время как переключатели «установить» также копируют динамические библиотеки.
наконец, проверим включение:lsinitrd /boot/initrd.1
.
выход (возможно с|grep cryptsetup
):
-rwxr-xr-x 1 root root 47152 Jul 3 09:10 sbin/cryptsetup
-rw-r--r-- 1 root root 363920 Feb 9 07:40 lib/x86_64-linux-gnu/libcryptsetup.so.12.4.0
Окружение, которое у вас есть, кажется, не понимает metadata_csum
. Вы можете попытаться вручную отключить в среде ПК с помощью
tune2fs -O metadata_csum