처음으로 Arch Linux를 설치하고 UEFI 부팅 프로세스를 설정하려고 시도했지만 어딘가에서 실패한 것 같습니다. 부팅할 때 해당 옵션이 있는 부팅 메뉴가 표시되지만 선택하면 할 수 있다는 Arch Linux
메시지가 나타납니다 . /vmlinuz-linux:Not Found
부팅할 커널을 찾을 수 없습니다. 아래 지침을 따랐습니다.https://wiki.archlinux.org/index.php/Installation_guide하지만 어딘가에서 문제가 발생했을 것입니다.
이 문제를 어떻게 해결할 수 있나요?
파티션 레이아웃:
/dev/sda1 EFI System (512M)
/dev/sda2 Linux fs (244M)
/dev/sda3 Linux fs (1M)
/dev/sda4 Linux fs (465G)
/etc/fstab
:
#/dev/sda4
UUID=41d8483f-0d29-4234-bf1e-3c55346b5667 / ext4 rw,realtime,data=unordered 0 1
esp
로 설정되어 있습니다/boot/
편집 1
아 예, 문제 해결을 위해 언제든지 USB 썸 드라이브로 부팅할 수 있습니다...,
편집 2
이해합니다. /boot/loder/entries/arch.conf
제 모습은 이렇습니다.
title Arch Linux
linux /vmlinuz-linux
initrd /initramfs-linux.img
options root=PARTUUID=41d8483f-0d29-4234-bf1e-3c55346b5667 rw
/
하지만 내 디렉토리에는 파일이 전혀 없습니다. 이것이 문제가 될 수 있습니까?
답변1
부팅 가능한 USB Arch-linux로 부팅하고 모든 파티션을 마운트한 후 chroot
시스템으로 들어갑니다.
말했듯이제이슨 라이언:
ESP를 설치해야 합니다.
/boot
먼저 efi
폴더를 만듭니다.
mkdir /boot/efi
마운트 esp
파티션
mount /dev/sda1 /boot/efi
추가해야 하는 마운트 지점을 확인합니다 /etc/fstab
.esp
fstab
새 하위 디렉터리 만들기/boot/efi/EFI/arch/
mkdir -p /boot/efi/EFI/arch/
이동 /boot/vmlinuz-linux
및 :initramfs-linux.img
initramfs-linux-fallback.img
cp /boot/vmlinuz-linux /boot/efi/EFI/arch/vmlinuz-linux.efi
cp /boot/initramfs-linux.img /boot/initramfs-linux-fallback.img /boot/efi/EFI/arch
GRUB를 실행 mkinitcpio -p linux
하고 업데이트합니다.
grub-mkconfig -o /boot/grub/grub.cfg
`
답변2
GAD3R의 답변은 grub에서는 작동하지만 사용 중인 systemd-boot에서는 작동하지 않을 수 있습니다. 문제는 간단해 보입니다. UUID는 41d8입니다. 그러나 옵션에서는 다른 ID가 될 PARTUUID를 지정합니다.
간단한 수정은 arch.conf의 옵션을 root=UUID=41d... 등으로 변경하는 것입니다.
방법은 간단하고 잘 작동합니다.
파일이나 디렉토리에는 문제가 없습니다. 참조된 linux 및 initrd 파일은 "/" 즉 41d... 파티션에 있어서는 안 됩니다. 이는 디렉토리(arch.conf 버전 포함)가 아닌 최상위 efi 파티션에 있어야 합니다. 예를 들어 "linux" 지시문은 "/"에 있음을 나타내기 때문에 혼란스럽습니다. 그러나 이는 os 파티션이 아닌 efi 파티션의 최상위 수준을 나타냅니다. efi 파티션을 운영 체제의 비어 있는 /boot 디렉토리에 마운트한 후에는 /boot 디렉토리에 해당 파티션이 표시되어야 합니다(41d... 파티션으로 루팅된 경우).
또는 다른 커널을 포함할 수 있는 다른 버전의 Arch가 있는 경우 uname -r을 사용하여 커널 버전을 찾은 다음 이것이 4.19.66-1-lts인 경우 mkdir /boot/4.19.66-1-lts 이 두 파일을 /boot에서 /boot/4.19.66-1-lts로 이동하고 특정 arch.conf를 linux /4.19.66-1-lts/vmlinuz-linux로 변경합니다.
나는 이것을 내 것으로 해왔지만 아직 다른 커널을 제자리에 두지 않았습니다.