Kök için kalıcı ortam değişkenlerini nasıl ayarlarım?


40

Kalıcı ortam değişkenleri oluşturmak için, komut dosyasını /etc/profile.d dizinine eklerim, örneğin:

# betiğim
dışa aktarma MY_VAR = var_value

Bu geçerli kullanıcı için düzgün çalışıyor:

alex @ alex-64: ~ $ echo $ MY_VAR
var_value

Şimdi kök kullanıcı için aynı ortam değişkenlerine ihtiyacım var, ancak /etc/profile.d script root için çalışmıyor:

alex @ alex-64: ~ $ echo $ MY_VAR
var_value
alex @ alex-64: ~ $ sudo su
root @ alex-64: / home / alex # echo $ MY_VAR

/ Home / alex #: alex-64 @ kök 

Kök için aynı değişkenleri nasıl ayarlayabilirim?


2
Çalışırken arayanın ortamından belirli bir değişkeni nasıl koruyacağınızla ilgili bu soru çok önemlidir sudo. (Fakat bu bir kopya değil çünkü bu soru kökün kendi çevresini nasıl kişiselleştireceğinizle ilgilidir .)
— Eliah Kagan

Yanıtlar:


44

sudo normalde yerel ortam değişkenlerini korumaz. Bunu -Eyapmak için anahtarla kullanmalısınız , yani root için $ MYVAR'ısudo -E su koruyacaktır .

Alternatif olarak, gerçekten sistem genelinde kalıcı değişkenler oluşturmak için bunları ayarlamanız gerekir /etc/environment.



3
@ FredericYesidPeñaSánchez, CentOS'ta benim için yaptı. Sende senaryo FOO=bar
— yazmıyorsun

10

Kendi ortam değişkeninizi tanımladığınız süreç gibi, örneğin '~ / .bashrc' dosyasını düzenleyerek, '/root/.bashrc' dosyasını düzenleyerek kök ortam değişkenini tanımlayabilirsiniz.


8

Defaults env_resetiçinde /etc/sudoerskök sıfırlayacak oluyor PATHtanımladığı /etc/environment.

Defaults !env_resetSıfırlamayı devre dışı bırakmak veya eklemek için değiştirebilirsiniz :

Defaults secure_path="my/custom/path:/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin

İkinci çözümü kullanmak istersem (secure_path yolu eklemek anlamına gelir), anahtar nedir ?! yol sadece değerdir. ANDROID_NDK'yi root için ortam değişkenlerine eklemek istiyorum. Şimdilik sadece ilkini kullanıyorum (! Env_reset). Teşekkürler.
— Doktor
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.