Bii O ṣe le ṣe Afẹyinti Awọn faili Aifọwọyi si Media Media Nigbati o ba sopọ


Afẹyinti jẹ aabo ti o kẹhin si pipadanu data, fifun ọna lati mu data atilẹba pada sipo. O le lo boya media yiyọ kuro gẹgẹbi dirafu lile ti ita tabi disk filasi USB tabi folda nẹtiwọọki ti a pin, tabi alejo latọna jijin lati ṣe afẹyinti data rẹ. O rọrun pupọ (ati bakanna pataki) lati ṣe afẹyinti awọn faili pataki rẹ laifọwọyi laisi o ni lati ranti lati ṣe bẹ.

Ninu àpilẹkọ yii, a yoo kọ bi a ṣe le ṣe adaṣe afẹyinti data si media yiyọ lẹhin sisopọ rẹ si ẹrọ Linux rẹ. A yoo ṣe idanwo pẹlu disk ita. Eyi jẹ itọsọna ipilẹ lati jẹ ki o bẹrẹ pẹlu lilo udev fun awọn iṣeduro igbesi aye gidi.

Fun idi ti nkan yii, a nilo eto Lainos igbalode pẹlu:

  1. Awọn ọna ṣiṣe eto ati oluṣakoso iṣẹ
  2. udev oluṣakoso ẹrọ
  3. ohun elo afẹyinti rsync

Bii o ṣe le tunto Awọn ofin Udev fun Media Yiyọ

Udev jẹ oluṣakoso ẹrọ kan ti o fun ọ laaye lati ṣalaye awọn ofin ti o le laarin awọn miiran, ṣiṣe ipaniyan ti eto kan tabi iwe afọwọkọ nigbati a ba fi ẹrọ kun si tabi yọ kuro lati inu eto ṣiṣe, gẹgẹ bi apakan ti mimu iṣẹlẹ iṣẹlẹ ẹrọ. A le lo ẹya ara ẹrọ yii lati ṣe iwe afọwọkọ lẹhin ti o ṣe afikun media yiyọ si eto ṣiṣe.

Ṣaaju ki a to tunto ofin gangan fun mimu iṣẹlẹ iṣẹlẹ, a nilo lati pese udev diẹ ninu awọn abuda ti media yiyọ ti yoo ṣee lo fun afẹyinti. So disk ita pọ si eto ṣiṣe ati ṣiṣe aṣẹ lsusb atẹle lati ṣe idanimọ olutaja rẹ ati ID ọja.

Fun idi idanwo naa, a yoo lo 1TB disiki lile ita bi o ti han.

$ lsusb

Lati iṣejade aṣẹ ti o wa loke, ID olutaja ẹrọ wa ni 125f , eyiti a yoo ṣalaye ni awọn ofin udev bi a ti salaye ni isalẹ.

Ni akọkọ, yọ media ti o sopọ kuro lati inu eto ki o ṣẹda faili awọn ofin udev tuntun ti a pe ni 10.autobackup.rules labẹ itọsọna /etc/udev/rules.d/.

Awọn 10 ninu orukọ faili ṣalaye aṣẹ ti pipa awọn ofin. Ilana ti awọn ofin ṣe ṣoki jẹ pataki; o yẹ ki o ṣẹda awọn ofin aṣa nigbagbogbo lati ni itupalẹ ṣaaju awọn aiyipada.

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

Lẹhinna ṣafikun ofin atẹle ninu rẹ:

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

Jẹ ki a ṣalaye ni ṣoki ofin ti o wa loke:

  • \"== \" : jẹ oniṣẹ lati ṣe afiwe fun dọgba.
  • \"+ = \" : jẹ oluṣe lati ṣafikun iye si bọtini kan ti o mu atokọ awọn titẹ sii dani.
  • SUBSYSTEM: baamu eto-iṣẹ ti ẹrọ iṣẹlẹ.
  • Iṣe: baamu orukọ iṣe iṣe.
  • ATTRS {idVendor}: awọn ibaamu awọn iye siysys abuda ti ẹrọ iṣẹlẹ, eyiti o jẹ ID olutaja ẹrọ.
  • RUN: ṣe afihan eto kan tabi iwe afọwọkọ lati ṣe gẹgẹ bi apakan ti mimu iṣẹlẹ naa.

Fipamọ faili naa ki o pa.

Ṣẹda Afẹyinti Afẹyinti Aifọwọyi

Bayi ṣẹda iwe afọwọkọ afẹyinti ti yoo ṣe awọn faili afẹyinti laifọwọyi si yiyọ USB nigbati o ba sopọ si eto naa.

$ sudo vim /bin/autobackup.sh 

Bayi daakọ ati lẹẹ mọ iwe afọwọkọ wọnyi, rii daju lati rọpo awọn iye ti BACKUP_SOURCE, BACKUP_DEVICE, ati MOUNT_POINT ninu iwe afọwọkọ naa.

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

Lẹhinna jẹ ki iwe afọwọkọ ṣiṣẹ pẹlu aṣẹ atẹle.

$ sudo chmod +x /bin/autobackup.sh

Nigbamii, tun gbe awọn ofin udev gbe pẹlu lilo pipaṣẹ atẹle.

$ udevadm control --reload

Nigbamii ti o ba sopọ mọ disiki lile ti ita rẹ tabi ohunkohun ti ẹrọ ti o tunto si eto naa, gbogbo awọn iwe aṣẹ rẹ lati ipo pàtó yẹ ki o ṣe afẹyinti adaṣe si rẹ.

Akiyesi: Bawo ni ṣiṣe yii ṣe le ni ipa nipasẹ eto faili lori media yiyọ rẹ ati awọn ofin udev ti o kọ, ni pataki yiya awọn eroja ẹrọ naa.

Fun alaye diẹ sii, wo udev, oke ati awọn oju-iwe eniyan rsync.

$ man udev
$ man mount 
$ man rsync 

O le tun fẹ lati ka wọnyi atẹle awọn nkan ti o ni ibatan pẹlu Linux.

  1. rdiff-afẹyinti - Ọpa Afikun Afikun Latọna jijin fun Lainos
  2. Ibojì - Ifitonileti Faili kan ati Ọpa Afẹyinti Ti ara ẹni fun Lainos
  3. Eto Tar ati Mu pada - Iwe afọwọkọ Afikun fun Lainos
  4. Bii o ṣe Ṣẹda Awọn afẹyinti Afẹyinti bandwidth Lilo Duplicity ni Linux
  5. Rsnapshot - A Agbegbe/Irinṣẹ Afẹyinti latọna jijin fun Lainos
  6. Bii a ṣe le Ṣepọ Awọn olupin wẹẹbu Afun Meji/Awọn oju opo wẹẹbu Lilo Rsync

Iyẹn ni gbogbo fun bayi! Ninu nkan yii, a ti ṣalaye bawo ni a ṣe le ṣe afẹyinti data adaṣe si media yiyọ lẹhin sisopọ rẹ si ẹrọ Linux rẹ. A yoo fẹ lati gbọ lati ọdọ rẹ nipasẹ fọọmu esi ni isalẹ.