Eu tenho uma máquina Linux na qual faço logon regularmente via ssh (putty) do Windows. Estou executando o VcXsrv X-server na minha área de trabalho do Windows. Eu principalmente uso isso para executar um depurador (ddd) e firefox para acessar nosso sistema de revisão de código baseado na web. É conveniente usar o firefox do Linux para que eu possa iniciá-lo a partir de um script. Eu normalmente lanço isso com "-new-tab" para não continuar criando novas janelas.
Agora eu tenho uma nova atualização da máquina Linux que estou correndo ao lado da antiga por enquanto. O que eu notei é um comportamento estranho: quando eu inicio uma nova sessão do Firefox se já existe um em qualquer uma das máquinas, então ele usa isso.
O que eu gostaria de poder fazer é lançar como uma nova aba, mas somente sob a instância do firefox da máquina atual, não uma instância de uma máquina diferente que esteja exibindo no mesmo servidor X. .
Eu tenho jogado com várias bandeiras, incluindo -no-remote, -new-instance e também definindo e usando perfis específicos. No entanto, não consegui obter o resultado desejado. Ou eu recebo o comportamento que descrevi acima, ou recebo um erro dizendo algo como "O Firefox já está em execução, mas não está respondendo, por favor, feche-o".
EDIT: Fui convidado para editar isso para fornecer alguns exemplos.
OK. No que segue, vou me referir a M_OLD e M_NEW. Estas são máquinas separadas que executam diferentes versões do Linux com diferentes versões do Firefox (1.5 e 19). Eu me conecto a eles através de um cliente ssh chamado Putty e estou encaminhando X para um servidor X na minha área de trabalho do Windows. Há apenas um servidor X envolvido.
Exemplo 1:
Então, da minha sessão de putty para M_OLD eu corro:
firefox www.google.com &
e da minha sessão putty M_NEW eu corro:
firefox www.imdb.com &
então eu recebo uma janela do firefox 1.5 com duas guias. Se eu fizer o mesmo na ordem inversa, obtenho o mesmo resultado, mas com o firefox 19. Em outras palavras, como descrito em um comentário abaixo, o primeiro comando inicia uma instância do firefox e o segundo simplesmente diz à instância existente para abrir uma nova guia. Mesmo se a instância estiver em outra máquina, desde que seja o mesmo servidor X.
No entanto, eu não quero isso. Eu quero ter instâncias separadas para máquinas separadas. Então:
Exemplo 2:
Então, da minha sessão de putty para M_OLD eu corro:
firefox -no-remote www.google.com &
e da minha sessão putty M_NEW eu corro:
firefox -no-remote www.imdb.com &
Agora tenho duas instâncias separadas do firefox. No entanto, se eu correr em M_NEW:
firefox -no-remote www.google.com &
Eu vou pegar
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.
e mesmo se eu tentar
firefox -no-remote -new-instance www.google.com &
ou apenas
firefox -new-instance www.google.com &
então ainda receberei o erro.
O que eu realmente quero - e talvez não seja possível - é ter uma instância separada para cada máquina, mas se uma nova URL for lançada dessa máquina, ela abrirá uma nova guia. Parece que só posso ter uma instância com novas guias para cada URL ou uma instância por máquina, mas apenas uma por vez.
Espero que seja mais claro.