38

I'm running Mac OS X (think it's Snow Leopard - 10.6.7) on a Mac mini. I'm trying to connect remotely from an iMac (this has been working fine in the past, for some time). When I click "Share Screen..." in finder on the iMac, I (eventually) see the server's desktop, but it appears to be frozen. However, I've managed to determine (from closing the window and sharing screen again, on repeat) that it IS actually receiving input, just not updating the display.

I can ssh into the server, but how can I restart the screen sharing service?

Cajunluke
  • 17,704
Bobby Jack
  • 1,339

5 Answers5

59

I had the same trouble, and to a headless Mini also. This is what I found that worked…

sudo launchctl unload /System/Library/LaunchDaemons/com.apple.screensharing.plist  
sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.screensharing.plist

I had the opportunity to install an SSD in my Mini, and did a clean install of Lion at that time, and the issue persisted.

I made an alias

alias fixscreen='sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.screensharing.plist &&  sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.screensharing.plist'
Greg Cain
  • 3,161
7

Using launchctl unload and launchctl load still works but the commands are now "legacy commands".

Here's a more recent approach that also works with a single command:

sudo launchctl kill KILL system/com.apple.screensharing

This instructs launchctl to kill the screensharing service and then launchctl automatically restarts it after it has exited.

Adrian
  • 229
5

OK, managed to find the answer (or, at least, an answer; I'm not quite sure on all the details of this command):

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

As always - be careful when you paste something into terminal - best to inspect the command before running it. Doubly so when sudo is involved.

bmike
  • 235,889
Bobby Jack
  • 1,339
  • I'm not clear about the relationship between ARDAgent (ie remote management) and just screen sharing. The the UI, you can tick Screen Sharing and NOT Remote Management but kickstarting ARDAgent remotely ticks Remote Management and NOT Screen Sharing (although it enables VNC). Does that make sense? – Toby Sep 29 '12 at 13:00
1

The launchctl kill command now returns an error on Sonoma beta (14.1 Beta (23B5067a)):

> sudo launchctl kill KILL system/com.apple.screensharing

Not privileged to signal service.

The launchctl kickstart command works ok though:

> sudo launchctl kickstart -kp system/com.apple.screensharing

service spawned with pid: 19278

jamieoo
  • 21
-1

Rather than restart just the screen sharing service, I would suggest remote restarting the Mac Mini. You can do this via SSH by typing in:

sudo shutdown -r now

This will not only restart the screen sharing service, but may also resolve the issue that caused it to act up in the first place.

Matt Love
  • 6,403
  • 1
    Sometimes you need to use the big hammer. It is a valid tool and should not be downvoted just because it is not subtle. In my case to regain access to a remote login I had to restart the whole machine to clean up a failed icloud setup wizard. – BitByteDog Mar 02 '21 at 02:19