Làm thế nào để hiển thị xclock trên máy tính khác?


8

Tôi muốn hiển thị xclocktrên một máy tính khác.

Trên máy tính của tôi ( 111) tôi có thể chuyển sang pingmáy tính khác ( 222) trong mạng gia đình của mình:

$ ifconfig wlan0
wlan0     Link encap:Ethernet  HWaddr 44:55:66:77:88:99  
          inet addr:192.168.0.111  Bcast:192.168.0.255  Mask:255.255.255.0
$ ping 192.168.0.222

Bộ định tuyến là Bộ định tuyến N Gigabit không dây D-Link DIR-655 .

$ xclock -display 192.168.0.111:0

Hiển thị xclocktrên máy tính của tôi ( 111) như mong đợi. Trên máy tính khác ( 222):

$ xhost +

Nhưng sau đó trở lại trên máy tính của tôi ( 111) nó cũng hiển thị trên máy tính của tôi khi được đổi thành:

$ xclock -display 192.168.0.222:0

Để cố gắng xác minh việc sử dụng công -displaytắc:

$ xclock -display 192.168.0.111:0.1
Error: Can't open display: 192.168.0.111:0.1
$ ping 192.168.0.333
ping: unknown host 192.168.0.333
$ xclock -display 192.168.0.333:0

Tôi hy vọng nó sẽ thất bại nhưng nó cũng hiển thị trên máy tính của tôi ( 111) nhưng với một chút chậm trễ. Những kết quả này cho tôi biết rằng các displayđối số đang đến xclock.

$ uname -a
 Linux mycomputer 3.2.0-27-generic #43-Ubuntu SMP Fri Jul 6 14:46:35 UTC 2012 i686 i686 i386 GNU/Linux

Tôi đang sử dụng LXDE chứ không phải Gnome hay KDE.

Tôi chỉ cố gắng để xclockhiển thị và không quan tâm đến việc giải quyết các vấn đề bảo mật trong câu hỏi này.

Câu trả lời:


5

Hai điều cần kiểm tra: Cổng 6000 cần được mở trên máy 222 (cấu hình hoặc vô hiệu hóa tường lửa) và bản thân máy chủ X cần lắng nghe trên cổng đó. Điều này thường bị vô hiệu hóa trong các distro hiện đại. Kiểm tra xem nó có nghe không

# netstat -nltp | grep 6000
tcp        0      0 0.0.0.0:6000            0.0.0.0:*               LISTEN      10818/Xorg          
tcp6       0      0 :::6000                 :::*                    LISTEN      10818/Xorg          

Nếu không, bạn có thể kích hoạt nó cho gdm trong /etc/gdm/custom.conf

[security]
DisallowTCP=false

Đăng xuất / khởi động lại gdm trên máy 222 và đăng nhập lại. Sau đó, bạn sẽ thấy Xorg nghe trên cổng 6000.


1
'/etc/lightdm/lightdm.conf và thêm xserver-phép-tcp = true' cho LXDE từ askubuntu.com/questions/72812/how-to-disable-nolisten
CW Holeman II

4

Trên máy tính của tôi ( 111):

ssh -X 192.168.0.222

theo sau đơn giản là:

xclock

sẽ chạy xclocktrên máy tính khác ( 222) và hiển thị trên máy tính của tôi ( 111).

Lưu ý: Để làm việc X11Forwardingnày nên được bật trong /etc/ssh/sshd_configmáy tính ( 222)



0

Dưới đây là câu trả lời cập nhật. Nó hoạt động với tôi khi cài đặt Ubuntu 18.04.02 mới.

Tôi đã cài đặt máy chủ ssh để làm cho hệ thống có thể truy cập trên ssh.

Không có gì bị chặn theo mặc định, để xác minh nó. Vì vậy, không có gì để làm. iptables -L

Tôi mở tập tin /etc/gdm/custom.confvà thêm

[security]
DisallowTCP=false

Tôi không chú ý đến những điều sau đây /etc/ssh/sshd_config

AllowTcpForwarding yes
X11Forwarding yes
X11DisplayOffset 10

Tôi khởi động lại máy và chạy lệnh xhost +

Bây giờ tôi đã đi đến máy tính thứ hai và chạy lệnh, đảm bảo xclock đã được cài đặt và giả sử rằng đầu ra của lệnh echo $DISPLAYlà: 1

xclock -display IP_Address:1

Bạn sẽ thấy xclock trên máy tính Ubuntu.

netstat -antlp | grep 6001 đang cho Xorg nghe.

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.