summaryrefslogtreecommitdiffstats
path: root/etc/periodic
diff options
context:
space:
mode:
authorgjb <gjb@FreeBSD.org>2015-01-22 02:24:09 +0000
committergjb <gjb@FreeBSD.org>2015-01-22 02:24:09 +0000
commit505f4c781a1389a4a61f13a5b7d298b0f1e950f3 (patch)
tree9b9001455e95e25fc62295b6349e00c35d24e369 /etc/periodic
parent4d3ec3464b2c290acf6ed2e21fbb3479427d162e (diff)
downloadFreeBSD-src-505f4c781a1389a4a61f13a5b7d298b0f1e950f3.zip
FreeBSD-src-505f4c781a1389a4a61f13a5b7d298b0f1e950f3.tar.gz
MFC r277216:
Evaluate running userland/kernel version in daily periodic(8) run, taken from uname(1) '-U' and '-K' flags. Sponsored by: The FreeBSD Foundation
Diffstat (limited to 'etc/periodic')
-rwxr-xr-xetc/periodic/daily/510.status-world-kernel36
-rw-r--r--etc/periodic/daily/Makefile1
2 files changed, 37 insertions, 0 deletions
diff --git a/etc/periodic/daily/510.status-world-kernel b/etc/periodic/daily/510.status-world-kernel
new file mode 100755
index 0000000..4e08a04
--- /dev/null
+++ b/etc/periodic/daily/510.status-world-kernel
@@ -0,0 +1,36 @@
+#!/bin/sh
+#
+# $FreeBSD$
+#
+# Check that the running userland and kernel versions are in sync.
+
+# If there is a global system configuration file, suck it in.
+#
+if [ -r /etc/defaults/periodic.conf ]
+then
+ . /etc/defaults/periodic.conf
+ source_periodic_confs
+fi
+
+case "$daily_status_world_kernel" in
+ [Yy][Ee][Ss])
+ rc=0
+ _U=$(/usr/bin/uname -U 2>/dev/null)
+ _K=$(/usr/bin/uname -K 2>/dev/null)
+ [ -z "${_U}" -o -z "${_K}" ] && exit 0
+ echo ""
+ echo "Checking userland and kernel versions:"
+ if [ "${_U}" != "${_K}" ]; then
+ echo "Userland and kernel are not in sync"
+ echo "Userland version: ${_U}"
+ echo "Kernel version: ${_K}"
+ rc=1
+ else
+ echo "Userland and kernel are in sync."
+ fi
+ ;;
+
+ *) rc=0;;
+esac
+
+exit $rc
diff --git a/etc/periodic/daily/Makefile b/etc/periodic/daily/Makefile
index 6909e30..593c0f6 100644
--- a/etc/periodic/daily/Makefile
+++ b/etc/periodic/daily/Makefile
@@ -16,6 +16,7 @@ FILES= 100.clean-disks \
409.status-gconcat \
420.status-network \
450.status-security \
+ 510.status-world-kernel \
999.local
# NB: keep these sorted by MK_* knobs
OpenPOWER on IntegriCloud