Как пометить файл .desktop как доверенный в Ubuntu 18.04?

16

В Ubuntu 18.04, когда пользователь нажимает на пользовательский файл рабочего стола, программа отображает сообщение о том, что запускаемое приложение не является доверенным, и запуск может быть небезопасным. На рабочем столе также не отображается правильный значок для файла рабочего стола.

Как можно пометить, что приложение запускает файл рабочего стола как надежный, чтобы сообщение не отображалось, и ICON также отображается на рабочем столе.

Я пытался с помощью

chmod +x *.desktop

как предложено в некоторых запросах, но это не похоже на работу в 18.04.

Арун Натх
источник
У меня тоже возникает точно такая же проблема, каждый раз, когда я нажимаю на файл .desktop, он запрашивает «доверие и запуск», и он открывается, но каждый раз запрашивает одно и то же (для одного и того же файла) и значок никогда не обновляет Странно то, что я думаю, что это началось примерно в то время, когда мне пришлось перезапустить X11 (startX), потому что у меня было ужасное приложение, когда оно было полноэкранным. Вы когда-нибудь находили решение для этого?
Джаред

Ответы:

12

Ни один из ответов, предоставленных до этого момента, не содержал информацию о том, как вы можете сделать это неинтерактивным способом. Что если я захочу написать скрипт создания лаунчера и сделать его доверенным, не нажимая на него?

Этот вариант использования уже рассматривается в этом вопросе с этим ответом . Я дублирую эту информацию здесь, потому что этот вопрос было намного легче найти, и он не является строго дубликатом, потому что вопрос здесь больше по объему.

Чтобы установить модуль запуска в качестве доверенного из командной строки, выполните:

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

После этого нажмите F5 на рабочем столе или в текущей папке, чтобы обновить вид. Лаунчеру теперь нужно доверять.

Существуют определенные условия, которые должны быть выполнены (владение, запуск программ, запуск gio от имени правильного пользователя). Смотрите ответ Сандера для полного списка.

b_laoshi
источник
Это не сработало для меня в 18.04. Целевой .desktopфайл остается с Allow executing file as program
флажком, не
У меня был новый файл .desktop как средство запуска на рабочем столе, с правильным путем значка и всем остальным, он запускал исполняемый файл и все (так что ему доверяли) - и он не отображал значок, пока я не нажму F5 на рабочем столе; спасибо за этот совет!
Сдау
11
  • Сначала установите исполняемый бит файла .desktop, как вы уже сделали. Вы также можете сделать это, щелкнув правой кнопкой мыши файл в диспетчере файлов и установив свойство исполняемого файла на вкладке «Разрешения» диалогового окна «Свойства», если вам это проще, чем в командной строке.
  • Теперь попробуйте снова запустить значок, дважды щелкнув по нему. Снова появляется диалог, но обратите внимание: это другой диалог. На этот раз нажмите кнопку «Запустить и довериться», и ваш рабочий стол теперь превратится в функциональный модуль запуска с нужным значком.
ванадий
источник
1
Спасибо за ваш ответ. Моя проблема в том, что я не хочу, чтобы при нажатии на значок появлялось какое-либо сообщение. Как вы помечаете приложение как доверенное по умолчанию? Значок также должен отображаться.
Арун Нат
Пожалуйста, внимательно прочитайте снова то, что я написал, и сначала попробуйте. Это процедура, чтобы пометить пусковую установку как «доверенную». После того, как вы это сделаете, программа запуска будет работать как положено и сразу же запустит ваше приложение. Вы спросили: «Как можно пометить, что приложение запускает файл рабочего стола как надежный, чтобы сообщение не отображалось, а значок ICON также отображался на рабочем столе». и это ответ на вопрос «как».
ванадий
Я могу запустить приложение. Все это хорошо работает. Но файл рабочего стола не превращается в ICON. Также, когда я закрываю приложение и пытаюсь запустить его снова, снова появляется сообщение. Кажется, не существует способа избавиться от этого всплывающего сообщения раз и навсегда. Продолжает появляться все время. Я надеюсь, что я не пропустил что-то здесь.
Арун Нат
Вы имеете в виду, что вы можете запустить приложение с вашего ненадежного модуля запуска после ответа на диалоги, но тогда средство запуска не становится «доверенным»? Это не нормальное поведение. В моей системе мне нужно сделать это один раз, затем программе запуска «доверяют», и это запоминается.
ванадий
Это верно, он, кажется, не помнит это больше. Раньше работал так, как вы предлагали. Последняя серия обновлений Ubuntu 18.04, похоже, сломала его.
Арун Нат
10

после нескольких часов поиска я наконец-то обнаружил, что вызывает мою проблему с файлами .desktop, которые никогда не были доверенными и не отображали значки:

Измените владельца на ваше имя пользователя (у меня был установлен root, который ломал вещи):

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

благодарность @George Udosen, который помог мне исправить это: GVFS-WARNING **: невозможно инициализировать дерево метаданных /home/user/.local/share/gvfs-metadata/home: open: разрешение запрещено

Джаред
источник
1
Не работал для меня Эти файлы уже были установлены для правильного владельца.
Эндрю Ламарра
1

Установите правильное имя пользователя и имя группы для определенного файла рабочего стола (chown). Теперь попробуйте запустить снова, появится диалоговое окно и нажмите кнопку «Запустить и довериться».

Брэд Томпсон
источник
У меня была проблема с тем, что уже был правильный набор пользователей и групп. К сожалению, не совсем, так как я снова установил Ubuntu ontop и перемонтировал домашний каталог с тем же именем пользователя. Оказалось, что пользователь с таким же именем, по сути, не является тем же пользователем. Со sudo chown -R myuser:myuser ~/всем работало без проблем и перезагрузки не нужно.
Себастьян Барт
У меня такая же проблема. Кроме того, если я дважды щелкаю по файлу .desktop в /home/$ndomuserscasts/.local/share/applications/EclipseWeb.desktop при использовании Nautilus, я получаю сообщение: Ошибка запуска приложения и не могу найти информацию чтобы помочь мне интерпретировать сообщение.
Джонатан
0

И просто добавлю к ответу b_laoshi - после обновления с 16.04 по 18.04 у меня был рабочий стол, полный парных ссылок. Мне не хотелось открывать каждую игру, а затем перестать доверять им

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 отмечает конец цикла
Greg
источник
У меня была та же проблема, и ни Джио, ни Чоун не могли изменить группу или владельца.
Джонатан
gioне изменит владельца или группу - он просто скажет gnome доверять ему. проверьте владельца / группу с помощью stat filename, если chown не работает, проверьте какие-либо сообщения об ошибках, вы можете запустить его только как root (то есть с sudo), и некоторые файловые системы (например, общие файлы, SD-карты, диски Windows) не будут поддерживать его
Грег