2014-02-14 2 views
29

이 질문에 대한 대답을 이해할 수 없습니다 : "croncrontab의 차이점은 무엇입니까?" 두 스케줄러는 파일을 한 번 실행하고 다른 하나는 정기적 간격으로 파일을 실행합니까 아니면 cron이 작업을 예약하고 crontab이 실행을 위해 테이블이나 파일에 저장합니까? Cron에 대한Cron과 Crontab의 차이점은 무엇입니까?

Wiki page는 언급 :

크론은 크론 탭 (크론 테이블)에 의해 파일을 구동, 쉘을 지정하는 구성 파일 는 주어진 일정에 따라 주기적으로 실행 명령.

그러나 wiki.dreamhostcrontab에 대한 mentiones :

유닉스와 유닉스 계열 운영체제에서 발견 된 crontab 명령은, 주기적으로 실행되는 명령을 예약하는 데 사용 입니다. 그것은 일련의 명령을 표준 입력으로부터 읽어 들여 나중에 "crontab"이라고 알려진 파일로 수집합니다.이 파일은 나중에 읽을 수 있으며 지침은 입니다. 내가 작업을 예약 할 때

특히, 반복한다 : 나는 cron 기능을하는 건가요

1 0 * * * printf > /var/log/apache/error_log 

(는 위키에서 인용) 또는 한 번만

at -f myScripts/call_show_fn.sh 1:55 2014-10-14 

을 작업을 실행 crontab에 밀어 넣은 명령이나 첫 번째 명령은 crontab이고 두 번째 명령은 cron입니다.

답변

26

cron은 예약 된 작업을 실행하는 서비스의 일반 이름입니다. crond은 백그라운드에서 실행되는 데몬의 이름이며 crontab 파일을 읽습니다. crontab을

minute hour day-of-month month day-of-week command 

크론 탭 /var/spool/<username>/crontab 일반적으로 시스템에 의해 저장되는 형식으로 작업을 포함하는 파일이다. 이러한 파일은 직접 편집 할 수 없습니다. crontab 명령을 사용하여 crontab 파일을 수정하기 위해 텍스트 편집기 (EDITOR env 변수에 대해 정의한 항목)를 호출 할 수 있습니다.

cron의 다양한 구현이 있습니다. 일반적으로 당신은 crontab을 통해 작업을 예약하는 첫 번째 예에서

/etc/cron.daily, /etc/cron.hourly에 (명령 crontab -e로 액세스) 사용자 별의 crontab 파일뿐만 아니라 시스템 크론 탭이있을 것이다. 두 번째 예제에서는 at 명령을 사용하여 나중에 실행할 작업을 대기열에 넣습니다.

+0

so..in my example commands .... 둘 다'crontab' 파일에 저장되어있는'cron'입니까? – NoobEditor

+0

첫 번째 예는 crontab 파일에 있습니다. ** crontab -e **를 통해 추가 할 수 있습니다. 두 번째 예제는 ** at ** 명령을 사용하며 crontab에 없을 것입니다. –

+0

그래서 두 번째 예제는 ** at ** 때문에'cront'가 아닌'crontab '이 아닙니다. – NoobEditor

관련 문제