volfs is the Volume Management file system rooted at root_dir. The default location for root-dir is /vol, but this can be overridden using the -d option of vold (see vold(1M)). This file system is maintained by the Volume Management daemon, vold, and will be considered to be /vol for this description.
Media can be accessed in a logical manner (no association with a particular piece of hardware), or a physical manner (associated with a particular piece of hardware).
Logical names for media are referred to through /vol/dsk and /vol/rdsk. /vol/dsk provides block access to random access devices. /vol/rdsk provides character access to random access devices.
The /vol/rdsk and /vol/dsk directories are mirrors of one another. Any change to one is reflected in the other immediately. The dev_t for a volume will be the same for both the block and character device.
The default permissions for /vol are mode=0555, owner=root, group=sys. The default permissions for /vol/dsk and /vol/rdsk are mode=01777, owner=root, group=sys.
Physical references to media are obtained through /vol/dev. This hierarchy reflects the structure of the /dev name space. The default permissions for all directories in the /vol/dev hierarchy are mode=0555, owner=root, group=sys.
If the media does not contain file systems that can be automatically mounted by rmmount(1M), users can gain access to the media through the following /vol locations:
|Location||State of Media|
|/vol/dev/diskette0/unnamed_floppy||formatted unnamed floppy-block device access|
|/vol/dev/rdiskette0/unnamed_floppy||formatted unnamed floppy-raw device access|
|/vol/dev/diskette0/unlabeled||unlabeled floppy-block device access|
|/vol/dev/rdiskette0/unlabeled||unlabeled floppy-raw device access|
|/vol/dev/dsk/c0t6/unnamed_cdrom||CD-ROM-block device access|
|/vol/dev/rdsk/c0t6/unnamed_cdrom||CD-ROM-raw device access|
Some media support the concept of a partition. If the label identifies partitions on the media, the name of the media becomes a directory with partitions under it. Only valid partitions are represented. Partitions cannot be moved out of a directory.
/vol/dsk/foo/s0 /vol/dsk/foo/s2 /vol/dsk/foo/s5for block access and
/vol/rdsk/foo/s0 /vol/rdsk/foo/s2 /vol/rdsk/foo/s5for character access.
If a volume is relabeled to reflect different partitions, the name space changes to reflect the new partition layout.
A format program can check to see if there are others with the volume open and not allow the format to occur if it is. Volume Management, however, does not explicitly prevent the rewriting of a label while others have the volume open. If a partition of a volume is open, and the volume is relabeled to remove that partition, it will appear exactly as if the volume were missing. A notify event will be generated and the user may cancel the operation with volcancel(1), if desired.