dconf和locks

https://live.gnome.org/dconf/SystemAdministrators提供了一堆信息,似乎并不适用于Ubuntu。将文件放在以下位置:

/etc/dconf/db/local.d/locks

运行中
sudo dconf update

创建一个二进制文件:
/etc/dconf/db/local

初步查看此文件,似乎考虑了/etc/dconf/db/local.d/locks的内容,但实际上,该文件似乎被忽略。

有人知道如何在Ubuntu中应用dconf锁定吗(最好是经过尝试和测试的)?

2个回答

dconf基于“配置文件”概念。配置文件是一个配置数据库列表。
在启动时,dconf会查看DCONF_PROFILE环境变量。如果设置了,dconf将尝试打开指定的配置文件,如果失败则中止。如果环境变量未设置,dconf将尝试打开名为"user"的配置文件,如果失败,则会回退到内部硬编码的配置。
在您的配置中,配置文件被称为"local"。您可以通过以下方式设置DCONF_PROFILE环境变量导出:
export DCONF_PROFILE=local 

变量应该在dconf启动之前设置,所以你可以将这行代码放在/etc/profile中,例如...

路径取决于使用的dconf配置文件,据我所知,Ubuntu与Gnome共享相同的配置文件(名为gdm)。
请检查more /etc/dconf/profile/*
user-db:user
system-db:gdm

然后将用户锁放入与系统数据库同名的文件夹中。
/etc/dconf/db/gdm.d/locks/00-my-locks

来自默认设置的示例:

$ cat /etc/dconf/db/gdm.d/locks/00-upstream-settings-locks 
/org/gnome/desktop/a11y/keyboard/enable
/org/gnome/desktop/background/show-desktop-icons
/org/gnome/desktop/lockdown/disable-application-handlers
/org/gnome/desktop/lockdown/disable-command-line
/org/gnome/desktop/lockdown/disable-lock-screen
/org/gnome/desktop/lockdown/disable-log-out
/org/gnome/desktop/lockdown/disable-printing
/org/gnome/desktop/lockdown/disable-print-setup
/org/gnome/desktop/lockdown/disable-save-to-disk
/org/gnome/desktop/lockdown/disable-user-switching
...