web-dev-qa-db-ja.com

ドキュメントビューアーでクリックしたハイパーリンクが開かない、修正方法についてのアイデアはありますか?

このフォーラムの別のスレッドで指示されたので、正しい参照を確認するために/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を開く順序はプログラムに到達していないようです。

また、「ヘルプ」メニューの「ヘルプをオンラインで取得...」コマンドが機能しません。そのため、特定のドキュメントファイルにも問題はありません。

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の参照をより早く学習できるようになりました。

10
JorgeArtware

bug に対して、apparmorによる外部URLの処理を実行している可能性があります。

私がevince内でURLを開いていた問題により、pdfドキュメント内のURLをクリックするたびに(コマンドラインで)次のエラーが生成されました。

(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を実行します

1
Kevin Bowen

上記の解決策はどれもうまくいきませんでしたが、これはうまくいきます:

無視リストに現在あるものを確認する

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
3
Scott Stensland

私は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がこの問題を解決しました。

見つかった ここ

1
ademin

このバグはしばらく前に修正されました。ファイル/etc/apparmor.d/abstractions/ubuntu-helpersの行が含まれていました。

Xpdfただし、問題はありませんでした。

ただし、gnome-gmailgnome-gmail-notifierがインストールされ、システム設定で指定されていると仮定すると、ハイパーリンクをリダイレクトするには、最初にevinceを無効にし、その後apparmorを再起動する必要があります。 (それはとにかく私のために働いたものです)。

enter image description here

Sudo ln -s /etc/apparmor.d/usr.bin.evince /etc/apparmor.d/disable/usr.bin.evince
Sudo /etc/init.d/apparmor restart
1
doed

MATEでも同じ問題が発生しました。 PDFドキュメントのハイパーリンクをクリックすると、Firefoxが開きましたが、Sudo update-alternatives --config x-www-browserを試してみました。

完全な議論は github.com/mate-desktop/mate-control-center/issues/91 にあります。解決策は次のとおりです。

$ mate-default-applications-properties

これにより、デフォルトのブラウザを設定できるGUIが起動します。

0
Martin Thoma