HOTPLUGD(8) - System Manager's Manual

HOTPLUGD(8) - System Manager’s Manual #

HOTPLUGD(8) - System Manager’s Manual

NAME #

hotplugd - devices hot plugging monitor daemon

SYNOPSIS #

hotplugd [-d device]

DESCRIPTION #

The hotplugd daemon monitors the hotplug(4) pseudo-device, acting on signaled events by executing the scripts in the /etc/hotplug directory. By default it uses the /dev/hotplug device for reading events from, but an alternative device can be specified with the -d option.

Actions can be configured either for device attachment or detachment. On device attachment the attach script is executed if it exists. On device detachment the detach script is executed if it exists. In both cases two parameters are passed to the scripts: the class and name of the attached or detached device. The device class corresponds to the classes described in the <sys/device.h> header file and can be one of the following:

0

generic, no special info

1

CPU (carries resource utilization)

2

disk drive

3

network interface

4

tape device

5

serial line interface

Not all classes are really usable. For example, it’s unlikely that a CPU will be hotplugged.

The device name is the usual name, as listed in MAKEDEV(8), and the unit number, e.g. sd1.

FILES #

/dev/hotplug

Pseudo-device file.

/etc/hotplug

Directory where the scripts to execute are located.

/etc/hotplug/attach

Script to execute on device attachment.

/etc/hotplug/detach

Script to execute on device detachment.

EXAMPLES #

Sample attach script:

#!/bin/sh

DEVCLASS=$1
DEVNAME=$2

case $DEVCLASS in
2)
	# disk devices
	disklabel=`/sbin/disklabel $DEVNAME 2>&1 | \
	    sed -n '/^label: /s/^label: //p'`
	case $disklabel in
	Sony*DSC*)
		# Sony DSC camera
		mount -o nodev,nosuid /dev/"$DEVNAME"i /mnt/camera
		;;
	esac
	;;
3)
	# network devices; requires hostname.$DEVNAME
	sh /etc/netstart $DEVNAME
	;;
esac

SEE ALSO #

hotplug(4)

HISTORY #

The hotplugd program first appeared in OpenBSD 3.6.

AUTHORS #

The hotplugd program was written by Alexander Yurchenko <grange@openbsd.org>.

OpenBSD 7.5 - July 27, 2015