Kas olete kunagi muretsenud andmete kaotamise pärast või väsinud igapäevasest või iganädalasest käsitsi varundamisest? Kasuta rsync
käsk ja sünkroonige oma kohalikud failid automaatselt kaugserveriga nii sageli kui soovite, ilma käsitsi sekkumata. Pange tähele, et see juhend nõuab juurdepääsu Linuxi kaugserverile (nt. AWS) ja see on kirjutatud Ubuntu 20.04 all, kuigi mis tahes Linuxi distributsioon peaks hästi töötama.
Installige rsync
Enne midagi kontrollige, kas või mitte rsync
on paigaldatud. Käivitage nii kohalikus arvutis kui ka veebiserveris järgmine käsk:
rsync --versioon
Kui saate vastutasuks praeguse rsynci versiooni, olete järgmise jaotise jaoks valmis. Vastasel juhul, kui saate a käsklust ei leitud viga, võite installida rsync
selle käsuga:
sudo apt-get -y installib rsync
Looge SSH-võti
Me kasutame a SSH-võti meie kohaliku arvuti ja kaugserveri vahelise ühenduse autentimiseks. Uue SSH-võtme genereerimiseks kohalikus arvutis terminalis käivitage käsk:
Kas vajate oma Linuxi arvutile või serverile kaugjuurdepääsu? Siit saate teada, kuidas seadistada ja konfigureerida SSH-d Linuxis, Windowsis ja mobiilis.
ssh-keygen -t rsa -b 4096 -f ~/.ssh/rsync.key
Kui küsitakse parooli, jätke see tühjaks ja vajutage kaks korda sisestusklahvi. See loob teie sees kaks uut faili ~/.ssh/
kataloog nimega rsync.key
mis on privaatvõti ja rsync.key.pub
, avalik võti.
Kaugserveri seadistamine
Kuigi see pole nõutav, loome selle juhendi jaoks a uus kasutaja kaugserveris rsync-ühenduste jaoks ja kõigi varukoopiafailide salvestamiseks. Logige SSH kaudu sisse kaugserverisse ja käivitage see käsk:
sudo useradd -m rsync
Ülaltoodud näide kasutab kasutajanime rsync, kuid võite selle muuta kõigeks, mida soovite. The -m
valik käsib lihtsalt Linuxil luua meie uuele kasutajale kodukataloog.
Kohaliku arvuti autentimise võimaldamiseks tuleb eelmises jaotises loodud avalik SSH-võti kopeerida kaugserverisse. Ava /~.ssh/rsync.key.pub
faili a tekstiredaktor ja näete ühte suurt joont, mis näeb välja umbes selline.
ssh-rsa kasutaja@host
See pikk rida on avalik SSH-võti. Kopeerige see lõikelauale ja käivitage kaugserveris järgmised käsud:
sudo su rsync
mkdir -m 0700 $ HOME/.ssh
kaja "ssh-rsa AAAAB... user@host" > $HOME/.ssh/authorized_keys
chmod 0644 $HOME/.ssh/authorized_keys
Teises viimases käsus asendage jutumärkide vahel olev tekst selle pika avaliku SSH-võtmereaga. See on kõik, teie kohalik arvuti saab nüüd teie kaugserveriga autentida.
Seadistage ssh konfiguratsioonifail
Lihtsuse huvides lisage kirjele ~/.ssh/config
faili oma kohalikus arvutis, et hõlpsasti kaugserveriga ühenduda. Avage fail kohalikus arvutis käsuga.
nano $HOME/.ssh/config
Lisage faili kaugserveri kirje, näiteks:
host backup_server
hostinimi 192.168.0.24
kasutaja rsync
Identiteedifail ~/.ssh/rsync
Muutke hostinimeks oma kaugserveri IP-aadress ja kui kasutasite muud kasutajanime kui "rsync", muutke ka seda. Saate hosti jaoks kasutada kõike, mida soovite, kuid selle näite puhul kasutati "backup_server". Salvestage ja sulgege fail, vajutades klahvikombinatsiooni Ctrl+X ja seejärel klahvi "Y" ja sisestusklahvi.
Testige oma SSH-ühendust kaugserveriga käsuga.
ssh backup_server
Eeldades, et kõik on õigesti seadistatud, peaksite nüüd olema SSH kaudu oma kaugserverisse sisse logitud. Sulgege ühendus käsuga.
väljuda
Sünkroonige oma failid
Nüüd testige rsync
funktsionaalsust ja näiteks kataloogi Dokumendid sünkroonimiseks kohalikus arvutis käivitage käsk:
rsync -avz --progress ~/Documents/ backup_server:~/Documents
Esimene esinemine ~/Dokumendid/
määrab sünkroonitava kohaliku faili või kataloogi, backup_server
vastab kirjele lisatud kirjele ~/.ssh/config
faili ja lõppu :~/Dokumendid
määrab lihtsalt kõik kodukataloogi suhtes üleslaadimise kaugserveri kataloogi /Documents.
Logige sisse kaugserverisse ja peaksite nägema uut kataloogi Documents, mis on teie kohaliku arvuti kataloogiga sünkroonis. Iga kord, kui käivitate ülaltoodud käsu, laaditakse üles ainult need failid, mida on pärast viimast korda muudetud, nii et te ei laadi pidevalt üles kogu kataloogi sisu.
Automatiseeri Crontabi kaudu
Nüüd, kui kõik on testitud ja töötab korralikult, saame kogu protsessi hõlpsalt automatiseerida, lisades oma kohalikku arvutisse crontabi töö. Kohaliku kausta automaatseks sünkroonimiseks kaugserveriga iga 15 minuti järel käivitage terminalis käsk.
(crontab -l; echo "*/15 * * * * rsync -avz --progress ~/Documents/ backup_server:~/Dokumendid > /dev/null 2>&1";) | crontab
Võite saada teate "kasutajale pole crontab" ja võite seda lihtsalt ignoreerida. Muuda Dokumendid
kataloogi kuhu iganes soovite varundada, kuid jätke kataloogide lõppu kaldkriips, vastasel juhul ei varundata neid korralikult.
Kontrollige, kas crontabi töö lisati käsuga edukalt.
crontab -l
Kui näete äsja lisatud crontabi tööd, on kõik paigas. Oodake 15 minutit, kontrollige oma kaugserverit ja kõik vajalikud failid peaksid seal olema. Nüüdsest laaditakse kõik failides tehtud muudatused automaatselt kaugserverisse iga 15 minuti järel.
Laadige alla kaugserverist
Võite kasutada ka rsync
failide allalaadimiseks kaugserverist ja sünkroonimiseks kohaliku arvutiga. Kasutades ülaltoodud / Documents kataloogi näidet, käivitage terminalis käsk:
rsync -chavzP backup_server:~/Dokumendid/ ~/Dokumendid
The ~./Dokumendid
teie kohaliku arvuti kataloog peaks nüüd olema kaugserveri peegelpilt.
Kaasa ja välista mustrid
Kui teil on kunagi vaja sünkroonida ainult faile, mis vastavad teatud mustrile, nt lõpuga .html
saate kasutada --kaasa
muster. Käivitage terminalis käsk.
rsync -avz --include "*.html" --progress ~/mysite/ backup_server:~/public_html
Kontrolli kaugserverit ja näed, et kaugkataloogi /public_html/ on üles laaditud ainult .html-laiendiga failid kohalikust /mysite/ kataloogist. Samamoodi saate rakendusega sünkroonida ka kõike, välja arvatud teatud failid -- välistada
valik. Näiteks sünkroonib järgmine käsk kõik failid, välja arvatud need, millel on a .txt
pikendamine.
rsync -avz --exclude "*.txt" --progress ~/mysite/ backup_server:~/public_html
Sünkroonige kaks kohalikku kataloogi
Vajadusel saate käsuga sünkroonida ka kaks kohalikku kataloogi.
rsync -zvr ~/allikas/kataloog ~/sihtkoht/kataloog
See käsk töötab täpselt samamoodi nagu kaugserveriga sünkroonimisel, ainsaks erinevuseks on see, et tegemist on kahe kohaliku kataloogiga.
Puhka rahulikult
Nüüd saate kergendatult hingata, teades, et teie andmete kadumise tõenäosus on nüüd oluliselt väiksem. Sellest artiklist olete õppinud, mida rsync
on, kuidas luua ja installida SSH-võtit, määratleda server ~./.ssh/config
faili, sünkroonige kohalik ja kaugkataloog ning automatiseerige kogu protsess crontabi kaudu. Edaspidi sünkroonitakse kõik vajalikud failid alati teie kaugserveriga vaid 15-minutilise viivitusega.
Kas soovite oma Linuxi kõvaketta või partitsiooni kloonida? Kasutage oma Linuxi ketta kloonimiseks ühte neist draivi kloonimise tööriistadest.
- Linux
- Andmete varundamine
- Linux
- Pilvevarundamine
- Koduvõrk
Liituge meie uudiskirjaga
Liituge meie uudiskirjaga tehniliste näpunäidete, arvustuste, tasuta e-raamatute ja eksklusiivsete pakkumiste saamiseks!
Veel üks samm…!
Palun kinnitage oma e-posti aadress meilis, mille me teile just saatsime.