Hab mal was gebastelt.
Bash
#!/bin/bash
echo "############################################"
echo "############################################"
echo "# Backup-Script #"
echo "# Author: tk1908 #"
echo "# E-Mail: tk1908@tkbrew.net #"
echo "# #"
echo "############################################"
echo "############################################"
OS=$(uname)
case $OS in
Linux) ROOTPATH = "/mnt";;
Darwin) ROOTPATH = "/Volumes";;
esac
HOSTS=(krypton keppler tesla)
#SHARES=(applications backups documents games misc movies music pictures series)
SHARES=( $(showmount -e krypton |cut -d " " -f1 | sed '1d') ) # Gedankengang! Nicht prod. Reines dev.
echo "Migrate from Data from krypton to xenon01"
echo "Making Directorystructure and mounting shares"
for HOST in ${HOSTS[*]}
do
sudo mkdir $ROOTPATH/$HOST/
done
for SHARE in ${SHARES[*]}
do
sudo mkdir $ROOTPATH/$HOST/$SHARE/
mount $HOST$SHARE
done
done
echo mounting SHARES
sudo mount $HOST[]
function tier2_Backup {
rsync -rvu $ROOTPATH/$HOSTS[0]/documents/ $ROOTPATH/$HOSTS[1]/documents
rsync -rvu $ROOTPATH/$HOSTS[0]/hoerspiele/ $ROOTPATH/$HOSTS[1]/hoerspiele
rsync -rvu $ROOTPATH/$HOSTS[0]/music/ $ROOTPATH/$HOSTS[1]/music
rsync -rvu $ROOTPATH/$HOSTS[0]/pictures/ $ROOTPATH/$HOSTS[1]/pictures
rsync -rvu $ROOTPATH/$HOSTS[0]/videos/ $ROOTPATH/$HOSTS[1]/videos
}
function tier3_Backup {
rsync -rvu $ROOTPATH/$HOSTS[1]/applications/ $ROOTPATH/$HOSTS[2]/applications
rsync -rvu $ROOTPATH/$HOSTS[1]/documents/ $ROOTPATH/$HOSTS[2]/documents
rsync -rvu $ROOTPATH/$HOSTS[1]/games/ $ROOTPATH/$HOSTS[2]/games
rsync -rvu $ROOTPATH/$HOSTS[1]/hoerspiele/ $ROOTPATH/$HOSTS[2]/hoerspiele
rsync -rvu $ROOTPATH/$HOSTS[1]/misc/ $ROOTPATH/$HOSTS[2]/misc
rsync -rvu $ROOTPATH/$HOSTS[1]/music/ $ROOTPATH/$HOSTS[2]/music
rsync -rvu $ROOTPATH/$HOSTS[1]/videos/Filme $ROOTPATH/$HOSTS[2]/movies
rsync -rvu $ROOTPATH/$HOSTS[1]/videos/Serien $ROOTPATH/$HOSTS[2]/series
}
echo cleaning
sudo umount $SOURCEMOUNTPATH
sudo umount $TARGETMOUNTPATH
sudo rm -rf /mnt/*
Alles anzeigen
Aktuell suche ich noch nach einer Möglichkeit, dein Output von showmount -e <hostname> so zu parsen, dass ich ihn als Input für meinen Mount-Befehl nutzen kann. Cutten kann ich den Output schon, aber irgendwas ist da noch schief. Vielleicht hat von euch ja jemand ne Idee.
