sharingd
又称:AirDrop
简要回答
sharingd是隔空投送和Mac其他共享功能背后的macOS进程。它负责查找附近的设备、收发隔空投送的传输,并处理Mac、iPhone和iPad之间连续互通的部分功能。
它以你自己的账户运行,大部分时间处于闲置状态。当访达中打开了隔空投送、附近的设备在寻找隔空投送目标,或者你的设备之间在交接工作时,它会被唤醒。
很多人是在防火墙提示中认识它的,提示询问是否允许sharingd接受传入连接:可能来自macOS自带的防火墙(未设为自动允许内建软件时),也可能来自Little Snitch或LuLu等防火墙App。这是隔空投送在请求接收文件。
本页内容
sharingd为什么在占用CPU或请求连接
开着的隔空投送窗口会让它一直扫描设备。在办公室或火车上这类人多的地方,附近的许多设备会让它比平时更忙。
它由Apple签名,可以放心允许。拒绝它只会让隔空投送无法接收。
如何让它安静下来
关掉访达中的隔空投送窗口,不需要时在“控制中心”中把隔空投送设为“仅限联系人”或“接收关闭”。没有东西要发现时,sharingd就会安静下来。
如果你拒绝过它,又想恢复隔空投送,就在“系统设置”→“网络”→“防火墙”→“选项”中或在你的防火墙App中重新允许它。
如何查看sharingd在做什么
做几项检查,就能看出它是在扫描、在传输,还是卡住了。
- 打开活动监视器,点按“CPU”标签页,然后在搜索栏中输入
sharingd。它以你自己的用户名运行。 - 观察“% CPU”一分钟。接近零表示闲置。如果没有打开任何隔空投送窗口,它却一直在占用,就值得仔细看看。
- 点按“网络”标签页。“已接收字节”或“已发送字节”很大,说明正在传输,而不只是在扫描。
- 在“系统设置”→“通用”→“隔空投送与连续互通”(旧版macOS中为“隔空投送与接力”)中检查你的隔空投送设置。设为“所有人”时,能发现它的设备比“仅限联系人”多。
- 要看它自己的消息,打开“终端”并运行
log stream --predicate 'process == "sharingd"'。按下Control-C停止。
sharingd的正常占用与异常情况
正常:一天中大部分时间闲置,打开隔空投送窗口或正在传输时很忙,之后又安静下来。
值得检查:没有使用隔空投送,它却连续几小时稳定占用CPU,或者防火墙反复弹出提示。常见原因有:
- 在某个被你忘掉的访达窗口或标签页中,隔空投送窗口一直开着。
- 在人多的地方把隔空投送设为“所有人”,附近的许多设备让它一直在扫描。
- 防火墙的选择没有被存储,所以每次sharingd监听时都会再次弹出提示。
隔空投送找不到另一台设备时
sharingd只能列出它看得到的设备。设备不出现的大多数情况,Apple的要求都能解释:
- 两台设备都需要打开Wi-Fi和蓝牙。
- 两台设备之间的距离需要在约9米(30英尺)以内。
- 接收方的隔空投送必须设为“仅限联系人”或“所有人”,而不是“接收关闭”。
- 设为“仅限联系人”时,发送方必须在接收方的通讯录中,且联系人卡片上有发送方Apple账户的电子邮件地址或电话号码。
- 如果以上都没问题,仍然失败,就重新启动两台设备后再试。
常见问题
Mac上的sharingd是什么?
它是隔空投送和其他共享功能背后的macOS进程,负责查找附近的设备,并收发隔空投送的传输。
应该允许sharingd接受传入连接吗?
如果你使用隔空投送,就应该允许。它需要监听给你发送文件的设备。它是macOS的一部分,由Apple签名。
sharingd为什么在占用CPU?
通常是开着的隔空投送窗口或附近的许多设备让它一直在扫描。在访达中关闭隔空投送,或者把它设为“仅限联系人”或“接收关闭”,它就会平静下来。
为什么sharingd总是要我接受传入连接?
因为你的选择没有被存储。如果使用的是macOS自带的防火墙,在“系统设置”→“网络”→“防火墙”→“选项”中打开“自动允许内建软件接收传入连接”。如果使用防火墙App,请存储一条永久规则,而不是只允许一次。
关闭隔空投送会让sharingd停止吗?
不会。sharingd仍会为macOS的其他共享功能运行,但关闭隔空投送且没有打开相关窗口时,它没有东西要扫描,会接近闲置。
相关条目
分步指南:Mac为什么无法睡眠。
想找比活动监视器更好的工具?请看Mac上最好用的活动监视器替代品,或者浏览术语表中的所有条目。