hi all,
two days ago, I went to read a file on one of my archive disks, shared through NFS by a machine in the attic. the root
directory showed the right number of files, but most of the file names were garbled.
I didn't spot that for a moment, and tried to go into the directory I wanted ('/b'), but it claimed it was a file. then
I noticed the garbled files.
restarted the machine in case it was something simple. drive didn't turn up.
went upstairs and checked. the drive was very hot, so I guess that was the culprit. turned it off and left it over night.
next day, checked, and the main partition was missing (/dev/sdc did not have child /dev/sdc1 node), and fdisk claimed
the drive was 80GB, even though it's actually 200GB.
today, I check again, and fdisk claims it's 200GB, but the partitions are still missing.
went into fdisk to rebuild them:
> [root at localhost ~]# fdisk /dev/sdc
> Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
> Building a new DOS disklabel with disk identifier 0xb97626c7.
> Changes will remain in memory only, until you decide to write them.
> After that, of course, the previous content won't be recoverable.
>
>
> The number of cylinders for this disk is set to 24792.
> There is nothing wrong with that, but this is larger than 1024,
> and could in certain setups cause problems with:
> 1) software that runs at boot time (e.g., old versions of LILO)
> 2) booting and partitioning software from other OSs
> (e.g., DOS FDISK, OS/2 FDISK)
> Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
>
> Command (m for help): p
>
> Disk /dev/sdc: 203.9 GB, 203928109056 bytes
> 255 heads, 63 sectors/track, 24792 cylinders
> Units = cylinders of 16065 * 512 = 8225280 bytes
> Disk identifier: 0xb97626c7
>
> Device Boot Start End Blocks Id System
>
no partitions.
so rebuilt and saved:
> Command (m for help): n
> Command action
> e extended
> p primary partition (1-4)
> p
> Partition number (1-4): 1
> First cylinder (1-24792, default 1):
> Using default value 1
> Last cylinder, +cylinders or +size{K,M,G} (1-24792, default 24792):
> Using default value 24792
>
> Command (m for help): p
>
> Disk /dev/sdc: 203.9 GB, 203928109056 bytes
> 255 heads, 63 sectors/track, 24792 cylinders
> Units = cylinders of 16065 * 512 = 8225280 bytes
> Disk identifier: 0xb97626c7
>
> Device Boot Start End Blocks Id System
> /dev/sdc1 1 24792 199141708+ 83 Linux
>
> Command (m for help): w
> The partition table has been altered!
>
> Calling ioctl() to re-read partition table.
> Syncing disks.
> [root at localhost ~]#
fine enough. now let's look again:
> [root at localhost ~]# fdisk /dev/sdc
> Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
> Building a new DOS disklabel with disk identifier 0x4de23cfd.
> Changes will remain in memory only, until you decide to write them.
> After that, of course, the previous content won't be recoverable.
>
>
> The number of cylinders for this disk is set to 24792.
> There is nothing wrong with that, but this is larger than 1024,
> and could in certain setups cause problems with:
> 1) software that runs at boot time (e.g., old versions of LILO)
> 2) booting and partitioning software from other OSs
> (e.g., DOS FDISK, OS/2 FDISK)
> Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
>
> Command (m for help): p
>
> Disk /dev/sdc: 203.9 GB, 203928109056 bytes
> 255 heads, 63 sectors/track, 24792 cylinders
> Units = cylinders of 16065 * 512 = 8225280 bytes
> Disk identifier: 0x4de23cfd
>
> Device Boot Start End Blocks Id System
>
> Command (m for help):
still no partitions. nothing else I can think of until I can at least rebuilt the partition table.
any ideas? it's a Maxtor DiamondMax 10, 200GB PATA133 HDD, held in a Canyon external USB caddy.
kae
Maintained by the ILUG website team. The aim of Linux.ie is to
support and help commercial and private users of Linux in Ireland. You can
display ILUG news in your own webpages, read backend
information to find out how. Networking services kindly provided by HEAnet, server kindly donated by
Dell. Linux is a trademark of Linus Torvalds,
used with permission. No penguins were harmed in the production or maintenance
of this highly praised website. Looking for the
Indian Linux Users' Group? Try here. If you've read all this and aren't a lawyer: you should be!