隨著 Ubuntu 的逾時更新,GRUB 選單列出了許多以前的 Linux 核心並佔用了大量的硬碟空間。如何輕鬆刪除未使用的核心?
答案1
下面提到的解決方案是 Ubuntu 特定的。
檢查目前使用的核心:
uname -r
列出所有已安裝的核心映像和標頭:
dpkg --list | grep linux-image dpkg --list | grep linux-headers
刪除要刪除的核心的映像和標頭:
sudo apt-get purge linux-image-3.19.0-15 sudo apt-get purge linux-headers-3.19.0-15
上述指令將刪除核心映像及其關聯的核心模組和頭檔。
刪除未使用的核心後,更新 GRUB 設定。
sudo update-grub2
現在重新啟動並驗證 GRUB 選單是否已正確清理。
答案2
從「系統」->「管理」功能表開啟 Synaptic 套件管理器。
點擊工具列上的“搜尋”按鈕並蒐索linux-image-2
.
結果應該顯示每個可用的和已安裝的核心。左側綠色框表示該軟體包已安裝。您想要安裝的唯一 linux 映像是最新的。找到與您目前運行的核心對應的套件(這是您在終端機視窗中找到的核心)。確保保留那個。現在,您可以透過點擊舊核心的方塊並選擇「標記為刪除」從清單中卸載舊核心。
得到這個來自這裡
答案3
打開終端機並執行以下命令。重新開機時,GRUB 選單中只會顯示最新的核心。
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
執行上述命令需要 root 密碼。
謝謝ubuntugenius。
答案4
byobu 套件中有一個名為「purge-old-kernels」的腳本:
apt-get install byobu
purge-old-kernels
您可以指定保留多少個核心(不包括目前正在使用的核心):
purge-old-kernels --keep 2
如果需要,請將其放入 cron 中。
看:https://raw.githubusercontent.com/dustinkirkland/byobu/master/usr/bin/purge-old-kernels