Centos

未考慮/使用 dconf 密鑰文件中的某些參數

  • March 29, 2021

我在 CentOS 7.6 上使用 gnome 3.28.2 並一直在嘗試為 dconf 密鑰文件中的某些參數設置全域值,如此處所述使用螢幕保護程序範例以及鎖定此處解釋設置

我創建了一個文件 /etc/dconf/db/local.d/00-configuration_gnome ,內容如下

# These work
[org/gnome/desktop/lockdown]
disable-user-switching=true
disable-lock-screen=true

[org/gnome/desktop/screensaver]
user-switch-enabled=false
lock-enabled=false
lock-delay=uint32 0

[org/gnome/desktop/session]
idle-delay=uint32 0

# These do not work/get taken into account
[org/gnome/desktop/interface]
clock-show-seconds=true

[org/gnome/SessionManager]
logout-prompt=false

某些參數被考慮在內,如 gnome 文件中所述,但其他參數似乎被忽略了。我可以通過命令行使用以下命令更改值 ,但理想情況gsettings set org.gnome.SessionManager logout-prompt falsedconf update ,這些值將自動設置(例如在安裝作業系統期間,而不是在每個帳戶登錄期間在腳本中執行)。

關於我的問題是什麼的任何想法?我也希望將 logout-prompt=false 值應用於 gdm 使用者。據我了解,這是在正常登錄螢幕上使用的帳戶,但我也遇到了麻煩。

如果您查看架構定義(在 中找到/usr/share/glib-2.0/schemas/org.gnome.SessionManager.gschema.xml):

<schemalist gettext-domain="gnome-session-3.0">
 <schema id="org.gnome.SessionManager" path="/org/gnome/gnome-session/">
   <key name="auto-save-session" type="b">
     <default>false</default>
     ....

您可以看到架構 ID 是org.gnome.SessionManager,但路徑是**/org/gnome/gnome-session**。這有點令人困惑,但看起來您需要使用命令中的路徑和dconf命令中的 ID gsettings

$ gsettings get org.gnome.SessionManager logout-prompt
true
$ dconf write /org/gnome/gnome-session/logout-prompt false
$ gsettings get org.gnome.SessionManager logout-prompt
false

所以,你希望你的 dconf 文件有

[org/gnome/gnome-session]
logout-prompt=false

此外,如果您想為 GDM 設置 dconf 設置,請將它們放在 /etc/dconf/db/gdm.d/ 中。

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