Watch at Ease看見世界,讀懂生活。

科技 · 實用指南

systemd 顯示 status=226/NAMESPACE?關閉強化前先證明失敗的命名空間操作

保留第一條詳細日誌錯誤,把每個命名空間指令對應到實際資源,只修改已證明的邊界。

原創示意圖:連接 systemd 有效指令、首個 journal errno、檔案系統資源與主機限制。
原創示意圖:連接 systemd 有效指令、首個 journal errno、檔案系統資源與主機限制。 Watch at Ease

status=226/NAMESPACE 表示 systemd 在建立掛載、UTS 或 IPC 命名空間時,程序準備階段失敗。服務程式尚未正常執行,先改應用程式參數會找錯層級。

建立四份關聯證據:合併後的 unit、第一條詳細 journal errno、指令到資源的對應、主機或容器邊界。只修第一個斷點,其餘沙箱控制保持啟用。

固定有效 unit 與第一個失敗

保存 systemctl cat 與 systemctl show,包含 drop-in 與產生屬性;記錄 systemd、核心、管理器類型及容器環境。

從本次啟動最早日誌開始讀,保存「Failed to set up … namespacing」原文、路徑與 errno。

把指令對應到命名空間操作

列出 PrivateTmp、ProtectHome、ProtectSystem、路徑清單、綁定掛載、臨時檔案系統、根目錄/映像、私有 IPC 與主機名保護。

為每項記錄來源、目的地、預期類型、連結解析、供應掛載與可選「-」前綴語意;不能只看最近編輯的一行。

不降低政策地驗證資源

在管理器主機視圖確認每個來源與目的地存在且類型正確,以 findmnt 和路徑解析區分拼字、節點、掛載及權限問題。

EACCES 或 EPERM 要查父目錄搜尋權限、掛載旗標與強制存取控制;EINVAL 先保留失敗物件與環境。

分開主機故障與容器限制

Docker、LXC、使用者管理器或使用者命名空間可能缺少所需所有權或能力。只在測試環境比較最小 unit,不要把正式環境直接改成特權模式。

記錄使用者命名空間、核心支援、容器政策與 AppArmor/SELinux 證據;沒有拒絕日誌不等於所有操作可用。

做一次有界修復並閉環

只修正已證明的拼字、路徑、掛載順序、節點類型、政策或環境限制。若必須放寬沙箱,優先採更窄的綁定或可寫路徑。

重載並重啟,確認原錯誤與 226 消失且其餘強化仍生效;保存前後 unit、journal 與掛載證據。

原創示意圖:用決策樹分開路徑/掛載故障與核心、容器、強制存取控制限制。
原創示意圖:用決策樹分開路徑/掛載故障與核心、容器、強制存取控制限制。 Watch at Ease