#!/bin/sh # Copyright 2022 Helmut Grohne # SPDX-License-Identifier: MIT : <<'POD2MAN' =head1 NAME debvm-run - Run a VM image created by debvm-create =head1 SYNOPSIS B [B<-g>] [B<-i> F] [B<-s> I] [B<--> I] =head1 DESCRIPTION B is essentially a thin wrapper around B for running a virtual machine image created by B or something compatible. The virtual machine image is expected to be a raw ext4 image with a non-empty file system label. The architecture of the machine is detected from the contained F. It must contain a symbolic link pointing to a kernel image at one of F<(|/boot)/vmlinu[xz]> a symbolic link pointing to an initrd image at F in the same directory as the kernel image. Both are extracted and passed to B. A net interface configured for user mode is added automatically. =head1 OPTIONS =over 8 =item B<--append>=I While the kernel command line can be modified by passing B<-append> to B directly, doing that always replaces the entire command line and thus removes important values passed by B. This variant instead appends given command line arguments to the automatic ones. Repeated use also causes appending rather than replacement. =item B<-g>, B<--graphical> By default, the option B<-nographic> is passed to B and one interacts with the serial console of the machine. This configuration is skipped in the presence of this option. Note that B defaults to installing a cloud kernel if available, so you may have to pass C<--include=linux-image-generic> during image construction to get graphics drivers. =item B<-i> F, B<--image>=F This option specifies the location of the virtual machine image file. By default F in the working directory is used. =item B<--netopt>=I