Ubuntu 16.04 誤刪內核后的系統恢復


事情的起因在於:
Ubuntu系統更新的時候提示空間不足,同事刪除了/boot目錄下的舊版內核文件,果然完事之后空間有了,更新成功了,事后一直沒有關機,后來一次重啟,發現系統grub界面無進入Ubuntu選項,反復陷入了無限Memtest+86的過程,無法進入系統 . . .

誤刪除的具體操作

cd /boot
sudo rm -rf vmlinuz-4.4.0-1* System.map-4.4.0-1* abi-4.4.0-1* initrd-4.4.0-1* config-4.4.0-1*
sudo apt-get -f purge linux-image-extra-4.4.0-1*
sudo apt autoremove

解決方式

提示:如果空間不足要清理調多余的內核版本一定要留下正在運行的那個。可通過uname -rorcat /proc/version查看正在運行的內核版本。

  • 制作同源的系統啟動盤,掛載原系統,加載低版本內核
  • 通過U盤(系統啟動盤)開機進入系統
#切換root用戶
sudo su

#查看磁盤分區,確定 boot與根“/”目錄的磁盤分區
fdisk -l

#創建掛載臨時文件夾
mkdir /tmp/ubuntu

#掛載根目錄 ,我的“/”目錄為/dev/sda6
mount /dev/sda6 /tmp/ubuntu

#掛載boot目錄,我的boot目錄在/dev/sdb5
cd /tmp/ubuntu 
mount /dev/sdb5 boot

#鏈接,磁盤文件系統文件掛載到對應的位置
mount --bind /dev dev
mount --bind /sys sys
mount --bind /proc proc

#網絡配置
cp /etc/resolv.conf /tmp/ubuntu/etc/resolv.conf
#根據實際情況修改網卡配置文件
/tmp/ubuntu/etc/network/interfaces

#進入掛載系統
chroot /tmp/ubuntu

# 查看原系統使用的內核版本
uname -r

#更新內核(也可安裝指定內核版本)及grub(需要連接網絡安裝,保證網卡配置正確)
apt-get install linux-generic
apt-get update 
update-grub

拔掉U盤(系統啟動盤)重啟服務器,正常進入Ubuntu界面,完成


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM