BHYVELOAD(8) BSD System Manager's Manual BHYVELOAD(8)NAME
bhyveload -- load a FreeBSD guest inside a bhyve virtual machine
SYNOPSIS
bhyveload [-c cons-dev] [-d disk-path] [-e name=value] [-h host-path] [-m mem-size] vmname
DESCRIPTION
bhyveload is used to load a FreeBSD guest inside a bhyve(4) virtual machine.
bhyveload is based on loader(8) and will present an interface identical to the FreeBSD loader on the user's terminal.
The virtual machine is identified as vmname and will be created if it does not already exist.
OPTIONS
The following options are available:
-c cons-dev
cons-dev is a tty(4) device to use for bhyveload terminal I/O.
The text string "stdio" is also accepted and selects the use of unbuffered standard I/O. This is the default value.
-d disk-path
The disk-path is the pathname of the guest's boot disk image.
-e name=value
Set the FreeBSD loader environment variable name to value.
The option may be used more than once to set more than one environment variable.
-h host-path
The host-path is the directory at the top of the guest's boot filesystem.
-m mem-size [K|k|M|m|G|g|T|t]
mem-size is the amount of memory allocated to the guest.
The mem-size argument may be suffixed with one of K, M, G or T (either upper or lower case) to indicate a multiple of Kilobytes,
Megabytes, Gigabytes or Terabytes respectively.
The default value of mem-size is 256M.
EXAMPLES
To create a virtual machine named freebsd-vm that boots off the ISO image /freebsd/release.iso and has 1GB memory allocated to it:
bhyveload -m 1G -d /freebsd/release.iso freebsd-vm
To create a virtual machine named test-vm with 256MB of memory allocated, the guest root filesystem under the host directory
/user/images/test and terminal I/O sent to the nmdm(4) device /dev/nmdm1B
bhyveload -m 256MB -h /usr/images/test -c /dev/nmdm1B test-vm
SEE ALSO bhyve(4), nmdm(4), vmm(4), bhyve(8), loader(8)HISTORY
bhyveload first appeared in FreeBSD 10.0, and was developed at NetApp Inc.
AUTHORS
bhyveload was developed by Neel Natu <neel@FreeBSD.org> at NetApp Inc with a lot of help from Doug Rabson <dfr@FreeBSD.org>.
BUGS
bhyveload can only load FreeBSD as a guest.
BSD January 7, 2012 BSD
Check Out this Related Man Page
MOUNT.CONF(8) BSD System Manager's Manual MOUNT.CONF(8)NAME
mount.conf -- root file system mount configuration file
SYNOPSIS
/.mount.conf
DESCRIPTION
During the bootup process, the FreeBSD kernel will try to mount the root file system using the logic in the vfs_mountroot() function in
src/sys/kern/vfs_mountroot.c. The root mount logic can be described as follows:
1. The kernel will synthesize in memory a config file with default directives for mounting the root file system. The logic for this is in
vfs_mountroot_conf0().
2. The kernel will first mount devfs(8) as the root file system.
3. Next, the kernel will parse the in-memory config file created in step 1 and try to mount the actual root file system. See FILE FORMAT
for the format of the config file.
4. When the actual root file system is mounted, devfs will be re-mounted on the /dev directory.
5. If a /.mount.conf file does not exist in the root file system which was just mounted, the root mount logic stops here.
6. If a /.mount.conf file exists in the root file system which was just mounted, this file will be parsed, and the kernel will use this new
config file to try to re-mount the root file system. See FILE FORMAT for the format of the config file.
7. If the new root file system has a /.mount directory, the old root file system will be re-mounted on /.mount.
8. The root mount logic will go back to step 4.
The root mount logic is recursive, and step 8 will be repeated as long as each new root file system which is mounted has a /.mount.conf file.
FILE FORMAT
The kernel parses each line in .mount.conf and then tries to perform the action specified on that line as soon as it is parsed.
# A line beginning with a # is a comment and is ignored.
{FS}:{MOUNTPOINT} {OPTIONS}
The kernel will try to mount this in an operation equivalent to:
mount -t {FS} -o {OPTIONS} {MOUNTPOINT} /
If this is successfully mounted, further lines in .mount.conf are ignored. If all lines in .mount.conf have been processed and
no root file system has been successfully mounted, then the action specified by .onfail is performed.
.ask When the kernel processes this line, a mountroot> command-line prompt is displayed. At this prompt, the operator can enter the
the root mount.
.md file Create a memory backed md(4) virtual disk, using file as the backing store.
.onfail [panic|reboot|retry|continue]
If after parsing all the lines in .mount.conf the kernel is unable to mount a root file system, the .onfail directive tells the
kernel what action to perform.
.timeout N Before trying to mount a root file system, if the root mount device does not exist, wait at most N seconds for the device to
appear before trying to mount it. If .timeout is not specified, the default timeout is 3 seconds.
EXAMPLES
The following example .mount.conf will direct the kernel to try mounting the root file system first as an ISO CD9660 file system on /dev/cd0,
then if that does not work, as an ISO CD9660 file system on /dev/acd0, and then if that does not work, as a UFS file system on /dev/ada0s1a.
If that does not work, a mountroot> command-line prompt will be displayed where the operator can manually enter the root file system to
mount. Finally if that does not work, the kernel will panic.
.onfail panic
.timeout 3
cd9660:/dev/cd0 ro
.timeout 0
cd9660:/dev/acd0 ro
.timeout 3
ufs:/dev/ada0s1a
.ask
The following example .mount.conf will direct the kernel to create a md(4) memory disk attached to the file /data/OS-1.0.iso and then mount
the ISO CD9660 file system on the md device which was just created. The last line is a comment which is ignored.
.timeout 3
.md /data/OS-1.0.iso
cd9600:/dev/md# ro
# Can also use cd9660:/dev/md0 ro
The following example .mount.conf will direct the kernel to create a md(4) memory disk attached to the file /data/base.ufs.uzip and then
mount the UFS file system on the md uzip device which was just created by the geom_uzip(4) driver.
.md /data/base.ufs.uzip
ufs:/dev/md#.uzip ro
# Can also use ufs:/dev/md0.uzip ro
The following example .mount.conf will direct the kernel to do a unionfs mount on a directory /jail/freebsd-8-stable which has a chroot(2)
environment.
.timeout 3
unionfs:/jail/freebsd-8-stable
NOTES
For each root file system which is mounted, a /dev directory must exist so that the root mount logic can properly re-mount devfs(8). If this
directory does not exist, the system may hang during the bootup process.
SEE ALSO nmount(2), md(4), boot.config(5), fstab(5), boot(8), loader(8), mount(8)HISTORY
The mount.conf file first appeared in FreeBSD 9.0.
AUTHORS
The root mount logic in the FreeBSD kernel which parses /.mount.conf was written by Marcel Moolenaar <marcel@FreeBSD.org>. This man page was
written by Craig Rodrigues <rodrigc@FreeBSD.org>.
BSD July 7, 2013 BSD