Je wilt dat één overdracht klaar is terwijl je even weg bent, en de slaapstand van de Mac is de voor de hand liggende verdachte. caffeinate kan precies voor dat venster een energie-assertie vasthouden, en het is een smaller hulpmiddel dan het op het eerste gezicht lijkt. Het voorkomt inactiviteitsslaap terwijl een commando draait; het houdt geen VPN-sessie in leven, en het redt geen overdracht van een referentie die om middernacht verloopt. Weten waar zijn bereik ophoudt, is wat voorkomt dat de volgende storing bij de verkeerde laag wordt gelegd.

Wat de assertie werkelijk vasthoudt

Het hulpprogramma vraagt het energiebeheersysteem een claim open te houden zolang het omwikkelde proces leeft. Wanneer het proces stopt, verdwijnt de claim mee. Die levensduur is het nuttige deel: je zet geen machinebrede instelling aan en hoopt er later aan te denken die terug te draaien.

De vlaggen kiezen verschillende claims. -i voorkomt inactiviteitsslaap van het systeem. -d richt zich op slaapstand van het beeldscherm, en -s richt zich op systeemslaapstand in de situaties waarin het systeem dat toestaat. Geen ervan is een alomvattende belofte om wakker te blijven, en geen ervan ontgrendelt het scherm of weerstaat een gesloten deksel. Kies degene die past bij de onderbreking die je werkelijk hebt gezien.

Dat onderscheid is belangrijk wanneer iemand meldt dat de Mac «toch in slaap is gevallen». De vraag is welke claim is aangevraagd, voor hoe lang, en welke gebeurtenis de slaap heeft veroorzaakt. Energiebeheer weegt meerdere signalen, en een assertie dekt daar één van.

Omwikkel de taak in plaats van de sessie te versieren

caffeinate -i /usr/bin/ssh [email protected]

Dit houdt de inactiviteitsslaapclaim vast zolang de SSH-client draait, en dat is precies het punt van omwikkelen in plaats van naar de achtergrond sturen. Het VPN-profiel blijft onaangeroerd, er wordt geen keepalive verzonden, en niets aan de configuratie van de tunnel verandert.

Voor een begrensd venster is de duurvlag de eerlijke vorm:

caffeinate -i -t 1800

Stop die aanroep met zijn normale onderbreking wanneer de taak vroeg klaar is. Laat geen stapel omwikkelaars op de achtergrond staan en ruim later op door elk proces met dezelfde naam te doden; je haalt dan iets weg dat je wilde behouden.

Slaap is één oorzaak, niet de oorzaak

Inactiviteitsslaap voorkomen haalt één onderbreking van de lijst. Het zet een bewust slaapcommando, een gesloten deksel, stroomverlies of een door een beheerder ingesteld beleid niet buitenspel. Dat zijn afzonderlijke beslissingen, en verwachten dat een assertie op gebruikersniveau ze wint, is precies hoe mensen tot de conclusie komen dat het hulpmiddel niet werkt.

Slaapstand van het beeldscherm en schermvergrendeling staan ook los daarvan. Een Mac kan wakker blijven met het beeldscherm uit, en hij kan vergrendelen terwijl de taak doorloopt. Als de eis een verlicht scherm is, is dat een andere vlag; als de eis een ontgrendeld scherm is, levert geen enkele vlag dat. Zeg welk van die drie uitkomsten je werkelijk nodig hebt voordat je een schakelaar kiest, want het zijn niet één gedrag onder verschillende namen.

De VPN-sessie houdt haar eigen klok bij

Een IPsec- of TLS-tunnel wisselt sleutels volgens een schema dat de eindpunten zijn overeengekomen, en een server kan een maximale sessieduur afdwingen ongeacht clientactiviteit. Referenties verlopen. Een toegangslink kan wegvallen om redenen die niets te maken hebben met een wakker wordende laptop. Niets daarvan geeft om een energie-assertie.

Dus wanneer nuttig verkeer faalt terwijl de Mac duidelijk wakker is, is de duur verhogen geen verklaring en geen oplossing. Lees de fout: een sleutelwisselfout, een verlopen authenticatie en een weggevallen drager zien er anders uit in het tunnellog, en elk heeft zijn eigen oplossing.

Leg duurzaamheid op de externe host

Als het verliezen van de lokale verbinding uren werk zou verspillen, ligt het antwoord aan de andere kant. Een terminalmultiplexer houdt de sessie op de server in leven wanneer SSH wegvalt, en een jobsysteem houdt het werk in leven wanneer de sessie eindigt. Geen van beide hangt af van de energiestatus van de laptop.

Dat is een andere storingsgrens, en het is degene die voor lange taken telt. Combineer de twee alleen wanneer beide waar zijn: de machine moet wakker blijven voor het lokale deel van het werk, en het externe deel moet een verbreking overleven. Verifieer dan door vanuit een tweede terminal opnieuw te verbinden en te controleren dat de taak nog draait.

Schrijf op welke assertie je hebt gebruikt en wanneer die eindigt. Een kortstondige operationele keuze is prima; een onverklaarde permanente wordt zes maanden later een supportticket wanneer niemand zich herinnert waarom de Mac nooit in slaap valt.

Gerelateerde artikelen