Kako automatski napraviti sigurnosnu kopiju datoteka na USB medij kada su povezani


Sigurnosna kopija je posljednja odbrana od gubitka podataka, koja nudi način za vraćanje originalnih podataka. Možete koristiti ili prenosivi medij kao što je eksterni čvrsti disk ili USB fleš disk ili dijeljena mrežna mapa, ili udaljeni host za sigurnosnu kopiju podataka. Vrlo je lako (i jednako bitno) automatski napraviti sigurnosnu kopiju vaših važnih datoteka, a da to ne morate učiniti.

Pročitajte također: 24 izvanredna alata za pravljenje rezervnih kopija za Linux sisteme u 2018.

U ovom članku ćemo naučiti kako automatski napraviti sigurnosnu kopiju podataka na prenosivom mediju nakon što ga povežete na vaš Linux stroj. Testiraćemo sa eksternim diskom. Ovo je osnovni vodič za početak korištenja udev-a za rješenja iz stvarnog života.

Za potrebe ovog članka potreban nam je moderan Linux sistem sa:

  1. systemd upravitelj sistema i usluga
  2. udev upravitelj uređaja
  3. rsync alat za pravljenje rezervnih kopija

Kako konfigurirati Udev pravila za prijenosne medije

Udev je upravitelj uređaja koji vam omogućava da definirate pravila koja mogu, između ostalog, pokrenuti izvršavanje programa ili skripte kada se uređaj doda ili ukloni iz sistema koji radi, kao dio rukovanja događajima uređaja . Ovu funkciju možemo koristiti za izvršavanje skripte za sigurnosnu kopiju nakon dodavanja prenosivog medija u sistem koji radi.

Prije nego što konfiguriramo stvarno pravilo za rukovanje događajima uređaja, moramo udevu pružiti neke atribute prenosivog medija koji će se koristiti za sigurnosnu kopiju. Povežite eksterni disk na sistem koji radi i pokrenite sljedeću lsusb naredbu da identifikujete njegovog dobavljača i ID proizvoda.

U svrhu testiranja, koristit ćemo 1TB vanjski čvrsti disk kao što je prikazano.

lsusb

Iz izlaza gornje naredbe, naš ID dobavljača uređaja je 125f, koji ćemo specificirati u udev pravilima kao što je objašnjeno u nastavku.

Prvo uklonite povezani medij iz sistema i kreirajte novu datoteku udev pravila pod nazivom 10.autobackup.rules u direktoriju /etc/udev/rules.d/.

10 u imenu datoteke specificira redoslijed izvršavanja pravila. Redoslijed kojim se pravila raščlanjuju je važan; uvijek biste trebali kreirati prilagođena pravila koja će se raščlaniti prije zadanih vrijednosti.

sudo vim /etc/udev/rules.d/10.autobackup.rules

Zatim u njega dodajte sljedeće pravilo:

SUBSYSTEM=="block", ACTION=="add", ATTRS{idVendor}=="125f" SYMLINK+="external%n", RUN+="/bin/autobackup.sh"

Hajde da ukratko objasnimo gore navedeno pravilo:

  • "==": je operator za poređenje radi jednakosti.
  • "+=": je operator za dodavanje vrijednosti ključu koji sadrži listu unosa.
  • SUBSYSTEM: odgovara podsistemu uređaja za događaje.
  • AKCIJA: odgovara nazivu radnje događaja.
  • ATTRS{idVendor}: odgovara vrijednostima sysfs atributa uređaja događaja, što je ID dobavljača uređaja.
  • RUN: specificira program ili skriptu za izvršavanje kao dio rukovanja događajima.

Sačuvajte datoteku i zatvorite je.

Kreirajte skriptu za automatsko kopiranje

Sada kreirajte skriptu za automatsko pravljenje rezervnih kopija koja će automatski napraviti rezervnu kopiju datoteka na prenosivom USB-u kada se poveže sa sistemom.

sudo vim /bin/autobackup.sh 

Sada kopirajte i zalijepite sljedeću skriptu, obavezno zamijenite vrijednosti BACKUP_SOURCE, BACKUP_DEVICE, i MOUNT_POINT u skripti.

#!/usr/bin/bash
BACKUP_SOURCE="/home/admin/important"
BACKUP_DEVICE="/dev/external1"
MOUNT_POINT="/mnt/external"


#check if mount point directory exists, if not create it
if [ ! -d “MOUNT_POINT” ] ; then 
	/bin/mkdir  “$MOUNT_POINT”; 
fi

/bin/mount  -t  auto  “$BACKUP_DEVICE”  “$MOUNT_POINT”

#run a differential backup of files
/usr/bin/rsync -auz "$MOUNT_POINT" "$BACKUP_SOURCE" && /bin/umount "$BACKUP_DEVICE"
exit

Zatim učinite skriptu izvršnom sljedećom naredbom.

sudo chmod +x /bin/autobackup.sh

Zatim ponovo učitajte udev pravila koristeći sljedeću naredbu.

udevadm control --reload

Sljedeći put kada povežete svoj eksterni hard disk ili bilo koji uređaj koji ste konfigurirali na sistem, svi vaši dokumenti sa navedene lokacije bi trebali biti automatski napravljeni na njemu.

Napomena: Koliko će ovo djelotvorno funkcionirati, može utjecati sistem datoteka na vašem prijenosnom mediju i udev pravila koja pišete, posebno hvatanje atributa uređaja.

Za više informacija pogledajte udev, mount i rsync man stranice.

man udev
man mount 
man rsync 

Možda biste željeli pročitati i ove sljedeće članke koji se odnose na sigurnosnu kopiju Linuxa.

  1. rdiff-backup – Alat za daljinsko inkrementalno sigurnosno kopiranje za Linux
  2. Tomb – Alat za šifriranje datoteka i lične sigurnosne kopije za Linux
  3. System Tar and Restore – Svestrana skripta za sigurnosnu kopiju za Linux
  4. Kako napraviti sigurnosne kopije efikasne u propusnom opsegu koristeći Duplicity u Linuxu
  5. Rsnapshot – Alat za lokalno/daljinsko sigurnosno kopiranje za Linux
  6. Kako sinhronizirati dva Apache web servera/web stranice koristeći Rsync

To je sve za sada! U ovom članku smo objasnili kako automatski napraviti sigurnosnu kopiju podataka na prenosivom mediju nakon što ga povežete na vaš Linux stroj. Željeli bismo čuti od vas putem obrasca za povratne informacije u nastavku.