Ubuntu

自動設置 Gnome 系統資料庫 (GConf) 強制設置

  • August 18, 2012

TL;DR:已經找到了一些可能性,但文件留下了太多未回答的問題,我無法自信地部署它們。

我想在我們網路上的使用者工作站上推出一些強制性的 GConf 設置。經過一番調查,似乎有幾個選項可以更改強制設置,但每個選項都給我留下了關於如何正確應用它的問題。

gconf-editor

  • 方法:在 GUI 中,執行gksudo gconf-editor並選擇 File > New Mandatory Window。

  • 優點

    • 絕對有效:這是我過去在較小的安裝中使用的。
  • 缺點

    • 不是自動化的,所以不是一個真正的選擇。
    • 大量設置時擴展性很差。

gconftool-2

  • 方法gconftool-2:使用 ’ --config-source xml:readwrite:/etc/gconf/gconf.xml.mandatory’ 選項呼叫。

  • 優點

    • 可以自動化。
  • 缺點

    • 使用--direct標誌的方向顯然相互矛盾。
    • (次要)每個單獨的設置都需要單獨的命令。

/etc/gconf/gconf.xml.mandatory/

  • 方法:直接修改/創建下文件/etc/gconf/gconf.xml.mandatory/

  • 優點

    • 非常適合我們現有的文件分發基礎設施。
    • 可以很好地擴展到大量設置。
  • 缺點

    • 似乎不是官方支持的方法。
    • 不清楚如何避免心煩意亂gconfd
    • 停止/重新啟動的包裝腳本gconfd可能會導致使用者問題。

GNOME 文件提供了一些使用gconftool-2--direct標誌的範例。但是,手冊頁顯示--direct標誌“要求 gconfd 未執行”。這與這種情況無關(我將以 root 身份執行,而不是登錄使用者),還是我需要檢測 a 是否gconfd正在執行並相應地傳遞/不傳遞該標誌?

理想情況下,我希望/etc/直接同步文件,但我找不到任何跡象表明守護程序可能如何對此做出響應(例如,它們是否可能會選擇不一致的設置,或者是否需要重新啟動)。將文件更新夾在停止/重新啟動的命令之間gconfd應該可以避免守護程序本身出現問題,但我想可能會對活動的使用者會話造成嚴重破壞。

任何有更多 GConf 經驗的人都可以澄清這些問題,或提供他們正在使用的方法的詳細資訊嗎?我們正在執行 Ubuntu 12.04 LTS,但我很高興聽到在任何平台上執行的解決方案。

鑑於您的要求,我會添加設置/etc/gconf/gconf.xml.mandatory(我假設您正在使用 puppet、chef 或類似的東西)。您需要註銷使用者並停止 gconfd ( gconftool-2 --shutdown; 它通常在註銷後保持執行幾分鐘) 以使設置更改生效。

引用自:https://serverfault.com/questions/418949