강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

주기적이고 반복적인 cron설정작업 활용 1편

작성자 정보

  • 웹관리자 작성
  • 작성일

컨텐츠 정보

본문

주기적이고 반복적인 cron설정작업 활용 1



제작 : 리눅스포털 수퍼유저코리아(www.superuser.co.kr) 박성수


ㅇ 본 자료의 자세한 모든 정보는 http://www.superuser.co.kr/linuxcommandbible/ 에서 확인하시기 바랍니다.

ㅇ 본 자료의 수정 및 편집은 허용되지않습니다.





--- 목 차 ---


1 : 주기적이고 반복적인 cron설정작업을 할 수 있는 crontab 개론

2 : 시스템 크론데몬(crond)의 기본 동작원리 분석

3 : 일반사용자의 crontab명령어 사용허가 또는 제한하는 설정

4 : “, , , , 요일, 실행명령”순으로 cron설정하는 방법

5 : crontab으로 설정한 개별사용자의 cron설정, 파일로 확인하기

6 : root권한으로 rootcron설정하는 방법

7 : root권한으로 일반 사용자의 cron설정하는 방법

8 : root권한으로 rootcron설정내용 확인하는 방법

9 : root권한으로 일반 사용자의 cron설정내용 확인하는 방법

10: 일반사용자의 자기자신의 cron설정하는 방법

11: 일반사용자의 cron설정 확인하는 방법

12: root권한으로 rootcron설정 삭제하기

13: 일반계정사용자의 자기 자신의 cron설정 삭제하기

14: root권한으로 일반계정사용자의 cron설정 삭제하기



리눅스포털 수퍼유저코리아(www.superuser.co.kr) 박성수


ㅇ 본 자료의 자세한 모든 정보는 http://www.superuser.co.kr/linuxcommandbible/ 에서 확인하시기 바랍니다.

ㅇ 본 자료의 수정 및 편집은 허용되지않습니다.





1: 주기적이고 반복적인 cron설정작업을 할 수 있는 crontab 개론


리눅스 서버관리를 하는 서버관리자에게 있어서 crontab명령어 만큼 고마운 명령어는 없을 것입니다. 왜냐하면 직접 작업을 하지않아도 작업설정을 예약해두고 주기적으로 반복실행할 수 있기 때문입니다. , 백업이나 서버점검등과 같은 주기적이고 반복적인 작업을 crontab명령어로 설정해두면 정해진 시간에 주기적으로 자동실행하기 때문에 우리 같은 서버관리자들에게는 얼마나 큰 위안과 힘이 되는지 모릅니다.


첨언한다면 crontab의 설정방법과 함께 쉘프로그램의 기본제작법을 익힌다면 여러분들은 바로 고급관리자로 인정받을 수 있을 것입니다. 이 책에서는 쉘프로그램에 대해서도 각각의 명령어편에서 다루고 있으므로 참고하시고 이번 장에서는 시스템의 크론설정에 대해서 실무적인 사례를 들어 그 설정법을 배워보도록 하겠습니다.


, 필자는 주기적인 작업을 할 수 있는 크론(cron)설정에 대해서 많은 질문을 받아왔는데 이번 기회에 시스템의 주기적이고 반복적인 작업설정을 하는 크론(cron)설정법의 실무적인 방법들과 사례를 위주로 살펴보도록 하겠습니다.


간략히 표현하면 crontab은 시스템의 주기적인 cron작업의 설정, 수정등을 하는 명령어입니다. 시스템에서 가장 중요한 데몬(daemon)중의 하나인 crond와 직접적인 관련이 있는 명령어로서 수퍼유저(root) 또는 일반사용자들의 주기적이고 반복적인 특정 작업의 자동화를 설정하는 명령어입니다.


이 명령어로 설정한 작업이 주기적으로 실행되려면 crond데몬이 실행상태에 있어야합니다. 그리고 crond데몬은 /etc/rc.d/init.d/crond스크립트에 의해 시작, 종료, 재시작될 수 있습니다.


