잠자는 wifi 때문에 크론 작업이 실패합니까?


2

나는 wifi를 통해 다른 컴퓨터로 백업을 수행하는 cron 작업을 작성했습니다. 내가 기계를 사용할 때 완벽하게 작동하지만, 야간에 내가 사용하지 않을 때 그것을 예약하는 것을 선호한다. 첫 x 째 단계는 i 업 서 v에 ping을 한 번 수행하고 해당 단계가 실패 할 경우 전체 스크립트에 실패하는 것입니다.

그것은 지속적으로 실패합니다. :(

Energy Saver가 절대로 (잠겨있을 때) 잠자기 상태로 설정되어 있습니다.

OS X은 특정 시간 이후에 항상 WiFi를 잠자기 상태로 전환합니까? cron 작업을 위해 깨우지 않습니까? 아니면 그럴지도 모르지만, 연결하기를 기다려야합니까?

업데이트 : @bmike가 내 질문에 pmset -g log 산출. 나는 사용한다 terminal-notifier 알림을 보낼 수 있습니다.

2015-05-13 16:05:23 -0700 Assertions            PID 56(powerd) TimedOut InternalPreventDisplaySleep "com.apple.powermanagement.delayDisplayOff" 00:09:22  id:0x100000032b [System: DeclUser IntPrevDisp kDisp]
2015-05-14 00:00:01 -0700 Assertions            PID 552(NotificationCen) Created DisplayWake "com.apple.notificationcenter.sleeping-note" 00:00:00  id:0xe00000bc1 [System: DeclUser DispWake kDisp]
2015-05-14 00:00:11 -0700 Assertions            PID 552(NotificationCen) Released DisplayWake "com.apple.notificationcenter.sleeping-note" 00:00:10  id:0xe00000bc1 [System: DeclUser kDisp]

흠 - 컴퓨터가 잠자고 있으면 다른 문제가있을 수 있습니다. 그렇다 pmset -g log 또는 pmset -g assertionslog 관심있는 것을 보여 주시겠습니까?
bmike

@bmike : 로그를 추가했습니다.
nfirvine

답변:


1

나는 이것을 과거 몇 시간 동안 간접적으로 해결했다.

하나의 Mac (절대로 잠을 자지 못하게하는 Mac)은 오전 2시 55 분에 매일 아침 일어나거나 켜는 에너지 절약 일정을 가지고 있습니다. 그것은 잠들지 않겠지 만 SSH를 통해 클라이언트 맥에 들어가는 발사 작업 (cron은 더 오래된 스케쥴링 방법을 유지하기를 원한다면 괜찮습니다)도 있습니다.

클라이언트 Mac은 원격 액세스에 대한 대기 모드를 허용하고, Power Nap (지원되는 경우)을 허용하고 SSH를 허용하도록 설정됩니다.

우리는 몇 가지 AirPort와 AppleTV가 ssh 요청을 프록시하고 클라이언트 mac에 잠자기 상태로있는 경우 깨우기 패킷을 보냅니다.

그러면 고객은 깨울 때 예정된 cron 작업을 수행 할 수 있습니다.

이 작업을 수행하는 데 너무 많은 시간을 소비하는 경우 정기적 인 작업에 백업 훅을 넣거나 launchd로 변환하여 이상적인 예약 시간이 경과 한 경우에도 기회 주의적으로 실행할 수 있습니다.


"정기적 인 작업에 백업 후크를 넣을 수 있습니다"라는 말은 무엇을 의미합니까?
nfirvine

man periodicls /private/etc/periodic 당신을 시작해야합니다.
bmike
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.