bashrc non caricato in shell / bin / bash

Quando ssh in un server (4.3.3-2-ARCH), il mio .bashrc non è caricato (tuttavia, posso caricarlo manualmente acquistandolo).

Non ho altri file nella cartella di casa, come .profile. Anche la shell è corretta

$ echo $SHELL /bin/bash 

Quando accedo con ssh -t myserver /bin/bash , il mio .bashrc IS è caricato correttamente.

Nella modalità verbosa SSH, vedo che /etc/bash.bashrc e ~ / .bashrc vengono caricati utilizzando l'ultimo command. Quando si utilizza il command ssh predefinito, nessuno di essi viene caricato …

Cosa devo configurare per avere il file .bashrc (e /etc/bash.bashrc) quando si utilizza il command ssh predefinito?

  • La sincronizzazione ansible si blocca quando si esegue all'interno di ssh con delegato_to
  • SSH Consenti password per un utente, resto solo Consenti chiavi pubbliche
  • Aggiunta di inoltro port in modo programmato in una session SSH di ControlMaster
  • Bloccare tunneling SSH in IP, consentire solo per alcuni utenti
  • configurare pam con ssh per eseguire l'authentication dei due fattori
  • modificare la directory predefinita SCP in `~ / .ssh / config`
  • Replica Secure MySQL; Tunneling SSL o SSH?
  • ssh: "Accesso negato dalla configuration dell'account PAM" per un utente non radice, ma non un altro
  • 3 Solutions collect form web for “bashrc non caricato in shell / bin / bash”

    il file ~/.bashrc viene caricato per le connessioni interattive non di login, ecco perché l'esecuzione di /bin/bash da ssh funziona come ti aspetti.

    Per le shell di accesso (tra le altre) ~ / .bash_profile viene letto. Di solito il tuo ~/.bash_profile contiene qualcosa di simile

     if [ -f ~/.bashrc ]; then . ~/.bashrc fi 

    Che assicura che ~/.bashrc sia caricato se la tua shell è una shell di login.

    Se il tuo ~/.bash_profile contiene il precedente e ~/.bashrc non è in fase di caricamento è ansible eseguire il debug degli script utilizzando set -x come al solito.

    Normalmente quando viene creato un utente copierà un gruppo di file nel nuovo home directory (se si sceglie di crearne uno).

    È ansible controllare la directory /etc/skel per questi file. Dovrebbe essere il file .bash_profile che ci si aspettava.

    Bash legge il gruppo di file a seconda dell'invocazione della shell:

    • Login shell: Fondamentalmente una shell che è collegata ad un tty e proviene da un process di authentication. Questo tipo di shell legge / etc / profile, ~ / .bash_profile, ~ / .bash_login e ~ / .profile
    • Non login – shell interattivo: shell interattivi che si apre senza un process di authentication. Questo tipo di shell legge /etc/bash.bashrc e ~ / .bashrc

    Puoi trovare ulteriori informazioni su: bash bash, sezione INVOCATION

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.