Bug 8378

Summary: Disk Druid fails during installation.
Product: [Retired] Red Hat Linux Reporter: Eric Karlson <ekarlson>
Component: installerAssignee: Michael Fulbright <msf>
Status: CLOSED WORKSFORME QA Contact:
Severity: high Docs Contact:
Priority: medium    
Version: 6.1CC: amgrady, toll
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2000-04-26 12:08:04 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Eric Karlson 2000-01-11 17:00:29 UTC
DiskDruid fails during installation causing the installation GUI to exit
and the machine to reboot.

Here is how to reproduce the problem:
Using a third-party tool, setup the following partitions on the hard drive:
1) Primary Partition (format is irrelevant)
2) Primary Partition (format is irrelevant)
3) Free space (i.e. no partition, at least 2GB in size)
4) Extended Partition (spans the remainder of the disk, leave at least 2GB
of unallocated space inside this partition).

Now run the RedHat GUI Installation.  When you get to the Disk Druid, try
to create the following three partitions:
1) Swap Partition - 192 MB in size
2) \boot Partition - 16MB in size
3) \ Partition - 1024MB in size

Now click on the "Next" button.  The GUI installation will exit and the
machine will be rebooted.  No partitions are created and the installation
has been aborted.

With a little experimenting, I found that if you change the size of the
Free Space the lies after the Primary partition and before the Extended
partition so that only one of the Linux partitions can fit into it (for
example, change the surrounding partitions so that the Free Space is about
30MB in size), the Disk Druid tool works and the installation continues.

From this, it appears that the Disk Druid is trying to create all three of
the Linux partitions as Primary partitions in that free space before the
Extended partition, which can't be done on an i386 archtitecture.  On an
i386 platform, you can have at most 4 partitions.  No more than one of
those 4 can be an extended partition (which can then be chopped up
into "partitions" internally - but these "partitions" are not really the
same as the four "real" partitions that are stored in the MBR of the disk).

Also, as a product improvement suggestion - the Disk Druid should really
show you a map of the drive (both parititions and free space) and allow
you to select where to place the partitions that it is creating.  It's
mildy irritating that it doesn't even allow one that level of control.

Comment 1 Eric Karlson 2000-01-12 17:20:59 UTC
A little bit of follow up.

The method that I proposed above for getting past the Disk Druid problem was
incorrect.  I'm not sure at this point how I got past the Disk Druid the first
time.  However, on my second attempt here is what happened and how I finally
(after a few false starts) got past that buggy Disk Druid:

1) Used 'Expert' mode for installation and then used fdisk to create the
partitions.
2) At the Disk Druid, I simply set the mount points for the partitions that I
had created with fdisk.
3) The installation process bombed again.
4) I booted under Win98 and tried to use Partition Magic (version 4.0) to fix
up my partitions.  PM4 wouldn't run.  It died with an 'Init Failed' message.
5) I tried to use the Win98 fdisk program.  It hung.
6) I booted into NT and used the NT Disk Administrator.  This tool worked and I
was able to remove the bogus Linux partitions.
7) I booted back into Win98 and used PM4.  It would now run.  I eliminated the
free space between the second primary partition and the extended partition and
then setup three Linux partitions (16MB, 2048MB and a 133MB swap).
8) I booted the Linux install disk and used the standard GUI install.  At the
Disk Druid, I simply set the mount points for the three partitions that I had
created with PM4.  Disk Druid accepted the partitions and the installation
process continued to completion.

A few basic observations:
1) PM4 wouldn't let me create a Linux Swap partition that was greater than
133MB.  I suspect this is because there is some sort of maximum size issue fo
the swap partitions.  Disk Druid let me create a swap partition as large as I
would like.  This may have been one of the issues that caused the installation
to bomb.

2) After creating partitions with the Linux fdisk, almost all my other
partitioning tools failed (including PM4).  The only one that worked was the NT
Disk Administator, and I know that the NT tool will ignore certain types of
errors in the partition table that PM4 will notice (unfortunately, when PM4
sees a problem in the partition table, it refuses to run - not neccessarily the
design choice that I would have choosen).  It appears that your Disk Druid
didn't update the partition tables correctly and the only way that I was able
to undo the damage was to use a tool that ignored your mistakes.

A final observation:
I am a professional developer.  I architected, built, configured and programmed
the computer system that runs my company's business.  I've built and configured
DOS, Win 3.1, Win95, Win98, WinNT, OS/2 and BSDi machines.  It took me over 3
hours to get your Linux installer to work, and nearly lost the contents of my
hard drive in the process.  There is no way in hell that a normal user is ever
going to make it through your installer.  As a stock holder in RedHat, I am a
little concerned.  If you really want to get your product into the main stream,
you have got to get the basics down.  It's absurd that your disk partitioning
software doesn't work.  If you can't even get that right, how much confidence
can I have that anything else is going to work correctly?

