Commande cp sous Linux : copier fichiers et dossiers en local

Dans un terminal Linux, la commande cp duplique des fichiers sans supprimer l’original. Sa forme la plus courante est cp source destination : par exemple, cp rapport.txt rapport-copie.txt crée un second fichier dans le répertoire courant.

Pour copier plusieurs fichiers, indiquez leurs noms avant le répertoire cible : cp config.conf notes.txt /home/camille/archives/. La destination doit alors être un dossier existant. Les caractères génériques, comme l’astérisque, permettent aussi de sélectionner rapidement des fichiers correspondants.

Pour copier un dossier et son contenu, l’option -r active la récursivité. L’option -a est pratique pour une sauvegarde, car elle conserve la structure et plusieurs attributs, notamment les liens symboliques et les permissions, dans la mesure permise par les droits de l’utilisateur.

Une copie simple ne garantit pas la conservation de toutes les métadonnées. Avant de dupliquer un dossier de configuration ou des scripts exécutables, choisissez donc explicitement l’option adaptée plutôt que de supposer que les permissions resteront identiques.

Options utiles pour la copie de fichiers :

  • -r : copie récursive des dossiers et de leur contenu
  • -a : copie en mode archive, avec préservation étendue des attributs
  • -i : demande confirmation avant certains écrasements
  • -n : empêche l’écrasement des fichiers existants
  • -u : copie si la destination est absente ou plus ancienne que la source
  • -v : affiche les fichiers traités pendant l’opération
A lire également :  Installation Windows 11 sans internet : la procédure

Copie de dossiers avec cp : options et précautions

Une fois la syntaxe de base comprise, la copie récursive demande surtout de contrôler le contenu et la destination. Sans -r ou -a, cp ne copie pas un dossier et signale généralement qu’il s’agit d’un répertoire.

Imaginez que Camille prépare une archive locale de son projet avant une mise à jour. Elle peut utiliser cp -a projet/ sauvegarde-projet/, puis comparer les deux répertoires. Pour une sélection de documents, une commande comme cp *.pdf archives/ copie les fichiers PDF du dossier courant.

Avant une opération volumineuse, vérifiez l’espace disponible avec df -h. Une copie interrompue par un disque plein peut laisser une destination incomplète, ce qui rend préférable une vérification après l’opération, surtout pour des données importantes.

Contrôles utiles avant une copie locale :

  • Vérifier que la source existe et que son chemin est correct
  • Confirmer que le répertoire de destination est bien celui souhaité
  • Contrôler l’espace disponible avec df -h
  • Protéger les fichiers existants avec -i ou -n
  • Employer -a lorsque les attributs comptent pour la sauvegarde

Le tableau compare des commandes courantes, sans remplacer la vérification du contexte : les droits disponibles et le comportement voulu déterminent l’option à retenir.

Commande Usage Point de vigilance
cp fichier cible Copier un fichier localement La destination peut être écrasée
cp -r dossier cible Dupliquer un dossier et son contenu Vérifier la taille et l’espace disque
cp -a dossier cible Copier en préservant davantage d’attributs Certains attributs dépendent des permissions
cp -n source cible Éviter de remplacer une destination existante Les fichiers déjà présents restent inchangés

rsync ou cp : choisir selon la synchronisation de fichiers

Lorsque les mêmes données doivent être copiées plusieurs fois, rsync répond souvent mieux au besoin que cp. Il compare la source et la destination et peut éviter de retransférer inutilement les fichiers déjà à jour, ce qui est utile pour les sauvegardes récurrentes.

A lire également :  Wake on LAN Windows 11 : le réglage expliqué

La commande rsync -av source/ destination/ associe le mode archive à un affichage détaillé. La barre oblique finale après le nom de la source signifie que le contenu du dossier est envoyé dans la destination ; sans elle, rsync peut créer le dossier source lui-même dans le répertoire cible.

