如何在 Ubuntu 18.04 中将 .desktop 文件标记为受信任?

如何在 Ubuntu 18.04 中将 .desktop 文件标记为受信任?

在 Ubuntu 18.04 中,当用户单击自定义桌面文件时,程序会显示一条消息,提示“启动的应用程序不受信任,启动它可能不安全”。桌面也不会显示桌面文件的正确图标。

如何将应用程序启动的桌面文件标记为受信任,以便不显示消息,并且 ICON 也会显示在桌面上。

我尝试使用

chmod +x *.desktop

正如一些查询中所建议的那样,但这在 18.04 中似乎不起作用。

答案1

到目前为止,提供的所有答案都没有包含有关如何以非交互方式执行此操作的信息。如果我想编写启动器的创建脚本并使其受信任而无需单击它,该怎么办?

此用例已在这个问题这个答案。我在这里重复这些信息是因为这个问题更容易找到,而且严格来说这并不是重复,因为这里的问题范围更大。

要从命令行将启动器设置为受信任,请运行:

gio set /path/to/your/launcher.desktop "metadata::trusted" yes

完成后,在桌面或当前文件夹中按 F5 刷新视图。启动器现在应该值得信任。

必须满足某些条件(所有权、正在运行的程序、以正确的用户身份运行 gio)。请参阅桑德斯的回答了解完整列表。

答案2

  • 首先像之前一样设置 .desktop 文件的可执行位。如果您发现这比使用命令行更简单,您也可以通过在文件管理器中右键单击文件并在“属性”对话框的“权限”选项卡上设置可执行属性来执行此操作。
  • 现在尝试双击图标再次启动它。再次出现一个对话框,但请注意:这是一个不同的对话框。这次,选择“启动并信任”按钮,您的桌面文件现在将变成一个带有正确图标的功能启动器。

答案3

经过几个小时的搜索,我终于找到了导致 .desktop 文件从未被信任且不显示图标的问题的原因:

将所有者更改为您的用户名(我的设置为 root,这会破坏一切):

sudo chown $USER:$USER ~/.local/share/gvfs-metadata/home*

感谢@George Udosen 帮助我修复了这个问题: GVFS-警告 **:无法初始化元数据树 /home/user/.local/share/gvfs-metadata/home:打开:权限被拒绝

答案4

补充一下 b_laoshi 的回答 - 从 16.04 更新到 18.04 后,我的桌面上全是 steam 链接,我不想打开每个游戏然后退出来信任它们

for i in ~/Desktop/*.desktop; do    gio set "$i" "metadata::trusted" yes ;done

如果你不确定它的作用,就永远不要相信来自 stackoverflow 的代码:

  • "$i"依次设置为桌面上名为桌面的每个文件的完整路径
  • 运行

    gio set </home/path/to/your/whatever.desktop> "metadata::trusted" yes
    

    对于每个

  • done标记循环结束

相关内容