caffeinate im Terminal: der eingebaute Weg unter macOS — und seine Grenze
macOS bringt einen Wachhalter mit. Er kostet nichts, muss nicht installiert werden und ist für einen einzelnen Auftrag oft die beste Wahl.
Wofür der Befehl gemacht ist
Die letzte Form oben ist die eigentliche Idee dahinter: Der Wachhalter hängt am Auftrag. Läuft der Auftrag, bleibt der Rechner wach; ist er fertig, endet beides gleichzeitig. Das ist sauberer als jede App, weil nichts übrig bleibt, an das man denken muss.
Für einen Build, ein Skript oder einen Kopiervorgang im Terminal gibt es deshalb keinen Grund, etwas zu installieren. Wer dort arbeitet, hat das passende Werkzeug schon.
Die erste Grenze: das Fenster
caffeinate läuft, solange sein Prozess läuft. Wird das Terminal-Fenster geschlossen, ist die Sitzung weg — und zwar ohne Hinweis. Wer den Befehl in einem Reiter unter fünf anderen gestartet hat, findet ihn eine Stunde später nicht wieder.
Dazu kommt: Es gibt keine Restzeit, die man irgendwo ablesen kann. Bei -t 3600 weiß man, dass es eine Stunde sind; wann diese Stunde angefangen hat, weiß man nicht mehr.
Die zweite Grenze: der Deckel
Der Befehl arbeitet mit Assertions. Der zugeklappte Deckel ist unter macOS aber eine andere Regel, und Assertions gelten dort nicht. Ein zugeklappter MacBook schläft deshalb trotz laufendem caffeinate ein.
Wer den Rechner zugeklappt weiterlaufen lassen will, braucht den anderen Schalter — die Systemeinstellung, die pmset disablesleep umlegt. Das ist genau die Aufgabe, die der Deckel-Modus von Toxin über einen eigenen kleinen Helfer übernimmt.
Wann was passt
Ein Auftrag, der im Terminal läuft und ein Ende hat: caffeinate, an den Auftrag gehängt. Nichts zu installieren, nichts zu vergessen.
Ein Rechner, der über den Tag hinweg immer wieder wach bleiben soll — für Video-Calls, Präsentationen, Downloads im Browser, einen zugeklappten Deckel: Dafür ist ein Symbol in der Menüleiste die richtige Form, mit sichtbarem Zustand und einer Spanne, die von selbst endet.
Die Aufrufe, die man wirklich braucht
caffeinate -d- hält den Bildschirm wach, solange der Befehl läuft.
caffeinate -i- verhindert den Ruhezustand des Systems, lässt den Bildschirm aber dunkel werden.
caffeinate -t 3600- hält für eine Anzahl Sekunden wach und hört dann von selbst auf.
caffeinate -i make- hält genau so lange wach, wie der angehängte Befehl läuft — nicht eine Sekunde länger.
Kurz gegenübergestellt
- caffeinate ist eingebaut, kostenlos und ideal an einen Auftrag gebunden.
- Es zeigt keinen Zustand und keine Restzeit an.
- Es überlebt das Schließen des Fensters nicht.
- Es hilft beim zugeklappten Deckel nicht — dort braucht es eine Systemeinstellung.
Häufige Fragen
Kann ich beides gleichzeitig benutzen?
Ja. Mehrere Assertions stören sich nicht. Der Rechner bleibt wach, solange mindestens eine gilt, und schläft, wenn die letzte weg ist.
Brauche ich sudo für caffeinate?
Nein. Der Befehl setzt eine Assertion im Namen des angemeldeten Nutzers. Erst pmset disablesleep greift in eine Systemeinstellung ein und verlangt entsprechende Rechte.
Der eingebaute Weg ist gut, und er hat zwei klare Grenzen. Toxin ist für die Fälle jenseits dieser Grenzen gebaut — eine Menüleisten-App für macOS, noch nicht im Mac App Store.