some minor fixes

This commit is contained in:
hendrik 2025-06-28 04:18:03 +02:00
parent 40e8f20557
commit e2dc5b7c67
2 changed files with 16 additions and 18 deletions

View File

@ -6,23 +6,23 @@ use File::Spec;
use File::Find;
use Cwd qw(abs_path);
use lib File::Spec->catdir(abs_path(dirname(__FILE__)), File::Spec->updir, 'pl_helper');
use lib abs_path(dirname(__FILE__));
use Logger;
use Getopt::Long qw(GetOptions);
use POSIX qw(strftime);
my $source_dir="/tmp/create";
#my $source_dir="/bulk/storage/media/tvseries";
my $backup_discs= [
#"/mnt/disk1/toBackup"
#"/mnt/disk2/toBackup"
"/root/scripts/backup/test1",
"/root/scripts/backup/test2"
"/mnt/disk/twelf/backup/tvseries",
"/mnt/disk/toshiba1/backup/tvseries"
];
my $buffer=100; # in G
my $buffer=1000; # in G
my $buffer_kb=$buffer * 1024 * 1024 * 0;
my $layout_file="./backup_layout_pl.txt";
my $log_file="./backup_split.log";
my $layout_file="/root/files/backup_data/series/series_layout.log";
my $log_file="/root/files/backup_data/series/series_backup.log";
my $rsync_opt="-a --delete --stats";
my $sync_log_file="./backup_sync_audit_pl.log";
my $sync_log_file="/root/files/backup_data/series/series_synced.log";
my $debug=1;
my $opt ={};
use Data::Dumper;
@ -60,13 +60,12 @@ sub get_size_kb {
sub get_effective_free_kb {
my $backup_disc = shift;
my $data = `df --output=target,size -k $backup_disc | tail -n 1`;
if (!$opt->{use_effective_free_kb}) {
$logger->info("Using default free space calculation for '$backup_disc'");
return get_size_kb($backup_disc) - $buffer_kb; # return size in KB
}
chomp $data;
my ($folder, $size) = split(/\s+/, $data);
$folder = "/root/scripts";
if (!$opt->{use_effective_free_kb}) {
$logger->info("Using default free space calculation for '$backup_disc'");
return $size - $buffer_kb; # return size in KB
}
$logger->info("Effective free space for '$folder' is '$size' KB");
my $otherwise_used = `find $folder -type f -not -path $backup_disc -exec du -k {} + | awk '{sum += \$1} END {print sum}'`;
chomp $otherwise_used;
@ -130,7 +129,7 @@ sub read_layout {
open( my $fh, '<', $layout_file ) or log_die "Could not open file '$layout_file' $!";
my @lines = <$fh>;
my $queue = [ sort { lc($a->{change}) cmp lc($b->{change})} map { /^([\w\/]+):(\w+)?$/ or die;{ disc => $1, change => $2, folders => [] } } @lines ];
my $queue = [ sort { lc($a->{change}) cmp lc($b->{change})} map { /^([\w\/]+):(.+)?$/ or die;{ disc => $1, change => $2, folders => [] } } @lines ];
close($fh);
my $discs = [shift @$queue ];
# my $current_disc = shift @$queue;
@ -201,6 +200,7 @@ sub sync_disc {
}
for my $folder (@$folders) {
$logger->info("Syncing $folder");
my $source_folder = File::Spec->catdir($source_dir, $folder);
if (-d $source_folder) {
if ($opt->{simulate_updates}) {
@ -259,6 +259,7 @@ if ($opt->{only_disc}) {
foreach my $disc (@$layout) {
if ($disc->{disc} eq "INVALID") {
$logger->info("Exceeding data found");
next;
}
unless ( -d $disc->{disc} ) {
log_die "Disc '$disc->{disc}' does not exist or is not a directory";

View File

@ -20,9 +20,8 @@ our ($LOG_LEVEL_LOOKUP) = {
sub new {
my ($class, $logfile) = @_;
my $self = bless {
CUSTOM_FILE => $logfile,
LOG_FILE => $logfile,
LOG_LEVEL => "TRACE"
}, $class;
@ -91,13 +90,11 @@ sub _write_log {
}
my $logfile = $self->{LOG_FILE};
open(LOG_FILE, ">> $logfile");
print LOG_FILE $log_msg;
close(LOG_FILE);
}
1;