Linux

如何安全地永久關閉交換並回收空間?(在 Debian Jessie 上)

  • May 5, 2021

我在我的 SSD 驅動器上安裝了帶有預設分區的 Debian Jessie。我目前的磁碟分區如下所示:

我目前的磁碟分區如下所示

由於我有 16GB 的 RAM,我認為我不需要swap。但是由於我有其他磁碟驅動器,因此我可能會在其他驅動器之一上創建一個交換文件。

你能告訴我應該採取什麼步驟來正確和永久地刪除交換分區,以免佔用磁碟空間嗎?我希望刪除交換分區,因為我目前只有 128GB SSD。

這是我每次嘗試並重新啟動的內容;這些步驟中的每一個都不是永久性的,或者沒有做任何事情

  1. 使用swapoff實用程序:
swapoff --all
  1. 使用GParted實用程序:

右鍵點擊交換分區並點擊 Swapoff。 3. 在以下文件中註釋掉交換分區的UUID :

/etc/fstab
  1. 在以下文件中註釋掉交換分區的UUID :
/etc/initramfs-tools/conf.d/resume
  1. 最後執行這些命令(按此順序和相反順序):
update-grub

update-initramfs -u
  1. 如果您打開了GParted,請將其關閉。它的 Swapoff 功能似乎不是永久性的。
  2. 打開終端變成rootsu);如果您已sudo啟用,您也可以這樣做sudo -i;查看man sudo所有選項):
sudo -i
  1. 關閉特定的交換分區和/或所有的交換
swapoff --all
  1. 確保 100% 確保特定的交換分區分區已關閉:
cat /proc/swaps
  1. 打開一個您熟悉該文件的文本編輯器,例如,nano如果不確定:
nano /etc/fstab
  1. 註釋掉/刪除交換分區的UUID,例如:
# UUID=1d3c29bb-d730-4ad0-a659-45b25f60c37d    none    swap    sw    0    0
  1. 打開一個您熟悉該文件的文本編輯器,例如,nano如果不確定:
nano /etc/initramfs-tools/conf.d/resume
  1. 註釋掉/刪除之前辨識的交換分區的UUID,例如:
# RESUME=UUID=1d3c29bb-d730-4ad0-a659-45b25f60c37d
  1. 不要關閉終端,因為你以後會需要它。

**注意:**接下來的步驟會有所不同,具體取決於您是依賴CLI還是GUI


GUI :

  1. 從菜單打開GParted,或者從我們打開的終端更方便地打開:
gparted
  1. 如果你沒有安裝它,你可以這樣做;之後再次執行之前的命令:
apt-get install gparted
  1. 從右上角的菜單中選擇您的驅動器。
  2. 由於GParted在啟動時會重新啟動交換分區,因此您必須右鍵點擊特定的交換分區並點擊 Swapoff -> 這將立即應用。
  3. 右鍵點擊 -> 刪除來刪除交換分區。您必須立即應用更改。
  4. 通過右鍵點擊調整主/其他分區的大小 -> 調整大小/移動。您必須立即應用更改。
  5. 回到終端,讓我們重新創建啟動映像
update-initramfs -u -k all
  1. 更新GRUB
update-grub
  1. 如果您想測試機器是否啟動,您現在可以重新啟動。

加密說明:如果你的swap分區是加密的,那麼你還需要註釋掉裡面的相關行/etc/crypttab,否則CryptSetup會讓你在開機時等待90秒。感謝弗蘭克的補充。


命令行

如果我的解決方案有效,我將簽入VM,然後我將分享它。同時,請參閱此答案

引用自:https://unix.stackexchange.com/questions/224156