ローカルサーバ(ubuntu)では、私はrubyで書かれたfoodsoftプログラムをインストールしました。それはまた、バンドラ、mysqlを使用しています。cronjobは正しくスクリプトを実行しません
#!/bin/sh
export DISPLAY=:0
export LANG=de_DE.utf8
ip_adr=$(/bin/hostname -I)
if [ $(pidof ruby) ]
then
echo "online"
else
echo "offline"
cd /home/jondal/foodsoft
RAILS_ENV=production bundle exec rails s -b $ip_adr
fi
を私はシェルでスクリプトを実行すると、すべての:それは実行されない場合 foodsoftはfoodsoft開始し、私もshスクリプトをプログラムしている
RAILS_ENV=production bundle exec rails s -b 192.168.0.15
コマンドで起動することができます正常に動作します。しかし、私のcronjob(crontabにリストされている)は完全にスクリプトを実行しません。これは、次のtxtファイルを生成します。
offline
bundler: command not found: rails
Install missing gem executables with `bundle install`
私は接頭辞のenv -iとシェルにshスクリプトを起動した場合、私は、次を得る:
オフライン は/ usr/local/binに/バンドル:23:
load': cannot load such file -- /usr/share/rubygems-integration/1.9.1/gems/bundler-1.3.5/bin/bundle (LoadError) from /usr/local/bin/bundle:23:in
'
私は何ができるのですか?
rvmを使用していますか? crontabを使ってrvmをうまく動かすには、いくつかの追加ステップが必要になるかもしれません。 –
'cron'ユーザは'/home/jondal/foodsoft'ディレクトリにアクセス権を持っていますか?具体的には、特に 'bin /'の中で権限を正しく実行していますか? –