2026 Runbook: parallele SSH- und Bildschirmfreigabe-Sperren auf dem Cloud Mac — MacLogin Apple Silicon entfrosten, wenn PTY-Automation mit Remote-GUI kollidiert
Plattformingenieure, die headlose ssh-Sitzungen mit interaktiver Bildschirmfreigabe auf demselben macOS-Benutzer mischen, sehen oft Zufalls-Hänger, die weder Netzausfälle noch CPU-Sättigung sind. Pragmatisch April 2026: Konsolen-Sitzungskonkurrenz—WindowServer, loginwindow und PTY-gebundene Automation ringen um denselben GUI-Kontext—wirkt wie flaky VNC, ist aber ein lokales Lock. Dieses Runbook liefert eine Symptommatrix, neun geordnete Schritte, eine Fünf-Spalten-Port-/Dämonenkollisionstabelle, Unified-Log-Prädikate für Tickets und FAQ für MacLogin-Leases in Hongkong, Tokio, Seoul, Singapur und den USA.
Kombinieren Sie es mit gemeinsamer SSH-Sitzungsgovernance, VNC-Zwischenablage- und Bildschirmaufnahmerichtlinie und SSH-Key-Rotation plus 2FA. Bei Lease-Rückgabe Enterprise-Offboarding-Sanitisierung. Links: Preise, Hilfe, VNC.
Bei MacLogin hängt ein Lease oft an einer Produktlinie; wenn Tokioter Handelszeiten mit CI-Spitzen in Singapur kollidieren, entsteht schnell der Mix aus Mensch am Bildschirm und Skripten auf Aqua. Zuerst als Konsolenkonflikt zu klassifizieren verkürzt die MTTR gegenüber reiner Bandbreitenhypothese. In Rufbereitschafts-Runbooks die Neun-Schritte-Reihenfolge fixieren, damit neue Teammitglieder nicht ohne pausierte CI Prozesse töten und Keychain/FileVault erschweren.
Log-Bündel immer mit 20-Minuten-Fenster für WindowServer und screensharingd anhängen; ohne GUI-Belege fragen Auditorien, wer den Grafik-Lock hielt. gzip-Dateien mit Lease-ID und Region benennen und 35 Tage aufgeteilt speichern, damit JP- und US-Prüfer denselben Tarball nutzen.
Wann parallele Remote-Sitzungen hängen (und warum die falsche Schicht schuld ist)
Drei dominante Muster im April 2026 auf gemieteten Minis:
- CI über SSH startet
osascriptoderxcodebuild, während ein Mensch denselben Desktop per Bildschirmfreigabe sieht. - Security-Software zeigt TCC-Dialoge nur auf der physischen Konsole, unsichtbar im Viewer—Automation blockiert 27–40 Minuten.
- Mehrere Bildschirmfreigabe-Zuschauer nach SSH-Portforward auf
5900vervielfachen Framebuffer-Diffs; WindowServer kann über 85 % GPU-Zeit gehen, obwohl die CPU leer wirkt.
Symptommatrix für Freezes (Spalte vor Reboot wählen)
| Beobachtbares Signal | SSH-only-Hypothese | Bildschirmfreigabe-Hypothese | Erste Aktion | Beweise |
|---|---|---|---|---|
| Cursor bewegt sich, Klicks wirken nicht | sudo-Passworthilfe hängt | WindowServer verklemmt | CI pausieren; zweiten Viewer trennen | sample WindowServer 10s |
| SSH nimmt Eingaben, GUI eingefroren | PTY gesund | GUI-Lock Konsolenbenutzer | Sekundärer Admin-Test | loginwindow-Heartbeat-Logs |
| Beide Kanäle innerhalb ~5s eingefroren | Kernel-I/O oder APFS-Snapshot | gleiche Ursache | diskutil apfs listSnapshots prüfen | Speicherdruckdiagramm |
| Bildschirmfreigabe fällt alle ~11 Minuten aus | Idle-TCP-Timeout upstream | ARD-Keepalive-Mismatch | SSH-Tunnel-Keepalive 60s | TCP-Capture am Client |
Sperrmechanismen: Konsole, ARD-Agent und SSH-PTY
Viele macOS-Automationsprimitive hängen an der Konsolen-Benutzersitzung. Bildschirmfreigabe streamt genau diese. SSH kann headless bleiben oder implizit GUI benötigen. Zusammen entsteht Prioritätsinversion: loginwindow authentifiziert weiter, WindowServer kann keine neuen Frames komponieren, weil ein Tool ein CGS-Lock hält.
Auf MacLogin-Hosts lauscht Bildschirmfreigabe typischerweise auf 5900, optional 5901–5903 für reine Beobachter. SSH-Forwards auf 5900 duplizieren sich nach Sleep/Wake auf Laptops.
Neunstufiges Remediation-Runbook (nicht überspringen)
- Blast-Radius im Ticket: Lease-ID, Metro (HK/JP/KR/SG/US), Konsolenbenutzer, Zähler Bildschirmfreigabe, interaktive SSH-Sitzungen.
- CI pausieren, die UI-Tests fährt, mindestens 6 Minuten.
- Trennen Sie alle Bildschirmfreigabe-Zuschauer bis auf einen; 90 Sekunden warten.
- Listener prüfen mit
netstat -an | grep 590und doppelte Forwards entfernen. - Wechseln Sie auf einen sekundären macOS-Benutzer, falls Governance es erlaubt, siehe gemeinsames Build-Konto.
- Unified Logs 300 Sekunden mit Prädikaten aus dem nächsten Abschnitt; gzip anhängen.
- Display-Sleep-Reset remote via
pmset displaysleepnowplus Wake-on-LAN falls aktiv. - Neustart nur wenn Schritt 7 zweimal scheitert; JP-Finanztenants außerhalb der Handelszeiten.
- Nachbereitung: Roster-Notiz, welche Automation nie wieder Bildschirmfreigabe überlappt.
Port- und Dämonenkollisionsmatrix
| TCP-Port | Typischer Besitzer | Kollisionssignatur | Mitigation |
|---|---|---|---|
| 22 | OpenSSH | MaxStartups drosselt Bursts | Staging-MaxStartups vorsichtig erhöhen; Jump-Host bevorzugen |
| 5900 | Bildschirmfreigabe | Doppelte SSH -L-Forwards | Eindeutige lokale Ports pro Ingenieur |
| 3283 | ARD-Agent (Legacy) | Gemischte ARD- und Bildschirmfreigaberichtlinien | Unbenutzte ARD-Features deaktivieren |
| dynamisch | USB-Sitzungstools | HID-Emulation für Tests | HID-Suiten auf dedizierten Leases |
Unified-Log-Prädikate und Evidence-Pack
- WindowServer:
log show --last 20m --predicate 'process == "WindowServer"' - Bildschirmfreigabe-Auth:
log show --last 20m --predicate 'process == "screensharingd"' - SSH-Sitzungstupel:
SSH_CONNECTIONaus jeder hängenden Sitzung exportieren.
Aufbewahrung: komprimierte Logs 35 Tage in gemeinsamen Buckets für JP- und US-Regulierer.
FAQ
Ist sudo pkill ScreenSharing über SSH sicher? Nur nachdem inaktive Viewer getrennt wurden—sonst riskieren Sie einen Ingenieur mitten in einem FileVault-Unlock.
Bildschirmfreigabe komplett verbieten? Nein—planen Sie Fenster neben dem CI-Kalender.
Drosselt MacLogin die Bandbreite? Metro-spezifisches Shaping steht in den Preisen; saturierte Fernverbindungen jitter mehr.
Warum Mac mini M4 parallele Remote-Workflows unterstützt
M4 bietet einen breiteren GPU-Framebuffer-Pfad und effiziente Media Engines; Bildschirmfreigabe bleibt reaktionsfähig, während große Xcode-Logs parallel per SSH getailed werden. Einheitlicher Speicher reduziert Swap gegenüber kleinen x86-VMs. Die MacLogin-Flotte in HK, JP, KR, SG und US erlaubt GUI-lastige Leases nah am Team und CI auf headless Profilen.
Zusätzliche Leases über Preise sind günstiger als weiterhin über 3 Konkurrenzvorfälle pro Monat trotz Runbook auf einem Mini zu eskalieren.
Trennen Sie GUI- und headless-Leases, bevor Sperren kaskadieren
Bildschirmfreundliches Mini in HK, JP, KR, SG oder US ergänzen, während die CI auf SSH-only-Hosts bleibt.