32 lines
889 B
Bash
Executable File
32 lines
889 B
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
user=exu
|
|
server=172.18.50.102
|
|
port=22
|
|
sshkeypath=$HOME/.ssh/id_ed25519
|
|
# NOTE don't transfer to the storage box directly, leads to mangled file names
|
|
# see: https://serverfault.com/a/765951
|
|
|
|
# unlock ssh key
|
|
if ! ssh-add -T "${sshkeypath}.pub" &>/dev/null; then
|
|
ssh-add -q "$sshkeypath"
|
|
fi
|
|
|
|
# NAS: video files
|
|
rsync -uvr --progress --delete /mnt/storage/MediaLibrary/{Movies,Patreon,Shows} /mnt/lan1nas1/ &
|
|
|
|
# NAS: music
|
|
rsync -uvrL --progress --delete /home/exu/Musik /mnt/lan1nas1/ &
|
|
|
|
# Server: music
|
|
rsync -uvrL --progress --delete -e "ssh -i $sshkeypath -p $port" /home/exu/Musik/ ${user}@${server}:/mnt/media/Musik/
|
|
|
|
# Server: video files
|
|
rsync -uvr --progress --delete -e "ssh -i $sshkeypath -p $port" /mnt/storage/MediaLibrary/{Movies,Shows} ${user}@${server}:/mnt/media/
|
|
|
|
# wait for background jobs
|
|
wait
|
|
|
|
echo "Finished transfering data"
|