lms-backup - krótki skrypcik w PERLu, specjalnie dla was ;)
#----------------------------------------------------------------------------------------------------- #!/usr/bin/perl use warnings; use strict;
my $tim = time();
# folder z backupami my $dir = "/home/router/public_html/lms/backups/";
# nazwa pliku archiwum my $fil = "lms-" . $tim . ".sql.gz";
# polecenie do wykonania my $exe = "/usr/bin/mysqldump -u lms --password=super_tajne_haslo --add-drop-table --add-locks lms | gzip -9 > " . $dir . $fil;
# przeglądaj opendir(LISTDIR, $dir) || die "can't open dir $dir: $!"; my @lis = readdir(LISTDIR); closedir(LISTDIR);
# szukamy plików starszych niż 1 miesiąc (2678400 sekund) ... i kasujemy; zanim odkomentujesz "unlink", przetestuj wynik! print "Our files:\n"; foreach (@lis) { if (/^lms-(\d+)./) { print "\t$_\n"; if ($1 + 2678400 < $tim) { print "\t\t - deleting...\n"; #unlink($dir . $_); } } }
# tworzymy kopię bazy danych system($exe) == 0 || die "can't create backup of database: $!";
# ustawiamy usera i grupę www-data na nowy plik chown 33, 33, $dir . $fil; #-----------------------------------------------------------------------------------------------------
Poprawki mile widziane, najlepiej w odpowiedzi na ten wątek. Licencja GNU GPL ;)
Pozdrawiam, Konrad
!DSPAM:49444bd798891989010922!
uczestnicy (1)
-
Konrad