Hopp til hovedinnhold

Overføringer med SCP

Kapittel 10

SCP (Secure Copy) er en enkel og sikker metode for å kopiere filer mellom en lokal maskin og en ekstern server. Den bruker SSH-protokollen for autentisering og kryptering, og fungerer derfor på samme sikre måte som SFTP. SCP passer godt for raske filoverføringer uten å åpne et interaktivt grensesnitt.

Basisbruk

Kopiere fil fra lokal maskin til server

scp file2 brukernavn@server:

Eksempel

scp myfile.txt john@154.541.21.154:

Dette laster opp filen myfile.txt fra din lokale katalog til hjemmemappen til brukeren john på serveren. Kolonet (:) etter serveradressen angir at filen skal plasseres på serveren. Hvis du vil plassere filen i en spesifikk mappe, kan du legge til banen etter kolon.

Eksempel

scp myfile.txt john@154.541.21.154:/home/john/uploads

Kopiere fil fra server til lokal maskin

scp brukernavn@server:file2 file3

Eksempel

scp john@154.541.21.154:/home/john/data.txt ./localcopy.txt

Dette laster ned filen data.txt fra serveren til din lokale maskin og lagrer den som localcopy.txt i nåværende mappe.

Kopiere hele kataloger

For å kopiere kataloger med innhold brukes flagget -r (rekursiv kopiering).

Eksempler

# Laste opp katalog
scp -r myfolder john@154.541.21.154:/home/john/

# Laste ned katalog
scp -r john@154.541.21.154:/home/john/backups ./

Spesifisere portnummer

Dersom SSH kjører på en annen port enn standard 22, kan du angi portnummer med -P.

Eksempel

scp -P 2222 myfile.txt john@154.541.21.154:/home/john/

Bruke nøkkelpar

Hvis du autentiserer med SSH-nøkler kan du angi hvilken nøkkel som skal brukes med -i.

Eksempel

scp -i /home/john/.ssh/srv1 myfile.txt john@154.541.21.154:/home/john/

Kopiere mellom to eksterne servere

Du kan også bruke SCP til å kopiere direkte fra en ekstern server til en annen, så lenge du har SSH-tilgang til begge.

Eksempel

scp user1@server1:/path/file user2@server2:/path/

Dette krever at nøkkelautentisering eller passordtilgang er satt opp mellom serverne.

Nyttige alternativer

-q  stille modus, viser ikke fremdrift
-p beholder filrettigheter og tidsstempler
-C aktiverer komprimering under overføring (nyttig for store filer over trege linjer)

Eksempel

scp -C largefile.iso john@154.541.21.154:/home/john/

Feilsøking og tips

SCP bruker SSH, så problemer med nøkler, porter eller brannmur gjelder på samme måte som for SSH.

Hvis overføringen stopper, kan du prøve -v for verbose-modus for mer informasjon:

scp -v myfile.txt john@server:/path/

For hyppige overføringer kan SFTP eller rsync være mer praktiske siden de støtter gjenopptakelse av avbrutte overføringer.

Høydepunkt – viktige kommandoer

Kopiere fra lokal til server

scp fil brukernavn@server:/sti/

Kopiere fra server til lokal

scp brukernavn@server:/sti/fil lokal_fil

Kopiere katalog rekursivt

scp -r katalog brukernavn@server:/sti/

Spesifisere portnummer

scp -P 2222 fil brukernavn@server:/sti/

Spesifisere nøkkel

scp -i /path/to/key fil brukernavn@server:/sti/

Aktivere komprimering

scp -C fil brukernavn@server:/sti/

Kopiere mellom to servere

scp user1@server1:/sti/fil user2@server2:/sti/
Robert Kristoffersen
Fullstack-utvikler • Webno