scp Il comando (copia protetta) nel sistema Linux viene utilizzato per copiare file tra server in modo sicuro. Il comando SCP o copia sicura consente il trasferimento sicuro di file tra l'host locale e l'host remoto o tra due host remoti. Utilizza la stessa autenticazione e sicurezza di quella utilizzata in Protocollo Secure Shell (SSH). . SCP è noto per la sua semplicità, sicurezza e disponibilità preinstallata.
Sintassi del comando scp in Linux
La sintassi Basc del comando scp in Linux è la seguente:
scp [options] [[user@]host1:]source_file_or_directory ... [[user@]host2:]destination>
In questa sintassi:
-
options>: Queste sono varie opzioni che modificano il comportamento del comando SCP, come ad esempio-i>per specificare un file di identità,-l>per limitare la larghezza di banda,-o>per specificare le opzioni SSH,-P>per specificare una porta SSH personalizzata e-S>per specificare un programma da utilizzare per la connessione crittografata. -
[[user@]host1:]source_file_or_directory>: rappresenta il file o la directory di origine. Può essere locale o su una macchina remota specificata dauser@host1:>. -
...>: Ciò indica che è possibile specificare più file o directory di origine. -
[[user@]host2:]destination>: Questa è la destinazione in cui verranno copiati i file o le directory. Può essere locale o su una macchina remota specificata dauser@host2:>.
Opzioni nel comando scp in Linux
Opzioni più comunemente utilizzate nel comando scp in Linux.
| opzioni | Descrizione |
|---|---|
| -P | porta: Specifica la porta a cui connettersi sull'host remoto. |
| -P | Conserva i tempi di modifica, i tempi di accesso e le modalità del file originale. |
| -Q | Disabilita la barra di avanzamento. |
| -R | Copia ricorsivamente intere directory. |
| -S | Nome del programma da utilizzare per la connessione crittografata. Il programma deve comprendere le opzioni ssh(1). |
Esempio pratico per copiare in modo sicuro un file in Linux
Tabella dei contenuti
- Come copiare in modo sicuro un file da un computer locale a un computer remoto in Linux
- Come copiare in modo sicuro un file dal computer remoto al nostro computer locale
- -p Opzione nel comando scp
- -q Opzione nel comando scp
- -r Opzione nel comando scp
Come copiare in modo sicuro un file da un computer locale a un computer remoto in Linux
Sintassi:
scp [file_name] remoteuser@remotehost:/remote/directory>
Qui
- file_name = Il nome del file che deve essere copiato.
- remoteuser =Il nome utente dell'host remoto.
- remotehost = L'indirizzo IP o il nome host dell'host remoto.
- /remote/directory = La directory in cui il file deve essere copiato sul computer remoto.
Per esempio: Se vogliamo copiare un nome file test.txt dal sistema locale a un file
- utente remoto = Jayesh
- host remoto = 10.143.90.2
- /remota/directory = /home/jayesh
Sintassi:
scp test.txt [email protected]:/home/jayesh>
file copiato dal sistema locale al sistema remoto
Per verificare: utilizzare ` l ` comando nella posizione in cui abbiamo copiato il file.
File che abbiamo copiato
Come copiare in modo sicuro un file dal computer remoto al nostro computer locale
sintassi:
scp user@remotehost:/home/user/file_name>
Qui
- utente = nome utente del sistema remoto.
- remotehost = indirizzo IP (o nome host) del sistema remoto.
- /home/utente/nome_file = percorso del file che deve essere copiato.
- . = questo significa che stiamo copiando quel file nella posizione corrente nel sistema locale.
Per esempio: Se abbiamo
- utente=jayesh
- host remoto = 10.143.90.2
- home/utente/nome_file = home/jayesh/test1.txt
sintassi:
scp [email protected]:/home/jayesh/test1.txt>
file copiato dal sistema remoto al sistema locale utilizzando scp
Verificare: utilizzo Voi (nel cmd di Windows)
test1.txt copiato con successo
-P Opzione nel comando scp
Viene utilizzato per copiare in modo sicuro il file su una macchina remota su una porta SSH non standard e specificare la porta per connettersi sull'host remoto. È utile quando il nostro SSH il server è in ascolto su una porta non standard.
Sintassi:
scp -P port source_file user@hostname:destination_file>
Per esempio: Se vogliamo copiare un file test2.txt dal computer locale a un computer remoto con indirizzo IP 10.143.90.2 sulla porta 2222, utente = jayesh e posizione = /home/jayesh/.
Per impostazione predefinita, scp utilizza ssh sulla porta 22 per trasferire i file. Potrebbe essere necessario modificare la porta se la porta designata 22 non è aperta sull'host remoto.
sintassi:
scp -P 2222 test2.txt [email protected]:/home/jayesh/>
copiando il file dal sistema locale a quello remoto utilizzando l'opzione -P in scp
Verificare: Utilizzo `ls` comando nel sistema remoto nella posizione in cui abbiamo copiato il file.
test2.txt copiato con successo
-p Opzione nel comando scp
Questa opzione viene utilizzata quando vogliamo i metadati originali del file che è stato trasferito. Fondamentalmente, preserva l'ora di modifica, l'ora di accesso e le modalità del file originale.
Sintassi:
scp -p source_file user@hostname:destination_file>
Per esempio: Se vogliamo copiare un file test3.txt dal computer locale a un computer remoto con indirizzo IP 10.143.90.2, utente = jayesh e posizione = /home/jayesh/
Sintassi:
scp -p test3.txt [email protected]:/home/jayesh/>
copiando il file dal sistema locale a quello remoto utilizzando l'opzione -p in scp
-q Opzione nel comando scp
Copia in modo sicuro il file con Modalità silenziosa – Disattivazione del misuratore di avanzamento. Questa opzione nasconde l'avanzamento del trasferimento file sul terminale.
Sintassi:
scp -q source_file user@hostname:destination_file>
Per esempio: Se vogliamo copiare un file test4.txt dal computer locale a un computer remoto con indirizzo IP 10.143.90.2, utente = jayesh e posizione = /home/jayesh/
Sintassi:
scp -q test4.txt [email protected]:/home/jayesh/>
Come possiamo vedere non viene mostrato alcun progresso
Verificare: Utilizza il comando `ls` nel sistema remoto nella posizione in cui abbiamo copiato il file.
test4.txt copiato con successo
-R Opzione nel comando scp
Questa opzione viene utilizzata quando vogliamo copiare un intero file directory e il suo contenuto. Il che significa sostanzialmente copiare l'intera directory in modo ricorsivo.
Sintassi:
scp -r Directory_name user@hostname:destination_file>
Per esempio: Se vogliamo copiare il nome del contenuto di una directory new dal computer locale a un computer remoto con indirizzo IP 10.143.90.2, utente = jayesh e posizione = /home/jayesh/new1/
Sintassi:
scp -r new [email protected]:/home/jayesh/new1/>
copiando ricorsivamente l'intera directory e il relativo file utilizzando `-r` in scp
Verificare: Utilizza il comando `ls` nel sistema remoto nella posizione in cui abbiamo copiato il file.
nuova directory copiata con successo.
Domande frequenti sul comando scp in Linux
Qual è il comando scp -r in Linux?
IL
scp -r>Il comando in Linux viene utilizzato per copiare un'intera directory e il suo contenuto. Questa opzione abilita la copia ricorsiva dei file all'interno della directory specificata. Ecco un esempio:scp -r username@source_machine:/path/to/source/directory username@destination_machine:/path/to/destination/>Questo comando copia ricorsivamente tutti i file e le sottodirectory dalla directory di origine alla destinazione specificata.
Cos'è il comando scp in Linux?
IL
scp>Il comando in Linux viene utilizzato per copiare file o directory tra host su una rete e utilizza il protocollo SSH (Secure Shell) per il trasferimento sicuro dei file. Ecco un esempio di copia di un file da un computer locale a un server remoto:scp /path/to/local/file username@remote_machine:/path/to/destination/>Questo comando trasferisce in modo sicuro il file specificato al computer remoto.
Qual è il comando scp inverso in Linux?
Non c'è retromarcia
scp>comando in Linux. ILscp>Il comando è intrinsecamente progettato per copiare file da un'origine (locale o remota) a una destinazione (locale o remota). Non esiste un comando specifico per copiare i file nella direzione inversa. Se vuoi copiare un file da una posizione remota al tuo sistema locale, usi comunque il normalescp>comando.eliminare il file in JavaPer esempio:
scp username@remote_machine:/path/to/source/file /path/to/local/destination/>Questo comando copia il file specificato dal computer remoto alla destinazione locale.
Come posso utilizzare il comando scp per copiare file tra due macchine Linux in modo sicuro?
Per copiare file in modo sicuro tra macchine Linux, utilizzare la seguente sintassi:
scp [options] [destination]>Per esempio:
scp username@source_machine:/path/to/source/file username@destination_machine:/path/to/destination/>
Quali sono le opzioni comuni utilizzate con scp per il trasferimento sicuro dei file?
Alcune opzioni comuni utilizzate con scp includono:
-r>: Copia ricorsivamente intere directory.-P port>: specificare la porta a cui connettersi sull'host remoto.-i identity_file>: Specificare il file della chiave privata per l'autenticazione.-v>: attiva la modalità dettagliata per un output dettagliato durante il trasferimento.
Come posso copiare file da un computer locale a un server remoto utilizzando scp?
Per copiare file da un computer locale a un server remoto, utilizzare la seguente sintassi:
scp /path/to/local/file username@remote_machine:/path/to/destination/>
Come posso migliorare la sicurezza dei trasferimenti di file scp?
Per migliorare la sicurezza durante i trasferimenti SCP, considera:
- Utilizzo dell'autenticazione con chiave SSH per accessi senza password.
- Specificare una porta non predefinita per una maggiore sicurezza (
-P port>opzione).- Limitare l'accesso impostando le autorizzazioni appropriate per i file nelle directory di origine e di destinazione.
Come specificare la porta SSH in Linux per scp?
Per specificare la porta SSH in Linux per
scp>, usi il-P>opzione seguita dal numero di porta. IL-P>flag consente di definire una porta personalizzata per la connessione SSH, utile quando il server SSH sul computer remoto opera su una porta non predefinita.Ecco un esempio:
scp -P your_file.txt user@remote_server:/path/to/destination/>In questo comando:
- Sostituisci `
`>con il numero di porta effettivo che desideri utilizzare per la connessione SSH.`your_file.txt`>è il file che vuoi copiare.`user`>è il nome utente sul server remoto.`remote_server`>è l'indirizzo o il nome host del server remoto.`/path/to/destination/`>è la directory di destinazione sul server remoto in cui desideri copiare il file.Utilizzando il comando `
-P`>seguita dal numero di porta desiderato, ti assicuri che `scp`>si connette al server remoto utilizzando la porta specificata per l'operazione di copia protetta.
Conclusione
In questo articolo abbiamo discusso discp>comando in Linux che è un modo sicuro e semplice per copiare file tra computer su una rete. Utilizza il protocollo Secure Shell (SSH) per la sicurezza ed è noto per la sua semplicità. L'articolo spiegava la sintassi di base, le opzioni comuni e forniva esempi per copiare file, preservare metadati e trasferire intere directory in modo sicuro. Ha inoltre risposto a domande comuni, ad esempio come copiare directory e file al contrario, e ha condiviso suggerimenti per migliorare la sicurezza durante i trasferimenti. Complessivamente,scp>è uno strumento utile per gestire i trasferimenti di file in modo sicuro ed efficiente sui sistemi Linux.