由于第一次碰linux,對其不是很了解,導致這個問題困擾了我近一個月的時間,現在終于解決了,分享給大家。
首先,安裝jre,配置java環境變量
(一) 下載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服務器
1. 在終端上,鍵入:
su
2. 輸入超級用戶口令。
3. 切換到所需的安裝目錄。類型:
cd <目錄路徑名>
例如,要在 /usr/java/ 目錄中安裝軟件,請鍵入:
cd /usr/java/
關于超級用戶訪問權限的說明:要將 JRE 安裝在系統級位置(例如 /usr/local),必須以超級用戶身份登錄,從而獲得必要的權限。如果您不具有超級用戶訪問權限,請將 JRE 安裝在您的主目錄中,或者安裝在您具有寫入權限的子目錄中。
4. 將您下載的文件的權限更改為可執行。類型:
chmod a+x jre-6u23-linux-x64.bin
5. 啟動安裝過程。鍵入:
./ jre-6u23-linux-x64.bin
此時將顯示二進制許可協議。通讀許可協議。按空格鍵顯示下一頁。讀完許可協議后,輸入 yes 繼續安裝(此步驟可能直接跳過)。
7. JRE 安裝在其自身的目錄中。在本例中,它將安裝在 /usr/java/ jre1.6.0_23目錄中。當安裝完成時,您將看到 Done(完成)字樣。
(三) 配置java環境變量
1. 命令行鍵入“cd /etc”進入etc目錄
2. 命令行鍵入“vi profile”打開profile文件
3. 敲擊鍵盤ctrl+F到文件末尾
4. 在末尾處,即第一個~的地方,敲擊鍵盤將以下內容輸入到文件
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”,如果出現幫助信息則表示配置成功。
然后,部署kettle
1. 將pdi-ce-4.1.0-stable.zip上傳到linux服務器
2. 使用unzip命令解壓pdi-ce-4.1.0-stable.zip
unzip pdi-ce-4.1.0-stable.zip -d "/mnt/kettle"
3. 賦予解壓目錄下.sh文件的執行權力
chmod +x *.sh
4. 進入解壓目錄,鍵入“./kitchen.sh”回車,如果有幫助信息則表示kettle環境部署成功
※(重點)接著,編寫執行kettle任務的shell腳本
創建test.sh,將以下內容復制粘貼到里面,然后鍵入“chmod +x /mnt/kettle/*.sh”,賦予test.sh執行權限。
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行,設置java環境變量的語句必不可少,
因為crond是個守護進程,它不歸屬于任何用戶,雖然之前以root身份配置了java的環境變量,但是crond一樣找不到java命令,
所以,當crond執行kettle任務時,需要動態設置java環境變量,crond才能找到java命令。
最后,使用crontab命令添加定時任務
1.在終端上,鍵入“crontab -e”,進入定時任務文件
2.鍵入“a”,對文件進行編輯
輸入如下內容:
23 11 10 02 * /mnt/kettle/test.sh
其中 23為分鐘,11為小時,10為日,02為月,*為星期幾,crontab命令的使用這里不再贅述。
3.鍵盤敲擊exc,終端鍵入“:wq”,保存文件
4.重啟crond服務
鍵入“cd /etc/init.d”,進入該目錄
鍵入“./crond restart”,重啟crond服務
5.等待執行結果
6.執行成功,oh..nice!
what the hell is going on ??!!
