Дръжте Mac буден за една VPN задача, а не заради самата VPN
caffeinate държи заявка за захранване за обвитата команда и нищо повече. Той не може да поднови ключовете на тунел, да удължи сесия или да преживее затворен капак.
Трябва ви едно прехвърляне да завърши, докато сте се отдалечили, а спящият Mac е очевидният заподозрян. caffeinate може да задържи заявка за захранване точно за този прозорец и е по-тесен инструмент, отколкото изглежда в началото. Той предотвратява заспиването при бездействие, докато тече команда; не поддържа VPN сесия жива и няма да спаси прехвърляне от удостоверение, което изтича в полунощ. Знанието къде свършва обхватът му е това, което спира следващия отказ да бъде приписан на грешния слой.
Какво всъщност задържа заявката
Инструментът иска от системата за управление на захранването да държи заявка отворена, докато обвитият процес е жив. Когато процесът излезе, заявката си отива с него. Точно този живот е полезното: не превключвате настройка за цялата машина и не се надявате да си спомните да я върнете по-късно.
Флаговете избират различни заявки. -i предотвратява заспиването при бездействие на системата. -d е насочен към заспиване на дисплея, а -s — към заспиване на системата в случаите, когато системата го позволява. Никой от тях не е общо обещание „остани буден“, и никой не отключва екрана, нито осуетява затварянето на капака. Изберете този, който отговаря на прекъсването, което наистина сте видели.
Тази разлика е важна, когато някой съобщи, че Mac „все пак е заспал“. Въпросът е коя заявка е била поискана, за колко време и кое събитие е причинило заспиването. Управлението на захранването оценява няколко входа, а заявката покрива един от тях.
Обвийте задачата, вместо да украсявате сесията
caffeinate -i /usr/bin/ssh [email protected]
Това задържа заявката за бездействие, докато работи SSH клиентът, което е целият смисъл на обвиването вместо пускане във фонов режим. VPN профилът остава недокоснат, не се изпраща поддържащ сигнал и нищо в конфигурацията на тунела не се променя.
За ограничен прозорец флагът за продължителност е честната форма:
caffeinate -i -t 1800
Спрете това извикване с нормалното му прекъсване, когато задачата приключи по-рано. Не оставяйте куп обвивки във фонов режим и после не чистете, като убивате всеки процес със същото име; ще премахнете нещо, което сте искали да запазите.
Сънят е една причина, не причината
Предотвратяването на заспиване при бездействие премахва едно прекъсване от списъка. То не отменя умишлена команда за заспиване, затворен капак, загуба на захранване или политика, зададена от администратор. Това са отделни решения и очакването заявка на потребителско ниво да ги победи е начинът, по който хората стигат до извода, че инструментът не работи.
Заспиването на дисплея и заключването на екрана също са отделни. Mac може да остане буден с изключен дисплей и може да се заключи, докато задачата продължава. Ако изискването е осветен екран, това е друг флаг; ако изискването е отключен екран, никой флаг не го осигурява. Кажете кой от тези три резултата ви трябва в действителност, преди да изберете ключ, защото те не са едно поведение под различни имена.
VPN сесията си има свой часовник
Тунел IPsec или TLS подновява ключовете по график, договорен от крайните точки, а сървърът може да наложи максимален живот на сесията независимо от активността на клиента. Удостоверенията изтичат. Линията за достъп може да падне по причини, които нямат нищо общо с будността на лаптопа. Никое от тези не се интересува от заявка за захранване.
Затова, когато полезен трафик се провали, докато Mac очевидно е буден, увеличаването на продължителността не е обяснение и не е ремонт. Прочетете отказа: грешка при подновяване на ключове, изтичане на удостоверяване и загуба на носител изглеждат различно в журнала на тунела и всяко има свое решение.
Сложете устойчивостта на отдалечения хост
Ако загубата на локалната връзка би пропиляла часове работа, отговорът е от другата страна. Терминален мултиплексор държи сесията жива на сървъра, когато SSH умре, а система за задачи държи работата жива, когато сесията приключи. Никое от двете не зависи от захранването на лаптопа.
Това е друга граница на отказ и именно тя е важна за дълги задачи. Съчетайте двете само когато са верни и двете: машината трябва да остане будна за локалната част от работата, а отдалечената част трябва да преживее прекъсване на връзката. После проверете, като се свържете от втори терминал и видите, че задачата още работи.
Запишете каква заявка сте използвали и кога тя свършва. Краткотрайно оперативно решение е добре; необяснено постоянно такова се превръща в тикет за поддръжка след шест месеца, когато никой вече не помни защо Mac никога не заспива.