crond 실행 결과가 이상합니다.

enjoylife의 이미지

/etc/crontab에

SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/

01 * * * * root run-parts /etc/cron.test

추가 했고, /etc/cron.test에 있는 crontest라는 파일내용은
#!/bin/bash
cd /backup/source/
dt=$(date +%Y%m%d)
tar cvfz crontest_source_$dt.tar.gz /source/

#chmod +x crontest

상태입니다. 모든 과정은 root로 하고 crond restart도 했습니다.

/source/ 디렉토리 용량이 50M가 정도 됩니다. 쉘상에서
#tar cvfz source_backup.tar.gz /source/
하면 11M가 정도나옵니다.

그런데 cron 실행후 생성되는 파일의 용량을 보니 600k정도 밖에 안됩니다. 제대로(?)실행이 안되는거 같습니다.

cron log파일을 보니

jan 21 18:01:00 localhost CROND[29010]: (root) CMD (run-parts /etc/cron.test)
jan 21 18:01:00 localhost CROND[29010]: (root) CMD (/usr/lib/sa/sa1 1 1)

#cat /usr/lib/sa/sa1
#!/bin/sh
# /usr/lib/sa/sa1.sh
# (C) 1999-2002 Sebastien Godard <sebastien.godard@wanadoo.fr>
#
umask 0022
DATE=`date +%d`
ENDIR=/usr/lib/sa
DFILE=/var/log/sa/sa${DATE}
cd ${ENDIR}
if [ $# = 0 ]
then
        exec ${ENDIR}/sadc 1 1 ${DFILE}
else
        exec ${ENDIR}/sadc $* ${DFILE}
fi

sa1에 대한 man page를 봐도 내용은 잘 이해가 안됩니다. 흠...

crond로 검색해서 봤는데 경로를 다 써줘야 된다고 해서 바꾸고 해봤는데 결과는 여전히 용량이 적게 나옵니다. 이럴때는 어떠한 방법으로 해결을 해야 하는지요(아~ 속상합니다. ㅡ_ㅡ 10시간째입니다~)... :( :roll[/code]

doodoo의 이미지

dt=$(date +%Y%m%d)
이것은 년월일 까지만 들어있는 것 같습니다.
하지만 cron에서는 매시 01 분에 실행하는거 같군요
그러면 %h 도 첨가하여야 하는것 아닌가요?

그리고

root run-parts /etc/cron.test

이 문장의
root run-parts 가 무슨뜻인지 궁금하군요

제가 보통 알기로는
01 * * * * /etc/cron.test >>/somedir/logfile 2>&1
혹은 꺽쇄(>) 한개정도
이렇게 사용 했었거든요

enjoylife의 이미지

Quote:
dt=$(date +%Y%m%d)
이것은 년월일 까지만 들어있는 것 같습니다.
하지만 cron에서는 매시 01 분에 실행하는거 같군요
그러면 %h 도 첨가하여야 하는것 아닌가요?

테스트 이기 때문에 거기까지는 신경을 안썼습니다. :D
Quote:
root run-parts /etc/cron.test
저두 run-parts에 대해서 검색을 해봤는데 못찾았습니다.
ㅡ_ㅡ;
Quote:
01 * * * * /etc/cron.test >>/somedir/logfile 2>&1

이 부분을 인용해서 crontab을 수정 하니 제대로 됩니다.
감사합니다.

그럼 즐거운 하루 되세요.

=============================
물 흐르듯이......