2008年12月11日木曜日

FireFox を別プロセスで立ち上げる、プロファイル切り替え必須

Windows版FireFoxの話。(追記:Linux版でもオプション大文字に気をつければOKだそうです。)
FireFoxを複数起動しようとアイコンを叩くも、タスクマネージャではプロセスが一つしか起動しない。
 

[caption id="attachment_1110" align="alignnone" width="500" caption="画像:複数Firefoxも、プロセスは1つ"]画像:複数Firefoxも、プロセスは1つ[/caption]
 

ということでFireFoxを複数のプロセスで起動したい時の使い方を紹介。
副作用としてプロファイルが複数できるので、それだけでも結構使いでがある、複数セッション・ブックマーク・プロキシ使い分けてJmeter録画専用などと用途はいろいろ。
 

ネタ元はMDCのコマンドライン解説ページ
 
 

まずはショートカットを作成


[caption id="attachment_1111" align="alignnone" width="500" caption="画像:FireFoxへのショートカット"]画像:FireFoxへのショートカット[/caption]
プロパティでコマンドラインを確認。
[caption id="attachment_1112" align="alignnone" width="425" caption="画像:FireFoxショートカット(無改造)"]画像:FireFoxショートカット(無改造)[/caption]
 
 

コマンドラインオプションを指定することで複数起動を有効にする


今回使うのは下記2つのオプション、他についてはMDCで
 









-no-remoteアプリケーションを同時に複数起動できるように
-pFireFoxが使うプロファイルを指定する

追記:
Windowsは Pオプション に大文字小文字の区別はないが、Linux版は大文字Pで無いと駄目のようです。この辺のお方に教えてもらいました。
元々公式のオプション開設はPで書いてあるので本来大文字が正しいと言うことでしょう。

 

で、とりあえず "-p" を空っぽの状態にした物を作成、ひとまずの準備完了。
[caption id="attachment_1113" align="alignnone" width="425" caption="画像:Firefoxショートカット、ひな形版"]画像:Firefoxショートカット、ひな形版[/caption]
 
 

プロファイルの作成と用途別のショートカットを作成していく


さっき作ったショートカットを叩いてみよう、見慣れない画面が出てくる。
[caption id="attachment_1114" align="alignnone" width="405" caption="画像:mozillaのプロファイルマネージャ"]画像:mozillaのプロファイルマネージャ[/caption]
 

なんかNetScapeとかでよくみたような感じのプロファイルマネージャが出てくる、新しいプロファイルを作成しよう。
ちなみに「今後このプロファイルを使用する」というオプションは外しておこう、あとで多少面倒になる。
基本的に使われているのは "default" プロファイルなので、ここで作った空っぽのプロファイルがデフォルト(-no-remoteなしの状態)で起動しては困るからだ。
 

ではプロファイルを作ってみよう。
[caption id="attachment_1115" align="alignnone" width="500" caption="画像:プロファイル作成"]画像:プロファイル作成[/caption]
ここで指定した名前は、 "-p" オプションで指定するプロファイル名になる。
今は空っぽで起動したが、 "-p user01" とすれば user01 のプロファイルでFireFoxが起動する。
[caption id="attachment_1116" align="alignnone" width="405" caption="画像:プロファイル作成済み"]画像:プロファイル作成済み[/caption]
さて新しいプロファイルが完成した。
 

使い方1:「"-p" 空っぽのショートカットを叩く」 → 「プロファイル選んで起動」 を繰り返す


"-no-remote" オプションは「複数のアプリケーションを立ち上げることが可能」とあるけど、実は同じプロファイルでのFireFox複数起動はできない。
つまり2つ目以降のFirefoxプロセスの起動には "-p" オプションの指定が必須ということです。
 

ということで初めに作った"-p"オプションにプロファイル名を渡していないショートカットを叩いて、起動していないプロファイルを選択するという作業を繰り返すと…
[caption id="attachment_1117" align="alignnone" width="470" caption="画像:複数起動したFirefox"]画像:複数起動したFirefox[/caption]

という感じ、見事別プロセスでのFireFox起動に成功。
 
 

使い方2:「"-p [プロファイル名]" としてショートカットを叩く」


"-p" オプションに直接プロファイル名を指定しておくことで、プロファイルマネージャをすっとばすことが可能です。
用途別に作るプロファイルはこちらが便利、場合によっては "-no-remote" 外してもいい(ハズ)。
[caption id="attachment_1118" align="alignnone" width="425" caption="画像:使用プロファイルを指定する"]画像:使用プロファイルを指定する[/caption]
と、このように指定します。
 
 
 

おわりに


この手順で作ったプロファイル、それまで使っていた "default" とは何から何まで違います、ブックマーク・Cookieはもちろん、アドオンも全部空っぽ。また、それらは別々に管理されるのでものによっては2度手間ですね。
 

しかし、「使える」ように環境構築するにはそれなりに骨が折れるが、たとえばFireBugなど機能多めなアドオンを有効なやつ、入れてないやつを同時に起動したりできる、片方がクラッシュしてももう一方に影響ないのも大きいです、普段の利用にもプロファイル分離は有用でしょう。