Jak włączyć udostępnianie ekranu OS X (VNC) przez SSH?

59

Zapomniałem włączyć „Przeglądarki VNC mogą sterować ekranem za pomocą hasła”, aby wejść na działającego Maca, czy jest sposób na włączenie tej funkcji zdalnie przez SSH (teraz jestem na WindowsXP)?

Jari Keinänen
źródło

Odpowiedzi:

90

Źródło: http://technotes.twosmallcoins.com/?p=279 ( zarchiwizowane )

Putty to dobry klient SSH dla systemu Windows.

1) SSH do zdalnego komputera OS X z logowaniem administratora i hasłem.

2) Włącz Pulpit zdalny (inaczej Udostępnianie ekranu, inaczej VNC) za pomocą tego polecenia:

sudo  /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart \
-activate -configure -access -on \
-clientopts -setvnclegacy -vnclegacy yes \
-clientopts -setvncpw -vncpw mypasswd \
-restart -agent -privs -all

3) Zaloguj się przy użyciu klienta VNC. Jak wspomniałem, TightVNC działało dla mnie; z jakiegoś powodu RealVNC i UltraVNC nie. Twoje hasło to „mypasswd” (zobacz flagę -vncpw w powyższym poleceniu; możesz i powinieneś to zmienić).

4) Po zakończeniu wyłącz udostępnianie ekranu za pomocą sesji SSH:

sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart \
-deactivate -configure -access -off
RobinJ
źródło
2
Niesamowity! Pracuje!
Jedna rzecz, że Mac RD jest dla mnie zupełnie bezużyteczny (bardzo powoli) ... w przeciwieństwie do Windows RDC, co jest całkiem dobre.
Czy próbowałeś Vine Server?
2
Ponad 3 lata później i działa doskonale w Yosemite. Dzięki!
Jordan
1
@Novellizator Zarówno Mac, jak i Linux mają ssh dostępne po wyjęciu z pudełka. Nie potrzebujesz osobnego pakietu, takiego jak potrzebujesz w systemie Windows.
Christopher Schultz
30

Oto inny sposób, który umożliwia dostęp do współdzielenia ekranu wszystkim obecnym użytkownikom, zamiast używania jednego hasła vnc;

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

Wyłącz tak samo jak poprzednio.

Pozwala to połączyć się ze zdalnym komputerem z komputera Mac za pomocą share screenprzycisku w Finderze.

Odniesienie: http://ss64.com/osx/kickstart.html

Michael Camden
źródło
2
Dla potomnych: jeśli to zrobisz, możesz również połączyć się przez /System/Library/CoreServices/Screen Sharing.app.
Dougal
Pamiętaj, że możesz (bardzo) łatwo uruchomić aplikację do udostępniania ekranu za pomocą wyszukiwania Spotlight
Vincent Robert
nie działa dla mnie w systemie macOS Sierra 10.12
SegFault
pracował dla mnie na macOS High Sierra 10.13.6
Fahim
2
Otrzymałem odpowiedź na macOS Mojave: „Ostrzeżenie: Macos 10.14 i nowsze wersje pozwalają kontrolować tylko, jeśli Udostępnianie ekranu jest włączone poprzez Preferencje systemowe”.
toralux