歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Ubuntu誤刪當前內核後的修復方法

Ubuntu誤刪當前內核後的修復方法

日期:2017/2/28 15:55:45   编辑:Linux教程

昨天想把Ubuntu內核升級後多余的舊內核刪除掉,可是不小心連同當前使用的內核一起刪除了。這下系統沒有了內核,更新後的grub啟動列表裡也沒有了Ubuntu。問題貌似很嚴重。這時,最佳的解決方法應該是不關機,立刻安裝新的內核。可是在那個瞬間我突然很二地想到,我要關機看看會出現什麼情況。於是關機、重啟,然後發現根本沒有任何辦法進入Ubuntu。徹底傻掉。

發現網上有些人和我遇到同樣的問題,有的直接不淡定地重裝了系統。其實還是有溫和的解決方案的。

首先進入liveCD,然後將安裝介質中的vmlinuz和initrd文件拷貝到原系統中。我所使用的是kubuntu 11.10,當初是U盤安裝的。所需要的文件在安裝U盤的casper文件夾中,名字是vmlinuz和initrd.lz。我將兩個文件拷貝到原系統的/boot中。

然後重啟,進入grub的命令行。執行下面的命令引導系統

set root=(hd0,msdos9)

linux /vmlinuz root=UUID=xxx ro locale=zh_CN quiet splash

initrd /initrd.lz

boot

其中(hd0,msdos9)是/boot掛載的分區,具體的序號因人而異。而xxx表示/分區的uuid,可以執行ls -l查看所有的分區及其對應的uuid。

現在可以正常進入系統了。然後安裝新的內核,替換掉剛才拷貝進來的山寨版。因為從安裝包拷貝進來的內核版本低,缺少部分驅動(我的聲卡驅動就有問題),而且日後更新升級可能會不正常。安裝內核的方法有兩種,一種直接從源安裝

apt-get install linux-headers-x.x.x-xx #x代表版本號

apt-get install linux-image

另一種是從官網裡下載內核的deb包進行安裝。但是我使用這種方法安裝後一直無法正常啟動,可能是下載的版本不對吧,具體原因不詳。

新內核安裝完成後重啟,系統就恢復了原樣。

最後吐個槽。當初聽說系統當前使用的內核是無法被刪除的,刪除時系統會報錯。現在發現系統確實會發出警告,可是警告後內核文件照刪不誤,這個警告的意義未免小了點吧。

Copyright © Linux教程網 All Rights Reserved