mirror of
https://github.com/libguestfs/libguestfs.git
synced 2026-03-22 07:03:38 +00:00
Improved error if virt-inspector cannot find OSes in image (RHBZ#591142).
This commit is contained in:
@@ -25,7 +25,7 @@ use warnings;
|
||||
# make a change which is not backwards compatible. It is not related
|
||||
# to the libguestfs version number.
|
||||
use vars qw($VERSION);
|
||||
$VERSION = '0.1';
|
||||
$VERSION = '0.2';
|
||||
|
||||
use Carp qw(croak);
|
||||
|
||||
@@ -1119,7 +1119,8 @@ like:
|
||||
'/dev/VG/Root' => \%os,
|
||||
}
|
||||
|
||||
(There can be multiple roots for a multi-boot VM).
|
||||
There can be multiple roots for a multi-boot VM, but this function
|
||||
will throw an error if no roots (ie. OSes) could be found.
|
||||
|
||||
The C<\%os> hash contains the following keys (any can be omitted):
|
||||
|
||||
@@ -1202,6 +1203,11 @@ sub inspect_operating_systems
|
||||
}
|
||||
}
|
||||
|
||||
# If we didn't find any operating systems then it's an error (RHBZ#591142).
|
||||
if (0 == keys %oses) {
|
||||
die __"No operating system could be detected inside this disk image.\n\nThis may be because the file is not a disk image, or is not a virtual machine\nimage, or because the OS type is not understood by virt-inspector.\n\nIf you feel this is an error, please file a bug report including as much\ninformation about the disk image as possible.\n";
|
||||
}
|
||||
|
||||
return \%oses;
|
||||
}
|
||||
|
||||
|
||||
@@ -150,7 +150,6 @@ my %fses =
|
||||
my $oses = inspect_operating_systems ($g, \%fses);
|
||||
|
||||
my @roots = keys %$oses;
|
||||
die __"no root device found in this operating system image" if @roots == 0;
|
||||
die __"multiboot operating systems are not supported by virt-cat" if @roots > 1;
|
||||
my $root_dev = $roots[0];
|
||||
|
||||
|
||||
@@ -133,7 +133,6 @@ my %fses =
|
||||
my $oses = inspect_operating_systems ($g, \%fses);
|
||||
|
||||
my @roots = keys %$oses;
|
||||
die __"no root device found in this operating system image" if @roots == 0;
|
||||
die __"multiboot operating systems are not supported by virt-edit" if @roots > 1;
|
||||
my $root_dev = $roots[0];
|
||||
|
||||
|
||||
@@ -183,7 +183,6 @@ my %fses =
|
||||
my $oses = inspect_operating_systems ($g, \%fses);
|
||||
|
||||
my @roots = keys %$oses;
|
||||
die __"no root device found in this operating system image\n" if @roots == 0;
|
||||
die __"multiboot operating systems are not supported by virt-ls\n" if @roots > 1;
|
||||
my $root_dev = $roots[0];
|
||||
|
||||
|
||||
@@ -227,7 +227,6 @@ my %fses =
|
||||
my $oses = inspect_operating_systems ($g, \%fses);
|
||||
|
||||
my @roots = keys %$oses;
|
||||
die __"no root device found in this operating system image\n" if @roots == 0;
|
||||
die __"multiboot operating systems are not supported by virt-tar\n" if @roots > 1;
|
||||
my $root_dev = $roots[0];
|
||||
|
||||
|
||||
@@ -280,7 +280,6 @@ my %fses =
|
||||
my $oses = inspect_operating_systems ($g, \%fses);
|
||||
|
||||
my @roots = keys %$oses;
|
||||
die __"no root device found in this operating system image" if @roots == 0;
|
||||
die __"multiboot operating systems are not supported by virt-win-reg" if @roots > 1;
|
||||
my $root_dev = $roots[0];
|
||||
|
||||
|
||||
Reference in New Issue
Block a user