Quando si utilizza SSH, l'alias .bashrc su quel server non viene letto, anche se è impostato correttamente in .bash_profile e .bashrc


1

Io uso SSH per accedere a una macchina remota. Posso salvare l'alias in questo modo, in .bashrc:

alias l='ls -lla'

ma quando eseguo il logout e SSH di nuovo, l'alias non esiste. È impostato correttamente, tuttavia, in .bash_profile e in .bashrc. Perché sta succedendo? Ogni volta che ho SSH, devo fare . ~/.bashrc e io non voglio farlo. Cosa posso fare per risolvere questo problema?

Risposte:


2

Controlla la shell dell'utente con

getent passwd ${USER}

E guarda alla fine. Se non è / bin / bash, esegui

chsh -s /bin/bash

Se sei un utente definito dal dominio, è possibile che la tua shell predefinita sia / bin / sh che potrebbe essere un link simbolico a bash, ma non interpreterà il tuo ~ / .bashrc.


Questo l'ha risolto! Quindi il problema era nell'impostare quale shell usare quando si collegava?
Vladimir Despotovic

1
Sì, quando bash viene eseguito come /bin/sh non interpreta il ~ / .bashrc. Questo comportamento è probabilmente documentato da qualche parte, ma nella mia esperienza personale ho semplicemente cambiato il mio utente in freeipa /bin/bash come la mia shell predefinita e poi il mio file rc è stato applicato.
bgStack15
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.