From 3680b46a2a24ec2d622ddd177432e23814e107ad Mon Sep 17 00:00:00 2001 From: CyberLeo Date: Sat, 13 Feb 2010 15:54:44 -0600 Subject: [PATCH] sbin/saveconfig: don't store leading / in archive, as they're a pain to extract later --- overlay/sbin/saveconfig | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/overlay/sbin/saveconfig b/overlay/sbin/saveconfig index 48f7e95..835a810 100755 --- a/overlay/sbin/saveconfig +++ b/overlay/sbin/saveconfig @@ -10,20 +10,19 @@ fi # Find all files newer than /etc/diskless and print them out find_newer_files() { - [ -d "${1}" ] || return 1 - find "${1}" -type f -not -regex '.*/tmp/*.' -newer /etc/diskless -print + [ -d "/${1}" ] || return 1 + ( cd /; find "${1}" -type f -not -regex '.*/tmp/*.' -newer /etc/diskless -print ) } # Archive all newer files into a gzipped cpio archive archive_cpio() { - [ -d "${1}" ] || return 1 [ -f "${2}" ] && return 1 - find_newer_files "${1}" | cpio -o --quiet | gzip -9 > "${2}" + find_newer_files "${1}" | cpio -o --quiet | gzip -9 > "${2}" || return 1 } # Archive specified files to named target archive() { - archive_cpio "${1}" "${2}.cpio.gz" + archive_cpio "${1}" "${2:-/conf/tmp/${1}}.cpio.gz" || return 1 } # Mount /conf read-write, and upgrade to read-write if mounted read-only. @@ -43,8 +42,8 @@ fi # Store config in temp staging area rm -Rf /conf/tmp || exit 1 mkdir -p /conf/tmp || exit 1 -archive /etc /conf/tmp/etc || exit 1 -archive /var /conf/tmp/var || exit 1 +archive etc || exit 1 +archive var || exit 1 # Rotate current config to dated backup # Unlimited history method: (make sure you have provisions for removing the old backups, or this can get HUGE! -- 2.45.0