Does MSDOS corrupt my Linux partition?

Does MSDOS corrupt my Linux partition?

Post by Keith Hanl » Wed, 15 Nov 1995 04:00:00



I've done some more investigating and have started to come to the
conclusion that the cause of my filesystem corruption has
something to do with rebooting into DOS.

To help with the debugging, I used tune2fs to set the maximal fsck
count to 1 so that fsck is performed everytime I boot linux.

My 1GB Fireball hard drive is partitioned with DOS occupying the
first ~400MB, my root partition the next ~40MB, /usr is the next
~500MB and swap is the remainder.  All four partitions are primary
partitions.

Here's the scenario:
1. Install Linux (from the 2.3.0 Slackware distribution).
2. Reboot into Linux - no problem
3. Repeat 2 ad infinitum... - still no problem.
4. Reboot into DOS but interrupt the boot so that the AUTOEXEC.BAT and
   CONFIG.SYS are skipped. (To reduce the number of variables).
5. Reboot into Linux - no problem this time but wait...
6. Repeat step 4.
7. Reboot into Linux - this time the /usr partition is corrupted.

This is reproducible on demand.  I must have rebooted forty times
last night!

Here are some potential problems that I have *discounted*:
 o secondary cache - disabling it had no effect.
 o cdrom - removing the cdrom drive from the ide connector had no effect.
 o write cache - turned off by hdparm -W0

Here are some other observations that may be germane:

1. hdparm reports that IDE Block Mode is off (max MultSect is 0)
   but when I boot into DOS, it reports that the block mode is 8
   sectors.

2. hdparm reports that the PIOMode is 2 (fast) although the max is
   4.  On the DOS side, it reports PIOMode 4.

3. hdparm -c reports that the eide chipset feature is disabled
   (16-bit).  On the DOS side, it reports that 32-bit mode is
   enabled.

4. The two Linux ext2 partitions are allocated drive letters in DOS.

5. Only the /usr partition is ever corrupted.

All the reboots were done using the three finger salute.  On the
Linux side, this is correctly invoking "/sbin/shutdown -t3 -rf
now".  I haven't yet checked to see if doing a power cycle between
boots prevents the corruption.

Any suggestions will be gratefully accepted - Name your beer!

------------------------------------------------------------>>>>>>>>>>>>>>>

I have spent the past week trying to install 1.2.8 from the
Slackware distribution onto my new PC.  I have been having no end
of trouble, despite the help of a knowledgable friend who has
successfully installed it on his machine.

Here are the symptoms:

I can successfully boot the slackware ramdisk and install a healthy linux.
However, once I start filling the /usr partition, I eventually corrupt
it on a subsequent reboot. I shutdown the machine using:
        "sync;sync;sync;shutdown -r now"

This will often work but eventually I get the following messages when I
boot:
EXT2-fs error (device 3/3): ext2_check_blocks_bitmap: Block #204 of the inode table in group 47 is marked free
EXT2-fs error (device 3/3): ext2_check_blocks_bitmap: Block #205 of the inode table in group 47 is marked free
...
EXT2-fs error (device 3/3): ext2_check_blocks_bitmap: Block #253 of the inode table in group 47 is marked free
EXT2-fs error (device 3/3): ext2_check_blocks_bitmap: Wrong free blocks count for group 47, stored = 7579, counted = 2789
EXT2-fs error (device 3/3): ext2_check_blocks_bitmap: Wrong freeed = 521725
EXT2-fs error (device 3/3): ext2_check_inodes_bitmap: Wrong free inodes count in group 47, stored = 1665, counted = 772

These messages occur when /usr (/dev/hda3) is mounted r/w. The boot
continues successfully into multi-user mode.

On the subsequent reboot, the fsck starts mangling the filesystem and the
system rapidly goes from bad to worse.

Here's some information about my system:
The chipset is Intel Triton.
From DOS, MSD shows the following:
The motherboard is American Megatrends.
BIOS Version: P5I437 BIOS V1.3 05-09-1995
BIOS IDBits:  FC.01.00
BIOS Date:    10/10/94
Bus Type:     ISA/AT/Classic Bus        <- what about the four PCI slots?
DMA Control'r:YES
BIOS Dataseg: NONE

C: Fixed Disk, CMOS Type 47
     204 Cylinders, 64 Heads
     512 Bytes/Sector, 63 Sectors/Track
   CMOS Fixed Disk Parameters
     528 Cylinders, 64 Heads
     63 Sectors/Track

D: Fixed Disk, CMOS Type 0              <- This is my Linux root partition
     21 Cylinders, 64 Heads
     512 Bytes/Sector, 63 Sectors/Track
   CMOS Fixed Disk Parameters
     306 Cylinders, 4 Heads
     17 Sectors/Track

E: Fixed Disk, CMOS Type 0              <- This is my Linux /usr partition
     275 Cylinders, 64 Heads
     512 Bytes/Sector, 63 Sectors/Track
   CMOS Fixed Disk Parameters
     306 Cylinders, 4 Heads
     17 Sectors/Track

I am also wondering why D: and E: show up. On my friends Linux system,
his Linux partitions don't show up in DOS.

Any help is greatly appreciated. Is my motherboard a piece of garbage?
Am I missing something obvious? Is there some simple BIOS flag to toggle?

Thanks for your help,

 
 
 

1. Linux install from Hard Drive corrupted my DOS partition

I put the Linux installation packages on my DOS partition, and installed from
the harddrive (I was installing SLS). The installation worked fine, and Linux
was happy. However, something in my DOS partition got corrupted, and I had
what was reported as "cross-linked files" by my disk checker. Anybody know
what a "cross-linked file" is, and why Linux could have caused them?

--
Scott Barker

"If God did not exist, it would be necessary to invent him."
   - Voltaire

2. Need help with a Mitsumi 2801-TE CD-R

3. Linux says partitions corrupt, DOS says OK?

4. Reinstall for different platform

5. Can I use msdos or vfat file type to mount a fat32 dos partition?

6. loadaverage, uptime & sar -q

7. change an msdos partition to linux partition

8. tulip.c on 2.1.115

9. how do i mount an extended dos partition or a dos logical partition ?

10. Uninstall Linux: Deleted "non dos partition" with DOS fdisk -- Now what?!?

11. Mini Linux coexists in DOS partition and boot from DOS

12. Mounting MSDOS partition inside of an extended partition.

13. How can Dos partitions & Dos files be viewed in Linux ?