mirror of
https://github.com/vincentmli/bpfire.git
synced 2026-04-13 12:32:59 +02:00
MPFire erweitert Samba Pagerefresh korrigiert Tripwire Pagerefreh korrigiert Backup CGI sollte jetzt fertig sein zum Testen vpnmain die beiden SHA2 Crypts entfernt Snort init nochmal angepasst damit die PID alleine angelegt wird git-svn-id: http://svn.ipfire.org/svn/ipfire/trunk@682 ea5c0bd1-69bd-2848-81d8-4f18e57aeed8
65 lines
2.0 KiB
Perl
65 lines
2.0 KiB
Perl
#!/usr/bin/perl
|
|
|
|
require '/var/ipfire/general-functions.pl';
|
|
require "${General::swroot}/lang.pl";
|
|
require "${General::swroot}/header.pl";
|
|
|
|
my $debug = 1;
|
|
my @include = "";
|
|
my ($Sekunden, $Minuten, $Stunden, $Monatstag, $Monat, $Jahr, $Wochentag, $Jahrestag, $Sommerzeit) = localtime(time);
|
|
$Jahr = $Jahr + 1900;$Monat = $Monat + 1;
|
|
$Monat = sprintf("%02d", $Monat);
|
|
$Monatstag = sprintf("%02d", $Monatstag);
|
|
$Stunden = sprintf("%02d", $Stunden);
|
|
$Minuten = sprintf("%02d", $Minuten);
|
|
|
|
if ($ARGV[0] eq 'include') {
|
|
&createinclude;
|
|
my @files = `find / -name *.log 2>/dev/null`;
|
|
foreach (@files){
|
|
push(@include,$_);
|
|
}
|
|
open(DATEI, ">/tmp/include") || die "Could not save temp include file";
|
|
print DATEI @include;
|
|
close(DATEI);
|
|
system("tar -cvzf /var/ipfire/backup/$Jahr$Monat$Monatstag-$Stunden:$Minuten.ipf --files-from='/tmp/include' --exclude-from='/var/ipfire/backup/exclude'");
|
|
system("rm /tmp/include");
|
|
}
|
|
elsif ($ARGV[0] eq 'exclude') {
|
|
&createinclude;
|
|
open(DATEI, ">/tmp/include") || die "Could not save temp include file";
|
|
print DATEI @include;
|
|
close(DATEI);
|
|
system("tar -cvzf /var/ipfire/backup/$Jahr$Monat$Monatstag-$Stunden:$Minuten.ipf --files-from='/tmp/include' --exclude-from='/var/ipfire/backup/exclude'");
|
|
system("rm /tmp/include");
|
|
}
|
|
elsif ($ARGV[0] eq 'restore') {
|
|
system("tar -xvz --preserve -f /tmp/restore.ipf");
|
|
}
|
|
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 ($ARGV[0] =~ /ipf$/ ) {
|
|
system("rm /var/ipfire/backup/$ARGV[0]");
|
|
}
|
|
elsif ($ARGV[0] eq '') {
|
|
printf "No argument given, please use <include><exclude><cli>\n"
|
|
}
|
|
|
|
sub createinclude(){
|
|
|
|
open(DATEI, "<${General::swroot}/backup/include") || die "Can not open include file";
|
|
my @Zeilen = <DATEI>;
|
|
close(DATEI);
|
|
|
|
foreach (@Zeilen){
|
|
if ( $_ =~ /\*/){
|
|
my @files = `ls $_`;
|
|
foreach (@files){
|
|
push(@include,$_);
|
|
}
|
|
}
|
|
else {push(@include,$_);}
|
|
}
|
|
}
|