Гіперпосилання, які натиснули у програмі перегляду документів переконання, не відкриваються, будь-які ідеї, як виправити?


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 google-chrome
$ /usr/bin/google-chrome

Отже, google-chrome має бути першим варіантом, і все ж наказ про відкриття URL-адреси, схоже, не надходить до програми, навіть не для другого чи третього варіанту для цього питання.

Також команда "Отримати довідку в Інтернеті ..." у меню "Довідка" не працює. Тож це не проблема з конкретним файлом документа.

Я працюю на Ubuntu 12.04 LTS. Якщо вам потрібно запитати більш відповідні деталі, будь ласка, зробіть це. Було б непогано мати різні думки щодо того, як це вирішити, дякую :-)

ОНОВЛЕННЯ: Я побіг евінінгу з терміналу, як запитали.
Це те, що я отримую при спробі відкрити посилання:

/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-посилання завдяки вашому брато!


Чи можете ви запустити evince з терміналу і спробуйте знову натиснути URL-адресу в PDF-файлі. Потім додати будь-які повідомлення про помилки до початкового запитання? Дякую.
Кевін Боуен

пов'язані запитання та запитання, де запропонована відповідь не працює для ОП: 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,.
Серін

3

Жодне з перерахованих вище рішень для мене не працювало, однак це працює:

Подивіться, що наразі є у його ігнорному списку

ls -la /etc/apparmor.d/disable

Тепер додайте переглядач документів (evince) до цього списку

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

залучити зміни

sudo service apparmor restart

Працював для мене, я шукав деякий час! Будь-які подробиці про те, що саме це робить?
Джонатан Н

працює як шарм
Jingguo Yao

1
@ Sh3ljohn Це, по суті, відключає всі посилення безпеки, застосовані для перевірки. Пам’ятайте, що 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

Виникла та ж проблема з 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працювали для мене, але лише після перезавантаження!
Han Leushuis

1

У мене є хром (не 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вирішив цю проблему для мене.

Знайдено тут .


0

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

Повна дискусія знаходиться на github.com/mate-desktop/mate-control-center/isissue/91 . Рішення було:

$ mate-default-applications-properties

Це запустить графічний інтерфейс, де ви можете встановити браузер за замовчуванням.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.