提問:過去我已經在個人Ubuntu上升級了幾回內核。如今我想要刪除這些舊的內核鏡像來節省個人磁盤空間。如何用最簡單的方法刪除Ubuntu上先前版本的內核?linux
在Ubuntu上,有幾個方法來升級內核。在Ubuntu桌面中,軟件更新容許你天天檢查並更新到最新的內核上。在Ubuntu服務器上,最爲重要的安全更新項目之一就是 unattended-upgrades 軟件包會自動更新內核。然而,你也能夠手動用apt-get或者aptitude命令來更新。shell
隨着時間的流逝,持續的內核更新會在系統中積聚大量的再也不使用的內核,浪費你的磁盤空間。每一個內核鏡像和其相關聯的模塊/頭文件會佔用200-400MB的磁盤空間,所以由再也不使用的內核而浪費的磁盤空間會快速地增長。安全
GRUB管理器爲每一箇舊內核都維護了一個GRUB入口,以備你想要使用它們bash
做爲磁盤清理的一部分,若是你再也不使用這些,你能夠考慮清理掉這些鏡像。服務器
如何清理舊內核鏡像
在刪除舊內核以前,記住最好留有2個最近的內核(最新的和上一個版本),以防主要的版本出錯。如今就讓咱們看看如何在Ubuntu上清理舊內核。spa
在Ubuntu內核鏡像包含了如下的包。code
- linux-image-: 內核鏡像
- linux-image-extra-: 額外的內核模塊
- linux-headers-: 內核頭文件
首先檢查系統中安裝的內核鏡像。blog
$ dpkg --list|grep linux-image
$ dpkg --list|grep linux-headers
在列出的內核鏡像中,你能夠移除一個特定的版本(好比3.19.0-15)。get
$ sudoapt-get purge linux-image-3.19.0-15
$ sudoapt-get purge linux-headers-3.19.0-15
上面的命令會刪除內核鏡像和它相關聯的內核模塊和頭文件。it
注意若是你尚未升級內核那麼刪除舊內核會自動觸發安裝新內核。這樣在刪除舊內核以後,GRUB配置會自動升級來移除GRUB菜單中相關GRUB入口。
若是你有不少沒用的內核,你能夠用shell表達式來一次性地刪除多個內核。注意這個括號表達式只在bash或者兼容的shell中才有效。
$ sudoapt-get purge linux-image-3.19.0-{18,20,21,25}
$ sudoapt-get purge linux-headers-3.19.0-{18,20,21,25}
上面的命令會刪除4個內核鏡像:3.19.0-1八、3.19.0-20、3.19.0-21 和 3.19.0-25。
若是GRUB配置因爲任何緣由在刪除舊內核後沒有正確升級,你能夠嘗試手動用update-grub2命令來更新配置。
$ sudo update-grub2
如今就重啓來驗證GRUB菜單是否已經正確清理了。