工作机是2015年夏天买的Mac pro,硬盘只有可怜的128G。又由于开发和发行分开建了两个user,导致最大的可用空间只有40G。于是,清理空间成了经常不得不做的事,当然,如果有CleanMyMac这种清理软件也就不用费事了。
经过了几年,下面是我常用的Mac瘦身的方式,十分有效。
平时开发使用,Xcode会占用很多的空间,首先一步就是recover disk space from Xcode:
1, Derived Data
# cd ~/Library/Developer/Xcode/DerivedData/
删除掉此目录中不再使用的project对应的目录,当然,把里面的Project对应的目录全部删除掉也行,只不过下次再打开一个project时,会用多耗费点时间。
2, iOS Device Support
# cd ~/Library/Developer/Xcode/iOS DeviceSupport/
删除其中不再需要的版本的真机调试包。这些目录都是Mac连接iphone后,Xcode自动创建的,如果平时只用固定的真机作为开发工具,那保留一个就行了。
3, Archives
# cd ~/Library/Developer/Xcode/Archives/
删除其中那些以年月日为目录名称的目录,里面存放的是曾经构建过的一些archives。
或者在Xcode->Window->Organizer进行删除,也是一样。
4, Simulators
# cd ~/Library/Developer/CoreSimulator/Devices
删除其中的模拟器,但是我一般都用Xcode直接删掉不需要的模拟器。从目录里删比较麻烦。
Xcode可以清理的差不多就是上面这些,对我来说,最占空间的是1,2,3。
然后是清理系统的一些文件,以下操作需要谨慎一些,千万看清楚:
1, 关闭OS的原生休眠模式 —— 禁用SafeSleep休眠模式,这种休眠模式当Mac休眠或者没电池时会将内存中的内容储存在硬盘上的sleepimage文件上,所以它与Mac的内存一样大。关闭SafeSleep可以不让系统自动创建该文件,缺点就是当Mac电脑没电池时,不能恢复到之前的状态。
// 1) 禁用SafeSleep功能命令:
# sudo pmset -a hibernatemode 0
// 2) 定位到/private/var/vm/删除已经存在的sleepimage文件
# cd /private/var/vm/
// 3) 删除该文件
# sudo rm sleepimage
// 4) 防止OS X继续创建该文件,需要生成一个无法被替换的空文件
# touch sleepimage
# chmod 000 /private/var/vm/sleepimage
// 如果想要重新开启SafeSleep功能:
# sudo pmset -a hibernatemode 3
# sudo rm /private/var/vm/sleepimage
2, 删除所有系统日志,系统日志文件是用来调试和排除故障的,如果你感觉没有用,可以删除:
# sudo rm -rf /private/var/log/*
如果删除了系统日志,导致本地apache服务挂掉,可以在/private/var/log下新建一个apache2的空文件夹解决这个问题。
3, 删除快速查看(Finder预览)生成的缓存文件
# sudo rm -rf /private/var/folders/
注意:此目录即使使用sudo也不能完全删除,最好不要继续删除那些不能使用sudo删除的文件,可能 会造成系统不能启动
4, 删除临时文件,
/private/var/tmp/ 中的临时文件一般会在系统重启时清除,但是有时不会,如果长时间不关机,这些文件会越来越多。
# cd /private/var/tmp/
# rm -rf *
5, 清除缓存文件
# cd ~/Library/Caches/
# rm -rf ~/Library/Caches/*
另外,也可以使用CleanMyMac进行扫描,然后在系统垃圾处查看详情,然后手动逐目录删除。