Saya telah menginstal ruby di ubuntu 16.04 saya.
$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.
Bantuan apa pun akan sangat dihargai!
rubygems
gem-bundler
derek
sumber
sumber
Jawaban:
Pertama-tama Anda harus menghapus ruby yang diinstal oleh Ubuntu dengan sesuatu seperti
sudo apt-get remove ruby
.Kemudian instal ulang ruby menggunakan rbenv dan ruby-build sesuai dengan dokumen mereka:
Langkah terakhir adalah menginstal Bundler:
Kemudian nikmatilah!
Derek
sumber
vim-gnome
misalnya). Saya kira saya lebih suka mengetahui mengapa di tempat pertama itu perlu menulis/var/lib/...
untuk instalasi pengguna ... Apakah saya melakukannyasudo gem install
ketika tidak diperlukan?Ctrl+Alt+F1
dan jalankan perintah berikut (uninstal dan instal Cinnamon lagi):sudo apt purge cinnamon && sudo apt install cinnamon
rbenv install -l
untuk daftar semua versi yang tersedia lalurbenv install 2.5.1
untuk versi 2.5.1 atau apa pun yang Anda inginkan.Jika Anda ingin menggunakan Ruby distribusi daripada rb-env / rvm, Anda dapat mengatur a
GEM_HOME
untuk pengguna Anda saat ini. Mulailah dengan membuat direktori untuk menyimpan permata Ruby untuk pengguna Anda :Kemudian perbarui shell Anda untuk menggunakan direktori itu
GEM_HOME
dan untuk memperbaruiPATH
variabel Anda agar menyertakan direktori bin permata Ruby.(Baris terakhir itu akan memuat ulang variabel lingkungan di shell Anda saat ini.)
Sekarang Anda harus dapat menginstal permata Ruby di bawah pengguna Anda menggunakan
gem
perintah. Saya bisa membuatnya berfungsi dengan Ruby 2.5.1 di bawah Ubuntu 18.04. Jika Anda menggunakan shell yang bukan Bash, Anda perlu mengedit skrip startup untuk shell tersebut, bukanbashrc
.sumber
(Januari 2019) Untuk menginstal Ruby menggunakan skrip Rbenv, ikuti langkah-langkah berikut:
1. Pertama, perbarui indeks paket dan instal paket yang diperlukan untuk alat ruby-build untuk membangun Ruby dari sumber:
2. Selanjutnya, jalankan perintah curl berikut untuk menginstal rbenv dan ruby-build:
3. Tambahkan $ HOME / .rbenv / bin ke PATH sistem.
Jika Anda menggunakan Bash, jalankan:
Jika Anda menggunakan Zsh run:
4. Instal Ruby versi stabil terbaru dan setel sebagai versi default dengan:
5. Pastikan Ruby telah diinstal dengan benar dengan mencetak nomor versi:
SUMBER: Cara Menginstal Ruby di Ubuntu 18.04
EDIT: Instal rubygems:
sumber
.zshrc
perubahan yang saya lakukan dengan tangan) dan itu bekerja dengan sempurna. Dengan cara yang sama Anda menambahkan cara menginstalrubygems
, saya sarankan mungkin menambahkan bagaimana kemudian memperbarui versi ruby yang diinstal (aku kira kamu hanya menjalankanrbenv install
danrbenv global
perintah lagi dan mungkinrbenv uninstall
untuk memangkas versi usang)Daripada mengganti pemilik, yang mungkin mengunci pengguna lokal lain, atau –suatu hari– server ruby Anda / hal-hal penerapan ... berjalan di bawah pengguna yang berbeda ...
Saya lebih suka memperluas hak folder tertentu itu ke ... yah, semua orang:
(Saya juga mengalami kesalahan Anda. Jadi ini sudah diverifikasi dengan adil.)
sumber
Coba gunakan
chown -R
divar/lib/gems
direktori, tetapkan kepemilikan kepada pengguna [rubyusername
] dalam contoh ini, pengguna yang akan menginstal dan mengembangkan dengan permata.Ini secara rekursif mengubah semua yang ada di bawah direktori permata . Untuk keamanan ekstra pada sistem multi-pengguna, Anda juga dapat membuat grup, daripada menggunakan nama pengguna rubi individual, dan menambahkan pengguna ke grup itu.
sumber
Berdasarkan jawaban derek di atas, umumnya tidak disarankan untuk menggunakan instance Ruby yang disediakan sistem untuk pekerjaan pengembangan Anda sendiri, karena alat sistem mungkin bergantung pada versi atau lokasi tertentu dari instalasi Ruby. Mirip dengan jawaban untuk Mac OSX ini , Anda akan ingin mengikuti petunjuk derek tentang menggunakan sesuatu seperti rbenv ( RVM adalah alternatif serupa) untuk menginstal instance Ruby Anda sendiri.
Namun, tidak perlu menghapus versi sistem Ruby, petunjuk penginstalan rbenv menyediakan mekanisme untuk memastikan bahwa instance Ruby yang tersedia di shell Anda adalah instance rbenv, bukan instance sistem. Ini adalah
baris dalam jawaban derek.
sumber
Saya mengalami kesalahan yang sama di GitHub Actions. Menambahkan
sudo
memecahkan masalah.sumber
Memasang ulang Kompas berhasil untuk saya .. Ini ajaib!
sumber
Ubuntu 20.04:
Opsi 1 - siapkan direktori instalasi permata untuk akun pengguna Anda
Untuk bash (untuk zsh,
.zshrc
tentu saja kami akan menggunakan )Opsi 2 - gunakan snap
Copot
ruby-full
pemasangan apt-version ( ) dan pasang kembali dengansnap
sumber