Hiểu về biến môi trường X Windows HIỂN THỊ khi tạo đường hầm


9

Tôi muốn ssh đến các máy chủ từ xa, cả hai đều chạy CentOSvới X11Forwardingkích hoạt.

Tuy nhiên, ứng dụng X không thể chạy đúng trên một trong số chúng - trên máy chủ B, nó hoạt động tốt. Nhưng trên máy chủ AI gặp lỗi "không thể kết nối để hiển thị", mỗi lần tôi khởi chạy ứng dụng X.

Sau khi kiểm tra DISPLAYbiến môi trường trên máy chủ A mà tôi nghĩ có liên quan đến cửa sổ X, tôi đã tìm thấy giá trị của nó localhost:10.0. Làm theo các mẹo ở đây , tôi thay đổi DISPLAY=0:10.0và nó hoạt động. Tuy nhiên, DISPLAYtrên máy chủ B vẫn còn localhost:10.0và hoạt động tốt.

Câu hỏi của tôi là, giá trị DISPLAYđại diện là gì? Sự khác biệt giữa localhost:10.0và là 0:10.0gì?

Người ta nói rằng localhostxác định một tên máy chủ. Sau đó, máy chủ nào xác định máy chủ, máy chủ (máy chủ A / B) mà ứng dụng X của tôi đang chạy hoặc máy khách cục bộ của tôi nơi tôi muốn cửa sổ X hiển thị?

Bất kỳ gợi ý hoặc con trỏ đến tài liệu sẽ được đánh giá cao.

Câu trả lời:


5

Một phần của câu trả lời thực sự có thể được tìm thấy ở đây: /programming/746119/how-do-you-use-display-specutions

Biến HIỂN THỊ về cơ bản là 3 thành phần:

<host>:<display>[.<screen>]

Theo như localhost aka 127.0.0.1 so với 0.0.0.0 aka 0 có liên quan, bạn có thể xem bài đăng này:

/server/78048/whats-the-difference-b between-ip-address-0-0-0-0-and-12-0-0-1

Điều này giải thích sự khác biệt.

Trong trường hợp cụ thể của bạn 0.0.0.0:10.0 và localhost: 10.0 sẽ có tác dụng tương tự nhưng về cơ bản có nghĩa là:

  1. kết nối trên bất kỳ giao diện nào có màn hình 10 được thiết lập
  2. kết nối trên lo0 với trình nghe 10.

Thực tế sẽ không có sự khác biệt vì trong trường hợp đầu tiên, việc quét tất cả các giao diện sẽ bắt đầu bằng lo0, thường là giao diện đầu tiên trong danh sách.


1
Cảm ơn lúc đầu. Tôi tìm thấy vấn đề thực sự làm theo lời khuyên của bạn. Vấn đề thực sự là nó localhostbị ràng buộc 192.168.1.200(một số ip cụ thể như thế. Tôi không muốn để lộ cấu hình thực sự của mình.) Trên máy chủ A. Nó cũng hoạt động khi xuất DISPLAY=127.0.0.1:10.0. Có chuyển tiếp X chỉ hoạt động trên giao diện loopback?
Summer_More_More_Tea

localhostlà một tên đặc biệt liên kết với giao diện loopback (lo0) trên Linux, nó không bao giờ bị ràng buộc với một địa chỉ IP thực. Bạn thực sự có thể kiểm tra ràng buộc bằng cách chạy sudo netstat -apn | grep 6010SSH của bạn nên lắng nghe trên cổng đó để biết kết nối hiển thị. Theo như tôi có thể nói nó 127.0.0.1chỉ.
Karlson
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.