# Study/[ 이것이 리눅스다 ]

[허언증/리눅스] Part2_chapte4_② - 비타민 퀴즈 4-2 ( CRON 스케줄 사용법 & 이것이 리눅스다)

이론과 실습 사이 2020. 2. 28. 20:35
반응형

안녕하세요 허언증 입니다.

Part2_chapter4_② (이것이 리눅스다)

<이것이 리눅스다 / 비타민 퀴즈 4-2>

 

CRON을 사용해서 쉘 명령을 통해 주기적으로 자동실행 하는 방법을 알려 드리겠습니다.

 

1) /etc/crontab에서 정보를 입력을 한다. 해당 폴더로 경로 지정

2) crontab에서 입력된 경로에 쉘 파일을 작성한다.

 

총 2가지 과정으로 작동이 됩니다. 구조를 참고하세요!!

 

 

*참고 cron 디렉터리 안 에는 hourly, daily, weekly, monthly 디렉토리가 있다. 쉘 파일을 효율적으로 관리 가능

 

 

 

 

1) /etc/crontab에서 정보를 입력을 한다.

 

 

" vi /etc/crontab " 입력!   Exapmle of job definition: 에서 잘 나와있 듯 각각 설명이 나온다.

 

노란색 표시가 직접 입력한 값

매주 목요일 22시에 /etc/cron.weekly 에 있는 모든 파일을 실행하라!  (* 표시는 All 이라 생각)

 

00 : 분

22 : 시간

*   : 일

*   : 월

thu : 요일 

 

ex) 매월 15일 새벽3시 1분에 작업을  실행하라!
01  3  15  *  *  root  run-parts  /etc/cron.monthly

 

 

 

 

 

2) crontab에서 입력된 경로에 쉘 파일을 작성한다.

 

매주 작업을 해야 하니까 " cd /etc/cron.weekly " 입력을 하고 cron.weekly 디렉토리로 진입 "vi 파일명.sh" 생성한다.  

 

fname=" "   => 생성될 때 파일 이름 정의

tar 압축을 통해 /backup 디렉토리에 $fname 형식으로 이름을 만들고 /home 디렉토리를 압축한다.

 

 

 

 

 

해당 파일이 만들어진 걸 확인.  chmod를 이용해서 실행권한을 준다. (755)

"chmod 755 mybackup.sh"

 

 

 

 

시간 기다리기가 애매하니까 date로 시간을  맞춘뒤 확인을 해보자

202721592020

 

02 : 월

27 : 일

21 : 시간

59 : 분

2020 : 년

 

 

 

 

 

결과!

 

시간이 지나면 생성 된 걸 볼 수 있다.

 

 

 

 

결과를 보기 위해서 date를 통해 날짜를 변경했는데 

rdate -s time.bora.net

입력하면 다시 현재시간으로 설정 된다!

 

 

 

 

 

 

반응형