- リブートしたらマウント外れたり
- シャットダウン時にRamDiskの内容を強制的にセーブしたり
- 起動時にRamDiskの内容を強制的にリストアしたり
- メニューバーにRamDisk操作用のアイコンが表示されたり
特徴は
- セーブやリストアはしない
- キャッシュ等を置きたいアプリは、自分で登録したり symlink を貼る必要あり
- システム起動時にマウントされる
- マウントポイントは /Volumes/.RamDisk
- Finder では untitled と表示される。誤操作防止のためイジェクトはできない
- システム起動時に自動的にRAMDISKが作成されるようにするには Lingon を使う
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh | |
# | |
# mkramdisk.sh : prepare ramdisk for mac | |
# | |
# install: | |
# 1. modify variables (caches, mb) as your like, in this script. | |
# | |
# 2. register to startup: | |
# 1. open "Ligon" | |
# 2. New to "Users Daemons" | |
# 3. Label: "mkramdisk" | |
# 4. ProgramArguments:"/PATH/TO/mkramdisk.sh" | |
# 5. RunAtLoad: check | |
# 6. Save & Load: push | |
# | |
# list for app caches from /Users/user/Library/Caches | |
caches=' | |
com.apple.Safari | |
QCCompositionRepository-com.apple.iTunes.cache | |
com.apple.iTunes | |
com.apple.appstore | |
' | |
mb=2048 # size (MB) | |
mountpoint=/Volumes/.RamDisk | |
dir=cache | |
# prepare ramdisk | |
sect=`expr $mb \* 1024 \* 1024 \/ 512` | |
mydev=`hdid -nomount ram://$sect` | |
mask=`umask` | |
umask 000 | |
/sbin/newfs_hfs $mydev | |
mkdir $mountpoint | |
/sbin/mount -t hfs $mydev $mountpoint | |
#/usr/sbin/diskutil renameVolume $mydev '.RamDisk' # <-- FIXME: why doesn't work | |
# dig directory | |
mkdir -p $mountpoint/$dir; cd $mountpoint/$dir | |
for d in $caches; do | |
mkdir $d | |
done | |
umask $mask |
使い方:
- RAMDISKに置きたいアプリのキャッシュフォルダ名を変数cachesに追加。
キャッシュフォルダ名は /Users/ユーザ/Library/Caches の中を見ればわかります。 - 変数mbにメガバイト単位でRAMDISKの容量を設定。
- Lingonをインストールして起動。
- Newボタンを押して、"Users Daemons" を選択し、下の画像のように設定。
- リブート。
- ターミナルで"cd /Volumes/.RamDisk/cache/;ls -a"して、caches変数に登録した名前のフォルダができていることを確認。
- caches変数に設定したキャッシュフォルダを/Users/ユーザ/Library/Cachesから削除し、代わりにそれぞれ、
"ln -s /Volumes/.RamDisk/cache/キャッシュフォルダ名 /Users/user/Library/Caches"
としておく。 - 設定したアプリを起動してしばらく使った後、
"cd /Volumes/.RamDisk/cache/キャッシュフォルダ名;ls -a"
して、ファイルができてることを確認。
0 コメント :
コメントを投稿