Deoarece importanta backup-ului este critica pentru companii dar si pentru persoane fizice, exista mai multe servicii care ofera backup folosind cloud storage. Astfel fisierele importante pot fi usor sincronizate intre mai multe dispozitive (smartphone, desktop, notebook, netbook etc), iar in cazul unei defectiuni hardware sau stergere accidentala pot fi recuperate.
Aceste servicii ofera gratuit un anumit spatiu de stocare, iar daca se doreste spatiu mai mult se achita o taxa lunara.
La alegerea unui serviciu de backup trebuie avuta in vedere si confidentialitatea respectiv "data at rest protection" si anume daca fisierule sunt criptate, iar daca operatorul serviciului poate accesa informatiile clientilor.
Dintre serviciile de cloud backup enumeram:
-
Ubuntu One
-
Dropbox
-
ADrive
Resurse:
-
Comparison of online backup services
-
Data at Rest vs. Data in Motion
Cron jobs
Cron
Reprezinta o modalitate in Linux/Unix cu ajutorul careia se pot programa executii de comenzi sau programe la un moment dat in viitor (in mod repetat sau nu). Comanda sau programul se executa in background de catre un proces numit cron daemon.
Cron daemon (crond sau cron in functie de distributie) cauta fisierele cu joburi (sarcini sau comenzi) de executat in directorul numit cron spool directory si care este /var/spool/cron/crontabs si unde se gaseste un fisier text pentru fiecare user din sistem avand numele acestuia (daca utilizatorul are joburi de executat). Aceste fisiere sunt incarcate in memorie. Fiecare utilizator din sistem are propriile cron job-uri independent de ceilalti useri.
Cron daemon verifica la fiecare minut daca mtime al spool directory s-a modificat, iar daca s-a modificat reincarca job-urile in memorie.
Exista 2 fisiere ( /etc/cron.deny si /etc/cron.allow) care stabilesc userii care au dreptul sa foloseasca crontab.
Daca fisierul cron.allow nu exista, dar cron.deny exista si este gol, fiecare user are dreptul sa foloseasca crontab.
Daca nici cron.allow nici cron.deny nu exista utilizatorii nu au dreptul sa foloseasca crontab.
Daca ambele fisiere exista dar sunt goale, niciun utilizator nu are dreptul sa foloseasca crontab.
Aceste fisiere se editeaza cu username-ul celui la care ne referim (cel care are dreptul sau nu sa foloseasca crontab), cate un username pe fiecare linie. Poate fi folosit cuvantul ALL sau NONE.
Accesul sau restrictia unui utilizator la crontab se refera la dreptul acestuia de a edita fisierul din/var/spool/cron/crontabs folosind crontab sau direct folosind un editor text. Nu se refera la dreptul de a avea si executa cron job-uri. Userul root va putea in continuare sa editeze cron-urile pentru utilizator.
Crontab are 2 semnificatii:
a) este programul care instaleaza, dezinstaleaza si editeaza lista de job-uri (fisierele din /var/spool/cron/crontabs) pentru fiecare utilizator folosite de cron daemon. Acesta foloseste de fapt un editor text si valideaza corectitudinea fisierului care se modifica;
b) este fisierul de configurare al lui cron daemon din /etc;
Exista 2 categorii de cron jobs:
1. Joburi pentru fiecare utilizator ( /var/spool/cron/crontabs)
2. Joburi globale
Structura unui fisier cu job-uri din /var/spool/cron/crontabs este urmatoarea:
Pentru a evita erorile, nu se recomanda editarea in mod direct (cu editorul preferat precum VIM) a fisierului care este folosit de cron daemon ci folosind comanda crontab.
In Ubuntu Cron Daemon pastreaza logurile in fisierul /var/log/syslog
Comentariile sunt permise dar trebuie sa fie unice pe linie. Se foloseste "#".
Exemplu
|
* 12 10-16/2 * * /root/scripts/backup.sh
identic cu
* 12 10,12,14,16 * * /root/scripts/backup.sh
|
Optiune:
-e = editare crontab sau creare daca nu exista - foloseste editorul default, cel definit in variabila globala EDITOR sau VISUAL
-l = listare cron jobs
-r = remove user crontab
-i = interactiv la delete
La editarea crontab-ului se pot folosi intervale continue sau discrete folosit caracterul "-" (minus) sau "," (virgula)
Exemplu: 1-5 * * 1,2 * script
In afara cronjob-urilor pentru fiecare utilizator care se gasesc in directorul /var/spool/con/crontabs, cron daemon foloseste job-uri globale definite in fisierul de configurare numit /etc/crontab. Structura acestuia este urmatoarea:
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
Dupa declararea variabilelor pe care le va folosi cron, pe fiecare linie se gaseste un job de rulat.
Dupa cele 5 coloane care reprezinta timpii folositi de cron se gaseste user-ul care va executa programul si comanda de executat.
run-parts este un concept original din Debian care are drept scop executarea tuturor scripturilor dintr-un director.
Deci cron daemon va executa la fiecare ora, zi, saptamana si luna scripturile aflate in directoarele /etc/cron.hourly,/etc/cron.daily, /etc/cron.weekly si /etc/cron.monthly
Limitari: exista programe care nu pot fi rulate de catre cron ( Exemplu: ssh-agent) acest lucru in special fiindca variabilele de environment nu sunt accesibile lui crond.
Important
La specificarea scripturilor care trebuie sa fie rulate in mod repetat este obligatoriu sa folosim cai absolute fiindca crond nu are acces la variabilele globale ale sistemului si exista astfel posibilitatea sa nu functioneze corect. Aceasta eroare este frecventa si greu de depistat.
Resurse:
Dostları ilə paylaş: |