Ben aynı şekilde yapılandırılması gereken ikiz Linux sunucuları var, ancak bunlardan birine ssh komutları ~ / .bashrc içinde belirtilen bir yol gerektiren komutlar için başarısız oluyor. Örneğin, pwd
hem etkileşimli hem de ssh gibi bir komut kullanabilirim , ancak bir uygulama kutusu klasöründe bulunan bir programı çalıştırmayı denersem, yalnızca sunuculardan biri için etkileşimli bir kabukta çalışır.
Her iki sunucudaki / etc / profile ve / etc / çevre dosyası aynıdır, ancak $ BASH_ENV düzgün çalışan sunucuda ~ / .bashrc olarak ayarlanmıştır. Çalışmayan sunucuda $ BASH_ENV ayarlamak istiyorum, ancak çalışma sunucusunda ayarlandığı yere ayarlamayı tercih ederim. Başka bir bilgisayardan ssh komutu gibi etkileşimli olmayan bir oturum açma sırasında Linux'un çalışacağı yerler nelerdir?
edit: Kullanıcı için / etc / passwd satırında her iki sunucuda / bin / bash belirtilir. Her iki sunucu için ~ / .bash_profile dosyası aynıdır ve içerir if [ -f ~/.bashrc ]; then . ~/.bashrc; fi
. Sistemler arasındaki tek fark, $ BASH_ENV'nin çalışmayan sunucuda boş bir dize olmasıdır ve çalıştığı sunucuda nerede ayarlandığını bulamıyorum.
değiştir 2: Her iki sunucudaki ~ / .ssh / ortam dosyasında BASH_ENV = ~ / .bashrc var
if [ -f ~/.bashrc ]; then . ~/.bashrc; fi