ブラウザのキャッシュは基本的にシステムドライブに保存されています。
システムドライブの容量削減のためやシステム以外のファイルはなるべくおきたくない場合、またRAMディスクにキャッシュをおきたい場合など、キャッシュフォルダの場所を移動したい場合はけっこうあるのではないかと思います。
ブラウザによっては設定でキャッシュフォルダの位置を指定できたりもしますが、Chrome では設定から移動することができません。
なので今回は「シンボリックリンク」を使って、Chromeのキャッシュフォルダを既定の場所とは別の場所に移動してみました。
目次
Chrome のキャッシュフォルダを移動する方法
Chrome のキャッシュが保存されているフォルダを移動するためには以下の2つの方法があります。
- ショートカットでキャッシュフォルダを指定する
- 別の場所に作ったフォルダのシンボリックリンクを既定のキャッシュフォルダの場所に作る
ショートカットでの指定は、ショートカットのプロパティを開き、リンク先を編集するだけでいいので手軽です。
たとえば、キャッシュの保存先を「D:\Cache」にする場合には、リンク先の最後に次のオプションを追加します。
「 –disk-cache-dir=”D:\Cache”」
「–disk」の前には半角スペースが1個入っているので注意してください。
この方法では、上の起動オプションを指定したショートカットからChromeを起動した場合にキャッシュの保存場所が変わるのですが、自分はショートカット以外から起動する事も多々あります。
別ソフトのリンクからなど、ショートカット以外から起動した場合にもキャッシュの保存場所を変更したいので、今回は「シンボリックリンク」を使って変更してみることにしました。
シンボリックリンクを使ってキャッシュの保存場所を変更する
シンボリックリンクはリンク元のフォルダやファイルと同等の実体として扱うことができるので、システムやソフトから実際そこにファイルやフォルダがあるものとして設定することができます。
Chromeのキャッシュ保存先は、Windows8 や Windows7 では以下の場所になります。
C:\Users\ユーザー名\AppData\Local\Google\Chrome\User Data\Default\Cache
「ユーザー名」の部分は自分のログインしているユーザー名に置き換えてください。
「C:\Users\ユーザー名\AppData\Local\Google\Chrome\User Data\Default」を開いて、既存の「Cache」フォルダを削除、もしくはリネームしておきます。
シンボリックリンクを作成する際、作成する場所に同名のフォルダがすでにある場合はエラーになるので、あらかじめ削除やリネームをしておいてください。
スタートメニューから「cmd」と入力し、コマンドプロンプトを管理者権限で実行します。
シンボリックリンクを作成するコマンドを入力して実行します。
mklink /d “「シンボリックリンクにするディレクトリ」” “「リンク元のディレクトリ」”
今回の場合、新たなキャッシュの保存先を「D:\Cache」にする場合には、
mklink /d “C:\Users\ユーザー名\AppData\Local\Google\Chrome\User Data\Default\Cache” “D:\Cache”
になります。
リンク元となるフォルダが存在していない場合はエラーになるので、あらかじめ作成しておいてください。
これでシンボリックリンクのリンク先にキャッシュがつくられるようになりました。
シンボリックリンクを削除して保存場所を元に戻す
作成したシンボリックリンクを削除する場合は、コマンドプロンプトで以下のコマンドを入力します。
rmdir “「削除するシンボリックリンク」”
今回作成したシンボリックリンクを削除してキャッシュの保存場所を元の場所に戻す場合には、コマンドプロンプトで以下のコマンドを実行します。
rmdir “C:\Users\ユーザー名\AppData\Local\Google\Chrome\User Data\Default\Cache”
これでシンボリックリンクが削除され、次回のChrome起動時に元の場所に「Cache」フォルダが作成されます。
シンボリックリンクは活用の幅も広くて便利
ファイルやフォルダの場所を移動したい場合にはシンボリックリンクはとても便利な機能です。
ひとつのフォルダやファイルを複数の場所で使いたい場合には、リンクをリンク先の実体と同じように扱ってくれるため、複数コピーするような必要もなくなります。
今回のようなキャッシュの移動だけでなくいろいろな場面で使える機能だと思うので、活用場所を模索してみるのもおもしろいかもしれないですね。