Yanıtlar:
Çevre değişkenleri hakkındaki topluluk wiki sayfasını çözmenize yardımcı olacağını düşünüyorum
Sagarchalise'nin cevabına eklemek için, bağlantının ayarlar için uygun yerler olarak önerdiği şeyleri özetleyebilirim.
/etc/environment
/etc/profile
veya/etc/bash.bashrc
Sayfadan:
/etc/environment
[...] özellikle sistem çapında ortam değişken ayarları içindir. Bir komut dosyası değil, her satırda bir tane olmak üzere atama ifadelerinden oluşur. Özellikle, bu dosya sistem genelindeki yerel ayarları ve yol ayarlarını saklar.
Kullanımı /etc/profile
çok Unix-y bir yol, ancak işlevselliği Ubuntu altında büyük ölçüde azalır. Yalnızca /etc/bash.bashrc
girişleri işaret etmek ve toplamak için vardır /etc/profile.d
.
Benim sistemimde profile.d'deki tek ilginç giriş girişi /etc/profile.d/bash_completion.sh
.
Ubuntu sayfasının önceki bir sürümü önerilir ~/.pam_environment
, ancak sayfa şu anda işe yaramazsa kullanmanız gerektiğini önerir.
~/.profile
- Bu muhtemelen ortam değişken atamalarını yerleştirmek için en iyi dosyadır, çünkü başlangıç işlemi masaüstü oturumu sırasında DisplayManager tarafından ve metin konsolundan oturum açtığında oturum açma kabuğu tarafından otomatik olarak yürütüldüğü için en iyi dosyadır.
~/.bash_profile
veya ~./bash_login
- Bunlardan biri varsa, bash ~/.profile
bir giriş kabuğu olarak başlatıldığı zaman bash onu çalıştırır . Bash tercih ~/.bash_profile
edecek ~/.bash_login
. [...] Bu dosyalar varsayılan olarak grafiksel bir oturumu etkilemeyecek. "
~/.bashrc
- "... değişkenleri ayarlamak için en kolay yer olabilir". /etc/environment
ne zaman ve ne zaman okudunuz ? Kullanırken bile, cron ile çalışmak gibi görünmüyorSHELL=/bin/bash
/etc/environment
ister JAVA_HOME="/opt/java"
ve ANT_HOME="/opt/ant"
nasıl yapılacağını
Sende:
/ etc / profile: Bourne kabuğu (sh (1)) ve Bourne uyumlu kabukları (bash (1), ksh (1), ash (1), ...) için sistem genelinde .profile dosyası.
Lucid ve Maverick’in içinde olan
/etc/profile.d/*.sh
varsa ve kullanıcının kabuğu bash ise:
/etc/bash.bashrc
Kullanıcı ortamı için, kabuğa özgü ve "giriş kabuğu" olarak kabul edilip edilmediği konusunda kafa karıştırıcı bir dizi vardır. Eğer kabuk bash ise:
~/.bash_profile
The personal initialization file, executed for login shells
~/.bashrc
The individual per-interactive-shell startup file
sh / dash için:
$HOME/.profile
zsh için, ben bile denemek için gitmiyorum bu anlam vermeye .
Https://help.ubuntu.com/community/EnvironmentVariables adresinde önerildiği gibi :
Tüm kullanıcıları etkilemek isteyen küresel ortam değişkenleri girmeli /etc/environment
.
Kullanıcıya özel ortam değişkenleri ayarlanmalıdır ~/.pam_environment
.
Ubuntu'da ortam değişkenlerini ayarlamak için profil ve rc dosyalarından kaçının. Bana değerlerinden daha fazla baş ağrısına neden oldular.
Bu, söylenenden daha kolay ancak;
Benim için var olan konfigürasyon boşluğuyla karşılaşmanız mümkündür. Aşağıdaki şifreli ana sayfa için geçici çözümü inceleyin.
~/.pam_environment
:PATH DEFAULT=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:${HOME}/bin
IDEA_JDK DEFAULT=${HOME}/Applications/jdk
Neden çirkin statik yol? ${PATH}
benim için işe yaramazdı. Girişimi birkaç kez buralarda çalışmayı denedim, ben de varsayılanların çirkin statik kopyasını yapıyorum :)
Ubuntu'da Precise 12.04 Beta 2 sürümüne kadar olan sürümleri içerir, şifreli bir giriş dizini kullanıyorsanız /etc/pam.d/common-session
, yüklemesini sağlamak için değiştirmeniz gerekecektir ~/.pam_environment
. Bu çözüm görünüşte daha önceki sürümlerde işe yarar, ancak test etmedim.
Bu şifreli ev dizinleri ile ilgili bir sorun gibi görünüyor. ekledim
oturum gerekli pam_env.so
/etc/pam.d/common-session'ın sonunda ve şimdi ~ / .pam_environment okunur. Şifrelenmiş ev dizinleri olmayan başka bir sistemde (ayrıca 10.04), etrafta çalışmak gerekli değildir. Belki de benim durumumda sistem şifresini çözmeden önce ~ / .pam_environment okumaya çalışır.
Süper Kullanıcı cevabımdan uyarlanmıştır: https://superuser.com/a/408373/66856
${HOME}
ya işe yaramayacak. İçinde genişleme yoktur .pam_environment
.
.pam_environment
, ancak HOME
genellikle bu kadar erken ayarlanmadı. Bu satır okumuş DEFAULT=${PATH}/Applications/jdk
olsaydı, PATH
eklenen değerin değerini görürdünüz.