Come utilizzare il comando SCP in Linux

Come utilizzare il comando SCP in Linux
I sistemi Linux e Unix sono ben noti per la loro sicurezza e consentono il trasferimento di file in modo sicuro. È possibile utilizzare il suo strumento SCP (Copy Copy) per il trasferimento di file e directory attraverso il sistema in modo sicuro. Il comando SCP creerà una connessione SSH nel backend durante la copia dei file/directory dal sistema locale al sistema remoto o viceversa. Significa che lo SCP funziona sullo stesso meccanismo della sicurezza SSH, come protezione da password o autenticazione utilizzando le chiavi.

I comandi SCP vengono utilizzati senza sforzo sui sistemi Linux/Unix. È possibile utilizzare il comando SCP in molti casi; Abbiamo menzionato alcuni esempi pratici.

Sintassi del comando SCP

È possibile utilizzare la sintassi seguente durante l'esecuzione dei comandi SCP sullo strumento di riga di comando. La sintassi seguente aiuta a trasferire i file o le directory richiesti dal dispositivo locale al sistema remoto.

# SCP utente@target_host:/

La sintassi seguente aiuta a trasferire i file o le directory dalla posizione remota al sistema locale.

# SCP utente@target_host:/files

Opzioni di comando SCP

Di seguito sono riportate alcune opzioni insieme al comando SCP per vari uso.

  • -C Questa opzione abilita la compressione
  • -I questa opzione aiuterà a identificare file o chiave privata
  • -l Questa opzione aiuterà a limitare la larghezza di banda durante la copia
  • -P Questa opzione aiuterà a specificare il numero di porta SSH specifico dell'host di destinazione
  • -P Questa opzione aiuterà a preservare le autorizzazioni, le modalità e i tempi di accesso richiesti per i file desiderati durante la copia
  • -Q Questa opzione aiuterà a sopprimere il messaggio di avviso di SSH
  • -r Questa opzione aiuterà a copiare i file e le directory in modo ricorsivo
  • -v Questa opzione fornirà l'output verboso

Esempio di comando SCP

1. Copia di file o directory richiesti dal dispositivo locale al dispositivo remoto

Supponiamo di voler copiare il pacchetto RPM JDK esistente dal dispositivo locale al dispositivo remoto, quindi eseguire il comando seguente.

SCP JDK-LINUX-X64_BIN.RPM [email protected]:/opt

Questo comando copierà il file del pacchetto nel sistema remoto nella cartella /opt.

2. Copia file dal telecomando al sistema locale.

Esegui il comando di seguito per copiare il file dal dispositivo remoto al dispositivo locale.

SCP [email protected]:/root/techical-doc-rhs.ODT /TMP

È possibile confermare il trasferimento di file utilizzando il comando seguente:

LS -L /TMP /Technical-Doc-RHS.ODT

3. Ottenere output verbosio durante il trasferimento dei file

Durante l'utilizzo del comando SCP, si può ottenere l'output verboso indicando ogni passo e comprendere cosa sta succedendo in background. Tale output aiuterà a risolvere i problemi dell'errore, debug e correzione dell'errore. Utilizzare il comando o la sintassi di seguito per ottenere l'uscita verbosa sullo schermo.

SCP -V JDK-LINUX-X64_BIN.RPM [email protected]:/opt

4. Trasferimento di più file nel sistema remoto contemporaneamente

È possibile utilizzare il comando SCP per il trasferimento o la copia di più file alla volta. Per questo, è necessario specificare vari nomi di file separati dallo spazio. Usa l'esempio seguente per farlo.

SCP Installa.indice txt.html jdk-linux-x64_bin.rpm \ [email protected]:/mnt

5. Trasferimento di file su due sistemi remoti.

L'uso di SCP consentirà di trasferire un file su due sistemi remoti. Per questo, utilizzare un sistema Linux collegato ad altri due sistemi remoti per organizzare il trasferimento di file. Usa la sintassi seguente per farlo.

# SCP USER@remote_hosts1:/ utente@remote_host2:/

6. Copia di file o directory in modo ricorsivo

È possibile specificare l'opzione "-r" insieme al comando Copy se si desidera trasferire ricorsivamente i file o le directory richiesti da un sistema a un altro sulla rete. Puoi considerare l'esempio seguente.

Scp -r download [email protected]:/opt

Esegui il comando seguente per confermare il trasferimento.

ssh [email protected] "ls -ld /opt /download"

7. Aumento della velocità di trasferimento dei file.

Utilizzare l'opzione "-c" per comprimere i file o le cartelle per accelerare il trasferimento. Comprenderà automaticamente i file di trasferimento nell'origine e decomprimerà i file sul sistema di destinazione.

Scp -r -c download [email protected]:/opt

8. Limitare la larghezza di banda della rete durante il trasferimento o la copia del file.

Utilizzare il comando SCP e l'opzione "-l" per limitare la larghezza di banda durante la copia. È possibile specificare la larghezza di banda in kbit/s. Considera l'esempio seguente per farlo.

SCP -L 500 JDK-LINUX-X64_BIN.RPM [email protected]:/var

9. Specificando la diversa porta SSH

È possibile specificare le diverse porte SSH utilizzando il comando SCP con l'aiuto delle opzioni "-p" che specificherà la porta. Qui stiamo specificando la porta come "2022".

SCP -P 2022 JDK-LINUX-X64_BIN.RPM [email protected]:/var

10. Preservare le autorizzazioni, le modalità e il tempo di accesso ai file.

Utilizzando il comando SCP, sarai in grado di preservare le autorizzazioni, la modalità e il tempo di accesso del file utilizzando l'opzione "-P". Considera l'esempio seguente per farlo.

SCP -P JDK-LINUX-X64_BIN.RPM [email protected]:/var/tmp

11. Trasferimento di file in modalità tranquilla.

Se si desidera sopprimere l'avanzamento del trasferimento, è possibile utilizzare il comando SCP insieme all'opzione "-Q". Considera il seguente esempio per farlo.

Scp -q -r download [email protected]:/var/tmp

12. Identifica il file durante il trasferimento.

Gli ambienti Linux preferiscono per lo più autenticazioni basate sui tasti. Utilizzando SCP, è possibile specificare il file di identità o il file chiave privato utilizzando l'opzione "-i".

Scp -i my_key.PEM -r Downloads [email protected]:/root

13. Utilizzando diversi file "ssh_config".

In SCP, è possibile utilizzare l'opzione "-F" per l'utilizzo dei diversi file SSH_Config. Usa la sintassi seguente per farlo.

Scp -f /home /new_sssh_config -r downloads \ [email protected]:/root

Conclusione

Lo SCP è lo strumento di riga di comando più comunemente utilizzato nei sistemi Linux e Unix per trasferire in modo sicuro i file o le directory. Questo comando viene fornito con varie opzioni che possono essere utilizzate per più scopi e semplificano il tuo lavoro in molti casi, come i file di compressione, aumentando la larghezza di banda e altro ancora. Se si lavora regolarmente su un sistema Linux, la maggior parte del lavoro include il trasferimento di file che devono essere mantenuti sicuri durante il trasferimento, poiché possono contenere dati cruciali.