RAMドライブでブラウザのパフォーマンスをあげる

RAMドライブというものがあります。
昨今ではあまり聞きなれないのですが、かつてパソコンにフロッピーしか搭載されていなかったころ、フロッピーディスクのアクセスの遅さを解決するために、メモリの一部をハードディスクように見せかけることの出来るワザです。(といっても当時はメモリもそんなに大きな容量を積んでいなかったものですから、RAMドライブとして使用できる領域は限られていました)
さておき。
当たり前に大容量メモリを使用している今だからこそ、このRAMドライブを活用したいものです。

では何に使いましょう?
大容量HDD時代の今となってはあまり使い道がないのが実情です。
そこで定番ではありますが、RAMドライブにFirefoxのキャッシュを格納しましょう。
ブラウザのキャッシュの保存先をメモリにしておくことでハードディスクアクセス回数が減って画面表示を速度アップしたり、ほかのアプリケーションのレスポンスが向上したりします。

LinuxではRAMドライブのファイルシステムは「tmpfs」と呼ばれます。
世間では/mnt/ramや/tmpにRAMドライブを割り当てて、そこにFirefoxのキャッシュディレクトリとして指定する手法のほうが一般のようです。
(/mnt以下にディレクトリを作成し、そこにディレクトリを作成して、そこにRAMドライブをマウントして、Firefoxでキャッシュ先を変更)
/mntというユーザ共通な場所に個人的なキャッシュフォルダを配置するのも何ですし、Firefoxのキャッシュディレクトリの設定も変更しなくてはなりません。

だったら初めからFirefoxがキャッシュディレクトリとして使用している場所にRAMドライブを作成したほうが速そうです。
このコンテンツは思想より家庭用のカジュアルOSを目指してますから。

以下のコマンドを実行します。

>cd ~ (ホームディレクトリへ移動)
>cd .mozilla/firefox/xxxxx.default (xxxxはランダムな文字列です)
>su

#mount -t tmpfs -o size=64m tmpfs ./Cache

mountコマンドを実行して、tmpfsがCacheディレクトリにマウントされていることが表示されれば成功です。
実際にブラウジングしてみると、(LEDを見ると)ディスクアクセス数が明らかに少ないのが分かります。
画面描画もかなり早くなりました。ディスクの遅いパソコンでは特に速度アップが感じられるでしょう。

ですがこれでは起動するたびにmountコマンドを入力しなくてはなりません。
今後もキャッシュディレクトリとして使用するなら、自動マウントされるように設定しておきましょう。

rootとなって、/etc/fstabに以下のエントリを追加します。

(最終行に)
tmpfs   /home/user/.mozilla/firefox/xxxxx.default/Cache    tmpfs     defaults,size=64m   0 0

これで再起動しても、CacheディレクトリにRAMドライブがマウントされます。
試しにOSを再起動してmountコマンドを叩いたとき、tmpfsが正しくマウントされているかを確認します。

オマケ 他の場所にFirefoxキャッシュ用のRAMドライブを作成した場合

デフォルト位置じゃなく、/mnt/ramや/tmp/cacheなどを作ってキャッシュディレクトリとして使いたい人は、そこにRAMドライブをマウントすることになります。この場合はFirefoxのキャッシュディレクトリの位置を変更することになります。

じゃあどっからFirefoxのキャッシュを変更するのでしょう。FirefoxのGUI設定に無いんですよね。
ここは設定ファイルを編集しなくてはなりません。
通常Firefoxの設定ファイルはCacheディレクトリと同じ「~/.mozilla/firefox/xxxxx.default」に格納されています。
そのディレクトリに「user.js」というテキストファイルを作成して

user_pref("browser.cache.disk.parent_directory","/mnt/ram"); 

というエントリを追加します。
Firefoxを再起動して、URLに「about:config」と入力します。
設定を確認し、browser.cache.disk.parent_directoryの値が変更されているか確認します。


これでFirefoxのキャッシュディレクトリが、デフォルト位置から変更されました。





prev.gif