리눅스:cron(자동작업 등록)
리눅스를 위한 문서틀 틀:리눅스
- 리눅스:명령어
- 리눅스:권한관련
- 리눅스:편의기능
- 리눅스 기반 OS
- 리눅스:패키지 관리
- 다양한 패키지
- 리눅스:쉘 스크립트
cron
관련 디렉터리
/etc/crontab에서 daily, weekly 등의 실행시간을 변경할 수 있다.
/etc/ | |
---|---|
cron.d | |
cron.hourly | |
cron.daily | 00:00에 실행되는 cron들을 모아둔다. |
cron.weekly | |
cron.monthly |
크론 파일 작성법
경험상, 파일을 작성하고 그 파일 자체를 crontab에 올려버리는 게 간편하다.
mysql 백업을 예시로 설명한다.
과정 | 예시 | 방법 |
---|---|---|
파일 만들기 | nano mysql 따위로 파일을 작성한다.
문법의 사용은 우측의 예시를 보면 대강 유추할 수 있을 터. |
#!/bin/bash
#위는 bin/bash밑에 있는 스크립트를 사용한다는 선언 mysql_path='/usr/bin/mysql/' #mysql 실행파일이 있는 경로 지정 month=$(date +%Y%m%d) #제목에 사용할 서버현제날짜를 구함 fileName="backup_wikisql_${month}.sql" #저장할 파일이름 설정1 #파일 저장 경로 지정 대부분 홈디랙토리에 생성 savePath="/home/id8436/Downloads/" /usr/bin/mysqldump -u root my_wiki > ${savePath}${fileName} #dump받아 폴더에 저장 |
권한부여 | ls -l 명령으로 다른 파일들의 권한설정을 보고
chmod 를 통해 파일권한을 통일시킨다. |
chmod 755 파일명
sudo chown root:root 파일명 |
확인 | 프롬프트에 파일경로를 올렸을 때 아무 것도 안뜨면 이상이 없는 것.
이상이 있는 경우엔 에러가 뜬다. |
/etc/cron.daily/mysql
이후 크론이 작동하는 것을 확인한다. |