using variable instead of full path
[feisty_meow.git] / scripts / archival / snarf_linux_config.pl
index 436ab523ea1ef96e3e38366d70bd8ffd1aab1153..c6820ace4f104aa67f1528e77337459806e85cdc 100644 (file)
@@ -19,6 +19,13 @@ require "shared_snarfer.pl";
 
 use Env qw(HOME);
 
+# make sure we are running as root.  otherwise we have no access to look at many things in /etc.
+if ($< != 0) {
+  printf "This script must be run as root or sudo.  Try this:\n";
+  printf "  sudo -E PERLLIB=\$PERLLIB perl \$FEISTY_MEOW_SCRIPTS/archival/snarf_linux_config.pl @ARGV\n";
+  exit 1;
+}
+
 &initialize_snarfer;
 
 # get the number we use and increment it for the next use.
@@ -54,11 +61,13 @@ unlink $infofile;
 &backup_files($snarf_file_base, $number, "/", "var/lib/dpkg", ("status*"));
 
 # backup the crucial hierarchies in /var...
-&backup_hierarchy($snarf_file_base, $number, "/", "var/named");
+#gone: &backup_hierarchy($snarf_file_base, $number, "/", "var/named");
+#gone: &backup_hierarchy($snarf_file_base, $number, "/", "var/lib/named/master");
+
 ###not good: &backup_hierarchy($snarf_file_base, $number, "/", "var/lib/mysql");
 ###the mysql snarf is not necessarily usable, since we really should be
 ###backing up the databases by another means than this.
-&backup_hierarchy($snarf_file_base, $number, "/", "var/lib/named/master");
+
 &backup_hierarchy($snarf_file_base, $number, "/", "var/lib/webalizer");
 
 # snag the grub bootloader files.
@@ -67,16 +76,20 @@ unlink $infofile;
 # now get the entire /etc hierarchy...
 &backup_hierarchy($snarf_file_base, $number, "/", "etc");
 
+# suck in the current state for the resolver.
+&backup_hierarchy($snarf_file_base, $number, "/", "run/resolvconf");
+
 # clean out extra files.
 &remove_from_backup($snarf_file_base, $number, "etc/cups/ppds.dat*");
 &remove_from_backup($snarf_file_base, $number, "etc/httpd/conf/ssl.crt/ca-bundle.crt");
-&remove_from_backup($snarf_file_base, $number, "etc/locale/*");
+&remove_from_backup($snarf_file_base, $number, "etc/locale");
+&remove_from_backup($snarf_file_base, $number, "etc/alternatives");
 &remove_from_backup($snarf_file_base, $number, "etc/opt/kde3/share/services/ksycoca");
-&remove_from_backup($snarf_file_base, $number, "etc/preload.d/*");
+&remove_from_backup($snarf_file_base, $number, "etc/preload.d");
 &remove_from_backup($snarf_file_base, $number, "etc/rmt");
 &remove_from_backup($snarf_file_base, $number, "etc/termcap");
 &remove_from_backup($snarf_file_base, $number, "etc/X11/X");
-&remove_from_backup($snarf_file_base, $number, "etc/X11/xkb/*");
+&remove_from_backup($snarf_file_base, $number, "etc/X11/xkb");
 &remove_from_backup($snarf_file_base, $number, "*.bak");
 &remove_from_backup($snarf_file_base, $number, "*.cache");
 &remove_from_backup($snarf_file_base, $number, "*.crt");