Crontab 에서 실행시 command not found 오류 발생

안녕하세요…

사실 제가 지금 올리고자 하는 문제는 우분투에서의 문제가 아닙니다…

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

사실 이 소스도 이 곳에서 답변받아 수정되어진 소스네요.

긴글 읽어주셔서 감사합니다.

centos에서 시스템 path와 유저 path 경로가 다를 경우 그런일이 일어 날수있다고 합니다.

양쪽 path를 같게 해보세요?

유저 path 경로라 하심은 시스템에 등록되어있는
모든 유저의 .bash_profile 을 말씀하시는건지 모르겠습니다.

그런데 crontab을 실행하는 계정은 root 인 걸로 알고있는데 맞는지 모르겠습니다.
하지만 우선 실마리는 잡고 봐야겠습니다. :) han9k 님 답변감사합니다.