/ etc / environment vs .profile içindeki PATH değişkeninin ayarlanması

29

PATH envvar değerini ayarlamak için tercih edilen yer neresidir?

~/.profile veya /etc/environment ?

Her iki yerde PATH ayarlandığında durum nedir? Son sonuç, bu iki yerde ayarlanmış her iki değerin bir birleşimidir?

    
sordu pkaramol 30.12.2016 14:45

4 cevap

37

Özet:

  • Geçerli kullanıcı için yalnızca /your/additional/path değişkeninize bir yol (örn. PATH ) eklemek istiyorsanız ve bilgisayarınızın tüm kullanıcıları için değilse, normalde ~/.profile 'nin sonuna bir Bu iki örnekte:

    PATH="/your/additional/path:$PATH"
    PATH="$PATH:/your/additional/path"
    

    Yol öncelikleri soldan sağa doğru iner, bu nedenle ilk yolun en yüksek önceliği vardır. Yolunuzu $PATH 'nın soluna eklerseniz, en yüksek önceliğe sahip olur ve bu konumdaki yürütülebilirler diğerlerini geçersiz kılar. Yolunuzu sağa eklerseniz, en düşük önceliğe sahip olacak ve diğer konumlardan yürütülebilirler tercih edilecektir.

  • Ancak, tüm kullanıcılar için bu ortam değişkenini ayarlamanız gerekiyorsa, /etc/environment değerine dokunmayı, ancak .sh dizininde /etc/profile.d/ ile biten dosya adını içeren bir dosya oluşturmamanızı öneririz. % Co_de% komut dosyası ve /etc/profile içindeki tüm komut dosyaları, her kullanıcının kişisel /etc/profile.d 'sinin global eşdeğeridir ve başlatıldıklarında tüm kabuklar tarafından normal kabuk komut dosyaları olarak çalıştırılır.

