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:
- En lokal vert og en ekstern vert
- En ekstern vert og et lokalt system
- 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.
Dette enkle juksearket vil hjelpe deg med å bli komfortabel med Linux-kommandolinjeterminalen på kort tid.
Les Neste
- Linux
- Filbehandling
- Linux
- SSH
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.
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.