User Tools

Site Tools


linuxbog:admin:rsync
Linux – Friheden til systemadministration: Version 2.8.20060113 – 2021-01-07
forrige Kapitel 5. Netværksprogrammer næste

5.9. Synkronisering af data mellem to steder med rsync

At synkronisere data mellem to kataloger eller to maskiner er meget nyttigt. Tanken er at man har ca. samme data to steder - det kan enten være to kataloger på samme maskine eller to forskellige maskiner (f.eks. en laptop og en stationær maskine). Man ønsker så elegant at kunne overføre de ændrede filer fra den ene maskine til den anden - i forhold til sidste gang de to maskiner blev synkroniseret mod hinanden.

Det første man skal gøre er at installerersync-pakken på ens maskine (tjek dette med rpm -q rsync ) samt rsync på den anden maskine sammen med OpenSSH (Secure Shell) hvis man vil synkronisere mellem to maskiner. Opsætning og installation af OpenSSH er forklaret i “Linux - Friheden til sikkerhed på internettet”, der kan findes på[http://www.linuxbog.dk/|www.linuxbog.dk]. Man skal også sætte miljø-variablenRSYNC_rsh=sshi brugerens opstartsfil (~/.bashrc“export RSYNC_rsh=ssh” eller~/.tcshrc“setenv RSYNC_RSH ssh”).

Programmet rsync er genialt - det sammenligner filer i de to ender via tjeksummer og opdaterer filen i den ene ende kun med ændringerne mellem de to filer. Ofte har man få ændringer - og dermed kan rsync spare rigtig meget tid og båndbredde.

Antag at brugerens email-katalog~/mailevt. med en række under-kataloger findes på egen maskine (den vi kører kommandoer fra) samt maskinenasterix.

Antager vi først atasterixhar de nyeste filer som skal synkroniseres over til vores egen maskine, da skriver vi:

[tyge@hven ~]$rsync -azv asterix:mail ~

Bemærk at hvis der også er ændrede filer på egen maskine siden sidste synkronisering så overskrives disse. Antager vi modsat at vores egen maskine har de nyeste filer som skal synkroniseres over tilasterix, og vi vil slette eventuelle andre filer på asterix, da skriver vi

[tyge@hven ~]$rsync -azv --delete ~ asterix:mail

Derefter vil asterix have eksakt de samme filer som vores maskine i~/mail. Med parameteren–deletesørger vi også for at slette eventuelle filer påasterixunder~/mailsom ikke findes på vores egen maskine.

Med de to ovennævnte eksempler vil filer blive overskrevet fra den ene maskine til den anden uanset hvilke filer der er de nyeste. Lad os nu antage at vi gerne vil synkronisere mail-katalogerne så det altid er de nyeste filer som findes begge steder.

Egen maskine:
mail/fil1   April 2
mail/fil2   April 3
mail/fil3   April 1

asterix:
mail/fil1   April 5
mail/fil2   April 1


Bagefter har begge maskiner:
mail/fil1   April 5
mail/fil2   April 3
mail/fil3   April 1

Dette gøres ved

[tyge@hven ~]$rsync -auvz mail/ asterix:mail/[tyge@hven ~]$rsync -auvz asterix:mail/ mail/

Bemærk: At rsync fungerer forskeligt alt efter om der kommer/efter katalog-navnet. Pas på med dette.


forrige hjem næste
Opsætning af netkortparametre op TCP/IP og DNS
linuxbog/admin/rsync.txt · Last modified: by 127.0.0.1

Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki

Brug af AI : Al tekst kán være uddrag af AI genereret tekst og kan være fejlbehæftet.
AI kan lave fejl og det kan mennesker også, men al tekst er gennemgået af et menneske for fejl, og personlig bias kan være tilføjet.