Shell script-uri, documentație rusă pe ubuntu

Una dintre cele mai simple opțiuni pentru copierea de rezervă a sistemului este folosirea unui script shell. De exemplu, un script poate fi folosit pentru a configura care directoare necesită o copie de rezervă și pentru a transmite aceste directoare ca argumente către utilitarul tar. care creează fișiere de arhivă. Fișierul de arhivă poate fi apoi mutat sau copiat într-o altă locație. Arhiva poate fi, de asemenea, creată pe un sistem de fișiere la distanță, cum ar fi NFS.







Utilitarul tar crează un fișier de arhivă din mai multe fișiere și directoare. tar poate, de asemenea, săriți fișiere prin utilitare de compresie, reducând astfel dimensiunea fișierului de arhivă.

Următorul script shell utilizează tar pentru a crea un fișier de arhivă pe un sistem de fișiere montat la distanță. Numele arhivei este determinat cu ajutorul utilitarelor de linii de comandă suplimentare.

$ backup_files. pentru a afișa directoarele pe care doriți să le salvați. Lista poate fi schimbată în funcție de cerințele dvs.

$ zi. O variabilă care conține ziua săptămânii. Acesta este folosit pentru a crea fișiere de arhivă pentru fiecare zi a săptămânii, oferind un istoric de rezervă timp de șapte zile. Există și alte modalități de a obține acest rezultat, inclusiv utilizarea utilitarului de date.

nume gazdă. O variabilă care conține un nume de rețea scurt pentru sistem. Folosirea unui nume de rețea în numele arhivei vă permite să plasați arhive zilnice din diferite sisteme într-un singur director.

$ archive_file. numele complet al arhivei.

$ dest. locația fișierului de arhivă. Directorul trebuie creat și, în acest caz, trebuie montat înainte de executarea scriptului de backup. Vedeți secțiunea Network File System (NFS) pentru mai multe detalii despre utilizarea NFS.

mesaje de stare. mesajele opționale sunt trimise către consola folosind utilitarul ecou.







tar cff $ dest / $ archive_file $ backup_files. comanda tar. folosit pentru a crea un fișier de arhivă.

dow. zi a săptămânii pentru executarea comenzii, de la 0 la 7. Duminica poate fi desemnată ca 0 și 7, ambele valori fiind permise.

comandă. comanda de executat.

Pentru a rula scriptul backup.sh de mai sus cu cron, introduceți următoarele în terminal:

Folosind sudo pentru a rula comanda crontab -e schimbă fișierul crontab al utilizatorului root. Acest lucru este necesar pentru a crea copii de rezervă pentru directoarele pe care le este permisă accesarea numai a rădăcină.

Adăugați următoarea intrare în fișierul crontab:

Scriptul backup.sh va fi rulat în fiecare zi la miezul nopții.

Scriptul backup.sh trebuie să fie copiat în directorul / usr / local / bin / pentru a face această intrare să funcționeze corect. Scriptul poate fi plasat oriunde în sistemul de fișiere, doar modificați calea către script în crontab în consecință.

Pentru o privire mai detaliată asupra opțiunilor crontab, consultați secțiunea Legături.

Odată ce arhiva este creată, este important să verificați arhiva. Arhiva poate fi verificată prin afișarea listei fișierelor care sunt în ea, dar cel mai bun test este să restaurați fișierele din arhivă.

1. Pentru a vizualiza conținutul arhivei, introduceți terminalul:

2. Pentru a restaura fișiere din arhivă într-un alt director, tastați:

Opțiunea -C a comenzii tariere redirectează fișierele extrase în directorul specificat. Exemplul de mai sus extrage fișierul / etc / hosts în / tmp / etc / hosts. tar crează o nouă structură de directoare pentru fișierele extrase.

De asemenea, rețineți absența "/" de conducere în calea fișierului extras.

3. Pentru a restaura toate fișierele de arhivă, introduceți următoarele:

Aceasta va suprascrie toate fișierele din sistemul de fișiere.

Pentru mai multe informații despre scripturile de shell, consultați Ghidul avansat de bash-scripting.

Cartea Teach Yourself Shell Programming în 24 de ore este disponibilă online și este o resursă minunată pentru crearea de scripturi shell.

Pagina CronHowto Wiki conține detalii despre opțiunile cron suplimentare.

Consultați Manualul GNU tar pentru opțiuni suplimentare de tar.

Shell script-ul utilizează tar pentru a crea o arhivă, dar există multe alte utilități pe care le puteți utiliza. De exemplu:

cpio. Folosit pentru copierea fișierelor către și din arhivă.

dd. parte din pachetul coreutils. Un utilitar de nivel scăzut care poate copia datele de la un format la altul.

rsnapshot. Un utilitar pentru obținerea unui instantaneu al sistemului de fișiere folosit pentru a obține copii ale întregului sistem de fișiere.


Servere pe Ubuntu







Articole similare

Trimiteți-le prietenilor: