Je suis dans une situation où plusieurs utilisateurs partagent le même compte d'utilisateur sur une machine distante. J'ai un répertoire "personnel" où j'ai écrit mon propre .zshrc
fichier, et j'aimerais avoir un moyen de:
- Démarrer une session ssh dans la machine distante avec les directives de mon fichier de configuration ssh (par exemple
ControlMaster auto
) - Cette session exécute un shell Z
- Il exécute un
.zshrc
dans mon répertoire "personnel" (pas sur le répertoire personnel de l'utilisateur partagé)
Ce serait bien d'avoir un alias ou un moyen simple de démarrer de telles sessions ssh (c'est pourquoi j'ai pensé à utiliser le fichier de configuration d'OpenSSH), mais je suis ouvert à toute autre idée!
Vous utilisez le fichier de configuration d'OpenSSH?
J'ai lu sur la page de manuel ssh_config d'OpenSSH que je peux utiliser la directive LocalCommand
pour spécifier une commande à exécuter localement après une connexion réussie au serveur. Cela m'a fait penser qu'il peut y avoir un moyen de dire au config
fichier quelle commande exécuter à distance après la connexion au serveur, mais il ne semble pas y en avoir.
.zshrc
dans un répertoire spécifique (c'est-à-dire un répertoire personnel "personnel"). J'ai essayé ssh -t host_name 'zsh & source /path/to/my_zshrc'
mais cela n'a pas fonctionné (je l'ai eu FPATH variable not defined
, et je pense que c'est parce qu'il zsh
termine avant qu'il ne fonctionne my_zshrc
, encore moins que cela ne m'a pas donné de coque Z)
ssh mycommand
? Et si vous souhaitez exécuter une commande de configuration avant chaque commande qui vient sur ssh, pourquoi ne pas configurer le côté serveur?