Saya menggunakan Putty pada mesin Windows untuk ssh ke server lain. Sesampai di sana, saya mencoba menggunakan penerusan X11 untuk memunculkan jendela ke komputer saya. Sistem jarak jauh bukan masalah karena ini adalah sistem besar yang berhasil digunakan oleh banyak pengguna lain dengan cara yang sama.
Saya masuk ke sistem melalui Putty tanpa masalah dan kemudian jalankan startxwin
di cygwin. Namun, saat menjalankan xterm
Putty, saya diberikan kesalahan di xterm Xt error: Can't open display: localhost:##.0
mana tanda-tanda pon adalah dua bilangan bulat yang nilainya berubah setiap kali saya masuk.
- Saya memiliki penerusan X11 diaktifkan di pengaturan Putty
- Saya mencoba mengatur "X display location" ke
localhost:0
- Saya telah memastikan untuk mengunduh paket X11 untuk cygwin
- Saya telah mencoba menggunakan hanya
startx
bukanstartxwin
- Saya sudah mencoba
setenv DISPLAY localhost:0
dansetenv DISPLAY my.ip.address
Sayangnya, masalah ini tetap ada. Saya telah menghabiskan sumber daya Googling saya tentang topik ini dan karenanya saya akan sangat menghargai bantuan apa pun. Terima kasih!
localhost:##.0
Berapa angka aktual yang Anda lihat di sini? Apa jenis perangkat lunak X yang Anda jalankan di komputer Windows?Jawaban:
Pembaruan Cygwin terbaru telah mengubah server X-nya untuk tidak mendengarkan koneksi TCP secara default. Sebagai gantinya, Cygwin X menggunakan (implementasi Cygwin dari) soket domain Unix, dan Putty (sebagai program Windows asli) tidak tahu cara menggunakannya.
The Cygwin X FAQ dan Cygwin mailing list memiliki rincian lebih lanjut.
Solusi saya adalah mengambil jalan pintas Cygwin standar yang menggunakan startxwin untuk meluncurkan X:
dan ganti dengan doa xinit langsung dengan opsi yang saya inginkan (tambah
-listen tcp
dan hapus-auth
):Ini kurang aman daripada standar baru Cygwin; seharusnya hanya digunakan pada sistem pengguna tunggal, dan mengonfigurasi firewall Anda untuk memblokir koneksi ke XWin mungkin bijaksana.
sumber
Sebagai alternatif dari apa yang dikatakan Josh Kelley, Anda juga dapat mengedit file startxwin dan menambahkan "-listen tcp" ke argumen server default.
Lama: defaultserverargs = "- multiwindow"
Baru: defaultserverargs = "- multiwindow -listen tcp"
Juga dengan otentikasi diaktifkan, saya harus mengarahkan dempul ke file otentikasi yang dibuat oleh skrip startxwin. Milik saya ada di sini: c: \ cygwin64 \ home \ USERNAME.Xauthority
Karena file ini dibuat ulang, Anda harus memulai kembali sesi dempul setelah Anda mereset xserver Anda.
Untuk keamanan, Anda mungkin juga hanya mengizinkan koneksi dari localhost, karena ini adalah tempat dempul meneruskannya.
sumber
Coba setel "X display location" ke ': 0,0' sebagai gantinya!
Josh Kelley menyebutkan FAQ Cygwin X :
sumber
Ini untuk xming, tapi mungkin faq ini bisa membantu? Gagasan di baliknya adalah sama tetapi menggunakan xming alih-alih cygwin pada mesin lokal Anda. https://wiki.utdallas.edu/wiki/display/FAQ/X11+Meneruskan + menggunakan+Xming+and+PuTTY
sumber
Seperti yang orang lain katakan, triknya adalah menambah
-listen tcp
argumen server. Namun, saya sarankan melakukan ini dengan memanggilstartxwin -- -listen tcp
untuk membiarkanstartxwin
membangun sisaxinit
perintah.Dalam shortcut Start Menu:
sumber