
導讀:前幾天,我收到一個警告,/boot 分區已經幾乎滿了,沒有剩餘空間了。 本文字數:2868,閱讀時長大約: 4分鐘https://linux.cn/article-12779-1.html 作者:Ankush Das 譯者:鄭
前幾天,我收到一個警告,
/boot
分區已經幾乎滿了,沒有剩餘空間了。是的,我有一個獨立的
/boot
分區,我相信現在很少有人這樣做了。(LCTT 譯注:個人認為保留單獨的 /boot 分區是個好的運維經驗,除此以外,/tmp、/var 也單獨劃定分區比較好。)
這是我第一次看到這樣一個錯誤,它讓我很迷惑。現在,這裡有一些 方法來釋放在 Ubuntu (或基于 Ubuntu 的分區)上的分區 ,但是在這種情況下并不是所有的方法都能用。
這就是為什麼我決定寫這些我釋放
/boot
分區空間的步驟的原因。
如何在 Ubuntu 上釋放 /boot 分區的空間
我建議你仔細閱讀這些解決方案,并由此得出最适合你情況的解決方案。解決方案的操作很容易,但是你需要在你的生産力系統上小心的執行這些解決方案。
方法 1: 使用 apt autoremove
你不必是一名終端專家來做這件事,它隻需要一個指令,你将移除未使用的核心來釋放
/boot
分區中是空間。
你所有要做的事情是,輸入:
sudo apt autoremove
這個指令不僅僅可以移除未使用的核心,而且也将移除你不需要的或工具安裝後所不需要的依賴項。
在你輸入指令後,它将列出将被移除的東西,你隻需要确認操作即可。如果你很好奇它将移除什麼,你可以仔細檢查一下看看它實際移除了什麼。
這裡是它應該看起來的樣子:
你必須按
Y
按鍵來繼續。
值得注意的是,這種方法隻在你還剩餘一點點空間,并且得到警告的情況下才有效。但是,如果你的
/boot
分區已經滿了,APT 甚至可能不會工作。
在接下來的方法中,我将重點介紹兩種不同的方法,通過這些方法你可以使用 GUI 和終端來移除舊核心來釋放空間。
方法 2: 手動移除未使用的核心
在你嘗試 移除一些舊核心 來釋放空間前,你需要識别目前活動的核心,并且確定你不會删除它。
為 檢查你的核心的版本 ,在終端中輸入下面的指令:
uname -r
uname 指令通常用于擷取 Linux 系統資訊。在這裡,這個指令顯示目前正在被使用的 Linux 核心。它看起來應該是這樣:
現在,你已經知道你目前的 Linux 核心是什麼,你必須移除一個不同于這個版本的核心。你應該把它記錄在某些地方,以便你不會不知不覺地移除它。
接下來,要移除它,你可以使用終端或 GUI。
警告!
在删除核心時一定要額外的小心。隻識别和删除舊核心,而不是目前你正在使用的核心,否則你将會擁有一個殘缺的系統。
使用一個 GUI 工具來移除舊的 Linux 核心
你可以使用 Synaptic 軟體包管理器 或一個類似 Stacer 的工具來開始。就我個人而言,當我遇到一個滿滿的
/boot
分區且 APT 損壞時,我使用 Stacer 來丢棄舊核心。是以,讓我向你展示一下它看起的樣子。
首先,你需要啟動 Stacer ,然後導航到軟體包解除安裝器,如下面螢幕截圖所示。
在這裡,搜尋 “image” ,你将找到你所擁有的 Linux 核心。你隻需要删除舊核心版本的鏡像,而不是目前核心的鏡像。
在上面的螢幕截圖中,我已經指出了我系統上的目前核心和舊核心,是以你必須注意你系統上的核心。
你沒有必要删除任何其它東西,隻需要删除舊的核心版本。
同樣的,隻需要在軟體包清單中搜尋 “headers” ,并删除如下顯示的舊的 “headers” 版本。
作為提醒,你 不會希望移除
linux-headers-generic
。隻關注一下那些與其相關的有版本号的就行。
然後,就這樣,你完成了所有的工作,APT 将會再次工作,并且你将成功地釋放來自
/boot
分區的一些空間。同樣地,你也可以使用任意其它的軟體包管理器來完成這些工作。
使用指令行來移除舊核心
使用指令行來移除舊核心與使用 GUI 來移除舊核心是一樣的。是以,如果你沒有選擇使用 GUI 軟體(如果它是一台遠端機器/一項遠端服務)的權利,或者如果你隻是對終端情有獨鐘,你可以仿效下面的步驟。
首先,使用下面的指令列出所有已安裝的核心:
ls -l /boot
它應該看起來像這樣:
标記為 “old” 的核心,或者不比對你目前核心版本,都是未使用的核心,你可以删除它們。
現在,你可以使用 rm 指令來移除具體指定來自
/boot
分區中的核心,使用下面的指令(一個指令對應一個核心):
sudo rm /boot/vmlinuz-5.4.0-7634-generic
務必檢查系統的版本 — 這裡可能與你的系統的版本不同。
如果你有很多未使用的核心,這将需要一些時間。是以,你也可以下面的指令丢棄多個核心:
sudo rm /boot/*-5.4.0-{7634}-*
為了清晰起見,你需要用逗号分隔核心版本号的最後一部分/編碼,以便同時删除它們。
假設,我有兩個舊的核心 5.4.0-7634-generic 和 5.4.0-7624 ,那麼指令将是:
sudo rm /boot/*-5.4.0-{7634,7624}-*
如果你不希望在 grub 啟動菜單中再看到這些舊的核心版本,你可以使用下面的指令簡單地 更新 grub:
sudo update-grub
就這樣,你完成了所有的工作。你已經釋放了空間,還修複了可能潛在的破損的 APT 問題,如果它是一個在你的
/boot
分區填滿後出現的重要的問題的話。
在一些情況下,你需要輸入這些指令來修複破損的(正如我在論壇中注意到的):
sudo dpkg --configure -a
sudo apt install -f
注意,除非你發現 APT 已破損,否則你不需要輸入上面的指令。就我個人而言,我不需要這些指令,但是我發現這些指令對論壇上的一些人很有用。
via: https://itsfoss.com/free-boot-partition-ubuntu/
作者:Ankush Das 選題:lujun9972 譯者:robsean 校對:wxy
本文由 LCTT 原創編譯,Linux中國 榮譽推出