안녕하세요…
사실 제가 지금 올리고자 하는 문제는 우분투에서의 문제가 아닙니다…
centos 에서의 문제입니다… 똑같은 내용이 우분투 운영체제에서는 잘 실행이 되고있는데요.
운영하는 서버중 1대만이 centos 인데… 여기서 오류가 발생해버렸습니다.
ftp 로 파일 전송하는 sh 입니다. 쉘을 그냥 sh xxx.sh 로 실행하면 결과가 올바릅니다.
하지만 crontab에 등록해서 실행하게 되면 ftp: command not found 오류가 발생합니다.
그래서 path 쪽을 봤는데 별 이상이 없습니다.
이상하게도 which ftp 명령 실행 시
/usr/kerberos/bin/ftp 이런 경로가 뜹니다.
하지만 echo $PATH 명령으로 PATH 경로를 보면
/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/sbin:/sbin:/bin:/usr/bin/:usr/local/bin:/usr/X11R6/bin
로 경로가 PATH에 등록되어 있습니다.
쉘은 root 권한으로 만들었습니다.
혹시나 해서 쉘 내용 첨부합니다.
#!/bin/sh
REMOTE_DIR=/DB_Backup/aa
LOCAL_FILES=bak_mysql_$(date +%Y%m%d)/*
SOURCE_DIR=/home/bb/aa
MKDIR=bak_mysql_$(date +%Y%m%d)
HOST=
USER=
PASS=
cd /usr/kerberos/bin
ftp -v -n <<EOF_FTP_CMD
open $HOST
user $USER $PASS $
binary
prompt off
lcd $SOURCE_DIR
cd $REMOTE_DIR
mkdir $MKDIR
mput $LOCAL_FILES
$@
quit
EOF_FTP_CMD
cd $SOURCE_DIR
사실 이 소스도 이 곳에서 답변받아 수정되어진 소스네요.
긴글 읽어주셔서 감사합니다.