起因
在之前跟家人聊天,通过apple的photos软件翻了一下原来的老照片,共享了其中的一些照片给家人看。
聊天之后开始下载一部美剧,发现速度奇慢,只有30KB/s,遂觉得不对劲,一定有什么后台进程。
工具
macOS上的命令行工具:nettop
一看这个名称,就知道这个是跟linux的top equivalent的工具。以下是使用概要。
- 直接在终端输入:
nettop
- 注意nettop有以下选项,均可以通过在nettop界面中通过点击的方式:
- p:换成人类易读模式。即通过KB, MB来表示,而不是全部是bytes。
- d:delta。即切换为显示当前的增量,这样能够找到在这一秒内下载最多的程序。
- 另外,以下命令可以看到流量在网络TCP/IP层是怎么走的,相当于网络的traceroute。
nettop -m route
macOS上的图形工具:Activity Manager
Activity Manager里面的网络tab,也能够看到每个进程的网络占比。但缺点是没有delta选项,即不容易通过增量单独来看。
元凶:nsurlsessiond。苹果的Photos同步进程
找到一个占了200KB/s的线程:nsurlsessiond
查google得知这个是macOS的photos应用的云同步进程。
只要知道怎么关闭这个云同步就行。
解决方案
- 打开photos应用,点击Preference
- 打开icloud页签,能够找到iCloud Photo Library,发现其中有N百张照片在下载。
- 点击暂停一天即可。
- 然后我的下载器的速度就恢复了。