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 .zshrc
arquivo 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
.zshrc
no 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 LocalCommand
para 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 config
arquivo qual comando executar remotamente após a conexão com o servidor, mas parece não haver nenhum.
.zshrc
em 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 zsh
acabamentos 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?