Comment 2 Michael Fulbright 2000-02-04 16:40:59 UTC
A little more info would be helpful to diagnosing this problem.

1) What is the geometry of the drive? Linux fdisk will tell you this when
you run it on the drive.

2) Are the instructions you gave in your first bug report still correct as
to how to reproduce the bug?

Comment 3 toll 2000-03-04 18:02:59 UTC
I, too experienced the same problem (DiskDruid fails during installation
causing the installation GUI to exit and the machine to reboot.)  I have 2 IDE
drives and run DOS, Windows '98, and NT 4 on the PC.  I use System Commander to
switch between operating systems and use Partition Magic v5 to partition the
drives.  Through the use of Partition Magic, I created and maintained
unallocated space between partitions to allow quick expansion of a partition
without having to move all the others.

The primary drive is a 17.2GB Western Digital WD172AA and the secondary is ia
6.4GB Western Digital AC26400B.  The 17.2GB drive uses LBA and Partition Magic
shows the CHS values to be 2228, 240 and 63.  The 6.4GB drive uses LBA and
Partition Magic shows the CHS values to be 833, 240 and 63.

The primary drive has 3 primary partitions and an extended partition.  The
secondary drive is one big extended paritition.  The primary was partitioned as
follows:

509MB     Primary partition (FAT)
103.4MB   unallocated
509MB     Primary partition (FAT)
103.4MB   unallocated
509MB     Primary parititon (FAT)
103.4MB   unallocated
6755.3MB  Extended partition, allocated as follows:
          1004MB   Logical partition (NTFS)
          103.4MB  unallocated
          502MB    Logical partition (NTFS)
          103.4MB  unallocated
          302.7MB  Logical partition (NTFS)
          103.4MB  unallocated
          502MB    Logical partition (NTFS)
          103.4MB  unallocated
          2037.6MB Logical partition (FAT)
          96MB     unallocated
          66MB     Logical partition (Linux Swap)
          103.4MB  unallocated
          22.1MB   Logical partition (Linux Ext2 - /boot)
          103.4MB  unallocated
          1602MB   Logical partition (Linux Ext2 - /)

Partition Magic v5 was used to create ALL partitions and to put unallocated
space between them.  Disk Druid was used simply to set the mount points (ie, it
was not used to create or modify any of the partitions).  When I clicked the
'next' button after setting the mount points, the installation aborted and the
system rebooted.

After reading this bug report, I used Partition Magic to eliminate all
unallocated space between partitions.  The number and order of the partitions
remained the same, just no unallocated space between them.  I then restarted
the install and the problem went away.  Apparently Disk Druid gets confused
when there is unallocated space between partitions.

I am deeply indebted to the person who submitted the original bug report ... I
was becoming VERY frustrated after having tried all combinations of
installation options to no avail ...

Comment 4 amgrady 2000-03-05 17:38:59 UTC
I'll throw in my $0.02, as I think I have a simple reproducible case for this
problem. I started with a 6G IDE hard drive with one 2G primary partition (drive
C) and one 4G extended partition. The 4G extended partion had two 2G logical
partitions (drives D and E). Drive D was/is physically located on cylinders
between drives C and E. I started with no data on drive D, so that is where I
tried to install Linux, having all of the problems described above (bug 7342
also does a good job describing the symptoms).  After reading this bug (8378), I
tried putting my system back where I started, then copying all the data from
drive E to drive D...and then using drive E (which was now expendable) as the
target for installing Linux. That worked perfectly!

I can be contacted at amgrady or gradym.com, if anyone wants
any further details.

Comment 5 Derek Tattersall 2000-04-26 12:08:59 UTC
I took a 6.4 gig ide drive in a Dell Precision 210 and partitioned into three
primary DOS partitions roughly equal in size.  I then installed RHL6.1 using
Disk Druid.  I deleted the middle dos partition, and reallocated as /boot, swap
and the remainder as /.  This was all in an extended partion occupying the
central third of the disk.  The installation completed without exceptions.  I
repeated the experiment with RHL6.2 with the same results.

I then used RHL5.2 fdisk to allocate two DOS partitions, from cylinder 1 to 251
and from 510 to 784, leaving unallocated space in the middle of the disk.  I
then installed RHL6.1 without any exceptions.

I have not been able to recreate this problem, so I will close it as "works for
me".

If anyone can come up with a surefire way to reproduce this, please reopen  the
problem.