AIX下crontab正常執行使用

germany006發表於2015-08-05



有些時候,寫好的 shell 指令碼手工執行很正常,但一旦把其配置在 crontab 上排程就會出現這樣或那樣的問題。本人就遇到到如下幾種情況。

1 、在呼叫 oracle sqlplus sqlldr 等命令工具時必須寫出其全路徑才能在 crontab 中執行成功,否則,雖然手動執行很正常,但一配到 crontab 上就出現異常。

2 、手動執行 shell 指令碼時,可以用 sh 命令;但在 cron 中一定不能用 sh 執行命令,而要用直接的列出 shell 指令碼檔案的方式順序執行。

3 、在 crontab 呼叫時,如果有用到資料庫,最好把資料庫的相關環境變數等列寫出來。

4 、要在 crontab 裡排程, shell 指令碼中引用到的檔案最好都寫絕對路徑。

對於 crontab 排程而出現的問題的查詢, AIX 的系統郵件,很是一個突破口。根據郵件中的內容,一步步對所排程的 shell 進行問題的查詢及解決。

注意:
如果是遇到資料庫的指令碼,一定要注意環境變數,例如
PATH=$PATH:$HOME/bin


export PATH
export TMP=/tmp
export TMPDIR=/tmp
export ORACLE_BASE=/oracle/app
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_SID=racdb1
export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH
export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"





檢查crond程式是否正常

/etc/init.d/crond status

/etc/init.d/crond start

service rsyslog status

ps -elf|grep crond




來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28371090/viewspace-1762173/,如需轉載,請註明出處,否則將追究法律責任。

相關文章