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.