나는 Debian 8 Jessie를 설치하는 동안 전체 디스크 암호화 + LVM을 사용하여 모든 하드 드라이브를 암호화하려고 시도했지만 그렇게 했지만 작은 "문제"가 있었습니다.
시스템에서 디스크 잠금을 해제하기 위한 비밀번호를 묻기 전에 다음 메시지가 표시됩니다.
Loading, please wait...
[5.004102] sd 2:0:0:0: [sda] Assuming drive cache: write through
Volume group "lvm_group" not found
Skipping volume group lvm_group
Unable to find LVM volume lvm_group/root
Volume group "lvm_group" not found
Skipping volume group lvm_group
Unable to find LVM volume lvm_group/swap
Please unlock disk sda5_crypt:
하지만 비밀번호를 입력하고 Enter 키를 누르면 시스템이 문제 없이 성공적으로 부팅됩니다. 이유를 모르겠습니다.
다른 포럼이나 기사/매뉴얼에서 비슷한 문제가 있는 사람을 몇 명 찾았는데, 제가 찾은 사람은 "LVM 볼륨을 찾을 수 없습니다." 메시지가 나타난 후 부팅할 수 없지만, 비밀번호.
내 파일 시스템 테이블:
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
/dev/mapper/lvm_group-root / ext4 errors=remount-ro 0 1
# /boot was on /dev/sda1 during installation
UUID=4f7e12ab-84d3-4715-bab4-62cf5033ca8a /boot ext4 defaults 0 2
/dev/mapper/lvm_group-home /home ext4 defaults 0 2
/dev/mapper/lvm_group-swap none swap sw 0 0
/dev/sr0 /media/cdrom0 udf,iso9660 user,noauto 0 0
내 비밀번호 테이블:
sda5_crypt UUID=21feadfc-72e7-4a2c-b5f2-0c9ca3137b03 none luks
내 /proc/cmdline:
BOOT_IMAGE=/vmlinuz-3.16.0-4-amd64 root=/dev/mapper/lvm_group-root ro quiet
그러면 어떻게 문제를 해결하고 이러한 메시지를 피할 수 있습니까? 나는 모든 것을 시도한 것처럼 느낍니다.
답변1
이는 버그가 아니므로 이를 없애려고 노력해서는 안 됩니다.
initramfs의 스크립트는 암호화된 장치를 해독하기 위해 암호를 요구하기 전에 루트 장치가 포함된 LVM VG가 활성화될 수 있는지 확인할 기회를 갖습니다. 이는 루트 장치가 암호화되지 않고 시스템이 즉시 계속 부팅되는 경우에 작동합니다. 그렇지 않으면 암호화된 장치의 암호를 해독하기 위해 비밀번호를 입력할 수 있는 기회가 제공되며 VG에 다시 액세스하려고 시도합니다. 바라보다:
/usr/share/initramfs-tools/scripts/local-top/lvm2
/usr/share/initramfs-tools/scripts/local-top/cryptroot
activate_vg()
특히 각 스크립트 내의 기능.
답변2
DuckDuckGo를 통해 이 페이지를 찾아주신 여러분을 위해.
이것은 데비안의 오랜 버그입니다(외관적인 버그이기는 하지만). 이 버그 보고서를 확인하세요.https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=544651
귀찮다면 다음과 같이 패치하세요.
--- /usr/share/initramfs-tools/scripts/local-top/lvm2 2017-03-17 19:03:07.000000000 +0300
+++ /etc/initramfs-tools/scripts/local-top/lvm2 2019-08-17 17:40:29.371725145 +0300
@@ -20,7 +20,15 @@
fi
.
lvchange_activate() {
- lvm lvchange -aay -y --sysinit --ignoreskippedcluster "$@"
+ # Workaround for making LVM less noisy.
+ # See: https://groups.google.com/forum/#!topic/linux.debian.bugs.dist/iAAVTXslawQ ("Bug#799295: lvm2: Errors about lvmetad on boot")
+ if grep -sqw "quiet" /proc/cmdline; then
+ mkdir -p /run/log
+ echo "Running script '$0' on $(date)" >> /run/log/initrd-lvm.log 2>&1
+ lvm lvchange -aay -y --sysinit --ignoreskippedcluster "$@" >> /run/log/initrd-lvm.log 2>&1
+ else
+ lvm lvchange -aay -y --sysinit --ignoreskippedcluster "$@"
+ fi
}
.
activate() {
기본적으로 /usr/share/initramfs-tools/scripts/local-top/lvm2를 /etc/initramfs-tools/scripts/local-top/lvm2에 복사하고 패치한 다음(예: 위의 패치 또는 유사한 항목 사용) 추가합니다. quiet
커널 명령줄 매개변수.
initramfs를 다시 빌드하세요.
재시작.
즐기다:)