CentOS'ta bir ortam değişkenini kalıcı olarak nasıl ayarlayabilirim?


6

Sunucumdaki SSH terminalinde aşağıdaki komutu kullandım:

export LD_LIBRARY_PATH=/lib:/usr/lib:/usr/local/lib

ve iyi çalışıyor: programım bu noktada tüm kütüphaneleri bulur (SSH komut satırımdan başlattıysam).

Bir komut

env

LD_LIBRARY_PATH’ın uygun şekilde ayarlandığını gösterir.

Fakat! SSH istemcimi kapatıp tekrar bağladığımda artık LD_LIBRARY_PATH ayarlanmış bir set yok.

CentOS altında sunucumda sürekli ortam değişkenleri nasıl ayarlanır? Teşekkürler.


Çözüm: ihracat komutuyla /etc/profile.d bir dosya .sh oluşturmalıdır
user3545570

Yanıtlar:


4

Kendi cevabınızda ve @Fegnoid tarafından verilen cevapta belirtildiği gibi, değişkenleri bir .shdosya içinde /etc/profile.d/veya içinde vermek ~/.bash_profilehile yapar. Bu ortam değişkenlerini bir servis komut dosyasında kullanmak istiyorsanız service, birkaç çevre dışındaki tüm ortam değişkenlerini temizlediğinden, beklendiği gibi çalışmayabileceğini unutmayın .

Bkz. Https://unix.stackexchange.com/a/44378/148497 .


0

Kullanıcıların ~ / .profile veya ~ / .bash_profile içindeki değişkenleri, giriş yapmaları için giriş yapmaları için verin.

LD_LIBRARY_PATH=/lib:/usr/lib:/usr/local/lib
export LD_LIBRARY_PATH

1
Ama benim kullandığım komut buydu. Yeniden bağlandıktan sonra etkili olmaz.
user3545570 9:14

Listeye yazdığım yukarıdaki dosyalara girdiniz mi? ve onları kurtardı
Fegnoid

Evet, ama bu değişkeni bulamıyorum. Sunucuyu yeniden başlatmalı mıyım? Alternatif olarak, /etc/profile.d içinde .sh dosyasını bu komutla oluşturdum ve çalıştı!
user3545570 9:14

evet, ama her kullanıcı için geçerli olacak, aslında yanlış girmek için ihtiyacın olanı aldım ve cevabımı düzelttim - üzgünüm
Fegnoid
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.