728x90

1. crontab 파일 권한 부여

[LINUX] '/etc/cron.allow' OR '/etc/cron.d/cron.allow'

[AIX] '/var/adm/cron/cron.allow'

[HP-UX] '/usr/lib/cron/cron.allow'

[Solaris] '/etc/cron.d/cron.allow'


# root계정으로 cron.allow 수정하여 해당계정 추가(한 라인에 사용자 이름 하나씩)

  crontab 생성, 편집, 표시, 제거 가능 crontab 생성, 편집, 표시, 제거 불가능
cron.allow (O) cron.allow에 나열된 사용자만 나머지
cron.allow (X)
cron.deny (O)
cron.deny에 나열된 사용자를 제외한 모든 사용자 cron.deny에 나열된 사용자
cron.allow (X)
cron.deny (X)
슈퍼유저 권한 필요(ex. root) 슈퍼유저 제외 나머지 모두

 

 

2. crontab 파일 권한 여부 확인 방법

#해당 사용자계정으로 로그인

#crontab -l

crontab: can't open your crontab file

-> 1) crontab 파일 존재하는지 확인 필요 2) crontab 파일 권한 확인 필요

crontab: you are not authorized to use cron. Sorry.

-> 1) cron.allow 파일에 사용자 이름 등록 필요

 

 

3. crontab 파일 존재 여부 확인 방법

#cat /var/spool/cron 하위에 계정명으로 파일이 존재

#root 계정의 crontab 파일은 '/etc/crontab' 파일을 참조함.

#cd /var/spool/cron
#ll
-rw------- 1 sysman sysman 7 Jan 2 09:00 sysman
-rw------- 1 test1 testgrp 8 Jan 10 09:00 test1

 


4. crontab 파일 설정 방법

1) crontab 목록 확인 방법

#crontab -l

#crontab -l
0 2 * * * su - root /home/work/rdate.sh
0 1 * * * su - root /root/IM/bin/scripts/backup.sh
5,35 * * * * su - root /root/IM/bin/scripts/import.sh start
12-15 * * * * su - root /root/IM/bin/scripts/export.sh start

## 매일 2시 rdate.sh 실행
## 매일 1시 backup.sh 실행
## 매시 5분, 35분마다 import.sh 실행
## 매시 12분, 13분, 14분, 15분마다 export.sh 실행

2) crontab 설정 방법

#crontab -e

2-1) 다른 사용자 계정 crontab 설정 방법

#crontab -e 사용자계정명

필드번호 의미 비고
첫번째 필드 "분(minute)" 0~59분 설정가능
두번째 필드 "시(hour)" 0~23시 설정가능
세번째 필드 "일(day)" 1~31일 설정가능
네번째 필드 "월(month)" 1~12월 설정가능
다섯번째 필드 "요일(weekday)" 0~7 설정가능(0/7: 일요일, 1:월요일 ..)
여섯번째 필드 "실행권한 및 실행될 내용"  

 

3) crontab 삭제 방법(해당 사용자에 설정된 모든 crontab 작업 삭제)

#crontab -r

 

 

5. crontab 로그 확인 방법

# cat /var/log/cron 확인

728x90

+ Recent posts