So entsperren Sie einen Mac, der mit der Bildschirmsperre "Vorhang" von Apple Remote Desktop gesperrt wurde


28

Apple Remote Desktop verfügt über eine "Vorhang" -Funktion, mit der ein Remote-Client den Bildschirm des Mac sperren kann, der ferngesteuert wird. Ich verwende dies, wenn ich von meinem Heim-Mac aus eine Verbindung zu meinem Arbeits-Mac herstelle. Der Bildschirm meines Arbeits-Macs zeigt ein großes Schlosssymbol und eine Meldung an, während ich ihn mit Apple Remote Desktop (ARD) von meinem Heim-Mac aus fernsteuere.

Leider gibt es einen Fehler, der dazu führt, dass der Bildschirm des Remote-Macs gesperrt bleibt, auch nachdem ich die Verbindung getrennt habe. (Die neueste Version von ARD und OS X 10.8.2 auf beiden Computern.) In diesem Fall arbeite ich am nächsten Tag, um das große Schlosssymbol und die Meldung auf dem Bildschirm meines Mac zu finden. Obwohl ich jetzt physisch vor dem Mac präsent bin, kann ich den Bildschirm nicht entsperren.

Normalerweise versuche ich, sshvon einem anderen Computer auf den Mac zuzugreifen und Prozesse zu beenden. Ich habe versucht, den ARDAgentProzess zu beenden, den Prozess der Bildschirmsperre (ich kann mich nicht an den Namen erinnern) und alles andere, was ich mit "ard" oder "remote" im Prozessnamen finden kann. Keines dieser Dinge scheint den Bildschirm zu entsperren. Schließlich verwende ich osascript -e ..., um alle laufenden Anwendungen anzuweisen, ordnungsgemäß zu beenden, und shutdown -r nowstarte dann den Computer neu.

Meine Frage: Gibt es eine Möglichkeit, einen Mac, der auf dem ARD-Sperrbildschirm hängt, mithilfe sshoder auf andere Weise erfolgreich zu entsperren ?


Eine Möglichkeit, dies zu reproduzieren: Melden Sie sich mit Remotedesktop beim Ziel-Mac an, starten Sie den Vorhang-Modus und melden Sie den Benutzer nach Abschluss der auszuführenden Arbeiten auf dem Ziel-Mac ab, während Sie sich noch im Vorhang-Modus befinden. Auf diese Weise bleibt der Mac für die Remotedesktop-App und sogar für einen physischen Benutzer des Computers unzugänglich. Das große Schlosssymbol wird weiterhin auf dem Bildschirm des Ziel-Mac angezeigt.

Ich bin nicht sicher, was ich tue, um diese Situation auszulösen, aber ich melde mich definitiv nicht ab. In jedem Fall scheint die Lösung dieselbe zu sein.


1
Ohne Ihre Frage direkt zu beantworten: Gibt es einen bestimmten Grund, warum Sie ARD anstelle von Screen Sharing verwenden?
Nohillside

1
Ich verwende ARD, weil die Bildschirmfreigabe nicht über diese "Vorhang" -Funktion verfügt und ich möchte nicht, dass Mitarbeiter bei der Arbeit meinen Mac sehen und darauf zugreifen können, wenn ich nicht da bin.
John Siracusa

Ich hätte vorgeschlagen, statt der Hardware die normale Bildschirmfreigabe und die virtuelle Anzeige zu verwenden, aber nach meiner eigenen offenen Frage scheint sie unter 10.8 als Option verschwunden zu sein, wenn 10.8 als Client verwendet wird ...
stuffe

Antworten:


11

Ich habe keinen Mac mit ARD, um dies zu testen, aber dieses Sunshine-Ard- Dienstprogramm schlägt vor, dass es das Problem beheben kann. Nach einem kurzen Blick auf den Quellcode wird lediglich eine CFNotificationCenter-Nachricht gesendet, um den Vorhangmodus zu beenden.

Ich bin mir nicht sicher, ob es eine Möglichkeit gibt, sich in den ARD-Abmeldeprozess einzuklinken, damit dieser bei jedem Trennen der Sitzung ausgeführt wird, aber Sie können ihn zumindest bei Bedarf über SSH ausführen.


1
Das sieht vielversprechend aus! Ich werde es das nächste Mal versuchen, wenn ich den Fehler reproduzieren kann.
John Siracusa

1
Trotz vieler Versuche konnte ich meinen Fehler immer noch nicht reproduzieren. Da das Kopfgeld morgen abläuft, werde ich diese Antwort unter der Annahme akzeptieren, dass es funktionieren wird.
John Siracusa

