Kopiera filer på ett säkert sätt i Linux med kommandot Scp

Kopiera filer på ett säkert sätt i Linux med kommandot Scp

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





extern hårddisk inte upptäckt i Windows 7

Kommandot scp 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 kommandot scp 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, byta port, överföra kataloger och mer.

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

Scp är vanligtvis att föredra 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 vanlig text vilket inte är en bra metod alls. En kracker kan enkelt komma åt din information genom att sniffa i 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

Grundsyntaxen för kommandot scp är:

scp [options] [source] [destination]

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

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





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

Observera att källan är sökvägen till filen på ditt lokala lagringsutrymme. Och målet är sökvägen till filen på fjärrvärden. Du måste också ange användarnamn och domännamn för fjärrservern. I kommandot ovan, användare är användarnamnet och fjärrvärd är domännamnet.

Destinationsvägen separeras från fjärrvärdinformationen med hjälp av 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 in lösenordet och tryck på Stiga på .

user@remote-host's password:

Om lösenordet är giltigt initieras filöverföringen. Om du har angett ett felaktigt lösenord uppstår ett fel.

Innan du försöker kopiera filen med kommandot scp, se till att fjärrvärdinformationen 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äll- och destinationsvägen i kommandot scp.

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

Systemet kommer att be dig om fjärranvändarens lösenord igen. 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 visas en uppmaning som ber dig ange lösenordet för var och en av de två användarna.

Scp-kommandoradsalternativ

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

Byt port

Som standard fungerar kommandot scp på port 22. Du kan dock alltid skriva över standardkonfigurationen och ändra porten. De -P flagga kan du 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 user@remote-host:/home/document.txt

Det ovannämnda kommandot kommer att säkerställa att scp -kommandot använder port 35 för överföring av filer.

hur man städar en Windows 10 -dator

Bevara filstämplar

Du kanske vet det Linux anger tidsstämplar för varje fil för att lagra ändringstiden, åtkomsttiden och ändringstiden för filen. När du överför filen till en annan plats med scp, åsidosätts tidsstämplarna för målfilen med den aktuella tiden.

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

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

Kopiera kataloger

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

scp -r user@remote-host:/home/videos /home/videos

Undertryckt läge

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

scp -q user@remote-host:/home/document.txt /home/document.txt

Använd en tangentfiler för autentisering

Om du vill autentisera fjärrvärdanslutningen med en knappsatsfil anger du sökvägen till filen med -i flagga.

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

Kedja flera flaggor tillsammans

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

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

trådlös nätverksanslutning har inte en giltig ip -adress
scp -P 34 -q user@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 internetens värld 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 här situationer kommer kommandot scp till nytta.

Liknande, kommandot cp 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 precis har börjat med Linux.

Dela med sig Dela med sig Tweet E-post Linux Commands Reference Cheat Sheet

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

Läs Nästa
Relaterade ämnen
  • Linux
  • Filhantering
  • Linux
  • SSH
Om författaren Deepesh Sharma(79 artiklar publicerade)

Deepesh är Junior Editor för Linux på MUO. Han skriver informationsguider på Linux, i syfte att ge alla nykomlingar en lycklig upplevelse. Osäker på filmer, men om du vill prata om teknik är han din kille. På fritiden kan du hitta honom läsa böcker, lyssna på olika musikgenrer eller spela 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!

Klicka här för att prenumerera