I have an external Seagate 500 GB USB hard drive that was attached to a Lenovo ThinkPad laptop when the laptop battery ran out of power. When I plugged the laptop into the wall and rebooted, the external hd would not mount. I attached the external hd to the desktop and it won't mount there either.
I had just installed PCLINUXOS 2009 (Free) [with KDE version 3.5.10 Release 22.214.171.124.tex3] to the desktop computer the day before. I'm a novice user in LINUX so it took me a few days to look on the Web to find a few sites that would help me figure out what might be wrong. Many of the answers I found indicated that a power failure causes a failure of the disk to mount. I am trying to diagnose and solve the problem as conservatively as I possibly can so I don't damage any of the data on the drive.
You might wonder if I have a backup of the data and couldn't I just restore from that? Well, this IS the backup of the contents of the entire user data on the internal hard drive on the computer from before the PCLINUXOS install. What was on the internal drive is now wiped out and gone. I really need to do what I can to get access to the external drive without damaging it any further.
Here's the error when I try to mount the hd, and the sequence of what I've tried:
----> mount in Konsole:
[root@localhost ~]# mount /dev/sdd1/
mount: can't find /dev/sdd1/ in /etc/fstab or /etc/mtab
----> mount from Konqueror:
mount: wrong fs type, bad option, bad superblock on /dev/sdd1, missing codepage or helper program, or other error In some cases useful info is found in syslog - try dmesg | tail or so
I tried their suggestion:
[root@localhost ~]# dmesg | tail
sd 19:0:0:0: [sdd] Mode Sense: 1c 00 00 00
sd 19:0:0:0: [sdd] Assuming drive cache: write through
sd 19:0:0:0: [sdd] 976773168 512-byte hardware sectors (500108 MB)
sd 19:0:0:0: [sdd] Write Protect is off
sd 19:0:0:0: [sdd] Mode Sense: 1c 00 00 00
sd 19:0:0:0: [sdd] Assuming drive cache: write through sdd: sdd1
sd 19:0:0:0: [sdd] Attached SCSI disk
sd 19:0:0:0: Attached scsi generic sg4 type 0
usb-storage: device scan complete
It is useful that it sees the disk is there, even though it won't mount.
[root@localhost ~]# fdisk -l
… [snip: sda, sdb, & sdc] …
Disk /dev/sdd: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0xa25c73bd
Device Boot Start End Blocks Id System
/dev/sdd1 1 60801 488384001 83 Linux
I Googled the “mount: wrong fs type, bad option, bad superblock...” error message and found several pages that had suggestions on how to fix it. I tried the ones that sounded nondestructive that would give me information on the condition of the drive and its contents:
[root@localhost ~]# fsck -n /dev/sdd1
fsck 1.41.6 (30-May-2009)
fsck.jfs version 1.1.11, 05-Jun-2006
processing started: 3/21/2010 18.10.32
The current device is: /dev/sdd1
Block size in bytes: 4096
Filesystem size in blocks: 122096000
**Phase 1 - Check Blocks, Files/Directories, and Directory Entries
**Phase 2 - Count links
**Phase 3 - Duplicate Block Rescan and Directory Connectedness
**Phase 4 - Report Problems
**Phase 5 - Check Connectivity
**Phase 6 - Perform Approved Corrections
**Phase 7 - Verify File/Directory Allocation Maps
Errors detected in the Fileset File/Directory Allocation Map control information. (F)
**Phase 8 - Verify Disk Allocation Maps
Incorrect data detected in disk allocation structures.
Incorrect data detected in disk allocation control structures.
488384000 kilobytes total disk space.
60133 kilobytes in 16587 directories.
347770039 kilobytes in 317414 user files.
0 kilobytes in extended attributes
230426 kilobytes reserved for system use.
140443668 kilobytes are available for use.
File system checked READ ONLY.
Filesystem is dirty.
Filesystem is dirty but is marked clean. In its present state,
the results of accessing /dev/sdd1 (except by this utility) are undefined.
The fact that it can find 317414 user files means that my data must still be there! But the messages “Incorrect data detected...” and “Filesystem is dirty but is marked clean.” sound bad.
[root@localhost ~]# e2fsck -b 8193 /dev/sdd1
e2fsck 1.41.6 (30-May-2009)
e2fsck: Bad magic number in super-block while trying to open /dev/sdd1
The superblock could not be read or does not describe a correct ext2
filesystem. If the device is valid and it really contains an ext2
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
e2fsck -b 8193 <device>
(but it doesn't matter what number I put for the block number, everything I try gives the same message.)
sudo badblocks -snv /dev/sdd1
After 25 hours of random read and write trials, it came back with no errors to report.
I would appreciate any directions you can give me that will help me get my data back. Thank you very much for your consideration. --Sue