ubuntu的內(nèi)核經(jīng)常升級,而老內(nèi)核并不自動卸載.時間長了,就有一大堆內(nèi)核垃圾,需要我們手動去清理.
•先用uname -a 查看當前內(nèi)核版本:
xzc@xzc-HP-ProBook-4446s:~$ uname -a
Linux xzc-HP-ProBook-4446s 3.13.0-46-generic #77-Ubuntu SMP Mon Mar 2 18:23:39 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
可見當前版本為3.13.0-46
•用dpkg --get-selections|grep linux看一下當前系統(tǒng)安裝的內(nèi)核版本:
xzc@xzc-HP-ProBook-4446s:~$ dpkg --get-selections|grep linux
libselinux1:amd64 install
linux-firmware install
linux-generic install
linux-headers-3.13.0-46 install
linux-headers-3.13.0-46-generic install
linux-headers-generic install
linux-image-3.13.0-46-generic install
linux-image-extra-3.13.0-44-generic deinstall
linux-image-extra-3.13.0-46-generic install
linux-image-generic install
linux-libc-dev:amd64 install
linux-signed-generic install
linux-signed-image-3.13.0-44-generic deinstall
linux-signed-image-3.13.0-46-generic install
linux-signed-image-generic install
linux-sound-base install
pptp-linux install
syslinux install
syslinux-common install
syslinux-legacy install
util-linux install
其中l(wèi)inux-headers、linux-image、linux-signed開頭的都是跟內(nèi)核相關的.帶有版本號的(如linux-image-extra-3.13.0-44-generic)才是可以刪除的.注意不要刪除當前使用的版本.后面的install表示已安裝,deinstall表示曾經(jīng)安裝過,現(xiàn)在已被刪除(已不占空間).
•sudo apt-get purge來刪除
sudo apt-get purge linux-image-extra-3.13.0-44-generic
sudo apt-get purge linux-signed-image-3.13.0-44-generic
sudo apt-get purge linux-headers-3.13.0-44(這個好像會自動把linux-headers-3.13.0-46-generic刪除,如果未刪,則sudo apt-get purge linux-headers-3.13.0-46-generic)
注意不要使用sudo apt-get remove來刪除,會出現(xiàn)linux-signed-image-3.13.0-44-generic deinstall.當然這時再運行purge也是可以刪除的.
•使用sudo update-grub更新啟動菜單
有網(wǎng)友用正則表達式寫了一個腳本,沒試過腳本效果怎么樣:
dpkg -l 'linux-*' | sed '/^ii/!d;/'"$(uname -r | sed "s/\(.*\)-\([^0-9]\+\)/\1/")"'/d;s/^[^ ]* [^ ]* \([^ ]*\).*/\1/;/[0-9]/!d' | xargs sudo apt-get -y purge