[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[ale] Finding filesystems on a disk
- Subject: [ale] Finding filesystems on a disk
- From: mark at vielle.datasys.net (Mark R. Lindsey)
- Date: Fri, 9 Jan 1998 19:56:54 -0500
Howdy, all you filesystem fans. I'd appreciate your thoughts.
I recently witnessed the corruption of the partition table on a hard
drive. I know that, in general, it looked like this:
hda1 Empty No file system
hda2 Linux root ext2
hda3 Linux swap Linux swap
hda4 Extended Partition
hda5 Linux /usr ext2
hda6 Linux /var ext2
hda is about 2 gig. I believe that Linux was originally installed using
the default settings for the drive in the BIOS, including LBA. I need to
rebuild that partition table enough to find those filesystems.
I wrote a script to make a partition between N and the end of the drive
(logical cylinder 1023), then attempt to mount a ext2 filesystem on that
partition, read only. I was fortunate that the write, sync, and ioctl()
lets the kernel reread the partition table properly, and I found one
of those filesystems using that method.
However, it found only one, and I'm wondering what other ways I could try
to find the filesystems that are still on there. My two ideas are as follows:
- Write a scanner that'd read through hda looking for the signature of
ext2 filesystems (is this possible logically?)
- Maybe the drive wasn't originally LBA, and it just happened that one
of the partitions started on an LBA-addressable cylinder. The data on
that partition was fine, and easily readable -- is it possible that
using LBA you could mount a partition whose data wasn't made using LBA?
It's possible that I didn't properly implement the idea of scanning for
filesystems using fdisk and mount -- your thoughts there would be helpful.
Thanks,
Mark