initial commit v1.0

This commit is contained in:
2014-11-28 17:02:20 +01:00
commit 8ef030add5
7 changed files with 344 additions and 0 deletions

96
mnt-part-to-nas.sh Executable file
View File

@@ -0,0 +1,96 @@
#!/bin/bash
# Variablen: PART NASIP DEST NAME
# Erforderlich: pcmanfm smbfs/cifs-utils
cd "$(dirname "$(readlink -f "$0")")"
# Test if config.cfg exists and set needed variables
if [ ! -e config.cfg ]; then echo "Missing config.cfg file. Edit and rename config.cfg.sample"; exit 1; fi
source config.cfg
## FUNKTIONEN
# Überprüft, ob Root-Rechte am Start sind
function rootcheck {
if [ $EUID -ne 0 ]; then
echo "Dieses Script benötigt Root-Rechte. Rechte erlangen mit \"su\" oder \"sudo -i\"."
exit 1
fi
}
# Möglichkeit, Variablen zu ändern
function varcheck {
echo "Folgende Parameter sind vorgegeben:"
echo "Adresse des Zielortes: $NASPATH"
echo "User für Zielort, falls nötig (sonst leer): $NASUSER"
echo "Passwort für Zielort, falls nötig (sonst leer): $NASPASS"
read -p "Sollen diese so übernommen werden? [y/n]: " YN
if [ "$YN" = "y" ]; then
echo "Daten wurden akzeptiert. Fahre fort..."
elif [ "$YN" = "n" ]; then
echo "Nun gewünschte Daten für Zielort eingeben:"
read -p "Adresse des Zielortes: " NASPATH
read -p "User für Zielort, falls nötig (sonst leer): " NASUSER
read -p "Passwort für Zielort, falls nötig (sonst leer): " NASPASS
echo "Daten wurden übernommen. Fahre fort..."
else
echo "Ungültige Eingabe. Script wird beendet."
exit 1
fi
unset YN
}
# Mounte Zielverzeichnis
function nasmount {
if ! ([ "$NASUSER" = "" ] && [ "$NASPASS" = "" ]); then
OPT="-o user=$NASUSER,password=$NASPASS"
fi
if [ ! -e /mnt/nas ]; then
mkdir -p /mnt/nas
fi
mount -t cifs //$NASPATH /mnt/nas $OPT
}
# Fragt Namen des Kunden ab und erstellt Verzeichnis wenn nötig
function destcheck {
read -p "Name des Kunden: " NAME
if [ ! -e /mnt/nas/$NAME ]; then
mkdir /mnt/nas/$NAME
fi
}
# Frage zu sichernde Partition ab
function partmount {
fdisk -l
YN="y"
while [ "$YN" = "y" ]; do
read -p "Welche NTFS-Partition soll gemountet werden? [z.B /dev/sda1]: " PART
if [ ! -e $PART ]; then
echo "Partition nicht vorhanden, bitte zu mountende Partition auswählen!"
else
if [ ! -e /mnt$PART ]; then
mkdir -p /mnt$PART
fi
mount -t ntfs-3g $PART /mnt$PART -o force
pcmanfm /mnt$PART /mnt/nas/$KUNDE &
fi
read -p "Noch eine Partition mounten? y für Ja, beliebige Taste zum Abbrechen: " YN
done
unset YN
}
## START DES PROGRAMMS
rootcheck
if [ "$1" = "unmount" ]; then
umount /mnt/nas /mnt/dev/*
echo "/mnt/nas und /mnt/dev/* wurden ausgehängt. Beende."
exit 1
fi
varcheck
nasmount
destcheck
partmount