Automating the backup of personal media collection for safe storage.
/media/sdb/scripts/backup/media.sh
/etc/systemd/system/[email protected]
$ sudo sysmtemctl daemon-reload
/etc/udev/rules.d/50-backup.rules
$ sudo udevadm control --reload
| KERNEL=="sd?1",ACTION=="add",SUBSYSTEM=="block",ATTRS{serial}=="SERIAL",SYMLINK+="backup",RUN+="/bin/systemctl --no-block start backup@%k.service" |
Automating the backup of personal media collection for safe storage.
/media/sdb/scripts/backup/media.sh
/etc/systemd/system/[email protected]
$ sudo sysmtemctl daemon-reload
/etc/udev/rules.d/50-backup.rules
$ sudo udevadm control --reload
| [Unit] | |
| Description=USB Backup | |
| BindsTo=dev-%i.device | |
| [Service] | |
| Type=simple | |
| ExecStart=/media/sdb/scripts/backup/media.sh %I |
| #!/bin/bash | |
| { | |
| # Log beginning of backup | |
| /usr/bin/logger 8TB USB Media Backup - Started: `date` | |
| # if needed, create mount directory | |
| if [ ! -d /media/backup ] ; then mkdir /media/backup ; fi | |
| # Backup command using RSync | |
| rsync -avh --progress /media/sdc /media/backup >> /tmp/backup.log 2>&1 | |
| # sync befor unmounting | |
| /bin/sync | |
| # unmount | |
| /bin/unmount /media/backup | |
| # Log end of backup | |
| /usr/bin/logger 8TB USB Media Backup - Ended: `date` | |
| } |