今天又是虚度的一天。早上还志向满满,结果上午经受不住诱惑,mac升级了最新的系统 catalina,然后电脑开启疯狂 bug 模式,对于我这样有完美倾向的人来说简直是一场灾难。不过也确实是我大意了,尽管事先问了两个朋友新系统体验如何,但这就像小马过河的故事,因人而异。那两位朋友基本不怎么使用命令行工具所以感觉还行,对于我这个基本上依赖于命令行生活的人来说,此次 mac 最大的变化就是提升了命令行下的权限,普通用户不能随意在根目录下操作,否则会提示Read-only file system。如果你之前在根目录下新建了一个目录 a,那么升级 catalina时会将目录 a 移动至别的地方。

其实这个问题也不算大问题,曲线救国也是可以解决的。方法如下:

  1. 开机cmd+r,进入恢复模式,然后关闭 SIP(在终端执行 csrutil disable),重启;
  2. 重新挂在根目录,执行sudo mount -uw / ,重新挂载根目录的目的在于可以有短暂的权限操作根目录;
  3. 建立软链接,执行sudo ln -s xxx/a /
  4. 开机cmd+r,进入恢复模式,然后开启 SIP(在终端执行 csrutil enable),重启。

这样就暂时解决上述问题。

不过问题远不止如此,像 git 环境,hexo 环境在这次升级过程中都会遭到破坏,例如升级后在终端执行 git 会报错如下:

1
xcrun: error: invalid active developer path, missing xcrun

解决如下:

1
xcode-select --install

还有风扇更容易狂转不止,掉电很快的问题,不忍直视。

这个故事告诉我们,除了科研,其它事情上我们不要好奇心那么重,太惨了。

本来想使用 shift+opt+cmd+r直接系统降级的,但是一直报错1008F,即使执行了如下操作:

  • 恢复模式下,在启动安全性实用工具中的“安全启动”更改为“无安全性”设置;

  • 在上述界面,将”外部启动“更改为“允许从外部介质启动”,完成更改后请先关闭您的 Mac。

我觉得有时间可以尝试 u 盘安装,毕竟我基本上没有使用shift+opt+cmd+r降级成功的经历。还有人说 catalina 的很多坑是由10.14直接升级带来的,如果抹盘装 catalina 的话基本没有问题,这个我就不尝试了,万一再出点啥问题我怕是周一上不了班了。

在重装系统,整理资料的过程中思考一个问题:如果电脑突然坏掉里面的数据再也找不回来了,会发生什么。想到这里不禁打了一个冷战。

周一上班加油吧,下次不再瞎折腾了,稳定优先。