From 45e043b10328f4dd5ad98cfc1d000859ac2f487a Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Tue, 9 May 2017 08:10:10 +0200 Subject: [PATCH] rc: use rc.syshook for some for our important tasks --- plist | 4 ++++ src/etc/rc | 16 ---------------- src/etc/rc.shutdown | 5 ----- src/etc/rc.syshook.d/05-update.early | 9 +++++++++ src/etc/rc.syshook.d/10-configd.early | 4 ++++ src/etc/rc.syshook.d/20-backup.early | 6 ++++++ src/etc/rc.syshook.d/90-backup.stop | 7 +++++++ 7 files changed, 30 insertions(+), 21 deletions(-) create mode 100755 src/etc/rc.syshook.d/05-update.early create mode 100755 src/etc/rc.syshook.d/10-configd.early create mode 100755 src/etc/rc.syshook.d/20-backup.early create mode 100755 src/etc/rc.syshook.d/90-backup.stop diff --git a/plist b/plist index fa5587ca3..2641f62ba 100644 --- a/plist +++ b/plist @@ -132,8 +132,12 @@ /usr/local/etc/rc.sshd /usr/local/etc/rc.syshook /usr/local/etc/rc.syshook.d/05-beep.stop +/usr/local/etc/rc.syshook.d/05-update.early +/usr/local/etc/rc.syshook.d/10-configd.early +/usr/local/etc/rc.syshook.d/20-backup.early /usr/local/etc/rc.syshook.d/20-freebsd.start /usr/local/etc/rc.syshook.d/80-freebsd.stop +/usr/local/etc/rc.syshook.d/90-backup.stop /usr/local/etc/rc.syshook.d/90-carp.start /usr/local/etc/rc.syshook.d/90-cron.start /usr/local/etc/rc.syshook.d/95-beep.start diff --git a/src/etc/rc b/src/etc/rc index 059c4453e..388832b63 100755 --- a/src/etc/rc +++ b/src/etc/rc @@ -227,22 +227,6 @@ echo "done." # Recreate capabilities DB /usr/bin/cap_mkdb /etc/login.conf -# Perform major updates -for STAGE in B P; do - if opnsense-update -${STAGE}; then - # ideally reroot with `-r', but panics on ZFS - reboot - fi -done - -# Startup configd -/usr/local/etc/rc.d/configd start - -# Restore backups from previous shutdown -for BACKUP in captiveportal dhcpleases netflow rrd; do - /usr/local/etc/rc.backup_${BACKUP} restore -done - # Execute the early syshook / plugin commands /usr/local/etc/rc.syshook early diff --git a/src/etc/rc.shutdown b/src/etc/rc.shutdown index 148ed4db2..bd048ce43 100755 --- a/src/etc/rc.shutdown +++ b/src/etc/rc.shutdown @@ -3,11 +3,6 @@ # shutdown syshook / plugin scripts /usr/local/etc/rc.syshook stop -# backup volatile internals -for BACKUP in captiveportal dhcpleases netflow rrd; do - /usr/local/etc/rc.backup_${BACKUP} stop -done - # wait for config lock to release php -a >/dev/null << EOF \$fp = fopen('/conf/config.xml', "a+"); diff --git a/src/etc/rc.syshook.d/05-update.early b/src/etc/rc.syshook.d/05-update.early new file mode 100755 index 000000000..197a75271 --- /dev/null +++ b/src/etc/rc.syshook.d/05-update.early @@ -0,0 +1,9 @@ +#!/bin/sh + +# Perform major updates +for STAGE in B P; do + if opnsense-update -${STAGE}; then + # ideally reroot with `-r', but panics on ZFS + reboot + fi +done diff --git a/src/etc/rc.syshook.d/10-configd.early b/src/etc/rc.syshook.d/10-configd.early new file mode 100755 index 000000000..b06f5e796 --- /dev/null +++ b/src/etc/rc.syshook.d/10-configd.early @@ -0,0 +1,4 @@ +#!/bin/sh + +# Startup configd +/usr/local/etc/rc.d/configd start diff --git a/src/etc/rc.syshook.d/20-backup.early b/src/etc/rc.syshook.d/20-backup.early new file mode 100755 index 000000000..d870d84f4 --- /dev/null +++ b/src/etc/rc.syshook.d/20-backup.early @@ -0,0 +1,6 @@ +#!/bin/sh + +# Restore backups from previous shutdown +for BACKUP in captiveportal dhcpleases 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 new file mode 100755 index 000000000..9e08fcceb --- /dev/null +++ b/src/etc/rc.syshook.d/90-backup.stop @@ -0,0 +1,7 @@ +#!/bin/sh + +# Backup volatile internals +for BACKUP in captiveportal dhcpleases netflow rrd; do + /usr/local/etc/rc.backup_${BACKUP} stop +done +