Jak napsat skript, ktery pobezi na pozadi a po pripojeni disku s nazvem "Hello Kitty" spusti automaticky kompletni inkrementalni zalohu disku? A myslim tim zalohu, ze ktere je mozne disk napr. z life linuxove distribuce i kompletne obnovit, vc. boot loaderu.
Dekuji
Nic na pozadi nepotrebujes, staci udev pravidlo neco na styl nize (uz to davno nepouzivam, pac mam NASy ...), ale tak zbytek si snad zvladnes dohledat
cat /etc/udev/rules.d/10-local.rules
# USB SAMSUNG 1.5TB GB
SUBSYSTEM=="block", KERNEL=="sd?", ATTRS{serial}=="533159364A39305343303334", NAME="usb/usb"
SUBSYSTEM=="block", KERNEL=="sd?[0-9]", ATTRS{serial}=="533159364A39305343303334", NAME="usb/usb%n", ACTION=="add", RUN+="/bin/pripoj.usb.sh".
SUBSYSTEM=="block", KERNEL=="sd?[0-9]", ATTRS{serial}=="533159364A39305343303334", NAME="usb/usb%n", ACTION=="remove", RUN+="/bin/odpoj.usb.sh".
zajisteni ihned zajistis pres to udev pravidlo...
zajisteni rozdilovosti souboru pres rdiff-backup (https://www.root.cz/clanky/zaloha-dat-pomoci-rdiff-backup) (otazka jak to zacne byt casem narocne, podle toho jestli zalujes jen system, nebo i velke data, protoze to vzdy pocita diff), muzes se podivat i na rsnapshot (https://www.root.cz/clanky/zalohujeme-s-rsnapshot/), ten nedela diff takze se nemuze spomalovat, ale zas dela zalohy celejch souboru takze to casem muze nasobne narust na velikosti (oproti rdiff-backup)...
zajisteni obnoveni bootloderu, zalezi jak to chces resit, jestli i vcetne rozdeleni disku, tak zalohovat partition table pres sfdisk/sgdisk, u bootloader u MBR/MSDOS rozdeleni zalohovat MBR, u EFI zalohovat EFI oddil u LegacyGPT navic i BIOS_GRUB oddil...
pri obnoveni pak ve skriptu musis rozdelit disk (pres parted) nebo obnovit zaloho rozdeleni pres sfdisk/sgdisk, pomoci dd obnovit mbr u mbr, nebo EFI oddil(y), nasledne nakopirujes pres rsync data z posledni zalohy... a bud nastavis UUID pro oddily jako byli, nebo je v cilovem systemu v /etc/fstab zmenis a pregenerujes initramdisk a grub
bootlodaer pripadne muzes obnovovat tak ze ho proste s toho Live (pozor neni to LifeCD ;-) normalne znovu nainstalovat...
Ahoj
Zrovna nedavno jsem resil to stejne. Prijdu ke komplu, pichnu do nej USB HDD a automaticky se provede zalohovani. Udelal jsem to obdobne jak ti radi "Trenky Dolu", ale misto patlani se s kompletne vlastnim skriptem pouzivam zalohovaci system Borg https://borgbackup.readthedocs.io/en/stable/ (https://borgbackup.readthedocs.io/en/stable/).
Takova mala rada: nezapomen, ze pokud neco spousti udev, defaultne to jede s pravy roota. Muze to byt neprijemne prekvapeni, jsi-li zvykli zalohovat jako user. Zrovna resim jak to zaridit, aby se zalohovani spustilo uzivateli, ktery je momentalne prihlasen na aktivni konzoli...
Citace od: Trenky dolu kdy 01. 09. 2018, 15:40:25
Nic na pozadi nepotrebujes, staci udev pravidlo neco na styl nize (uz to davno nepouzivam, pac mam NASy ...), ale tak zbytek si snad zvladnes dohledat
cat /etc/udev/rules.d/10-local.rules
# USB SAMSUNG 1.5TB GB
SUBSYSTEM=="block", KERNEL=="sd?", ATTRS{serial}=="533159364A39305343303334", NAME="usb/usb"
SUBSYSTEM=="block", KERNEL=="sd?[0-9]", ATTRS{serial}=="533159364A39305343303334", NAME="usb/usb%n", ACTION=="add", RUN+="/bin/pripoj.usb.sh".
SUBSYSTEM=="block", KERNEL=="sd?[0-9]", ATTRS{serial}=="533159364A39305343303334", NAME="usb/usb%n", ACTION=="remove", RUN+="/bin/odpoj.usb.sh".
Na tohle bacha, spouštět udevem skripty, které trvají delší dobu je dost problém, protože takový skript zablokuje celý udev. Nějakou inspiraci, jak to vyřešit hledej třeba zde (https://unix.stackexchange.com/questions/28548/how-to-run-custom-scripts-upon-usb-device-plug-in/28711#28711).