Comment transférer des fichiers entre deux ordinateurs à l'aide de commandes NC et PV

Comment transférer des fichiers entre deux ordinateurs à l'aide de commandes NC et PV

Salut les lecteurs de Linux, je vous apporte encore un autre excellent article de notre série Linux Tips and Tricks, cette fois, nous utiliserons deux utilitaires Linux moins connus que vous devriez connaître.

Cet article expliquera comment transférer des fichiers entre deux ordinateurs Linux en utilisant NC (utilitaire de réseautage) et PV (visionneuse de tuyaux) Commandes, avant de déménager, laissez-moi expliquer quelles sont ces deux commandes.

Transférer des fichiers entre les serveurs Linux

NC représente Netcat et soulignent souvent comme «couteau suisse"Est un outil de réseautage utilisé pour le débogage du réseau et l'enquête et il est également utilisé pour créer des connexions réseau à l'aide de TCP ou UDP, analyse de port, transfert de fichiers et plus. Il est créé pour être un back-end fiable et spécialement utilisé dans les programmes et les scripts, car il peut générer presque n'importe quel type de connexion réseau et a un certain nombre de fonctionnalités intégrées.

PV Dans un court métrage, la visionneuse de tuyaux est un outil basé sur le terminal pour surveiller les progrès des données envoyées par un pipeline, il permet à un utilisateur de voir la progression des données avec la barre de progression, montre le temps écoulé, le pourcentage terminé, le taux de débit actuel, le total des données transférées et estimées Il est temps de terminer le processus.

Comment surveiller la progression des données à l'aide de la commande PV (pipe Viewer)

Voyons maintenant plus loin et voyons comment nous pouvons combiner les deux commandes pour transférer des fichiers entre deux ordinateurs Linux, aux fins de cet article, nous utiliserons deux machines Linux comme suit:

Machine A avec IP: 192.168.0.4 machine B avec IP: 192.168.0.7 

Note: Je conseille fortement de ne pas utiliser netcat Pour envoyer et recevoir des données sur le réseau pubien, car il n'utilise aucune connexion ou authentification, la seule exigence est le numéro de port IP et l'écoute du client et les données envoyées par le réseau ne sont pas sécurisées. et préféré à utiliser sur le réseau local protégé.

Situations où la sécurité des données est plus importante, puis utilisez toujours RSYNC sur SSH ou SCP sur SSH.

Commençons maintenant par un vrai exemple facile de NC et PV commandes, mais avant de le faire, les deux utilitaires doivent être installés sur le système, sinon les installer en utilisant votre outil de gestion de package de distribution respectif comme suggéré:

# yum install netcat pv [on Chapeau rouge Systèmes basés] # DNF Installer NetCat PV [sur Fedora 22+ versions] # apt-get install netcat pv [on Debian et ses dérivés] 

Comment transférer des fichiers entre deux machines Linux?

Supposons que vous souhaitez envoyer un grand fichier appelé CentOS-7-X86_64-DVD-1503.ISO de l'ordinateur UN pour B sur le réseau, le moyen le plus rapide d'y parvenir en utilisant NC Un utilitaire réseau utilisé pour envoyer des fichiers sur le réseau TCP, PV pour surveiller les progrès des données et le goudron Utilité pour compresser les données pour améliorer la vitesse de transfert.

Sur la machine Linux A

Premier connexion dans la machine 'UN'Avec l'adresse IP 192.168.0.4 et exécutez la commande suivante.

# TAR -ZCF - CENTOS-7-X86_64-DVD-1503.ISO | PV | NC -L -P 5555 -Q 5 
Commande netcat pour envoyer des fichiers

Permettez-moi d'expliquer les options utilisées dans la commande ci-dessus:

  1. tar -zcf = TAR est un utilitaire d'archives de bande utilisé pour comprimer / débarrasser des fichiers et arguments d'archives -c crée un nouveau .Fichier d'archive de goudron, -F Spécifiez le type du fichier d'archive et -z Filtre des archives via GZIP.
  2. CentOS-7-X86_64-DVD-1503.ISO = Spécifiez le nom de fichier à envoyer sur le réseau, il peut être un fichier ou un chemin vers un répertoire.
  3. PV = Visionneuse de tuyaux pour surveiller les progrès des données.
  4. NC -L -P 5555 -Q 5 = Outil de réseautage utilisé pour envoyer et recevoir des données sur TCP et les arguments -l utilisé pour écouter une connexion entrante, -P 555 Spécifie le port source à utiliser et -Q 5 attend le nombre de secondes puis quitte.

Sur la machine Linux B

Maintenant, connectez-vous à la machine 'B'Avec l'adresse IP 192.168.0.7 et exécutez la commande suivante.

# NC 192.168.1.4 5555 | PV | tar -zxf - 
Transférer des données à l'aide de la commande NC et PV

Voilà, le fichier est transféré sur ordinateur B, Et vous pourrez voir à quelle vitesse l'opération se déroulait. Il y a des tonnes d'autres autres grandes utilisations de NC (pas encore couvert, mais j'écrira bientôt) et PV (Nous avons déjà couvert un article de détail à ce sujet ici) Commandes, si vous en savez un exemple, veuillez nous en informer via des commentaires!