Debian Linux 서버를 부팅하는 데 문제가 있습니다. 시스템 업데이트 후 GRUB는 initrd를 로드하고 시스템은 비밀번호를 요청해야 하지만 그렇지 않습니다. 대신 BusyBox로 이동합니다. 를 사용하여 암호화된 볼륨을 수동으로 마운트하려고 하면 cryptsetup luksOpen
다음 오류가 발생합니다.
device-mapper: table: 254:0: crypt: Error allocating crypto tfm
device-mapper: reload ioctl failed: Invalid argument
Failed to setup dm-crypt key mapping for device /dev/sda3
Check that the kernel supports aes-cbc-essiv:sha256 cipher (check syslog for more info).
답변1
귀하의 커널은 aes-cbc-essiv:sha256
. "암호 tfm 할당 오류"는 커널의 암호화 하위 시스템을 나타냅니다. 일부 필수 암호화 데이터 구조를 초기화할 수 없습니다. 암호화 알고리즘에 대한 지원은 모듈로 제공되며 AES 알고리즘용 모듈과 SHA-256 알고리즘용 모듈이 있지만 CBC 모드용 모듈은 없습니다. 이 장치가 없으면 암호화된 장치를 마운트할 수 없습니다.
자체 커널을 컴파일한 경우 필요한 모든 암호화 알고리즘을 활성화해야 합니다. 커널이 배포판에서 나온 것이라면 보고해야 할 버그일 수 있습니다. 두 경우 모두 모듈이 있어야 합니다 /lib/modules/2.6.32-5-amd64/kernel/crypto/cbc.ko
. 모듈이 존재한다면 initramfs 생성 스크립트에 문제가 있는 것입니다.
모듈 외에도 cbc
암호화를 함께 연결하려면 다른 커널 구성 요소가 필요합니다. 커널 구성에 CRYPTO_MANAGER
, CRYPTO_RNG2
및 가 설정되어 있는지 확인하세요 . CRYPTO_BLKCIPHER2
데비안의 initramfs 구축 스크립트이것들을 처리해야 해모듈로 컴파일되더라도 마찬가지입니다. 암호화 하위 시스템은 다소 복잡하므로 initramfs 스크립트에서 누락된 다른 중요한 구성 요소가 있을 수 있습니다. 추가 도움이 필요하면 다음 토론을 읽어 보십시오.버그 #541835, 정확한 커널 버전을 게시하고 직접 컴파일한 경우 커널 구성도 게시하세요.
이 문제를 복구하려면 필수 암호화 지원이 포함된 복구 시스템에서 부팅해야 합니다. 루트 파일 시스템을 마운트 chroot
하고 mount /boot
하고 실행하여 dpkg-reconfigure linux-image-…
initramfs를 재생성합니다.