Các siêu liên kết được nhấp vào chứng minh người xem tài liệu không mở, có ý tưởng nào về cách khắc phục?


10

Vì nó đã được hướng dẫn trong một chủ đề khác ở đây trong các diễn đàn, tôi đã mở tệp /usr/share/appluggest/mimeinfo.cache để kiểm tra các tài liệu tham khảo chính xác. Và nhận thấy điều này dường như không phải là vấn đề, thậm chí có 3 trình duyệt tùy chọn để sử dụng.

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

Tôi đã kiểm tra xem các chương trình có được đặt tên chính xác hay không, sử dụng lệnh "which" trong terminal, như thế này:

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

Vì vậy, google-chrome nên là tùy chọn đầu tiên và tuy nhiên, lệnh mở url dường như không đến chương trình, thậm chí không phải là tùy chọn thứ 2 hoặc thứ 3 cho dù sao đi nữa.

Ngoài ra, lệnh 'Nhận trợ giúp trực tuyến ...' trong menu 'Trợ giúp' không hoạt động. Vì vậy, nó cũng không phải là một vấn đề với tệp tài liệu cụ thể.

Tôi đang chạy Ubuntu 12.04 LTS. Nếu bạn cần hỏi thêm chi tiết liên quan, xin vui lòng làm. Thật tuyệt khi có nhiều ý kiến ​​khác nhau về cách giải quyết vấn đề này, cảm ơn bạn :-)

CẬP NHẬT: Tôi chạy evince từ thiết bị đầu cuối như yêu cầu.
Đây là những gì tôi nhận được khi cố gắng mở một liên kết:

/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

Tôi có nên thử bản sửa lỗi mà bạn đề xuất ngay cả khi nhật ký lỗi của tôi khác không?

CẬP NHẬT: Đã thử giải pháp @ maggotbrain và BINGO, bây giờ tôi có thể nghiên cứu các tài liệu tham khảo pdf nhanh hơn nhờ các bạn!


Bạn có thể chạy evince từ một thiết bị đầu cuối và thử nhấp vào một URL trong pdf một lần nữa. Sau đó thêm bất kỳ thông báo lỗi vào câu hỏi ban đầu của bạn? Cảm ơn.
Kevin Bowen

Câu hỏi và trả lời liên quan trong đó câu trả lời được đề xuất không hoạt động cho OP: askubfox.com/questions/254212/ Khăn
Kevin Bowen

1
Tôi vừa cập nhật những phát hiện mới. Tôi xin lỗi tôi chưa thể đưa ra câu trả lời, tôi là người mới trong cộng đồng.
JorgeArtware

Đừng lo lắng. Chào mừng bạn Bạn có thể thử giải pháp của tôi và xem liệu nó có hiệu quả với bạn hay không mặc dù các thông báo lỗi khác nhau. Nếu nó không hoạt động, chỉ cần loại bỏ các dòng từ tập tin và chạy lại lệnh. May mắn nhất.
Kevin Bowen

Câu trả lời:


1

Bạn có thể đang gặp phải một lỗi với việc xử lý các URL bên ngoài của apparmor.

Vấn đề tôi gặp phải khi mở URL trong chứng minh đã dẫn đến lỗi sau đây được tạo ra (trên dòng lệnh) mỗi khi nhấp vào URL trong tài liệu 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

Như đã đề xuất trong bình luận này , tôi đã có thể khắc phục vấn đề này bằng crom bằng cách thực hiện như sau:

Thêm các dòng này vào /etc/apparmor.d/abstrilities/ubfox-helpers sau dòng "/ 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,

Cuối cùng, chạy sudo apparmor_parser -T -W -r /etc/apparmor.d/usr.bin.evince


Tôi đã ghi nhật ký và kết quả tìm kiếm đã ném cùng một trang mà bạn đã đưa cho tôi, về lỗi # 964510 (trên bug.launchpad.net), vì vậy đó là một cách phù hợp với tôi. Tôi sẽ cố gắng làm điều đó. Sẽ thông báo cho bạn về kết quả. :)
JorgeArtware

