Det er tider når du vil overføre filer mellom det lokale systemet og en ekstern server. Flere protokoller og metoder er tilgjengelige som lar deg håndtere filoverføringer på en sikker måte.

Scp-kommandoen i Linux er et slikt verktøy som hjelper en bruker med å dele filer eksternt mellom lokale og eksterne verter. I denne artikkelen vil vi diskutere scp-kommandoen i detalj, sammen med bruken og noen tilleggsfunksjoner i kommandoen.

Hva er Scp-kommandoen

Scp, et akronym for Sikker kopi, er et kommandolinjeverktøy i Linux-baserte operativsystemer som lar en bruker kopiere filer mellom eksterne og lokale verter. Siden kommandoen overfører filer over et nettverk til en annen vert, er SSH-tilgang påkrevd. SSH (Secure Shell) er en protokoll som lar deg håndtere nettverkstjenester sikkert over ethvert nettverk.

Scp-kommandoen støtter også noen tilleggsfunksjoner, som spesifisering av autentiseringsparametere, endring av port, overføring av kataloger og mer.

Hvorfor Scp er bedre enn andre metoder

Scp foretrekkes vanligvis fremfor andre filoverføringsmetoder fordi forbindelsen mellom de to vertene er kryptert under overføringen. SSH-protokollen er ansvarlig for kryptering av filer, passord og andre sensitive detaljer.

Andre overføringsmetoder som Telnet eller FTP har ingen kryptering. Dessuten lagres bruker- / passordtastaturet også i ren tekst, noe som ikke er en god praksis i det hele tatt. En cracker kan enkelt få tilgang til informasjonen din ved å snuse nettverket ditt.

Hvordan overføre filer på en sikker måte ved hjelp av Scp

Ved hjelp av scp-kommandoen kan du overføre filer mellom:

  1. En lokal vert og en ekstern vert
  2. En ekstern vert og et lokalt system
  3. To eksterne verter

Grunnleggende syntaks

Den grunnleggende syntaksen til scp-kommandoen er:

scp [alternativer] [kilde] [destinasjon]

Overføring fra lokal vert til et eksternt system

Hvis du er serveradministrator, kan overføring av filer mellom en lokal vert og eksterne verter være nyttig for deg. Å laste opp en fil med navnet document.txt til en ekstern vert:

scp /home/document.txt bruker @ remote-host: /home/document.txt

Merk at kilden er banen til filen på din lokale lagring. Og destinasjonen er banen til filen på den eksterne verten. Du må også spesifisere brukernavnet og domenenavnet til den eksterne serveren. I kommandoen ovenfor, bruker er brukernavnet og ekstern vert er domenenavnet.

Destinasjonsstien er atskilt fra de eksterne vertsdetaljene ved hjelp av kolon karakter (:). Husk at brukeren må eksistere på den eksterne serveren hvis du vil overføre filene. Brukeren skal også ha skrivetilgang til katalogen der du vil lagre filen.

Etter å ha gitt den ovennevnte kommandoen, vil systemet be deg om passordet til den eksterne brukeren. Skriv inn passordet og trykk Tast inn.

bruker @ fjernvertspassord:

Hvis passordet er gyldig, vil filoverføringen initialiseres. Hvis du skrev inn feil passord, vil det oppstå en feil.

Før du prøver å kopiere filen ved hjelp av scp-kommandoen, må du sørge for at den eksterne vertinformasjonen og passordet er riktig ved å logge på serveren ved hjelp av SSH.

Fra en ekstern vert til lokal vert

For å kopiere filer fra en ekstern vert til en lokal vert, bytter du bare kilde og destinasjonsbane i scp-kommandoen.

scp bruker @ remote-host: /home/document.txt /home/document.txt

Systemet vil be deg om passordet til den eksterne brukeren igjen. Skriv inn passordet for å bekrefte overføringsprosessen.

Mellom to eksterne verter

For å kopiere filer mellom to eksterne servere, må både kilde- og destinasjonsstiene være kataloger på de eksterne vertene.

scp user1 @ remote-host1: /home/document.txt user2 @ remote-host2: /home/folder/document.txt

