先说下自己的设备吧:在用 128G 的 MacBook Pro,当时购入这么小硬盘的原因是,寝室还有台式机(目前是个 NUC)所以笔记本的定位是便携性为主,不承担重量级和大文件的存储处理工作;存储的问题的话,寝室还有台 Synology 使用,因此存档的内容和一些大文件都放在上面,笔记本上仅储存课程相关文件和程序。 因为之前装过乱七八糟的各种软件折腾,还有很多课程需要的软件,存储空间一直有些紧张,一般能够剩下 25G 左右;软件删删减减,有时候遇到系统更新还是重新清理,所以还是很麻烦的。反思一下,问题在于

  • 自己混乱的文件管理方案,以及电脑里的部分冗余软件和残留文件;
  • 使用过一些系统管理软件如 Tencent Lemon 或者是 AppCleaner,但缺少一般的方法论;
  • 另外最近用 Time Machine 备份了系统(防止升级到 Big Sur 出问题),快照也占用了挺大空间;

因此,今天又花了很长时间折腾了下 macOS 系统清理的方案,总结如下。 当然,这种时候的清理总归不是很好的手段,要从根本上解决问题,还是需要养成良好的文件管理习惯,精简软件使用(事实上,这反倒是用一台硬盘空间比较小的电脑的好处);极简主义,做减法。这一部分,关联 谈谈时间与信息管理

Time Machine 清理

参考知乎 清理 TimeMachine 本地快照的方法。关闭 TM 之后,这面的指令可以查看和删除本地的 snapshot 系统快照(其中所谓「认证码」就是对应的快照名字中数字部分)

1
2
tmutil listlocalsnapshots /
tmutil deletelocalsnapshots 认证码

另外提到 Catalina 下还有更方便的命令

1
tmutil thinlocalsnapshots / 999999999999999 4

注意,这里要区分 快照 snapshot 和备份 backup 的概念,我是将备份放到 NAS 上的,但是系统中还是会有快照占空间,上面的方法就是手动删除本地快照。对于 tmutil 的详细用法,参见 和时间机器的再次斗争(释放 TimeMachine 占用的空间)。 我在删除的时候不知道为什么有一个主要的 snapshot 删不掉?重启系统后清除。

另外,关于 Time Machine 的使用方法,可参看少数派上的一个 系列教程;都是基础使用方式,入门级。

清理软件

Tencent Lemon

轻量级的系统优化软件,我用到的功能是

  • MenuBar 上的资源监控(轻量级,另外把 iStat 放在了 Today 页面)
  • 软件卸载(似乎 App Cleaner & Uninstaller 更棒)
  • 启动项管理

优势在于界面简洁,功能不算强大但也到位,稳定性不错。

App Cleaner & Uninstaller【###】

新发现的宝藏软件

  • 软件卸载似乎要比 Tencent Lemon 更加干净;
  • 启动项/启动代理 的管理要比前者更为直观;
  • 插件管理也超级好用;
  • 残留文件非常厉害,可能因为之前是用 Tencent Lemon 的没删干净,刚安装好发现有很多的残留项;
  • 默认软件的功能没在用,不做介绍;

NCDU

原本的命令行管理用 du 指令完成,我在配置中设置了默认 alias du='du -h -d 1';配合另一个命令行工具 tree 使用,可以显示文件夹的目录树结构。今天发现了一个 du 命令的升级版 ncdu ,采用 brew install ncdu 安装即可。

简单的教程 MAC磁盘清理工具 NCDU。其实使用起来非常直观,安装之后 ncdu . 即可,等待检索完成后,使用方向键和 Enter 进行导航,需要删除则用 d 键,其他的基本上不需要。

Daisy Disk

除了命令行工具,还有个可视化的磁盘空间管理工具 DaisyDisk,界面非常好看,可以直观地看到自己电脑上的文件占用空间,以便你更好地管理自己的 Mac 硬盘空间。

例如,我发现在系统更新还是更改用户文件夹名字(用户管理高级选项中的 Home Directory,非常作死的行为千万不要去尝试)后,会出现的 Previously Relocated Items 文件夹,在 /Users/Shared,看了下发现有 1G 所有,主要是交换文件,我直接把它删了。在文件夹下附有一个说明 PDF,另外关于该文件夹参看 升级macOS Catalina:桌面出现的Relocated Items文件夹是什么?

另外,目前没有共享的需求,发现在 /Users/Shared 目录下会有一些软件的文件都比较小,强迫症的原因,我直接把这个文件夹清空了,好像也没什么大问题……

个别软件

Tex

参考 MacTeX 卸载方法,事实上软件如 TeXShop 的卸载是很方便的,随便找个写在软件或者直接删除 /Applications 中的文件即可。 但这个软件一般不会很大,不超过一个 G,关键还是要卸载 Tex,一般安装目录在 /usr/local/texlive/ 下,直接删除即可,大概有 6G 大。

JAVA

参考 Mac 上安装和卸载Java JDK,事实上就是官方给出的方案,分别用来卸载 JAVA 和 jdk。

