是否可以从“系统设置”中删除项目

vor*_*aq7 18 system-settings

我想删除或禁用系统设置/gnome-control-center 中一些未使用的设置面板,以防止我更“雄心勃勃”的用户弄乱它们。
具体来说,我想禁用/删除以下内容:

  • 打印机(因为我们没有任何附加到这些机器上)
  • 详细信息(因为它允许您在可移动媒体上设置操作)
  • 键盘(因为它可以让您设置快捷键 - 而不是交易破坏者)

这看起来应该非常简单(我可以通过Hidden=true.desktop与面板关联的文件中进行设置来将它们从“应用程序”菜单中删除),但是当我这样做时,它们顽固地保留在系统设置中。

我是不是遗漏了什么,还是我们一直在“设置”应用程序中使用这些面板?

Mik*_*eyB 18

鉴于更改权限可以实现您的目标,请查看此魔术:

dpkg-statoverride --update --add root root 640 /usr/share/applications/gnome-printers-panel.desktop
dpkg-statoverride --update --add root root 640 /usr/share/applications/gnome-info-panel.desktop
dpkg-statoverride --update --add root root 640 /usr/share/applications/gnome-keyboard-panel.desktop
Run Code Online (Sandbox Code Playgroud)

您可以使用以下方法删除覆盖:

dpkg-statoverride --remove /path/to/file
Run Code Online (Sandbox Code Playgroud)

(但请注意,这不会重置原始权限)


vor*_*aq7 7

好的,我我找到了一个解决方法 -gnome-control-center不尊重文件,但是如果您完全删除关联Hidden=truegnome-whatever-panel.desktop文件,它不够聪明以显示面板。.desktop

因此,对于我列出的面板,您可以通过删除以下文件来删除/禁用它们:

/usr/share/applications/gnome-printers-panel.desktop
/usr/share/applications/gnome-info-panel.desktop
/usr/share/applications/gnome-keyboard-panel.desktop
Run Code Online (Sandbox Code Playgroud)

正如MikeyB 在他的评论中指出的,让“其他”无法读取这些文件也是一种选择 - 我chmod 640在备用盒子上测试了这个 ( ) 并且它似乎可以工作,禁用“普通”用户的面板,同时仍然让它们可供root成员使用的的root组。


这种方法有两个明显的缺点:

  1. 这将完全禁用所有用户的这些面板。
    您甚至无法通过运行gnome-control-center info或类似Radu R? deanu 提到的方式手动调用它们- 它们只是不会启动。

  2. 更新gnome-control-center和相关软件包可能会带回面板。
    这基本上意味着,以确保他们还是走了(或有适当的权限限制),每个软件更新后检查,并删除/chmod荷兰国际集团的.desktop文件,如果再需要。

就我而言,这些都不是一个大问题,因为无论如何我都是从命令行配置这些机器的,系统设置面板仅供用户进行细微的“个性调整”,因此除非此解决方法