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]'");
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();
}
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}
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
}