2013-03-09 3 views
1

저는 우분투 10.04 LTS 서버의 루트 cron에서 조합 백업 스크립트를 실행하고 있습니다.우분투 루트 크론 작업이 완료되지 않았습니다.

루트 크론은 다음과 같습니다 :이 예상됩니다으로

# m h dom mon dow command 
0 1 * * 2-6 /home/cbhiadmin/archive 

그것은 실행합니다. archive 명령은 여러 개의 개별 설비 백업을 시작합니다. 코드는 다음과 같다 : 다음과 같이

#!/bin/bash 

# This script executes several individual facility archive processes & logs success. 

/home/cbhiadmin/archive104 
/home/cbhiadmin/archive106 

if [ $? -ne 0 ]; then 
    echo "$(date '+%m/%d/%y-%H:%M') Nightly Addon backup SUCCESSFUL" >> /home/cbhiadmin/addon_backups/addon_backup.log 
    exit 
    fi 

그리고 마지막 부분은 개별 시설의 백업입니다 :

#!/bin/bash 

# This script archives a facility, FTPs the archive to 10.5.2.76, & logs failure. 

today=$(date '+%m%d%y') 
site="106" 

cd /home/cbhiadmin/addon_backups/"$site" 

if [ ! -f "$site"adata_"$today".tar.gz ]; then 

tar --exclude *.CSV --exclude *.csv -czf "$site"adata_"$today".tar.gz -C /usr/bbx/aon/ "$site"/ADATA/ 

    if [ $? -ne 0 ];then 
    echo "$(date '+%m/%d/%y-%H:%M') $site: Nightly Addon backup FAILED" >> /home/cbhiadmin/addon_backups/addon_backup.log 
    fi 

fi 

cp "$site"adata_"$today".tar.gz /home/cbhiadmin/SAN/"$site" 

find ~/SAN/"$site"/*.tar.gz -maxdepth 1 -mtime +60 -exec rm {} + 

내 문제는, 마지막 줄이 루트 크론에서 작동하지 않는다는 것입니다 만 아카이브를 루트로 직접 실행할 때 작동합니다.

무엇이 누락 되었습니까?

답변

1
find ~/SAN/"$site"/*.tar.gz -maxdepth 1 -mtime +60 -exec rm {} + 

"~"은 사용자의 홈 디렉토리를 나타냅니다. 그러나, cron으로 실행할 때, 사용자를 사용하지 않으므로 홈 디렉토리가 사용됩니다. 절대 경로를 참조하도록 변경하십시오.

0

아래의 단계를 수행하고 그것은 당신의 문제를 해결해야하십시오 :

  1. 유형 pwd
  2. pwd 명령의 결과 "~/SAN을 /"대체 cd ~/SAN/
  3. 유형입니다.
관련 문제