我們在學習linux知識的時候經常會需要查看Linux源代碼、編譯linux內核那些,當我們發現無用的linux內核時就需要刪除,那么你知道Ubuntu系統下如何刪除無用的Linux內核嗎?
查找無用的鏡像
使用Ubuntu一段時間后,就會發覺由于自動升級,系統里安裝了很多內核。始終用不到的舊內核有必要清理一下,以節省啟動時間和硬盤空間。
首先可查看當前用的內核是哪個,可通過命令:uname -a 來獲得信息。例如我臺式機上顯示為:
?
Linux magc-desktop 2.6.24-19-rt #1 SMP PREEMPT RT Thu Aug 21 02:08:03 UTC 2008 i686 GNU/Linux
?
然后通過查看本機上所有內核的列表來決定哪些需要刪除掉:
運行命令:
例如我本機顯示為:
?
libselinux1 install
linux-generic install
linux-headers-2.6.24-19 install
linux-headers-2.6.24-19-generic install
linux-headers-2.6.24-19-rt install
linux-headers-2.6.24-21 install
linux-headers-2.6.24-21-generic install
linux-headers-2.6.24-21-rt install
linux-headers-generic install
linux-headers-rt install
linux-image-2.6.24-19-generic deinstall
linux-image-2.6.24-19-rt install
linux-image-2.6.24-21-generic install
linux-image-generic install
linux-image-rt install
linux-restricted-modules-2.6.24-19-generic deinstall
linux-restricted-modules-2.6.24-19-rt install
linux-restricted-modules-2.6.24-21-generic install
linux-restricted-modules-common install
linux-restricted-modules-generic install
linux-restricted-modules-rt install
linux-rt install
linux-sound-base install
linux-ubuntu-modules-2.6.24-19-generic deinstall
linux-ubuntu-modules-2.6.24-19-rt install
linux-ubuntu-modules-2.6.24-21-generic install
util-linux install
util-linux-locales install
其中帶有image的就是內核文件,因此可看出我的機器上共五個內核版本。我當前使用的是2.6.24-19-rt,所以決定將其它沒用的內核刪除。
?
如何清理舊內核鏡像
在刪除舊內核之前,記住最好留有2個最近的內核(最新的和上一個版本),以防主要的版本出錯?,F在就讓我們看看如何在Ubuntu上清理舊內核。
在Ubuntu內核鏡像包含了以下的包。
linux-image-: 內核鏡像
linux-image-extra-: 額外的內核模塊
linux-headers-: 內核頭文件
首先檢查系統中安裝的內核鏡像。
?
在列出的內核鏡像中,你可以移除一個特定的版本(比如3.19.0-15)。
?
?
?
?
上面的命令會刪除內核鏡像和它相關聯的內核模塊和頭文件。
?
注意如果你還沒有升級內核那么刪除舊內核會自動觸發安裝新內核。這樣在刪除舊內核之后,GRUB配置會自動升級來移除GRUB菜單中相關GRUB入口。
如果你有很多沒用的內核,你可以用shell表達式來一次性地刪除多個內核。注意這個括號表達式只在bash或者兼容的shell中才有效。
?
面的命令會刪除4個內核鏡像:3.19.0-18、3.19.0-20、3.19.0-21 和 3.19.0-25。
?
如果GRUB配置由于任何原因在刪除舊內核后沒有正確升級,你可以嘗試手動用update-grub2命令來更新配置。
?
現在就重啟來驗證GRUB菜單是否已經正確清理了。
這篇文章主要介紹了Ubuntu系統下如何刪除無用的Linux內核的內容,因為Linux更新內核后沒有CCleaner工具來清理所以只能用這個方法。
新聞熱點
疑難解答
圖片精選