はじめに
こんにちは^^
こちらの記事では、Railsのコマンド入力でbundle install
をした場合に、
Errno::EACCES: Permission denied @ rb_sysopen...
Make sure that `gem install mysql2 -v '0.4.10' --source 'https://rubygems.org/'` succeeds before bundling.
などのエラーが出て、上記のgem install mysql2...
を入力し、再度bundle install
をすると、また別のgem installコマンドを入力してくださいと何度も何度も何度も・・・
何度gem installとbundle installをすれば良いんだという。。。
これを一度のbundle install
コマンドで手っ取り早くインストールを可能にする方法をご紹介します。
前提:Mac, rbenvでRailsインストール
原因は、、、?
そもそも一度のbundle installでgemが一気にインストールされないのは、rbenv
の所有者が異なることが原因です。
$ ls -la /Users/ユーザー名/.rbenv/versions/2.6.2
などとコマンドを打ってみる(Macの場合)と所有者がrootになっていると思います。ですので、所有者を現ログインユーザーに変更すれば一気にインストールできるかと思います^^
ls -laコマンドは指定したファイルやフォルダの詳細情報を見ることができるコマンドです。
よく聞くrwx
の権限が見れたり所有者が見れたり、サイズが見れたり作成日が見れたりもします。
コマンド入力
所有者をコマンドによって変更したいと思います。(所有者を変更すると環境によっては不具合が出ることがあるかと思いますので、変更する際はしっかりとご確認ください。)
chownは所有者を変更するコマンドで、-Rは再帰(下の方にある構造にも所有者変更を反映させる)を設定するものになります。
Railsのインストールにrbenvを使用していることが前提となってしまいますが、ここの所有者を変更することが大事になります^^
Ralisをインストールした時のパスは適宜変更していただければと思います。
sudo chown -R ユーザー名 /Users/ユーザー名/.rbenv/versions/2.4.2
終わりに
以上、Railsでbundle installの権限エラーが出た場合の対処法をご紹介しました。
プログラミングを勉強をしているのに、コマンドでつまづくのは嫌、、、なんでここで。。。という風に思うことは多々あります。コマンドラインの知識はいずれ必要になってくるものなので、今は一旦意味わからずコマンドを打っても致し方ないと思いますが、あとでしっかり勉強しましょう!
もちろん業務で意味わからないコマンドを打つのは厳禁です。。。
よくつい打ってしまったというコマンドでたまに聞くのはrm -rf /*
とかrm -rf .
とかですかね、、、