Ich war auch nicht in der Lage, es zu reproduzieren, aber ich fand einige Dokumentationen darüber, wie AppleScript zum Entsperren von Bildschirmen verwendet wird, und werde dies als separate Antwort veröffentlichen, obwohl dies der beste Ort für das Kopfgeld für Details auf Codeebene zu sein scheint das Innenleben von CFNotificationCenter.
bmike

1
Das hat einwandfrei funktioniert. Wenn auf jeden Fall noch einige Leute (wie ich) auf dieses Problem stoßen , finden Sie den Code auf github.com/mattlavine/sunshine-ard .
Frbl

2
Ich habe es auf meinem Mac mit Mojave versucht und es hat nicht funktioniert, fyi.
Brad Parks

6

Die schnellste Lösung, die ich gefunden habe, besteht darin, eine SSH-Verbindung zu einem Administratorkonto auf dem Remotecomputer herzustellen, der gesperrt ist.

ssh "adminuser"@ip.address/or.computername

Art: ps -ax | grep AppleVNCServer

Sie möchten die Zeile, die so etwas liest

/System/Library/CoreServices/RemoteManagement/AppleVNCServer.bundle/Contents/Support/LockScreen.app/Contents/MacOS/LockScreen -session 256 -msgHex 

Notieren Sie die PID links davon.

dann geben Sie ein:

sudo kill -9 "PID" 

Dadurch wird der Sperrbildschirm neu gestartet und wieder verfügbar gemacht.

Ich weiß, das ist wie der Beitrag oben gerade erklärt. Dies geschieht auch auf zwei 10.8.2-Rechnern, auf denen ARD 3.6.1 ausgeführt wird.


Das hat heute Nachmittag auf El Cap geklappt (und den Tag gerettet). Vielen Dank!
Mark

1
Versuchte dies auf Mojave, kein Glück.
Noah

3

Dies ist ein bekannter Fehler in der ARD, der anscheinend schon eine Weile existiert. Diese Apple-KB enthält einen Artikel darüber, aber keinen Vorschlag zur Behebung. http://support.apple.com/kb/TS2401

Hauptbestandteil des Dokuments:

Wenn Sie mit Remotedesktop die Steuerung eines Clients im Curtain-Modus übernehmen und sich dann am Remoteclient anmelden oder abmelden, wird die Steuerungssitzung beendet und Sie können die Steuerung des Computers erst wieder übernehmen, wenn dieser neu gestartet wird. Dies tritt auf einem Client auf, auf dem Mac OS X 10.5 oder höher ausgeführt wird, und tritt auch auf, wenn Sie den Bildschirm des Clients sperren, bevor Sie die Kontrolle übernehmen.

Auflösung

Schließen Sie vor dem Abmelden alle Fenster mit vertraulichen Informationen, beenden Sie die Kontrollsitzung (und entsperren Sie gegebenenfalls den Bildschirm). Melden Sie sich nicht am Remote-Client ab, während Sie ihn im Vorhangmodus steuern.


2

OK, ich kann mich nicht zur Verwendung von ARD äußern, ich habe es nicht, aber dies könnte zumindest in der Zwischenzeit eine geeignete Problemumgehung sein.

Bei normaler Bildschirmfreigabe haben Sie die Möglichkeit, entweder die Hardware-Anzeige oder die virtuelle Anzeige zu verwenden. Dies war unter 10.7 eine einfache Sache, wurde jedoch unter 10.8 verschleiert, und der Befehl zum Wechseln der Anzeige im Menüelement wurde entfernt.

Um die virtuelle Anzeige zu verwenden, müssen Sie Folgendes tun. Lassen Sie zunächst einen anderen Benutzer zu Ihrem normalen Benutzer, der die entsprechenden Bildschirmfreigabeoptionen zulässt, und melden Sie sich dann an:

  • Wenn niemand am Zielcomputer angemeldet ist, wird immer die Hardware-Anzeige mit dem normalen Anmeldebildschirm angezeigt
  • Wenn Sie versuchen, sich als bereits angemeldeter Benutzer anzumelden, wird immer zu diesem Benutzer gewechselt und die Hardwareanzeige verwendet
  • Wenn Sie sich mit einem anderen Benutzer anmelden, der noch nicht an der Hardwareanzeige angemeldet ist, erhalten Sie die folgende Meldung und die Möglichkeit, die virtuelle Anzeige zu verwenden, sodass Sie ohne Änderung des Hauptbildschirms und ohne Möglichkeit von beliebige Aktionen ausführen können Jeder, der es sehen kann

