부팅 시 LUKS 파티션 자동 마운트가 실패함

부팅 시 LUKS 파티션 자동 마운트가 실패함

암호화된 Ubuntu 14.04 데스크탑 설정이 있습니다. 암호화된 루트 파티션은 Ubuntu 설치 프로그램 기본 매개변수("디스크 지우기 및 Ubuntu 설치" 및 "새 Ubuntu 설치 암호화" 선택)를 사용하여 생성됩니다. 이 부분은 잘 작동합니다(부팅 시 비밀번호를 묻고 루트 및 스왑 파티션을 엽니다).

나중에 루트 파티션에 저장된 키 파일로 별도로 암호화된 두 번째 드라이브를 추가했습니다. 의도는 루트 파티션이 열리자마자 자동으로 열리도록 하는 것이었습니다. 이를 위해 두 번째 드라이브는 crypttab(UUID 기준)에 추가되었고 암호화된 파일 시스템은 fstab(레이블별, 마운트 지점 기준 /stg)에 추가되었습니다.

부팅 시 기본 암호 해독 비밀번호를 입력하면 다음과 같은 결과가 나타납니다./stg를 마운트하는 동안 오류가 발생했습니다. 마운트를 건너뛰려면 S를 누르고, 수동 복구를 하려면 M을 누르세요..

이상한 점은 누르면간단히 실행하면 mount -a성공적으로 마운트됩니다. 에서 의심스러운 점은 보이지 않습니다 /var/log/syslog.

그게 무슨 일이야? 문제를 진단하려면 무엇을 확인할 수 있나요?


[UPD - 세부정보 추가]드라이브에는 sdb하나의 파티션이 있는 MBR 파티션 테이블이 있습니다. 암호화된 파일 시스템은 다음 명령을 사용하여 초기화되었습니다.

cryptsetup luksFormat /dev/sdb1 /root/stg.key
cryptsetup luksOpen /dev/sdb1 stg_crypt -d/root/stg.key
mkfs.ext4 /dev/mapper/stg_crypt -Lstg-tmp

/etc/crypttab(간결함을 위해 실제 uuid는 "uuid-of-..." 텍스트로 대체됨):

# this entry was created by Ubuntu installer
sda5_crypt UUID=uuid-of-sda5 none luks,discard

# this entry was added by me
stg_crypt  UUID=uuid-of-sdb1 /root/stg.key luks,discard

/etc/fstab:

# these entries were created by Ubuntu installer
/dev/mapper/ubuntu--vg-root   /      ext4 errors=remount-ro 0 1
UUID=uuid-of-sda1             /boot  ext2 defaults          0 2
/dev/mapper/ubuntu--vg-swap_1 none   swap sw                0 0

# this entry was added by me
LABEL=stg-tmp                 /stg   ext4 errors=remount-ro 1 2

답변1

재미있게도 레이블 참조를 fstab장치 경로로 바꾸면 문제가 해결됩니다! 즉: LABEL=stg-tmp로 변경되었습니다 /dev/mapper/stg_crypt.

UUID 참조도 시도했지만 작동하지 않았습니다. 따라서 부팅 중 LABEL 및 UUID 참조는 물리적 파티션에서는 작동하지만 암호화된 파티션에서는 작동하지 않습니다. 그러나 그들은 mount -a모든 파티션에서 작동합니다 .

솔루션이 진행됨에 따라 이는 매우 만족스럽지 않지만(예: 설명이 부족함) 당면한 문제를 해결하므로 지금은 괜찮은 것 같습니다.

답변2

첫 번째 생각은 inramfs가 키 파일을 볼 수 없다는 것입니다(정상 동작).

몇 가지 수정 사항은 다음과 같습니다:

여기에 언급된 것처럼 /stg에 대한 대체 암호 문구를 추가/생성합니다.

Luks에 대체 추가 (대체 암호 문구 추가 섹션까지 아래로 스크롤)

dd if=/dev/usbkey bs=512 건너뛰기=4 count=8 추가 | cryptsetup luksOpen /dev/md0 luksVolume --key-file=- && 마운트 /dev/mapper/luksVolume /mnt/

생성 시 또는 cryptsetup-reencrypt 사용 시(저장소에 있지만 기본적으로 설치되지 않음)

관련 정보