Adding a hook to shutdown.c & halt (reboot.c) to call a script.
John Baldwin
jhb at freebsd.org
Wed Jul 10 20:59:39 UTC 2013
On Friday, July 05, 2013 6:35:02 pm Julian H. Stacey wrote:
> > shutdown(8) signals init (unless -o is given), which will run
> > /etc/rc.shutdown from multi-user mode. The same applies to ctrl+alt+del,
> > kernel-controlled overheating shutdown, etc.
>
> Thanks Jilles, So I appended to my rc.shutdown
> # -x not -f below to also allow a symbolic link to work.
> if [ -x "/etc/rc.shutmedia" ]; then
> /etc/rc.shutmedia
> & renamed my URL to http://www.berklix.com/~jhs/bin/.sh/rc.shutmedia
>
>
> > reboot(8) and halt(8) do not involve init and do not run any shutdown
> > scripts. I think they should be changed to signal init (except reboot
> > -q, halt -q) and should not be used until then. However, there are
> > apparently some problems with that.
> >
> > The incorrect umount order should perhaps be fixed in the kernel.
>
> Yes, bad enough for a local laptop to hang,
> if it was a remote server, very nasty.
You can just put a script in /usr/local/etc/rc.d. If it has the
'shutdown' keyword it gets run with a 'stop' command during shutdown.
(Just grep for "shutdown" in /etc/rc.d to find example scripts)
--
John Baldwin
More information about the freebsd-mobile
mailing list