💾 Archived View for bwog-notes.chagratt.site › 2020 › alias-ssh-avec-rsync › index.gmi captured on 2021-12-04 at 18:04:22. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2021-11-30)
-=-=-=-=-=-=-
Rédigé le 8 avril 2020. Étiquettes : ssh rsync
La commande rsync sait travailler avec ssh.
Il est même possible de définir des options comme le port, l'utilisateur, une clef, etc.
Jusque là, rien de nouveau.
Par contre si on ne fait pas gaffe, on se retrouve vite avec des commandes longues, du style :
rsync -av --delete -e 'ssh -p 2222 -i ~/.ssh/ma_clef' ${PUBLICDIR} user@mon_host:${REMOTE_WEBDIR}
Quand bien même ces lignes sont placées dans des scripts (ou des alias shell ... beuark),
ça va rapidement devenir un enfer à gérer en cas de changement de paramètres.
Heureusement, on peut configurer ssh pour se faciliter la vie.
Et rendre le tout bien plus propre aussi.
Pour tout avouer, j'ai longtemps fait ça sans rien changer ...
Même après avoir vu passer
.
Mais aujourd'hui, je me suis enfin décider à nettoyer tous ces scripts et à les rendre plus propre.
Même s'il y a énormément d'options possibles, concrètement c'est très simple à faire.
Dans mon cas, un simple vim ~/.ssh/config avec le contenu suivant[^1] :
Host mon_host HostName mon_host.tld (ou bien l'IP) User user Port 2222 IdentityFile ~/.ssh/ma_clef
Après ça, la ligne dans les script devient beaucoup plus courte et lisible :
rsync -av --delete -e ssh ${PUBLICDIR} mon_host:${REMOTE_WEBDIR}
Et pour se connecter en ssh, on peut directement faire ssh mon_host.
Bonus sympa : il y a (en fonction de la configuration de votre shell) de l'auto complétion sur le nom défini dans l'alias.
Plus d'excuses pour ne pas en faire !
[^1]: Ouais enfin un exemple hein, n'exagérons pas !
-------------------------------
← Plus récent : Différence entre 2 dates en python
→ Plus ancien : Vim et les sauts de ligne en recherche & remplacement
Aléatoire : RPM : Dépendance non satisfaite sur un chemin
Contenu sous licence CC-BY-SA