Ich habe einen Linux-Computer, bei dem ich mich regelmäßig über ssh (putty) von Windows aus anmelde. Ich verwende den VcXsrv X-Server auf meinem Windows-Desktop. Ich verwende dies hauptsächlich, um einen Debugger (ddd) und Firefox auszuführen und auf unser webbasiertes Codeüberprüfungssystem zuzugreifen. Es ist praktisch, das Linux-Firefox zu verwenden, damit ich es über ein Skript starten kann. Normalerweise starte ich dies mit "-new-tab", um keine neuen Fenster zu erstellen.
Jetzt habe ich eine neue Linux-Update-Maschine, die ich vorerst neben der alten laufe. Was mir aufgefallen ist, ist ein merkwürdiges Verhalten: Wenn ich eine neue Firefox-Sitzung starte, wenn auf einem der Computer bereits eine ausgeführt wird, wird diese verwendet.
Ich möchte in der Lage sein, immer noch als neue Registerkarte zu starten, jedoch nur unter der Instanz von Firefox vom aktuellen Computer, nicht als Instanz von einem anderen Computer, der zufällig auf demselben X-Server angezeigt wird.
Ich habe mit verschiedenen Flags herumgespielt, darunter -no-remote, -new-instance und auch bestimmte Profile definiert und verwendet. Ich konnte jedoch nicht das gewünschte Ergebnis erzielen. Entweder erhalte ich das oben beschriebene Verhalten oder es wird eine Fehlermeldung angezeigt, die besagt, dass "Firefox bereits ausgeführt wird, aber nicht reagiert, bitte schließen Sie es".
BEARBEITEN: Ich wurde gebeten, dies zu bearbeiten, um einige Beispiele zu liefern.
OKAY. Im Folgenden werde ich auf M_OLD und M_NEW verweisen. Hierbei handelt es sich um separate Computer, auf denen verschiedene Linux-Versionen mit verschiedenen Firefox-Versionen (1.5 und 19) ausgeführt werden. Ich verbinde mich über einen SSH-Client namens Putty mit beiden und leite X an einen X-Server auf meinem Windows-Desktop weiter. Es ist nur ein X-Server beteiligt.
Beispiel 1:
Von meiner Kitt-Sitzung zu M_OLD laufe ich also:
firefox www.google.com &
und von meiner M_NEW-Kitt-Sitzung starte ich:
firefox www.imdb.com &
dann bekomme ich ein Firefox 1.5-Fenster mit zwei Registerkarten. Wenn ich das Gleiche in umgekehrter Reihenfolge mache, erhalte ich das gleiche Ergebnis, jedoch mit Firefox 19. Mit anderen Worten, wie in einem Kommentar unten beschrieben, startet der erste Befehl eine Instanz von Firefox, der zweite weist die vorhandene Instanz einfach an, eine neue Registerkarte zu öffnen. Auch wenn sich die Instanz auf einem anderen Computer befindet, solange es sich um denselben X-Server handelt.
Das will ich aber nicht. Ich möchte separate Instanzen für separate Maschinen haben. Damit:
Beispiel 2:
Von meiner Kitt-Sitzung zu M_OLD laufe ich also:
firefox -no-remote www.google.com &
und von meiner M_NEW-Kitt-Sitzung starte ich:
firefox -no-remote www.imdb.com &
Jetzt habe ich zwei separate Instanzen von Firefox. Wenn ich dann aber auf M_NEW laufe:
firefox -no-remote www.google.com &
Ich werde bekommen
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.
und selbst wenn ich es versuche
firefox -no-remote -new-instance www.google.com &
oder nur
firefox -new-instance www.google.com &
dann bekomme ich trotzdem den fehler.
Was ich wirklich möchte - und es ist möglicherweise nicht möglich - ist, für jeden Computer eine separate Instanz zu haben. Wenn jedoch eine neue URL von diesem Computer aus gestartet wird, wird eine neue Registerkarte geöffnet. Es scheint, als ob ich entweder nur eine Instanz mit neuen Registerkarten für jede URL oder eine Instanz pro Computer haben kann, aber jeweils nur eine.
Hoffentlich ist das klarer.
ssh -X
korrekt verbunden?
--no-remote
. Könnten Sie Ihre Frage bearbeiten und uns mitteilen, wann die Meldung "Firefox läuft bereits" angezeigt wird? Beim Ausführen firefox -no-remote
sollte eine neue Firefox-Instanz gestartet werden, die auf dem Remotecomputer ausgeführt wird, aber auf Ihrem lokalen X-Server angezeigt wird.
-p -no-remote
. Dies ermöglicht es, mit einem neuen Fx-Profil zu beginnen. Siehe Befehlszeilenoptionen . Um eine Verbindung zum bestehenden Fx Prozess könnten Sie versuchen , firefox https://www.mozilla.org
oderfirefox -remote "openURL(https://www.mozilla.org, new-tab)"