SPRING :: NOTE

[rSync] 윈도우와 리눅스 간 폴더 동기화 시스템 구축 [3] 본문

Development Tools/Linux

[rSync] 윈도우와 리눅스 간 폴더 동기화 시스템 구축 [3]

RAYZIE 2016. 2. 12. 14:39
반응형

[rSync] 윈도우와 리눅스 간 폴더 동기화 시스템 구축 [1]


[rSync] 윈도우와 리눅스 간 폴더 동기화 시스템 구축 [2]




이전 글까지 따라오셨다면 폴더 동기화 시스템의 80%이상은 구축이 완료된 상태다.


이번 글에서는 생성한 쉘스크립트를 윈도우 작업 스케쥴러의 리눅스 버전인 crontab을 이용하여 1분에 한번씩 동기화 시키는 방법을 적겠다.


처음 접한 리눅스라 글에 오류가 많을 수 있으니 잘못된 부분은 댓글로 남겨주시면 감사하겠습니다.


crontab은 스케줄링을 관리하는 프로그램으로 시스템 관리자에게 꼭 필요한 유틸리티중에 하나이다. 특정시간대 수행할 작업을 지정해둠으로 써 특정시간에 관리자가 동일한 작업을 하지 않고 서비스 등록을 해 두면 crontab이 알아서 처리해준다. 이러한 장점때문에 본 시스템 구축에 적합한 모델이라 할 수 있다. 폴더가 실시간으로 동기화 되기 위해서는 윈도우서버에 파일을 올려두고 리눅스로 돌아와 2장에서 만들어 놓은 쉘스크립트를 일일이 실행시켜줘야 한다. 하지만 crontab으로 서비스를 등록해두면 매 시간 혹은 매 분 crontab이 작업을 처리해주기 때문에 관리자 측면에서 매우 효율적인 작업을 할 수 있도록 만들어준다.


그럼 2장에서 만들어 놓은 쉘스크립트를 crontab에 등록하겠다. 등록된 서비스는 후에 설명하도록 하겠다.



명령어를 입력한다.


crontab -e




명령어를 입력하고 아래와 같이 소스를 입력해준다.




crontab -e


* * * * * sudo sh /home/pi/rsync_cron.sh



> 다음으로 들어간 2>&1 소스는 로그파일을 생성하는 소스이므로 후에 쉘스크립트, 혹은 crontab이 정상적으로 돌지 않을 시 삽입하면 된다.


위 소스의 설명을 간단하게 하자,


MIN / HOUR / DOM / MON / DOW / CMD 순으로 소스가 진행되며


* * * * * 이 소스의 뜻은 1분에 한번씩 쉘스크립트를 돌리라는 뜻이다.


5분에 한번씩 서비스를 실행시키고 싶다면


*/5 * * * * CMD


와 같이 작성하면 된다.


더 깊이 알고 싶다면 아래 링크 (제타위키)를 이용하면 보다 자세한 스케줄링을 구성할 수 있다.


제타위키 crontab 링크


crontab을 구성하고 편집기를 저장, 빠져나온다.


crontab -l


을 입력해보면 현재 crontab에서 서비스 할 목록이 아래 그림과 같이 보일것이다.





별다른 서비스 시작 혹은 재시작 할 필요없이 이상태로 두면 알아서 crontab이 돌며 서비스를 실행한다.


crontab -e 를 이용하여 편집기에서 편집을 하고 빠져나오는 순간 crontab이 자동으로 업데이트 하여 서비스를 실행한다.




반응형
Comments