이해를 돕기 위해: 그것 cron
과 명령 at
사이에 어떤 관계가 있습니까 ?
실제로 cron
다음을 실행하여 SUSE에서 서비스를 중지하면:
/etc/init.d/cron stop
at
위의 내용을 수행한 후 작업에서 명령을 실행 하면 at
?
예:
at -f /u01/script1.sh now
답변1
일반적으로 정확한 호출 방법은 at
플랫폼과 구현에 따라 다를 수 있습니다.
작업은 모든 플랫폼/구성에서 정기적인 작업이나 기타 스케줄러에 의해 실행될 수 있습니다 at
. cron
예를 들어 OS X에서는 작업이 at
특정 간격으로 launchd
실행됩니다 /usr/libexec/atrun
. 마찬가지로 FreeBSD에서는 /usr/libexec/atrun
cron이 몇 분마다 실행됩니다.
내 Debian 7 시스템에서는 atd
cron과 독립적으로 실행되는 서비스를 실행합니다. 그럼에도 불구하고 이는 jobs 에 저장됩니다 /var/spool/cron/{atjobs,atspool}
.
따라서 /etc/init.d/atd
부팅시 시작되는 서비스가 있습니다. 나는 이 사용법이 atd
SUSE를 포함한 많은 Linux 시스템에서 일반적이라고 생각합니다. 이 경우 at
및 는 cron
서로 관련이 없고 독립적입니다.
시스템이 어떻게 작동하는지 확인할 수 있습니다. cron 서비스를 중지하고 다음 명령을 실행하십시오.
echo 'touch /tmp/testfile' | at now + 1 minute
1분 이내에 존재하는지 확인하세요 /tmp/testfile
. 그렇다면 at
작업이 실행 중입니다.
답변2
둘 다 별도의 데몬을 가지고 있습니다. 데몬은 작업을 crond
실행 하고 데몬은 작업을 실행합니다.cron
atd
at
man at
매뉴얼 페이지를 사용하고 읽을 수 있습니다 man crond
.