無法使用 crontab 掛載檔案系統 (sshfs)

無法使用 crontab 掛載檔案系統 (sshfs)

我有 sh 腳本文件,當使用 - 從命令行運行時可以正常工作

./start.sh

它啟動一個 tomcat 伺服器並使用 sshfs 掛載一個驅動器

但當我這樣做時

crontab -e

@reboot /home/start.sh

那麼只有 apache tomcat 啟動,sshfs 不會掛載,start.sh 檔案是 -

/home/tomcat/apache-tomcat-9.0.71/bin/startup.sh
sleep 20s
sshfs -o password_stdin,allow_other [email protected]:/home/hdd/ /home/hdd/ <<< 'password'

這個問題在askubuntu

答案1

我想你會在貼文中找到答案 在 FreeBSD 9.0 上由 Cron 呼叫時安裝 fusion sshfs 失敗:

事實證明 $PATH 環境變數是導致此問題的原因。修改上面的腳本,將 PATH 設定為與 shell 相同,現在它可以正常運作:

 PATH="/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/‌​root/bin"

 export PATH 

我想教訓是永遠不要對最小的 Cron 環境做任何假設。

相關內容