/ Etc / environment ve / etc / profile arasındaki fark nedir?


25

Birincisinin ikincisinden önce yüklendiğini anlıyorum, ancak kavramsal fark nedir? Bazı değişkenleri birinde, diğerinde belirlemememin iyi sebepleri var mı? Aslında dışında /etc/environmentiken, sistem tarafından işletilen tüm işlemler için ortamı kurmak için var gibi görünüyor /etc/profile, doğru, giriş kabuğundan kullanılan ve yayılan bir ortam kurmak içindir?

Ayrıca, bir yan notta, hangi programı geleneksel olarak okur /etc/environment? POSIX ile mi, yoksa sadece bir kongre ile mi ilgili?

Yanıtlar:


11

Ayıkla Ubuntu yardım

/etc/environment- Bu dosya özellikle sistem genelinde çevre 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.

/etc/profile - Bu dosya, bir bash giriş kabuğu girildiğinde (örn. Konsoldan veya ssh üzerinden giriş yaparken) ve ayrıca masaüstü oturumu yüklendiğinde DisplayManager tarafından yürütülür.

Bütün bunların sadece bir konvansiyon olduğunu düşünüyorum ama standartlardan çok da uzak değil (RedHat benzeri sistemler hakkında bilgim yok).


RedHat üzerinde çalışır (7.6'dan itibaren). '/ Etc / environment' boştu sunucumdu ve ayar VAR=valuebir kabukta (tekrar oturum açtıktan sonra) etkili oldu.
DKroot

39

/etc/environmentPOSIX’in bir parçası değildir, PAM’e (Takılabilir Kimlik Doğrulama Modülü) aittir ve yalnızca PAM desteği ile derlenen programlar bunu kullanabilir (öncelikle kabuk veya kullanıcı ortamını başlatan oturum açma sistemleri). Bu, kabuğunuz tarafından bile okunmadığı anlamına gelir.

Sen kullanarak programları görebilirsiniz /etc/environmentile grep -l pam_env /etc/pam.d/*.

Bu nedenle /etc/environment, genellikle bir kabuktan başlatılmayan programlar için değişkenlerin ayarlanması için kullanılır.

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.