base-files: add support for restoring config from tmpfs
[openwrt/openwrt.git] / package / base-files / files / lib / preinit / 80_mount_root
index 3f75411a4391c221d0fa00c7f1c0ef566642d14e..c3816c2cbfe11a1f4e2091f4e7ef5c6791f7d308 100644 (file)
@@ -17,11 +17,12 @@ missing_lines() {
 do_mount_root() {
        mount_root
        boot_run_hook preinit_mount_root
-       [ -f /sysupgrade.tgz ] && {
+       [ -f /sysupgrade.tgz -o -f /tmp/sysupgrade.tar ] && {
                echo "- config restore -"
                cp /etc/passwd /etc/group /etc/shadow /tmp
                cd /
-               tar xzf /sysupgrade.tgz
+               [ -f /sysupgrade.tgz ] && tar xzf /sysupgrade.tgz
+               [ -f /tmp/sysupgrade.tar ] && tar xf /tmp/sysupgrade.tar
                missing_lines /tmp/passwd /etc/passwd >> /etc/passwd
                missing_lines /tmp/group /etc/group >> /etc/group
                missing_lines /tmp/shadow /etc/shadow >> /etc/shadow