レンタルサーバー(coreserver)の更新で環境が変わって、
今まで動いていたrubyが動かなくなりました。
エラー内容は
sh
1/usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/site_ruby/2.3.0/rubygems/core_ext/kern 2el_require.rb:55:in `require': cannot load such file -- nokogiri (LoadError)
rubyのgem(nokogiri)が読めていないのが原因はわかるのですが、
対処がわかりません。
crontab
1 230 4 * * * /bin/sh /virtual/XXXXX/public_html/data/cron_yyyy.sh 3
でシェル内でgemをインストールしている所を環境変数に入れています。
sh
1 2#/bin/sh 3export GEM_HOME=/virtual/XXXXX/public_html/ruby/ 4 5cd /プログラムのあるディレクトリ/ 6 7/usr/local/bin/ruby zzzzz.rb 8
ターミナルならきちんと動き、
更新前はこの記述で問題なく動いていましたので、
わけがわからなくなりました。
envを追加します。
(見ても、違いがないように見える)
新しい方
sh
1XDG_SESSION_ID=c37270 2GEM_HOME=/virtual/username/public_html/ruby/ 3SHELL=/bin/sh 4USER=username 5PATH=/usr/bin:/bin 6PWD=/virtual/username/public_html/xxxxx/ 7SHLVL=3 8HOME=/virtual/username 9LOGNAME=username 10XDG_RUNTIME_DIR=/run/user/10040 11_=/usr/bin/env 12
まだ動いている
古い(まだリニューアルしていない)別のサーバー
sh
1GEM_HOME=/virtual/username/public_html/ruby/ 2SHELL=/bin/sh 3USER=username 4PATH=/usr/bin:/bin 5PWD=/virtual/username 6HOME=/virtual/username 7SHLVL=2 8LOGNAME=username 9_=/usr/bin/env
gemはGEM_HOMEでユーザー領域にインストールしています。
rubyの使うパス関係の環境変数あたりで、
細かく設定してあげればいけそうか気がするのですが、
何がそれにあたるのか知識不足のため、
困っています。
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー