2017-05-12 123 views
0

我有一個詹金斯的作業,將複製到遠程系統的戰爭文件。我使用通過SSH插件發佈來實現這一點。一切正常,戰爭正在複製到遠程系統。複製war文件後,我需要運行遠程系統中的shell腳本。所以通過ssh發佈爲此提供了一個Exec命令。詹金斯發佈通過SSH運行一個shell腳本

sh /home/ubuntu/build/test.sh 

該腳本用於刪除webapps中部署的war目錄,然後將war複製到webapps。

但我面臨權限拒絕這個問題。以下是錯誤我得到

rm: cannot remove ‘/tomcat8/webapps/test/WEB-INF/classes/test.propetiess’: Permission denied 
rm: cannot remove ‘/tomcat8/webapps/test/WEB-INF/classes/query.txt’: Permission denied 

cp: cannot create regular file ‘/tomcat8/webapps/test.war’: Permission denied 

任何幫助,將不勝感激

回答

0
  1. 你在登錄因爲誰擁有權限的用戶?當您使用ssh時,您提供的用戶名和密碼必須有權訪問系統上的文件。

  2. 確保該文件是可執行文件。 sudo chmod 777或任何權限是必要的。這適用於shell腳本和war文件。這很可能是原因。

  3. 如果這兩個不是這種情況,那麼嘗試從終端運行腳本,看看是否存在相同的錯誤。

當您完成這3件事情後,更新您的發現。

執行該命令的用戶可以訪問shell腳本和war。最簡單和不太安全的方法是通過sudo更改權限,然後執行腳本。

+0

什麼是編碼字符? –

+0

日誌顯示就像那樣。我可以從終端執行腳本。感謝命令。我會檢查步驟1和2 – sparrow

+0

是的,請告訴你的發現。 –