쉘 스크립트상에서 find 명령이 인식이 안될때.

jjaiwook79의 이미지

저는 현재 linux 서버 2대를 각각 백업서버로 활용하려고 합니다.

각 서버마다 중요한 정보(저 같은 경우에는 사이트와 데이터베이스)를 압축하여

상대방 서버에 ftp로 전송하려 합니다.

다른것들은 잘~ 되는데 스크립트를 crontab 에 넣고 돌리면

5일지 지난 파일을 찾아 지우는 find 부분이 인식이 안되는것 같습니다. ( 콘솔상에서 직접 실행시키면 find 명령도 실행이 됩니다.)

제가 shell 스크립트를 사용한지가 얼마 안되 초보적인 단계입니다.

아래 스크립트 find 명령이 crontab 으로 실행이 되게 하려면 어떻게 해야 할까요?


#!/bin/bash

# 변수 선언

date=`date +%Y%m%d`
olddate=`date --date '5 days ago' | awk -F'. ' '{print $1 $2 $3}'`
backdir=/back

dbname=*****
dbpass=*****

backaccount=*****
backpass=*****
backhost=*****

# 5일이 지난 백업 화일은 지운다.

/usr/bin/find $backdir/ -name "*$olddate*" -exec /bin/rm -rf {} \;

# mysqldump 로 db 백업

/usr/local/bin/mysqldump -u $dbname -p$dbpass $dbname > $backdir/ceie+admin_db_$date.sql

# 파일 압축

/bin/tar -zcf $backdir/ceie_home_$date.tgz /www/ceie
/bin/tar -zcf $backdir/admin_home_$date.tgz /www/admin

# ftp 전송

/usr/bin/ncftp -u $backaccount -p $backpass $backhost << EOF
lcd $backdir/
mput *$date*
bye
EOF