Гиперссылки, которые нажимаются в программе просмотра документов evince, не открываются, есть идеи, как это исправить?

10

Как было указано в другой теме на форумах, я открыл файл /usr/share/applications/mimeinfo.cache, чтобы проверить правильность ссылок. И заметил, что это, похоже, не проблема, есть даже 3 дополнительных браузера для использования.

x-scheme-handler/http=google-chrome.desktop;chromium-browser.desktop;firefox.desktop;
x-scheme-handler/https=google-chrome.desktop;chromium-browser.desktop;firefox.desktop;

Я уже проверил, что программы имеют правильные имена, используя команду "which" в терминале, например:

$ which google-chrome
$ /usr/bin/google-chrome

Таким образом, Google-Chrome должен быть первым вариантом, и, тем не менее, порядок открытия URL-адреса, похоже, не поступает в программу, в любом случае, даже на 2-й или 3-й вариант.

Кроме того, команда «Получить справку онлайн» в меню «Справка» не работает. Так что это не проблема с конкретным файлом документа.

Я использую Ubuntu 12.04 LTS. Если вам нужно запросить более подробную информацию, пожалуйста, сделайте. Было бы неплохо иметь различные мнения о том, как решить эту проблему, спасибо :-)

ОБНОВЛЕНИЕ: я побежал evince из терминала, как спросил.
Вот что я получаю при попытке открыть ссылку:

/opt/google/chrome/google-chrome: line 42: /opt/google/chrome/chrome: Permission denied
/opt/google/chrome/google-chrome: line 42: /opt/google/chrome/chrome: Success

Должен ли я попробовать предлагаемое исправление, даже если мой журнал ошибок отличается?

ОБНОВЛЕНИЕ: пробовал решение @ maggotbrain и BINGO, теперь я могу изучать PDF ссылки быстрее благодаря тебе, братан!

JorgeArtware
источник
Не могли бы вы запустить evince из терминала и снова попытаться щелкнуть URL в PDF-файле? Затем добавить какие-либо сообщения об ошибках к вашему первоначальному вопросу? Спасибо.
Кевин Боуэн
связанные вопросы и ответы, где предложенный ответ не работает для OP: askubuntu.com/questions/254212/…
Кевин Боуэн
1
Я только в курсе новых результатов. Извините, я пока не могу высказать ответы, я новичок в сообществе.
JorgeArtware
Не стоит беспокоиться. Добро пожаловать! Вы можете попробовать мое решение и посмотреть, работает ли оно у вас, даже если сообщения об ошибках различны. Если это не работает, просто удалите строки из файла и повторите команду. Удачи.
Кевин Боуэн

Ответы:

1

Возможно, вы столкнулись с ошибкой, связанной с обработкой apparmor внешних URL-адресов.

Проблема с открытием URL в evince привела к следующей ошибке (в командной строке) при щелчке URL в документе PDF:

