少し掘り下げましたが、これを理解したので、他の誰かが同様の問題に遭遇した場合に備えて、見つけたものを共有したいと思いました。
その答えは、本番サーバーのセットアップの2つの側面にあります。
実稼働サーバー(優れたシステム)でPhusion Passengerを使用しており、Passengerの構成の一部として、コンソールからアクセスしていたユーザーとは異なるユーザーで実行されます。通常、これは2人のユーザー(サーバーユーザーとコンソールユーザー)が実質的に同じ権限を持っているため、問題にはなりません。
本番サーバーのセットアップ中にミスが発生し、gemの1つ(私の場合はかなり重要なもの- )が間違った場所i18nにインストールされました。基本的に、それがインストールされたとき、コマンドの開始時に見落とされました。したがって、この1つのgemは、システムgemsフォルダーではなく、コンソールユーザーのホームフォルダーにインストールされました。sudo
通常、この特定の状況は、すべてのアプリケーションが正常に実行されるため、問題にはなりません。それはあなたがあなたに悲しみを与えるその宝石へのアクセスを必要とするシェルコマンドを実行しようとするときだけです。
ちなみに、レーキタスクの実行にアクセスしようとしても、ログに例外は発生しませんでした。それは私に通常の500内部サーバーエラーを与えましたが、ログには何も書き込まれませんでした(これはちょっと奇妙なことに私を襲います)
このようなものをチェックする必要がある場合、私が最終的に理解した方法は、サーバーユーザーとしてコンソールにログインしてから、シェルコマンドを実行することでした。するとすぐに、必要な宝石が見つからないというエラーが表示されました。次に、コマンドを使用してgemの場所を確認gem whichし、間違った場所にインストールされていることを確認しました。
誰かがこれを助けてくれて、私がこれを理解しようとして数日を費やしたので、時間を節約できることを願っています。