关闭iCloud信息同步进程

发布时间:2019/08/10

一天工作结束后,略感疲惫,漫步走进地铁,塞上耳塞进入一个人的世界,《Auld Lang Syne》在身体中缓缓流过,舒缓的节奏、磁性的嗓音、以及让心暖心的歌词让人感觉精神渐渐充盈。反复享受多遍后仍不过瘾,我决定要打印出这个歌词好好学习一下。

回家后,作为一个家中没有WiFi的贫苦青年,只能用手机开一个 个人热点 给mac使用,打开mac,打开音乐播放器,兴致冲冲的找到歌曲,点击播放,然后… 音乐播放了5秒就停住了,等十几秒后再次播放,然后秒秒钟后再次停住,显示加载。一声苦叹,生活苦啊,没有WiFi的孩子苦啊,上不了网啊… 正准备关掉手机热点时发现,手机上显示速度是每秒1M多,纳尼?不对头啊,每秒1M的实际速度不够听一首歌的?

打开’活动监视器‘检查一下网络,如下图

不出所料有进程抢占了我的流量资源啊,按照已接收字节倒叙排序,发现一个叫做 nsurlsessiond 的进程在疯狂的占用带宽,搜索一下,发现他是macOS 10.10系统新加的中文翻译为“互联互通”的功能,主要用于iCloud的同步数据。

罪魁祸首就是他了,就目前我的需求来看,苹果的iCloud显然不如我的正常网络访问重要,搜索一下,找到以下命令来关闭 nsurlsessiond 的运行、自动启动

1
2
3
4
5
6
#!/bin/sh
launchctl unload /System/Library/LaunchDaemons/com.apple.nsurlstoraged.plist
launchctl unload /System/Library/LaunchAgents/com.apple.nsurlsessiond.plist
sudo launchctl unload /System/Library/LaunchDaemons/com.apple.nsurlsessiond.plist
sudo launchctl unload /System/Library/LaunchDaemons/com.apple.nsurlstoraged.plist

Shell中执行上面所述命令后报一个错误:

1
Operation not permitted while System Integrity Protection is engaged

看样子这厮还有保护伞,如此的流氓就必须打掉,继续搜索应对措施,发现这是mac系统的一种名为系统完整性保护的约束。关闭约束的步骤:

  1. 进入系统的恢复模式(关机,再次开机按住command + r)
  2. 在页面菜单中点击实用工具,点击终端
  3. 执行命令 csrutil disable
  4. 关机重启

OK,现在保护伞关掉了,开机后重新执行上面的关闭 nsurlsessiond 命令就可以成功了。

最后补充

系统完整性保护是系统的一种安全机制,正常情况不建议关闭,如需开启,开启的指令是:

1
2
同样需要在系统的恢复模式执行:
csrutil enable

同样,日后哪天需要再和 nsurlsessiond 共事时,执行下面指令:

1
2
3
4
5
launchctl load /System/Library/LaunchDaemons/com.apple.nsurlstoraged.plist
launchctl load /System/Library/LaunchAgents/com.apple.nsurlsessiond.plist
sudo launchctl load /System/Library/LaunchDaemons/com.apple.nsurlsessiond.plist
sudo launchctl load /System/Library/LaunchDaemons/com.apple.nsurlstoraged.plist

参考:

https://discussionschinese.apple.com/thread/140132285?answerId=140315426322#140315426322
https://www.chadou.me/p/193
https://www.technipages.com/macos-system-integrity-protection

最后更新:2022/06/30