#!/usr/bin/perl -w
# virt-rescue
-# Copyright (C) 2009 Red Hat Inc.
+# Copyright (C) 2009-2010 Red Hat Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
=cut
+my $format;
+
+=item B<--format> raw
+
+Specify the format of disk images given on the command line. If this
+is omitted then the format is autodetected from the content of the
+disk image.
+
+If disk images are requested from libvirt, then this program asks
+libvirt for this information. In this case, the value of the format
+parameter is ignored.
+
+If working with untrusted raw-format guest disk images, you should
+ensure the format is always specified.
+
+=cut
+
my $memsize;
=item B<--memsize MB> | B<-m MB>
=cut
+my $network;
+
+=item B<--network MB>
+
+Enable QEMU user networking in the guest.
+
+=cut
+
my $readonly;
=item B<--ro> | B<-r>
"version" => \$version,
"append=s" => \$append,
"connect|c=s" => \$uri,
+ "format=s" => \$format,
"memsize|m=i" => \$memsize,
+ "network" => \$network,
"ro|r" => \$readonly,
"selinux" => \$selinux,
) or pod2usage (2);
my @args = (\@ARGV);
push @args, address => $uri if $uri;
push @args, rw => 1 unless $readonly;
+push @args, format => $format if defined $format;
my $g = open_guest (@args);
# Setting "direct mode" is required for the rescue appliance.
# Set other features.
$g->set_selinux (1) if $selinux;
$g->set_memsize ($memsize) if defined $memsize;
+$g->set_network (1) if $network;
# Set the kernel command line, which must include guestfs_rescue=1
# (see appliance/init).
Several environment variables affect virt-rescue. See
L<guestfs(3)/ENVIRONMENT VARIABLES> for the complete list.
+=head1 SHELL QUOTING
+
+Libvirt guest names can contain arbitrary characters, some of which
+have meaning to the shell such as C<#> and space. You may need to
+quote or escape these characters on the command line. See the shell
+manual page L<sh(1)> for details.
+
=head1 SEE ALSO
L<guestfs(3)>,