virt-builder(1) Virtualization Support virt-builder(1) (NAME) virt-builder - (SYNOPSIS) virt-builder os-version [-o|--output DISKIMAGE] [--size SIZE] [--format raw|qcow2] [--arch ARCHITECTURE] [--attach ISOFILE] [--append-line FILE:LINE] [--chmod PERMISSIONS:FILE] [--chown UID:GID:PATH] [--commands-from-file FILENAME] [--copy SOURCE:DEST] [--copy-in LOCALPATH:REMOTEDIR] [--delete PATH] [--edit FILE:EXPR] [--firstboot SCRIPT] [--firstboot-command 'CMD+ARGS'] [--firstboot-install PKG,PKG..] [--hostname HOSTNAME] [--inject-blnsvr METHOD] [--inject-qemu-ga METHOD] [--inject-virtio-win METHOD] [--install PKG,PKG..] [--link TARGET:LINK[:LINK..]] [--mkdir DIR] [--move SOURCE:DEST] [--password USER:SELECTOR] [--root-password SELECTOR] [--run SCRIPT] [--run-command 'CMD+ARGS'] [--scrub FILE] [--ssh-inject USER[:SELECTOR]] [--tar-in TARFILE:REMOTEDIR] [--timezone TIMEZONE] [--touch FILE] [--truncate FILE] [--truncate-recursive PATH] [--uninstall PKG,PKG..] [--update] [--upload FILE:DEST] [--write FILE:CONTENT] [--no-logfile] [--password-crypto md5|sha256|sha512] [--no-selinux-relabel] [--selinux-relabel] virt-builder -l|--list [--long] [--list-format short|long|json] [os-version] virt-builder --notes os-version virt-builder --print-cache virt-builder --cache-all-templates virt-builder --delete-cache virt-builder --get-kernel DISKIMAGE [--format raw|qcow2] [--output OUTPUTDIR] (DESCRIPTION) virt-builder . . virt-builder . (root) . virt-builder (scratch) . . virt-install(1) oz-install(1) . ..SH " (EXAMPLES)" virt-builder --list . . ( ). : virt-builder --notes fedora-41 virt-builder fedora-41 Fedora 41 virt-builder ( i686 i686 ). ( ). (root) . ( "CACHING" ). fedora-41.img . -o : virt-builder fedora-41 -o mydisk.img -o (logical volumes) . virt-builder fedora-41 --format qcow2 qcow2 fedora-41.qcow2 . virt-builder fedora-41 --size 20G . ( virt-resize(1)) . virt-builder fedora-41 --arch i686 i686 . (root) virt-builder fedora-41 --root-password file:/tmp/rootpw Fedora 41 . /tmp/rootpw . --root-password (stdout) . . "USERS AND PASSWORDS" . (hostname) virt-builder fedora-41 --hostname virt.example.com "virt.example.com" . ( ) ( dnf apt): virt-builder fedora-41 --install "inkscape,@Xfce Desktop" ( Fedora "@" . Debian - (meta-package) .) : virt-builder debian-7 --update . : --run/--run-command . --firstboot/--firstboot-command / . --edit --upload . : cat <<'EOF' > /tmp/dnf-update.sh dnf -y --best update EOF virt-builder fedora-41 --firstboot /tmp/dnf-update.sh : virt-builder fedora-41 --firstboot-command 'dnf -y --best update' "update" dnf(8) . : virt-builder fedora-41 \ --edit '/etc/dnf/dnf.conf: s/gpgcheck=1/gpgcheck=0/' /etc/dnf/dnf.conf ( ) . ..SH " (OPTIONS)" --help . --arch ARCHITECTURE . . "ARCHITECTURE" . --attach ISOFILE libguestfs . . () ( ISO ) run-script (mount) : mkdir /tmp/mount mount LABEL=EXTRA /tmp/mount --attach ( ISO). : --run "Installing packages at build time from a side repository" genisoimage(1) virt-make-fs(1). --attach-format FORMAT --attach . "FORMAT" "raw" "qcow2" . ISO "raw" . --cache DIR --no-cache --cache DIR / . $XDG_CACHE_HOME/virt-builder/ $HOME/.cache/virt-builder/ . --no-cache . --cache-all-templates . "CACHING" . . . ( --install --update). --check-signature --no-check-signature / . . --no-check-signature . --fingerprint . --colors --colours ANSI . tty . ANSI . --curl CURL curl(1). curl https: virt-builder --curl "curl --insecure" [...] --delete-cache . "CACHING" . --no-delete-on-failure . . "DEBUGGING BUILDS" . virt-builder ( ) . --fingerprint 'AAAA BBBB ...' (index) (fingerprint) . ( ). . (source URL) . (1-1) . --format qcow2 --format raw . raw . --get-kernel . qcow2 ( RHEL 6 qemu < 1.1) virt-builder : qemu-img amend -f qcow2 -o compat=0.10 output.qcow2 --get-kernel IMAGE (kernel) initramfs "IMAGE" ( virt-builder ). : virt-get-kernel(1) . initramfs --output "outputdir" . --format . . guestfish(1) . /boot virt-copy-out(1) . --gpg GPG gpg(1) (GNU Privacy Guard). virt-builder "gpg2" "gpg" $PATH . gpg : virt-builder --gpg "gpg --homedir /tmp" [...] -l [os-version] --list [os-version] --list --list-format format [os-version] --list --long [os-version] . --list-format : short . long . json JSON . "version" " " JSON ( ) . --long "long" . : --source --notes "SOURCES OF TEMPLATES". --machine-readable --machine-readable=format . "MACHINE READABLE OUTPUT" ..IP "-m MB" 4 --memsize MB --run . --run --install . : guestfish get-memsize --network --no-network . . --no-network . . <> virt-rescue(1) . --no-network --install . ( ) virt-builder . --no-network . : 1. libguestfs (backend) . (: <> guestfs(3)). 2. ISO . 3. virt-builder . . ( <> ). 4. ( /). --no-sync (sync) . Virt-builder "fsync" . (caching) qemu/KVM "none" "directsync" (page cache) ( ). virt-builder - . ( - .) --no-sync . --notes os-version ( ). -o filename --output filename filename . "os-version" ".img" ( raw) ".qcow2" ( qcow2) . (device) (logical volume) . --get-kernel . --print-cache (template cache) . <> . -q --quiet . --size SIZE "32G" ( ) . Virt-builder . : . . b : "--size 10737418240b". --smp N N >= (vCPU) --run . --source URL (URL) . . <> . --source ( ). --no-network . --no-warn-if-partition . USB (--output /dev/sdX) (--output /dev/sdX1). . -v --verbose / . . -V --version . --wrap (wrap). tty . . -x API libguestfs ..SS " " --append-line FILE:LINE "FILE". (newline) . "LINE" . ( ) : --append-line '/etc/hosts:10.0.0.1 foo' "10.0.0.1 foo" "10.0.0.1 foo" . "" Unix Windows . . : --append-line '/etc/hosts:10.0.0.1 foo' --append-line '/etc/hosts:10.0.0.2 bar' : --append-line '/etc/hosts:' --append-line '/etc/hosts:10.0.0.1 foo' --chmod PERMISSIONS:FILE "FILE" "PERMISSIONS". : "PERMISSIONS" 0 0700 700. --chown UID:GID:PATH (UID) (GID) . : o UID GID . o Windows . : virt-customize --chown '0:0:/var/log/audit.log' : --upload. --commands-from-file FILENAME ( ). : delete /some/file install some-package password some-user:password:its-new-password "#" . "\" ( ) : edit /some/file:\ s/^OPT=.*/OPT=ok/ --delete /some/file . --copy SOURCE:DEST . (Wildcard) . --copy-in LOCALPATH:REMOTEDIR "REMOTEDIR" ( ). (Wildcard) . --delete PATH ( ). (glob) . (escape) . : virt-customize --delete '/var/log/*.log'. : --upload --scrub. --edit FILE:EXPR "FILE" "EXPR". . Perl 5 . <> virt-edit(1) . --firstboot SCRIPT "SCRIPT" ( root ). chmod +x . --firstboot-command . --firstboot . . : <> virt-customize(1) --run. --firstboot-command 'CMD+ARGS' ( ) ( root ). --firstboot . . : <> virt-customize(1) --run. --firstboot-install PKG,PKG.. ( ). ( apt yum ) . <> . --hostname HOSTNAME (hostname) "HOSTNAME". hostname.domainname ( FQDN) . --inject-blnsvr METHOD (blnsvr.exe) Windows. firstboot . --inject-virtio-win . Windows VMware ( ) virt-v2v(1) . --inject-qemu-ga METHOD QEMU Guest Agent Windows. qemu ( qemu-ga(8)). firstboot Guest Agent . --inject-virtio-win . Windows VMware ( ) virt-v2v(1) . --inject-virtio-win METHOD virtio-win Windows. virtio virtio ( qemu/KVM) . . : ISO ISO virtio-win ( /usr/share/virtio-win/virtio-win.iso). DIR virtio-win ( /usr/share/virtio-win). Windows VMware ( ) virt-v2v(1) . ( ) . ( apt yum ) . "INSTALLING PACKAGES" . --update --uninstall . --link TARGET:LINK[:LINK..] () "LINK" "TARGET" . --mkdir DIR . "mkdir -p" . --move SOURCE:DEST . (Wildcards) . --no-logfile "builder.log" ( ) . . : "LOG FILE". --no-selinux-relabel SELinux . SELinux SELinux . ( /.autorelabel touch .) . SELinux (no-op). --password USER:SELECTOR "USER". ( ). "SELECTOR" "USERS AND PASSWORDS" . --password-crypto md5|sha256|sha512 virt "md5" "sha256" "sha512" . "sha256" "sha512" glibc >= 2.7 ( crypt(3) ). "md5" ( RHEL 3) . "sha512" libguestfs SHA-512 "md5" . libguestfs . . --edit "/etc/sysconfig/authconfig" ( Fedora RHEL) "/etc/pam.d/common-password" ( Debian Ubuntu) . --root-password SELECTOR (root). "SELECTOR" "USERS AND PASSWORDS" . : virt-builder --root-password . --run SCRIPT ( ) "SCRIPT" . (appliance) chroot . chmod +x . libguestfs . ( ISO) ( ) (--attach). (--upload). --run . . : --firstboot --attach --upload. --run-command 'CMD+ARGS' . (appliance) chroot . libguestfs . ( ISO) ( ) (--attach). (--upload). --run-command . . : --firstboot --attach --upload. --scrub FILE () . --delete : o . o . --selinux-relabel . --ssh-inject USER[:SELECTOR] ssh "USER" ssh . "USER" . "SELECTOR" "SSH KEYS" . --ssh-inject . --tar-in TARFILE:REMOTEDIR tar "TARFILE" "REMOTEDIR" ( ). tar ( .tar.gz ). --timezone TIMEZONE "TIMEZONE". "Europe/London" . --touch FILE touch(1) "FILE" . --truncate FILE "FILE" (truncate) . . --truncate-recursive PATH "PATH" . --uninstall PKG,PKG.. ( ). ( apt yum ) . . --install --update . --update "yum update" "apt-get upgrade" . --install --uninstall . --upload FILE:DEST "FILE" "DEST" . . "DEST" . . "DEST" ( ) . : --mkdir --delete --scrub. --write FILE:CONTENT "CONTENT" "FILE"..SH " (REFERENCE)" (INSTALLING PACKAGES) . ( ) libguestfs --install : virt-builder fedora-41 --install inkscape . (template) : virt-builder fedora-41 --update virt-builder ( "JEOS" "Just Enough Operating System") . . : virt-builder fedora-41 --firstboot-install inkscape . ( ). . ISO ( CD) . genisoimage(1) virt-make-fs(1) . genisoimage : genisoimage -o extra-packages.iso -R -J -V EXTRA cdcontents/ ISO (mount) . dnf /tmp/install.sh : mkdir /tmp/mount mount LABEL=EXTRA /tmp/mount cat <<'EOF' > /etc/yum.repos.d/extra.repo [extra] name=extra baseurl=file:///tmp/mount enabled=1 EOF dnf -y install famousdatabase apt /tmp/install.sh : mkdir /tmp/mount mount LABEL=EXTRA /tmp/mount apt-cdrom -d=/tmp/mount add apt-get -y install famousdatabase --attach CD / --run : virt-builder fedora-41 \ --attach extra-packages.iso \ --run /tmp/install.sh (USERS AND PASSWORDS) --root-password root ( ). "SELECTOR" : --root-password file:FILENAME root "FILENAME" . . . 0600 . --root-password password:PASSWORD root "PASSWORD" . : ps(1) . --root-password random stdout . . . --root-password disabled root . "*" . --root-password locked:file:FILENAME --root-password locked:password:PASSWORD --root-password locked:random root . ( "passwd -u") . --root-password locked --root-password locked:disabled root . useradd(8) --firstboot-command : virt-builder --firstboot-command \ 'useradd -m -p "" rjones ; chage -d 0 rjones' "rjones" . useradd(8) ..SS " (KEYBOARD LAYOUT)" virt-builder . . systemd "localectl" systemd : virt-builder fedora-41 \ --firstboot-command 'localectl set-keymap uk' localectl(1) https://www.happyassassin.net/2013/11/23/keyboard-layouts-in-fedora-20-and-previously . /etc/sysconfig/keyboard RHEL <= 6 Fedora <= 18 --upload --write --edit . : virt-builder centos-6 \ --edit '/etc/sysconfig/keyboard: s/^KEYTABLE=.*/KEYTABLE="uk"/' . Debian Debian /etc/default/keyboard --upload --write --edit . : virt-builder debian-8 \ --edit '/etc/default/keyboard: s/^XKBLAYOUT=.*/XKBLAYOUT="gb"/' https://wiki.debian.org/Keyboard . (LANGUAGE) (locale) . X . virt-builder . . Fedora 41 virt-builder fedora-41 \ --size 20G \ --update \ --install @japanese-support \ --install @xfce \ --install xorg-x11-server-Xorg,xorg-x11-drivers,rsyslog \ --link /usr/lib/systemd/system/graphical.target:/etc/systemd/system/default.target \ --firstboot-command 'localectl set-locale LANG=ja_JP.utf8' \ --firstboot-command 'localectl set-keymap jp' \ --firstboot-command 'systemctl isolate graphical.target' Debian 8 (Jessie) . X . pkgs=locales,xfce4,\ ibus,ibus-anthy,\ fonts-ipafont-gothic,fonts-ipafont-mincho,\ fonts-takao-mincho,\ xfonts-intl-japanese,xfonts-intl-japanese-big,\ iceweasel-l10n-ja,manpages-ja virt-builder debian-8 \ --size 20G \ --install $pkgs \ --edit '/etc/locale.gen: s,^#\s*ja,ja,' \ --write '/etc/default/locale:LANG="ja_JP.UTF-8"' \ --run-command "locale-gen" (LOG FILE) (--run --run-command --install --update firstboot) : /tmp/builder.log BSD . C:\Temp\builder.log Windows DOS. /builder.log /tmp C:\Temp . --no-logfile . SSH (SSH KEYS) --ssh-inject ssh . "SELECTOR" --ssh-inject "USER" ~/.ssh . . << >> default_ID_file ssh-copy-id(1) . "SELECTOR" : --ssh-inject USER:file:FILENAME ssh FILENAME . FILENAME .pub . --ssh-inject USER:string:KEY_STRING "KEY_STRING" . "KEY_STRING" ssh-rsa AAAA.... user@localhost . ~USER/.ssh ~USER/.ssh/authorized_keys ..SS " (INSTALLATION PROCESS)" virt-builder : o . () . ( << (CACHING)>> ). o . o tmp . o virt-resize(1) . o (--attach). o (random seed) . o . o SELinux --no-selinux-relabel . (IMPORTING THE DISK IMAGE) libvirt --import virt-install(1) libvirt . virt-install --import \ --name guest --ram 2048 \ --disk path=disk.img,format=raw --os-variant fedora27 : 1. . "raw" --format virt-builder . 2. --os-variant . : osinfo-query os libosinfo . 3. virt-install (root) . libvirt . virt-manager Boxes . OpenStack Glance ( OpenStack) : glance image-create --name fedora-41-image --file fedora-41.img \ --disk-format raw --container-format bare \ --is-public True --file virt-builder . --output virt-builder . --disk-format --format virt-builder ( "raw") . --container-format "bare" virt-builder . "glance image-show fedora-41-image" . (instance) Nova : nova boot fedora-41-server --image fedora-41-image \ --flavor m1.medium "nova flavor-list" (machine flavors) . "nova list" . qemu KVM qemu libvirt . : qemu-system-x86_64 \ -machine accel=kvm:tcg \ -cpu max \ -m 2048 \ -drive file=disk.img,format=raw,if=virtio libvirt . "raw" --format . (CONFIGURATION MANAGEMENT) Puppet Puppet (Puppet agent) Puppetmaster (boot) . virt-builder : virt-builder fedora-41 \ --hostname client.example.com \ --update \ --install puppet \ --append-line '/etc/puppet/puppet.conf:[agent]' \ --append-line '/etc/puppet/puppet.conf:server = puppetmaster.example.com/' \ --run-command 'systemctl enable puppet' . : https://docs.puppet.com/puppet/latest/install_pre.html.SS " (DEBUGGING BUILDS)" virt-builder (-v) ( << (BUGS)>> ). virt-builder --no-delete-on-failure . virt-builder : virt-rescue virt-rescue(1) : virt-rescue -a disk.img (rescue shell) . /sysroot (mount) . chroot . virt-rescue . guestfish guestfish(1) : guestfish -a disk.img -i guestfish "ll /directory" "cat /file" . guestmount FUSE guestmount(1) : mkdir /tmp/mp guestmount -a disk.img -i /tmp/mp cd /tmp/mp (unmount) : fusermount -u /tmp/mp . (hypervisor) . : console=tty0 console=ttyS0,115200 (SOURCES OF TEMPLATES) virt-builder .conf : o $XDG_CONFIG_HOME/virt-builder/repos.d/ ( $XDG_CONFIG_HOME $HOME/.config ). o $VIRT_BUILDER_DIRS/virt-builder/repos.d/ ( $VIRT_BUILDER_DIRS /etc). .conf : [libguestfs.org] uri=http://libguestfs.org/download/builder/index.asc gpgkey=file:///etc/xdg/virt-builder/repos.d/libguestfs.gpg . : "uri=URI" URI . . "gpgkey=URI" URI ( URI file:// ). uri=.. . "proxy=MODE" . : no, off . system . anything else . ( system ). "format=FORMAT" . : native "virt-builder". << >> . simplestreams URI Simple Streams v1.0 . Simple Streams . "native" . virt-builder . Libguestfs.org virt-builder http://libguestfs.org/download/builder/index.asc . "virt-builder --list" . libguestfs.org kickstart preseed libguestfs "builder/templates" . .conf virt-builder . gpgkey=.. .conf GPG . virt-builder --source https://example.com/builder/index.asc \ --fingerprint 'AAAA BBBB ...' \ --list FTP . GPG GnuPG . ( virt-builder --no-check-signature .) GPG . GPG (export) : gpg --export -a "you@example.com" > pubkey . ( virt-sysprep(1) ) (virt-install(1)). virt-builder "builder/templates" ..PP Virt-builder ( raw qcow2 ) (as-is) XZ . ( virt-sysprep(1)) . xz ( nbdkit-xz-plugin(1) ): xz --best --block-size=16777216 disk (index) ( ): [fedora-41] name=Fedora(R) 41 osinfo=fedora41 arch=x86_64 file=fedora-41.xz checksum[sha512]=... format=raw size=6442450944 compressed_size=148947524 expand=/dev/sda3 [fedora-42] name=Fedora(R) 42 osinfo=fedora42 arch=x86_64 file=fedora-42.xz checksum[sha512]=... revision=3 format=raw size=4294967296 compressed_size=172190964 expand=/dev/sda3 "os-version" virt-builder . (newline) . . ( ) . virt-builder-repository(1) . "index" clearsign : gpg --clearsign --armor index index.asc ( uri=.. ). . : "name=NAME" . --list . "osinfo=ID" (ID) libosinfo . Virt-builder () . "arch=ARCH" . . "file=PATH" ( ) xz. URI . virt-builder << >> (same origin) . "sig=PATH" . checksum . ( ) (detached signature) GPG xz. URI . virt-builder << >> (same origin) . : gpg --detach-sign --armor -o disk.xz.sig disk.xz "checksum[sha512]=7b882fe9b82eb0fef..." (checksum) SHA-512 file=.. . : sha512sum disk.xz "sig" . "sig" . "checksum=7b882fe9b82eb0fef..." "checksum" "checksum[sha512]" . virt-builder = 1.24.0 "checksum" (parse error) . virt-builder >= 1.24.1 . "revision=N" (revision) (cache) . . . 1 . "format=raw" "format=qcow2" . . --format ( ) . Virt-builder (on-the-fly) . "size=NNN" . . raw qcow2 qcow2. . Virt-builder --size --size . "compressed_size=NNN" file=.. . ( "long" "json" --list). "expand=/dev/sdaX" virt-resize(1) . --expand virt-resize . . . virt-resize . "lvexpand=/dev/VolGroup/LogVol" virt-resize(1) (LV) . --lv-expand virt-resize . LVM2 LV . LVM2 LV . "notes=NOTES" . --notes --list --long . ( ) : notes=This image was prepared using the following kickstart script: <-- one space at beginning of line part /boot --fstype ext3 ... "hidden=true" hidden --list ( ). . "aliases=ALIAS1 ALIAS2 ..." . ( "revision" )..PP virt-builder virt-builder . .conf (index) . --source / --fingerprint : virt-builder \ --source http://example.com/s1/index.asc \ --source http://example.com/s2/index.asc N (fingerprint) . N N = (1-1) : virt-builder \ --source http://example.com/s1/index.asc --fingerprint '0123 ...' \ --source http://example.com/s2/index.asc --fingerprint '9876 ...' . "" . (licensing) . "notes" ( ). flex bison . libguestfs : builder/index-scan.l builder/index-parse.y virt-index-validate(1) . ( index index.asc) . UTF-8 . (CACHING) () . $XDG_CACHE_HOME/virt-builder/ $HOME/.cache/virt-builder . : virt-builder --print-cache : virt-builder --delete-cache () : virt-builder --cache-all-templates --no-cache . . (detached signatures) . Virt-builder curl(1) (--install --update) "http_proxy" ( ) . . " (ENVIRONMENT VARIABLES)" curl(1) . (mirror) . Fedora Fedora : virt-builder fedora-41 \ --edit '/etc/yum.repos.d/fedora.repo: s{.*baseurl=.*}{baseurl=http://example.com/mirror/}; s{.*metalink=.*}{}; ' \ --edit '/etc/yum.repos.d/fedora-updates.repo: s{.*baseurl=.*}{baseurl=http://example.com/mirror-updates/}; s{.*metalink=.*}{}; ' \ --run-command 'dnf -y update' \ --install 'pkg1,pkg2,...' Debian "apt-proxy" sources.list (: https://help.ubuntu.com/community/AptProxy) : virt-builder debian-8 \ --upload sources.list:/etc/apt/sources.list \ --run-command 'apt-get -y update' \ --install 'pkg1,pkg2,...' Virt-builder GNU Privacy Guard ( GnuPG gpg) (index) (templates) . . Virt-builder (fingerprint) ( gpgkey=.. .conf --fingerprint ). / (keyring) gpg (import) ( gpg ). . virt-builder --no-check-signature . virt-builder . . (ARCHITECTURE) Virt-builder x86-64 ARM. : --install --update --run --run-command. (firstboot) . i686 x86-64 . (SECURITY) Virt-builder ( ) setuid "sudo" . --install --update --run --run-command (appliance) . libvirt libguestfs SELinux SELinux ( sVirt) . . --no-network . firstboot / . Virt-builder (random seed) . TCP UUID ssh . . (CLONES) virt-builder . . virt-builder . () (random seed) virt-builder ( UUID ) . . (machine ID) SSH . : virt-sysprep(1). (PERFORMANCE) (caching) . --cache-all-templates . "CACHING" . --install --update . "http_proxy" "https_proxy" "ftp_proxy" . . --no-sync --no-sync . " (OPTIONS)" . virt-resize Virt-builder virt-resize . virt-builder . : o ( ) o --size o ( raw) . pxzcat liblzma Virt-builder pxzcat ( xzcat) . liblzma "xzcat" . SELINUX SELinux ( Fedora Red Hat Enterprise Linux) (label) SELinux . Virt-builder : setfiles(8) SELinux . . --no-selinux-relabel --touch /.autorelabel /.autorelabel (touch). SELinux restorecon(8) . ..SS " (DEPRECATED OPTIONS)" 1.56 subscription-manager . --sm-credentials --sm-register --run='subscription-manager register --username=USER --password=PASS' --sm-unregister --run='subscription-manager unregister' --sm-attach --run='subscription-manager attach ...' --sm-remove --run='subscription-manager remove --all' (MACHINE READABLE OUTPUT) --machine-readable virt-builder (GUI) . virt-builder . : $ virt-builder --machine-readable virt-builder arch config-file customize json-list pxzcat 0 . "ADVANCED MACHINE READABLE OUTPUT" guestfs(3) . (ENVIRONMENT VARIABLES) libguestfs "ENVIRONMENT VARIABLES" guestfs(3) . "http_proxy" "https_proxy" "no_proxy" . ( ) curl(1) virt-builder. "HOME" . "CACHING" "SOURCES OF TEMPLATES" . "VIRT_TOOLS_DATA_DIR" (firstboot) . . ( /usr/share/virt-tools). : rhsrvany.exe RHSrvAny "firstboot" . --firstboot --firstboot-command . : "https://github.com/rwmjones/rhsrvany" pvvxsvc.exe SUSE VMDP "firstboot" . --firstboot --firstboot-command . "XDG_CACHE_HOME" . "CACHING" . "XDG_CONFIG_HOME" . "SOURCES OF TEMPLATES" . "VIRT_BUILDER_DIRS" . "SOURCES OF TEMPLATES" . (EXIT STATUS) 0 . (SEE ALSO) guestfs(3), guestfish(1), guestmount(1), virt-builder-repository(1), virt-copy-out(1), virt-customize(1), virt-get-kernel(1), virt-install(1), virt-rescue(1), virt-resize(1), virt-sysprep(1), oz-install(1), gpg(1), gpg2(1), curl(1), virt-make-fs(1), genisoimage(1), http://libguestfs.org..SH " (AUTHORS)" Richard W.M. Jones http://people.redhat.com/~rjones (COPYRIGHT) 2013 Red Hat Inc. (LICENSE) << >> (GNU General Public License) (Free Software Foundation) / ( ) . << >> << >> << >>. << >> . << >> Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA . (BUGS) libguestfs : https://bugzilla.redhat.com/buglist.cgi?component=libguestfs&product=Virtualization+Tools libguestfs : https://bugzilla.redhat.com/enter_bug.cgi?component=libguestfs&product=Virtualization+Tools : o libguestfs. o libguestfs ( : ). o . o libguestfs-test-tool(1) . guestfs-tools-1.56.0 2026-07-11 virt-builder(1)