Daha fazla ayrıntı:

  • ~/.profile , sistem genelinde bir yapılandırma dosyasıdır; bu, tüm kullanıcılar tarafından kullanıldığı anlamına gelir. Bununla birlikte, /etc/environment değerine aittir, bu yüzden bir yönetici kullanıcı olmanız ve değiştirmek için root değerini kullanmanız gerekir.

  • sudo , kendi kullanıcınızın kişisel kabuk başlatma komut dosyalarından biridir. Her kullanıcının bir tane vardır ve başkalarını etkilemeden kendi dosyalarını düzenleyebilir.

  • ~/.profile ve /etc/profile , her kullanıcı için /etc/profile.d/*.sh değerine eşdeğer olan genel başlatma komut dosyalarıdır. Genel betikler, kullanıcıya özgü komut dosyalarından önce çalıştırılır; ~/.profile 'si ise /etc/profile betiğinin *.sh ' sinden hemen önce çıkar.

  • /etc/profile.d/ dosyası normalde yalnızca bu satırı içeriyor:

    PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
    

    Sistemdeki tüm kullanıcılar için /etc/environment değişkeni bu varsayılan değere ayarlar; bu, büyük bir şekilde değiştirilmemelidir. En azından, PATH , /bin , /sbin ve /usr/bin gibi önemli yollardan hiçbirini kaldırmamalısınız.

    Bu dosya, her kullanıcının her kabuğunun ilk yapılandırma dosyalarından biri olarak okunur. Bunun kabuk betiği olmadığını unutmayın. Sadece bir şekilde ayrıştırılan ve yalnızca ortam değişken atamaları içerebilen bir yapılandırma dosyasıdır!

  • /usr/sbin dosyası pek çok şey içerebilir, varsayılan olarak diğer öğeler arasında ~/.profile dizinin var olup olmadığını kontrol eder ve bunu kullanıcının mevcut ~/bin değişkenine ekler (örneğin, önceki Ubuntu sürümlerinde) 16.04 - yeni sürümler kayıtsız şartsız ekleme):

    # set PATH so it includes user's private bin if it exists
    if [ -d "$HOME/bin" ] ; then
        PATH="$HOME/bin:$PATH"
    fi
    

    Görüyorsunuz ki, PATH 'nin eski değeri burada yeniden kullanılmakta ve yeni yol, her şeyin üzerine yazmak yerine yalnızca başlangıca eklenmektedir. El ile yeni yollar eklemek istediğinizde, her zaman eski PATH değerini yeni dizede bir yerde tutmalısınız.

    Bu başlatma betiği, yalnızca ait olduğu kullanıcının kabukları tarafından okunur, ancak başka bir koşul var:

    # ~/.profile: executed by the command interpreter for login shells.
    # This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
    # exists.
    

    Varsayılan Bash kabuğunu kullanırsanız, $PATH 'deki değişikliklerin kullanıcı için bir etkisi olmasını istiyorsanız, ~/.bash_profile veya ~/.bash_login değeriniz olmadığından emin olmalısınız.

Ortam Değişkenleri hakkında tam bilgi için: İşte

İlgili soru: bash.bashrc ve / etc / environment dosyası arasındaki fark

    
verilen cevap Byte Commander 30.12.2016 15:10
16
  

Bu yanıt, temel olarak, farklı yapılandırma dosyalarında belirtildiğinde PATH gibi ortam değişkenlerinin verildiği sırayla ilgilidir. Ayrıca, genellikle bunları ayarlamanız gereken yeri de kapsamaktadır, ancak aşağıdaki liste, dosyaları kullanmayı düşünmeniz gereken sırayla listelememektedir. Ubuntu'da PATH ve diğer ortam değişkenlerini ayarlama hakkında genel bilgiler için, EnvironmentVariables ve bu soruya verilen diğer cevaplar.

PATH değerini ayarlamak için tercih edilen yer, hangi kullanıcılara ayarlamanız gerektiğine ve ne zaman ve nasıl ayarlanacağına bağlıdır. Kararınızın bir kısmı, tüm kullanıcılar için veya kullanıcı başına bir ortam değişkeni ayarlamak isteyip istemediğinizi gösterecektir. Emin değilseniz, sistem geneli yerine tek bir kullanıcı için (ör. Hesabınız) ayarlamanızı öneririz.

AlexP diyor , PATH ortam değişkeni, en son atanan değerine sahip olacaktır. Pratikte, PATH değerini ayarladığınız sürenin çoğunun değerini, yeni girdide PATH değerinin eski değerini eklemiş olursunuz, böylece önceki girişler korunur.

Dolayısıyla, uygulamada, PATH değeri birden fazla dosyadan ayarlandığında, genellikle tüm dosyalarda verilen girdileri içerir. Ancak bu, yalnızca, birincisi hariç, onu ayarlayan tüm dosyaların, genellikle PATH değişkeninin kendisini referans aldığı ve eski değerinin yenisini içermesine neden olduğu için olur.

Bu nedenle, çeşitli dosyalardaki PATH ayarının etkili olduğu siparişi soruyorsunuz.

PATH değerini belirleyen genel, genel amaçlı yerler, bir kullanıcı giriş yaptığında geçerli oldukları sıraya göre aşağıda listelenir: not genel olarak kullanmayı düşünmeniz gereken sırayla onları . Aşağıda listelenen yerlerin her biri, bazı durumlarda PATH ayarlanması için makul bir seçenektir, ancak çoğu zaman yalnızca birkaç tanesi iyi seçimlerdir.

Aşağıdaki listede ~/.profile gibi dizin adlarını göreceksiniz. tilde genişlemesine aşina değilseniz, ~/ geçerli kullanıcının ana dizini. Bu sözdizimini çoğunlukla kompaktlık için kullanıyorum. Kabuk betiklerinde desteklenir, ancak PAM yapılandırma dosyalarında değil .

1. Tüm kullanıcılar için: /etc/environment

Ubuntu üzerinde PAM , /etc/environment dizininde listelenen ortam değişkenlerine, bu dosya varsa, varsayılan olarak atanmasına neden olur. öyle. Bu, tüm kullanıcılar için çevre değişkenlerinin en yaygın şekilde ayarlandığı durumdur.

$ cat /etc/environment
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"

Ortam değişkenlerini, yalnızca kullanıcı hesabınız yerine tüm kullanıcı hesapları için ayarlamanız gerekiyorsa, bu dosyayı değiştirmek sizin için en iyi seçimdir. Önce yedeklemenizi tavsiye ederim. Bu dosyayı yedeklemenin bir yolu çalıştırmaktır:

sudo cp /etc/environment /etc/environment.orig

.orig uzantılı özel olarak gerekli değildir - yedekleme dosyasını, kafa karıştırıcı olmayan veya kullanılmakta olan herhangi bir şeye adlandırma konusunda iyi hissedebilirsiniz. (Ayrıca .orig , .old , .backup ve .bak yaygındır.)

Bu dosyayı herhangi bir dosyayı root kullanıcısı olarak düzenleyebileceğiniz yollardan herhangi birinde düzenleyebilirsiniz ( sudoedit /etc/enviromnment , sudo nano -w /etc/environment , gksudo gedit /etc/environment , vb.)

/etc/environment , bir değişkenin eski değerini otomatik olarak dahil etmeyi desteklemiyor. Ancak bu genellikle gereksizdir, çünkü çoğu zaman /etc/environment 'yi düzenleyerek tüm kullanıcılar için bir ortam değişkeni ayarlayacağınız için, kullanıcı giriş yaptığında bunun başlangıç ​​değeri olmasını istersiniz. Kullanıcı istediği gibi değiştirebilir. Tipik olarak, kullanıcıların bunu yapabilmeleri iyi bir şeydir.

2. Tüm kullanıcılar için: /etc/security/pam_env.conf

PAM, tüm kullanıcıların /etc/security/pam_env.conf 'sinden, kullanıcı başına ~/.pam_environment dosyasında (aşağıya bakın) kullanılan aynı sözdizimi ile belirtilen ortam değişkenlerini okur.

Aynı ortam değişkeni hem /etc/environment hem de /etc/security/pam_env.conf olarak ayarlandığında, pam_env.conf değerindeki değer kullanılır - bu değer DEFAULT yerine OVERRIDE olarak belirtilse bile.

Ancak, environment cinsinden bir satırın pam_env.conf 'sinde bir satırın yerini aldığınızda, üstte katlanan değerin içeriğini ekleyebilirsiniz. Ayrıntılar için .pam_environment 'da aşağıdaki bölüme bakın (aynı sözdizimini kullandığından).

Genellikle pam_env.conf 'yı düzenlemek için gerekli değildir ve yaparsanız satırı genellikle normal kullanıcı hesaplarının girişini engeller. hiç de! Örneğin, varsayılan pam_env.conf satırları içerir:

#PATH           DEFAULT=${HOME}/bin:/usr/local/bin:/bin\
#:/usr/bin:/usr/local/bin/X11:/usr/bin/X11

Bu birkaç örnekten biri olarak sunulmuştur. Gösterdiği şeylerden biri, bir ödevin \ ile birden fazla satırda nasıl ayrılacağıdır.Sadece ilk satırı rahatsız etmediğinizi varsayalım, ancak ikinci satırı unutmadan:

PATH           DEFAULT=${HOME}/bin:/usr/local/bin:/bin\
#:/usr/bin:/usr/local/bin/X11:/usr/bin/X11

Bunu yapma!

Sadece kendimi kazara test ettim ve herhangi bir kullanıcının başarıyla giriş yapmasını engelledi. Düzeltmek için kurtarma modunda önyükleme yapmalı ve değiştirdim. (Neyse ki bunu sadece bir şeyi test etmek için kullandığım sanal bir makinede yaptım, bu yüzden bana sorun çıkarmadı.)

3. Bir kullanıcı için: Kullanıcı giriş dizininde .pam_environment

Tek bir kullanıcı için bir ortam değişkeni belirlemenin yollarından biri, kullanıcının ana dizininde .pam_environment 'sini düzenlemesi (veya oluşturması) içindir. Bu dosyada ayarlanan değerler, global /etc/environment dosyasında ayarlananların yerine geçer.

.pam_environment , kullanıcı hesabı ilk oluşturulduğunda kullanıcının ana klasörüne kopyalanan dosyaların iskeletinin parçası değildir. Ancak, bu dosyayı giriş dizininizde oluşturursanız, PATH gibi ortam değişkenlerini ayarlamak için kullanabilirsiniz. % Co_de% 'nın ( /etc/environment gibi) aksine, kullanıcı başına /etc/security/pam_env.conf dosyaları, bir ortam değişkeninin eski değerini yeni bir değere genişletmeyi destekler. Bununla birlikte, bunlar kabuk betikleri değildir ve bunu elde etmek için özel bir sözdizimi kullanmanız gerekir; bu, .pam_environment gibi bir dosyada kullanacağınız sözdiziminden biraz farklıdır.

Örneğin, giriş dizininizde .profile 'nın sonuna eklemek istediğiniz bin2 dizini varsa, bu satırı PATH ' ye ekleyerek bunu yapabilirsiniz:

PATH DEFAULT=${PATH}:/home/@{PAM_USER}/bin2

.pam_environment alt bölümüne bakın. //help.ubuntu.com/community/EnvironmentVariables">EnvironmentVariables (yukarıdaki örneğe en yakın şekilde uyarlanmıştır), ~/.pam_environment ve Daha fazla bilgi için man pam_env .

Bu, Ubuntu kullanıcılarının ortam değişkenlerini değiştirmesi veya eklemesi için tercih edilen yol olarak kullanılmasına rağmen ve yine de makul ve kabul edilebilir bir seçim olarak kabul edilmesine rağmen, man pam_env.conf düzenlenirken dikkatli olmanız gerekir . Sistem genelinde .pam_environment düzenlemeleri gibi (yukarıya bakın), kullanıcının /etc/security/pam_env.so dosyasındaki hatalı biçimlendirilmiş bir satır, girişlerin başarılı olmasını engelleyecektir. (Bunu bu amaçla - bu defa test ettim.) önerilerin nasıl yapıldığı hakkında bilgi için evrildi , bkz. Gunnar Hjalmarsson yorumlar aşağıda ve bu .pam_environment tartışma .

Böyle bir hata, yalnızca bir kullanıcıyı etkilediği için ubuntu-devel cinsinden hatalı biçimlendirilmiş bir satırdan genel olarak çok daha az ciddi. Ancak, oturum açmalarına izin veren tek bir kullanıcı hesabına sahip bir masaüstü Ubuntu sistemi durumunda, pam_env.so 'yi düzenlerken böyle bir yanlışlık, .pam_environment ' yi düzenlerken bir hata kadar kötü olur - eğer henüz giriş yapmadıysanız, kurtarma modunda (veya canlı bir USB'den vb.) önyükleme yapmadan bunu düzeltemezsiniz.

(Başka kullanıcı hesabınız varsa, başka bir kullanıcı olarak giriş yapabilir ve sorunu düzeltebilirsiniz. Yönetici olmasalar ve pam_env.so 'yi root yapamazlarsa bile, sudo çalıştırabilir ve (kendi değil) şifrenizi girmeniz istenir. Ancak, guest hesabı, bunu yapamaz, çünkü su your-account 'sının başka bir kullanıcının kimliğini almak için kullanılması yasaktır.)

4. Tüm kullanıcılar için: su ve içindeki dosyalar /etc/profile

Bourne uyumlu kabuklar ( /etc/profile.d/ , Ubuntu'daki varsayılan kullanıcı kabuğu dahil) komutları, giriş kabuğu olarak çağrıldığında bash olarak çalıştırır.

Ubuntu /etc/profile şununla bitiyor:

if [ -d /etc/profile.d ]; then
  for i in /etc/profile.d/*.sh; do
    if [ -r $i ]; then
      . $i
    fi
  done
  unset i
fi

Bu, /etc/profile.d dizinindeki herhangi bir dosyadaki komutların da çalıştırılacağı /etc/profile.d/ dizininde sona eriyor.

Çoğu görüntü yöneticisi, komutların .sh 'sinde (ve dolayısıyla /etc/profile dosyasındaki dosyalar) grafiksel girişler için de çalıştırılmasına neden olur. Ancak, hepsi değil, ve bu PAM tarafından sağlanan olanakları kullanmanın lehine önemli bir argüman (yukarıya bakınız) - bu sisteme hiçbir zaman herhangi bir grafik girişi olmayacaksa, Örneğin, eğer GUI yüklü olmayan bir sunucu ise.

Sistem genelinde ortam değişkenlerini /etc/profile.d olarak ayarlamak gelenekseldir, ancak bu genellikle en iyi seçim değildir. Bir ortam değişkenini /etc/profile olarak ayarlayamazsanız ve bunu tüm kullanıcılar için ayarlamanız gerekiyorsa, /etc/environment 'sinde /etc/profile.d/ ' nin kendisini düzenlemek yerine /etc/profile yeni bir dosya oluşturmak daha iyi olur.Bunun bir nedeni, Ubuntu yükseltildiğinde, yeni bir varsayılan /etc/profile dosyası olabilir. Yükseltmeyi nasıl gerçekleştirdiğinize bağlı olarak, eski dosya (değişikliklerinizle birlikte), belirli bir güncelleştirilmiş yapılandırma dosyasında saklanır veya durumu halletmeniz istenir.

Aynı ortam değişkeni hem /etc/profile hem de /etc/profile.d cinsinden bir veya daha fazla dosyada ayarlandığında, bu sonuncu gerçekleştirilir? Bu, /etc/profile komutlarının bunları ayarlayıp ayarlamayacağına bağlıdır. profile.d dosyasındaki dosyalardan önce veya sonra görünür (yukarıda belirttiğim kod). % Co_de% dizinindeki komutlar, görüntülendikleri sırayla yürütülür.

/etc/profile bir kabuk komut dosyasıdır ve sözdizimi, yukarıda açıklanan PAM yapılandırma dosyalarınınkiyle aynı değil dir . Sözdizimi, kullanıcı başına /etc/profile dosyasının sözdizimi ile aynıdır (aşağıya bakın).

Belirli bir dizini ~/.profile öğesine ekleyip eklemeyeceğinizi yazan kod yazmanız gerekiyorsa (ve bunu tüm kullanıcılar için),% co_de kullanamazsınız. Bunu yapmak için% veya PATH . Bu, belki bunun yerine /etc/environment veya /etc/security/pam_env.conf kullanmanın daha iyi olduğu ana durumdur.

5. Bir kullanıcı için: Kullanıcı giriş dizininde /etc/profile

Bir kullanıcının% co_de yüzdesi varsa, bash /etc/profile.d/ veya .bash_profile yerine onu kullanır (aşağıya bakın). Giriş dizinizde genellikle ~/.bash_profile olmamalıdır.

Bunu yaparsanız, genellikle ~/.profile kaynağını yazmak için bir komut içermelidir (ör. ~/.bash_login ). Aksi takdirde, kullanıcı başına .bash_profile dosyasının içeriği hiç çalıştırılmaz.

6. Bir kullanıcı için: Kullanıcı giriş dizininde ~/.profile

Bir kullanıcı . "$HOME/.profile" içeriyorsa, .profile bulunmadığı sürece, bash .bash_login yerine bunu kullanır (aşağıya bakın), bu durumda diğerlerinin hiçbiri, kaynak belirtilmedikçe kullanılamaz. ~ / .bash_login.

~/.bash_login ile olduğu gibi, genellikle ana dizininizde ~/.profile dosyası bulunmamalıdır.

7. Bir kullanıcı için: Kullanıcı giriş dizininde ~/.bash_profile .

Bir Bourne stili kabuk, oturum açma kabuğu olarak çalıştırıldığında, .bash_profile dizinindeki komutları çalıştırır (genellikle .bash_login dosyasındaki komutlara neden olan komutları içerir - yukarıya bakın). Bundan sonra, komutları kullanıcının giriş dizininde .profile olarak çalıştırır. Bu dosya her kullanıcı için ayrıdır. (Bash, aslında, varsa /etc/profile veya /etc/profile.d/ çalıştırırlar - ancak, Ubuntu sistemindeki kullanıcılar için, bu dosyalar nadiren bulunmalı ya da var olmalıdır. Ayrıntılar için, yukarıya bakın ve 6.2 Bash Başlangıç ​​Dosyaları içinde Bash kılavuzu .)

.profile bu nedenle kullanıcının oturum açtıklarında çalışacak komutları yerleştirmesi için ana yerdir. % Co_de% 'nizi ayarlamanız için geleneksel bir yerdir, ancak Ubuntu'nun pam_env modülüne sahip olması ve .bash_profile ' yi desteklemesi nedeniyle bunu kullanmayı düşünmelisiniz.

.bash_login ile olduğu gibi, çoğu ekran yöneticisi, tüm görüntü yöneticileri bu dosyayı grafiksel girişler için çalıştırmaz. Bu, ortam değişkenlerinin ayarlanması için ~/.profile 'ı tercih etmenin bir nedenidir. ( PATH ' yi ~/.pam_environment 'ye tercih edeceği gibi).

/etc/profile 'si ~/.pam_environment ' de (yukarıya bakın) ayarladığınızda, /etc/environment 'nin kendisi de dahil olmak üzere ortam değişkenlerini genişletebilirsiniz. Ancak, /etc/profile değerini daha karmaşık bir şekilde ayarlamanız gerekirse, bunun yerine PATH değerini kullanmanız gerekebilir. Özellikle, bir kullanıcı her girişinde bir dizinin var olup olmadığını kontrol etmek istiyorsanız ve eğer varsa, bunu PATH dosyasına eklerseniz, bu dizini eklemek için .pam_environment dosyanızı kullanamazsınız. PATH .

Örneğin, Ubuntu 'daki kullanıcı başına varsayılan .profile dosyası ile bitiyor:

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi

Gunnar Hjalmarsson 'a bakın Bayt Ayrıntılar için komutanın cevabı .

Bu, ev dizininizin PATH alt dizinine sahip olup olmadığınızı kontrol eder. Öyleyse, bu alt dizini, .pam_environment 'nın başlangıcına ekler.

Bu liste bazı olasılıklar çıkarır.

Kullanıcılar oturum açtıklarında oturum türüne daha fazla bağımlı olduklarında ortam değişkenlerinin ayarlanmasının başka yolları da vardır. Örneğin, zaman zaman sadece grafiksel girişler için ayarlanan veya sadece SSH tabanlı uzak girişler için ayarlanmış ortam değişkenleri olabilir. Yukarıdaki liste bu gibi vakaları kapsamaz.

İnsanların bazen PATH ve .profile gibi ortam değişkenlerini tanımladıkları birkaç dosya bıraktım çünkü bunlar genellikle bin 'yi ayarlamak için genellikle tavsiye edilmeyen yerlerdir ve bunları gerçekten kullanmanız nadirdir. Bu amaç. Bu dosyaları PATH dizinine eklemek için kullanırsanız, bazen ~/.bashrc 'yi incelediğinizde bazen çok fazla eklenecek ve çok kafa karıştırıcı olacaktır. (Aşırı durumlarda bu, işleri yavaşlatabilir, ancak genellikle her şeyi temiz ve anlaşılabilir tutmaktır.)

/etc/bash.bashrc , kullanıcılar için Ubuntu'nun varsayılan giriş kabuğudur ve çoğu kullanıcı bunu veya başka bir POSIX uyumlu kabuk kullanır. Ortam değişkenlerinin, diğer Bourne stili olmayan kabuklarda nasıl ayarlandığıyla ilgili bilgileri ihmal ettim. PATH .

    
verilen cevap Eliah Kagan 30.12.2016 19:30
3

/ etc / environment dosyası, dışa aktarma işlemini kullanamayacağınız bir komut dosyası değil ve $ HOME türünde, yalnızca basit değişkenli = değer çiftlerinin değişken genişlemesini desteklemiyor. Bu dosyayı kullanmak için, yalnızca varolan tanımla yolunuzu eklemeniz gerekir, özellikle de sistem çapında ortam değişken ayarları içindir. Her satıra bir tane. Özellikle, bu dosya sistem genelinde yerel ayarları ve yol ayarlarını saklar.

~ / .profile - Bu dosya, bir bash kabuğu yürütüldüğünde çalıştırılır, genellikle ortam değişkenleri için önerilir, ancak yalnızca oturum açma kabukları tarafından çağrılmanın dezavantajı vardır. Etkinleşmesi için sipariş vermeniz ve oturum açmanız gerekecek - veya en azından yeni bir giriş kabuğunu başlatın.

    
verilen cevap eGhoul 30.12.2016 15:07
1

Çevresel değişkenler için tercih edilen yer çeşitli şeylere bağlıdır:

  1. Bilgisayarı kullanan tek kişi siz misiniz?
    • Bu durumda, "yetkisiz erişim" tehlikesi bulunmadığından, /etc/environment değerini ayarlamak için en iyi yer olacaktır.
  2. Sistem birçok kişi tarafından kullanılıyorsa
    • Değişkenlerin tümüne erişilmesi gerekiyorsa, konum /etc/environment olur, ancak
    • bireysel kullanıcılar kendilerine erişmeyi seçtiyse, her bir kullanıcıda bulunduğu için her bir kullanıcı kullanıcısına ait her birinin kendi karakterlerini ~/.profile ayarlaması gerekir dizin.

Sistem /etc/environment değerini okumadan önce ~/.profile okuyacak. birleştirme oluşmaz ve Alex P gibi, son atama komutunun geçerli olduğunu söyledi.

~/.profile ve /etc/environment öğesinin bu gibi konumlarla nasıl çalıştığını belirleyen faktörlere daha ayrıntılı bir bakış için burayı ziyaret edin ve burada .

    
verilen cevap George Udosen 30.12.2016 15:10

Etiketlerdeki diğer soruları oku