Change Logs
- 2016-11-20 15:33 : $DEVDISK 변수를 이용해서 RAM 디스크 만듬.
- 2016-11-15 20:35 : 최초 작성.
용도는 주로 $HOME/Library/Caches 디렉터리에서 브라우저용 캐시와 같은
속도를 높이고 싶은 파일들을 RAM Disk로 옮겨서 빨리 실행되도록 한다.
특히, 필자와 같이 HDD를 주 Disk로 사용하는 경우 RAM Disk가 보다 효과적일 것 같다.
관련 링크:
mkRamDisk.sh
RAM 디스크를 생성하고 Disk에 backup 된 내용을 복사한다.
% cat ~/bin/mkRamDisk.sh #!/usr/bin/env sh export PATH=$HOME/bin:/usr/local/bin:$PATH # 1GB RAM 디스크 만들기, 1024*2048 # # stdout 으로 "/dev/disk1" 와 같이 만들어진 disk 정보가 출력된다. # 이 정보를 $DEVDISK 변수로 받아 저장하고 쓴다. DEVDISK="$(hdid -nomount ram://2097152 2>&1)" # RamDisk => /Volumes/RamDisk 로 mount 됨. sudo zpool create RamDisk $DEVDISK # Permission sudo chown -R $(whoami) /Volumes/RamDisk # RamDisk 원복, 백업데이터 복원 cp -rf /Some/Path/RamDisk/ /Volumes/RamDisk/
※ “/Some/Path” 는 환경에 맞게 수정 필요.
ramsync.sh
RAM 디스크를 /Some/Path/RamDisk 로 backup 한다.
#!/usr/bin/env sh rsync -av --delete /Volumes/RamDisk/ /Some/Path/RamDisk
※ “/Some/Path” 는 환경에 맞게 수정 필요.
launchd, mkRamDisk.plist
부팅 후 RAM 디스크를 만들고 Disk에 저장된 이전 데이터를 원복한다.
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>com.riin.mkRamDisk</string> <key>Program</key> <string>/Users/[User ID]/bin/mkRamDisk.sh</string> <key>RunAtLoad</key> <true/> </dict> </plist>
※ “[User ID]”는 본인 계정ID.
Desktop 의 RamDisk
= 끝 =