GUID 파티션 장치의 LUKS에 있는 LVM Thin LV에 Arch Linux 루트 파일 시스템을 설치하는 방법은 무엇입니까?

GUID 파티션 장치의 LUKS에 있는 LVM Thin LV에 Arch Linux 루트 파일 시스템을 설치하는 방법은 무엇입니까?

GUID 파티션 장치의 LUKS 암호화 파티션에 있는 LVM 씬 프로비저닝 논리 볼륨에 루트 파일 시스템이 있는 새로 설치된 Arch Linux 시스템을 부팅할 수 없습니다.

Systemd의 부트 로더가 systemd-boot내 부팅 항목을 로드할 때 Arch LinuxLUKS 암호화 파티션의 비밀번호를 묻지만 10초 후에 Arch Linux 루트 파일 시스템이 있는 LVM 볼륨 그룹을 활성화하지 못합니다. 결국 그것은 나를 구조 쉘에 던졌습니다 rootfs.

Arch Linux로 달성하려는 것을 달성하고 싶다면 어떤 아이디어가 있습니까?

알아채다저는 Arch Linux를 처음 접했기 때문에 특정 저장소 구성에 Arch Linux 시스템을 설치하는 것과 관련된 모든 Arch Wiki 기사를 주의 깊게 읽었습니다.

제가 특별히 구성한 시작 항목 Arch Linux( /boot/loader/entries/arch.conf)은 다음과 같습니다.

title Arch Linux
linux /vmlinuz-linux
initrd /initramfs-linux.img
options cryptdevice=PARTUUID=<of /dev/sda3>:system root=UUID=<of /dev/system/arch.root> rootfstype=ext4 add_efi_memmap

완전성을 기하기 위해 저장 장치를 구성한 방법의 요지는 다음과 같습니다.

$ parted —align optimal
(parted) unit MiB
(parted) select /dev/sda
(parted) mklabel gpt
(parted) mkpart primary 1 2
(parted) name 1 bios
(parted) set 1 bios_grub on
(parted) mkpart primary 2 1026
(parted) name 2 uefi
(parted) set 2 boot on
(parted) mkpart primary 1026 103426
(parted) name 3 system
(parted) quit
$ mkfs -t vfat -n UEFI -F 32 /dev/sda2
$ cryptsetup luksFormat —hash sha512 —cipher aes-xts-plain64  —key-size 512 /dev/sda3
$ cryptsetup open /dev/sda3 system
$ pvcreate /dev/mapper/system
$ vgcreate system /dev/mapper/system
$ lvcreate —type thin-pool —name pool —size 75G system
$ lvcreate —type thin —name swap —virtualsize 4G —thinpool system/pool
$ mkswap -L swap /dev/system/swap
$ lvcreate —type thin —name arch.root —virtualsize 20G —thinpool system/pool
$ mkfs -t ext4 -L arch.root /dev/system/arch.root

답변1

Arch Linux의 초기 RAM 파일 시스템 단계에서 후크가 씬 프로비저닝된 논리 볼륨을 활성화할 수 없는 lvm2후 후크가 실행되는 것으로 보입니다.encrypt

내 질문에 설명된 것과 동일한 스토리지 구성을 사용하면 씬 프로비저닝된 볼륨이 아닌 일반 논리 볼륨이라는 점을 제외하고 이러한 볼륨을 포함하는 볼륨 그룹이 문제 없이 활성화됩니다.이 변경으로 Arch Linux가 성공적으로 시작됩니다.

따라서 씬 논리 볼륨을 생성하지 마십시오.

$ lvcreate —type thin-pool —name pool —size 75G system
$ lvcreate —type thin —name swap —virtualsize 4G —thinpool system/pool
$ mkswap -L swap /dev/system/swap
$ lvcreate —type thin —name arch.root —virtualsize 20G —thinpool system/pool
$ mkfs -t ext4 -L arch.root /dev/system/arch.root

일반 논리 볼륨을 생성해야 합니다.

$ lvcreate —name swap —size 4G system
$ mkswap -L swap /dev/system/swap
$ lvcreate —name arch.root —size 20G system
$ mkfs -t ext4 -L arch.root /dev/system/arch.root

관련 정보