X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=fish%2Fguestfish.pod;h=022e03e24d44abe5b2e67428c9a63bb5e7762366;hp=172729ad9a8fdbb784ea547e5da71c1b300185bd;hb=1e35941f62bddafd6b88270b22b3afe4a5d37baa;hpb=a3cce465570bf192e993a67feedfbab7e662c75a diff --git a/fish/guestfish.pod b/fish/guestfish.pod index 172729a..022e03e 100644 --- a/fish/guestfish.pod +++ b/fish/guestfish.pod @@ -199,6 +199,8 @@ Add disks from the named libvirt domain. If the I<--ro> option is also used, then any libvirt domain can be used. However in write mode, only libvirt domains which are shut down can be named here. +Domain UUIDs can be used instead of names. + Using this flag is mostly equivalent to using the C command, with C if the I<--ro> flag was given, and with C if the I<--format:...> flag was given. @@ -480,7 +482,7 @@ write. To open a disk image read-only you have to do I<-a image --ro>. This matters: If you accidentally open a live VM disk image writable then you will cause irreversible disk corruption. -By libguestfs 1.12 we intend to change the default the other way. +In a future libguestfs we intend to change the default the other way. Disk images will be opened read-only. You will have to either specify I, I, I, or change the configuration file C in order to get @@ -516,6 +518,64 @@ must be escaped with a backslash. command "/bin/echo 'foo bar'" command "/bin/echo \'foo\'" +=head2 ESCAPE SEQUENCES IN DOUBLE QUOTED ARGUMENTS + +In double-quoted arguments (only) use backslash to insert special +characters: + +=over 4 + +=item C<\a> + +Alert (bell) character. + +=item C<\b> + +Backspace character. + +=item C<\f> + +Form feed character. + +=item C<\n> + +Newline character. + +=item C<\r> + +Carriage return character. + +=item C<\t> + +Horizontal tab character. + +=item C<\v> + +Vertical tab character. + +=item C<\"> + +A literal double quote character. + +=item C<\ooo> + +A character with octal value I. There must be precisely 3 octal +digits (unlike C). + +=item C<\xhh> + +A character with hex value I. There must be precisely 2 hex +digits. + +In the current implementation C<\000> and C<\x00> cannot be used +in strings. + +=item C<\\> + +A literal backslash character. + +=back + =head1 OPTIONAL ARGUMENTS Some commands take optional arguments. These arguments appear in this @@ -913,6 +973,49 @@ user ID of the process, and C<$PID> is the process ID of the server. Guestfish client and server versions must match exactly. +=head2 USING REMOTE CONTROL ROBUSTLY FROM SHELL SCRIPTS + +From Bash, you can use the following code which creates a guestfish +instance, correctly quotes the command line, handles failure to start, +and cleans up guestfish when the script exits: + + #!/bin/bash - + + set -e + + guestfish[0]="guestfish" + guestfish[1]="--listen" + guestfish[2]="--ro" + guestfish[3]="-a" + guestfish[4]="disk.img" + + GUESTFISH_PID= + eval $("${guestfish[@]}") + if [ -z "$GUESTFISH_PID" ]; then + echo "error: guestfish didn't start up, see error messages above" + exit 1 + fi + + kill_guestfish () + { + kill $GUESTFISH_PID >/dev/null 2>&1 ||: + } + trap kill_guestfish EXIT + + guestfish --remote run + # etc. + +=head2 REMOTE CONTROL RUN COMMAND HANGING + +Using the C (or C) command remotely in a command +substitution context hangs, ie. don't do (note the backquotes): + + a=`guestfish --remote run` + +Since the C command produces no output on stdout, this is not +useful anyway. For further information see +L. + =head1 PREPARED DISK IMAGES Use the I<-N type> or I<--new type> parameter to select one of a set @@ -1007,7 +1110,7 @@ This exits guestfish. You can also use C<^D> key. @ACTIONS@ -=head1 EXIT CODE +=head1 EXIT STATUS guestfish returns 0 if the commands completed without error, or 1 if there was an error. @@ -1021,6 +1124,21 @@ guestfish returns 0 if the commands completed without error, or The C command uses C<$EDITOR> as the editor. If not set, it uses C. +=item FEBOOTSTRAP_KERNEL + +=item FEBOOTSTRAP_MODULES + +These two environment variables allow the kernel that libguestfs uses +in the appliance to be selected. If C<$FEBOOTSTRAP_KERNEL> is not +set, then the most recent host kernel is chosen. For more information +about kernel selection, see L. This +feature is only available in febootstrap E 3.8. + +=item GUESTFISH_DISPLAY_IMAGE + +The C command uses C<$GUESTFISH_DISPLAY_IMAGE> to +display images. If not set, it uses L. + =item GUESTFISH_PID Used with the I<--remote> option to specify the remote guestfish @@ -1139,9 +1257,9 @@ to make guestfish case sensitive. =item test2.img (etc) -When using the C<-N> or C<--new> option, the prepared disk or +When using the I<-N> or I<--new> option, the prepared disk or filesystem will be created in the file C in the current -directory. The second use of C<-N> will use C and so on. +directory. The second use of I<-N> will use C and so on. Any existing file with the same name will be overwritten. =back @@ -1150,6 +1268,7 @@ Any existing file with the same name will be overwritten. L, L, +L, L, L, L, @@ -1163,11 +1282,15 @@ L, L, L, L, +L, +L, L, L, L, L, -L. +L, +L, +L. =head1 AUTHORS