Rsync automaticamente ao fazer hotplug de uma unidade sata (bay não esata)

Rsync automaticamente ao fazer hotplug de uma unidade sata (bay não esata)

para acompanhar meus backups, quero executar um comando rsync específico ao inserir um (s) disco (s) rígido (s) sata específico (s) em qualquer um ou em todos os meus compartimentos de hotswap. Isso seria feito usando uuids de alguma forma para controlar as unidades? sempre que procuro encontro udev para drives USB, isso também pode funcionar aqui?

Responder1

Eu uso uma regra simples do udev para isso. A unidade de backup é marcada com um rótulo de volume específico (use tune2fs para defini-lo). A regra udev inicia um script:

$ cat /etc/udev/rules.d/90-backup.rules 
ACTION=="add", ENV{ID_FS_LABEL}=="backup", RUN+="/usr/local/bin/backup.sh"

(você pode usar ENV{ID_FS_UUID}="some-uuid" se preferir não usar rótulos de volume)

O script apenas executa o rsync:

$ cat /usr/local/bin/backup.sh
#!/bin/bash

mnt=/media/backup

(
mount $mnt
rsync -avx --exclude lost+found /home/ $mnt/backup/
umount $mnt
) > /dev/null 2>&1 &

O udev espera que o comando RUN="" tenha vida curta, então o script executa o rsync em segundo plano.

Isso funcionará para qualquer tipo de unidade e/ou interface - desde que o udev receba uma notificação de que a unidade foi adicionada.

informação relacionada