Estoy en una situación en la que varios usuarios comparten la misma cuenta de usuario en una máquina remota. Tengo un directorio "personal" donde escribí mi propio .zshrc
archivo, y me gustaría tener una manera de:
- Iniciar una sesión ssh en la máquina remota con directivas de mi archivo de configuración ssh (por ejemplo
ControlMaster auto
) - Esta sesión ejecuta un shell Z
- Se ejecuta
.zshrc
en mi directorio "personal" (no en el directorio de inicio del usuario compartido)
Sería bueno tener un alias o una forma simple de iniciar tales sesiones ssh (por eso pensé en usar el archivo de configuración de OpenSSH), ¡pero estoy abierto a cualquier otra idea!
¿Usando el archivo de configuración de OpenSSH?
Leí en la página de manual ssh_config de OpenSSH que puedo usar la directiva LocalCommand
para especificar un comando que se ejecute localmente después de conectarse con éxito al servidor. Esto me hizo pensar que puede haber una manera de decirle al config
archivo qué comando ejecutar de forma remota después de conectarse al servidor, pero no parece haber ninguno.
.zshrc
directorio específico (es decir, un directorio personal "personal"). Lo intenté ssh -t host_name 'zsh & source /path/to/my_zshrc'
pero no funcionó (lo conseguí FPATH variable not defined
, y creo que es porque zsh
termina antes de que se ejecute my_zshrc
, y mucho menos esto no me dio un Z shell)
ssh mycommand
? Y si desea ejecutar algún comando de configuración antes de cada comando que viene sobre ssh, ¿por qué no configurar el lado del servidor?