Comment transférer des fichiers d'un serveur Linux à un autre : 3 étapes

Table des matières:

Comment transférer des fichiers d'un serveur Linux à un autre : 3 étapes
Comment transférer des fichiers d'un serveur Linux à un autre : 3 étapes

Vidéo: Comment transférer des fichiers d'un serveur Linux à un autre : 3 étapes

Vidéo: Comment transférer des fichiers d'un serveur Linux à un autre : 3 étapes
Vidéo: Comment afficher l'aperçu des images et l'extension de fichiers 2024, Avril
Anonim

Dans un environnement Linux multi-serveurs, de nombreuses tâches impliquent de déplacer un ou plusieurs fichiers d'un serveur à un autre. Selon le nombre de fichiers que vous devez déplacer, il existe plusieurs commandes qui peuvent vous aider….

Supposons pour ces discussions que nos serveurs sont Alice et Madhat, et que notre utilisateur sur Alice est rabbit, et notre utilisateur sur madhat est Fieldmouse.

Pas

Transférer des fichiers d'un serveur Linux à un autre Étape 1
Transférer des fichiers d'un serveur Linux à un autre Étape 1

Étape 1. Pour un seul fichier, essayez la commande "scp"

Vous pouvez l'utiliser comme une commande "push" ou "pull", mais commençons par envoyer le fichier à l'autre serveur. Sur alice, utilisez la commande "scp myfile fieldmouse@madhat:thatfile". Cela copiera le fichier sur l'autre système, dans l'ID utilisateur de la souris de terrain, avec le nom "ce fichier". Si vous étiez connecté sur l'autre système, vous pouvez tout aussi facilement extraire le fichier avec la commande "scp rabbit@alice:myfile thatfile", et obtenir les mêmes résultats.

Transférer des fichiers d'un serveur Linux à un autre étape 2
Transférer des fichiers d'un serveur Linux à un autre étape 2

Étape 2. Pour copier un répertoire entier, nous pouvons à nouveau nous tourner vers la commande "scp"

Cette fois, nous allons ajouter le commutateur -r, pour que la copie agisse "récursivement". "scp -r mydir fieldmouse@madhat:." copiera l'intégralité du répertoire "mydir" sur l'autre système, y compris tout son contenu et les répertoires supplémentaires. Le répertoire sur madhat sera toujours nommé mydir.

Transférer des fichiers d'un serveur Linux à un autre étape 3
Transférer des fichiers d'un serveur Linux à un autre étape 3

Étape 3. Que faire si vous avez un gros "désordre" de fichiers et de répertoires à copier ?

Vous pouvez utiliser la commande "tar" pour créer un seul fichier, puis copier ce fichier comme ci-dessus, puis utiliser tar pour le développer sur l'autre serveur… Mais cela semblerait être le cas… Unix-like. Il doit y avoir un moyen de le faire en une seule étape, non ? Bien sûr ! Entrez dans les tuyaux de votre coquillage préféré. Nous pouvons toujours utiliser tar pour empaqueter les fichiers que nous voulons, puis utiliser ssh pour les transférer sur l'autre système (ce que scp a utilisé sous les couvertures), et tar de l'autre côté pour étendre les fichiers. Mais pourquoi perdre du temps et de l'espace à créer un fichier tar réel, alors que nous pourrions simplement créer un canal qui s'étend sur les deux systèmes et transférer les données tar à travers lui ?En utilisant le même répertoire que dans l'exemple précédent, essayez "tar -cf - mydir/ * | ssh fieldmouse@madhat 'tar -xf -'"

Des astuces

  • Bien sûr, il y a aussi d'autres façons de le faire. Linux regorge d'outils. Votre kilométrage peut varier
  • Vous devez remplacer le nom d'utilisateur/nom d'hôte/nom de fichier/nom de répertoire en fonction de votre configuration réseau et de votre environnement lors de l'utilisation des commandes ci-dessus. Les commandes affichées ci-dessus ne sont que des exemples d'exécution de commandes pour copier des fichiers sur le serveur.

Conseillé: