I recommend to cut the loss and forget the Debian and Grub 0.95 are causing the the problem with fd0.
The most you lose is the ability to use fd0 with your version of Debian. You should try a Live CD and test with the fd0. I confirmed that I had the same problem and so there is no evidence a hardware fault. As far as I am aware fd0 is used by both Linux and Grub. There is a good possibility of something to do with the kernel. You can generate Grub floppy (unattached to a system) by a Live CD, say from Ubuntu, Mepis, Damn Small Linux.. Why keep flogging a dead horse? I take it you have completed the Step 1 of my suggestion without a problem. |
Ok I managed to download an Ubuntu live and get it up and running without too much trouble.
I assume I'll be able to create a grub floppy from Ubuntu using "grub-install /dev/fd0" Is this correct? Thanks again |
No
grub-install transfers a Linux boot loader onto a floppy. Your Debian has a problem of reading fd0 so it is out. If you do a grub-install with Ubuntu it only boots Ubuntu and no good to your Debian. right? So you only want Ubuntu to create a Grub floppy unattached to an operating system so that you can use it as a trump card to boot every system in a PC, including Debian and XP. I repeat the instruction below -------------------- The traditional method of locating the original source of stage1 and stage2 files is to ask Linux to find it for you. So while in Ubuntu (from Live CD) do a find / -name stage1 The record I kept indicates Ubuntu keeps these two files in /lib/grub/i386-pc directory. You then cd to the directory located by the find command and do the two dd statements . dd if=stage1 of=/dev/fd0 bs=512 count=1 dd if=stage2 of=/dev/fd0 bs=512 seek=1 That is the method recommended by "Linux in a nutshell" and also the "Grub Manual" ----------------------------------------- |
Ok I screwed up big time, now I can't boot either OS. Here is what I did...
1. I was able to create the boot floppy from the Ubuntu Live Cd. 2. I used the windows recovery cd and ran FIXMBR. The output was Code:
\Device\Harddisk0\Partiton0 3. Now I used the windows recovery and ran FIXBOOT. The output was Code:
target partition is E: Code:
NTLDR is missing To boot Debian from the floppy... Code:
root (hd0,0) chainloader +1 boot and I get Code:
NTLDR is missing Please any key to restart |
To use the Grub floppy you tyoe one line at a time, exactly as what I have showed to you
root (hd0,0) <---- tells Grub the root partition to be booted is in 1st disk 1st partition. Frub will responds back by telling you the partition type/ 0x07 for NTFS and 0x83 for Linux. chainloader +1 <---- tells Grub you want it to boot the boot loader in side the root partition of (hd0,0). A silence from Grub means it has found it. Grub will tell you immediately if there is a problem boot <------- is the green light for Grub to go ahead. ----------------------------------- The Grub floppy can also allow you to boot Debian if you know the name of its kernel. I have just tried my Debian in hda15 as follow (to make sure it works before writing this reply) root (hd0,14) kernel /boot/vmlinuz-2.2.20-idepci root=/dev/hda15 ro boot and it works. I initially made a mistake in the name by using idecpi instead of idepci and Grub responds no such file. I then boot it with hda27 Slackware's kernel because it has no extra bits after vmlinuz. root (hd0,14) kernel (hd0,26)/boot/vmlinuzi root=/dev/hda15 ro boot And Debian was booted up. Then I could see my mistake by ls /boot in Debian. So the tool is there for you to use. You have to study each step and substitute the relevant partition and kernel name in your case. Normally a Linux needs to boot both kernel (vmlinuz) and the initial ramdisk initrd but the latter isn't used by my Debian. --------- Go ahead to boot Debian first, try the Windows later |
Ahhhh I see, I didn't know I needed to add the kernel information. The kernel I'm using is 2.6.8-11-amd64-generic. So at the GRUB prompt I need to run.
Code:
root (hd0.0) kernel /boot/vmlinuz-2.6.8-11-amd64-generic root=/dev/hda1 ro boot |
I repeat do each line at a time, not all 3 ine one line please
root (hd0.0) kernel /boot/vmlinuz-2.6.8-11-amd64-generic root=/dev/hda1 ro boot because you get a reply if something goes wrong. Grub would tell you what kind of problem if it can't do the thing you instruct it to do. Also you will be wasting my time if you cant boot XP with the grub floppy. Your original Grub instructions to boot XP by /boot/grub.menu.lst were title Windows XP rootnoverify (hd1,0) map (hd0) (hd1) map (hd1) (hd0) makeactive chainloader +1 With Grub floppy booting into a Grub prompt you omit the title line and add boot after pressing "Enter" for the last line. and the XP should come up. If it fails it is because you have changed the connection or BIOS boot sequence. |
okay...
Code:
root (hd0,0) Code:
kernel /boot/vmlinuz-2.6.8-11-amd64-generic root=/dev/hda1 ro Code:
boot VFS: Cannot open root device "<NULL>" or unknown block (8,1). Please append a corect "root=" boot option Is hda1 not my root partition? I tried root=dev/hda (1,2,5,6) and none worked. |
if you need to get into windows and do file maintenance, try using bart's pe...
http://webserver.computoredge.com/ed...ver&issue=2345 i had a boot.ini problem and was able to rename the file and change the name of my backup to boot.ini. worked like a charm. if you want quick results, you can forget about including mcafee, spybot, adaware, etc... you can probably just slipstream barts and your xp disk as per the instructions. best of luck, GN |
In Grub prompt you can type help to get the commands available to you
geometry (hd0) will list all the partitions in the fist disk. That should give you some idea of your root partition. Do also geometry (hd1) and so on to know your own partitions. Also Grub will confirm the partition type after the first statement. Does this match your expectation? Type 0x83 partition is Linux, 0x7 is NTFS, 0x82 is swap. You should also get a line of text if Grub accepts yopur kernel statement I got the feeling that you have 2 partitions of /boot in hda1 and / in hda6. Therefore root (hd0,5) kernel (hd0,0)/boot/vmlinuz-2.6.8-11-amd64-generic root=/dev/hda6 ro boot should yield result. |
yes after entering root (hd0,0) I get Filesystem type is ext2fs partition type 0X83
Grub also accepts my kernel statment. The error occurs a few seconds after the boot process starts. I will attempt your suggestion... |
output from the geometry commands
geometry (hd0) Code:
drive 0x80: C/H/S = 1023/255/63 Code:
Number of sectors = 156368016, LBA Code:
Parititon number 0: Filesystem type ext2fs partition type 0x83 Code:
Parititon number 4: Filesystem type unknown partition type 0x82 Code:
Parititon number 5: Filesystem type ext2fs partition type 0x83 Code:
drive 0x81: C/H/S = 1023/240/63 Code:
Number of sectors = 72303840, LBA Thank you again for your time and suggestions |
OK slap. I have been answering a few other posts and may not remeber evrying you have got. However reading back I am sure your Debian was bootable before.
The exact way Debian boots up itself is described in /boot/grub/menu.lst, which I thought you have been able to access, instead of keep guessing as what we did together. Now I realise you also have a Live Ubuntu CD so lets do the minimum. In case I haven't told you before a Live CD can rescue a distressed Linux and you have Debian's Grub working nicely before in the MBR, so let's put its Grub back. I was side-tracked by its inability to write Grub on fd0. I describe the steps as follow Boot up Ubuntu Live CD click system/root terminal<-----------Ubuntu should tell you the password, if not type su in terminal mkdir /mnt/hda6 <--------------make a temp. directory in /mnt mount /dev/hda6 /mnt/hda6 <----------mount device hda6 on the temp directory chroot /mnt/hda6 <------------you change root to Debian hda6. If you manage this far then you are inside Debian now, it is fun isn't it? grub-install /dev/hda <----------------You ask Grub to install itself into the whole disk of hda, that mean MBR of hda reboot Remove the Live CD and Your Debian should be up again Post mortem------------------ While inside Debian, either after change root or have it up and running, print out or write down the content of /boot/grub/menu.lst and unstand what has gone wrong with your previous instructions. I prefer you list its content here and tell us your comment. ----------------------------------- Windows problem You will notice that the No. of heads reported by Grub is different to previously reported in fdisk after you have deleted the 2nd partition. I don't like 240 in the middle of C/H/S because it should be 255 as hda. You may need to do more investigation in cfdisk and fdisk. Do change it now. Report to us if you can mount it and obtain all its information. |
Thank you again for your patience. I'm learning a lot from each of your posts.
Yes you are correct, Debian was fully functional before I ran fixboot and fixmbr from windows restore cd. I'm confident my Debian problems were caused by that. 1. GRUB I was only able to get to step 2 of your instructions. I created the directory with no problems. Here is the error output... root@ubuntu:/# mount /dev/hda6 /mnt/hda6 mount: wrong fs type, bad option, bad superblock on /dev/hda6, missing codepage or other error In some cases useful info is found in syslog - try dmesg | tail or so 2. Windows I was able to mount the sda that contains the windows partitions. The following gave no errors. root@ubuntu:/# mkdir /mnt/windows root@ubuntu:/# mount /dev/sda1 /mnt/windows 3. fdisk Just to be complete I ran fdisk again. Disk /dev/hda: 80.0 GB, 80060424192 bytes 255 heads, 63 sectors/track, 9733 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/hda1 * 1 851 6835626 83 Linux /dev/hda2 852 9733 71344665 5 Extended /dev/hda5 852 1037 1494013+ 82 Linux swap / Solaris /dev/hda6 1038 9733 69850588+ 83 Linux Disk /dev/sda: 37.0 GB, 37019566080 bytes 255 heads, 63 sectors/track, 4500 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/sda1 * 1 4499 36138186 7 HPFS/NTFS (I'm off to work so it will be several hours before I'm back at this machine.) |
OK your Debian has proved stubborn.
Before doing anything why not add the type parameter in the mount statement since Grub has confirmed, also fdisk too, that hda6 is ext2. So try mount -t ext2 /dev/hda6 /mnt/hda6 It may be just enough but if it does your situation is as follow. Windows parition sda1 can be mounted but not yet bootable. This is the time to do a back up of your data. When come to a push you might to to do a reinstall of XP. Have you tried booting XP with the instructions I gave in #22 post? What was the reply from Grub? The Grub floppy. unattached to a system, can boot any system and is a very important tool. Debian was working fine before untill XP's MBR overwrote Grub. Now the partition cannot be mounted. However you can still boot it with the Grub floppy except you do not have the exact loaction of the kernel and its name. My guessed location has not been successfull. root (hd0,5) <---------------assumes your /root is in hda6 kernel (hd0,0)/boot/vmlinuz-2.6.8-11-amd64-generic root=/dev/hda6 ro<-----------assumes /boot is in hda1, /root in hda6 boot You have not ey report back the error from the above after I have swap the root=/dev/hda6 with root=/dev/hda1 in the kernel statement. As far as from your information Grub took in the root and kernel statements without complaint. This indicated /boot/vmlinuz-2.6.8-11-amd64-generic was discovered in (hd0,0) and the filename is correct. I need to know what kind of error you were getting after telling Grub root (hd0,5) and NOT root (hd0,0) root=/dev/hda6 and NOT root=/dev/hda1 in the kernel statement. It is possible that you may not have implemented everything I said. I have managed to hang on to your kernel name from hda1 by calling the kernel (hd0,0)/boot/vmlinuz------- instead of just /boot/vmlinuz................ |
All times are GMT -5. The time now is 11:16 PM. |