Filesystems

如何在 FreeBSD 的根文件系統上執行 Tunefs?

  • June 29, 2017

我想為 FreeBSD 11 系統啟用 ACL。根據FreeBSD 手冊,這可以通過兩種方式完成:

  1. 通過使用掛載選項——mount -o acls
  2. 通過修改一個超級塊——tunefs -a enable

它說最好使用第二個選項,因為:

掛載時 ACL 標誌不能通過重新掛載 (mount(8) -u) 來更改,只能通過完整的 umount(8) 和新掛載 (8) 來更改。這意味著啟動後無法在根文件系統上啟用 ACL。這也意味著一旦文件系統在使用中,您就無法更改文件系統的配置。

設置超級塊標誌將導致文件系統始終在啟用 ACL 的情況下掛載,即使沒有 fstab 條目或設備重新排序也是如此。這可以防止在未啟用 ACL 的情況下意外掛載文件系統,這可能導致 ACL 執行不當,從而導致安全問題。

從 tunefs手冊頁

tunefs 實用程序旨在更改影響佈局策略的 UFS 文件系統的動態參數。tunefs 實用程序不能在活動文件系統上執行。要更改活動文件系統,必須將其降級為只讀或解除安裝。

問題是 rootfs (/) 無法解除安裝。

如何在根文件系統上執行 tunefs?

您可以強制以只讀方式重新掛載文件系統:

mount -fur /
tunefs -a enable /
reboot

reboot一步似乎是必要的:首先,重新掛載讀寫mount -uw /(最好在那個時候重新啟動。

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