(evince:32091): EvinceView-CRITICAL **: ev_document_model_set_document: assertion
`EV_IS_DOCUMENT (document)' failed
/usr/lib/chromium-browser/chromium-browser-sandbox: error while loading shared
libraries: libpthread.so.0: failed to map segment from shared object: Permission denied

Как предлагается в этом комментарии , я смог решить эту проблему с помощью хрома, выполнив следующие действия:

Добавьте эти строки в /etc/apparmor.d/abstractions/ubuntu-helpers после строки "/ usr / lib * / {, * /} Pixr":

# From https://bugs.launchpad.net/ubuntu/+source/apparmor/+bug/964510/comments/12
# While the chromium and chrome sandboxes are setuid root, they only link
# in limited libraries so glibc's secure execution should be enough to not
# require the santized_helper (ie, LD_PRELOAD will only use standard system
# paths (man ld.so)).
/usr/lib/chromium-browser/chromium-browser-sandbox PUxr,
/opt/google/chrome/chrome-sandbox PUxr,
/opt/google/chrome/google-chrome Pixr,
/opt/google/chrome/chrome Pixr,
/opt/google/chrome/lib*.so{,.*} m,

Наконец, беги sudo apparmor_parser -T -W -r /etc/apparmor.d/usr.bin.evince

Кевин Боуэн
источник
Я погуглил журнал, и результаты поиска перебросили ту же страницу, что вы мне дали, об ошибке # 964510 (на bugs.launchpad.net), так что это для меня. Я попробую это. Буду держать вас в курсе результатов. :)
JorgeArtware
ты мужчина! Это не только сработало, но я узнал, как самостоятельно диагностировать вещи: D Спасибо!
JorgeArtware
Превосходно! Ваш вопрос помог мне решить проблему, о которой я до сих пор забыл. Благодаря вам. Приветствия.
Кевин Боуэн
Это сработало - как только я убедился, что следую инструкциям более тщательно, чем позволила моя первая попытка. То есть: убедитесь, что вы вставили предложенные строки "после строки" / usr / lib * / {, * /} Pixr, ": '.
MarkWayne
1
Это не сработало для меня в Ubuntu 16. Нет строки с точным содержанием /usr/lib*/{,*/} Pixr,.
Cerin
3

Ни одно из вышеперечисленных решений не помогло мне, однако это работает:

Посмотрите, что в настоящее время в его списке игнорирования

ls -la /etc/apparmor.d/disable

Теперь добавьте Document Viewer (evince) в этот список

sudo ln -s /etc/apparmor.d/usr.bin.evince /etc/apparmor.d/disable/usr.bin.evince 

вовлекать изменения

sudo service apparmor restart
Скотт Стенсленд
источник
Работал на меня, я долго искал! Какие-нибудь подробности о том, что это делает именно?
Джонатан Х
работает как очарование
Цзинго Яо
1
@ Sh3ljohn Это в основном отключает все меры безопасности, применяемые к evince. Помните, что PDF-файлы - это, в основном, пакеты сложных данных, которые нужно анализировать и отображать (и каким-то образом выполнять тоже) через сложный программный стек. Таким образом, они являются известными векторами для атаки.
Стефан Гурихон
1
@ StéphaneGourichon Это опасно? Я не хочу, чтобы все проверки безопасности были отключены, я просто хотел бы иметь возможность нажимать ссылки.
Джонатан Х
1

Эта ошибка была исправлена ​​некоторое время назад. Строки в файле /etc/apparmor.d/abstractions/ubuntu-helpersбыли включены.

Xpdf не было никаких проблем, однако.

Но если предположить, что gnome-gmailи gnome-gmail-notifierони установлены, и были указаны в системных настройках, чтобы перенаправить гиперссылки, сначала нужно отключить evince, а затем перезапустить apparmor. (Это то, что работает для меня в любом случае).

введите описание изображения здесь

sudo ln -s /etc/apparmor.d/usr.bin.evince /etc/apparmor.d/disable/usr.bin.evince
sudo /etc/init.d/apparmor restart
doed
источник
Испытывает ту же проблему с Evince в Lubuntu 18.04 LTS, линия sudo ln -s /etc/apparmor.d/usr.bin.evince, /etc/apparmor.d/disable/usr.bin.evinceи sudo /etc/init.d/apparmor restartработала для меня, но только после перезагрузки!
Хан Леушуйс
1

У меня есть Chromium (не Chrome) на Ubuntu 14.04 и добавление

/usr/lib/chromium-browser/chrome-sandbox PUxr после строки

/usr/lib/chromium-browser/chromium-browser-sandbox PUxr

в файле /etc/apparmor.d/abstractions/ubuntu-helpers , то sudo service apparmor reloadрешил эту проблему для меня.

Нашел здесь .

ademin
источник
0

У меня была такая же проблема с MATE. Когда я нажал на гиперссылку в PDF документе, он открыл Firefox, хотя я уже пробовал sudo update-alternatives --config x-www-browser.

Полное обсуждение находится на github.com/mate-desktop/mate-control-center/issues/91 . Решение было:

$ mate-default-applications-properties

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

Мартин Тома
источник