Come Trasferire File da un Server Linux a un Altro

Esplora questo Articolo Passaggi Articoli Correlati

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

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 5 658 volte.
Hai trovato utile questo articolo?