Kleinere fixes an der Backup Routine

git-svn-id: http://svn.ipfire.org/svn/ipfire/trunk@977 ea5c0bd1-69bd-2848-81d8-4f18e57aeed8
This commit is contained in:
ms
2007-10-18 19:51:15 +00:00
parent dc8b9670a9
commit 30945c78a5
3 changed files with 24 additions and 20 deletions

View File

@@ -61,7 +61,8 @@ elsif ($ARGV[0] eq 'restore') {
system("cd / && tar -xvz --preserve -f /tmp/restore.ipf");
}
elsif ($ARGV[0] eq 'restoreaddon') {
system("cd / && tar -xvz --preserve -f /var/ipfire/backup/addons/backup/$ARGV[1].ipf");
system("mv /tmp/$ARGV[1] /var/ipfire/backup/addons/backup/$ARGV[1]");
system("cd / && tar -xvz --preserve -f /var/ipfire/backup/addons/backup/$ARGV[1]");
}
elsif ($ARGV[0] eq 'cli') {
system("tar -cvzf /var/ipfire/backup/$Jahr$Monat$Monatstag-$Stunden$Minuten-$ARGV[1].ipf --files-from='$ARGV[2]' --exclude-from='$ARGV[3]'");

View File

@@ -84,14 +84,13 @@ elsif ( $cgiparams{'ACTION'} eq "restore" )
elsif ( $cgiparams{'ACTION'} eq "restoreaddon" )
{
my $upload = $a->param("UPLOAD");
open UPLOADFILE, ">/var/$cgiparams{'UPLOAD'}";
open UPLOADFILE, ">/tmp/$cgiparams{'UPLOAD'}";
binmode $upload;
while ( <$upload> ) {
print UPLOADFILE;
}
close UPLOADFILE;
system("cp /var/ipfire/backup/addons/backup/$cgiparams{'UPLOAD'} /tmp/restore.ipf >/dev/null 2>&1");
system("/usr/local/bin/backupctrl restore >/dev/null 2>&1");
system("/usr/local/bin/backupctrl restoreaddon $cgiparams{'UPLOAD'} >/dev/null 2>&1");
}
&Header::showhttpheaders();

View File

@@ -37,28 +37,29 @@ remove_files() {
}
make_backup(){
[ -e "/var/ipfire/backup/addons/include/${1}" ] && \
( echo "Creating Backup..."
/usr/local/bin/backupctrl addonbackup ${1}
echo "...Finished." )
if [ -e "/var/ipfire/backup/addons/include/${1}" ];then
echo "Creating Backup..."
/usr/local/bin/backupctrl addonbackup ${1}
echo "...Finished."
fi
}
restore_backup(){
[ -e "/var/ipfire/backup/addons/backup/${1}" ] && \
( echo "Restoring Backup..." && \
/usr/local/bin/backupctrl restoreaddon ${1} && \
echo "...Finished." )
if [ -e "/var/ipfire/backup/addons/backup/${1}" ];then
echo "Restoring Backup..."
/usr/local/bin/backupctrl restoreaddon ${1}.ipf
echo "...Finished."
fi
}
restart_service() {
/etc/init.d/$1 restart
/etc/init.d/${1} restart
}
start_service() {
DELAY=0
while true
do
case "${1}" in
--delay|-d)
DELAY=${2}
@@ -76,13 +77,16 @@ start_service() {
break
;;
esac
done
[ -e "/etc/init.d/${1}" ] && \
(sleep ${DELAY} && /etc/init.d/${1} start ${BACKGROUND})
if [ -e "/etc/init.d/${1}" ];then
sleep ${DELAY}
/etc/init.d/${1} start ${BACKGROUND}
fi
}
stop_service() {
[ -e "/etc/init.d/${1}" ] && /etc/init.d/${1} stop
if [ -e "/etc/init.d/${1}" ];then
/etc/init.d/${1} stop
fi
}