Estou em uma situação em que vários usuários estão compartilhando a mesma conta de usuário em uma máquina remota. Eu tenho um diretório "pessoal" onde escrevi meu próprio .zshrcarquivo e gostaria de ter uma maneira de:
- Iniciar uma sessão ssh na máquina remota com diretivas do meu arquivo de configuração ssh (por exemplo
ControlMaster auto) - Esta sessão executa um shell Z
- Ele executa um
.zshrcno meu diretório "pessoal" (não no diretório inicial do usuário compartilhado)
Seria bom ter um apelido ou uma maneira simples de iniciar essas sessões ssh (é por isso que pensei em usar o arquivo de configuração do OpenSSH), mas estou aberto a outras idéias!
Usando o arquivo de configuração do OpenSSH?
Li na página do manual ssh_config do OpenSSH que posso usar a diretiva LocalCommandpara especificar um comando a ser executado localmente após a conexão bem-sucedida ao servidor. Isso me fez pensar que pode haver uma maneira de dizer ao configarquivo qual comando executar remotamente após a conexão com o servidor, mas parece não haver nenhum.
.zshrcem um diretório específico (ou seja, um diretório pessoal "pessoal"). Eu tentei ssh -t host_name 'zsh & source /path/to/my_zshrc', mas não deu certo (eu tenho FPATH variable not defined, e eu acho que é porque zshacabamentos antes de executar my_zshrc, e muito menos isso não me dar um shell Z)
ssh mycommand? E se você deseja executar algum comando de instalação antes de todo comando que vem sobre o ssh, por que não configurar o lado do servidor?