Saturday, June 12, 2010

使用mklink修改chrome/firefox缓存目录到ramdisk

Windows 7下,mklink为cmd的内部命令,参数如下

Creates a symbolic link.

MKLINK [[/D] | [/H] | [/J]] Link Target

/D Creates a directory symbolic link. Default is a file
symbolic link.
/H Creates a hard link instead of a symbolic link.
/J Creates a Directory Junction.
Link specifies the new symbolic link name.
Target specifies the path (relative or absolute) that the new link
refers to.



创建Ramdisk,分区符定为 Z:
建立目录 Z:\Chrome\Cache。
Administrator模式开启CMD,进入 C:\Users\sskaje\AppData\Local\Google\Chrome\User Data\Default
执行
mklink /J Cache z:\Chrome\Cache


social.microsoft.com的一帖子说,Junction 和 Symlink 区别在于,前者系统认为是一个实际目录,后者认为是一个快捷方式,但是貌似这个说法还不是很正确,没空研究,爱怎怎地吧。

效率考虑,我ramdisk的数据不往硬盘上同步,这就意味着重启系统,Z盘的这些目录就被干掉了。
于是开机就需要执行一次mkdir建目录。

代码如下

SET RAMDISKDRV=Z:

SET CHROME_CACHE_DIR="%USERPROFILE%\AppData\Local\Google\Chrome\User Data\Default\Cache"
SET CHROME_RAMDISK_DIR="%RAMDISKDRV%\Chrome\Cache"

rd /s /q %CHROME_CACHE_DIR%
mkdir %CHROME_RAMDISK_DIR%
mklink /J %CHROME_CACHE_DIR% %CHROME_RAMDISK_DIR%


如果嫌这样麻烦,可以改Chrome的启动参数,加 --user-data-dir=Z:\Chrome\Cache

Firefox直接 用 about:config 添加 browser.cache.disk.parent_directory 指到 Z:\Firefox 即可。

No comments:

Post a Comment