Pour simuler une opération avant de l’exécuter, ajoutez -n, aussi appelé mode à blanc. Examinez attentivement la sortie, car l’option –delete peut supprimer dans la destination les éléments absents de la source.

Repères pour choisir entre les deux outils :

  • cp : duplication locale ponctuelle et simple
  • rsync : synchronisation répétée ou copie de grandes arborescences
  • rsync -n : aperçu des changements sans les appliquer
  • rsync –delete : alignement avec la source, avec suppression possible côté destination
Besoin Outil conseillé Pourquoi
Dupliquer rapidement un fichier local cp Syntaxe courte et directe
Actualiser régulièrement un dossier rsync Compare les éléments de la source et de la cible
Prévisualiser une synchronisation rsync -n Permet d’inspecter les changements envisagés
Envoyer un fichier vers un serveur SSH rsync ou scp Les deux peuvent utiliser une connexion SSH

scp sous Linux : transfert de fichiers avec SSH

Pour déplacer un fichier entre deux machines, scp utilise une connexion SSH. La syntaxe reprend l’ordre de cp : source d’abord, destination ensuite. Un emplacement distant s’écrit généralement utilisateur@serveur:/chemin.

Pour envoyer un fichier, utilisez par exemple scp rapport.txt camille@serveur:/tmp/. Pour le récupérer, inversez les arguments : scp camille@serveur:/var/log/application.log ./. Copier un dossier nécessite l’option -r, comme avec cp.

Attention à la différence entre -P et -p. La majuscule indique un port SSH personnalisé, par exemple scp -P 2222 fichier.txt utilisateur@serveur:/tmp/, tandis que la minuscule préserve certaines permissions et dates.

A lire également :  Identifier appareil avec adresse MAC : en une minute

Gestes pratiques pour un transfert distant :

  • Tester d’abord la connexion avec ssh utilisateur@serveur
  • Employer -r pour envoyer un répertoire complet
  • Utiliser -P pour préciser un port SSH différent
  • Encadrer les chemins contenant des espaces avec des guillemets
  • Vérifier les droits d’écriture sur le dossier distant

Le tableau ci-dessous résume les principales formes de transfert. Dans chaque cas, repérez le préfixe distant pour savoir quelle machine fournit le fichier.

Direction Exemple Résultat
Local vers distant scp fichier.txt user@hote:/tmp/ Envoie le fichier vers l’hôte
Distant vers local scp user@hote:/tmp/fichier.txt . Récupère le fichier dans le dossier courant
Dossier vers distant scp -r projet/ user@hote:/srv/ Transfère le répertoire récursivement
Port SSH personnalisé scp -P 2222 fichier.txt user@hote:/tmp/ Utilise le port indiqué pour SSH

Quand préférer cp, rsync, scp ou dd sous Linux

Ces commandes ne répondent pas au même niveau de besoin. cp convient à la copie locale, rsync à la synchronisation de fichiers, et scp aux transferts ponctuels entre machines accessibles en SSH.

dd intervient dans un autre contexte : il copie des blocs de données et sert notamment à créer ou écrire des images disque. Une erreur de périphérique dans sa commande peut endommager des données ; il ne remplace donc pas cp pour dupliquer des documents ordinaires.

Pour un transfert régulier ou volumineux vers un serveur, rsync peut être préférable, car il sait reprendre certaines opérations et limiter les données à recopier. Avec scp, une interruption peut obliger à relancer le transfert ; choisissez donc l’outil selon la fréquence et la taille des échanges.

En pratique, gardez ces repères :

  • Copie locale simple : cp
  • Copie locale avec attributs préservés : cp -a
  • Sauvegarde ou synchronisation récurrente : rsync
  • Transfert distant ponctuel via SSH : scp
  • Image ou clonage de blocs disque : dd, avec vérification stricte des périphériques

Avant de valider une commande, relisez toujours la source, la destination et les options. Cette vérification courte évite les écrasements accidentels et aide à choisir l’outil adapté, que la copie passe par un terminal Linux local ou par le réseau.