看起来 Apple 在 macOS Catalina 中所做的更改使得删除系统应用程序变得更加困难。
我今天将我的工作电脑升级到了 Catalina(标准 Mac mini),随之而来的是一些我想摆脱的新系统应用程序(和一些旧系统应用程序),例如新的 Podcasts 应用程序、Photo Booth、Siri、Apple TV、音乐、国际象棋、图书......我不想在我的计算机上安装这些系统应用程序。
自从 macOS El Capitan 以来,我都会重新启动进入恢复模式,运行csrutil disable
,重新登录,然后删除。
看来 Apple 已将其核心系统应用移至/System/Applications
,并且由于它是只读的,因此您无法运行sudo rm -rf
来删除这些应用程序。执行此操作时,您会收到以下错误(以 Podcast 应用为例):
rm: Podcasts.app/Contents/Frameworks/IMUIUtil.framework/Versions: Read-only file system
rm: Podcasts.app/Contents/Frameworks/IMUIUtil.framework: Read-only file system
rm: Podcasts.app/Contents/Frameworks: Read-only file system
rm: Podcasts.app/Contents/Info.plist: Read-only file system
rm: Podcasts.app/Contents/PkgInfo: Read-only file system
rm: Podcasts.app/Contents: Read-only file system
rm: Podcasts.app/: Read-only file system
mount
为我返回以下内容:
/dev/disk1s5 on / (apfs, local, read-only, journaled)
devfs on /dev (devfs, local, nobrowse)
/dev/disk1s1 on /System/Volumes/Data (apfs, local, journaled, nobrowse)
/dev/disk1s4 on /private/var/vm (apfs, local, journaled, nobrowse)
map auto_home on /System/Volumes/Data/home (autofs, automounted, nobrowse)
diskutil list 告诉我:
/dev/disk0 (internal, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *1.0 TB disk0
1: EFI EFI 314.6 MB disk0s1
2: Apple_APFS Container disk1 1.0 TB disk0s2
/dev/disk1 (synthesized):
#: TYPE NAME SIZE IDENTIFIER
0: APFS Container Scheme - +1.0 TB disk1
Physical Store disk0s2
1: APFS Volume Macintosh HD - Data 30.0 GB disk1s1
2: APFS Volume Preboot 99.4 MB disk1s2
3: APFS Volume Recovery 528.9 MB disk1s3
4: APFS Volume VM 2.1 GB disk1s4
5: APFS Volume Macintosh HD 10.6 GB disk1s5
我不知道接下来该怎么办。如何才能使/System/Applications
文件夹可写,以便删除我不想要/不需要的系统应用程序?我还没有看到有关这个新问题的任何指南。
有人有什么想法吗?我不知道 macOS 如何设置其挂载点。它不再使用标准 fstab 文件,所以我看不到它挂载东西的位置,只能设置一个写入标志。
答案1
为此,您必须暂时禁用系统中一些针对恶意软件的最佳保护措施,因此为了安全起见,首先确保您的机器没有恶意软件、与任何网络断开连接,并且您拥有良好的(经过测试的)全系统备份。
接下来,禁用系统完整性保护:
- 在启动时按住 ⌘+以进入恢复模式重新启动R。
- 完全进入恢复模式后,从菜单栏中的实用程序菜单中选择终端来运行它。
- 在终端中,输入
csrutil disable
。 - 重新启动回到正常启动。
禁用系统完整性保护并重新启动后,您可以使用以下命令以读写方式重新挂载启动卷:
sudo mount -uw /
现在您可以进行所需的更改。
最后,不要忘记!重新启用系统完整性保护:
- 在启动时按住 ⌘+以进入恢复模式重新启动R。
- 完全进入恢复模式后,从菜单栏中的实用程序菜单中选择终端来运行它。
- 在终端中,输入
csrutil enable
。 - 重新启动回到正常启动。
请注意,sudo mount -uw /
重启后不会持久,因此您无需明确撤消它。您为重新启用 SIP 而进行的重启已导致根文件系统再次以只读方式重新挂载。