따라서 crontab이라는 명령어를 정확하게 이해하고 사용하려면 다음과 같은 데몬과 파일들을 정확하게 이해하셔야 합니다.


- crond 데몬

- /etc/crontab 파일

- /etc/rc.d/init.d/crond 스크립트

- /var/spool/cron디렉토리내의 크론설정파일들


명령어위치 : /usr/bin/crontab


사용형식

       crontab [ -u 사용자ID ] 파일
       crontab [ -u
사용자ID ] { -l | -r | -e }


이번 장에서는 root와 개별 사용자들의 cron설정방법과 수정,삭제, 확인하는 방법, 그리고 위의 파일들이 유기적으로 상호작용하여 작동하는 시스템 cron설정의 전반적인 내용들에 대해서 알아볼 것입니다.






2: 시스템 크론데몬(crond)의 기본 동작원리 분석



시스템 크론데몬 crond 실행 확인하기


crontab명령어의 사용법을 설명하기에 앞서 시스템에서 cron이 어떻게 동작하는가를 알아야합니다. 시스템에서 cron이 제대로 동작하기 위해서는 crond라는 크론데몬(cron daemon)이 동작하고 있어야만 합니다.


먼저 ps명령어로 crond가 동작중인가를 확인한 예입니다.

아래의 결과를 보시면 crond라는 데몬이 root권한으로 실행되어 있음을 알 수가 있습니다.


20061202_TD_cron_1_html_3fc0ff4.png


이렇게 crond가 동작중이면 시스템에 기본적으로 설정된 cron설정과 rootcron설정, 그리고 개별사용자의 cron설정들이 정상적으로 동작하게 됩니다.


시스템 크론데몬 crond 실행, 중지, 재시작하기


시스템 크론데몬인 crond를 실행,중지,재시작하려면 /etc/rc.d/init.d/crond스크립트를 이용합니다.


먼저 crond를 시작하기 위해서는 “/etc/rc.d/init.d/crond start”라고 하시면 됩니다. 거의 대부분 리눅스 시스템이 부팅이 되면서 ntsysv 설정항목에 의해 crond가 시작되도록 설정되어 있으므로 crond는 부팅과 함께 자동 실행될 것입니다.(이책의 ntsysv명령어편 참조바람)


20061202_TD_cron_1_html_m5b229b6e.png


그리고 crond를 재시작하려면 위의 예와 같이 “/etc/rc.d/init.d/crond restart”라고 하시면 됩니다. 또한 crond의 실행을 중지하려면 위의 예와 같이 “/etc/rc.d/init.d/crond stop”이라고 하시면 됩니다.


시스템의 기본 cron설정파일 /etc/crontab의 실행내용 분석


시스템 크론데몬인 crond/etc/crontab파일의 설정을 읽어들여서 설정되어 있는대로 실행을 합니다. 아래의 /etc/crontab파일은 리눅스를 설치하면 기본적으로 설정되어 있는 내용으로서 시스템에 기본적으로 필요한 사항들을 주기적으로 자동실행하기 위한 설정사항입니다.


, /etc/crontab파일은 시스템 크론데몬인 crond에 의해 실행될 시스템관리에 꼭 필요한 주기적인 자동실행내용들이 저장되어 있는 파일입니다. 이 파일의 기본설정내용을 살펴보면 다음과 같습니다.


20061202_TD_cron_1_html_7f578dec.png


, 리눅스 시스템은 /etc/crontab파일의 설정에 의해 시스템관리를 위하여 다음과 같이 주기적인 실행을 하게 됩니다. 이 파일의 주된 설정내용을 살펴보면 다음과 같습니다.


리눅스포털 –수퍼유저코리아- www.superuser.co.kr


관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,037 명
  • 현재 강좌수 :  35,806 개
  • 현재 접속자 :  127 명