Linux

Comment copier un fichier d’une VM à une autre sous Linux ?

Pour transférer des fichiers entre machines virtuelles (VM) sous Linux, plusieurs méthodes peuvent être mises en œuvre, selon vos préférences et l’environnement de votre système. Voici une approche détaillée en plusieurs étapes pour faciliter cette tâche.

Configurer l’accès entre VMs

Avant de commencer à copier des fichiers, il est essentiel de s’assurer que les machines virtuelles sont bien configurées pour communiquer entre elles. Cela inclut :

  1. Vérifiez la connectivité réseau : Assurez-vous que les deux VM sont sur le même réseau, ce qui peut nécessiter la configuration d’une interface réseau en mode pont ou NAT selon votre logiciel de virtualisation.
  2. Installer un serveur SSH : Si ce n’est pas déjà fait, installez un serveur SSH sur la VM cible. Cela peut être réalisé en utilisant des commandes comme sudo apt install openssh-server sur Debian ou Ubuntu.
  3. Obtenez l’adresse IP : Utilisez ip addr ou ifconfig sur la VM cible pour récupérer son adresse IP. Vous en aurez besoin pour le transfert.

Comment copier un fichier d’une VM à une autre sous Linux

La méthode la plus courante pour transférer des fichiers entre VMs consiste à utiliser le protocole SSH avec la commande SCP (Secure Copy Protocol). Voici les étapes à suivre :

  1. Ouvrir le terminal : Lancez un terminal sur la VM source, celle d’où vous voulez copier le fichier.
  2. Utiliser la commande SCP : La syntaxe de base pour copier un fichier est la suivante :
    scp /chemin/vers/le/fichier utilisateur@adresse_IP_de_la_VM_cible:/chemin/de/destination
    Remplacez /chemin/vers/le/fichier par le chemin complet du fichier que vous souhaitez copier, utilisateur par le nom d’utilisateur sur la VM cible et adresse_IP_de_la_VM_cible par l’adresse IP de la VM cible. Spécifiez également le chemin de destination sur la VM cible.
  3. Entrer le mot de passe : Lorsque vous exécutez la commande, il vous sera demandé de saisir le mot de passe de l’utilisateur sur la VM cible. Entrez-le pour autoriser la connexion.
A lire :  Comment arrêter une instance DB2 sous Linux ?

Transférer des fichiers par SFTP

Une autre méthode utile est l’utilisation de SFTP (Secure File Transfer Protocol). Voici comment procéder :

  1. Ouvrir un terminal : Sur la VM source, ouvrez un nouveau terminal.
  2. Lancer SFTP : Tapez la commande suivante pour établir une connexion avec la VM cible :
    sftp utilisateur@adresse_IP_de_la_VM_cible
  3. Transférer le fichier : Une fois connecté, vous pouvez utiliser la commande put pour transférer un fichier :
    put /chemin/vers/le/fichier /chemin/de/destination

Copier des fichiers via un partage de dossiers

Une autre approche consiste à configurer un dossier partagé entre les VMs. Cela peut être fait par le biais de l’environnement de virtualisation. Voici comment le faire :

  1. Accéder aux paramètres de votre VM : Dans votre logiciel de virtualisation (comme VirtualBox ou VMware), sélectionnez la VM que vous souhaitez configurer et accédez à ses paramètres.
  2. Configurer un dossier partagé : Allez dans l’onglet des dossiers partagés et choisissez le dossier de votre hôte que vous souhaitez partager. Assurez-vous que le partage est défini sur « Automatique ».
  3. Monter le dossier partagé : Sur la VM Linux, vous devrez monter le dossier en utilisant une commande comme sudo mount -t vboxsf nom_du_dossier_partagé /point/de/montage. Le point de montage doit être un répertoire accessible sur la VM.
  4. Copier les fichiers : Une fois le dossier monté, vous pouvez simplement copier des fichiers directement dans le dossier partagé avec des commandes comme cp.

FAQ

Q1 : Peut-on copier des fichiers sans utiliser SSH ?
Oui, vous pouvez utiliser des partages de dossiers ou des outils comme FTP, mais SSH est généralement recommandé pour sa sécurité.

Q2 : Quelles permissions sont nécessaires pour copier des fichiers ?
L’utilisateur doit avoir les permissions nécessaires sur les fichiers à copier et sur la destination.

A lire :  Comment puis-je me connecter à une commande sous Linux ?

Q3 : Que faire si le transfert échoue ?
Vérifiez la connectivité réseau, assurez-vous que le service SSH est en cours d’exécution sur la VM cible et que le pare-feu n’empêche pas les connexions.