VNDCONFIG(8) | System Manager's Manual | VNDCONFIG(8) |
vndconfig
—
configure vnode disks
vndconfig |
[-cirvz ] [-f
disktab] [-t
typename] vnode_disk
regular_file [geomspec] |
vndconfig |
-u [-Fv ]
vnode_disk |
vndconfig |
-l [-m
min] [vnode_disk ...] |
The vndconfig
command configures vnode
pseudo disk devices. It will associate the vnode disk
vnode_disk with the regular file
regular_file allowing the latter to be accessed as
though it were a disk. Hence a regular file within the filesystem can be
used for swapping or can contain a filesystem that is mounted in the name
space. The vnode_disk is a special file of raw
partition or name of vnode disk like vnd0.
By default, accesses to the file bypass normal mechanisms and thus
do not read from or fill the filesystem cache. Because the typical approach
is to access the file only via
vnd(4), or at least to have
regular accesses and vnd(4)
accesses separated in time, this is generally not problematic. This
bypassing behavior results in not updating the modification timestamp of the
file. Also, file contents read through the filesystem (and thus the
filesystem's caching layer) may not be the contents written via this
interface, so caution is in order for backups. The
-i
option may be useful if it is necessary to avoid
inconsistent caching.
Options indicate an action to be performed:
-c
If geomspec is specified, the vnode device will emulate the specified disk geometry. The format of the geomspec argument is:
/
nsectors/
ntracks/
ncylindersIf geometry is not specified, the kernel will choose a default based on 1MB cylinders. secsize is the number of bytes per sector. It must be a power of two, and at least 512. nsectors is the number of sectors per track. ntracks is the number of tracks per cylinder. ncylinders is the number of cylinders in the device.
-F
-u
.-f
disktab-t
option should look up in
disktab instead of in
/etc/disktab.-i
-l
-m
min-l
and if no specific devices are
given, causes at least min devices to be listed. The
default for min is 4, but all vnd devices up to (and
sometimes just beyond) the highest numbered vnd device configured since
the system last booted will be listed. If min is set
to 0, then only vnd devices currently in use will be shown.-r
-t
typename-u
-v
-z
If no action option [-clu
] is given,
-c
is assumed.
vndconfig
will exit with status 0 if the
operation requested completed successfully, or 1 otherwise. Unsuccessful
completion can be caused by unknown or incorrectly used options; attempting
to configure a vnd that is already configured; or unconfigure one that is
not, or without -F
, one which is still in use; or if
devices are specified that do not exist or are not
vnd(4) devices, giving an
improper geometry, etc.
vndconfig vnd0
/tmp/diskimage
or
vndconfig /dev/rvnd0c
/tmp/diskimage
Configures the vnode disk vnd0. Please note that use of the second form of the command is discouraged because it requires knowledge of the raw partition which varies between architectures. For the first form, be aware that there must not be a file vnd0 in the current directory, or it will be assumed to be the vnd device to be configured (which will usually fail).
vndconfig vnd0 /tmp/floppy.img
512/18/2/80
Configures the vnode disk vnd0 emulating the geometry of 512 bytes per sector, 18 sectors per track, 2 tracks per cylinder, and 80 cylinders total.
vndconfig vnd0 /tmp/image.udf
2048/1/1/0
Configures the vnode disk vnd0 for an UDF image to be used with mount_udf(8).
vndconfig -t floppy vnd0
/tmp/floppy.img
Configures the vnode disk vnd0 using the geometry specified in the floppy entry in /etc/disktab.
vndconfig -u vnd0
Unconfigures the vnd0 device.
To obtain status on all vnd devices listed in
/dev (assuming a system where the ‘d’
partition is the whole device (RAW_PART
)), use:
vndconfig -l /dev/vnd*d
Using
vndconfig -m0 -l
/dev/vnd*d
vndconfig -l
-m
) regardless of what might appear in
/dev (or elsewhere.)
vndcompress(1), opendisk(3), vnd(4), mount(8), swapctl(8), umount(8)
The vnconfig
command appeared in
NetBSD 1.0. It was renamed to
vndconfig
in NetBSD 7.0 for
consistency with other similar commands. (The original name was also
retained as an alternative for backwards compatibility.)
October 20, 2023 | NetBSD 10.99 |