"M. R. N. Weston" wrote:
This email is a warning and solution that I hope will help someone out
there. Also included (of course) is my fix!
Symptom: After installing Linux Mandrake 7.1, Windows can't read any FAT
drives in the extended partition.
Further description: Computer that I was installing on had a 13G drive
partitioned as follows:
Primary DOS partition: 2 G for Windows.
DOS Extended partition: the rest.
Within that extended partition: 5 G FAT32 data partition for Windows.
The rest I left for Linux partitions.
After installing Mandrake I discovered that Windows could not read
FAT32 partition - seeing as all the programs and data and many
important things for the last six months were installed on the 5G FAT32 I
started to sweat. Especially since I knew very little about partitions
and the like. Windows FDISK saw the entire extended partition as
"NON-DOS" and refused to read it. Mandrake, installed on a
couple partitions at the end of the extended partition, still worked quite
happily. I was worried that Mandrake had somehow tried to resize the
5G DOS partition and messed it up, or killed it altogether (which
would have been a Bad Thing). After
educating myself extremely hurriedly on these topics, I discovered
what the problem was: Mandrake had changed the type of the DOS Extended
partition (that occupied the rest of the disk) from "Extended" to "Linux
Extended" (as seen by fdisk) at some point during the install. Of course
without telling me about it.
This problem was reproduceable as after fixing it the first time I had to
reinstall Mandrake (for various other complicated reasons) and it did
exactly the same thing again.
The fix:
Note: if you know nothing about partitions don't mess
around with fdisk !! Do as I did and forgo a night's sleep and learn all
you can on the web, docs, etc about what is going on _before_ looking at
fdisk. Then A) the problem, whether or not it is exactly the same as
here, will be much easier to solve, and B) you will have gained some
valuable knowledge, like I did :) I intend this email to be a
guide/confirmation/help in pointing out what's wrong; don't leap to do
this if you're not sure that you are having exactly the same problem.
- boot into Mandrake, or use a rescue disk (which is actually
what I was using as I had rewritten my Master Boot Record from windows
early in the diagnostic process, thinking that was part of the problem,
and thus I couldn't boot Linux anymore).
- Be Root
- run "fdisk /dev/hdX" where X is probably "a" (it was for me) if the
problem is on your first fixed disk.
- VERIFY that this is indeed your problem: type "p"; if your partition
table looks something like this (concoted) example it probably is:
Device BootStart EndBlocks Id System
/dev/hda1 * 1 243 whatever 6 FAT16
/dev/hda2 244 523 whatever 85 Linux Extended
/dev/hda5 244 399 whatever 6 FAT32
/dev/hda6 400 506 whatever 83 Linux
/dev/hda7 507 523 whatever 82 Linux swap
note how the Linux extended partition takes up the rest of the disk and
the FAT32 partition is contained within it.
- note the number (ie "hda2", "hda3", as you can see in the example it's
2) of the "Linux Extended" partition - it very likely takes up all
the space that isn't used by the first, primary, partition; and most all
other partitions are within it.
- hit ("t") to change the partition type. First you type the number, then
the new type. List all of the types and pick the one called
"Extended" (type 5 if I recall).
- write the table to disk
- reboot into Windows, all should be well
If this doesn't fix it or your problem doesn't sound quite the same don't
mess around with fdisk unless you know what you're doing. Or you might be
using some tools like "gpart" to recover your partitions from scratch :)
If you have the same problem as this and this works then I feel I will
have done my duty in life :)
Mark
--
"Science is like sex: sometimes something useful comes out, but that is
not the reason we are doing it" -- Richard Feynman
Here's an even BETTER solution. Don't install Linux on anything other
than it own partition. That includes Extended DOS partitions. If you
have to use Partition magic to resize your DOS primary partition and
create another primary parition which is where your Linux installation
will go.
I don't mean to sound accusitory or demeaning to you Mark, but it wasn't
Mandrake that messed up it was the guy telling diskdruid what to do and
where to do it with the installation. :)
I know cause I learned partitioning the hard way. Just like you're doing
it.
--
Mark
I love my Linux box...
REASON #1 -- ...it isn't Windows!
Registered Linux user #1299563