Systemd

tmpfs 上的 tmp:fstab 與 tmp.mount 與 systemd

  • October 26, 2022

/tmptmpfs上,我知道我可以使用一個條目/etc/fstab,但我不明白有時/etc/default/tmpfs 提到的作用,以及在什麼情況下我需要創建或修改它。

最近,我經常看到有人建議使用 systemdtmp.mount配置。例如,在 Debian 上

$ sudo cp /usr/share/systemd/tmp.mount /etc/systemd/system/
$ sudo systemctl enable tmp.mount

這兩種方法哪一種更適合日常使用?在什麼情況下一種比另一種更好?我什麼時候需要處理/etc/default/tmpfs

在某些系統上,預設情況下/tmp是 a tmpfs,這是systemd 的“API 文件系統”提供的配置。基於 Fedora 的系統在不同程度上遵循這種模式。Fedora 本身發布/usr/lib/systemd/system/tmp.mount並啟用它,但 RHEL 8 發布它並沒有啟用它。在這樣的系統上,屏蔽和取消屏蔽單元是禁用或啟用 的適當方法tmpfs /tmp如 API 文件系統文件中所述

其他系統(例如 Debian )不會tmp.mount在可直接使用的位置發布;這就是為什麼/etc/systemd/system如果你想使用它,你需要將它複製到。tmp.mount這具有創建完全覆蓋in的不幸副作用/etc,這意味著如果systemd包在未來發布了不同版本的tmp.mountin /lib/systemd/system,它將被忽略。在這樣的系統上,我建議使用/etc/fstab

在這兩種設置中,自定義坐騎/etc/fstab仍然是推薦的方式,例如更改它們的大小;說/tmpman systemd.mount

通常,通過配置掛載點/etc/fstab是為人類管理掛載的首選方法。

API 文件系統文件同意

建議對工具使用安裝單元,自動配置:

對於工具,應該首選編寫安裝單元而不是編輯/etc/fstab

(這意味著想要自動設置掛載的工具不應該嘗試編輯/etc/fstab,這很容易出錯,而應該安裝一個掛載單元,這可以自動完成,也可以由系統管理員使用 systemd 覆蓋特徵。)

/etc/default/tmpfs由 Debian 使用sysvinit,因此它與 systemd 無關。

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