用shell脚本以ftp方式备份的时候,碰到KERBEROS_V4 rejected as an authentication type
出现这个的原因是shell脚本中直接使用ftp命令,默认的是/usr/kerberos/bin/ftp,这个和PATH环境变量有关
如果使用/usr/bin/ftp就不会出现这个问题!
#!/bin/sh
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export PATH=$PATH:$ORACLE_HOME/bin:.
export ORACLE_SID=TEST
export NLS_LANG='SIMPLIFIED CHINESE_CHINA.AL32UTF8'
#export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
timedate=$(date +%Y%m%d%H%M%S)
bakdbname=123
bakdbpasswd=123
dumpdbname=123
bakdbhome=/u01/back
expdp $bakdbname/$bakdbpasswd directory=backDir dumpfile=$dumpdbname'_'$timedate.dmp logfile=$dumpdbname'_'$timedate.log
cd /u01
zip -r backup/$dumpdbname'_'$timedate.zip backup/$dumpdbname'_'$timedate.dmp backup/$dumpdbname'_'$timedate.log
find $bakdbhome/123*.log -mtime +3 -exec rm -rf {} \;
find $bakdbhome/123*.zip -mtime +10 -exec rm -rf {} \;
find $bakdbhome/123*.dmp -mtime +3 -exec rm -rf {} \;
cd $bakdbhome
/usr/bin/ftp -v -n 192.168.10.3 >>${dumpdbname}_${timedate}.log << EOF
user ji j123
binary
hash
put ${dumpdbname}_${timedate}.zip ${dumpdbname}_${timedate}.zip
bye
EOF