LoginSignup
13
10

More than 5 years have passed since last update.

cronでRVMのRubyが動かない時、まずやること

Last updated at Posted at 2016-01-09

普通に手でruby ナントカって叩いたら動くのにcrontabに書いて動かしたら「そんなgemねぇぞ」みたいなエラーが出てくる。
正確には「あれ?動いてないぞ?」と思ってmail見たらそういうエラーがごっそり溜まってる。

/usr/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- twitter (LoadError)

こういうエラー。

これは、自分で動かすときとcronにやってもらうときでは$PATHとかの環境が違って、なんかRVMのgemのパス?が通ってないことが原因らしい。

2秒で解決

ググるとcrontabに$PATHを追加するとか、それ用のシェルスクリプト書くとかいろいろ出てくるけど、そんなこともあろうかとRVMがそういうのやってくれるコマンドを作ってくれてる。ありがとう!!!

なので、とりあえず最初にこれを試してダメだったらいろいろ試すとよさそう。
$ rvm cron setup
これを打ち込むとrvmがcrontabにもろもろゴニョッと追加してくれて、次から動く。はず。

懸念事項

RVMが今使ってるrubyのバージョンでゴニョッと追加するだけっぽいので、スクリプトごとにバージョン変えたいとか、そういう器用なことはできない。がんばりましょう。

参考

13
10
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
10