DevOps-bootcamp · leksjon

SCP og Rsync for filoverføring

Lær sikker kopiering av filer med «scp» og effektiv filsynkronisering med «rsync» for lokale og eksterne operasjoner.

Leksjon 3 av 412 trinn

SCP og Rsync for filoverføring er en gratis leksjon i DevOps-bootcamp på CoddyKit. Dette er leksjon 3 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i DevOps-bootcamp, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i DevOps-bootcamp inneholder totalt 4 leksjoner.

Sikre filoverføringer

Når De arbeider med eksterne servere, er det avgjørende å overføre filer på en sikker måte. Vi trenger verktøy som beskytter dataene under overføringen og sikrer integriteten.

I denne leksjonen introduseres to kraftige kommandoer: scp for sikker kopiering og rsync for effektiv synkronisering.

SCP: Secure Copy Protocol

SCP står for Secure Copy Protocol. Det er et kommandolinjeverktøy som lar Dem kopiere filer og kataloger sikkert mellom verter i et nettverk.

  • Det bruker SSH til dataoverføring, noe som gir kryptering og autentisering.
  • Velegnet for raske, engangs filoverføringer.
  • Enkelt å bruke både til kopiering fra lokal til ekstern maskin og fra ekstern til lokal maskin.

SCP-syntaks: Lokal til ekstern

Bruk følgende syntaks for å kopiere en fil fra den lokale maskinen til en ekstern server:

scp local_file user@remote_host:/path/to/destination

  • local_file: Filen på den nåværende maskinen.
  • user: Brukernavnet Deres på den eksterne serveren.
  • remote_host: IP-adressen eller vertsnavnet til den eksterne serveren.
  • /path/to/destination: Hvor filen skal lagres på den eksterne serveren.

SCP-eksempel: Lokal til ekstern

La oss kopiere en fil med navnet myreport.txt fra den nåværende katalogen til katalogen /home/coddy/reports/ på server.com.

scp myreport.txt coddy@server.com:/home/coddy/reports/

SCP-syntaks: Ekstern til lokal

For å kopiere en fil fra en ekstern server til den lokale maskinen er syntaksen tilsvarende, men kilde og mål er byttet om:

scp user@remote_host:/path/to/remote_file local_destination

  • user@remote_host:/path/to/remote_file: Den fullstendige banen til filen på den eksterne serveren.
  • local_destination: Hvor filen skal lagres på den lokale maskinen. Bruk . for den nåværende katalogen.

SCP-eksempel: Ekstern til lokal

La oss hente en fil med navnet data.csv fra /home/coddy/ på server.com og lagre den i den nåværende lokale katalogen.

scp coddy@server.com:/home/coddy/data.csv .

Rsync: Effektiv synkronisering

Rsync (ekstern synkronisering) er et allsidig verktøy for lokal og ekstern kopiering og synkronisering av filer og kataloger.

De viktigste fordelene er:

  • Effektivitet: Det overfører bare forskjellene mellom filer, ikke hele filen, og sparer dermed båndbredde.
  • Kan gjenopptas: Avbrutte overføringer kan fortsette.
  • Bevarer attributter: Bevarer tillatelser, tidsstempler og eierskap.
  • Fleksibilitet: Mange alternativer for finjustering av overføringer.

Rsync-syntaks: Grunnleggende bruk

En vanlig rsync-syntaks for å synkronisere en lokal katalog med en ekstern katalog er:

rsync [options] local_source/ user@remote_host:/path/to/destination/

  • [options]: Flagg som styrer rsyncs virkemåte.
  • local_source/: Katalogen på den lokale maskinen (den avsluttende skråstreken er viktig!).
  • user@remote_host:/path/to/destination/: Den eksterne plasseringen.

Rsync i praksis: Grunnleggende synkronisering

La oss synkronisere en lokal katalog myproject/ med /srv/web/myproject/ på server.com. Vi bruker alternativene -avz for arkivmodus, detaljert utskrift og komprimering.

rsync -avz myproject/ coddy@server.com:/srv/web/myproject/

Rsyncs styrke: Viktige alternativer

Rsync har mange kraftige alternativer:

  • -a (archive): En vanlig snarvei for flere alternativer (rekursiv behandling, bevaring av tillatelser, tidsstempler og så videre).
  • -z (compress): Komprimerer fildata under overføringen og reduserer båndbreddebruken.
  • --delete: Sletter overflødige filer fra målkatalogen som ikke finnes i kilden. Bruk med forsiktighet!
  • -n (dry run): Viser hva som ville blitt gjort, uten å utføre endringer. Test alltid med dette først!

Hurtigsjekk: Verktøy for filoverføring

De må kopiere en stor katalog fra den lokale maskinen til en ekstern server. De ønsker å sikre at bare endrede filer overføres ved senere kjøringer, og at slettede filer i kilden også fjernes fra målet.

Hvilken kommando og hvilke alternativer egner seg best til denne oppgaven?

Oppsummering: SCP og Rsync

De har fått god kontroll på to viktige verktøy for sikre og effektive filoverføringer!

  • SCP er utmerket for sikre, raske engangskopieringer av filer og kataloger ved hjelp av SSH.
  • Rsync er førstevalget for synkronisering av filer og kataloger. Det er svært effektivt fordi det bare overfører endringer, og har kraftige alternativer som `--delete` for ekte speiling.

Velg riktig verktøy for oppgaven, slik at De kan administrere filer på tvers av nettverk som en ekspert!

Gratis å komme i gang

Lær deg DevOps-bootcamp med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
142
Leksjoner
568

Ofte stilte spørsmål

Er leksjonen «SCP og Rsync for filoverføring» gratis?

Ja – du kan lese valgfritt 3 av leksjonene i læringsstien DevOps-bootcamp, inkludert «SCP og Rsync for filoverføring», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i DevOps-bootcamp inneholder totalt 4 leksjoner.

Hva lærer jeg i «SCP og Rsync for filoverføring»?

Lær sikker kopiering av filer med «scp» og effektiv filsynkronisering med «rsync» for lokale og eksterne operasjoner. Du øver på DevOps-bootcamp med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med DevOps-bootcamp?

Ingen tidligere erfaring er nødvendig. DevOps-bootcamp på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 3 av 4.

Hvor lang tid tar leksjonen «SCP og Rsync for filoverføring»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne DevOps-bootcamp-leksjonen?

Ja. Alle DevOps-bootcamp-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Grunnleggende nettverktøy (ping, ip, netstat)
  2. Grunnleggende om Secure Shell (SSH)
  3. SCP og Rsync for filoverføring
  4. SSH-nøkkelautentisering og konfigurasjonsfilen
← Tilbake til DevOps-bootcamp