나는 무엇을 하고 싶은가?

나는 무엇을 하고 싶은가?

나는 무엇을 하고 싶은가?

LVM을 사용하여 외부 하드 드라이브(sdb)의 LUKS 위에 전체 시스템 암호화(부팅 및 미디어 파티션 없음)로 Arch를 설치하려면 다음을 사용하십시오.http://suddenkernelpanic.blogspot.com/2013/03/arch-linux-lvm-on-top-of-luks-2013-style.html

내 질문은 무엇입니까?

시스템이 grub을 부팅하고 루트를 찾을 수 있는 위치에 대해 약간의 혼란이 있는 것 같습니다.

오류: 'uuid=f7153c4b-e6ea-48a2-9ee1-bf38c037173d' 장치를 찾을 수 없습니다. fsck 건너뛰기

오류: 루트 장치 'uuid=f7153c4b-e6ea-48a2-9ee1-bf38c037173d'를 찾을 수 없습니다.

이 튜토리얼에서 내가 벗어나는 부분

  1. 튜토리얼에서 제안한 대로 Syslinux 대신 Grub을 사용했는데(고착점이었던 것 같음) Grub 솔루션은 정말 모호했습니다.

  2. 내 파티션 구성표는 암호화에 참여하지 않는 추가 FAT32 파티션으로 구성되어 있습니다(질문과 관련이 없는 것 같습니다).

/etc/default/grub의 문제:

(이게 문제인거같은데)

내가 읽은 내용에 따르면 이 파일에는 구체적으로 업데이트해야 할 몇 가지 위치가 있습니다.

GRUB_CMDLINE_LINUX="root=/dev/mapper/lvmpool-root cryptdevice=/dev/sdb2:crypt ro"

주석을 제거해야 합니다:

GRUB_DISABLE_LINUX_UUID=true

질문/etc/mkinitcpio.conf

다음과 같이 후크를 추가해야 합니다.

HOOKS="... encrypt lvm2 ... filesystems ..."

이것은 내 루트 fstab 항목입니다.

<filesystem>
/dev/mapper/lvmpool-root                                                 
UUID=f7153c4b-e6ea-48a2-9ee1-bf38c037173d / ext4 rw,relatime,data=ordered   0 1

현재 해결 방법

오류가 발생하면 복구 셸로 이동하여 간단하게 다음과 같은 작업을 수행할 수 있으므로 계속 시스템을 사용할 수 있습니다.

cryptsetup luksOpen /dev/sdb2 crypt 
enter password

그런 다음 복구 쉘을 종료하면 일반 아치 로그인 프롬프트로 돌아갑니다. 시간만 많이 걸리지 않았다면 나쁘지 않을 텐데... (시작할 때 항상 오류가 발생합니다. 20초 정도)

내가 시도한 다른 리소스

나는 또한 다음을 사용했습니다.

  • wiki.archlinux.org/index.php/Beginners%27_guide

  • wiki.archlinux.org/index.php/Gr… 암호화

  • wiki.archlinux.org/index.php/Dm…oot_loader

  • wiki.archlinux.org/index.php/Dm… VM_on_LUKS

답변1

:crypt문제는 볼륨 그룹이 되는 것과 볼륨 그룹 이름을 루트 매개변수로 /dev/sdb2사용하는 것의 차이인 것 같습니다 .lvmpool-

GRUB_CMDLINE_LINUX="root=/dev/mapper/lvmpool-root cryptdevice=/dev/sdb2:crypt ro"

이 예여기:

cryptdevice=/dev/partition:MyStorage root=/dev/mapper/MyStorage-rootvol

:MyStorage일치하는 금액이 있습니다 MyStorage-. 저것페이지특히 grubSyslinux가 아닌 경우 LVM은 LUKS 위에 위치합니다. 그래서 저는 이 설정을 따르겠습니다.

암호화되지 않은 추가 파티션이 있다는 것은 중요하지 않습니다.

답변2

위의 답변에 대해 Anthon에게 감사드립니다. 제 문제를 해결하는 데 많은 도움이 되었습니다.

내 문제에 대한 해결책은 두 부분으로 나누어진 것 같습니다.

  1. /etc/default/grub의 항목은 다음과 같아야 합니다.

    GRUB_CMDLINE_LINUX="cryptdevice=/dev/sdb2:lvmpool 루트=/dev/mapper/lvmpool-root"

각 항목을 분류합니다.

cryptdevice는 또한 암호화를 적용하는 파티션으로 구성됩니다. 제 경우에는 /dev/sdb2 및 lvmpool(내 볼륨 그룹)입니다.

루트는 암호화된 루트 lvmpool(sdb2에 있음)의 위치를 ​​가리킵니다.

  1. 입력이 완료되면(이것은 나에게 심각한 오류였습니다) 다음을 실행해야 합니다.

    grub-mkconfig -o /boot/grub/grub.cfg

그러면 /etc/default/grub에 추가한 정보로 /boot/grub/grub.cfg가 업데이트됩니다.

이 작업을 완료하면 시스템이 직접 부팅되고 루트 파티션 잠금을 해제하라는 메시지가 표시됩니다.

답변3

포함하다mkinitcpio.conf

MODULES="dm_mod dm_crypt ext4 aes_x86_64 sha256 sha512"

HOOKS="... encrypt lvm2 ..."

포함하다/etc/default/grub

GRUB_CMDLINE_LINUX_DEFAULT="... quiet "

GRUB_CMDLINE_LINUX="cryptdevice=/dev/sdX:name"

GRUB_ENABLE_CRYPTODISK="y"

실행 명령:

sudo mkinitcpio -p linux

sudo grub-mkconfig -o /boot/grub/grub.cfg

sudo grub-install --recheck --target=i386-pc /dev/sda

sudo pacman -S linux linux-headers 

관련 정보