Bạn là người đàn ông! Nó không chỉ hoạt động mà tôi còn học được cách tự chẩn đoán mọi thứ: D Cảm ơn bạn !!
JorgeArtware

Thông minh! Việc bạn đặt câu hỏi đã giúp tôi giải quyết một vấn đề mà tôi đã có nhưng quên mất cho đến bây giờ. Cảm ơn bạn. Chúc mừng.
Kevin Bowen

Điều này đã làm việc - một khi tôi đã chắc chắn làm theo các hướng dẫn cẩn thận hơn so với nỗ lực đầu tiên của tôi đủ khả năng. Đó là: đảm bảo bạn chèn các dòng được đề xuất 'sau dòng "/ usr / lib * / {, * /} Pixr,":'.
MarkWayne

1
Điều này không hoạt động với tôi trên Ubuntu 16. Không có dòng nào có nội dung chính xác /usr/lib*/{,*/} Pixr,.
Cerin

3

Không có giải pháp nào ở trên làm việc cho tôi, tuy nhiên cách này không hiệu quả:

Xem những gì hiện đang có trong danh sách bỏ qua của nó

ls -la /etc/apparmor.d/disable

Bây giờ thêm Trình xem tài liệu (chứng minh) vào danh sách đó

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

tham gia thay đổi

sudo service apparmor restart

Làm việc cho tôi, tôi đã tìm kiếm một thời gian! Bất kỳ chi tiết về những gì này chính xác?
Jonathan H

hoạt động như một bùa mê
Jingguo Yao

1
@ Sh3ljohn Điều này về cơ bản dường như vô hiệu hóa tất cả các cứng hóa bảo mật được áp dụng để chứng minh. Hãy nhớ rằng các tệp PDF về cơ bản là các bó dữ liệu phức tạp sẽ được phân tích cú pháp và hiển thị (và bằng cách nào đó cũng được thực hiện) thông qua một ngăn xếp phần mềm phức tạp. Vì vậy, họ được biết đến vectơ cho cuộc tấn công.
Stéphane Gourmetichon

1
@ StéphaneGourichon Đó có phải là một điều nguy hiểm không? Tôi không muốn tất cả các kiểm tra bảo mật bị vô hiệu hóa, tôi chỉ muốn có thể nhấp vào liên kết.
Jonathan H

1

Lỗi này đã được sửa một lúc trước. Các dòng trong tập tin /etc/apparmor.d/abstractions/ubuntu-helpersđã được bao gồm.

Xpdf không có vấn đề, tuy nhiên.

Nhưng giả định rằng gnome-gmailgnome-gmail-notifierđược cài đặt, và đã được quy định trong cài đặt hệ thống, để có các siêu liên kết chuyển hướng, người ta phải vô hiệu hóa tỏ ra đầu tiên, và khởi động lại AppArmor sau đó. (Đó là những gì làm việc cho tôi dù sao).

nhập mô tả hình ảnh ở đây

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

Gặp vấn đề tương tự với tỏ ra trong Lubuntu 18,04 LTS, các đường sudo ln -s /etc/apparmor.d/usr.bin.evince, /etc/apparmor.d/disable/usr.bin.evincesudo /etc/init.d/apparmor restartlàm việc cho tôi, nhưng chỉ sau khi khởi động lại!
Han Leushuis

1

Tôi có Chromium (không phải Chrome) trên Ubuntu 14.04 và thêm

/usr/lib/chromium-browser/chrome-sandbox PUxr sau chuỗi

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

trong tệp /etc/apparmor.d/abstrilities/ubfox-helpers , sau đó sudo service apparmor reloadgiải quyết vấn đề này cho tôi.

Tìm thấy ở đây .


0

Tôi đã có cùng một vấn đề với MATE. Khi tôi nhấp vào các siêu liên kết trong một tài liệu PDF để chứng minh rằng nó đã mở Firefox, mặc dù tôi đã thử sudo update-alternatives --config x-www-browser.

Toàn bộ cuộc thảo luận là trên github.com/mate-desktop/mate-control-center/issues/91 . Giải pháp là:

$ mate-default-applications-properties

Điều này sẽ khởi chạy GUI nơi bạn có thể đặt trình duyệt mặc định.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.