자리를 비운 사이 전송 하나를 끝내야 하는데, 잠든 Mac이 뻔한 용의자입니다. caffeinate는 바로 그 시간 동안 전력 요청을 유지할 수 있지만, 첫인상보다 훨씬 좁은 도구입니다. 명령이 실행되는 동안 유휴 잠자기를 막을 뿐, VPN 세션을 살려 두지도 않고 자정에 만료되는 자격 증명에서 전송을 구해 주지도 않습니다. 이 도구의 손이 어디서 끝나는지 아는 것이 다음 실패를 엉뚱한 계층 탓으로 돌리지 않게 해 줍니다.

그 요청이 실제로 유지하는 것

이 도구는 감싼 프로세스가 살아 있는 동안 요청을 열어 두라고 전력 관리 시스템에 부탁합니다. 프로세스가 끝나면 요청도 함께 사라집니다. 바로 그 수명이 유용한 부분입니다: 기기 전체 설정을 바꿔 놓고 나중에 되돌리는 걸 기억하겠다고 기대하지 않아도 됩니다.

플래그마다 다른 요청을 고릅니다. -i는 시스템 유휴 잠자기를 막습니다. -d는 디스플레이 잠자기를 겨냥하고, -s는 시스템이 허용하는 상황에서 시스템 잠자기를 겨냥합니다. 어느 것도 “계속 깨어 있기”라는 포괄적 약속이 아니며, 화면 잠금을 풀지도, 덮개를 닫는 것을 무력화하지도 않습니다. 실제로 겪은 중단에 맞는 것을 고르십시오.

이 구분은 누군가 Mac이 “그래도 잠들었다”고 보고할 때 중요합니다. 물어야 할 것은 어떤 요청을, 얼마 동안, 어떤 사건 때문에 잠들었는가입니다. 전력 관리는 여러 입력을 평가하고, 요청은 그중 하나만 덮습니다.

세션을 꾸미는 대신 작업을 감싸라

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

이것은 SSH 클라이언트가 실행되는 동안 유휴 요청을 유지하며, 백그라운드로 돌리는 대신 감싸는 이유가 바로 그것입니다. VPN 프로필은 건드리지 않고, keepalive도 보내지 않으며, 터널 설정에서 달라지는 것은 없습니다.

시간을 한정하려면 기간 플래그가 정직한 형태입니다:

caffeinate -i -t 1800

작업이 일찍 끝나면 그 호출을 평소의 중단으로 멈추십시오. 감싼 프로세스를 여러 개 백그라운드에 남겨 두고 나중에 같은 이름의 프로세스를 모두 죽여 정리하면, 남겨 두고 싶었던 것까지 함께 없앱니다.

잠자기는 하나의 원인일 뿐, 그 원인이 아니다

유휴 잠자기를 막는 것은 목록에서 중단 하나를 없앨 뿐입니다. 의도적인 잠자기 명령, 닫힌 덮개, 전원 손실, 관리자가 정한 정책을 이기지 못합니다. 이것들은 별개의 결정이며, 사용자 수준의 요청이 그것들을 이긴다고 기대하는 것이야말로 사람들이 이 도구가 안 된다고 결론 내리는 이유입니다.

디스플레이 잠자기와 화면 잠금도 별개입니다. Mac은 화면을 끈 채로 깨어 있을 수 있고, 작업이 계속되는 동안 잠길 수도 있습니다. 필요한 것이 불 켜진 화면이라면 다른 플래그이고, 필요한 것이 잠기지 않은 화면이라면 어떤 플래그도 그것을 제공하지 않습니다. 스위치를 고르기 전에 세 결과 중 무엇이 정말 필요한지 말하십시오 — 이름만 다를 뿐 같은 동작은 아니니까요.

VPN 세션은 자기 시계를 갖는다

IPsec 또는 TLS 터널은 양 끝이 합의한 일정에 따라 키를 갱신하며, 서버는 클라이언트 활동과 무관하게 최대 세션 수명을 강제할 수 있습니다. 자격 증명은 만료됩니다. 노트북이 깨어 있는지와 아무 상관 없는 이유로 액세스 회선이 끊길 수도 있습니다. 이 중 어느 것도 전력 요청을 신경 쓰지 않습니다.

그래서 Mac이 분명히 깨어 있는데 쓸모 있는 트래픽이 실패한다면, 기간을 늘리는 것은 설명도 수리도 아닙니다. 실패를 읽으십시오: 키 갱신 오류, 인증 만료, 반송로 상실은 터널 로그에서 다르게 보이며 각각 고유한 처방이 있습니다.

내구성은 원격 호스트에 두라

로컬 연결을 잃으면 몇 시간의 작업이 날아간다면, 답은 반대편에 있습니다. 터미널 멀티플렉서는 SSH가 죽어도 서버에서 세션을 살려 두고, 작업 시스템은 세션이 끝나도 작업을 살려 둡니다. 둘 다 노트북의 전원 상태에 의존하지 않습니다.

그것은 다른 실패 경계이며, 긴 작업에서 중요한 것이 바로 그것입니다. 둘 다 참일 때만 결합하십시오: 작업의 로컬 부분을 위해 기기는 깨어 있어야 하고, 원격 부분은 연결 끊김을 견뎌야 합니다. 그다음 두 번째 터미널에서 다시 접속해 작업이 아직 돌고 있는지 확인하십시오.

어떤 요청을 썼고 언제 끝나는지 적어 두십시오. 짧게 쓰는 운영상의 선택은 괜찮습니다; 설명 없는 영구 설정은 반년 뒤 아무도 왜 Mac이 잠들지 않는지 기억하지 못할 때 지원 티켓이 됩니다.

관련 글