Chcesz, aby jeden transfer się zakończył, gdy odejdziesz od komputera, a usypianie Maca to oczywisty podejrzany. caffeinate może utrzymać asercję zasilania dokładnie przez to okno i jest narzędziem węższym, niż się na pierwszy rzut oka wydaje. Zapobiega usypianiu z bezczynności, gdy działa polecenie; nie utrzymuje sesji VPN przy życiu i nie uratuje transferu przed poświadczeniem, które wygasa o północy. Świadomość, gdzie kończy się jego zasięg, chroni przed zwaleniem kolejnej awarii na niewłaściwą warstwę.

Co asercja faktycznie utrzymuje

Narzędzie prosi system zarządzania energią o utrzymanie roszczenia, dopóki żyje opakowany proces. Gdy proces się kończy, roszczenie znika razem z nim. Ten czas życia jest użyteczną częścią: nie przełączasz ustawienia obejmującego całą maszynę i nie liczysz na to, że później przypomnisz sobie o jego cofnięciu.

Flagi wybierają różne roszczenia. -i zapobiega usypianiu systemu z bezczynności. -d dotyczy usypiania ekranu, a -s dotyczy usypiania systemu w sytuacjach, w których system na to pozwala. Żadna z nich nie jest ogólną obietnicą „pozostania obudzonym”, żadna nie odblokowuje ekranu ani nie przeciwstawia się zamknięciu pokrywy. Wybierz tę, która odpowiada przerwie, którą naprawdę zaobserwowałeś.

To rozróżnienie ma znaczenie, gdy ktoś zgłasza, że Mac „nadal zasnął”. Pytanie brzmi, jakiego roszczenia zażądano, na jak długo i jakie zdarzenie spowodowało uśpienie. Zarządzanie energią ocenia kilka sygnałów, a asercja obejmuje jeden z nich.

Opakuj zadanie zamiast ozdabiać sesję

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

To utrzymuje roszczenie o nieusypianie z bezczynności tak długo, jak działa klient SSH, i o to właśnie chodzi w opakowywaniu zamiast wysyłania w tło. Profil VPN pozostaje nietknięty, nie jest wysyłany żaden keepalive i nic w konfiguracji tunelu się nie zmienia.

Dla ograniczonego okna uczciwą formą jest flaga czasu trwania:

caffeinate -i -t 1800

Zatrzymaj to wywołanie jego zwykłym przerwaniem, gdy zadanie skończy się wcześniej. Nie zostawiaj stosu opakowań w tle i nie sprzątaj później, zabijając każdy proces o tej samej nazwie; usuniesz wtedy coś, co chciałeś zachować.

Sen to jedna przyczyna, nie przyczyna

Zapobieganie usypianiu z bezczynności usuwa jedną przerwę z listy. Nie unieważnia świadomego polecenia uśpienia, zamkniętej pokrywy, utraty zasilania ani polityki ustawionej przez administratora. To odrębne decyzje, a oczekiwanie, że asercja na poziomie użytkownika je wygra, jest właśnie tym, jak ludzie dochodzą do wniosku, że narzędzie nie działa.

Usypianie ekranu i blokada ekranu też są odrębne. Mac może pozostać obudzony przy wyłączonym ekranie i może się zablokować, gdy zadanie trwa. Jeśli wymaganiem jest podświetlony ekran, to inna flaga; jeśli wymaganiem jest odblokowany ekran, żadna flaga tego nie zapewnia. Powiedz, który z tych trzech wyników naprawdę potrzebujesz, zanim wybierzesz przełącznik, bo nie są to różne nazwy jednego zachowania.

Sesja VPN ma własny zegar

Tunel IPsec lub TLS wymienia klucze według harmonogramu uzgodnionego przez punkty końcowe, a serwer może wymusić maksymalny czas życia sesji niezależnie od aktywności klienta. Poświadczenia wygasają. Łącze dostępowe może paść z powodów, które nie mają nic wspólnego z tym, że laptop jest obudzony. Żadna z tych rzeczy nie dba o asercję zasilania.

Więc gdy użyteczny ruch zawodzi, a Mac jest wyraźnie obudzony, zwiększenie czasu trwania nie jest ani wyjaśnieniem, ani naprawą. Przeczytaj błąd: błąd wymiany kluczy, wygaśnięcie uwierzytelnienia i utrata nośnika wyglądają w logu tunelu inaczej i każde ma własne rozwiązanie.

Umieść trwałość na zdalnym hoście

Jeśli utrata lokalnego połączenia zmarnowałaby godziny pracy, odpowiedź jest po drugiej stronie. Multiplekser terminala utrzymuje sesję na serwerze, gdy SSH padnie, a system zadań utrzymuje pracę przy życiu, gdy sesja się kończy. Żaden z nich nie zależy od stanu zasilania laptopa.

To inna granica awarii i to ona ma znaczenie przy długich zadaniach. Połącz oba tylko wtedy, gdy oba są prawdziwe: maszyna musi pozostać obudzona dla lokalnej części pracy, a zdalna część musi przetrwać rozłączenie. Następnie zweryfikuj, łącząc się ponownie z drugiego terminala i sprawdzając, czy zadanie nadal działa.

Zapisz, jakiej asercji użyłeś i kiedy się kończy. Krótkotrwały wybór operacyjny jest w porządku; niewyjaśniony trwały staje się zgłoszeniem do pomocy sześć miesięcy później, gdy nikt nie pamięta, dlaczego Mac nigdy nie zasypia.

Powiązane artykuły