Ketika saya SSH ke kotak remote
$ ssh -X remotebox
kemudian mulai firefox pada kotak remote
remotebox$ firefox
dan saya memiliki firefox berjalan di mesin lokal saya, jendela firefox lokal akan terbuka. tidak ada proses firefox yang berjalan di kotak remote.
Jika firefox tidak berjalan di mesin lokal saya maka jendela firefox jarak jauh akan terbuka.
Mengapa membuka jendela firefox lokal? Bagaimana saya bisa mencegahnya?
Berikut ini beberapa informasi lebih lanjut tentang sistem lokal saya.
Linux lesmana-laptop 2.6.32-24-generic #42-Ubuntu SMP Fri Aug 20 14:24:04 UTC 2010 i686 GNU/Linux
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 10.04.1 LTS
Release: 10.04
Codename: lucid
DISPLAY=:0.0
Mozilla Firefox 3.6.8, Copyright (c) 1998 - 2010 mozilla.org
Informasi remotebox.
Linux dxray 2.6.22.19-0.4-default #1 SMP 2009-08-14 02:09:16 +0200 x86_64 x86_64 x86_64 GNU/Linux
LSB Version: core-2.0-noarch:core-3.0-noarch:core-2.0-x86_64:core-3.0-x86_64:desktop-3.1-amd64:desktop-3.1-noarch:graphics-2.0-amd64:graphics-2.0-noarch:graphics-3.1-amd64:graphics-3.1-noarch
Distributor ID: SUSE LINUX
Description: openSUSE 10.3 (X86-64)
Release: 10.3
Codename: n/a
DISPLAY=localhost:15.0
Mozilla Firefox 3.0.14, Copyright (c) 1998 - 2009 mozilla.org
Perintah berikut memulai sesi firefox jarak jauh dengan jendela firefox jarak jauh.
remotebox$ firefox -no-remote
Perintah berikut menghasilkan penundaan singkat, lalu turun kembali ke prompt dan jendela firefox lokal muncul. Tidak ada proses firefox yang berjalan di remotebox.
remotebox$ firefox
Informasi remotebox2.
Linux marvin 2.6.31-22-generic #60-Ubuntu SMP Thu May 27 00:22:23 UTC 2010 i686 GNU/Linux
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 9.10
Release: 9.10
Codename: karmic
DISPLAY=localhost:11.0
Mozilla Firefox 3.6.8, Copyright (c) 1998 - 2010 mozilla.org
Perintah berikut pada remotebox2 memulai sesi firefox jarak jauh seperti yang diharapkan.
remotebox2$ firefox
Saya tidak tahu mengapa firefox di remotebox2 memulai sesi jarak jauh alih-alih sesi lokal.
$DISPLAY
variabel di mesin lokal dan remote?$DISPLAY
sepertinya tidak menjadi masalah, ssh tampaknya mengatur semuanya dengan benar.Jawaban:
selain
firefox -no-remote
parameter lain adalahfirefox -no-xshm
yang mengungkapkan teknik yang digunakan untuk membuatnya berfungsi.Memori bersama X11 adalah teknik komunikasi antar proses yang dapat digunakan oleh semua aplikasi yang terhubung dengan sesi server x yang diberikan. Ini dapat digunakan untuk melakukan drag & drop, dan jenis interaksi desktop lainnya.
Itu dapat (dan) digunakan juga untuk mengimplementasikan aplikasi "buka sekali", untuk mengurangi jejak (atau jumlah jendela).
Karena protokol X11 transparan jaringan, "memori bersama" diperluas juga ke klien X11 jarak jauh.
sumber
Mencoba
firefox -no-remote
sumber
sshd_config
Anda mungkin memiliki situasi di mana ia dieksekusi dan diteruskan kembali.Catatan, saya melakukan penggalian kubah karena ini mengganggu saya dan Anda juga bisa menambahkan:
ke profil Anda.
sumber
Anda dapat mencoba ini, ketika Anda terhubung ke mesin (
ssh user@host
; catatan: tanpa opsi -X), pertama-tama ketik perintah followini akan mengubah tampilan default ke layar desktop saat ini. Dan kemudian ketik saja
agar firefox muncul di jendela desktop. Pastikan Anda telah masuk ke desktop, yang tanpanya (tanpa login) Anda akan mendapatkan kesalahan berikut;
Metode ini juga bisa digunakan untuk desktop yang terkunci. Pastikan Anda telah masuk di desktop dan ssh shell dengan nama pengguna yang sama .
Ketika ada beberapa sesi desktop setiap sesi diidentifikasi dengan nomor yang berbeda sebagai
:0
,:1
,:2
, dllsumber
Tidak ada solusi lain yang bekerja untuk saya, jadi ini setelah sedikit mencari di situs lain.
Anda perlu menjalankan firefox dalam proses terpisah dengan cara yang sama Anda lakukan jika Anda melakukan semuanya di mesin lokal. Gunakan manajer profil untuk membuat profil baru sebagai berikut.
Agar semuanya tetap konsisten, saya memutuskan untuk memberi nama setiap profil baru pada mesin eksternal sama dengan nama host.
sumber
Penjelajahan jarak jauh sederhana
Jika Anda ingin menjelajahi web secara lokal seolah-olah Anda sedang duduk di depan kotak remote:
kemudian jalankan Firefox di dalam sesi terminal jarak jauh :
Perhatikan penggunaan
-X
flag padassh
perintah. Anda juga dapat melakukan kedua langkah dalam sekali jalan, seperti yang ditunjukkan di bawah ini:Tunneling IP jarak jauh: port
Jika Anda memiliki aplikasi yang menjalankan dari jarak jauh yang memperlihatkan semacam frontend web, Anda akan tertarik untuk mengekspos port IP: port seolah-olah itu adalah port IP: port lokal. Dalam hal ini,
-L
opsi menentukan korespondensi antaralocalhost:localport
danremotehost:remoteport
, seperti yang ditunjukkan pada perintah pseudo di bawah:Sebagai contoh:
kemudian jalankan Firefox secara lokal :
Pada contoh di atas, Anda terhubung melalui SSH ke
[email protected]
, dan Anda tertarik pada web frontend yang terbuka diinternal.example.com:8080
. Port IP: remote ini akan diekspos secara lokal di127.0.0.1:18080
.sumber
Saya hanya akan menambahkan apa yang berhasil untuk saya. Cukup menggunakan
firefox -no-remote
gagal dengan kesalahan biasaNamun, yang berikut ini berhasil:
The
-Y
pilihan memungkinkan dipercaya X11 forwarding. Penerusan X11 tepercaya tidak dikenai kontrol ekstensi X11 SECURITY. Anda dapat mempertimbangkan untuk menambahkan-C
opsi padassh
perintah untuk mengaktifkan kompresi juga.sumber