ruby-on-rails - rake 任务中使用错误的 ruby​​ 路径作为 cron 执行,无论何时

标签 ruby-on-rails linux rubygems cron whenever

我正在尝试使用 whenever gem 来执行几个 rake 任务。它似乎正确设置了 cron 任务 - 这里的信息来自生成的邮件输出。以下是所执行命令的示例:

/bin/bash -l -c 'cd /path/to/deployed/app && RAILS_ENV=production

rake 干净:我的:任务--沉默'

下面是一些环境变量:

X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <PATH=/usr/bin:/bin>

下面是错误:

/bin/bash: /usr/bin/rake: /usr/bin/ruby: bad interpreter: No such file or directory

当我登录时,我可以从同一目录运行这些 rake 任务,但是当我运行时

which ruby

我明白了

/usr/local/bin/ruby

/usr/bin 中确实有一个“rake”,但正在运行

/usr/bin/rake -T

给我同样的错误:

-bash: /usr/bin/rake: /usr/bin/ruby: bad interpreter: No such file or directory

解决此问题的最佳方法是什么?

最佳答案

/usr/local/bin/在你的路径中吗?当你运行 which ruby​​ 你得到/usr/local/bin/ruby 但是当你运行 rake 它正在寻找/usr/bin/ruby

或者您可以像这样对 ruby​​ 进行符号链接(symbolic link):

sudo ln -s/usr/local/bin/ruby/usr/bin/.

关于ruby-on-rails - rake 任务中使用错误的 ruby​​ 路径作为 cron 执行,无论何时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4432185/

相关文章:

ruby-on-rails - 将 Rails API 和 Rails 应用程序分开是否有意义?

ruby-on-rails - 无法弄清楚 Rails_Admin 中的关联

ruby - 使用 Sinatra 时如何从 gem 导入 rake 任务?

ruby - 以编程方式将 VPC 节点添加到 ELB

ruby-on-rails - 菲律宾马尼拉使用什么时区

ruby-on-rails - rails : remove decimal from number_to_currency

linux - 解析日志并打印 csv 文件中的某些字段

linux - 安装 J 后,我收到几条有关 DBusMenuExporterPrivate 的错误消息

c - 反调试 : gdb does not write 0xcc byte for breakpoints. 知道为什么吗?

ruby - 没有安装 jekyll-paginate 或其依赖项之一