卸载 JAVA,官方有 教程,就是三个文件夹

1
2
3
sudo rm -fr /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
sudo rm -fr /Library/PreferencesPanes/JavaControlPanel.prefPane
sudo rm -fr ~/Library/Application\ Support/Java

卸载 jdk,官方教程,地址在 /Library/Java/JavaVirtualMachines ,下面是中文教程中的代码。

1
2
3
4
5
#查找当前版本
#输入:
ls /Library/Java/JavaVirtualMachines/
#输出:jdk-9.0.1.jdk
sudo rm -rf /Library/Java/JavaVirtualMachines/jdk-9.0.1.jdk

当然,如果不想再用的话,直接把 /Library/JAVA 文件夹删掉也是可以的。

Adobe

  • 才发现 Adobe 居然这么难卸载……官方提供了卸载工具 Creative Cloud Cleaner Tool 的使用方法及使用场合 | 高级步骤,下载之后使用即可。

  • 然而,这样卸载之后,还是会有残余,例如 /Library/Application Support/Adobe 文件夹(这是我在删除 Tex 的时候发现的,还挺大有一个 G 左右)。另外,在一篇文章中还提到了以下这些文件夹,删除即可。

1
2
3
~/Library/Application Support/Adobe
~/Library/Preferences/Adobe
~/Library/Caches/Adobe
1
2
sudo rm -rf ~/Library/Application\ Support/Adobe* ~/Library/Application\ Support/com.apple.sharedfilelist/com.apple.LSSharedFileList.ApplicationRecentDocuments/com.adobe* ~/Library/Application\ Support/CrashReporter/Adobe* ~/Library/Caches/Adobe ~/Library/Caches/com.Adobe.* ~/Library/Caches/com.adobe.* ~/Library/Cookies/com.adobe.* ~/Library/Logs/Adobe* ~/Library/PhotoshopCrashes ~/Library/Preferences/Adobe* ~/Library/Preferences/com.adobe.* ~/Library/Preferences/Macromedia* ~/Library/Saved\ Application\ State/com.adobe.*
sudo rm -rf /Applications/Adobe* /Applications/Utilities/Adobe* /Library/Application\ Support/Adobe /Library/Preferences/com.adobe.* /Library/PrivilegedHelperTools/com.adobe.* /private/var/db/receipts/com.adobe.*
  • 另外,在 2020 MAC如何彻底卸载ADOBE/PHOTOSHOP 一文中,还提到了登录相关组件,位置在 /Library/LaunchAgents ,看到带 adobe 的一律删除……

  • 再有,发现用 App Cleaner & Uninstaller 可以扫描到一个插件,位置在 /Library/Internet Plug-Ins/AdobePDFViewerNPAPI.plugin 也被我删去了。

【这样折腾了一遍之后,其实还是会有残留……上述过程,起源于自己用 Spotlight 总会有 Adobe 更新这种软件出现很心烦,上述步骤可以把这些显示的 app 文件清除,可以说是眼不见为净。我最后用 App Cleaner & Uninstaller 看了下,还有一些残留文件,虽然体积不大但是对于强迫症来说还是必要的。所以终极的解决方案还是这个软件(只是我不清楚能否直接从这个软件上卸载 Adobe 全系)】

Joplin

是之前非常喜欢的一款 Markdown 编辑+采集软件,作为编辑器来使用自然是没有 Typora 好用,但可以将网页内容采集为 Markdown 非常赞,替代了之前用的 Evernote。

无论是 Evernote 还是 Joplin 的采集功能或多或少还是有些问题,最近开始入手 DEVONthink,直接采集为 HTML 很好地保留了网页格式,在搜索和文件管理方面的体验也是一流,因此考虑逐渐转换到这一软件。

今天终于决定去卸载 Joplin,用不同的软件卸载 Joplin 的过程中,发现仅能找到软件本身(300M 左右),而导出备份的数据就比这大很多了,也就是说肯定有遗漏存储文件;寻找之后发现是在 ~/.config 文件夹下,大概有几个 G 大。

Docker

通过 brew brew uninstall --cask docker,另外下面的一些配置项;注意删除 ~/Library/Containers/ 下的文件夹,保存了存储的image还挺大的。

1
2
3
4
5
6
7
sudo rm -Rf /Applications/Docker
sudo rm -f /usr/local/bin/docker
sudo rm -f /usr/local/bin/docker-machine
sudo rm -f /usr/local/bin/docker-compose
sudo rm -f /usr/local/bin/docker-credential-osxkeychain
sudo rm -Rf ~/.docker
sudo rm -Rf $HOME/Library/Containers/com.docker.docker # here we delete stored images

注意删除 ~/Library/Containers/ 下的文件夹,保存了存储的image还挺大的。

go

1
2
sudo rm -rf /usr/local/go
sudo rm /etc/paths.d/go

以及发现 ~/go 目录,忘记了是否是自己自建的😂

Safari

Preference/Advanced 中开启开发者面板,然后选择 Empty Caches 可以清理挺多缓存的。