Ubuntu

無法在基於 GPT 的系統上禁用交換

  • November 29, 2019

我想在幾個正在執行的 ubuntu 16.04 伺服器上禁用交換。如果可能的話,我希望不要重新啟動它們。根據我的研究,似乎

  • 執行swapoff -a以禁用交換,直到下次重新啟動
  • 並在下次重新啟動後評論交換行/etc/fstab以保持不變

應該做的工作。但是,似乎核心正在重新啟用交換:在 之後的一段時間內,我在日誌swapoff中看到類似的內容:/var/log/kern.log

Nov 28 12:00:51 srv07 kernel: [ 8049.183480] Adding 62498812k swap on /dev/sda3. Priority:-1 extents:1 across:62498812k FS

一次我在 4 小時後發生swapoff,另一次在 5 分鐘後發生。

這是什麼原因造成的?

這是在 Ubuntu 16.04 伺服器上,核心版本 4.4.0。

磁碟使用 GPT,這是由於GPT 分區自動掛載

在 GPT 分區磁碟上 systemd-gpt-auto-generator(8) 將按照可發現分區規範掛載分區,因此可以從 fstab 中省略它們。

同一文件的另一頁解釋瞭如何禁用此功能:

啟動 gdisk,例如:

$ gdisk /dev/sda

按 p 列印分區表並記下要禁用自動掛載的分區號。

按 x 額外功能(僅限專家)。

按設置屬性。輸入分區號並設置屬性 63。在 Set 欄位下:現在應該顯示 63(不要自動掛載)。按 Enter 結束屬性更改。對要防止自動掛載的所有分區重複此操作。

完成後將表寫入磁碟並通過 w 命令退出。

或者使用 sgdisk,可以使用 -A/–attributes= 選項設置屬性;有關用法,請參見 sgdisk(8)。例如,要在 /dev/sda2 上設置分區屬性 63“不自動掛載”,請執行:

$ sgdisk -A 2:set:63 /dev/sda

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