Manual Page Result
0
Command: vnd | Section: 4 | Source: OpenBSD | File: vnd.4
VND(4) FreeBSD Kernel Interfaces Manual VND(4)
NAME
vnd - vnode disk driver
SYNOPSIS
pseudo-device vnd [count]
DESCRIPTION
The vnd driver provides a disk-like interface to a file. This is useful
for a variety of applications, such as building miniroot or floppy disk
images.
This document assumes familiarity with how to generate kernels and how to
properly configure disks and pseudo-devices in a kernel configuration
file.
In order to compile in support for vnd devices, a line similar to the
following must be present in the kernel configuration file:
pseudo-device vnd 4 # vnode disk driver
The count argument is how many vnds memory is allocated for at boot time.
In this example, no more than 4 vnds may be configured.
There is a run-time utility that is used for configuring vnds. See
vnconfig(8) for more information.
IOCTL INTERFACE
The following ioctl(2) calls are defined in <dev/vndioctl.h>:
VNDIOCSET struct vnd_ioctl *
Associate the file vnd_file with a vnd pseudo device, optionally
encrypted using the Blowfish cipher and the key specified in
vnd_key of length vnd_keylen. The size of the configured device
is returned in vnd_size.
struct vnd_ioctl {
char *vnd_file;
off_t vnd_size;
u_char *vnd_key;
int vnd_keylen;
};
VNDIOCCLR struct vnd_ioctl *
Disassociate a vnd device.
VNDIOCGET struct vnd_user *
Get the associated file name, device, inode number, and unit
number of a vnd device. If vnu_unit is -1, information on the
vnd device corresponding to the file descriptor passed to
ioctl(2) will be returned. Otherwise, vnu_unit may contain the
unit number of another vnd device. This allows for opening just
vnd0 and querying all available devices.
struct vnd_user {
char vnufile[VNDNLEN];
int vnu_unit;
dev_t vnu_dev;
ino_t vnu_ino;
};
Additionally, some disklabel(8) related ioctl(2) calls defined in
<sys/dkio.h> are available: DIOCGDINFO, DIOCSDINFO, and DIOCWDINFO. They
are documented in sd(4).
FILES
/dev/{,r}vnd* vnd device special files
SEE ALSO
ioctl(2), sd(4), disklabel(5), config(8), disklabel(8), fdisk(8),
fsck(8), MAKEDEV(8), mount(8), newfs(8), vnconfig(8)
FreeBSD 14.1-RELEASE-p8 July 2, 2014 FreeBSD 14.1-RELEASE-p8