Posso ssh na minha conta sem invocar o .profile?

7

Eu quero ssh em minha conta, mas não quero que a versão atual do meu script de login .profile seja executada. Existe uma maneira de efetuar login sem executar o .profile?

(Disclaimer: Eu encontrei uma solução que eu postei abaixo, mas eu me pergunto se há uma resposta melhor)

    
por Jeremy Stein 30.09.2011 / 15:46

3 respostas

11

Você pode executar o seguinte comando:

ssh -t user@host bash --noprofile

onde a opção -t para ssh é forçar a alocação de tty .

    
por enzotib 30.09.2011 / 18:22
3

Isso é o que acabei fazendo:

scp me@machine:.profile .
# Fix .profile
scp .profile me@machine:.
ssh me@machine
    
por Jeremy Stein 30.09.2011 / 15:46
3

Para evitar problemas permanentemente, no meu .bashrc no sistema de destino, tenho:

if [ -z "$SSH_CLIENT" ] ; then  
...
fi

em torno de coisas incompatíveis com ssh. SSH_CLIENT é definido para shells invocados via ssh e não para outros shells.

ssh user@somewhere "env >env.ssh"

passe por cima de somewhere , faça o login como user e:

env >env.local
diff env.local env.ssh
    
O
por waltinator 30.09.2011 / 22:31

Tags