近来,我已在我的MacBook Pro上操作分析和清理磁盘空间。结果,我已设法释放10GB磁盘空间,并最终升级XCode到最新版本。跟我来看一下吧!
分析磁盘使用情况
分析磁盘空间占用较多的最好方法是使用Disk Inventory X ,支持Mac OS 10.13+ (including 10.15 Catalina)
命令行安装:
brew install --cask disk-inventory-x
不会命令行的朋友,下载安装 。Disk Inventory X软件
安装后,启动台会显示
碰到这种情况的朋友,系统偏好设置 -> 安全性与隐私 -> 通用 -> 仍要打开。
选择Macintosh HD进行分析,分析较慢,需要稍等片刻:
该应用有清晰的界面展示磁盘使用情况:
下面,让我们来讨论减少磁盘使用量的小效果。
删除冗余应用程序缓存
在我的电脑上,大量非必要数据存放在: ~/Library/Caches。我意识到有几百兆跟一年多没用过的Yarn有关。显然,很多应用程序都希望缓存数据,而忽略了随后的清理工作。
你可以使用以下命令彻底清除缓存:
cd ~/Library/Caches
rm -rf *
或者,你也可以选择要删除缓存的文件。我已经定期清理总缓存几个月了。除了暂时的系统速度变慢之外,没发现其他任何问题。
很显然,过段时间缓存会重新产生。但是即使经过更长时间,也不会有原来那么大。清理30多GB缓存后,使用一周电脑缓存也只增加到2GB。
删除旧的日志文件
我平常使用Ruby on Rails最多。使用Disk Inventory X,我发现运行本地测试会持续写log到log/test.log。
可以想象到其他应用也在以同样方式占用磁盘。Disk Inventory X对于识别和修复此类问题非常友好。
减少Docker使用磁盘空间
Docker以侵占磁盘空间著名。可以通过以下命令查看Docker占用了多少磁盘空间:
docker system df
TYPE TOTAL ACTIVE SIZE RECLAIMABLE
Images 17 4 2.115GB 1.577GB (74%)
Containers 6 1 138.4MB 0B (0%)
Local Volumes 19 5 1.564GB 1.347GB (86%)
Build Cache 0 0 0B 0B
运行docker images查看哪些镜像占用空间最大:
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
pihole/pihole latest 4642d275ab73 4 months ago 296MB
postgres 11.8-alpine a7f73db0b977 6 months ago 156MB
postgres 12.3-alpine 17150f4321a3 6 months ago 157MB
postgres 9.6-alpine 45f463e53bc1 6 months ago 36.1MB
alpine latest a24bb4013296 7 months ago 5.57MB
postgres 12.2-alpine ae192c4d3ada 8 months ago 152MB
postgres 9.6.17 529a7b20fb73 8 months ago 200MB
postgres 11.6-alpine 89ae06c2ad76 11 months ago 152MB
在我的电脑上,我有好几个版本的postgres镜像,每个都占用大量空间。可以用以下命令移除Docker镜像:
docker rmi -f IMAGE_ID
以我的经验来看,镜像通常占用大部分磁盘空间。但是,如果您想进行更全面的清理,包括Docker容器,网络和缓存,请使用以下命令:
docker system prune
我之所以选择全面清理,是因为所有的本地Docker项目都可以轻松的用seed data创建。注意:在删除容器或卷之前,请确保仔细检查是否没有难以恢复的数据。
查看Docker文档 以了解有关其他修剪命令的更多信息。
最后
希望那些建议会帮助你轻松释放大量磁盘空间。良好的做法是用Disk Inventory X定期检查是否有不必要的磁盘占用,这将有助于帮助你保持良好的磁盘使用。