This is the command nbdkit-guestfs-plugin that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator
PROGRAM:
NAME
nbdkit-guestfs-plugin - nbdkit libguestfs plugin
SYNOPSIS
nbdkit [-r] guestfs
[disk=DISK] [domain=DOMAIN] [format=FORMAT] [connect=URI]
[mount=inspect|MOUNT] [trace=1] [debug=1] export=DEVICE|FILE
WARNING
Using nbdkit-guestfs-plugin in read-write mode on live virtual machines can be dangerous,
potentially causing disk corruption. Use the -r (read-only) option to use this plugin
safely if the disk image or virtual machine might be live.
EXAMPLES
Export the first partition inside a disk image called "disk.img", and allow writes:
nbdkit guestfs disk=disk.img export=/dev/sda1
Export a disk image which is located inside a libvirt guest called "Guest", read-only (-r
option):
nbdkit -r guestfs domain=Guest mount=inspect export=/images/disk.img
DESCRIPTION
"nbdkit-guestfs-plugin" is an nbdkit(1) plugin that lets you access the contents of disk
images over NBD. There are many weird and wonderful uses for this, and this man page only
covers the simpler ones.
The parameters control:
· Which disk(s) are added to libguestfs. Specifically "disk=DISK" and "domain=DOMAIN"
add a single disk or all the disks from a particular libvirt guest.
· What, if any, filesystems inside the disk image / guest have to be mounted. Use
"mount=inspect" to do this automatically (like guestfish(1) -i option), else mount
individual filesystems.
· What device or file from inside the disk image or guest you want to export over NBD.
Use "export=DEVICE|FILE" to specify the thing that you want to export.
· Use the -r option to export read-only. The default is read-write.
PARAMETERS
connect=URI
This optional parameter specifies the libvirt connection URI. This is only used with
the "domain" parameter.
debug=1
Enable full debugging of libguestfs. Note you'll probably also have to use the
nbdkit(1) option -v in order to see the messages.
disk=DISK
Add the named disk image. You may specify this option multiple times.
domain=DOMAIN
Add the disk(s) from the libvirt guest called "DOMAIN".
export=DEVICE|FILE
Export "DEVICE" or "FILE" (from inside the disk image or guest) over NBD.
Device names are the usual libguestfs names like "/dev/sda1" (meaning the first
partition of the first disk), or "/dev/VG/LV" (a logical volume), or RAID arrays etc.
The device name should not be confused with host devices.
Filenames are similarly those located inside the guest or disk image, and always start
with a "/" character (even for Windows guests).
Exports are writable by default. Use the -r option to make them read-only. Exporting
read-write a live disk image or virtual machine will probably cause disk corruption.
format=FORMAT
This can be used to specify the format of the disk. Use it before the "disk=DISK"
argument. It works like the --format option of guestfish(1).
mount=inspect
Use guest inspection to mount disks. This is like "guestfish -i".
mount=dev
mount=dev:mountpoint
Mount "dev" from inside the guest on "mountpoint" (defaults to "/"). This is like
"guestfish -m".
trace=1
Enable tracing of libguestfs calls. Note you'll probably also have to use the
nbdkit(1) option -v in order to see the messages.
WORKED EXAMPLES
Exporting a partition or logical volume inside a disk image
disk.img is a host file that contains partitions or LVM logical volumes. Use the
"disk=disk.img" option to add the disk. Because you don't want to access filesystem
contents, "mount=..." is not needed.
nbdkit guestfs disk=disk.img export=/dev/sda1
nbdkit guestfs disk=disk.img export=/dev/VG/LV
Use virt-filesystems(1) to find out what devices, partitions, LVs, filesystems etc a disk
image contains.
Exporting a partition or logical volume inside guest
Guest is the name (in libvirt) of a guest. Since the guest might be live, we use the -r
option to open the guest read-only. Because you don't want to access filesystem contents,
"mount=..." is not needed.
nbdkit -r guestfs domain=Guest export=/dev/sda1
nbdkit -r guestfs domain=Guest export=/dev/VG/LV
Exporting a file inside a disk image
disk.img is a partitioned disk image with one filesystem that contains a file that we want
to export. Use the "disk=disk.img" option to add the disk, and "mount=/dev/sda1" to
specify the filesystem in the disk image. Use "export=/image" to specify the name of the
file in that filesystem that we want to export.
nbdkit guestfs disk=disk.img mount=/dev/sda1 export=/image
Exporting a file inside a virtual machine disk image
windows.img is the disk from a Windows virtual machine. Use the "disk=windows.img" option
to add the disk, and "mount=inspect" to auto-mount the filesystem(s) in the disk image.
Use "export=/Users/rich/AppData/image" to specify the name of the file from the guest that
we want to export.
nbdkit guestfs disk=windows.img mount=inspect
export=/Users/rich/AppData/image
DEBUGGING
To debug this plugin, use the following options:
nbdkit -f -v guestfs debug=1 trace=1 [...]
This enables libguestfs debugging and tracing (see guestfs-faq(1)). It also ensures that
the messages are displayed by nbdkit (because of -f and -v).
Use nbdkit-guestfs-plugin online using onworks.net services