linux의crontab 서비스

4815 단어
linux의crontab 서비스: 1,crontab는 사용자가 고정된 시간이나 고정된 간격으로 프로그램을 실행할 수 있도록 linux 플랫폼에서 작업 스케줄링 기능을 실현하려면cron 스크립트를 작성해서 실행할 수 있도록 합니다.어떤 주파수로 작업을 수행하는 linux는 crond 프로세스를 시작하지 않습니다. crond 프로세스는 사용자가 시작하거나 닫을 필요가 없습니다.crond 프로세스는 스케줄링 작업을 읽고 실행하며, 사용자는 해당하는 스케줄링 스크립트를cron의 스케줄링 프로필에 쓰기만 하면 됩니다.cron의 스케줄링 파일은 다음과 같습니다.crontab    2. cron.d    3. cron.daily    4. cron.hourly    5. cron.monthly    6. cron.weekly에서 사용하는 작업이 hourly monthly weekly 방식으로 실행되지 않으면 해당하는crontab를crontab나crontab에 쓸 수 있습니다.디렉토리예: 1분마다 스크립트/opt/bin/test-cron을 실행합니다.sh는cron에 있습니다.d 새 스크립트 echo-date.sh 내용은 */1 * * * * * * root/opt/bin/test-cron입니다.sh2,cron은 linux에서 정해진 시간에 실행하는 도구로 인공적인 개입이 필요 없는 상황에서 작업을 실행할 수 있습니다.Cron은 Linux의 내장 서비스이기 때문에 자동으로 일어나지 않으면 다음과 같은 방법으로 시작할 수 있습니다.이 서비스 닫기:/sbin/서비스 crond start//서비스 시작/sbin/서비스 crond stop//서비스 닫기/sbin/서비스 crond restart//서비스 다시 시작/sbin/서비스 crond reload/설정을 다시 불러올 수도 있습니다. 시스템이 시작될 때 이 서비스를 자동으로 시작할 수도 있습니다:/etc/rc.d/rc.local 이 스크립트의 끝에:/sbin/서비스 crond start 현재 Cron 이 서비스는 프로세스 안에 있습니다. 이 서비스를 사용하면 서비스가 ps-ax | grep cron3,crontab 명령으로 이 사용자의 crontab 서비스가 성공적으로 만들어졌는지 확인할 수 있습니다.crontab -l 명령 which php로 linux에 설치된 php의 경로를 확인합니다 cron 서비스는crontab 명령을 제공하여cron 서비스를 설정합니다. 다음은 이 명령의 일부 매개 변수와 설명입니다:crontab -u//특정한 사용자의cron 서비스를 설정합니다.일반 루트 사용자가 이 명령을 실행할 때 이 인자인crontab -l//는 어떤 사용자cron 서비스의 상세한 내용을 보여줍니다 crontab -r//사용자가 없는cron 서비스crontab -e를 삭제합니다//사용자의 cron 서비스를 편집합니다 예를 들어 루트가 자신의cron 설정을 보십시오:crontab -u 루트 -l 그리고 루트는fred의cron 설정을 삭제하려고 합니다:crontab -u fred-r가 cron 서비스를 편집할 때편집의 내용은 몇 가지 형식과 약속이 있습니다. 입력:crontab -u root-e는vi 편집 모드에 들어가고 편집의 내용은 반드시 아래의 형식에 부합되어야 합니다.:*/1****ls>>/tmp/ls.txt 작업 스케줄링의crond 상주 명령crond는linux에서 프로그램을 정기적으로 실행하는 명령입니다.설치가 완료되면 기본적으로 이 작업 스케줄링 명령이 시작됩니다.crond 명령은 매 분종마다 실행할 작업이 있는지 정기적으로 검사하고 실행할 작업이 있으면 자동으로 실행합니다.crontab 명령 옵션: - u 사용자 지정 - l 사용자의 작업 계획 표시 - r 사용자의 작업 삭제 - e 사용자의 작업 편집 4,cron 파일 문법: 시간별 일 월 요일 명령 0-590-23 1-31 1-12 0-6 command (값 범위, 0은 일요일 일반 한 줄이 한 임무에 대응하는 것을 나타냄) 몇 가지 특수 기호의 의미를 기억합니다. "*"는 값 범위의 숫자를 나타냅니다.'/'는'마다'를 나타낸다. 예를 들어 2분마다:*/2'-'는 특정한 숫자에서 특정한 숫자로,','몇 개의 분리된 숫자 5, 작업 스케줄링 설정 파일의 쓰기 방법은crontab-e 명령으로 편집할 수 있다. 편집은/var/spool/cron에서 대응하는 사용자의cron 파일이다./etc/crontab 파일의 구체적인 형식도 다음과 같이 수정할 수 있습니다. Minute Hour Day Month Dayofweek command 분 시간 일 월 일 주 명령 각 필드의 의미는 다음과 같습니다. Minute는 시간당 몇 분에 이 작업을 수행합니다.Hour 매일의 몇 시간째 작업 수행Day 매월 며칠째 작업 수행Month 매년의 몇 달째 작업 수행Day OfWeek 매주 며칠째 작업 수행Command 지정된 프로그램 실행이 필드에서 "Command"은 매번 지정해야 하는 필드를 제외하고 다른 필드는 선택 사항이며 필요에 따라 결정될 수 있습니다.지정하지 않은 필드의 경우 "*"을 사용하여 해당 위치를 채워야 합니다.예를 들면 다음과 같다: 5*** * ls 지정 시간당 5분마다 ls 명령 30 5** ls 지정 매일 5:30 실행 ls 명령 30 7 8* ls 지정 월 8일 7:30분 ls 명령 실행 30 5 8 6 * ls 지정 매년 6월 8일 5:30 ls 명령 실행 30 6 * 0 ls 지정매주 일요일 6시 30분에 ls 명령을 집행한다. [주:0은 일요일을 나타내고 1은 월요일을 나타낸다. 이런 식으로 유추하면 영어로도 표시할 수 있다. 선은 일요일을 나타내고 몬은 월요일을 나타낸다.]30 3 10, 20 * ls 매월 10 일 및 20 일 3:30 ls 명령 실행 [참고: "", ""여러 불연속 시간대를 연결하는 데 사용] 25 8-11 * * * ls 매일 8-11 시 25 분 ls 명령 실행 [참고: ""-""연속 시간대를 연결하는 데 사용]*/15 ** * * * ls는 15분마다 ls 명령을 실행합니다. [즉 시간당 0 15 30 45 60분 ls 명령 실행] 30 6 */10 * * ls는 매달10일 간격으로 6시 30분에 한 번씩 ls명령을 집행한다. [즉 매달 1, 11, 21, 31일은 6시 30분에 한 번씩 ls명령을 집행한다.]매일 7:50에 루트로/etc/cron을 실행합니다.daily 디렉토리의 모든 실행 파일 507 * * * * * root run-parts/etc/cron.daily [주:run-parts 매개 변수는 다음 디렉터리에 있는 모든 실행 가능한 파일을 실행합니다.]6. 새로운 스케줄링 작업 추가 스케줄링 작업은 두 가지 방법으로 할 수 있다. 1) 명령줄에:crontab-e를 입력한 다음에 해당하는 작업을 추가하고 wq메모리가 종료된다.2)/etc/crontab 파일, 즉vi/etc/crontab을 직접 편집하여 해당하는 작업을 추가합니다.7, 스케줄링 작업 보기 crontab -l//현재 모든 스케줄링 작업 보기 crontab -l -u jp//사용자 jp의 모든 스케줄링 작업 보기 8, 작업 스케줄링 작업 삭제 crontab -r//모든 작업 스케줄링 작업 삭제 9, 작업 스케줄링 실행 결과의 전환 예 1: 매일 5:30에 ls 명령을 실행,결과를/jp/test 파일에 305**ls>/jp/test2>&1 주:2>&1 실행 결과 및 오류 정보를 출력합니다./etc/crontab 파일을 편집해서 cron cron 서비스를 설정합니다. 분당/var/spool/cron 내의 모든 파일을 읽을 뿐만 아니라/etc/crontab도 한 번 읽어야 합니다. 따라서 이 파일을 설정하면cron 서비스를 이용해서 일을 할 수 있습니다.crontab 설정은 사용자를 위한 것이고, 편집/etc/crontab은 시스템을 위한 작업입니다.이 파일의 파일 형식은 SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root//오류가 있거나 데이터 출력이 있으면 이 계정에 메일로 보내는 HOME=///사용자 실행 경로입니다. 루트 디렉터리 #run-parts 01 * * * * * * root run-parts/etc/cron.hourly//시간당/etc/cron.hourly 내 스크립트 024 * * * * root run-parts/etc/cron.daily//매일/etc/cron을 실행합니다.daily 내의 스크립트 224 * 0 root run-parts/etc/cron.weekly//매주/etc/cron을 실행합니다.weekly 내의 스크립트 424 1 * * root run-parts/etc/cron.monthly//매달/etc/cron을 실행합니다.monthly 내의 스크립트는'run-parts'라는 인자를 주의하십시오. 이 인자를 빼면 폴더 이름이 아닌 실행할 스크립트 이름을 쓸 수 있습니다. 예를 들어 1) 명령줄에:crontab-e를 입력하고 해당하는 업무를 추가하면 wq 메모리가 종료됩니다.2)/etc/crontab 파일, 즉vi/etc/crontab을 직접 편집하고 해당하는 작업을 11 2 21 10 * rm -rf/mnt/fb 10.php 스크립트에 (require,include) 및 상대 경로, 절대 경로가 포함될 수 있기 때문에 먼저 cd를 사용한 다음에 실행하는 것이 좋습니다.다음과 같습니다.
*/10 * * * * cd /var/www/cron && /usr/bin/php /var/www/cron.php

좋은 웹페이지 즐겨찾기