hallo, ich habe mir ein backup-script geschrieben, meine config dateien usw einzusammeln und zu packen. mit einzelnen dateien ist alles roger, aber es gibt anwendungen, da brauche ich das ganze verzeichnis (openvpn, openssl). dazu brauche ich ein sternchen (für alles im verzeichnis) in einer variable.
hier das script bis jetzt:
Code:
# Dieses Script sammelt die Config-Dateien des
# bkupsrv01 ein und packt sie
#
# Variablen fuer verschiedene config-namen
samba_conf=smb.conf
gnump3d_conf=gnump3d.conf
cups_conf=cupsd.conf
pureftpd_conf=pure-ftpd.conf
openvpn_conf="*"
postfix_conf=main.cf
openssl_conf="*"
# wertet letzten rueckgabewert aus
erfolgreich()
{
if [ $? == 0 ]
then
echo erfolgreich!
else
echo nicht erfolgreich!
fi
}
backup()
{
if [ $# < 2 ]
then
echo "Fehlerhafte Argumentenanzahl"
else
echo "$1..."
mkdir -p /data2/backup/config-dateien/$1
fi
# testen, wo die config-datei liegt: /etc/name/datei.conf oder /etc/datei.conf
if [ -d /etc/$1 ]
then
cp -rvu /etc/$1/$2 /data2/backup/config-dateien/$1/
else
cp -rvu /etc/$2 /data2/backup/config-dateien/$1/
fi
erfolgreich
echo
}
restore()
{
echo
echo "archiv wird entpackt..."
tar jxfv config-dateien.tgj
echo
echo "configs werden an ursprungsorte kopiert..."
cp -vi /data2/backup/config-dateien/gnump3d/* /etc/gnump3d/
cp -vi /data2/backup/config-dateien/samba/* /etc/samba/
cp -vi /data2/backup/config-dateien/cups/* /etc/cups/
cp -vi /data2/backup/config-dateien/postfix/* /etc/postfix/
cp -vi /data2/backup/config-dateien/pure-ftpd/* /etc/pure-ftpd/
cp -vi /data2/backup/config-dateien/coot.local/* /etc/init.d/
cp -vi /data2/backup/config-dateien/openvpn/* /etc/openvpn/
rm -vr /data2/backup/config-dateien/
}
case $1 in
backup)
for n in "gnump3d $gnump3d_conf" "cups $cups_conf" "pure-ftpd $pureftpd_conf" "openvpn $openvpn_conf" "postfix $postfix_conf" "openssl $openssl_conf"
do
backup $n
done
echo ganzen kram packen...
tar -jvcf /data2/backup/config-dateien.tgj /data2/backup/config-dateien/
erfolgreich
rm -vr /data2/backup/config-dateien/
;;
restore)
restore
;;
*)
echo
echo "{backup | restore}"
echo
;;
esac
exit
Lesezeichen