我想删除或禁用系统设置/gnome-control-center 中一些未使用的设置面板,以防止我的“野心勃勃”的用户弄乱它们。
具体来说,我想禁用/删除以下内容:
- 打印机(因为我们没有连接这些机器)
- 详细信息(因为它允许您在可移动媒体上设置操作)
- 键盘(因为它可以让你设置快捷键 - 这不是什么大问题)
这看起来应该非常简单(我可以通过在与面板关联的文件Hidden=true
中进行设置将它们从应用程序菜单中删除),但是当我这样做时,它们顽固地保留在系统设置中。.desktop
是我遗漏了什么吗,还是我们永远只能在“设置”应用程序中使用这些面板?
答案1
假设更改权限可以实现你的目标,那么看看这个魔法:
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
您可以使用以下命令删除覆盖:
dpkg-statoverride --remove /path/to/file
(但请注意,这不会重置原始权限)
答案2
好的,我思考我找到了一个解决方法——gnome-control-center
不尊重Hidden=true
文件gnome-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
作为MikeyB 在他的评论中指出使这些文件无法被“其他人”读取也是一个选择——我
chmod 640
在一台备用机器上测试了这个(),它似乎有效,为“普通”用户禁用了面板,但仍然让组root
内成员可以使用它们root
。
这种方法有两个明显的缺点:
这将完全禁用这些面板全部用户。
你甚至无法通过运行gnome-control-center info
或类似方法手动调用它们正如 Radu Rădeanu 所提到的- 他们就是不肯发射。gnome-control-center
相关软件包的更新可能将面板恢复。
这基本上意味着在每次软件更新后进行检查,以确保它们仍然存在(或具有适当的限制权限),并在必要时再次删除文件chmod
。.desktop
对我来说,这些都不是一个大问题,因为我无论如何都是从命令行配置这些机器的,系统设置面板只是供用户进行微小的“个性调整”,所以除非这个解决方法
答案3
不,很遗憾你不能删除任何打印机,细节, 或者键盘从系统设置。这些被称为“PANELS”,并且硬编码在gnome-control-center
包中。如果您删除此包,您将不会拥有系统设置不再。
假设你从主面板中删除这些图标和名称系统设置无论如何,用户可以使用以下命令之一从终端打开其中任何一个:
gnome-control-center info
gnome-control-center keyboard
gnome-control-center printers
请参阅man gnome-control-center
以了解更多信息。