rsnapshot
Backup Rsnapshot en GNU / Linux. (1/3)
Backup Rsnapshot en GNU / Linux. (2/3)
Backup Rsnapshot en GNU / Linux. (3/3)
Face de rezervă (Backup-uri) elementare și automat prin rsync, folosește hardlinks pentru backup incremental cu backup care ocupă puțin spațiu pe disc.
Fundamental, programul face o copie prim și copiile ulterioare copia fișiere noi și modificate, crearea de link-uri hard fișierele care deja existau. Deci, ocupa doar de exemplare succesive fișiere noi.
Fișier de configurare
/etc / rsanpshot.conf
Utilizare cron pentru a automatiza backup.
Etapă
Server de pe care ne-o dorim pentru a sprijini mai multe foldere într-un folder de pe același server.
Server
Hostname : Server
Sistem de operare : Server de Ubuntu 12.04
IP 192.168.1.235
Foldere pentru a salva:
/acasă
/etc
/var / log
Dosar țintă:
/de rezervă
Copii salvați: Copiile sunt stocate în fiecare zi ultima 7 zi
Copiile sunt stocate fan săptămânal 4 săptămâni
Copiile sunt stocate în ultima lună 6 luni
Copiile sunt stocate în ultimul an 5 ani
- Rsnapshot Instalar
$ sudo apt-get install rsnapshot
- Rsnapshot Configurar editarea / etc / rsanpshot.conf
$ sudo nano / etc / rsnapshot.conf
Valorile de interes sunt următoarele
- snapshot_root indică în cazul în care vom stoca la sfârșitul tija de rezervă este important, dar nu recunoaște adresele de directoare. Nu puneți spații, dar este intabulat din același motiv.
snapshot_root / backup /
- no_create_root Acesta este utilizat pentru a spune dacă programul pentru a crea directorul destinație sau nu, decomentați (#) dacă faci backup pe un dispozitiv amovibil. Ca cazul nostru nu este ceea ce am spus.
#no_create_root
- cmd_cp traseu de comanda cp (aceasta este lăsată ca)
cmd_cp / bin / cp
- cmd_rm Ruta del comanda rm (aceasta este lăsată ca)
cmd_rm / bin / rm
- cmd_rsync cale comanda rsync (aceasta este lăsată ca)
cmd_rsync / bin / bin / rsync
- cmd_ssh comanda ssh cale decomentați dacă trebuie să susțină rețeaua cu ssh (aceasta este lăsată ca)
#cmd_ssh / usr / bin / ssh
- cmd_de Folosit pentru a utiliza rsnapshot cu du pentru a găsi spațiul în care se ocupă de backup. (Comment eliminat)
cmd_du / usr / bin / du
- cmd_rsnapshot_diff Vă permite să vizualizați diferențele dintre diferitele rezervă. (Comment eliminat)
cmd_rsnapshot_diff / usr / bin / rsnapshot-diff
- reține Folosit pentru a indica cât de multe exemplare vor fi stocate ca o funcție de timp oră 6 indică faptul că fiecare timp o copie de siguranță se efectuează și stocate pe cele ale 6 ultimele exemplare. Pentru a configura butonul de mai sus părăsi această secțiune urmează.
# păstra pe oră 6 reține de zi cu zi 7 păstra săptămânal 4 reține lunar 6 reține anual 5
- logfile Folosit pentru a indica unde este fișierul jurnal rsnapshot. (Comment eliminat)
logfile / var / log / rsnapshot.log
- de rezervă Folosit pentru a indica unde sunt dosarele pe care doriți să salvați copia de siguranță. După rezervă directorul indicat și apoi, dacă ne-am salva localhost / salvează-l în dosarul de la snapshot_root (/de rezervă) de exemplu dacă date / ne-ar ține în /backup / Info / pentru a salva datele pe care le dorim această secțiune ar fi, după cum urmează.
backup / home / localhost / backup / etc / localhost / backup / var / log / localhost /
Odată ce acești parametri modificat fișierul de configurare va rămâne urmează. Orange cadru configurarea parametrilor.
################################################# # rsnapshot.conf - fișier de configurare rsnapshot # ################################################# # # # Țineți cont de URMĂTOARELE NORME: # # # # Acest fișier necesită file dintre elementele # # # # Directoare necesită un slash de final: # # dreapta: /home / # # greșit: /acasă # # # ################################################# ####################### # FILE CONFIG VERSION # ####################### config_version 1.2 ########################### # SNAPSHOT ROOT DIRECTORY # ########################### # Toate instantaneele vor fi stocate în acest director rădăcină. # snapshot_root / backup / # Dacă no_create_root este activat, rsnapshot nu va crea în mod automat # director snapshot_root. Acest lucru este deosebit de util dacă sunteți de suport # până la mass-media amovibil, cum ar fi o unitate USB sau FireWire. # #no_create_root 1 ################################# # Dependențe program extern # ################################# # Utilizatorii de Linux: Asigurați-vă că pentru a decomentezi "cmd_cp". Acest lucru vă oferă caracteristici suplimentare. # Toată lumea: Lăsa "cmd_cp" comentate de compatibilitate. # # Vezi fișierul README sau pagina de manual pentru mai multe detalii. # cmd_cp / bin / cp # decomentați acest lucru pentru a utiliza programul rm loc de built-in Perl rutină. # cmd_rm / bin / rm # rsync trebuie activat pentru nimic la locul de muncă. Aceasta este singura comanda pe care # trebuie să fie activat. # cmd_rsync / usr / bin / rsync # Decomentați acest lucru pentru a permite backup la distanță SSH peste rsync. # #cmd_ssh / usr / bin / ssh # Comentați acest lucru pentru a dezactiva suport syslog. # cmd_logger / usr / bin / logger # Decomentați acest lucru pentru a specifica calea pentru "de" pentru controalele de utilizare disc. # Dacă aveți o versiune mai veche de "de", s-ar putea, de asemenea, doriți să verificați # "du_args" parametru de mai jos. # cmd_du / usr / bin / du # Decomentați acest lucru pentru a specifica calea pentru rsnapshot-diff. # cmd_rsnapshot_diff / usr / bin / rsnapshot-diff # Specificați calea către un script (și orice argumente opționale) pentru a rula corect # înainte rsnapshot sincronizează fișierele # #cmd_preexec / calea / catre / preexec / script # Specificați calea către un script (și orice argumente opționale) pentru a rula corect # după rsnapshot sincronizează fișierele # #cmd_postexec / calea / catre / postexec / script # Căi de lvcreate, lvremove, montare și comenzi umount, pentru a fi utilizate cu # Linux LVMs. # #linux_lvm_cmd_lvcreate / sbin / lvcreate # Linux_lvm_cmd_lvremove / sbin / lvremove # Linux_lvm_cmd_mount / bin / mount # Linux_lvm_cmd_umount / bin / umount ######################################### # INTERVALE DE REZERVĂ # # Trebuie să fie unic și, în ordine crescătoare # # adică. oră, zilnic, săptămânal, etc. # ######################################### # păstra pe oră 6 reține de zi cu zi 7 păstra săptămânal 4 reține lunar 6 reține anual 5 ############################################ # OPȚIUNI GLOBAL # # Toate sunt opționale, cu implicite sensibile # ############################################ # Nivel verbose, 1 prin 5. # 1 Numai erorile fatale liniștit Print # 2 Erori de imprimare implicite și avertismente numai # 3 Verbose Afișare comenzi shell echivalente se execută # 4 În plus Verbose Arată informații suplimentare detaliată # 5 Modul de depanare Totul # prolix 2 # La fel ca "prolix" mai sus, dar controlează cantitatea de date trimise la # logfile, dacă este utilizat. Implicit este 3. # LogLevel 3 # Dacă activați această, Datele vor fi scrise in fisierul specificat. The # cantitate de date scrise este controlat de "LogLevel" parametru. # logfile / var / log / rsnapshot.log # Dacă este activat, rsnapshot va scrie o lockfile pentru a preveni două instanțe # de la care rulează simultan (și încurc snapshot_root). # Dacă activați această, asigurați-vă că directorul lockfile nu este lume # inscriptibil. În caz contrar, oricine poate împiedica programul de funcționare. # lockfile / var / run / rsnapshot.pid # În mod implicit, verificare rsnapshot lockfile, verificați dacă PID rulează # și dacă nu, considera ca lockfile vechi, apoi începe # Activarea acestei oprire rsnapshot dacă PID în lockfile nu se execută # #stop_on_stale_lockfile 0 # Args implicit rsync. Toate comenzile rsync au stabilit cel puțin aceste opțiuni. # #rsync_short_args-un # rsync_long_args - șterge - numerice ID-uri - relative - șterge-excluse # ssh nu are argumente trecut în mod implicit, dar puteți specifica unele aici. # #ssh_args-p 22 # Argumente implicite pentru "de" program (pentru disc de raportare spațiu). # Versiunea GNU a "de" Este preferată. Consultați pagina de manual pentru mai multe detalii. # Dacă versiunea dumneavoastră de "de" nu acceptă-h flag, încercați să-k flag loc. # #du_args-csh # Dacă aceasta este activată, rsync nu se va întinde partițiile sistemului de fișiere într-un # Punct de rezervă. Aceasta trece în esență-x opțiunea de a rsync. # Implicit este 0 (de pe). # #one_fs 0 # Include și exclude parametrii, dacă este activat, pur și simplu a lua trecut direct # pentru rsync. Dacă aveți mai multe includ / exclud modele, a pus fiecare pe o # linie separată. Vă rugăm să se uite în sus - se numără și - exclude opțiuni în # pagina de manual rsync pentru mai multe detalii cu privire la modul de a specifica modele de nume de fișier. # #include ??? #include ??? #exclude ??? #exclude ??? # Parametrii include_file și exclude_file, dacă este activat, pur și simplu te # a trecut direct la rsync. Vă rugăm să se uite în sus - includ de la și # --exclude-de opțiuni în pagina de manual rsync pentru mai multe detalii. # #include_file / calea / catre / include / fișier # Exclude_file / calea / catre / exclude / fișier # Dacă versiunea dvs. de rsync acceptă - link-dest, consideră permite acest lucru. # Aceasta este cea mai bună modalitate de a sprijini fișiere speciale (FIFO, etc) cross-platform. # Implicit este 0 (de pe). # #link_dest 0 # Când sync_first este activat, se schimbă comportamentul implicit de rsnapshot. # În mod normal, când rsnapshot se numește cu un interval de cel mai mic # (adică: "rsnapshot oră"), se va sincroniza fișierele și rotiți cel mai mic # intervale. Cu sync_first activat, "rsnapshot sincronizare" se ocupă de sincronizare de fișiere, # și toate apelurile interval pur și simplu roti fișiere. Consultați pagina de manual pentru mai multe # detalii. Implicit este 0 (de pe). # #sync_first 0 # Dacă este activat, rsnapshot se va muta cel mai vechi directorul pentru fiecare interval de # la [interval_name].șterge, atunci se va elimina lockfile și șterge # ca director chiar înainte de a se iese. Implicit este 0 (de pe). # #use_lazy_deletes 0 # Număr de rsync re-încercări. Dacă vă confruntați cu probleme de rețea sau # probleme de carduri de rețea care au tendința de a provoca ssh pentru a-rahat cu # "Corupte MAC pe intrare" erori, de exemplu, stabilit acest la un non-zero, # valoare pentru a avea operația rsync re-incercat # #rsync_numtries 0 # Parametrii LVM. Folosit de rezervă cu crearea LVM instantaneu înainte de backup # și-l scoate după. Acest lucru ar trebui să asigure coerența datelor în unele speciale # cazuri # # LVM instantaneu(s) dimensiune (lvcreate - opțiune dimensiune). # #linux_lvm_snapshotsize 100M # Nume pentru a fi utilizate la crearea instantaneului volum logic LVM(s). # #linux_lvm_snapshotname rsnapshot # Cale de LVM volum Grupurile. # #linux_lvm_vgpath / dev # Muntele punct de a folosi pentru a monta temporar instantaneu(s). # #linux_lvm_mountpath / calea / catre / mount / LVM / imagine / în timpul / de rezervă ############################### ### PUNCTE DE REZERVĂ / SCRIPTURI ### ############################### # Localhost backup / home / localhost / backup / etc / localhost / backup / var / log / localhost / #backup / home / localhost / # Backup / etc / localhost / # Backup / usr / local / localhost / # Backup / var / log / rsnapshot localhost / # Backup / etc / passwd localhost / # Backup / home / foo / My Documents / localhost / # Backup / foo / bar / localhost / one_fs = 1, rsync_short_args =-urltvpog # Backup_script / usr / local / bin / backup_pgsql.sh localhost / postgres / # Trebuie să setați linux_lvm_ * parametrii de mai jos înainte de a utiliza instantanee LVM # Rezervă LVM://vg0/xen-home / lvm-vg0/xen-home / # EXAMPLE.COM # Backup_script / bin / Data "+ de rezervă de example.com început la% c" unused1 # Rezervă root@example.com:/home / example.com / rsync_long_args = - bwlimit = 16, exclude = core # Rezervă root@example.com:/etc / example.com / exclude = mtab,exclude = core # Backup_script ssh root@example.com "mysqldump-A > /var / db / depozit / mysqlsql" unused2 # Rezervă root@example.com:/var / db / benă / example.com / # Backup_script / bin / Data "+ de rezervă de example.com încheiat la% c" unused9 # CVS.SOURCEFORGE.NET # Backup_script / usr / local / bin / backup_rsnapshot_cvsroot.sh rsnapshot.cvs.sourceforge.net / # RSYNC.SAMBA.ORG # Backup rsync://rsync.samba.org / rsyncftp / rsync.samba.org / rsyncftp /
Pentru a verifica configurarea corecta a rsnapshot executați următoarea comandă
$ sud rsnapshot configtest Sintaxa OK
Când se întoarce Syntax OK
este că configurația este corectă.
Am constatat că funcționează prin efectuarea primei rezervă cu comanda.
$ sudo rsnapshot de zi cu zi
Am constatat că dosarul este creat /backup / zi cu zi.0/localhost lianți care conțin acasă, etc y var / log ne-am dorit pentru a salva.
$ sudo ls-la / de rezervă / de zi cu zi.0/localhost
A doua zi, vom continua cu rsnapshot nostru tutorial.
Backup Rsnapshot en GNU / Linux. (1/3)
Backup Rsnapshot en GNU / Linux. (2/3)
Backup Rsnapshot en GNU / Linux. (3/3)
Alo,
În cazul în care sunteți interesat, ElkarBackup este un software de backup folosind rsnapshot. Acesta este de fapt o interfață web pentru rsnapshot, dar, de asemenea, mult mai.
https://github.com/elkarbackup/elkarbackup
În plus, pentru a facilita gestionarea și recuperarea de backup, Cred că un mare potential sa se pre-script-uri și post-script-uri. Curs, software-ul este gratuit, iar codul este disponibil.
Datorită încerca să vedem ce mi se pare și comentariul.
Dacă eu sunt zilnic backup un director local, să zicem / backup / în directorul rsnapshot / backup_r /, există nici un fel de a nu necesita / backup_r / zilnic.0/rezervă / a fi o copie, ci mai degrabă un set de link-uri către / de rezervă, economisind astfel spatiu pe disc?
Mulțumiri.
Lester
copie de rezervă a fost link-uri hard atât de singur copia fișierele modificate ocupă spațiu pe disc.
Cred că o soluție bună este: Începeți cu / backup_r / gol. Apoi:
mkdir-m 0755 -p / backup_r / zilnic.0/
/bin / cp-al / backup / / backup_r / zilnic.0/ &
Din moment ce / de rezervă / este deja susținută de către furnizor de VPS pentru câteva zile, atunci acest lucru ar trebui să lucreze pentru completarea mai multe zile. Eu pur și simplu nu știu dacă există dezavantaje la acest plan?