解决 macOS 远程管理和屏幕共享问题

如果您在 macOS 上使用远程管理屏幕共享时遇到问题,例如连接停留在“已连接”状态、显示部分加载轮子或需要频繁切换设置才能恢复功能,以下步骤可以帮助您解决可能干扰远程访问的更深层次的系统级问题。

这些高级步骤适用于熟悉终端和系统管理的用户。请谨慎操作,并确保您拥有管理员权限。

本文解决的症状

基本修复

首先关闭远程管理屏幕共享,然后重新打开。很多情况下,简单的重置就足以解决问题。

您可以在本文 中找到分步说明。

高级修复

1. 重启屏幕共享守护进程

有时 screensharingd 进程会卡住。重启它可以恢复功能,而无需完全重置远程管理。

sudo pkill screensharingd

此命令可以从终端或通过 SSH 运行,服务将自动重启。

2. 重建远程管理服务

重置并重启 macOS 远程管理和屏幕共享的启动守护进程可能会解决隐藏的损坏或停滞状态。

sudo launchctl bootout system /System/Library/LaunchDaemons/com.apple.screensharing.plist
sudo launchctl bootout system /System/Library/LaunchDaemons/com.apple.RemoteManagement.launchd

sudo launchctl bootstrap system /System/Library/LaunchDaemons/com.apple.screensharing.plist
sudo launchctl bootstrap system /System/Library/LaunchDaemons/com.apple.RemoteManagement.launchd

然后重启你的 Mac。

3. 重新创建丢失的系统文件

在某些情况下,日志可能会显示 macOS 缺少关键的系统目录,例如:

/private/var/db/DetachedSignatures

要重新创建此文件夹:

  1. 启动到 macOS 恢复模式
  2. 从“实用工具”菜单打开“终端”
  3. 运行:
    csrutil disable
    reboot

重启后(返回到常规 macOS),打开“终端”并运行:

sudo mkdir -p /private/var/db/DetachedSignatures
sudo chmod 755 /private/var/db/DetachedSignatures
sudo chown root:wheel /private/var/db/DetachedSignatures

创建目录后,您可以根据需要重新启用系统完整性保护 (SIP):

csrutil enable

4. 完全重置远程管理配置

要清除并重新配置远程管理,请执行以下操作:

sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart \
-deactivate -stop

sudo rm -f /Library/Preferences/com.apple.RemoteManagement.plist
sudo rm -rf /var/db/RemoteManagement

sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart \
-activate -configure -access -on -restart -agent -privs -all

可选:检查查看器会话过载

如果您的日志显示类似以下消息:

reset gMaxViewerConnection to 13

…这可能意味着系统没有清理旧的VNC 连接正常。您可以使用 pkill 命令(参见步骤 1)定期重置 screensharingd,或考虑通过 launchd 安排重置。

安全模式测试(可选)

排除第三方干扰:

  1. 重启 Mac
  2. 立即按住 Shift 键,直到出现登录屏幕
  3. 登录(您将进入安全模式)
  4. 启用屏幕共享或远程管理
  5. 尝试从 Screens 连接

执行这些步骤后

需要帮助?

如果您在尝试上述步骤后仍然遇到问题,请联系我们并提供您的日志副本以及有关您的 macOS 版本和网络设置的详细信息。

仍然需要帮助?

给我们发送电子邮件