При использовании SSH псевдоним .bashrc на этом сервере не читается, даже если для него установлены правильные значения в .bash_profile и .bashrc

364
Vladimir Despotovic

Я использую SSH для входа на удаленную машину. Я могу сохранить псевдоним, например, в .bashrc:

alias l='ls -lla' 

но когда я выхожу и снова SSH, псевдоним не существует. Однако он установлен правильно в .bash_profile и в .bashrc. Почему это происходит? Каждый раз, когда я SSH, я должен делать, . ~/.bashrcи я не хочу этого делать. Что я могу сделать, чтобы это исправить?

1

1 ответ на вопрос

2
bgStack15

Проверьте вашу пользовательскую оболочку с

getent passwd $ 

И посмотри в конце. Если это не / bin / bash, запустите

chsh -s /bin/bash 

Если вы пользователь, определенный в домене, возможно, что вашей оболочкой по умолчанию является / bin / sh, которая может быть символической ссылкой на bash, но не будет интерпретировать ваш ~ / .bashrc.

Это решило это! Итак, проблема была в настройке какой оболочки использовать при входе в систему? Vladimir Despotovic 7 лет назад 0
Да, когда bash запускается как `/ bin / sh`, он не интерпретирует ~ / .bashrc. Это поведение, вероятно, где-то задокументировано, но по своему личному опыту я просто изменил своего пользователя в freeipa, чтобы он использовал `/ bin / bash` в качестве оболочки по умолчанию, а затем был применен мой rc-файл. bgStack15 7 лет назад 1

Похожие вопросы