安裝了 Arch Linux 但無法啟動

安裝了 Arch Linux 但無法啟動

我第一次安裝了 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點。espfstab

建立一個新的子目錄/boot/efi/EFI/arch/

mkdir -p /boot/efi/EFI/arch/

移動/boot/vmlinuz-linuxinitramfs-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

運行mkinitcpio -p linux然後更新 GRUB:

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

`

答案2

GAD3R 答案可能適用於 grub,但不適用於您正在使用的 systemd-boot。問題似乎很簡單,您的 UUID 是 41d8...但您的選項指定了 PARTUUID,這將是一個不同的 ID。

簡單的更正是在 arch.conf 中將選項更改為 root=UUID=41d... 等

該方法簡單且效果良好。

文件或目錄沒有問題。引用的 linux 和 initrd 檔案根本不應該位於您的「/」即 41d... 分割區中。它們應該位於頂層的 efi 分割區中,而不是位於目錄中(使用您的 arch.conf 版本)。這很令人困惑,因為例如“linux”指令指示它們在“/”中找到,但這指的是efi分區的頂層,而不是os分區。將您的 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

我已經用我的做到了這一點,但還沒有到位不同的核心。

相關內容