1195938Spjd#!/bin/sh
2195938Spjd#
3195938Spjd# $FreeBSD: releng/11.0/etc/rc.d/hostid_save 299844 2016-05-15 06:00:13Z ngie $
4195938Spjd#
5195938Spjd
6195938Spjd# PROVIDE: hostid_save
7299844Sngie# REQUIRE: hostid root
8195938Spjd# KEYWORD: nojail
9195938Spjd
10195938Spjd. /etc/rc.subr
11195938Spjd
12195938Spjdname="hostid_save"
13298514Slmedesc="Save unique host ID to disk"
14195938Spjdstart_cmd="hostid_save"
15195938Spjdstop_cmd=":"
16195938Spjdrcvar="hostid_enable"
17195938Spjd
18195938Spjdhostid_save()
19195938Spjd{
20281565Sdelphij	current_hostid=`$SYSCTL_N kern.hostuuid`
21281565Sdelphij
22281565Sdelphij	if [ -r ${hostid_file} ]; then
23281565Sdelphij		read saved_hostid < ${hostid_file}
24281565Sdelphij		if [ ${saved_hostid} = ${current_hostid} ]; then
25281565Sdelphij			exit 0
26195938Spjd		fi
27195938Spjd	fi
28281565Sdelphij
29281565Sdelphij	echo ${current_hostid} > ${hostid_file}
30281565Sdelphij	if [ $? -ne 0 ]; then
31281565Sdelphij		warn "could not store hostuuid in ${hostid_file}."
32281565Sdelphij	fi
33195938Spjd}
34195938Spjd
35195938Spjdload_rc_config $name
36195938Spjdrun_rc_command "$1"
37