Come Trasferire File da un Server Linux a un Altro

In un ambiente con più server Linux, spesso dovrai spostare dei file da un server a un altro. Secondo il numero di file che devi spostare, esistono diversi comandi in grado di aiutarti... In questa guida presumeremo che i nostri server si chiamino alice e cappellaio, e il nostro utente su alice sia coniglio, e su cappellaio topolino.

Passaggi

  1. 1
    Per un singolo file, prova il comando "scp". Puoi usarlo come comando di "push" o "pull", ma iniziamo a spingere il file sull'altro server. Su Alice, usa il comando "scp miofile topolino@cappellaio:quelfile". Questo comando copierà il file sull'altro sistema, con l'userid topolino, e il nome "quelfile". Se hai effettuato l'accesso all'altro sistema, potresti altrettanto semplicemente "tirare" il file con il comando "scp coniglio@alice:miofile quelfile", e ottenere lo stesso risultato.
  2. 2
    Per copiare un'intera cartella, possiamo usare nuovamente il comando "scp". Questa volta aggiungeremo lo switch -r, per rendere l'azione di copia ricorsiva. "scp -r miacartella topolino@cappellaio:." copierà l'intera cartella "miacartella" sull'altro sistema, inclusi tutti i suoi contenuti e le sottocartelle. La cartella su cappellaio avrà sempre il nome miacartella.

Se invece volessi copiare molti file "disordinati" e delle cartelle? Potresti usare il comando "tar" per creare un solo file, e poi copiarlo con il metodo precedente, poi usare nuovamente tar per espanderlo sull'altro server. Ma questo non è un metodo in stile Unix. Deve esserci un modo per farlo in un solo passaggio vero? Ed è così! Apri la tua shell preferita. Possiamo comunque usare tar per compattare i file che vogliamo spostare, e poi usare ssh per trasferirli sull'altro sistema (il metodo usato da scp), e tar sul secondo server per espanderli. Perché però sprecare tempo e spazio per creare un vero file tar, quando potremmo semplicemente creare un pipe tra i due sistemi dove trasferire i dati tar? Usando la stessa cartella dell'esempio precedente, prova "tar -cf - miacartella/* | ssh topolino@cappellaio 'tar -xf -'"

Consigli

  • Dovresti sostituire i nomi utenti, i nomi degli host, i nomi dei file, i nomi delle cartelle secondo la tua configurazione di rete quando userai i comandi precedenti. I comandi mostrati in precedenza sono solo esempi di comandi utili per copiare file tra server.
  • Naturalmente ci sono molti altri metodi per ottenere lo stesso risultato. Linux offre moltissimi strumenti. .

Avvertenze

  • Assicurati che l'UID e il GID dei sistemi che stai usando siano corretti. Se non fosse così, potrebbero insorgere problemi di sicurezza.

Informazioni sull'Articolo

wikiHow è una "wiki"; questo significa che molti dei nostri articoli sono il risultato della collaborazione di più autori. Per creare questo articolo, autori volontari hanno collaborato apportando nel tempo delle modifiche per migliorarlo.

Categorie: Linux

In altre lingue:

English: Transfer Files from One Linux Server to Another, Español: transferir archivos desde un servidor Linux hacia otro, Русский: передавать файлы с одного Linux сервера на другой, Português: Transferir Arquivos de um Servidor do Linux para Outro

Questa pagina è stata letta 6 347 volte.
Hai trovato utile questo articolo?