Bonjour,
Je souhaite automatiser des tâches pour le transfert des fichiers d'un serveur à un autre. Je ne suis pas un habitué de linux. on m'a conseiller d'utitiliser le protocole SCP pour synchroniser l'export de mes fichier.
Je suppose que je doit avoir une commande pour me connecter au serveur distant et une autre pour automatiser l'export des fichiers.
Pouvez vous m'aider pour les commandes SVP?
bonjour, en effet tu as SCP ou rsync. Les deux s'appuient sur le protocole SSH (entre autres). Il te faut donc une connection ssh entre les deux serveurs pour pouvoir exploiter ces deux logiciels.
exemple SCP : pour envoyer tout les fichiers de façon recursive présent dans le dossier :/path/to/folder/have/to/be/sync
vers le dossier /path/on/my/remote/server/storage
du serveur myserver.ltd
via l'utilisateur myuser
scp -r /path/to/folder/have/to/be/sync myuser@myserver.ltd:/path/on/my/remote/server/storage
exemple Rsync : même chose que ci-dessus mais de façon incrémentale et différentiel (comme Git), il n'envoie que les fichiers qui on changé (create/update/delete). Ce qui est moins gourmand en ressource.
rsync -avHe ssh /path/to/folder/have/to/be/sync myuser@myserver.ltd:/path/on/my/remote/server/storage
Maintenant pour que ça soit automatique, tu dois t'authentifier avec une clé RSA ssh :
1/ suivre ce tuto : https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/
2/ utiliser le fichier config pour ssh :
Créé un fichier dans ~/.ssh/config
Host myserver
Hostname mydomain-or-ip.com
User myuser
IdentityFile ~/.ssh/id_rsa_mykey
adapter le fichier ci-dessus avec dans l'ordre :
sur le serveur distant : ajoute ta clé publique à la fin du fichier ~/.ssh/config/authorized_keys2
où ~ et le répertoire home de ton user.
Voilà ! j'espère que tu vas t'en sortir :)