projects
/
feisty_meow.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
script launches app into the background via screen
[feisty_meow.git]
/
scripts
/
archival
/
shared_snarfer.pl
diff --git
a/scripts/archival/shared_snarfer.pl
b/scripts/archival/shared_snarfer.pl
index 4747d07e70b9dd2b5de402d70274a2fb2b44777a..60845421df08b5a889c71aade54318c18ce536bc 100644
(file)
--- a/
scripts/archival/shared_snarfer.pl
+++ b/
scripts/archival/shared_snarfer.pl
@@
-85,9
+85,12
@@
sub short_hostname {
# a timestamp and hostname.
sub snarf_prefix {
local($base) = @_;
# a timestamp and hostname.
sub snarf_prefix {
local($base) = @_;
+
+#hmmm: extract this shared code to new function (also in safedel)
$date_tool = "date";
local($date_part) = `$date_tool +%Y-%m-%d-%H%M`;
while ($date_part =~ /[\r\n]$/) { chop $date_part; }
$date_tool = "date";
local($date_part) = `$date_tool +%Y-%m-%d-%H%M`;
while ($date_part =~ /[\r\n]$/) { chop $date_part; }
+
local($host) = &short_hostname();
while ($host =~ /[\r\n]$/) { chop $host; }
$base = $base . "_" . $host . "_" . $date_part;
local($host) = &short_hostname();
while ($host =~ /[\r\n]$/) { chop $host; }
$base = $base . "_" . $host . "_" . $date_part;
@@
-165,7
+168,7
@@
sub snarfer {
chdir($root);
local($outcome) = 0;
chdir($root);
local($outcome) = 0;
- my @lines = qx( $find_tool "$subdir" @extra_flags "-type" "f" );
+ my @lines = qx( $find_tool "$subdir" @extra_flags "-
follow" "-
type" "f" );
# if ( ($! != 0) || ($? != 0) ) {
# die("failure to find files in $subdir");
# }
# if ( ($! != 0) || ($? != 0) ) {
# die("failure to find files in $subdir");
# }
@@
-181,6
+184,8
@@
sub snarfer {
}
local($outcome) = 0xff & system $tar_tool,
}
local($outcome) = 0xff & system $tar_tool,
+#hmmm: trying to dereference symbolic links and stop missing stuff.
+"-h",
"-rf", &canonicalize($target_file), @excludes,
"--files-from=" . &canonicalize($temp_file);
if ($outcome) {
"-rf", &canonicalize($target_file), @excludes,
"--files-from=" . &canonicalize($temp_file);
if ($outcome) {
@@
-222,7
+227,11
@@
sub snarf_file_list {
}
local($outcome) = 0xff & system $tar_tool,
#"--directory=" . "$root",
}
local($outcome) = 0xff & system $tar_tool,
#"--directory=" . "$root",
- @extra_flags, "-rf", &canonicalize($target_file), @excludes, $i;
+
+#hmmm: trying to dereference symbolic links and stop missing stuff.
+"-h",
+ @extra_flags,
+"-rf", &canonicalize($target_file), @excludes, $i;
if ($outcome) { die("failure to archive"); }
}
chdir("$currdir");
if ($outcome) { die("failure to archive"); }
}
chdir("$currdir");
@@
-379,7
+388,12
@@
sub backup_number {
print NUM_PREFIX $number_prefix;
close(NUM_PREFIX);
print NUM_PREFIX $number_prefix;
close(NUM_PREFIX);
- $outcome = 0xff & system $tar_tool, "-rf",
+ $outcome = 0xff & system $tar_tool,
+
+#hmmm: trying to dereference symbolic links and stop missing stuff.
+"-h",
+
+"-rf",
&canonicalize($target_file), &canonicalize($prefix_file);
if ($outcome) { die("failure to archive"); }
unlink($prefix_file);
&canonicalize($target_file), &canonicalize($prefix_file);
if ($outcome) { die("failure to archive"); }
unlink($prefix_file);
@@
-453,7
+467,7
@@
sub restore_archive {
if ($outcome) { die("failure to undo archive"); }
local($outcome) =
if ($outcome) { die("failure to undo archive"); }
local($outcome) =
- 0xff & system "bash", "$FEISTY_MEOW_SCRIPTS/
files
/normal_perm.sh", ".";
+ 0xff & system "bash", "$FEISTY_MEOW_SCRIPTS/
security
/normal_perm.sh", ".";
if ($outcome) { die("failure to normalize permissions"); }
# remove any links that might have crept in; these can cause mischief.
if ($outcome) { die("failure to normalize permissions"); }
# remove any links that might have crept in; these can cause mischief.