diff --git a/plist b/plist index 86caeec4f..56a0c6c47 100644 --- a/plist +++ b/plist @@ -74,6 +74,7 @@ /usr/local/etc/rc /usr/local/etc/rc.backup_captiveportal /usr/local/etc/rc.backup_dhcpleases +/usr/local/etc/rc.backup_duid /usr/local/etc/rc.backup_netflow /usr/local/etc/rc.backup_rrd /usr/local/etc/rc.bootup diff --git a/src/etc/rc.backup_duid b/src/etc/rc.backup_duid new file mode 100755 index 000000000..f652f70e2 --- /dev/null +++ b/src/etc/rc.backup_duid @@ -0,0 +1,16 @@ +#!/bin/sh + +BACKUPFILE="/conf/dhcp6c_duid" +BACKUPTARGET="/var/db/dhcp6c_duid" + +if [ "${1}" = "restore" ]; then + rm -f "${BACKUPTARGET}" + if [ -f "${BACKUPFILE}" ]; then + cp "${BACKUPFILE}" "${BACKUPTARGET}" + fi +else + rm -f "${BACKUPFILE}" + if [ -f "${BACKUPTARGET}" ]; then + cp "${BACKUPTARGET}" "${BACKUPFILE}" + fi +fi diff --git a/src/etc/rc.syshook.d/20-backup.early b/src/etc/rc.syshook.d/20-backup.early index d870d84f4..fb40bcd30 100755 --- a/src/etc/rc.syshook.d/20-backup.early +++ b/src/etc/rc.syshook.d/20-backup.early @@ -1,6 +1,6 @@ #!/bin/sh # Restore backups from previous shutdown -for BACKUP in captiveportal dhcpleases netflow rrd; do +for BACKUP in captiveportal dhcpleases duid netflow rrd; do /usr/local/etc/rc.backup_${BACKUP} restore done diff --git a/src/etc/rc.syshook.d/90-backup.stop b/src/etc/rc.syshook.d/90-backup.stop index ac805cd0d..92d8e9843 100755 --- a/src/etc/rc.syshook.d/90-backup.stop +++ b/src/etc/rc.syshook.d/90-backup.stop @@ -1,6 +1,6 @@ #!/bin/sh # Backup volatile internals -for BACKUP in captiveportal dhcpleases netflow rrd; do - /usr/local/etc/rc.backup_${BACKUP} stop +for BACKUP in captiveportal dhcpleases duid netflow rrd; do + /usr/local/etc/rc.backup_${BACKUP} done