Igjen vises en melding som ber deg om å skrive inn passordet for hver av de to brukerne.

Scp kommandolinjealternativer

Bortsett fra å bare overføre filene fra kilde til destinasjon, har scp noen ekstra alternativer som kan påkalles ved hjelp av spesifikke argumenter.

Endre porten

Som standard fungerer scp-kommandoen på port 22. Du kan imidlertid alltid overskrive standardkonfigurasjonen og endre porten. De -P flagg lar deg gjøre det samme.

Slik bruker du et annet portnummer mens du kopierer filer fra en lokal vert til en ekstern vert:

scp -P 35 /home/document.txt bruker @ remote-host: /home/document.txt

Den nevnte kommandoen vil sikre at scp-kommandoen bruker port 35 for overføring av filer.

Bevar filtidsstempler

Det vet du kanskje Linux setter tidsstempler for hver fil for å lagre modifikasjonstid, tilgangstid og endre tid assosiert med filen. Når du overfører filen til et annet sted ved hjelp av scp, overstyres tidsstemplene til destinasjonsfilen av gjeldende tid.

Hvis du av en eller annen grunn vil bevare disse tidsstemplene, kan du bruke -p flagg. Legg merke til det -P og -p flagg er forskjellige fra hverandre.

scp -p /home/document.txt bruker @ remote-host: /home/remote/document.txt

Kopikataloger

Hvis du vil kopiere kataloger i stedet for filer, bruker du -r flagg for å overføre kataloger rekursivt.

scp -r bruker @ ekstern vert: / hjem / videoer / hjem / videoer

Undertrykt modus

Når du skriver inn scp-kommandoen for å overføre filer, viser terminalen fremdriftslinjen og annen relatert informasjon på skjermen. Du kan imidlertid velge å ikke se denne informasjonen ved hjelp av -q flagg.

scp -q bruker @ fjernverten: /home/document.txt /home/document.txt

Bruk en tastaturfil for autentisering

Hvis du vil autentisere den eksterne verttilkoblingen ved hjelp av en tastaturfil, spesifiserer du banen til filen ved hjelp av -Jeg flagg.

scp -i /home/keypair.pem /home/document.txt bruker @ remote-host: /home/document.txt

Lenke flere flagg sammen

Akkurat som alle andre Linux-kommandoer kan du koble flere argumenter sammen for å gjøre scp-kommandoen mer effektiv.

For eksempel for å endre porten og overføre filer i undertrykt modus:

scp -P 34 -q bruker @ remote-host: /home/document.txt home / document.txt

Hvis du vil bruke en tastaturfil for autentisering og trenger å kopiere kataloger til destinasjonsstien:

scp -i /home/secret/keypair.pem -r / home / folder user @ remote-host: / home / folder

Filoverføring mellom Linux-systemer

I internettverdenen har overføring av filer mellom systemer blitt en viktig oppgave. For de som administrerer Linux-servere, er det noen ganger viktig å ta en sikkerhetskopi av serveren før du utsteder en bestemt kommando. I situasjoner som dette kommer scp-kommandoen til nytte.

På samme måte, cp-kommandoen hjelper med å kopiere filene fra et sted til et annet i et lokalt system. Det er mange grunnleggende kommandoer som er et must hvis du nettopp har kommet i gang med Linux.

E-post
Linux Commands Reference Cheat Sheet

Dette enkle juksearket vil hjelpe deg med å bli komfortabel med Linux-kommandolinjeterminalen på kort tid.

Les Neste

Relaterte temaer
  • Linux
  • Filbehandling
  • Linux
  • SSH
Om forfatteren
Deepesh Sharma (33 artikler publisert)

Deepesh er Junior Editor for Linux på MUO. Han har skrevet informasjonsinnhold på internett i over 3 år. På fritiden liker han å skrive, høre på musikk og spille gitaren.

Mer fra Deepesh Sharma

Abonner på vårt nyhetsbrev

Bli med på nyhetsbrevet vårt for tekniske tips, anmeldelser, gratis e-bøker og eksklusive tilbud!

Ett steg til…!

Bekreft e-postadressen din i e-posten vi nettopp sendte deg.

.