vold.conf(4) File Formats vold.conf(4)
NAME
vold.conf - volume management configuration file
SYNOPSIS
/etc/vold.conf
DESCRIPTION
The vold.conf file contains the removable media configuration information used by vold(1M). This information includes the database to use,
labels that are supported, devices to use, actions to take when certain media events occur, and the list of file systems that are unsafe to
eject without unmounting.
Modify vold.conf to specify which program should be called when media events (actions) occur or when you need to add another device to your
system. See EXAMPLES for more information on adding devices.
If you modify vold.conf, you must tell vold to reread vold.conf by sending a HUP signal. Use the following command:
# kill -HUP `pgrep vold`
File Format
The syntax for the vold.conf file is shown here.
# Database to use
db database
# Labels supported
label label_type shared_object device
# Devices to use
use device type special shared_object symname [ options ]
# Actions
insert regex [ options ] program program args
eject regex [ options ] program program args
notify regex [ options ] program program args
# List of file system types unsafe to eject
unsafe fs_type fs_type
Of these syntax fields, you can safely modify Devices to use and Actions. Do not modify the db line.
Devices to Use Field
All use device statements must be grouped together by device type. (For example, all use cdrom statements must be grouped together and all
use floppy statements must be grouped together.) The explanations of the syntax for the Devices to use field are as follows:
device The type of removable media device to be used. Legal values are cdrom, floppy, pcmem and rmdisk.
type The specific capabilities of the device. Legal value is drive.
special This sh(1) expression specifies the device or devices to be used. Path usually begins with /dev.
shared_object The name of the program that manages this device. vold(1M) expects to find this program in /usr/lib/vold.
symname The symbolic name that refers to this device. The symname is placed in the device directory.
options The user, group, and mode permissions for the media inserted (optional).
The special and symname parameters are related. If special contains any shell wildcard characters (that is, has one or more asterisks or
question marks in it), then the syname must end with"%d". In this case, the devices that are found to match the regular expression are
sorted, then numbered. The first device will have a zero filled in for the "%d", the second device found will have a one, and so on.
If the special specification does not have any shell wildcard characters then the symname parameter must explicitly specify a number at its
end (see EXAMPLES below).
Actions Field
Here are the explanations of the syntax for the Actions field.
insert|eject|notify The media event prompting the event.
regex This sh(1) regular expression is matched against each entry in the /vol file system that is being affected by this
event.
options You can specify what user or group name that this event is to run as (optional).
program The full path name of an executable program to be run when regex is matched.
program args Arguments to the program.
Default Values
The default vold.conf file is shown here.
# Volume Daemon Configuration file
#
# Database to use (must be first)
db db_mem.so
# Labels supported
label cdrom label_cdrom.so cdrom
label dos label_dos.so floppy rmdisk pcmem
label sun label_sun.so floppy rmdisk pcmem
# Devices to use
use cdrom drive /dev/rdsk/c*s2 dev_cdrom.so cdrom%d
use floppy drive /dev/rdiskette[0-9] dev_floppy.so floppy%d
use pcmem drive /dev/rdsk/c*s2 dev_pcmem.so pcmem%d forceload=true
use rmdisk drive /dev/rdsk/c*s2 dev_rmdisk.so rmdisk%d
# Actions
eject dev/diskette[0-9]/* user=root /usr/sbin/rmmount
eject dev/dsk/* user=root /usr/sbin/rmmount
insert dev/diskette[0-9]/* user=root /usr/sbin/rmmount
insert dev/dsk/* user=root /usr/sbin/rmmount
notify rdsk/* group=tty user=root /usr/lib/vold/volmissing -p
remount dev/diskette[0-9]/* user=root /usr/sbin/rmmount
remount dev/dsk/* user=root /usr/sbin/rmmount
# List of file system types unsafe to eject
unsafe ufs hsfs pcfs udfs
EXAMPLES
Example 1: A sample vold.conf file.
To add a CD-ROM drive to the vold.conf file that does not match the default regular expression (/dev/rdsk/c*s2), you must explicitly list
its device path and what symbolic name (with %d) you want the device path to have. For example, to add a CD-ROM drive that has the path
/dev/rdsk/my/cdroms? (where s? are the different slices), add the following line to vold.conf (all on one line):
use cdrom drive /dev/rdsk/my/cdroms2 dev_cdrom.so cdrom%d
Then, when media is inserted in this CD-ROM drive, vold assigns it the next symbolic name. For example, if two CD-ROMs match the default
regular expression, they would be named cdrom0 and cdrom1. And, any that match the added regular expression would be named starting with
cdrom2.
For a diskette that does not match the vold.conf default regular expression (vol/dev/aliases/floppy[0-9]), a similar line would have to be
added. For example, to add a diskette whose path was /dev/my/fd0, you would add the following to vold.conf:
use floppy drive /dev/my/fd0 dev_floppy.so floppy%d
SEE ALSO
sh(1), volcancel(1), volcheck(1), volmissing(1), rmmount(1M), rpc.smserverd(1M), vold(1M), rmmount.conf(4), volfs(7FS)
NOTES
vold manages both the block and character device for removable media. However, to make the configuration file easier to set up and scan,
only one of these devices needs to be specified. If you follow the conventions specified below, vold figures out both device names if only
one of them is specified. For example, if you specify the block device, it figures out the pathname to the character device; if you specify
the pathname to the character device, it figures out the block device.
CD-ROM Naming Conventions
The CD-ROM pathname must have a directory component of rdsk (for the character device) and dsk for the block device. For example, if you
specify the character device using the line:
use cdrom drive /dev/rdsk/my/cdroms2 dev_cdrom.so cdrom%d
then it is assumed that the block device is at
/dev/dsk/my/cdroms2
Diskette Naming Conventions
For diskettes, vold requires that the device pathnames end in either rfd[0-9] or rdiskette[0-9] for the character device, and fd[0-9] or
diskette[0-9] for the block device. As with the CD-ROM, it generates either the block name given the character name, or the character
name given the block name.
SunOS 5.10 21 Jun 2002 vold.conf(4)