事情的起因在於:
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 -r
orcat /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