由于第一次碰linux,對其不是很了解,導(dǎo)致這個問題困擾了我近一個月的時間,現(xiàn)在終于解決了,分享給大家。
 
首先,安裝jre,配置java環(huán)境變量
 
(一)   下載jre-6u23-linux-x64.bin

下載地址:http://cds-esd.sun.com/ESD6/JSCDL/jdk/6u23-b05/jre-6u23-linux-x64.bin?AuthParam=1292401739_2abc6c61c57eec5b100fe647086d1f33&TicketId=CJ0nhpzNkjGGwpbkW40LAgA%3D&GroupName=CDS&FilePath=/ESD6/JSCDL/jdk/6u23-b05/jre-6u23-linux-x64.bin&File=jre-6u23-linux-x64.bin

(二)   安裝jre-6u23-linux-x64.bin

      jre-6u23-linux-x64.bin上傳到linux服務(wù)器

1.     在終端上,鍵入:
su

2.     輸入超級用戶口令。

3.     切換到所需的安裝目錄。類型:
cd <
目錄路徑名>
例如,要在 /usr/java/ 目錄中安裝軟件,請鍵入:
cd /usr/java/

關(guān)于超級用戶訪問權(quán)限的說明:要將 JRE 安裝在系統(tǒng)級位置(例如 /usr/local),必須以超級用戶身份登錄,從而獲得必要的權(quán)限。如果您不具有超級用戶訪問權(quán)限,請將 JRE 安裝在您的主目錄中,或者安裝在您具有寫入權(quán)限的子目錄中。

4.     將您下載的文件的權(quán)限更改為可執(zhí)行。類型:
chmod a+x jre-6u23-linux-x64.bin

5.      啟動安裝過程。鍵入:
./ jre-6u23-linux-x64.bin

此時將顯示二進(jìn)制許可協(xié)議。通讀許可協(xié)議。按空格鍵顯示下一頁。讀完許可協(xié)議后,輸入 yes 繼續(xù)安裝(此步驟可能直接跳過)

7.     JRE 安裝在其自身的目錄中。在本例中,它將安裝在 /usr/java/ jre1.6.0_23目錄中。當(dāng)安裝完成時,您將看到 Done(完成)字樣。

 (三)   配置java環(huán)境變量

1.     命令行鍵入“cd /etc進(jìn)入etc目錄

2.     命令行鍵入“vi profile打開profile文件

3.     敲擊鍵盤ctrl+F到文件末尾

4.     在末尾處,即第一個~的地方,敲擊鍵盤將以下內(nèi)容輸入到文件

JAVA_HOME=/usr/java/jre1.6.0_23

PATH=$JAVA_HOME/bin:$PATH

CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export JAVA_HOME

export PATH

export CLASSPATH

     5.     鍵盤敲擊exc,命令行鍵入“:wq”,保存文件;

     6.     重新登錄linux,在命令行鍵入“java”,如果出現(xiàn)幫助信息則表示配置成功。


然后,部署kettle

       
1.         pdi-ce-4.1.0-stable.zip上傳到linux服務(wù)器

2.         使用unzip命令解壓pdi-ce-4.1.0-stable.zip
unzip pdi-ce-4.1.0-stable.zip -d "/mnt/kettle"

3.         賦予解壓目錄下.sh文件的執(zhí)行權(quán)力

chmod +x *.sh

4.         進(jìn)入解壓目錄,鍵入“./kitchen.sh”回車,如果有幫助信息則表示kettle環(huán)境部署成功


※(重點)接著,編寫執(zhí)行kettle任務(wù)的shell腳本

創(chuàng)建test.sh,將以下內(nèi)容復(fù)制粘貼到里面,然后鍵入“chmod +x /mnt/kettle/*.sh”,賦予test.sh執(zhí)行權(quán)限。

export JAVA_HOME=/usr/java/jre1.6.0_23
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
/mnt/kettle/data-integration/kitchen.sh -file=/mnt/kettle/test.kjb > /mnt/kettle/display.txt


說明:
前3行,設(shè)置java環(huán)境變量的語句必不可少,
因為crond是個守護(hù)進(jìn)程,它不歸屬于任何用戶,雖然之前以root身份配置了java的環(huán)境變量,但是crond一樣找不到j(luò)ava命令,
所以,當(dāng)crond執(zhí)行kettle任務(wù)時,需要動態(tài)設(shè)置java環(huán)境變量,crond才能找到j(luò)ava命令。


最后,使用crontab命令添加定時任務(wù)

       1.在終端上,鍵入“crontab -e”,進(jìn)入定時任務(wù)文件
       2.鍵入“a”,對文件進(jìn)行編輯
          輸入如下內(nèi)容: 
23 11 10 02 * /mnt/kettle/test.sh
        其中 23為分鐘,11為小時,10為日,02為月,*為星期幾,crontab命令的使用這里不再贅述。
       3.鍵盤敲擊exc,終端鍵入“:wq”,保存文件
       4.重啟crond服務(wù)
          鍵入“cd /etc/init.d”,進(jìn)入該目錄
          鍵入“./crond restart”,重啟crond服務(wù)
      5.等待執(zhí)行結(jié)果
      6.執(zhí)行成功,oh..nice!

what the hell is going on ??!!