Kami baru saja memasang server baru kami dan kami menjalankan CentOS pada semuanya. Setelah berhasil menginstal Ruby Enterprise Edition, sekarang saya ingin menambahkan /usr/lib/ruby-enterprise/bin
direktori REE / bin (terletak di ) untuk menjadikannya interpreter Ruby default di server.
Saya telah mencoba yang berikut ini, yang hanya menambahkannya ke sesi shell saat ini:
export PATH=/usr/lib/ruby-enterprise/bin:$PATH
Apa yang akan menjadi pendekatan yang benar untuk menambahkan direktori ini secara permanen ke $ PATH untuk semua pengguna . Saya saat ini login sebagai root.
Terima kasih sebelumnya!
~/.profile
adalah pilihan lain yang valid jugaSetelah mengikuti saran fmonk saya check out
/etc/bashrc
, di mana saya perhatikan itu mengatakan bahwa "Hal-hal lingkungan masuk / etc / profile." Saya melanjutkan untuk melihat/etc/profile
, saya melihat ini:Untuk mengatasi masalah saya, saya cukup menambahkan di
pathmunge /usr/lib/ruby-enterprise/bin
bawah pernyataan if. Ini menyelesaikan masalah saya.sumber
"$EUID" = "0"
artinya dalam konteks ini?/etc/profile.d/
folder dan Anda akan melihatnya. Juga, seperti katanya, pembaruan sistem dapat membatalkan solusi Anda.Oleh karena itu saya tidak akan meletakkan variabel lingkungan di bashrc, karena tidak hanya bertentangan dengan konvensi umum, tetapi Anda juga akan kehilangan variabel bashrc Anda ketika memanggil terminal dari lingkungan Desktop grafis.
Pada Redhat di
/etc/profile
saya menemukan komentar ini:Jadi jika Anda ingin mengatur variabel lingkungan berdasarkan pengguna, lakukan di file .bash_profile pengguna.
Menuju ke
.bash_profile
Saya membaca:Kesimpulan
Jika Anda hanya ingin root untuk melihat program yang berada, misalnya di /
sbin
saya akan menambahkan path ke.bash_profile
file root . Tetapi jika Anda ingin setiap pengguna untuk melihat program root apa yang diinstal pada kotak Anda, saya akan dimasukkan/sbin
ke dalam/etc/.profile
. Sekarang setiap pengguna dapat menggunakan penyelesaian tab untuk mencari program khusus root dan meningkatkan hak jika perlu.Kasus Khusus: SSH
Ketika ssh dimulai dengan baris perintah, shell login interaktif dimulai. Tetapi dalam hal
/etc/profile
ini tidak dibaca. Ketika saya mendefinisikan variabel lingkungan di.bash_profile
file setiap pengguna itu bekerja dengan ssh.sumber
SORRY salah mengartikan pertanyaan asnwer berikut untuk profil PENGGUNA meninggalkannya seandainya itu membantu seseorang
ubah .bash_profile
lalu di suatu tempat dalam file tambahkan / modifikasi jalur Anda dipisahkan oleh:
lalu muat ulang profil Anda
atau logout dan login lagi
jika Anda memeriksa PATH itu harus menyertakan jalur Anda yang baru ditambahkan
sumber
Anda dapat mengatur variabel lingkungan dalam file .rc; untuk bash shells (saya percaya yang paling umum, dan default di CentOS) setiap pengguna memiliki file bernama .bashrc di direktori rumahnya.
Tambahkan perintah PATH = / usr / lib / ruby-enterprise / bin: $ PATH ke file ini untuk mengaturnya untuk setiap pengguna tertentu.
Untuk mengaturnya untuk semua pengguna (seperti yang Anda sebutkan), ubah di / etc / bashrc (.bashrc default di direktori home masing-masing pengguna harus sumber file ini, tetapi Anda harus memeriksa dua kali itu).
sumber