SLBCloud
Débutant6 min de lecture

Transférer des fichiers vers son serveur

scp, sftp, rsync et les clients graphiques : quand utiliser lequel, et comment reprendre un transfert interrompu.

Tous ces outils passent par SSH : si votre connexion SSH fonctionne, le transfert fonctionne, sans rien ouvrir de plus dans le pare-feu. Le vieux FTP, lui, fait transiter les mots de passe en clair et demande des ports supplémentaires — il n'y a plus de raison de s'en servir.

scp, pour un fichier ou deux

bash
# Envoyer un fichier
scp site.zip [email protected]:/var/www/

# Récupérer un fichier
scp [email protected]:/var/log/nginx/error.log .

# Un dossier entier
scp -r ./mon-site [email protected]:/var/www/

rsync, pour tout le reste

rsync ne transfère que ce qui a changé, reprend là où il s'est arrêté et sait supprimer à distance ce qui a disparu chez vous. Dès qu'un transfert dépasse quelques fichiers, c'est le bon outil.

bash
rsync -avz --progress ./mon-site/ [email protected]:/var/www/mon-site/

La barre oblique finale change tout

mon-site/ copie le contenu du dossier ; mon-site sans barre copie le dossier lui-même, et vous vous retrouvez avec /var/www/mon-site/mon-site. C'est le piège classique de rsync. Ajoutez --dry-run pour voir ce qui se passerait avant de le faire vraiment.

Miroir exact

Avec --delete, la destination devient la copie conforme de la source : ce qui n'existe plus chez vous est effacé là-bas. Puissant, et dangereux si l'on se trompe de chemin.

bash
rsync -avz --delete --dry-run ./mon-site/ [email protected]:/var/www/mon-site/

Avec une fenêtre plutôt qu'un terminal

  • WinSCP, sous Windows : deux panneaux, glisser-déposer, et il gère les clés SSH.
  • FileZilla, partout : choisissez bien SFTP et non FTP dans le protocole.
  • Cyberduck, sous macOS.
  • Sous Linux, le gestionnaire de fichiers ouvre directement sftp://203.0.113.10.

Les droits après transfert

Un fichier déposé appartient à l'utilisateur qui l'a envoyé. Si votre serveur web ne le lit pas, c'est souvent là qu'est le problème : donnez-le au bon propriétaire avec chown www-data:www-data.

Bloqué malgré tout ? Ouvrez un ticket : on répond en français, et on regarde votre machine si besoin.

Ouvrir un ticket