「Google Chrome」のユーザーデータをポータブル化する(別ディレクトに移す)方法です。
この2〜3年ぐらい、Firefox Portable をメインに使ってきたのですが、最近どうにも遅くなり、キャッシュの削除やDBの整理でも駄目な感じが続いていました。
FirefoxPortable Localization PortableApps.com 何が辛いかというと、複数のタブを開いた場合、切り替えに2秒ぐらいかかる……。死ねる。
そこで、Firefox からいったん離れて、Google Chrome にふたたび乗り換えることにしました。ブラウザを変えるタイミングって、だいたい、こういう時なんですよね。
さて、乗り換えなのですが、すんなりいきませんでした。以下のような、私的な条件があるからです。
・Cドライブ以外にデータを入れて、他のデータとともに、ブラウザ環境もポータブルHDDで移動可能にする。
数年前、PCの初期不良で何度も工場にPCを送るはめになり、そのたびにCドライブのデータを消すのが面倒だったのです。
なので、データはすべて外付けにして、他のPCにUSBをさせば、すぐに仕事を続行できるような環境にしました。
というわけで、この2〜3年ぐらいは、FireFox Portable をメインにして、Google Chrome Portable (プライベートモード)をサブで使っていました。
さて、Google Chrome のポータブル環境移行ですが、Google Chrome Portable に環境を移せば解決……というわけにはいきませんでした。
Google Chrome Portable PortableApps.com なぜならば、Google Chrome Portable には、大きな欠陥があるからです。
PortableApps.com のソフトは、「GoogleChromePortable\GoogleChromePortable.exe」 のような exe を基点に起動して、ポータブル環境で動作します。
しかし、Google Chrome Portable から「既定のブラウザ」に設定すると、「GoogleChromePortable\App\Chrome-bin\chrome.exe」の方に関連付けがされてしまうのです。
その結果、ポータブル環境のユーザーデータではなく、Cドライブの「既定のユーザー環境のパス」を読みに行ってしまいます。その結果、ブックマークなどが一切読み込まれなくなります。
サブで使うのには「既定のブラウザ」にする必要がないからよいのですが、メインで使うのには難ありです。FirefoxPortable は、こんなことはないのですが。
対策として、レジストリを全て書き換えることも考えたのですが、毎回PC環境を作る度にそれは面倒です。
ネットを見ていると、Google Chrome が使うレジストリは、時期によって違います。おそらく今後も変わる可能性があります。
また、Google Chrome Portable には自動でアップデートされないという問題もありました。FirefoxPortable の方は、自動でアップデートされるのですが。
というわけで、あれこれ考えた結果、別の方法を採用しました。
結論から言うと、「シンボリック リンク」を使い、実現しました。
実行ファイルはCドライブに入れることになるので、完全なポータブル化ではないですが、データはポータブル化されます。自動アップデートも有効になるので、バランスのよい状態だと思います。
以下、手順です。
1. Google Chrome を普通にインストールする。
2. Google Chrome が起動しているのならば終了する。
3. 「C:\Users\【ユーザー】\AppData\Local\Google\Chrome\User Data」(【ユーザー】は任意の名前)を、他のドライブにコピーする。仮に「V:\GoogleChromeData\User Data」とする。
4. コマンドプロンプトを起動する(Win + R → 「cmd」と入力して Enter)。
5. 「MKLINK /D "C:\Users\【ユーザー】\AppData\Local\Google\Chrome\User Data" "V:\GoogleChromeData\User Data"」と入力して Enter(パスは適宜読み換え)。
これで、シンボリック リンクが作成されます。
Google Chrome を起動すると、「C:\Users\【ユーザー】\AppData\Local\Google\Chrome\User Data」を読みに行くのですが、その実体は「V:\GoogleChromeData\User Data」なので、実際にはこのフォルダの中身を読み書きします。
データのポータブル化が実現しました。
Google Chromeには起動オプションとして、「"〜\chrome.exe" --user-data-dir="V:\hoge\User Data"」と書いて、ユーザー データを指定して起動する方法もあります。
しかし、この方法だと、テキスト エディタからダブルクリックで起動したり、ショートカットから起動したりした場合に、ユーザー データが反映されません。
その点、シンボリック リンクを使う方法なら、きちんと反映されます。
ネットを調べて、この方法を見かけなかったので、他の人にも参考になるかと思いましたので、情報をまとめておきます。