Det finns tillfällen när du vill överföra filer mellan ditt lokala system och en fjärrserver. Flera protokoll och metoder finns tillgängliga som gör att du kan hantera filöverföringar på ett säkert sätt.

SCP-kommandot i Linux är ett sådant verktyg som hjälper en användare att dela filer på distans mellan lokala och fjärrvärdar. I den här artikeln kommer vi att diskutera scp-kommandot i detalj, tillsammans med dess användning och några ytterligare funktioner i kommandot.

Vad är Scp-kommandot

Scp, en förkortning för Säker kopia, är ett kommandoradsverktyg i Linux-baserade operativsystem som tillåter en användare att kopiera filer mellan fjärr- och lokala värdar. Eftersom kommandot överför filer över ett nätverk till någon annan värd krävs SSH-åtkomst. SSH (Secure Shell) är ett protokoll som låter dig hantera nätverkstjänster säkert över alla nätverk.

Kommandot scp stöder också några ytterligare funktioner som att ange autentiseringsparametrar, ändra port, överföra kataloger och mer.

Varför Scp är bättre än andra metoder

instagram viewer

Scp föredras vanligtvis framför andra filöverföringsmetoder eftersom anslutningen mellan de två värdarna under överföringen är krypterad. SSH-protokollet ansvarar för kryptering av filer, lösenord och andra känsliga detaljer.

Andra överföringsmetoder som Telnet eller FTP har ingen kryptering. Användar- / lösenordstangenten sparas också i klartext vilket inte är bra. En smällare kan enkelt komma åt din information genom att sniffa på ditt nätverk.

Hur man säkert överför filer med Scp

Med kommandot scp kan du överföra filer mellan:

  1. En lokal värd och en fjärrvärd
  2. En fjärrvärd och ett lokalt system
  3. Två avlägsna värdar

Grundläggande syntax

Den grundläggande syntaxen för scp-kommandot är:

scp [alternativ] [källa] [destination]

Överför från lokal värd till ett fjärrsystem

Om du är serveradministratör kan det vara användbart för dig att överföra filer mellan en lokal värd och fjärrvärdar. För att ladda upp en fil med namnet document.txt till en fjärrvärd:

scp /home/document.txt-användare @ remote-host: /home/document.txt

Observera att källan är sökvägen till filen på din lokala lagring. Och destinationen är filens sökväg på fjärrvärden. Du måste också ange användarnamnet och domännamnet för fjärrservern. I ovanstående kommando, användare är användarnamnet och fjärrvärd är domännamnet.

Destinationsvägen separeras från fjärrvärddetaljerna med kolon karaktär (:). Tänk på att användaren måste finnas på fjärrservern om du vill överföra filerna framgångsrikt. Användaren bör också ha skrivåtkomst till den katalog där du vill spara filen.

Efter att ha utfärdat ovannämnda kommando kommer systemet att be dig om fjärranvändarens lösenord. Skriv lösenordet och tryck Stiga på.

user @ remote-host's password:

Om lösenordet är giltigt initialiseras filöverföringen. Om du har angett ett felaktigt lösenord inträffar ett fel.

Innan du försöker kopiera filen med scp-kommandot, se till att fjärrvärddetaljerna och lösenordet är korrekta genom att logga in på servern med SSH.

Från en fjärrvärd till lokal värd

För att kopiera filer från en fjärrvärd till en lokal värd, byt bara ut källan och destinationsvägen i scp-kommandot.

scp-användare @ remote-host: /home/document.txt /home/document.txt

Systemet kommer att be dig om fjärranvändarens lösenord än en gång. Ange lösenordet för att bekräfta överföringsprocessen.

Mellan två fjärrvärdar

För att kopiera filer mellan två fjärrservrar måste både käll- och destinationsvägarna vara kataloger på fjärrvärdarna.

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

Återigen kommer en uppmaning att uppmanas att ange lösenordet för var och en av de två användarna.

Scp Kommandoradsalternativ

Förutom att helt enkelt överföra filerna från källa till destination, har scp några ytterligare alternativ som kan åberopas med specifika argument.

Ändra port

Som standard fungerar scp-kommandot på port 22. Du kan dock alltid skriva över standardkonfigurationen och ändra porten. De -P flagga låter dig göra detsamma.

Så här använder du något annat portnummer när du kopierar filer från en lokal värd till en fjärrvärd:

scp -P 35 /home/document.txt-användare @ remote-host: /home/document.txt

Det ovan nämnda kommandot säkerställer att scp-kommandot använder port 35 för överföring av filer.

Bevara filstämplar

Du kanske vet det Linux ställer in tidsstämplar för varje fil för att lagra modifieringstid, åtkomsttid och ändra tid associerad med filen. När du överför filen till en annan plats med scp, åsidosätts målfilsens tidsstämplar av aktuell tid.

Om du av någon anledning vill bevara dessa tidsstämplar, använd -p flagga. Lägg märke till att -P och -p flaggor skiljer sig från varandra.

scp -p /home/document.txt-användare @ remote-host: /home/remote/document.txt

Kopiera kataloger

Om du vill kopiera kataloger istället för filer, använd -r flagga för att överföra kataloger rekursivt.

scp -r-användare @ remote-host: / home / videos / home / videos

Undertryckt läge

När du anger scp-kommandot för att överföra filer visar terminalen förloppsindikatorn och annan relaterad information på skärmen. Du kan dock välja att inte visa denna information med hjälp av -q flagga.

scp -q användare @ remote-host: /home/document.txt /home/document.txt

Använd en knappsatsfil för autentisering

Om du vill autentisera fjärrvärdanslutningen med en knappsatsfil anger du filens sökväg med hjälp av -i flagga.

scp -i /home/keypair.pem /home/document.txt användare @ remote-host: /home/document.txt

Kedja flera flaggor tillsammans

Precis som alla andra Linux-kommandon kan du kedja flera argument tillsammans för att göra scp-kommandot mer effektivt.

Till exempel för att ändra port och överföra filer i undertryckt läge:

scp -P 34 -q användare @ remote-host: /home/document.txt home / document.txt

Om du vill använda en knappsatsfil för autentisering och behöver kopiera kataloger till destinationsvägen:

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

Filöverföring mellan Linux-system

I internetvärlden har överföring av filer mellan system blivit en viktig uppgift. För dem som administrerar Linux-servrar är det ibland viktigt att ta en säkerhetskopia av servern innan ett specifikt kommando utfärdas. I sådana situationer kommer kommandot scp till nytta.

Liknande, cp-kommandot hjälper till att kopiera filerna från en plats till en annan i ett lokalt system. Det finns många grundläggande kommandon som är ett måste om du bara börjar med Linux.

E-post
Linux Commands Reference Cheat Sheet

Detta enkla fuskark hjälper dig att bli bekväm med Linux-kommandoterminalen på nolltid.

Läs Nästa

Relaterade ämnen
  • Linux
  • Filhantering
  • Linux
  • SSH
Om författaren
Deepesh Sharma (33 artiklar publicerade)

Deepesh är Junior Editor för Linux på MUO. Han har skrivit informationsinnehåll på internet i över 3 år. På fritiden tycker han om att skriva, lyssna på musik och spela sin gitarr.

Mer från Deepesh Sharma

Prenumerera på vårt nyhetsbrev

Gå med i vårt nyhetsbrev för tekniska tips, recensioner, gratis e-böcker och exklusiva erbjudanden!

Ett steg till…!

Bekräfta din e-postadress i e-postmeddelandet som vi just skickade till dig.

.