科学/IT

Rails cが実行不可能、Permission denied @ rb_sysopen – /Users/…の対応策

投稿日:2017年8月16日 更新日:

 

rails console実施で Could not find thor-0.19.4 in any of the sourcesというエラーが発生しました!

 

今日、会社に行って、Macのマシーンでターミナルを起動して、ウェッブアプリケーションのフォルダーにCDコマンドを使って移動し、 rails c のコマンドを入力し実行しまた。すると thor-0.19.4 が見つからないというエラーが発生したので、このエラーをどうやて解決したか書いていきますね。

 

Advertisements

スポンサードリンク.(Sponsored Link)

gem install bundler で Permission denied @ rb_sysopen …

それで、エラーメッセージの中に、「’gem install bundler’コマンドを実行して、Bundlerの最新バージョンにアップグレードしてください。」というメッセージが表示されたのです。

そして、さらに、Permission denied @ rb_sysopen – …というメッセージが表示されています。

 

原因はsudoにあった!

まず最初に私のパソコンの環境ですがMac Sierraを使用。

エラーの内容は以下のようものです。

▼ターミナルのコピー

これは、rails console (rails c)で、railsのコンソールを起動しようとした時に、
Could not find thor-0.19.4 in any of the sources

というエラーメッセージが出たのです。

このようなエラーについて、何か参考になる情報がインターネットに出ていないかと思い検索してみました。

すると「Permission denied issues on updating gems」の英文の記事がそれです。

 

この情報からわかるのは、本当ならば、次のディレクトリ「/Users/(ユーザ名)/.rbenv/versions」配下にあるものは全てユーザーアカウントの権限になるべきなのですが、そのディレクトリの中のある幾つかのファイルに書き込む権限がないというのが問題でした。

その原因は、”gem install”のコマンドを実行したときに、 “sudo gem install”というふうに “sudo”をつけてはいけない時に、”sudo” を付けて このコマンドを実行してしまったからでした。

この解決策は、〈sudo chown -R (ユーザ名):staff /Users/(ユーザ名)/.rbenv〉を実行して、上に出たディレクトリの所有者をユーザー権限に変える方法です。

そして、rbenv-managed Rubyのバージョンを使用している場合には絶対にsudo gem installを使ってはいけません。

 

つまり、〈/Users/ユーザ名/.rbenv/version〉のフォルダから下の階層に対して、所有者をユーザに変更すると解決できる事になります。

 

Sponsored Link

 

 

Chown コマンド

 構文

chownコマンドの実行

そして、このコマンドを実行しました。

うまく行ったようです。

最後に、ターミナルを開き、”cd “コマンドの後に、上のディレクトリー〈/Users/ユーザ名/.rbenv/version〉を入力して移動し、lsコマンドでアクセス権を調べてみました。

ls -ldは、隠しファイルを参照することはできませんので、ls -laを使い、隠しファイルの権限も確認したほうが良いです。

すると、versionsというフォルダー名のところをみると権限が「staff」に変更されているので大丈夫ですね。

試しにrails c を実行してみましたが、エラーが再び出て(▼)

Could not find thor-0.19.4 in any of the sources
Run ‘bundle install’ to install missing gems.

と書いてあります。
これは、「thor-0.19.4がソースのどこにも見つかりませんでした。
‘bundle install’を実行して、不足しているgemsをインストールしてください。」という意味になります。(下の図が、その時のターミナルです)

そこで、もう一度 “bundle install” を実行しました。

すると、下の図の下から三行目で、”rails c” をもう一度実行してみて
その結果、一番下の行で、コンソールモードになりました。

ということで問題が解決出来ました。

ふー、疲れますね・・・でも、気分は爽快です!

スポンサード・リンク (Sponsored Link)....

-科学/IT

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

Windows10のCortanaコルタナの安全な使い方や危険性は?

皆さん、こんにちは。 Windows10は、セキュリティー設定で個人情報が、 自動的にマイクロソフト社に送信されているといわれています。 それには、コルタナを利用する場合においても、 個人情報が送信さ …

GoogleのAI人工知能が子AIを作成に成功!人類作より優秀?

皆さん、こんにちは。 人工知能(AI)が開発され、その研究がどんどん進んでいますが、 今まで予測されていた2045年に技術的特異点が来る という予測を大きく打ち破る開発の成果・・・ AIが自分より優れ …

Skype for businessの削除方法は?自動起動しなくする?

★皆さんこんにちは。Windows10をインストールして一番うっとうしいことの一つは、Skype for Businessです。これが毎回、windowsを立ち上げると画面に出てきて、サインインできな …

技術的特異点で社会構造が変わる?楽園主義は天才が実現する?Part3

この記事は、 人工知能で仕事がなくなる?いつ0に?技術的特異点の影響は?Part2 の続きになります。まだ、前の記事を読んでない方は、 そちらから先に読んでくださいね。   この記事では、 …

Railsでアプリ作成してHerokuにアップしてブラウザで表示するとエラー

  今回は、Railsでアプリを作成し、 それを、Herokuにアップロードしたのは うまく行ったようでした。 エラーが出ないので、うまく行ったと思ったのですが、 その後、Heorkuのアプ …

スポンサードリンク