macOS在安全措施上做得非常不错,导致很多软件都被严密的Apple拒之门外。本文就向大家介绍几个有效的终端脚本,它们能让你无视大部分安全措施。

1. csrutil disable & sudo mount -uw /

注意:第一个脚本得在Recovery OS中运行。

从macOS Sierra开始,Apple便新增了一项安全措施——SIP(System Integrity Protection)。它会让你禁止访问根目录的大多数文件夹以及系统文件夹。在macOS Sierra到macOS Mojave这些系统中,运行这行脚本能让你完全读写整个磁盘。

如何进入Recovery系统?

在开机时,一听到开机声音,就立马按下command ⌘ + R,等进度条走一半时假如看到鼠标,并且进系统看到了恢复助理,那么你就进入Recovery系统了。

在Recovery系统中,我该如何运行这行脚本?
在顶部的菜单栏中,选择“实用工具 - 终端”,输入这行脚本就可以了。重新启动,这次不要按command ⌘ + R,就可以进入正常系统了。在系统的终端里输入“csrutil status”,如果显示“disabled”,那么就表示成功了。接下来再运行这行脚本(在正常系统中):

1
2
sudo mount -uw /
killal Finder

便可以进行根目录读写了。

不过遗憾的是,早在Catalina时期,Apple便对这些“黑客”们严格管控,在macOS Catalina里面加入了一项措施——尽管用户执行“csrutil disable”,也无法进行根目录读写了,甚至执行第二个脚本还会报错。现在只能通过建立软链接data的方法,十分麻烦。但是诸如AdGuard、cDock之类的软件,还是需要依赖“csrutil disable”这行脚本的。

2. sudo spctl –master-disable:绕过GateKeeper

Apple还有一项安全措施:GateKeeper。很多软件,Apple无法验证它是什么开发者开发的,便会弹出“请移到废纸篓”这样的窗口。其实,很多软件都是无辜的。在终端运行这行脚本:

1
sudo spctl --master-disable

再运行,便可正常启动了。如果还是这样的话,请到“系统偏好设置 - 安全性与隐私 - 通用”里面开锁,选择“允许此App”。

3. sudo xattr -r -d com.apple.quarantine /Applications/example.app & sudo codesign –force –deep –sign - /Application/example.app:重新签名

Apple的安全措施可谓是百花齐放,各式各样。Apple为了保护各个开发者,当App内部出现改动时,再打开,便会出现“App无法打开”这样的弹窗。这时候,你可以运行这样的脚本:
#将App拖到这两行后面:

1
2
sudo xattr -r -d com.apple.quarantine 
sudo codesign --force --deep --sign -

然后便可以打开了。