用shell腳本以ftp方式備份的時候,碰到KERBEROS_V4 rejected as an authentication typeshell
出現這個的緣由是shell腳本中直接使用ftp命令,默認的是/usr/kerberos/bin/ftp,這個和PATH環境變量有關oracle
若是使用/usr/bin/ftp就不會出現這個問題!app
#!/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