Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
13
Help us understand the problem. What is going on with this article?
@yassy

OSX ブラウザのキャッシュをRamDiskにあてる

※※※※※
20191115 よりシンプルで起動登録も簡単な方法が見つかったので、別記事を作成しました。
リンク

※※※※※

※実行は自己責任にてお願いします

ブラウザのキャッシュをRamDiskにあてることで、
SSDへのアクセスが減り、
以下のことが期待できます。

  • SSDの寿命が伸びる
  • 動作環境への負荷が減る

とはいえ、どちらも体感は変わらないです。

システムのメモリをディスクとして割り当てる為、
メモリに余裕のある環境が対象となります。

RamDisk を作成する

1.TmpDiskをインストールします
https://github.com/imothee/tmpdisk/releases/download/v1.2.1/TmpDisk-1.2.1.dmg
※いつからか、GitHubで公開されるようになっていました

2.インストールしたアプリを実行し、RamDiskを作成します
AutoCreateの項目にチェックを入れます(重要)
AdvancedModeにチェックを入れると、DiskSizeが自由に設定できるようになります
・ここではDiskNameを RamDisk としてみました
・体感ですが、512MBもあればブラウジングだけなら不自由しないです

スクリーンショット 2016-06-11 17.54.17.png

このようにマウントされます (/Volumes/RamDisk)
スクリーンショット 2016-06-11 18.13.51.png

3.メニューバーのアイコンから、起動時に実行されるように設定します
Always Start on Loginにチェックを入れます

スクリーンショット 2016-06-11 18.00.01.png
スクリーンショット 2016-06-11 17.35.31.png

これで、RamDiskの準備ができました。

ブラウザのキャッシュフォルダを、RamDisk内にあてる

ここでは、ChromeとSafariを対象としてみます。

現在、以下のようにあるそれぞれのキャッシュフォルダを、
RamDisk内のフォルダへ割り当ててみます。

ブラウザ デフォルトのキャッシュフォルダ 割り当てるキャッシュフォルダ
Chrome ~/Library/Caches/Google/Chrome/Default/Cache/ /Volumes/RamDisk/Caches/Chrome
Safari ~/Library/Caches/com.apple.Safari /Volumes/RamDisk/Caches/Safari

※ブラウザのキャッシュフォルダの場所は、バージョンによって変わる可能性があります

色々やり方があるかもしれませんが、
ここでは下記のシェルを使ってシンボリックリンクを作成します。

TmpDisk-Setup.sh
DISK_NAME=RamDisk

# TmpDisk起動完了までの待機
while [ ! -e /Volumes/${DISK_NAME} ]
do
  sleep 1
done

function symbolic_link(){
  rm -rf "$1"
  rm -rf "$2"
  mkdir -p "$2"
  ln -s "$2" "$1"
}


# Chrome_Cache
SRC=${HOME}/Library/Caches/Google/Chrome/Default/Cache
DST=/Volumes/${DISK_NAME}/Caches/Chrome
symbolic_link "${SRC}" "${DST}"

# Safari_Cache
SRC=${HOME}/Library/Caches/com.apple.Safari
DST=/Volumes/${DISK_NAME}/Caches/Safari
symbolic_link "${SRC}" "${DST}"

シェル実行後、Chromeを立ち上げて
このようになっていれば成功です。
スクリーンショット 2016-06-11 19.08.55.png

Safariも同様です。
スクリーンショット 2016-06-11 19.17.38.png

再起動後に備えて、ログイン項目に登録

再起動後には、TmpDiskによってRamDiskが再作成されても、
シンボリックリンクが解除されてしまっています。

その為、まずはAutomatorを使いログイン直後にシェルを実行するアプリを作成します。

1.Automatorを起動し、アプリケーションを選択します
スクリーンショット 2016-06-11 19.20.06.png

2.シェルスクリプトを実行 を選択します
スクリーンショット 2016-06-11 19.20.30.png

3.TmpDisk-Setup.shの内容を書き込み、保存します
スクリーンショット 2016-06-11 19.24.30.png

メニューバーから
スクリーンショット 2016-06-11 19.24.46.png

任意の名前で保存
スクリーンショット 2016-06-11 19.25.22.png

ロボット的なアイコンのファイルになっていたら成功
スクリーンショット 2016-06-11 19.29.47.png

System環境設定からログイン項目を登録します

1.System環境設定を開き、ユーザとグループを選択する
スクリーンショット 2016-06-11 19.32.33.png

2.ログイン項目にある + を押して、先ほど出力したアプリを選択します
スクリーンショット 2016-06-11 19.32.51.png

確認

再起動してから Chrome や Safari を起動し、
RamDisk内のキャッシュフォルダが使用されていれば成功です。

※※※※※
20191115 よりシンプルで起動登録も簡単な方法が見つかったので、別記事を作成しました。
リンク

※※※※※

13
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
yassy

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
13
Help us understand the problem. What is going on with this article?