Fév
21
2008

SSH : COpier un fichier avec la commande scp


1. Définition

La commande scp permet de copier un fichier ou un répertoire (-r) du client vers le serveur ou du serveur vers le client. Le chemin du serveur peut être indiqué en absolu (/home/dupont/Repertoire par exemple) ou relatif à partir du répertoire de base Repertoire. Pour utiliser scp, vous devez connaître l’arborescence exacte des répertoires de la machine distante. Il est impératif que SSH soit installé sur les deux machines devant communiquer pour effectuer votre transfert.
Attention: il sera nécessaire de donner votre mot de passe car au Centre de Calcul, il n’est pas possible de faire une authentification par échange de clés SSH (voir se connecter au Centre de Calcul avec SSH).

2. Usage

scp [-pqrvBC1246] [-F ssh_config] [-S program] [-P port] [-c cipher]
    [-i identity_file] [-l limit] [-o ssh_option] [[user@]host1:]file1
    [...] [[user@]host2:]file2

3. Syntaxe

  • Copie d’un fichier d’une machine serveur1 vers une autre machine serveur2:
    > scp Login1@Serveur1:Chemin1/NomFichier1 Login2@Serveur2:Chemin2/NomFichier2
  • Copie d’un fichier depuis le répertoire courant vers un répertoire du serveur:
    > scp Fichier login@serveur:Chemin
  • Copie d’un répertoire, avec éventuellement ses sous-répertoires, vers un répertoire du serveur:
    > scp -r Repertoire login@serveur:Chemin
  • Copie d’un fichier du serveur vers le répertoire courant:
    > scp login@serveur:Chemin/Fichier .
  • Copie d’un répertoire du serveur vers le répertoire courant:
    > scp -r login@serveur:Chemin/Repertoire .

4. Exemple

> scp [email protected]:/afs/in2p3.fr/home/c/calvat/Readme.txt .

copie le fichier Readme.txt de /afs/in2p3.fr/home/c/calvat sur ccali.in2p3.fr vers le répertoire local courant.

> scp -r [email protected]:/afs/in2p3.fr/home/c/calvat/toto .

copie le répertoire toto et les sous-répertoires attachés de /afs/in2p3.fr/home/c/calvat sur ccali.in2p3.fr vers le répertoire local courant.

Au sujet de l'auteur: Olivier Legras

Auteur de ce Blog, je partage quelques unes de mes notes que je juge utile à vous comme à moi. Je suis très heureux de voir que mon blog a de plus en plus d'affluence. Merci à vous!

3 Comments + Add Comment

  • Merci Olivier, même quand t’es pas la tu m’aide 🙂

    Une méthode pour transféré sans mot de passe:

    1/(à faire sur la machine qui doit se connecter)
    ==> générer une clé ssh publique “ssh-keygen -t dsa -b 1024”
    /!\ ne pas mettre de passphrase sinon il faut la rentrer à chaque fois et la manip ne sert donc plus a rien.

    2/Sur le serveur distant: mettre la clé dans ~/.ssh/ de l’user que l’on va utiliser pour les transfères avec pour nom de fichier authorized_keys et un chmod600

    /!\attention éviter dans la mesure du possible de le mettre dans le home de root pour des raisons de sécurité .

    Et normalement après ça, plus besoins de taper le mot de passe.

  • Un petit coucou de corse 😉

    J’avais déjà fais un petit article sur le sujet 😉
    http://www.croc-informatique.fr/2008/03/acceder-en-ssh-sans-mot-de-passe/

    Aller ++ et retourne travailler!!

  • merci, xa ma bcp aidé. je l’ai appliqué à la lettre et xa marché.
    Courage à toi.

Laissez un commentaire