Boot

Linux 無法啟動,arch 核心損壞,如何修復?

  • January 21, 2021

我正在執行最新版本的 Arch linux。

我正在做一個 pacman 更新,並在更新期間以某種方式關閉了終端。

現在重新啟動後它不會啟動。

開機畫面顯示

正在載入 Linux linux …

正在載入 initil ramdisk …

錯誤:找不到文件 /boot/initramfs-linux.img

按任意鍵繼續 …

筆記型電腦僅此而已。

我認為我在筆記型電腦上的分區是

/dev/sda1 /boot/efi 300MB

/dev/sda2 ext4 214.47GB

/dev/sda3 linux-swap 8.8GB

但我並不完全確定。

我下載了一個arch iso並在筆記型電腦上實時啟動,然後這樣做了

mount /dev/sda2 /mnt
arch-chroot /mnt

並看到它/boot/initramfs-linux.img似乎不見了。

但我不確定該怎麼做。

我怎樣才能確定我有哪些分區,以及如何安裝這些​​分區,那麼修復步驟是什麼?

它是固定的。這是我修復它的方法。

1. 在可啟動的 U 盤上使用 live arch

一個。將工作實時拱安裝下載到工作電腦。

最快的是從這裡下載種子https://archlinux.org/download/

灣。使用 gparted 辨識正確的寫入設備 /dev/sdX。

將 live arch 寫入 U 盤

sudo dd bs=4M if=/home/kes/Downloads/archlinux-2021.01.01-x86_64.iso of=/dev/sdb

C。用 U 盤啟動損壞的筆記型電腦

2. 在筆記型電腦上上網

Wifi 菜單已在損壞的筆記型電腦上預先配置,因此無法正常工作。

插入乙太網電纜並重新啟動。

pacman -Syy現在正在工作

3. 辨識正確的掛載點

一個。用過的

lsblk

辨識掛載點。

灣。將根分區標識為/dev/sda2ie/後,可以看到/etc/fstab文件系統表,其中詳細說明了系統上的所有其他掛載點。/etc/fstab是要查看的文本文件,它將顯示您的其他掛載點在哪裡

C。還能夠檢查另一台相同建構的筆記型電腦上的安裝點,如下所示

findmnt /dev/sda1

目標源 FSTYPE 選項 /boot/efi /dev/sda1 vfat

rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro

findmnt /dev/sda2

目標源 FSTYPE 選項 / /dev/sda2 ext4

rw,noatime,discard

4.掛載掛載點,Chrooting和重新載入linux核心

mount /dev/sda2 /mnt
mkdir -p /mnt/boot/efi
mount /dev/sda1 /mnt/boot/efi

arch-chroot /mnt

sudo pacman -Syy
sudo pacman -S linux

5. 最後

關閉筆記型電腦,拔出USB記憶棒,拔出乙太網電纜,重新打開它,它又可以工作了!

引用自:https://unix.stackexchange.com/questions/630207