我有一台Linux机器,我经常从Windows通过ssh(putty)登录。我在Windows桌面上运行VcXsrv X服务器。我主要使用它来运行调试器(ddd)和firefox,以访问我们基于Web的代码审查系统。使用Linux firefox很方便,因此我可以从脚本启动它。我通常使用“ -new-tab”启动它,以免继续创建新窗口。
现在,我有一台新的更新Linux机器,该机器暂时与旧机器一起运行。我注意到的是一些奇怪的行为:当我启动一个新的firefox会话时,如果任何一台计算机上已经运行了一个,则它将使用该会话。
我想做的仍然是作为新选项卡启动,但仅在当前计算机上的firefox实例下启动,而不是恰好在同一台X服务器上显示的另一台计算机上的实例下。
我一直在玩各种标志,包括-no-remote,-new-instance以及定义和使用特定配置文件。但是,我一直无法获得理想的结果。我得到了上面描述的行为,或者得到了一个错误消息,例如“ Firefox已经在运行但没有响应,请关闭它”。
编辑:我被要求对此进行编辑以提供一些示例。
好。接下来,我将介绍M_OLD和M_NEW。这些是运行不同版本的Linux和不同版本的Firefox(1.5和19)的独立计算机。我通过一个名为Putty的ssh客户端连接到它们,并将X转发到Windows桌面上的X服务器。仅涉及一台X服务器。
范例1:
因此,从腻子会话到M_OLD,我运行:
firefox www.google.com &
然后从我的M_NEW油灰会话中运行:
firefox www.imdb.com &
然后我得到一个带有两个选项卡的firefox 1.5窗口。如果我反向执行相同操作,则得到相同的结果,但使用firefox19。换句话说,如下面的注释所述,第一个命令启动一个firefox实例,第二个命令简单地告诉现有实例打开一个新选项卡。即使实例在另一台计算机上,只要它是同一台X服务器即可。
但是我不要这个。我想为单独的机器设置单独的实例。所以:
范例2:
因此,从腻子会话到M_OLD,我运行:
firefox -no-remote www.google.com &
然后从我的M_NEW油灰会话中运行:
firefox -no-remote www.imdb.com &
现在,我有两个单独的Firefox实例。但是,如果我随后在M_NEW上运行:
firefox -no-remote www.google.com &
我去拿
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.
即使我尝试
firefox -no-remote -new-instance www.google.com &
要不就
firefox -new-instance www.google.com &
那么我仍然会收到错误消息。
我真正想要的-可能是不可能的-每台机器都有一个单独的实例,但是如果从该机器启动了新的URL,它将打开一个新的选项卡。似乎我只能为每个URL拥有一个带有新选项卡的实例,或者每台计算机只有一个实例,但一次只能拥有一个。
希望这更清楚。
ssh -X
正确连接到两台计算机?