1457 번 글의 답장글: Re: 이상합니다. |
글쓴이: 산이
[홈페이지]
|
글쓴날: 2003년 05월 05일 20:52:56 월(저녁) |
조회: 611 |
[김성민]님이 남기신 글:
>안녕하세요.
>
>rm -rf 를 주석처리 하고 말씀하신 대로 echo 를 먼저
해보면
>"03-04-29 를 삭제 합니다." 라는 문구는 출력
됩니다.
>
>03-04-28
>03-04-29
>03-04-30
>03-05-01
>03-05-02
>03-05-03
>03-05-04
>
>실제 7개의 디랙토리가 생성되어 있는 상태에서 스크립트를
직접 실행 하였을 경우에는 03-05-05 (8일차)가 생기면서 03-04-28 이
삭제 됩니다.
>이러면 정상인데, cron 에 의해서 실행되면 삭제되지 않고
있습니다.
>
>지금 이렇게 되어 있습니다.
>
>#!/bin/bash
>
>export Today="`date '+%y-%m-%d'`"
>LOGdir="/usr/local/apache/logs"
>
>#cd /backup/data
>#rm -f *.tar.gz
>
>backup_dir="/backup/data"
>mkdir -p ${backup_dir}/$Today
>
>tar cfpz ${backup_dir}/${Today}/$Today-usr.local.mysql.tar.gz
/usr/local/mysql
>tar cfpz ${backup_dir}/${Today}/$Today-usr.local.apache.tar.gz
/usr/local/apache
>tar cfpz ${backup_dir}/${Today}/$Today-home.tar.gz /home
>tar cfpz ${backup_dir}/${Today}/$Today-etc.tar.gz /etc
>
>rm -f ${LOGdir}/*_log
>/usr/bin/killall -HUP httpd
>
>dirlists=`/bin/ls -t $backup_dir 2>/dev/null`
>
>i=1
>for dir in $dirlists ; do
> if [ "$i" -gt 7 ] ; then
> rm -Rf $dir
> #echo -n "$dir 을 삭제 합니다."
> fi
> i=$(($i+1))
>done
>
>exit 0
>
>임의로 생성하면 안될듯 하여 저절로 쌓일때 까지 기다렸다가
해보는데 이러는 군요....
========================================
우선 /var/log/cron 로그를 살펴보세요..
그리고 PATH 문제도 있을 수 있습니다.
위의 스크립트 상단에..
export PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/local/sbin
를 한줄 집어넣으세요..
그래도 안되면 모든 명령어를 절대경로로 지정하세요.
예를들어,
killall 이나 ls 처럼
mkdir 은 /bin/mkdir
tar 는 /bin/tar
rm 는 /bin/rm
이와 같이.
대부분 cron 이 잘 작동하지 않는 이유는 PATH 문제입니다.
|
이전글 : 이상합니다.
다음글 : 소스보기 말이죠..
|
from 61.254.75.40
JS(Redhands)Board 0.4 +@
|