私は私のubuntu 16.04にRubyをインストールしています。
$which Ruby
/usr/bin/Ruby
$Ruby -v
Ruby 2.3.0p0 (2015-12-25) [x86_64-linux-gnu]
$gem install bundler
ERROR: While executing gem ... (Gem::FilePermissionError)
You don't have write permissions for the /var/lib/gems/2.3.0 directory.
任意の助けは大歓迎です!
最初にUbuntuによってインストールされたRubyをSudo apt-get remove Ruby
のようなものでアンインストールする必要があります。
それから、ドキュメントに従って rbenv と Ruby-build を使ってRubyを再インストールしてください。
cd $HOME
Sudo apt-get update
Sudo apt-get install git-core curl zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev libcurl4-openssl-dev python-software-properties libffi-dev
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
exec $Shell
git clone https://github.com/rbenv/Ruby-build.git ~/.rbenv/plugins/Ruby-build
echo 'export PATH="$HOME/.rbenv/plugins/Ruby-build/bin:$PATH"' >> ~/.bashrc
exec $Shell
rbenv install 2.3.1
rbenv global 2.3.1
Ruby -v
最後のステップはBundlerをインストールすることです。
gem install bundler
rbenv rehash
それから楽しんでください!
デレク
Rb-env/rvmの代わりにRubyディストリビューションを使用したい場合は、現在のユーザにGEM_HOME
を設定することができます。 your userのためのRuby gemを格納するディレクトリを作成することから始めます。
$ mkdir ~/.Ruby
次に、そのディレクトリをGEM_HOME
に使用し、PATH
変数を更新してRuby gem binディレクトリを含めるようにシェルを更新します。
$ echo 'export GEM_HOME=~/.Ruby' >> ~/.bashrc
$ echo 'export PATH="$PATH:~/.Ruby/bin"' >> ~/.bashrc
$ source ~/.bashrc
(最後の行は現在のシェルに直接設定をロードします。)
これでgem
コマンドを使ってあなたのユーザの下にRuby gemsをインストールできるはずです。私はこれをUbuntu 18.04でRuby 2.5.1で動作させることができました。 Bash以外のシェルを使用している場合は、bashrc
の代わりにそのシェルの起動スクリプトを編集する必要があります。
chown -R
ディレクトリーでvar/lib/gems
を使用して、この例では所有権をユーザー[rubyusername
]に割り当て、gemを使用してインストールおよび開発するユーザーにしてください。
# chown -R rubyusername:rubyusername /var/lib/gems
この再帰的はgemsディレクトリ配下のすべてを変更します。マルチユーザーシステムのセキュリティを強化するために、個々のrubyusernameを指定せずにグループを作成し、そのグループにユーザーを追加することもできます。
他のローカルユーザーをロックアウトする可能性がある所有者を変更するのではなく、または - ある日 - あなた自身のRubyサーバー/デプロイ - 他のユーザーの下で実行している...
私はむしろ、単にその特定のフォルダの権利を…に拡張したいと思います。
cd /var/lib
Sudo chmod -R a+w gems/
(私はあなたのエラーにも遭遇した。だからこれはかなり確認されている。)
(2019年1月)Rbenvスクリプトを使用してRubyをインストールするには、次の手順に従います。
1。まず、パッケージのインデックスを更新し、ソースからRubyをビルドするためのRubyビルドツールに必要なパッケージをインストールします。
Sudo apt-get remove Ruby
Sudo apt update
Sudo apt install git curl libssl-dev libreadline-dev zlib1g-dev autoconf bison build-essential libyaml-dev libreadline-dev libncurses5-dev libffi-dev libgdbm-dev
2。次に、次のcurlコマンドを実行して、rbenvとRuby-buildの両方をインストールします。
curl -sL https://github.com/rbenv/rbenv-installer/raw/master/bin/rbenv-installer | bash -
3。システムパスに$ HOME/.rbenv/binを追加します。
あなたがBashを使っているなら、以下を実行してください:
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
source ~/.bashrc
Zshを使っているのなら:
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(rbenv init -)"' >> ~/.zshrc
source ~/.zshrc
4。最新の安定版のRubyをインストールし、それをデフォルトのバージョンとして設定します。
rbenv install 2.5.1
rbenv global 2.5.1
利用可能なすべてのRubyバージョンを一覧表示するには、次のようにします。
rbenv install -l
5。バージョン番号を印刷して、Rubyが正しくインストールされたことを確認します。
Ruby -v
# Output
Ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-linux]
SOURSE: buntu 18.04にRubyをインストールするには
編集:rubygemsのインストール:
Sudo apt-get install rubygems
上記のderekの答えに基づいて、システムツールはRubyインストールの特定のバージョンまたは場所に依存するかもしれないので、あなた自身の開発作業のためにシステム提供のRubyインスタンスを使用することは一般的に推奨されません。 Mac OS Xの場合はこの回答 と同様に、rbenv( RVM も同様の方法です)のようなものを使用してderekの指示に従うと、自分のRubyインスタンスをインストールできます。
ただし、システムバージョンのRubyをアンインストールする必要はありません。rbenvのインストール手順は、シェルで利用可能なRubyのインスタンスがシステムインスタンスではなくrbenvインスタンスであることを確認するためのメカニズムを提供します。これは
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
derekの答えに並ぶ。