Custom startup+shutdown scripts

Tony Frank tfrank at optushome.com.au
Sat Feb 21 01:53:01 PST 2004


Hi there,

On Fri, Feb 20, 2004 at 01:38:39PM -0000, Dominic Bishop wrote:
> I am shortly going to try and install a Belkin universal UPS on one of my
> FreeBSD machines running 5.2 using the nut utility.

Something I've been thinking of doing for many months now.

> Due to a failing in the Belkin protocol it requires some custom
> startup/shutdown scripting to make it work in an unsupervised recovery,

[ snip ]
> 
> The startup script needs to be run before disks are mounted in read/write
> and before filesystem checks for similar reasons.
> 
> I've looked through some of the rc scripts, namely rc.shutdown and a few
> others but really aren't sure as to where I should make these changes so
> they execute at the correct time in the boot/shutdown process. Could anyone
> tell me where I should be making these additions?

I'm in a 4.9-STABLE world and there I think it would be fairly straightforward:

Based on my understanding - init(8) is a good place to start - init will run
/etc/rc.shutdown before it finally powers off/reboots during a shutdown.
It currently does not unmount local filesystems, but you could add to the
rc.shutdown script at the end to unmount the local filesystems and then
perform your extra actions.

At startup you have a standard hook that will call /etc/rc.early if it 
exists.
You should be able to add whatever extra functions you need in here.
Note that this will be before filesystem checks are done etc.
Root will be mounted ro at this point.

I understand the rc system has changed a lot with 5.2 so I dont know how
much this will help you.

Regards,

Tony


More information about the freebsd-questions mailing list