Mentés (backup)

A mentés a nagyon fontos gyakorlati rendszergazdai teendő. Az informatika egyik alaptétele a következő: ha egy adat csak egy helyen van meg, az nincsen (!).

Ezért fontos mentési stratégiát kialakítani egy szerver, de akár a desktop gépünk, illetve hordozható eszközünk esetében is! Tiszteljük meg annyira saját magunkat, hogy saját munkáinkat, adatainkat, leveleinket, kapcsolatainkat, etc. legalább lementjük egy fizikailag különböző helyre időközönként! Erre szolgál egyébként a felhő is. Azonban nem minden esetben kifizetődő a használata! Egyébként pl. az ownCloud felhőt mi is telepíthetjük. Lehet saját felhőnk is!

https://owncloud.org/

Nézzük azonban a klasszikus backup-ot, mondjuk egy kódolt hálózatit.

A szeptember 16-ai írásomban az SSH-ról leírtam a publikus kulccsal hitelesített jelszó nélküli kapcsolatot. Ez tökéletes alap egy hálózati mentéshez. Hirtelen két stratégia is eszembe jut.

  1. A távoli szerveren fut egy ún. cron job, a felhasználói crontab-ban – ez egy ütemezett feladatot jelent – mondjuk naponta. Egy script. ami ún. .tar.gz vagy .tgz tömörített állományt (archívumot) hoz létre – ez a Linux/UNIX rendszerek saját ZIP megoldása – a menteni kívánt könyvtárból, természetesen rekurzívan. Futhat pl. hajnai 3-kor. Hajnali fél négykor pedig a helyi gépünkön, ahova mentünk, lefut egy másik script, ami scp-vel, jelszó nélküli átvitelben átmásolja, “letölti” a tömörített állományt. 🙂
  2. A második megoldásban az “ssh” parancs segítségével a távoli gépen – amiről a mentést készítjük – egy scriptet futtatunk, amiben tömörítjük a menteni kívánt könyvtárat a “tar czvf <archívum_időbélyeg.tgz> <könyvtár>” paranccsal vagy a tar és a gzip parancsok kombinációjával (tar cvo <könyvtár> | gzip – > <archívum_időbélyeg.tar.gz>), ezt követően pedig scp-vel átmásoljuk a helyi gépünkre. Ezt elég lesz helyileg ütemeznünk, de akár kézzel is indíthatjuk. 🙂

https://www.shellhacks.com/ssh-execute-remote-command-script-linux/

Látható, hogy nem ördöngősség a mentés. Jóllehet azért nagyon nagy mennyiségű adat mentésénél már több eszközre van szükségünk, mint egy-két Linux parancs. 🙂

Meg kell említsem még a bzip2-t, mint egy újabb, és hatékonyabb tömörítő algoritmust használó tömörítő programcsomagot (https://www.sourceware.org/bzip2/). Általában igaz, hogy a tar archivál, a gzip és a bzip2 pedig tömörítenek. Ma már a bzip2 is alapból telepítve van egy Linux-on, sőt tar-ból is elérhető a “-j, –bzip2” kapcsolóval. Az alábbi linken található még néhány hasznos információ az archiválásról.

https://www.thomas-krenn.com/en/wiki/Archive_under_Linux_(tar,_gz,_bz2,_zip)

Mi az a UNIX? Honnan ered a Linux? Mi a csoda az a GNU?

A UNIX matematikai alapokon nyugszik. Igen, kell a matek! 🙂 Alapvetően két fő ágba sorolhatóak a UNIX operációs rendszerek. Ezek: System V illetve POSIX (Portable Operating System Interface for uniX).

A Linux a POSIX családba tartozik, ide tartozik még – a teljesség igénye nélkül – a BSD, a Mac OS X, a QNX és a Windows NT is. 🙂

https://hu.wikipedia.org/wiki/POSIX

Aztán vannak az ún. System V derivátumok, ezek – a teljesség igénye nélkül: AIX, SCO, Solaris, OpenSolaris és HP-UX.

https://hu.wikipedia.org/wiki/UNIX_System_V

A különbség abból adódik, hogy a POSIX később keletkezett, ezért pl. az IPC – az Inter Process Communication, vagyis a folyamatok közötti kommunikáció – újabb implementációt kapott. Ezen kívül több markáns különbség van pl. egy RedHat Linux és egy Solaris operációs rendszer kezelése között. Nem utolsó sorban a Linux rendszereken a GNU összes csomagja alapból helyet kapott, ami pl. egy Solaris UNIX esetében külön opció. 🙂

https://www.tutorialspoint.com/inter_process_communication/inter_process_communication_system_v_posix.htm

És a végére egy kis olvasnivaló a GNU-ról. A betüszó jelentése rekurzív (önhivatkozó) módon „GNU’s Not Unix”. 🙂

https://hu.wikipedia.org/wiki/GNU