https://parrotsec-cn.org/t/initramfs/553
開機進入initramfs模式的解決辦法
系統安裝/使用問題
0x00前言
我相信,有非常多的使用者在使用 Linux 的過程中時不時會遇到開機時進入 initramfs
模式的情況,例如我就遇到不少次了。一般遇到這種情況,我們束手無策,只能重灌系統。可總重灌也不是個辦法,於是我就去問了度娘,度娘告訴我開機會進入 initramfs
的原因是
- 沒正常關機導致的磁碟損壞 #大部分情況下
- 檔案系統無法正常掛載 #我通常遇到的情況
0x01解決辦法
1、沒正常關機導致的磁碟損壞
我們需要
- Live模式啟動盤一個or一個Linux系統
進入Live模式,開啟終端
使用 blkid
或者 fdisk
檢視你的分割槽
使用 fsck
來修復你的磁碟
PS:原諒我寫的如此短,畢竟我沒遇到過這種情況。如果有其他大佬有更詳細的步驟可以找我替換。謝謝~
2、檔案系統無法正常掛載
首先,使用 blkid
來檢視我們有哪些磁碟和分割槽(因為在initramfs沒有fdisk)
blkid
假設你已經知道了你的 /
在 /dev/sdb1
, /boot
在 /dev/sdb3
。我們需要新建一個資料夾並把對應分割槽掛載進去,注意根目錄和boot目錄不要掛反,boot目錄是在根目錄下↓的。
mkdir mnt
mount /dev/sdb1 /mnt
mount /dev/sdb3 /mnt/boot
掛載完成後我們還需要掛載一些必要資料夾以供使用
mount --bind /dev /mnt/dev
mount --bind /sys /mnt/sys
mount -t proc proc /mnt/proc
如果你還有其他分割槽,也需要掛載到對應掛載點
現在使用 chroot
命令切換到 /mnt
chroot /mnt
使用者變成 root@(none),這時你就可以和終端一樣用各種工具進行修復了。
接下來我們修改 /etc/fstab
,先把分割槽情況匯入fstab以便對照修改
blkid >> /etc/fstab
接著用你習慣的編輯器開啟對照修改 fstab
並把多餘的行刪除。
儲存退出,鍵入
sync
完成後 reboot
重啟電腦,你就可以進入系統了
其實你剛才所做的這些步驟和電腦真實開機流程相似