Bildbeschreibung hier eingeben

Dies ist nicht perfekt. Sie müssen sicherstellen, dass Ihr sekundärer Benutzer über die entsprechenden Zugriffsrechte für die Dateien verfügt und dass Sie möglicherweise darauf zugreifen müssen, oder Sie müssen die umständliche Praxis anwenden, Ihren sekundären (oder "Dummy") Benutzer zu verlassen Sie sind angemeldet, wenn Sie das Pult verlassen und Ihre primäre ID über die Bildschirmfreigabe verwenden können. Dies kann jedoch hilfreich sein.


2

Apple bietet in Kapitel 9 des ARD-Administratorhandbuchs ein Beispiel für die Skripterstellung des Sperrbildschirms .

Vielleicht könnte das Skript auf Seite 174 gekürzt werden, um nur die Entsperrsequenz zu senden:

-- Start commanding the local copy of Remote Desktop
tell application "Remote Desktop"
  -- decide which list to perform this on, in this case it's called
     "WorkMac"
  set these_computers to computer list "WorkMac"
  -- unlock the screen when finished
  execute (make new unlock screen task) on these_computers
end tell 

2

Ich kann Ihr genaues Setup nicht reproduzieren, da ich derzeit keinen zweiten Computer mit 10.8.2 und 3.6.1 habe, aber ich habe Folgendes versucht:

Von meinem 10.8.2 / 3.6.1 Admin-Mac aus habe ich den Bildschirm auf meinem 10.6.8-Client gesperrt, mich vom Client abgemeldet und den Bildschirmsperrfehler reproduziert. Ich wurde von meiner ARD-Sitzung getrennt und der Client blieb mit dem Sperrbildschirmsymbol. Ich habe mich an den Kunden gewandt und nachdem ich versucht hatte, etwas Liebe von 'Kickstart' zu bekommen, habe ich launchctl list ausgeführt, die einen 'LockScreen'-Job enthüllte. Das Beenden ohne Signal hatte keine Auswirkung, aber das Senden von -9 entfernte das Sperrsymbol vom Bildschirm und nach ein paar Sekunden wurde das Anmeldefenster geladen. Sie müssen es unter Ihren Bedingungen versuchen, um sicherzustellen, dass dieselbe Technik auf einem gesperrten 10.8.2 / 3.6.1-Computer funktioniert und wenn das Problem nicht durch das Abmelden des Benutzers verursacht wird.


1
Ich habe diesen Prozess definitiv abgebrochen und dann gesehen, dass das Schloss auf dem Bildschirm bleibt. Ich werde es das nächste Mal versuchen, wenn ich den Fehler reproduziere, nur um sicherzugehen.
John Siracusa

Gute Informationen zur Fehlerbehebung, aber das Beenden des Prozesses funktioniert nicht. Siehe mein Applescript, um die Entsperrung programmgesteuert zu senden.
bmike

2

Wenn Sie auf El Capitan sind, funktionieren die obigen Anweisungen zum Beenden des Sperrbildschirms nicht. Es gibt einen Prozess, der immer wieder gestartet wird, und ich konnte ihn mit nicht finden launchctl list. Ich habe auch versucht, die ARD über mein sshLogin herunterzufahren, aber das hat auch nicht funktioniert. Anscheinend sind LockScreen.app und ARD entkoppelte Prozesse oder so. Ich musste shutdown -r noweinen Neustart erzwingen. Ich bin ziemlich sauer, dass Apple diesen Fehler nicht behoben oder eine Problemumgehung bereitgestellt hat, die, wie Sie wissen, tatsächlich NACH der Tatsache funktioniert.


In der Tat habe ich das gleiche Problem. Ich habe versucht, den Sperrbildschirm und andere laufende Dämonen zu töten, aber kein Glück. Ich suche nach verschiedenen Lösungen und poste sie hier, wenn ich welche finde.
Frbl

Haben Sie Glück, eine Lösung zu finden?
Tmm1

0

Öffnen Sie in der Remotedesktop-App die Systemliste und markieren Sie einen Remotecomputer mit dem Status "Gesperrter Bildschirm". Öffnen Sie das Interaktionsmenü und wählen Sie "Bildschirm entsperren ..."

Sie sehen sofort die Statusänderung des Systems von "Gesperrter Bildschirm" zu "Verfügbar". Sie können dann eine neue Verbindung im Vorhangmodus herstellen.


Welche Remote Desktop App ist das?
Tmm1

Apple Remote Desktop.App v 3.9.
Tyager
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.