用于开发的MacBook怎样释放磁盘空间
由于缺少磁盘空间,有时在macOS上安装或更新应用程序(例如XCode…)非常困难。在这篇博客文章中,我将介绍各种方法,这些方法可以快速安全地清理用于Web开发的MacBook上的大量存储。
我最近在MacBook Pro上进行了同样的分析和清理。结果,我设法释放了数十GB的存储空间,最终可以将XCode更新到最新版本。
分析磁盘的使用情况
识别存储空间的最大分配位置的最佳方法是使用Disk Inventory X应用程序。在macOS上,最简单的安装方法是使用Homebrew Cask。
$ brew install --cask disk-inventory-x
该程序提供了简单明了的UI,使您可以一目了然地检查您的存储使用情况:
现在,我们来讨论减少存储使用量的最低限度。
删除冗余应用程序缓存
在我的计算机上,大量不必要的数据位于〜/Library/Caches
文件夹中。我注意到有一年左右都没有使用的数百MB与Yarn相关。显然,许多应用程序都希望缓存数据,而忽略随后进行的清理。
您可以使用以下命令彻底清除缓存:
$ cd ~/Library/Caches
$ rm -rf *
或者,您可以选择要删除的缓存文件夹。我几个月来一直定期进行缓存的总清理。除了暂时的系统速度下降之外,我没有发现任何问题。
显然,缓存将随着时间的推移自行重建。但是,即使经过更长的时间,它也不会增长到相同的大小。删除30GB以上的缓存后,Caches
文件夹的大小在定期使用计算机一周后增加到仅2GB左右。
删除旧的日志文件
我主要在MacBook上使用Ruby on Rails。使用Disk Inventory X时,我发现连续运行本地测试会将内容追加到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 image,每个版本都占用大量空间。您可以通过运行以下命令来删除Docker image:
$ docker rmi -f IMAGE_ID
根据我的经验,images通常会占用大部分磁盘空间。但是,如果您想进行更全面的清理,包括Docker containers,networks和cache,请使用以下命令:
$ docker system prune
整体清理对我有用,因为可以使用seed data轻松地重新创建所有本地Docker项目。在删除container或volume之前,请确保仔细检查没有重要的数据。
查看Docker文档以了解有关其他清理命令的更多信息。
总结
我希望这些技巧将帮助您轻松清理大量磁盘空间。良好的做法是定期检查Disk Inventory X是否有不必要的磁盘使用膨胀,这将有助于您保持磁盘使用的顺序。