bmd
— bhyve
management daemon
bmd |
[-F ] [-f
config_file] [-P
pid_file] [-p
plugin_directory] [-m
unix_domain_socket_permission]
[-v ] |
The bmd
utility spawns bhyve processes
according to the configuration file, and waits for them to terminate. If a
bhyve process terminates with exit code 0 (rebooted),
bmd
spawns the bhyve process again. The
bmd
receives control commands from
bmdctl(8)
to manage bhyve processes via unix domain socket. See
bmdctl(8)
for detail.
-F
- Run in foreground.
-f
config_file
- Specify the pathname of an alternate configuration file. The default is
/usr/local/etc/bmd.conf.
-P
pid_file
- Specify an alternative file in which to store the process ID. The default
is /var/run/bmd.pid.
-p
plugin_directory
- Specify the directory path of an alternate plugin store. The default is
/usr/local/libexec/bmd.
-m
unix_domain_socket_permission
- Specify the unix domain socket permission in octal number. The default is
0660. Please note that the unix domain socket path
cannot be changed in command line options. See
bmd.conf(5)
to change the path.
-v
- Show version number.
The bmd
waits for control commands from
bmdctl(8)
via unix domain socket. When bmd
receives a boot
request from
bmdctl(8),
bmd
reloads the configuration file to check updates
for boot target. If any updates are found, the bmd
adopts the updated configuration.
bmd
writes log messages to LOG_DAEMON
facility. Usually it is written in the '/var/log/daemon.log' file by the
syslogd(8).
You can see error messages of BMD and informational messages such as
starting a VM or stopping a VM with or without an error.
bmd
deals with the following signals:
- SIGTERM
- Send SIGTERM to all bhyve processes and wait for them to terminate, then
quit the daemon.
- SIGHUP
- Reload the configuration file.
bmd
loads plugins on start up. Plugins
extend the functionality of bmd
. And also add
configuration parameters for extended functionality if necessary.
- /var/run/bmd.pid
- Pid file
- /var/run/bmd.sock
- Unix domain socket
- /usr/local/etc/bmd.conf
- Configuration file
- /usr/local/libexec/bmd
- Plugin directory
- /usr/local/var/cache/bmd
- Storage for UEFI variables