Suse 11 XP dual boot

Sorry, I mistyped sda6 was /home and is the partition with the bad magic number. It also has quite a bit of data on it.

When I ran e2fsck -b 8193 /dev/sda6, I get:
e2fsck: Device or resource busy while trying to open /dev/sda6
Filesystem mounted or opened exclusively by another program?

I’ve tried this from rescue as well as cli with the same results. Any thoughts on how to run e2fsck -b 8193?

Do this:

dumpe2fs /dev/sda6 | grep state

What is it? I suspect the dirty-bit is set. Let’s determine that first.

Also do:

dumpe2fs /dev/sda6 | grep Backup

That will show you where all the backup superblocks are located.

Let me add that adding the -f option to e2fsck will force it to check regardless of state (I’m pretty sure but not a 100% on this; usually -f is used to force checking on a clean file system which otherwise would not be checked). But first you want to be sure what the state actually is and where those backup blocks are. And that there isn’t something else as yet unseen.

Also, do you have a backup of /home?

grep state returns Filesystem state: clean

grep Backup gives me a list of a dozen superblock and descriptor locations, 8193 is not one of them.

Embarrassingly, no, I did not backup /home prior to starting this endeavor. I figured that I wasn’t touching that partition and windows doesn’t recognize the format. I only backed up the other FAT32 partition on the drive. Kicking my self for it now, though.

Well that’s good news that the file system is still marked “clean”. But I don’t know what would have it open if you are running e2fsck from the Rescue System on the DVD . . . boot again into the Rescue System. Then try the e2fsck again with the -b 8193. I can’t account for why your dump didn’t show a backup in this block; I’m pretty sure e2fsck found it in order to recommend using it. If you get the same busy error, try this:

fuser -m -v /dev/sda6

That will show you any processes accessing sda6. A process will have a PID number. You can kill the process with:


fuser -k <PID>

Then try e2fsck again. If still no joy, then run it with the -f option, still with -b 8193. If you get an error on the 8193, do the dump before and find another backup and use that number instead. Or, you can install the photorec package which includes TestDisk, which will check the superblock, show you the backups, and (IIRC) invoke its use.

Re not making a backup . . . a common error, thinking it is not applicable since not being changed. You have lots of company. But unfortunately, when one entry in the table is changed the entire table is accessed and, depending on the program, the table can even be re-written altogether. Windows has a habit of taking over everything it touches.

fuser didn’t return anything

I tried e2fsck -f -b 8193 and got the same device busy message.

I installed and am running photorec which appears to be getting a back up of the files. I didn’t see an option for TestDisk yet. Is there still a chance that this can be repaired, or should I grab a six pack and settle in for a fun filled evening of restaging?

Don’t give up yet.

TestDisk is a program included in the photorec package, but they are two different programs. There is a tutorial online. Navigate in the pgm to that function and give it a try. Checking further on 8198, it may be that e2fsck uses that representatively rather than having scanned for the actual backups. In other words, do the “dumpe2fs /dev/sda6 | grep Backup” again and note the numbers of the backups. IIRC TestDisk will present the same to you and enable you to repair the superblock. TestDisk may be able to get around the “device busy” error, which I’m still looking into.

Just to double-check a couple things . . . Has this disk ever been used in a RAID or LVM setup? What is the type of disk drive and how is it connected?

Just on a hunch . . . if not successful with TestDisk, boot again into the Rescue System, use dumpe2fs to find the superblock backups (per above), and try the e2fsck -f -b again but using one of the numbers in the list.

I appreciate all of your help.

I found, installed and ran testdisk. It couldn’t see sda6, even with the deep scan option. I was able to get sda6 mounted as /windata and copy the files. I then went back to the XP dvd, deleted all partitions on sda and started from scratch. I reinstalled XP and Suse and am now going through the update cycle.

Well, at least I’ve gained yet another reason to despise ms software.

Well hell, what can I say? Sorry it turned out this way. Glad you were at least able to retrieve files. Your sentiment re MS is well placed.

Good luck.

Disk /dev/sda: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x4094d9a7

Device Boot Start End Blocks Id System
/dev/sda1 1 13687 109940796 f W95 Ext’d (LBA)
/dev/sda2 13688 14593 7277445 7 HPFS/NTFS
/dev/sda5 1 262 2104452 82 Linux swap / Solaris
/dev/sda6 263 2873 20972826 83 Linux
/dev/sda7 2874 13687 86863423+ 83 Linux

so can i dualboot with this configuration.?

Yes. You can install grub to the MBR. In the grub control file (/boot/grub/menu.lst) in sda6 you would have a stanza which “chainloads” to the Windows boot loader in sda2. openSUSE will probably propose this setup.