Era uma vez, uma chamada ssh para host1 como ssh u@host1 command iria ler .bashrc antes de executar command . host2 é administrado pelas mesmas pessoas e lê .bashrc!
Eu não administro host1 ou host2 , mas em algum momento nos últimos 6 meses parece que esse comportamento mudou.
Parece agora que o arquivo no rc está sendo lido no login: eu editei .profile, .bash_profile, .bashrc, .login para acrescentar seu nome a uma variável quando lida ( export READ=$READ:.profile )
Os resultados me surpreenderam:
> ssh u@host1
bash3.2> echo $READ
:.bash_profile:.profile
Como eu esperava.
> ssh u@host1 echo \$READ
>
Então agora estou preso. Alguma sugestão sobre como isso poderia estar acontecendo? Este é um problema de configurações do SSHd?
E apenas para informações: host2 está executando uma versão do OpenSSH ainda mais antiga que host1 e ambas estão executando a mesma versão bash. host1 executa AIX, host2 executa linux.
Editar : não consigo alterar a linha de comando ssh porque o objetivo aqui é fazer com que git funcione corretamente, para alguns usuários não superusuários, em que git está instalado (por outros motivos) em um caminho não padrão. A relação com essa questão é que, como a localização de git-unpack está especificada em .bashrc , git clone deste controle remoto parou de funcionar. Portanto, o problema RC precisa ser corrigido, porque estou tentando configurá-lo para não superusuários e, portanto, git-clone -u não é realmente uma resposta satisfatória.