文章目录
- 具体原因
- 解决方法
最近在给新的 MacBook Pro 做数据迁移的时候,由于电脑中已经存在了一个用户,因此在数据迁移后就出现了两个用户。在【系统偏好设置】-【用户与群组】中删除了一个用户后,这个用户的数据其实依然是在电脑中的,具体的位置在:
Macintosh HD/User/用户名
中有一个 DeletedUsers (已删除用户),此文件夹内即想要删除的用户的数据。但是将这个文件夹直接放入废纸篓后会发现,无法清空废纸篓,一直提示“不能完成此操作,因为项目‘VoiceTrigger’正在使用中”
具体原因
此文件是添加新用户遗留的,其中文件夹里的很多文件是隐藏文件,要用command + shift + .
来进行查看。在这些隐藏文件中有一部分是不能直接访问的,他们大概长这样:
并且这些文件一旦放进了废纸篓后不能被删除,而且还不能移出废纸篓,还会影响将其他文件移入废纸篓的速度。
解决方法
首先我尝试了在废纸篓打开terminal,用 rm -rf 强制删除,但是失败了,terminal显提示的内容为Operation not permitted
。然后在网上看了很多各式各样的方法,最终成功的方法如下:
intro:
- macOS有一个超级用户 root,此用户具有对整个操作系统的绝对访问权限。为了保护系统的重要文件不会被随意修改(此类文件图标如上所示),csrutil 默认是处于 enable 的状态,对一些重要文件保护起来,如果修改这些文件,就会被提示 “Operation not permitted”。
- 如果关闭此功能,即置为 disable 状态后,就可以对这些文件进行操作,包括删除操作。
- 因此如果想要删除这些文件,就要将 csrutil 关闭,具体方法如下
- 首先关机,然后在开机的时候按住 command + R ,当看到苹果logo和进度条后松开
- 进度条加载结束后,选择一个用户,输入密码进入
- 在左上角小苹果logo后面点击 ”实用工具(utilities)“,打开终端(terminal)
- 输入
csrutil status
,查看状态,默认是开启状态(enable) - 将此功能关闭
csrutil disable
,关闭后terminal会提示重启生效 - 重启电脑,不按任何键,正常进入,此时来到废纸篓,就可以清理掉了
- 关机,按前文方法进入恢复模式,并打开终端,输入
csrutil enable
,将功能重新开启 - 重启机器,正常进入
- over 结束操作
tips:
记得最后一定要将 csrutil enable,以保证系统文件的安全