Bắt đầu firefox trên một máy chủ từ xa (qua ssh) sẽ mở một cửa sổ mới cục bộ: chuyện gì đang xảy ra?


22

Tôi chưa bao giờ nhận thấy hành vi này trước đây, và có một chút bối rối về những gì đang xảy ra. Tôi có một bản sao firefox cục bộ đang chạy, sau đó ssh ( ssh -X <url>) vào một máy chủ từ xa và bắt đầu một bản sao ở đó để sử dụng màn hình cục bộ. Hóa ra firefox địa phương vừa mở một cửa sổ mới. Tôi đã xác minh ps x|grep firefoxrằng thực sự không có quá trình firefox được bắt đầu trên máy chủ từ xa.

Hành vi kỳ lạ tương tự này xảy ra ngược lại: nếu tôi có một firefox từ xa đang chạy và cố gắng khởi động một cục bộ, thì cái từ xa sẽ mở ra một cửa sổ mới.

Tôi đang sử dụng Ubuntu 10,4, với bản cài đặt gần như hoàn toàn mới (tôi mới nhận được máy tính này vào chiều nay). Tôi đã cố gắng để hai firefox chạy cùng một lúc để tôi có thể dễ dàng chạy xuống danh sách các plugin để cài đặt.

Điều gì đang xảy ra ở đây, và làm thế nào tôi có thể tránh nó xảy ra?

Câu trả lời:


9

Nếu tôi phải đưa ra một phỏng đoán có giáo dục về những gì đang diễn ra ở đây, tôi sẽ nói rằng firefox trước tiên tìm một cửa sổ firefox mở trước khi khởi chạy và nếu nó tồn tại sẽ gửi một tin nhắn bằng X để bắt đầu một cửa sổ trình duyệt mới. Bởi vì hệ thống từ xa đang sử dụng màn hình cục bộ của bạn, bất cứ điều gì nó sử dụng để phát hiện đều chọn cửa sổ cục bộ. (Điều này cũng sẽ giải thích tại sao cửa sổ từ xa được tìm thấy khi bạn bắt đầu quá trình firefox cục bộ.)

Bạn có thể kiểm tra điều này bằng cách đóng tất cả các cửa sổ firefox cục bộ, và sau đó thử khởi động firefox trên máy chủ từ xa - nếu phát hiện xảy ra như tôi nghĩ, sẽ không có cửa sổ nào chạy để nó bám vào, vì vậy nó sẽ Sẽ bắt đầu một phiên bản trên hệ thống từ xa như bạn mong đợi.

Theo như thực sự khắc phục sự cố, đề xuất của tante để đặt MOZ_NO_REMOTE là giải pháp phù hợp.


Các thử nghiệm chắc chắn đi ra tích cực; Tôi chưa bao giờ biết có một hệ thống nhắn tin như vậy trong X.
kasterma

21

Đã xảy ra sự cố với firefox trong một thời gian dài, hãy thử chạy firefox vì firefox -no-remote(cài đặt MOZ_NO_REMOTE=1là biến môi trường cũng sẽ hoạt động tốt).

Đây là thông tin thêm


1
Cảm ơn, điều đó giải quyết vấn đề. Tôi cũng tìm thấy một số thông tin trong mozillazine: kb.mozillazine.org/. Một điều mà nó không giải quyết được là sự nhầm lẫn của tôi: Tôi đang ở trên máy tính A, tôi ssh qua máy tính B. Trên máy tính BI khởi động một firefox mới để sử dụng màn hình trên máy tính A, làm thế nào để máy tính B biết không bắt đầu một quy trình mới? Đây phải là một phần của giao thức X mà tôi không quen thuộc.
kasterma

Trong sshd_conf bạn có một tùy chọn cho điều đó: X11Forwarding yes Điều này cho ssh yêu cầu X chuyển tiếp đầu ra của nó qua đường hầm ssh đến máy chủ X của bạn bất cứ khi nào bạn khởi động một ứng dụng với GUI.
Patkos Csaba
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.