RHEL6 çalıştırıyorum ve böyle bir ortam değişkeni ihraç var:
export DISPLAY=:0
Terminal kapatıldığında bu değişken kaybolur. Bu değişken değerinin her zaman belirli bir kullanıcıyla var olması için bunu kalıcı olarak nasıl eklerim?
RHEL6 çalıştırıyorum ve böyle bir ortam değişkeni ihraç var:
export DISPLAY=:0
Terminal kapatıldığında bu değişken kaybolur. Bu değişken değerinin her zaman belirli bir kullanıcıyla var olması için bunu kalıcı olarak nasıl eklerim?
Yanıtlar:
Kabuk yapılandırma dosyanıza, örneğin $HOME/.bashrc
global olarak veya daha fazlasında ekleyebilirsiniz /etc/environment
. Bu satırları ekledikten sonra, değişiklikler GUI tabanlı sistemlerde anında yansımayacaktır. Terminalden çıkmanız veya yeni bir tane oluşturmanız ve sunucuda oturumdan çıkmanız ve bu değişiklikleri yansıtacak şekilde oturum açmanız gerekir.
source
örn. - kullanın > source ~/.bashrc
.
export
, ancak bir hata ayıklayıcı ile deneyin
Kalıcı bir ortam değişkenini aşağıdaki gibi ayarlamak için üç dosyayı düzenlemeniz gerekir:
Normalde bu değişiklikleri uygulamak için bilgisayarınızı yeniden başlatmanız gerekir. Ancak şu komutlarla bashrc ve profil değişikliklerini uygulayabilirsiniz :
$ source ~/.bashrc
$ source ~/.profile
Ancak / etc / çevre için yeniden başlatma dışında bir seçeneğiniz yok (bildiğim kadarıyla)
#!/bin/bash
echo "Enter variable name: "
read variable_name
echo "Enter variable value: "
read variable_value
echo "adding " $variable_name " to environment variables: " $variable_value
echo "export "$variable_name"="$variable_value>>~/.bashrc
echo $variable_name"="$variable_value>>~/.profile
echo $variable_name"="$variable_value>>/etc/environment
source ~/.bashrc
source ~/.profile
echo "do you want to restart your computer to apply changes in /etc/environment file? yes(y)no(n)"
read restart
case $restart in
y) sudo shutdown -r 0;;
n) echo "don't forget to restart your computer manually";;
esac
exit
Bu satırları bir shfile'a kaydedin, ardından yürütülebilir yapın ve çalıştırın!
chmod -x insert_var.sh
daha sonra, bash insert_var.sh
. Teşekkürler.
Ubuntu sistemlerinde aşağıdaki konumları kullanın:
JAVA_PATH=/usr/local/java
Mağaza genelinde formatta sistem genelinde kalıcı değişkenler
/etc/environment
export PATH="$JAVA_PATH:$PATH"
Store in gibi değişkenlere gönderme yapan sistem genelinde kalıcı değişkenler
/etc/.bashrc
Kullanıcıya PATH DEFAULT=/usr/bin:usr/local/bin
depo biçimindeki kullanıcıya özel kalıcı değişkenler
~/.pam_environment
# 2 hakkında daha fazla bilgi için bu Ubuntu'ya Sor cevabını kontrol edin . NOT: # 3, Ubuntu önerisidir ancak gerçek dünyada güvenlik endişeleri olabilir.
Belirli bir örnek: Java 7 ve Java 6 yüklü, bazı sürümleri 6 ile, diğerleri 7 ile çalıştırmak gerekir. Bu JAVA_HOME
nedenle, maven her yapı için ne istediğini alır böylece dinamik olarak değiştirmek gerekir . Aşağıdakileri yaptım:
j6.sh
sadece JAVA_HOME=...
j6 yüklemek için yol ihracat yapar oluşturulan komut dosyası ...j6.sh
ilgili komut terminalinde kaynak çalıştırın . Varsayılan olarak, my JAVA_HOME
öğesi J7 olarak ayarlanmıştır.Bu yardımcı olur umarım.
Herhangi birine uygunsa, ortam değişkenlerini kalıcı olarak eklemek için bazı kısa yönergeler.
vi ~/.bash_profile
Değişkenleri dosyaya ekleyin:
export DISPLAY=:0
export JAVA_HOME=~/opt/openjdk11
Tüm değişiklikleri hemen uygulayın:
source ~/.bash_profile