在Ubuntu 18.04中,当用户单击自定义桌面文件时,程序将显示消息,提示应用程序启动不受信任,并且启动它可能不安全。桌面也不会为桌面文件显示正确的图标。
如何将应用程序启动的桌面文件标记为受信任,以便不显示该消息,并且ICON也显示在桌面上。
我尝试使用
chmod +x *.desktop
正如某些查询中所建议的那样,但这在18.04中似乎不起作用。
在Ubuntu 18.04中,当用户单击自定义桌面文件时,程序将显示消息,提示应用程序启动不受信任,并且启动它可能不安全。桌面也不会为桌面文件显示正确的图标。
如何将应用程序启动的桌面文件标记为受信任,以便不显示该消息,并且ICON也显示在桌面上。
我尝试使用
chmod +x *.desktop
正如某些查询中所建议的那样,但这在18.04中似乎不起作用。
Answers:
到目前为止,所提供的答案均未包含有关如何以非交互方式执行此操作的信息。如果我想编写启动程序的脚本并使其可信而不需要单击该怎么办?
这种用法案件已经处理了这个问题,与这个答案。我在此处复制此信息是因为该问题更容易查找,而并非严格意义上的重复,因为此处的问题范围更大。
要将启动器设置为受信任的命令行,请运行:
gio set /path/to/your/launcher.desktop "metadata::trusted" yes
完成后,在桌面或当前文件夹中按F5刷新视图。现在应该信任启动器。
必须满足某些条件(所有权,正在运行的程序,以正确的用户身份运行gio)。有关完整列表,请参见Sander的答案。
.desktop
文件保留Allow executing file as program
在属性菜单中未选中的复选框
经过数小时的搜索,我终于找到了造成我的问题的原因:.desktop文件从未受到信任并且没有显示图标:
将所有者更改为您的用户名(我的被设置为root,这很麻烦):
sudo chown $USER:$USER ~/.local/share/gvfs-metadata/home*
感谢@George Udosen,他帮助我解决了该问题: GVFS-警告**:无法初始化元数据树/home/user/.local/share/gvfs-metadata/home:打开:权限被拒绝
为特定的桌面文件(chown)设置正确的用户名和组名。现在尝试再次启动,出现对话框,选择“启动并信任”按钮。
sudo chown -R myuser:myuser ~/
一切工作没有任何问题,并且无需重新启动。
只是为了增加b_laoshi的答案-从16.04更新到18.04后,我的桌面上充满了Steam链接,所以我不想打开每个游戏然后退出以信任它们
for i in ~/Desktop/*.desktop; do gio set "$i" "metadata::trusted" yes ;done
在确定其功能之前,切勿信任stackoverflow中的代码:
"$i"
依次设置为桌面上每个文件的完整路径,命名为desktop运行
gio set </home/path/to/your/whatever.desktop> "metadata::trusted" yes
每个
done
标志着循环的结束gio
不会更改所有者或组-它只是告诉gnome信任它。检查与所有者/组stat filename
,如果CHOWN工作不检查任何错误消息,则只能运行它作为根(即sudo
)和一些文件系统(例如文件共享,SD卡,Windows磁盘)将不支持它