Saya memiliki mesin Linux yang secara teratur saya masuki melalui ssh (dempul) dari Windows. Saya menjalankan VcXsrv X-server di desktop Windows saya. Saya terutama menggunakan ini untuk menjalankan debugger (ddd) dan firefox untuk mengakses sistem peninjauan kode berbasis web kami. Lebih mudah menggunakan Linux firefox sehingga saya bisa meluncurkannya dari skrip. Saya biasanya meluncurkan ini dengan "-new-tab" agar tidak terus membuat jendela baru.
Sekarang saya punya mesin Linux pembaruan baru yang saya jalankan bersama yang lama untuk saat ini. Apa yang saya perhatikan adalah beberapa perilaku aneh: ketika saya meluncurkan sesi firefox baru jika ada yang sudah berjalan di kedua mesin, maka ia menggunakan itu.
Apa yang saya ingin dapat lakukan masih diluncurkan sebagai tab baru tetapi hanya di bawah contoh firefox dari mesin saat ini, bukan sebuah contoh dari mesin yang berbeda yang kebetulan ditampilkan pada server-X yang sama.
Saya telah bermain-main dengan berbagai flag termasuk -no-remote, -new-instance dan juga mendefinisikan dan menggunakan profil tertentu. Namun saya belum bisa mendapatkan hasil yang diinginkan. Entah saya mendapatkan perilaku yang saya jelaskan di atas, atau saya mendapatkan kesalahan mengatakan sesuatu seperti "Firefox sudah berjalan tetapi tidak merespons, harap tutup".
EDIT: Saya diminta mengedit ini untuk memberikan beberapa contoh.
BAIK. Berikut ini saya akan merujuk ke M_OLD dan M_NEW. Ini adalah mesin terpisah yang menjalankan berbagai versi Linux dengan versi Firefox yang berbeda (1.5 dan 19). Saya terhubung ke keduanya melalui klien ssh bernama Putty dan saya meneruskan X ke server X di desktop Windows saya. Hanya ada satu server X yang terlibat.
Contoh 1:
Jadi dari sesi dempul saya ke M_OLD saya jalankan:
firefox www.google.com &
dan dari sesi dempul M_NEW saya, saya menjalankan:
firefox www.imdb.com &
lalu saya mendapatkan satu jendela firefox 1.5 dengan dua tab. Jika saya melakukan hal yang sama secara terbalik, saya mendapatkan hasil yang sama tetapi dengan firefox 19. Dengan kata lain, seperti yang dijelaskan dalam komentar di bawah ini, perintah pertama meluncurkan sebuah instance dari firefox yang kedua hanya memberi tahu instance yang ada untuk membuka tab baru. Bahkan jika instance ada di komputer lain, asalkan X server yang sama.
Namun saya tidak menginginkan ini. Saya ingin memiliki mesin virtual yang terpisah untuk mesin yang berbeda. Begitu:
Contoh 2:
Jadi dari sesi dempul saya ke M_OLD saya jalankan:
firefox -no-remote www.google.com &
dan dari sesi dempul M_NEW saya, saya menjalankan:
firefox -no-remote www.imdb.com &
Sekarang saya memiliki dua contoh firefox yang terpisah. Namun jika saya menjalankannya di M_NEW:
firefox -no-remote www.google.com &
Saya akan mendapatkan
Firefox is already running, but is not responding. To open a new window, you must first close the existing Firefox process, or restart your system.
dan bahkan jika saya mencoba
firefox -no-remote -new-instance www.google.com &
atau hanya
firefox -new-instance www.google.com &
maka saya masih akan mendapatkan kesalahan.
Apa yang benar-benar saya inginkan - dan mungkin tidak mungkin - adalah memiliki contoh terpisah untuk setiap mesin tetapi jika URL baru diluncurkan dari mesin itu, ia membuka tab baru. Sepertinya saya hanya dapat memiliki satu instance dengan tab baru untuk setiap URL, atau satu instance per mesin, tetapi hanya satu per satu.
Semoga itu lebih jelas.
ssh -X
benar?
--no-remote
. Bisakah Anda mengedit pertanyaan Anda dan memberi tahu kami ketika Anda mendapatkan pesan "Firefox sudah berjalan"? Menjalankan firefox -no-remote
harus memulai instance firefox baru yang berjalan pada mesin jarak jauh tetapi ditampilkan pada server X lokal Anda.
-p -no-remote
. Ini memungkinkan untuk memulai dengan profil Fx baru. Lihat opsi baris perintah . Untuk terhubung ke proses Fx yang ada, Anda dapat mencoba firefox https://www.mozilla.org
ataufirefox -remote "openURL(https://www.mozilla.org, new-tab)"