Filesystems
以root身份執行的程序在執行掛載時正在掛載“自我”,如何使掛載成為全域?
我正在從程序的上下文中安裝一個共享。最終,將對象安裝在一個
per-process namespace
基礎上,使其對系統的其餘部分不可見。這個問題部分與Fedora 下掛載命名空間的問題有關,只是我需要它。
該程序是以 root 身份執行的 Apache (httpd)。
以root身份執行程序,如何從程序上下文中全域掛載?
或者,在從流程中安裝之前我必須採取什麼行動,以使它們成為全球性的?
更新:
到目前為止,我嘗試過使用
--make-shared
,--make-private
但--bind
無濟於事。無法進行操作以傳播外部程序名稱空間。
Arch Linux 論壇中的一位使用者 (hiciu) 在全球發布了這個問題後,確實提供了解決方案。
顯然是 systemd 服務具有
PrivateTmp=true
:…如果為真,為執行的程序設置一個新的文件系統命名空間…
刪除該選項確實解決了問題。
您可以在此處了解有關解決問題的冒險的更多資訊。