주기적으로 반복되는 작업을 설정해둔 시간에 작동하게 해주는 것.
crontab에 작업 내역을 설정해주면 crond(데몬)가 crontab파일을 읽어서 작업을 해준다
Cron데몬: Crond
작업 목록 설정 파일: crontab
crontab 수정 명령어: crontab
crontab 수정 명령어: crontab
1. root계정에서 크론 설정
1.1 cron 설정 방법
crontab -e로 크론 설정 작업을 vi에서 스크립트로 작성 한다.
10 3 * * 0,4 /etc/cron.d/logchecker
(분) (시간) (day) (month) (weak) (command)
리눅스 Cron
5분에 1번씩 a.sh를 실행 (*/5 <- 5분에 1번씩)
솔라리스는 5,10,15,20 ~ 다 적어야 한다
ex) 52 * * * * ls -al /export/home/userA > abc.txt
: 매달 매일 매시간 52분에, /export/home/userA에 속한 파일을 abc.txt 파일에 저장 한다.
※ Crontab -e 이 vi모드로 안넘어가면
EDITOR=vi
export EDITOR 치면ok!
※ /var/spool/cron/crontabs/(username)에 작업 내용이 저장.
vi /var/spool/cron/crontabs/root <- 52 * * * * ls -al /export/home/userA > abc.txt 작업 설정 내용 확인
1.2 cron 설정 확인
crontab -l: cron 예약 작업 확인.
# crontab -l
30 3 * * * [ -x /usr/lib/gss/gsscred_clean ] && /usr/lib/gss/gsscred_clean
#10 3 * * * /usr/lib/krb5/kprop_script ___slave_kdcs___
55 * * * * ls -al /export/home/userA > abc.txt <- 아까 설정한 cron
#10 3 * * * /usr/lib/krb5/kprop_script ___slave_kdcs___
55 * * * * ls -al /export/home/userA > abc.txt <- 아까 설정한 cron
Cron 재시작
/etc/rc.d/init.d/crond stop
/etc/rc.d/init.d/crond start
2. 사용자계정에서 cron 설정
2.1 cron 설정
crontab -e로 사용자 크론 설정 명령어를 vi에서 작성 한다.(사용자 계정 로그인 상태에서)
2.2 root계정에서 사용자계정의 cron 설정 확인
crontab -l (사용자계정)
# crontab -l userA
19 * * * * ls -al /export/home/userA > abcd.txt
19 * * * * ls -al /export/home/userA > abcd.txt
2.3 root계정에서 사용자계정 cron 수정
crontab -e (사용자계정)으로 vi에 들어가 수정한다
3. cron 삭제
crontab -r (사용자계정), crontab -e에서 직접 삭제해도 된다(옵션 기억 안나면 다 지워버려!!)
4. 사용자계정 접근 제어
/etc/cron.d/cron/deny or ~/cron.allow 두 개 파일 중 1개만 있으면 된다.
/etc/cron.d/cron.deny <- 설정된 사용자계정 접근 금지(접근금지를 원하는 사용자계정을 추가)
daemon
bin
smtp
nuucp
listen
nobody
noaccess <-vi로 접근했을 시 기본 설정.
bin
smtp
nuucp
listen
nobody
noaccess <-vi로 접근했을 시 기본 설정.
/etc/cron.d/cron.allow: 생성 해줘야 함. 이 파일에 속한 사용자 계정만 접근 허가
댓글 없음:
댓글 쓰기