Linux Server Deployment & SSH Mastery · Lezione

Trasferimento sicuro dei file con SCP, SFTP e rsync

Spostate i file tra macchine attraverso il canale SSH crittografato. Confrontate scp, sftp e rsync, imparate le opzioni principali e scegliete lo strumento giusto per copie occasionali, trasferimenti interattivi e sincronizzazioni efficienti.

Lezione 4 di 413 passaggi

Trasferimento sicuro dei file con SCP, SFTP e rsync è una lezione Linux Server Deployment & SSH Mastery gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Linux Server Deployment & SSH Mastery, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Linux Server Deployment & SSH Mastery include 4 lezioni in totale.

Trasferimento di file tramite SSH

Ha acquisito familiarità con tunnel, agent e connessioni multi-hop. La stessa base SSH consente anche trasferimenti di file sicuri — senza richiedere servizi aggiuntivi o porte aperte.

Tre strumenti si basano su SSH: scp per le copie rapide, sftp per le sessioni interattive e rsync per la sincronizzazione efficiente.

scp: copie semplici

scp funziona come cp, ma tra macchine diverse. Il lato remoto utilizza la sintassi user@host:path.

Questo comando carica un file locale sul server.

scp report.pdf deploy@server:/home/deploy/docs/

scp: download e directory

Inverta l'ordine degli argomenti per scaricare i file. Aggiunga -r per copiare intere directory in modo ricorsivo.

scp deploy@server:/var/log/app.log ./
scp -r deploy@server:/etc/myapp ./backup/

scp con porta e chiavi personalizzate

Se il server utilizza una porta non standard, tenga presente che scp usa -P maiuscolo (a differenza di -p minuscolo di ssh). Può anche indicare una chiave specifica con -i.

scp -P 2222 -i ~/.ssh/deploy_key file.txt deploy@server:/tmp/

sftp: trasferimenti interattivi

sftp apre una sessione interattiva simile a un prompt FTP, ma completamente crittografata. Può spostarsi e trasferire file con comandi familiari.

  • put file — carica
  • get file — scarica
  • ls, cd, pwd — navigazione remota
  • lcd, lls — navigazione locale
sftp deploy@server
sftp> cd /var/www
sftp> put index.html
sftp> get backup.tar.gz

Perché rsync è diverso

rsync trasferisce solo le parti dei file che sono cambiate. Nelle esecuzioni successive è molto più veloce di scp, perciò è lo strumento preferito per backup e distribuzioni.

Per impostazione predefinita, funziona inoltre tramite SSH e offre la stessa crittografia.

Uso di base di rsync

Il set di opzioni più comune è -avz:

  • -a — modalità archivio (conserva permessi, date e collegamenti simbolici)
  • -v — modalità dettagliata
  • -z — comprime durante il trasferimento

Questo comando sincronizza una cartella locale con il server.

rsync -avz ./site/ deploy@server:/var/www/site/

Le barre finali sono importanti

In rsync, una barra finale nella sorgente cambia il risultato:

  • src/ — copia il contenuto di src nella destinazione
  • src — copia la directory src stessa nella destinazione

Un errore in questo punto crea cartelle annidate, quindi presti attenzione.

rsync -avz src/  dest/   # contents of src into dest
rsync -avz src   dest/   # creates dest/src/

Creazione di mirror ed esclusione dei file

--delete rende la destinazione un mirror esatto, rimuovendo i file non presenti nella sorgente. Utilizzi --exclude per ignorare determinati percorsi.

Combini sempre queste opzioni con un --dry-run come prima prova.

rsync -avz --delete --exclude '.git' --dry-run ./ deploy@server:/var/www/

rsync con una configurazione SSH personalizzata

Per utilizzare una porta o una chiave non standard, passi un comando ssh esplicito con -e. Questa opzione si integra anche con tutto ciò che ha configurato in ~/.ssh/config.

rsync -avz -e 'ssh -p 2222 -i ~/.ssh/deploy_key' ./ deploy@server:/var/www/

Buone pratiche

Trasferisca i file in modo sicuro ed efficiente:

  • Utilizzi scp per copie rapide eseguite una sola volta
  • Utilizzi sftp quando deve esplorare i file in modo interattivo
  • Utilizzi rsync per sincronizzazioni ripetute e backup
  • Esegua sempre --dry-run prima di --delete

Verifica rapida

Verifichi la Sua conoscenza dei trasferimenti sicuri.

Riepilogo

Ora è in grado di trasferire file in modo sicuro tramite SSH:

  • scp — copie semplici (-r, -P, -i)
  • sftp — sessioni interattive put/get
  • rsync — sincronizzazioni efficienti dei delta con -avz, --delete, --exclude

Tutti e tre riutilizzano le chiavi e la configurazione SSH esistenti, completando il kit di strumenti SSH avanzato.

Gratis per iniziare

Impara Linux Server Deployment & SSH Mastery con un tutor IA — gratis

Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.

Corsi
12
Lezioni
48

Domande Frequenti

La lezione «Trasferimento sicuro dei file con SCP, SFTP e rsync» è gratuita?

Sì — il testo completo di «Trasferimento sicuro dei file con SCP, SFTP e rsync» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Linux Server Deployment & SSH Mastery, passa a CoddyKit PRO. Il corso Linux Server Deployment & SSH Mastery include 4 lezioni in totale.

Cosa imparerò in «Trasferimento sicuro dei file con SCP, SFTP e rsync»?

Spostate i file tra macchine attraverso il canale SSH crittografato. Confrontate scp, sftp e rsync, imparate le opzioni principali e scegliete lo strumento giusto per copie occasionali, trasferimenti… Eserciti Linux Server Deployment & SSH Mastery con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Linux Server Deployment & SSH Mastery?

Non è richiesta alcuna esperienza precedente. Linux Server Deployment & SSH Mastery su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.

Quanto tempo richiede la lezione «Trasferimento sicuro dei file con SCP, SFTP e rsync»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Linux Server Deployment & SSH Mastery?

Sì. Ogni lezione Linux Server Deployment & SSH Mastery include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Port forwarding SSH (locale/remoto)
  2. Tunnel SSH e proxy SOCKS
  3. SSH Agent e connessioni multi-hop
  4. Trasferimento sicuro dei file con SCP, SFTP e rsync
← Torna a Linux Server Deployment & SSH Mastery