Comment lancer une fenêtre firefox distante via SSH?

49

Quand je SSH à une boîte distante

$ ssh -X remotebox

puis lancez Firefox sur la boîte distante

remotebox$ firefox

et j'ai Firefox exécuté sur mon ordinateur local, une fenêtre firefox locale s'ouvrira. aucun processus firefox ne s'exécute sur la boîte distante.

Si firefox ne fonctionne pas sur mon ordinateur local, une fenêtre firefox distante s’ouvrira.

Pourquoi ouvre-t-il une fenêtre firefox locale? Comment puis-je empêcher cela?

Voici quelques informations supplémentaires sur mon système local.

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

Informations de 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

La commande suivante lance une session firefox à distance avec une fenêtre firefox distante.

remotebox$ firefox -no-remote

La commande suivante produit un bref délai, puis revient à l'invite et une fenêtre firefox locale apparaît. Aucun processus firefox ne s'exécute sur la remotebox.

remotebox$ firefox

Informations de 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

La commande suivante sur remotebox2 démarre une session firefox à distance comme prévu.

remotebox2$ firefox

Je ne sais pas pourquoi firefox sur remotebox2 démarre une session à distance au lieu d’une session locale.

    
posée lesmana 03.09.2010 - 05:56
la source

7 réponses

43

outre firefox -no-remote , un autre paramètre est firefox -no-xshm qui révèle la technique utilisée pour le faire fonctionner.

La mémoire partagée X11 est une technique de communication interprocessus qui peut être utilisée par toutes les applications connectées à une session de serveur x donnée. Il peut être utilisé pour effectuer un glisser-déplacer; drop, et autre type d'interaction de bureau.

Il peut être (et est) également utilisé pour implémenter des applications "ouvertes une fois", afin de réduire l’empreinte (ou le nombre de fenêtres).

Le protocole X11 étant transparent pour le réseau, la "mémoire partagée" est également étendue aux clients X11 distants.

    
réponse donnée ithkuil 03.09.2010 - 17:40
la source
10

Essayez firefox -no-remote

    
réponse donnée Dennis Williamson 03.09.2010 - 06:48
la source
9

Note, j'ai fait des dômes en creusant car cela me dérangeait et vous pouvez aussi ajouter:

MOZ_NO_REMOTE=1
export MOZ_NO_REMOTE

à votre profil.

    
réponse donnée user2577 30.09.2010 - 15:31
la source
4

Vous pouvez essayer ceci lorsque vous vous êtes connecté à la machine ( ssh [email protected] ; note: sans l'option -X), tapez d'abord la commande suivante

export DISPLAY=:0 

cela changerait l'affichage par défaut à celui de l'écran actuel du bureau. Et puis tapez simplement

firefox

avoir firefox créé sur la fenêtre du bureau. Assurez-vous que vous êtes connecté au bureau, sans lequel (pas de connexion) vous obtiendrez l'erreur suivante;

firefox: cannot connect to X server :0

Cette méthode fonctionnerait également pour les bureaux verrouillés. Veuillez vous assurer que vous vous êtes connecté sur le bureau et le shell ssh avec le même nom d'utilisateur .

Lorsqu'il existe plusieurs sessions de bureau, chaque session est identifiée par un numéro différent de :0 , :1 , :2 , etc.

    
réponse donnée josip b 11.10.2015 - 18:58
la source
2

Aucune des autres solutions n’a fonctionné pour moi, c’était donc après quelques recherches sur d’autres sites.

Vous devez exécuter Firefox dans un processus distinct de la même manière que si vous le faisiez sur l'ordinateur local. Utilisez le gestionnaire de profils pour créer un nouveau profil comme suit.

export MOZ_NO_REMOTE=1
firefox -ProfileManager

Pour garder les choses cohérentes, j'ai décidé de nommer chaque nouveau profil sur la machine externe comme le nom d'hôte.

    
réponse donnée verayth 24.01.2017 - 22:51
la source
1

Navigation à distance simple

Si vous souhaitez naviguer sur le Web localement comme si vous étiez assis devant une boîte distante:

$ ssh -X [email protected]

exécutez ensuite Firefox dans la session de terminal distant :

$ firefox https://test-ipv6.com/

Notez l'utilisation de l'indicateur -X dans la commande ssh . Vous pouvez également faire les deux étapes en une seule fois, comme indiqué ci-dessous:

$ ssh -X [email protected] firefox http://test-ipv6.com/

Tunneling IP distant: port

Si une application s'exécute à distance et expose une sorte de frontend Web, vous serez intéressé par l'exposition du port IP distant: il s'agit d'un port IP local. Dans ce cas, l'option -L définit une correspondance entre localhost:localport et remotehost:remoteport , comme indiqué dans la pseudo-commande ci-dessous:

ssh -L localhost:localport:remotehost:remoteport [email protected]

Par exemple:

$ ssh -L 127.0.0.1:18080:internal.example.com:8080 [email protected]

puis lancez Firefox localement :

$ firefox http://127.0.0.1:18080

Dans l'exemple ci-dessus, vous vous connectez via SSH sur [email protected] et vous êtes intéressé par un frontend Web exposé à internal.example.com:8080 . Cet IP distant: port sera exposé localement à 127.0.0.1:18080 .

    
réponse donnée Richard Gomes 16.05.2018 - 03:19
la source
0

Je vais juste ajouter ce qui a fonctionné pour moi. Utiliser simplement firefox -no-remote a échoué avec l'erreur habituelle

Error: GDK_BACKEND does not match available displays

Cependant, les éléments suivants ont fonctionné:

ssh -Y [email protected]
firefox -no-remote

L'option -Y active le transfert sécurisé X11. Les renvois X11 approuvés ne sont pas soumis aux commandes d'extension X11 SECURITY. Vous pouvez envisager d'ajouter l'option -C à la commande ssh pour activer également la compression.

    
réponse donnée rahul1210 26.03.2017 - 21:38
la source

Lire d'autres questions sur les étiquettes