aboutsummaryrefslogtreecommitdiff
path: root/documentation/content/en/books/handbook/virtualization/_index.adoc
diff options
context:
space:
mode:
Diffstat (limited to 'documentation/content/en/books/handbook/virtualization/_index.adoc')
-rw-r--r--documentation/content/en/books/handbook/virtualization/_index.adoc298
1 files changed, 171 insertions, 127 deletions
diff --git a/documentation/content/en/books/handbook/virtualization/_index.adoc b/documentation/content/en/books/handbook/virtualization/_index.adoc
index dcd0f54ff6..c567bd9c76 100644
--- a/documentation/content/en/books/handbook/virtualization/_index.adoc
+++ b/documentation/content/en/books/handbook/virtualization/_index.adoc
@@ -1,13 +1,13 @@
---
-title: Chapter 22. Virtualization
+title: Chapter 24. Virtualization
part: Part III. System Administration
prev: books/handbook/filesystems
next: books/handbook/l10n
description: Virtualization software allows multiple operating systems to run simultaneously on the same computer
tags: ["virtualization", "Parallels", "VMware", "VirtualBox", "bhyve", "XEN"]
showBookMenu: true
-weight: 26
-path: "/books/handbook/"
+weight: 28
+path: "/books/handbook/virtualization/"
---
[[virtualization]]
@@ -18,7 +18,7 @@ path: "/books/handbook/"
:icons: font
:sectnums:
:sectnumlevels: 6
-:sectnumoffset: 22
+:sectnumoffset: 24
:partnums:
:source-highlighter: rouge
:experimental:
@@ -58,8 +58,8 @@ After reading this chapter, you will know:
* The difference between a host operating system and a guest operating system.
* How to install FreeBSD on the following virtualization platforms:
-** Parallels Desktop(Intel(R)-based Apple(R) macOS(R))
-** VMware Fusion(Intel(R)-based Apple(R) macOS(R))
+** Parallels Desktop(Apple(R) macOS(R))
+** VMware Fusion(Apple(R) macOS(R))
** VirtualBox(TM)(Microsoft(R) Windows(R), Intel(R)-based Apple(R) macOS(R), Linux)
** bhyve(FreeBSD)
* How to tune a FreeBSD system for best performance under virtualization.
@@ -74,7 +74,7 @@ Before reading this chapter, you should:
[[virtualization-guest-parallelsdesktop]]
== FreeBSD as a Guest on Parallels Desktop for macOS(R)
-Parallels Desktop for Mac(R) is a commercial software product available for Intel(R) based Apple(R) Mac(R) computers running macOS(R) 10.4.6 or higher.
+Parallels Desktop for Mac(R) is a commercial software product available for Apple(R) Mac(R) computers running macOS(R) 10.14.6 or higher.
FreeBSD is a fully supported guest operating system.
Once Parallels has been installed on macOS(R), the user must configure a virtual machine and then install the desired guest operating system.
@@ -82,54 +82,41 @@ Once Parallels has been installed on macOS(R), the user must configure a virtual
=== Installing FreeBSD on Parallels Desktop on Mac(R)
The first step in installing FreeBSD on Parallels is to create a new virtual machine for installing FreeBSD.
-Select [.guimenuitem]#FreeBSD# as the menu:Guest OS Type[] when prompted:
-image::parallels-freebsd1.png[]
+Choose menu:Install Windows or another OS from a DVD or image file[] and proceed.
-Choose a reasonable amount of disk and memory depending on the plans for this virtual FreeBSD instance.
-4GB of disk space and 512MB of RAM work well for most uses of FreeBSD under Parallels:
+image::parallels-freebsd1.png[Parallels setup wizard showing Install Windows or another OS from a DVD or image file chosen]
-image::parallels-freebsd2.png[]
+Select the FreeBSD image file.
-image::parallels-freebsd3.png[]
+image::parallels-freebsd2.png[Parallels setup wizard showing FreeBSD image file selected]
-image::parallels-freebsd4.png[]
+Choose menu:Other as operating system[].
-image::parallels-freebsd5.png[]
-
-Select the type of networking and a network interface:
-
-image::parallels-freebsd6.png[]
-
-image::parallels-freebsd7.png[]
-
-Save and finish the configuration:
-
-image::parallels-freebsd8.png[]
+[WARNING]
+====
+Choosing FreeBSD will cause boot error on startup.
+====
-image::parallels-freebsd9.png[]
+image::parallels-freebsd3.png[Parallels setup wizard showing Other selected as operating system]
-After the FreeBSD virtual machine has been created, FreeBSD can be installed on it.
-This is best done with an official FreeBSD CD/DVD or with an ISO image downloaded from an official FTP site.
-Copy the appropriate ISO image to the local Mac(R) filesystem or insert a CD/DVD in the Mac(R)'s CD-ROM drive.
-Click on the disc icon in the bottom right corner of the FreeBSD Parallels window.
-This will bring up a window that can be used to associate the CD-ROM drive in the virtual machine with the ISO file on disk or with the real CD-ROM drive.
+Name the virtual machine and check menu:Customize settings before installation[]
-image::parallels-freebsd11.png[]
+image::parallels-freebsd4.png[Parallels setup wizard showing the checkbox checked for customizing settings before installation]
-Once this association with the CD-ROM source has been made, reboot the FreeBSD virtual machine by clicking the reboot icon.
-Parallels will reboot with a special BIOS that first checks if there is a CD-ROM.
+When the configuration window pops up, go to menu:Hardware[] tab, choose menu:Boot order[], and click menu:Advanced[].
+Then, choose *EFI 64-bit* as menu:BIOS[].
-image::parallels-freebsd10.png[]
+image::parallels-freebsd5.png[Parallels setup wizard showing EFI 64-bit chosen as BIOS]
-In this case it will find the FreeBSD installation media and begin a normal FreeBSD installation.
-Perform the installation, but do not attempt to configure Xorg at this time.
+Click menu:OK[], close the configuration window, and click menu:Continue[].
-image::parallels-freebsd12.png[]
+image::parallels-freebsd6.png[Parallels setup wizard showing the summary of the new virtual machine]
-When the installation is finished, reboot into the newly installed FreeBSD virtual machine.
+The virtual machine will automatically boot.
+Install FreeBSD following the general steps.
-image::parallels-freebsd13.png[]
+image::parallels-freebsd7.png[FreeBSD booted on Parallels]
[[virtualization-guest-parallels-configure]]
=== Configuring FreeBSD on Parallels
@@ -162,7 +149,7 @@ More advanced networking setups are described in crossref:advanced-networking[ad
[[virtualization-guest-vmware]]
== FreeBSD as a Guest on VMware Fusion for macOS(R)
-VMware Fusion for Mac(R) is a commercial software product available for Intel(R) based Apple(R) Mac(R) computers running macOS(R) 10.11 or higher.
+VMware Fusion for Mac(R) is a commercial software product available for Apple(R) Mac(R) computers running macOS(R) 12 or higher.
FreeBSD is a fully supported guest operating system.
Once VMware Fusion has been installed on macOS(R), the user can configure a virtual machine and then install the desired guest operating system.
@@ -172,48 +159,48 @@ Once VMware Fusion has been installed on macOS(R), the user can configure a virt
The first step is to start VMware Fusion which will load the Virtual Machine Library.
Click [.guimenuitem]#+->New# to create the virtual machine:
-image::vmware-freebsd01.png[width=35%]
+image::vmware-freebsd01.png[]
This will load the New Virtual Machine Assistant.
Choose [.guimenuitem]#Create a custom virtual machine# and click [.guimenuitem]#Continue# to proceed:
-image::vmware-freebsd02.png[width=45%]
+image::vmware-freebsd02.png[]
Select [.guimenuitem]#Other# as the [.guimenuitem]#Operating System# and either [.guimenuitem]#FreeBSD X# or [.guimenuitem]#FreeBSD X 64-bit#, as the menu:Version[] when prompted:
-image::vmware-freebsd03.png[width=45%]
+image::vmware-freebsd03.png[]
Choose the firmware(UEFI is recommended):
-image::vmware-freebsd04.png[width=45%]
+image::vmware-freebsd04.png[]
Choose [.guimenuitem]#Create a new virtual disk# and click [.guimenuitem]#Continue#:
-image::vmware-freebsd05.png[width=45%]
+image::vmware-freebsd05.png[]
Check the configuration and click [.guimenuitem]#Finish#:
-image::vmware-freebsd06.png[width=45%]
+image::vmware-freebsd06.png[]
Choose the name of the virtual machine and the directory where it should be saved:
-image::vmware-freebsd07.png[width=45%]
+image::vmware-freebsd07.png[]
Press command+E to open virtual machine settings and click [.guimenuitem]#CD/DVD#:
-image::vmware-freebsd08.png[width=45%]
+image::vmware-freebsd08.png[]
Choose FreeBSD ISO image or from a CD/DVD:
-image::vmware-freebsd09.png[width=45%]
+image::vmware-freebsd09.png[]
Start the virtual machine:
-image::vmware-freebsd10.png[width=25%]
+image::vmware-freebsd10.png[]
Install FreeBSD as usual:
-image::vmware-freebsd11.png[width=25%]
+image::vmware-freebsd11.png[]
Once the install is complete, the settings of the virtual machine can be modified, such as memory usage and the number of CPUs the virtual machine will have access to:
@@ -222,18 +209,18 @@ Once the install is complete, the settings of the virtual machine can be modifie
The System Hardware settings of the virtual machine cannot be modified while the virtual machine is running.
====
-image::vmware-freebsd12.png[width=45%]
+image::vmware-freebsd12.png[]
The status of the CD-ROM device.
Normally the CD/DVD/ISO is disconnected from the virtual machine when it is no longer needed.
-image::vmware-freebsd09.png[width=45%]
+image::vmware-freebsd09.png[]
The last thing to change is how the virtual machine will connect to the network.
To allow connections to the virtual machine from other machines besides the host, choose [.guimenuitem]#Connect directly to the physical network (Bridged)#.
Otherwise, [.guimenuitem]#Share the host's internet connection (NAT)# is preferred so that the virtual machine can have access to the Internet, but the network cannot access the virtual machine.
-image::vmware-freebsd13.png[width=45%]
+image::vmware-freebsd13.png[]
After modifying the settings, boot the newly installed FreeBSD virtual machine.
@@ -339,44 +326,6 @@ Section "InputDevice"
EndSection
....
-HAL users should create the following [.filename]#/usr/local/etc/hal/fdi/policy/90-vboxguest.fdi# or copy it from [.filename]#/usr/local/share/hal/fdi/policy/10osvendor/90-vboxguest.fdi#:
-
-[.programlisting]
-....
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-# Sun VirtualBox
-# Hal driver description for the vboxmouse driver
-# $Id: chapter.xml,v 1.33 2012-03-17 04:53:52 eadler Exp $
-
- Copyright (C) 2008-2009 Sun Microsystems, Inc.
-
- This file is part of VirtualBox Open Source Edition (OSE, as
- available from http://www.virtualbox.org. This file is free software;
- you can redistribute it and/or modify it under the terms of the GNU
- General Public License (GPL) as published by the Free Software
- Foundation, in version 2 as it comes in the "COPYING" file of the
- VirtualBox OSE distribution. VirtualBox OSE is distributed in the
- hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
-
- Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
- Clara, CA 95054 USA or visit http://www.sun.com if you need
- additional information or have any questions.
--->
-<deviceinfo version="0.2">
- <device>
- <match key="info.subsystem" string="pci">
- <match key="info.product" string="VirtualBox guest Service">
- <append key="info.capabilities" type="strlist">input</append>
- <append key="info.capabilities" type="strlist">input.mouse</append>
- <merge key="input.x11_driver" type="string">vboxmouse</merge>
- <merge key="input.device" type="string">/dev/vboxguest</merge>
- </match>
- </match>
- </device>
-</deviceinfo>
-....
-
Shared folders for file transfers between host and VM are accessible by mounting them using `mount_vboxvfs`.
A shared folder can be created on the host using the VirtualBox GUI or via `vboxmanage`.
For example, to create a shared folder called _myshare_ under [.filename]#/mnt/bsdboxshare# for the VM named _BSDBox_, run:
@@ -524,18 +473,6 @@ Then choose the Host Drive from the popup menu for the virtual CD/DVD drive sele
A checkbox labeled `Passthrough` will appear. This allows the virtual machine to use the hardware directly.
For example, audio CDs or the burner will only function if this option is selected.
-HAL needs to run for VirtualBox(TM)DVD/CD functions to work, so enable it in [.filename]#/etc/rc.conf# and start it if it is not already running:
-
-[.programlisting]
-....
-hald_enable="YES"
-....
-
-[source,shell]
-....
-# service hald start
-....
-
In order for users to be able to use VirtualBox(TM)DVD/CD functions, they need access to [.filename]#/dev/xpt0#, [.filename]#/dev/cdN#, and [.filename]#/dev/passN#.
This is usually achieved by making the user a member of `operator`.
Permissions to these devices have to be corrected by adding these lines to [.filename]#/etc/devfs.conf#:
@@ -556,16 +493,13 @@ perm pass* 0660
== FreeBSD as a Host with bhyve
The bhyve BSD-licensed hypervisor became part of the base system with FreeBSD 10.0-RELEASE.
-This hypervisor supports a number of guests, including FreeBSD, OpenBSD, and many Linux(R) distributions.
+This hypervisor supports a number of guests, including FreeBSD, OpenBSD, many Linux(R) distributions, and Microsoft Windows(R).
By default, bhyve provides access to serial console and does not emulate a graphical console.
Virtualization offload features of newer CPUs are used to avoid the legacy methods of translating instructions and manually managing memory mappings.
The bhyve design requires a processor that supports Intel(R) Extended Page Tables (EPT) or AMD(R) Rapid Virtualization Indexing (RVI) or Nested Page Tables (NPT).
Hosting Linux(R) guests or FreeBSD guests with more than one vCPU requires VMX unrestricted mode support (UG).
-Most newer processors, specifically the Intel(R) Core(TM) i3/i5/i7 and Intel(R) Xeon(TM) E3/E5/E7, support these features.
-UG support was introduced with Intel's Westmere micro-architecture.
-For a complete list of Intel(R) processors that support EPT, refer to https://ark.intel.com/content/www/us/en/ark/search/featurefilter.html?productType=873&0_ExtendedPageTables=True[].
-RVI is found on the third generation and later of the AMD Opteron(TM) (Barcelona) processors.
+
The easiest way to tell if a processor supports bhyve is to run `dmesg` or look in [.filename]#/var/run/dmesg.boot# for the `POPCNT` processor feature flag on the `Features2` line for AMD(R) processors or `EPT` and `UG` on the `VT-x` line for Intel(R) processors.
[[virtualization-bhyve-prep]]
@@ -579,7 +513,7 @@ First, load the bhyve kernel module:
# kldload vmm
....
-Then, create a [.filename]#tap# interface for the network device in the virtual machine to attach to.
+There are several ways to connect a virtual machine guest to a host's network; one straightforward way to accomplish this is to create a [.filename]#tap# interface for the network device in the virtual machine to attach to.
In order for the network device to participate in the network, also create a bridge interface containing the [.filename]#tap# interface and the physical interface as members.
In this example, the physical interface is _igb0_:
@@ -608,19 +542,34 @@ Download an installation image of FreeBSD to install:
[source,shell]
....
-# fetch ftp://ftp.freebsd.org/pub/FreeBSD/releases/ISO-IMAGES/12.2/FreeBSD-12.2-RELEASE-amd64-bootonly.iso
-FreeBSD-12.2-RELEASE-amd64-bootonly.iso 100% of 230 MB 570 kBps 06m17s
+# fetch https://download.freebsd.org/releases/ISO-IMAGES/14.0/FreeBSD-14.0-RELEASE-amd64-bootonly.iso
+FreeBSD-14.0-RELEASE-amd64-bootonly.iso 426 MB 16 MBps 22s
+....
+
+FreeBSD comes with an example script `vmrun.sh` for running a virtual machine in bhyve.
+It will start the virtual machine and run it in a loop, so it will automatically restart if it crashes.
+`vmrun.sh` takes a number of options to control the configuration of the machine, including:
+
+* `-c` controls the number of virtual CPUs,
+* `-m` limits the amount of memory available to the guest,
+* `-t` defines which [.filename]#tap# device to use,
+* `-d` indicates which disk image to use,
+* `-i` tells bhyve to boot from the CD image instead of the disk, and
+* `-I` defines which CD image to use.
+
+The last parameter is the name of the virtual machine and used to track the running machines.
+You can use the following command to get a list of all available program argument options:
+
+[source,shell]
+....
+# sh /usr/share/examples/bhyve/vmrun.sh --usage
....
-FreeBSD comes with an example script for running a virtual machine in bhyve.
-The script will start the virtual machine and run it in a loop, so it will automatically restart if it crashes.
-The script takes a number of options to control the configuration of the machine: `-c` controls the number of virtual CPUs, `-m` limits the amount of memory available to the guest, `-t` defines which [.filename]#tap# device to use, `-d` indicates which disk image to use, `-i` tells bhyve to boot from the CD image instead of the disk, and `-I` defines which CD image to use.
-The last parameter is the name of the virtual machine, used to track the running machines.
This example starts the virtual machine in installation mode:
[source,shell]
....
-# sh /usr/share/examples/bhyve/vmrun.sh -c 1 -m 1024M -t tap0 -d guest.img -i -I FreeBSD-12.2-RELEASE-amd64-bootonly.iso guestname
+# sh /usr/share/examples/bhyve/vmrun.sh -c 1 -m 1024M -t tap0 -d guest.img -i -I FreeBSD-14.0-RELEASE-amd64-bootonly.iso guestname
....
The virtual machine will boot and start the installer.
@@ -639,18 +588,20 @@ Now the guest can be started from the virtual disk:
[[virtualization-bhyve-linux]]
=== Creating a Linux(R) Guest
-In order to boot operating systems other than FreeBSD, the package:sysutils/grub2-bhyve[] port must be first installed.
+Linux guests can be booted either like any other regular crossref:virtualization[virtualization-bhyve-uefi,"UEFI-based guest"] virtual machine, or alternatively, you can make use of the package:sysutils/grub2-bhyve[] port.
-Next, create a file to use as the virtual disk for the guest machine:
+To do this, first ensure that the port is installed, then create a file to use as the virtual disk for the guest machine:
[source,shell]
....
# truncate -s 16G linux.img
....
-Starting a virtual machine with bhyve is a two step process.
-First a kernel must be loaded, then the guest can be started.
-The Linux(R) kernel is loaded with package:sysutils/grub2-bhyve[].
+Starting a Linux virtual machine with `grub2-bhyve` is a two step process.
+
+. First a kernel must be loaded, then the guest can be started.
+. The Linux(R) kernel is loaded with package:sysutils/grub2-bhyve[].
+
Create a [.filename]#device.map# that grub will use to map the virtual devices to the files on the host system:
[.programlisting]
@@ -739,7 +690,7 @@ Destroy the virtual machine instance:
[[virtualization-bhyve-uefi]]
=== Booting bhyve Virtual Machines with UEFI Firmware
-In addition to bhyveload and grub-bhyve, the bhyve hypervisor can also boot virtual machines using the UEFI userspace firmware.
+In addition to `bhyveload` and `grub-bhyve`, the bhyve hypervisor can also boot virtual machines using the UEFI firmware.
This option may support guest operating systems that are not supported by the other loaders.
In order to make use of the UEFI support in bhyve, first obtain the UEFI firmware images.
@@ -757,6 +708,28 @@ The actual bhyve command may look like this:
guest
....
+To allow a guest to store UEFI variables, you can use a variables file appended to the `-l` flag.
+Note that bhyve will write guest modifications to the given variables file.
+Therefore, be sure to first create a per-guest-copy of the variables template file:
+
+[source,shell]
+....
+# cp /usr/local/share/uefi-firmware/BHYVE_UEFI_VARS.fd /path/to/vm-image/BHYVE_UEFI_VARS.fd
+....
+
+Then, add that variables file into your bhyve arguments:
+
+[source,shell]
+....
+# bhyve -AHP -s 0:0,hostbridge -s 1:0,lpc \
+-s 2:0,virtio-net,tap1 -s 3:0,virtio-blk,./disk.img \
+-s 4:0,ahci-cd,./install.iso -c 4 -m 1024M \
+-l bootrom,/usr/local/share/uefi-firmware/BHYVE_UEFI.fd,/path/to/vm-image/BHYVE_UEFI_VARS.fd \
+guest
+....
+
+You can use man:efivar[8] to view and modify the variables file contents from the host.
+
package:sysutils/bhyve-firmware[] also contains a CSM-enabled firmware, to boot guests with no UEFI support in legacy BIOS mode:
[source,shell]
@@ -812,6 +785,15 @@ When starting the VM, specify the ZFS volume as the disk drive:
-l com1,stdio -c 4 -m 1024M linuxguest
....
+If you are using ZFS for the host as well as inside a guest, keep in mind the competing memory pressure of both systems caching the virtual machine's contents.
+To alleviate this, consider setting the host's ZFS filesystems to use metadata-only cache.
+To do this, apply the following settings to ZFS filesystems on the host, replacing `<name>` with the name of the specific zvol dataset name of the virtual machine.
+
+[source,shell]
+....
+# zfs set primarycache=metadata <name>
+....
+
[[virtualization-bhyve-nmdm]]
=== Virtual Machine Consoles
@@ -834,6 +816,16 @@ Ubuntu 13.10 handbook ttyS0
handbook login:
....
+To disconnect from a console, enter a newline (i.e. press `RETURN`) follwed by tilde (`~`), and finally dot (`.`).
+Keep in mind that only the connection is dropped while the login session remains active.
+Another user connecting to the same console could therefore make use of any active sessions without having to first authenticate.
+For security reasons, it's therefore recommended to logout before disconnecting.
+
+The number in the [.filename]#nmdm# device path must be unique for each virtual machine and must not be used by any other processes before bhyve starts.
+The number can be chosen arbitrarily and does not need to be taken from a consecutive sequence of numbers.
+The device node pair (i.e. [.filename]#/dev/nmdm0a# and [.filename]#/dev/nmdm0b#) are created dynamically when bhyve connects its console and destroyed when it shuts down.
+Keep this in mind when creating scripts to start your virtual machines: you need to make sure that all virtual machines are assigned unique [.filename]#nmdm# devices.
+
[[virtualization-bhyve-managing]]
=== Managing Virtual Machines
@@ -858,6 +850,58 @@ A specified virtual machine can be destroyed using `bhyvectl`:
# bhyvectl --destroy --vm=guestname
....
+Destroying a virtual machine this way means killing it immediately. Any unsaved data will be lost, open files and filesystems may get corrupted.
+To gracefully shut down a virtual machine, you can instead send a `TERM` signal to its bhyve process. This triggers an ACPI shutdown event for the guest:
+
+[source,shell]
+....
+# ps ax | grep bhyve
+17424 - SC 56:48.27 bhyve: guestvm (bhyve)
+# kill 17424
+....
+
+[[virtualization-tools-utilities]]
+=== Tools and Utilities
+
+There are numerous utilities and applications available in ports to help simplify setting up and managing bhyve virtual machines:
+
+.bhyve Managers
+[options="header", cols="1,1,1,1"]
+|===
+| Name | License | Package | Documentation
+
+| vm-bhyve
+| BSD-2
+| package:sysutils/vm-bhyve[]
+| link:https://github.com/churchers/vm-bhyve[Documentation]
+
+| CBSD
+| BSD-2
+| package:sysutils/cbsd[]
+| link:https://www.bsdstore.ru[Documentation]
+
+| Virt-Manager
+| LGPL-3
+| package:deskutils/virt-manager[]
+| link:https://virt-manager.org/[Documentation]
+
+| Bhyve RC Script
+| Unknown
+| package:sysutils/bhyve-rc[]
+| link:https://www.freshports.org/sysutils/bhyve-rc/[Documentation]
+
+| bmd
+| Unknown
+| package:sysutils/bmd[]
+| link:https://github.com/yuichiro-naito/bmd[Documentation]
+
+| vmstated
+| BSD-2
+| package:sysutils/vmstated[]
+| link:https://github.com/christian-moerz/vmstated[Documentation]
+
+|===
+
[[virtualization-bhyve-onboot]]
=== Persistent Configuration
@@ -916,7 +960,7 @@ In order to run a FreeBSD Xen(TM) Dom0 the box must be booted using legacy boot
[[virtualization-host-xen-dom0-setup]]
=== Xen(TM) Dom0 Control Domain Setup
-Users of FreeBSD 11 should install the package:emulators/xen-kernel47[] and package:sysutils/xen-tools47[] packages that are based on Xen version 4.7. Systems running on FreeBSD-12.0 or newer can use Xen 4.11 provided by package:emulators/xen-kernel411[] and package:sysutils/xen-tools411[], respectively.
+Users should install the package:emulators/xen-kernel[] and package:sysutils/xen-tools[] packages, based on Xen(TM) 4.18.
Configuration files must be edited to prepare the host for the Dom0 integration after the Xen packages are installed.
An entry to [.filename]#/etc/sysctl.conf# disables the limit on how many pages of memory are allowed to be wired.
@@ -1028,7 +1072,7 @@ The ISO installation file is retrieved with man:fetch[1] and saved locally in a
[source,shell]
....
-# fetch ftp://ftp.freebsd.org/pub/FreeBSD/releases/ISO-IMAGES/12.0/FreeBSD-12.0-RELEASE-amd64-bootonly.iso -o freebsd.iso
+# fetch https://download.freebsd.org/releases/ISO-IMAGES/14.0/FreeBSD-14.0-RELEASE-amd64-bootonly.iso -o freebsd.iso
....
A ZFS volume of 20 GB called [.filename]#xendisk0# is created to serve as the disk space for the VM.
@@ -1099,7 +1143,7 @@ freebsd 1 1024 1 -b---- 663.9
To begin the installation of the base operating system, start the VNC client, directing it to the main network address of the host or to the IP address defined on the `vnclisten` line of [.filename]#freebsd.cfg#.
After the operating system has been installed, shut down the DomU and disconnect the VNC viewer.
-Edit [.filename]#freebsd.cfg#, removing the line with the `cdrom` definition or commenting it out by inserting a `#` character at the beginning of the line.
+Edit [.filename]#freebsd.cfg#, removing the line with the `cdrom` definition or commenting it out by inserting a `+#+` character at the beginning of the line.
To load this new configuration, it is necessary to remove the old DomU with `xl destroy`, passing either the name or the id as the parameter.
Afterwards, recreate it using the modified [.filename]*freebsd.cfg*.