J'ai une machine Linux à laquelle je me connecte régulièrement via ssh (putty) à partir de Windows. J'exécute VcXsrv X-server sur mon bureau Windows. Je l'utilise principalement pour exécuter un débogueur (ddd) et firefox pour accéder à notre système de révision de code basé sur le Web. Il est pratique d'utiliser Linux Firefox pour que je puisse le lancer à partir d'un script. Je lance normalement ceci avec "-new-tab" afin de ne pas continuer à créer de nouvelles fenêtres.
Maintenant, j'ai une nouvelle machine Linux de mise à jour que j'exécute à côté de l'ancienne pour le moment. Ce que j'ai remarqué, c'est un comportement étrange: lorsque je lance une nouvelle session Firefox s'il y en a déjà une sur l'une ou l'autre machine, elle l'utilise.
Ce que j'aimerais pouvoir faire, c'est toujours lancer sous un nouvel onglet mais uniquement sous l'instance de Firefox de la machine actuelle, pas une instance d'une autre machine qui se trouve être affichée sur le même X-Server.
J'ai joué avec divers drapeaux, y compris -no-remote, -new-instance et également définir et utiliser des profils spécifiques. Cependant, je n'ai pas pu obtenir le résultat souhaité. Soit j'obtiens le comportement que j'ai décrit ci-dessus, soit je reçois une erreur disant quelque chose comme "Firefox est déjà en cours d'exécution mais ne répond pas, veuillez le fermer".
EDIT: on m'a demandé de modifier cela pour fournir des exemples.
D'ACCORD. Dans ce qui suit, je ferai référence à M_OLD et M_NEW. Il s'agit de machines distinctes exécutant différentes versions de Linux avec différentes versions de Firefox (1.5 et 19). Je me connecte à eux deux via un client ssh appelé Putty et je transfère X vers un serveur X sur mon bureau Windows. Il n'y a qu'un seul serveur X impliqué.
Exemple 1:
Donc, de ma session de mastic à M_OLD, je lance:
firefox www.google.com &
et depuis ma session M_NEW putty je lance:
firefox www.imdb.com &
puis je reçois une fenêtre firefox 1.5 avec deux onglets. Si je fais la même chose en sens inverse, j'obtiens le même résultat mais avec firefox 19. En d'autres termes, comme décrit dans un commentaire ci-dessous, la première commande lance une instance de firefox la seconde dit simplement à l'instance existante d'ouvrir un nouvel onglet. Même si l'instance se trouve sur une autre machine, tant qu'il s'agit du même serveur X.
Mais je n'en veux pas. Je veux avoir des instances distinctes pour des machines distinctes. Donc:
Exemple 2:
Donc, de ma session de mastic à M_OLD, je lance:
firefox -no-remote www.google.com &
et depuis ma session M_NEW putty je lance:
firefox -no-remote www.imdb.com &
Maintenant, j'ai deux instances distinctes de Firefox. Cependant, si je lance ensuite sur M_NEW:
firefox -no-remote www.google.com &
j'aurais
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.
et même si j'essaye
firefox -no-remote -new-instance www.google.com &
ou juste
firefox -new-instance www.google.com &
alors j'obtiendrai toujours l'erreur.
Ce que je veux vraiment - et ce n'est peut-être pas possible - c'est d'avoir une instance distincte pour chaque machine mais si une nouvelle URL est lancée à partir de cette machine, elle ouvre un nouvel onglet. Il semble que je ne puisse avoir qu'une seule instance avec de nouveaux onglets pour chaque URL, ou une instance par machine, mais une seule à la fois.
J'espère que c'est plus clair.
ssh -X
correct?
--no-remote
. Pourriez-vous modifier votre question et nous dire quand vous recevez le message "Firefox déjà en cours d'exécution"? L'exécution firefox -no-remote
devrait démarrer une nouvelle instance de Firefox exécutée sur la machine distante mais affichée sur votre serveur X local.
-p -no-remote
. Cela permet de commencer avec un nouveau profil Fx. Voir Options de ligne de commande . Pour vous connecter au processus Fx existant, vous pouvez essayer firefox https://www.mozilla.org
oufirefox -remote "openURL(https://www.mozilla.org, new-tab)"