From 4f1c59720e1df55d70063ae05977d337110da13a Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 21 Oct 2011 16:02:34 +0100 Subject: [PATCH] virt-make-fs: Set MBR partition type byte correctly (RHBZ#746295). (cherry picked from commit 0c06d740b77fb9225a0e2bd13dc88b0b88ee87cb) --- tools/virt-make-fs | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/tools/virt-make-fs b/tools/virt-make-fs index 1a19b98..28b4aba 100755 --- a/tools/virt-make-fs +++ b/tools/virt-make-fs @@ -423,6 +423,22 @@ eval { $partition = "mbr" if $partition eq ""; $g->part_disk ($dev, $partition); $dev = "/dev/sda1"; + + # Set the partition type byte if it's MBR and the filesystem + # type is one that we know about. + my $mbr_id; + if ($partition eq "mbr") { + if ($type =~ /^v?fat$/) { + $mbr_id = 0xb; + } elsif ($type eq "ntfs") { + $mbr_id = 0x7; + } elsif ($type =~ /^ext\d$/) { + $mbr_id = 0x83; + } elsif ($type eq "minix") { + $mbr_id = 0x81; + } + } + $g->part_set_mbr_id ("/dev/sda", 1, $mbr_id) if defined $mbr_id; } print STDERR "creating $type filesystem on $dev ...\n" if $debug; -- 1.8.3.1