Kā automātiski dublēt failus uz USB datu nesēju, kad ir izveidots savienojums


Dublēšana ir pēdējā aizsardzība pret datu zaudēšanu, piedāvājot līdzekļus sākotnējo datu atjaunošanai. Datu dublēšanai varat izmantot noņemamu datu nesēju, piemēram, ārējo cieto disku vai USB zibatmiņu, vai koplietojamo tīkla mapi, vai attālo resursdatoru. Ir ļoti viegli (un tikpat svarīgi) automātiski dublēt svarīgos failus, jums tas nav jāatceras.

Šajā rakstā mēs uzzināsim, kā automātiski dublēt datus noņemamā datu nesējā pēc tam, kad tie ir savienoti ar Linux mašīnu. Mēs pārbaudīsim ar ārējo disku. Šī ir pamata rokasgrāmata, lai sāktu lietot udev reālās dzīves risinājumos.

Šī raksta vajadzībām mums ir nepieciešama moderna Linux sistēma ar:

  1. sistēmas sistēmu un pakalpojumu pārvaldnieks
  2. udev ierīces pārvaldnieks
  3. rsync dublēšanas rīks

Kā konfigurēt Udev noteikumus noņemamam datu nesējam

Udev ir ierīču pārvaldnieks, kas ļauj notikumu apstrādes ietvaros noteikt noteikumus, kas cita starpā var izraisīt programmas vai skripta izpildi, kad ierīce tiek pievienota vai noņemta no darbojošās sistēmas. Mēs varam izmantot šo funkciju, lai izpildītu rezerves skriptu pēc noņemama datu nesēja pievienošanas darbojošajai sistēmai.

Pirms konfigurējam faktisko kārtulu ierīces notikumu apstrādei, mums jānorāda udev daži noņemamā datu nesēja atribūti, kas tiks izmantoti dublējumā. Pievienojiet ārējo disku darbojošajai sistēmai un palaidiet šādu komandu lsusb, lai identificētu tā pārdevēju un produkta ID.

Pārbaudes nolūkos mēs izmantosim 1 TB ārējo cieto disku, kā parādīts.

$ lsusb

No iepriekš minētās komandas izejas mūsu ierīces piegādātāja ID ir 125f , kuru mēs norādīsim udev noteikumos, kā paskaidrots tālāk.

Vispirms noņemiet pievienoto datu nesēju no sistēmas un direktorijā /etc/udev/rules.d/ izveidojiet jaunu udev noteikumu failu ar nosaukumu 10.autobackup.rules .

10 faila nosaukumā norāda kārtulu izpildes kārtību. Noteikumu parsēšanas secība ir svarīga; jums vienmēr ir jāizveido pielāgotas kārtulas, kuras parsēt pirms noklusējuma.

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

Pēc tam pievienojiet šādu kārtulu:

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

Īsi izskaidrosim iepriekš minēto likumu:

  • "==" : ir operators, kas salīdzina vienlīdzību.
  • "+ =" : operators, kurš pievieno vērtību atslēgai, kurai ir ierakstu saraksts.
  • APAKŠSISTĒMA: atbilst notikuma ierīces apakšsistēmai.
  • ACTION: atbilst pasākuma darbības nosaukumam.
  • ATTRS {idVendor}: atbilst notikuma ierīces sysfs atribūta vērtībām, kas ir ierīces piegādātāja ID.
  • RUN: norāda programmu vai skriptu, kas jāizpilda kā daļa no notikumu apstrādes.

Saglabājiet failu un aizveriet to.

Izveidojiet automātiskās dublēšanas skriptu

Tagad izveidojiet automātiskās dublēšanas skriptu, kas automātiski dublēs failus uz noņemamu USB, kad būs izveidots savienojums ar sistēmu.

$ sudo vim /bin/autobackup.sh 

Tagad nokopējiet un ielīmējiet šo skriptu, noteikti aizstājiet skripta vērtības BACKUP_SOURCE, BACKUP_DEVICE un MOUNT_POINT.

#!/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

Pēc tam izveidojiet skriptu izpildāmu ar šādu komandu.

$ sudo chmod +x /bin/autobackup.sh

Pēc tam atkārtoti ielādējiet udev kārtulas, izmantojot šādu komandu.

$ udevadm control --reload

Nākamreiz, kad sistēmai pievienosiet ārējo cieto disku vai jebkuru citu ierīci, kuru konfigurējāt, visi jūsu dokumenti no norādītās vietas tajā tiks automātiski dublēti.

Piezīme: Cik efektīvi tas darbojas, var ietekmēt noņemamā datu nesēja failu sistēma un jūsu rakstītie udev noteikumi, jo īpaši ierīces atribūtu tveršana.

Lai iegūtu papildinformāciju, skatiet udev, mount un rsync rokasgrāmatas.

$ man udev
$ man mount 
$ man rsync 

Varat arī izlasīt šos ar Linux dublējumkopiju saistītos rakstus.

  1. rdiff-backup - Attālināts papildu dublēšanas rīks Linux
  2. Tomb - failu šifrēšanas un personiskās dublēšanas rīks Linux
  3. Sistēmas darva un atjaunošana - daudzpusīgs Linux dublēšanas skripts
  4. Kā izveidot joslas platumu efektīvus dublējumus, izmantojot Linux daudzveidību
  5. Rsnapshot - lokāls/attāls dublēšanas rīks Linux
  6. Kā sinhronizēt divus Apache tīmekļa serverus/vietnes, izmantojot Rsync

Tas pagaidām ir viss! Šajā rakstā mēs esam paskaidrojuši, kā automātiski dublēt datus noņemamā datu nesējā pēc tam, kad tie ir savienoti ar jūsu Linux mašīnu. Mēs vēlētos dzirdēt no jums, izmantojot zemāk esošo atsauksmju veidlapu.