Bash Linux'ta yeni oturumda ".profile" dosyasını yüklemiyor

Aug 16 2010

BT departmanımızdan aldığım yeni bir Linux makinesi kuruyorum ve .profileyeni bir terminal oturumu başlattığımda yüklenmediğini fark ettim . Geçerli kabuk Bash Varsayılan onu değiştirdi olsa sh o ile geldi. .profileBaşlangıçta yüklenmesini nasıl sağlayabilirim ?

Kabuğa SSH : üzerinden erişiyorum ssh myusername@remotemachine. Üzerinde yönetici ayrıcalıklarına sahibim.

Yanıtlar

24 Pauseduntilfurthernotice. Aug 16 2010 at 14:38

Bash etkileşimli bir oturum açma kabuğu olarak başladığında , işleyebileceği dosyalardan biri ~/.profile.

Etkileşimli giriş dışı bir kabuk olarak başladığında, başlamaz. İşlemler /etc/bash.bashrc(Bash sürümünüzde bu dosya veya benzer bir dosya etkinleştirilmişse) ve ~/.bashrc.

Aşağıdakileri kendinize ekleyebilirsiniz ~/.bashrc(ancak döngülerin veya değerlerin yanlışlıkla değiştirilmesine dikkat edin):

. $HOME/.profile
16 RichHomolka Aug 16 2010 at 17:28

Kabuğunuzu nasıl başlattığınıza bağlı. Diğerlerinin söylediği gibi, bir giriş kabuğu profilinizi yükleyecektir (önce .bash_profile'ı arayacak, sonra .profile'ı deneyecektir). Bunlardan birini bulursa, onları yükler. Oturum açma olmayan bir kabuk (etkileşimli ya da etkileşimli olmayan) .bashrc'yi kaynaklayacaktır.

Her şeyi .bashrc'ye koymanızı öneririm. .Profile / .bashrc ayrımı biraz gelişigüzeldi ve tty'nin yalnızca bir aygıt adı olmadığı ve gerçek bir TeleType anlamına geldiği UNIX'in eski günlerinde daha mantıklıydı. Bir sunucuya 'ana' girişte belirli şeylere (postayı kontrol etmek gibi) ve diğer kabuklar için sadece normal kurulum işlemlerine başlaması amaçlanıyordu. Çoğu Linux'ta şimdi oturum açacaksınız, bazı grafik arabirimlerde (KDE, gnome, CDE 'shudder') oturum açtığınız için gerçekten bir kabukta oturum açmıyorsunuz. "Oluşan oturum açma işlemleri" artık oturum yöneticiniz tarafından halledilir. Artık çok daha az alakalı.

Önerim: profilinizin yalnızca şunlardan oluşmasını sağlayın:

[ -f $HOME/.bashrc ] && . $HOME/.bashrc

.bashrc'nin ilk satırı olarak, erken çıkarak bir bash betiği çalıştırırken meydana gelen tuhaf şeylere karşı koruma sağlayın:

[[ $- != *i* ]] && return