From 406dbf7565e702588f172a8cc534acacb2fd7bee Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sun, 26 Sep 2010 22:21:10 +0100 Subject: [PATCH] fish: Refresh guestfish documentation. --- fish/guestfish.pod | 73 +++++++++++++++++++++++++++++++++++------------------- 1 file changed, 48 insertions(+), 25 deletions(-) diff --git a/fish/guestfish.pod b/fish/guestfish.pod index 285d901..fc32d0a 100644 --- a/fish/guestfish.pod +++ b/fish/guestfish.pod @@ -27,6 +27,17 @@ dangerous, potentially causing disk corruption. Use the I<--ro> (read-only) option to use guestfish safely if the disk image or virtual machine might be live. +=head1 DESCRIPTION + +Guestfish is a shell and command-line tool for examining and modifying +virtual machine filesystems. It uses libguestfs and exposes all of +the functionality of the guestfs API, see L. + +Guestfish gives you structured access to the libguestfs API, from +shell scripts or the command line or interactively. If you want to +rescue a broken virtual machine image, you should look at the +L command. + =head1 EXAMPLES =head2 As an interactive shell @@ -40,11 +51,22 @@ virtual machine might be live. 'man' to read the manual 'quit' to quit the shell - > man + > add-ro disk.img + > run + > list-filesystems + /dev/sda1: ext4 + /dev/vg_guest/lv_root: ext4 + /dev/vg_guest/lv_swap: swap + > mount /dev/vg_guest/lv_root / + > cat /etc/fstab + # /etc/fstab + # Created by anaconda + [...] + > exit =head2 From shell scripts -Create a new C file in a guest: +Create a new C file in a guest or disk image: guestfish <<_EOF_ add disk.img @@ -53,13 +75,20 @@ Create a new C file in a guest: write /etc/motd "Welcome, new users" _EOF_ -List the LVM logical volumes in a guest: +List the LVM logical volumes in a disk image: guestfish -a disk.img --ro <<_EOF_ run lvs _EOF_ +List all the filesystems in a disk image: + + guestfish -a disk.img --ro <<_EOF_ + run + list-filesystems + _EOF_ + =head2 On one command line Update C in a guest: @@ -84,6 +113,10 @@ disks from a virtual machine: guestfish --ro -d libvirt-domain -i cat /etc/group +Another way to edit C interactively is: + + guestfish -a disk.img -i edit /boot/grub/grub.conf + =head2 As a script interpreter Create a 100MB disk containing an ext2-formatted partition: @@ -107,22 +140,11 @@ To list what is available do: =head2 Remote control - eval `guestfish --listen --ro` - guestfish --remote add disk.img + eval `guestfish --listen` + guestfish --remote add-ro disk.img guestfish --remote run guestfish --remote lvs -=head1 DESCRIPTION - -Guestfish is a shell and command-line tool for examining and modifying -virtual machine filesystems. It uses libguestfs and exposes all of -the functionality of the guestfs API, see L. - -Guestfish gives you structured access to the libguestfs API, from -shell scripts or the command line or interactively. If you want to -rescue a broken virtual machine image, you should look at the -L command. - =head1 OPTIONS =over 4 @@ -334,9 +356,10 @@ any other commands C is a synonym for C. You must C (or C) your guest before mounting or performing any other commands. -The only exception is that if the I<-m> or I<--mount> option was -given, the guest is automatically run for you (simply because -guestfish can't mount the disks you asked for without doing this). +The only exception is that if any of the I<-i>, I<-m>, I<--mount>, +I<-N> or I<--new> options were given then C is done +automatically, simply because guestfish can't perform the action you +asked for without doing this. =head1 QUOTING @@ -475,7 +498,7 @@ following will not do what you expect: rm-rf /home/* -Assuming you don't have a directory literally called C +Assuming you don't have a directory called literally C then the above command will return an error. To perform wildcard expansion, use the C command. @@ -492,7 +515,7 @@ the command many times), equivalent to: C only works on simple guest paths and not on device names. If you have several parameters, each containing a wildcard, then glob -will perform a cartesian product. +will perform a Cartesian product. =head1 COMMENTS @@ -584,8 +607,8 @@ device-mapper device called C. Finally you have to tell LVM to scan for volume groups on the newly created mapper device: - > vgscan - > vg-activate-all true + vgscan + vg-activate-all true The logical volume(s) can now be mounted in the usual way. @@ -593,8 +616,8 @@ Before closing a LUKS device you must unmount any logical volumes on it and deactivate the volume groups by calling C on each one. Then you can close the mapper device: - > vg-activate false /dev/VG - > luks-close /dev/mapper/luksdev + vg-activate false /dev/VG + luks-close /dev/mapper/luksdev =head1 WINDOWS PATHS -- 1.8.3.1