On Friday, August 20, 2004 @ 9:01 PM, Marcos Vinicius Lazarini wrote:
Greg Wallace wrote:
On Friday, August 20, 2004 11:50 AM, Marcos Vinicius Lazarini wrote
On Fri, 20 Aug 2004, Greg Wallace wrote: (...) Marcos:
I made the changes as per your instructions. Then I went ahead and did --
Grub Find /boot/grub/stage1 --> It returned (hd0,2) and (hd0,4) Root (hd0,2) Setup (hd0)
And it said it couldn't write the file
I repeated --
Find /boot/grub/stage1 --> It only returned (hd0,4) this time Root (hd0,2) --> It basically said no can do, so I said Root (hd0,4) --> It looked like it worked that time Setup (hd0) --> It wrote the file.
I then re-booted and grub (phase 1, I guess), gave me a prompt like
Linux Windows floppy failsafe
I press enter on Linux and I get this back --
Booting 'linux' Kernel (hd0,2)/boot/vmlinuz root=/dev/hda3 hdc=ide=scsi vga=788 Error 17: Cannot mount selected partition
Press any key to continue
Why is he trying to boot (hd0,4)? I believe that's the empty partition he set aside for me for future use. I say that because when I did my install, he should me a map of everything he was going to put out there (I may have mentioned this before). As I recall, it was
Swap Linux Swap Reserved for future use Reiserfs
Something like that. So it looks like he's trying to boot the empty partition 4 instead of 2. Is that right? If so, do I need to go back I and edit menu.lst again?
Thanks and yours truly, Greg Wallace
Greg,
As I told you, the 'find /boot/grub/stage1' sometimes fails. Do it in the old-fashioned way - find yourself this file. Below I'll paste the steps in my machine:
Boot using the Rescue CD, and log as root; type 'fdisk -l'; here I got ---------- Disk /dev/hda: 16 heads, 63 sectors, 2484 cylinders Units = cylinders of 1008 * 512 bytes
Device Boot Start End Blocks Id System /dev/hda1 * 1 32 16096+ 83 Linux /dev/hda2 33 2216 1100736 83 Linux /dev/hda3 2217 2484 135072 82 Linux swap ----------- Notice a star marking hda1 - that's a good hint. Your boot partition should be marked like that (should be or must be? not sure) As you told earlier, you should have only one Linux partition, so it won't be difficult to find.
Just to confirm, mount this device and check its contents. You can use any directory as a mount point:
cd /mnt mkdir linux mount /dev/hdxxxxx linux cd linux ls
You should see directories like these: bin cdrom etc home lib opt root sys usr boot dev floppy initrd mnt proc sbin tmp var
if not, start again: cd /mnt umount linux fdisk -l ....
When you find, then try this one: ls -l boot/grub/stage1 -rw-r--r-- 1 root root 512 Aug 14 23:14 /boot/grub/stage1
You have found the partition you was looking for!. Now edit boot/grub/menu.lst to reflect the changes; it will use. In mine, I have to change the partition number in 2 places - kernel and initrd parameters. Just as an example, here is a fragment of my menu.lst: -------------- ###Don't change this comment - YaST2 identifier: Original name: linux### title Linux kernel (hd0,0)/boot/vmlinuz root=/dev/hda1 vga=0x31a splash=silent desktop showopts initrd (hd0,0)/boot/initrd --------------
If you have changed the partition's organization (in relation to the situation it had during the backup), you should also change your etc/fstab to reflect the new structure. Otherwise, you will be able to load the kernel, but the kernel won't be able to actually boot the system. You should change only the first column. --------------- # /etc/fstab: static file system information. # # <file system> <mount point> <type> <options> <dump> <pass> /dev/hda1 /boot ext3 defaults 0 0 /dev/hda2 / reiserfs defaults 0 0 /dev/hda3 none swap sw 0 0 proc /proc proc defaults 0 0 ---------------
As you can see, I have a separated boot partition because this is an (very) old machine and have problems booting kernels located beyond cylinder 1024. That's not you case - just to clarify my architecture.
I hope that is enough to make your system bootable again.
From this situation, we all learned one lesson: *always* save, with your backups, the partition scheme you were using in that moment; in case of a disaster, it will be easier if you put each partition back online in its original relative-position (even if you have to create empty ones), and avoid all that confusion with partition numbers and letters.
Good luck in your tries!
Marcos: You don't know how much I appreciate the help you have given me. Thanks to you detailed and accurate information, I have gained a great deal more insight into the installation process, the boot process, and how the boot process ties into the startup of the system. I am still not up yet, but I think I can now provide some much more meaningful information as to where I am. I had to do quite a bit of clean-up in the menu.lst file. Here's what I now have. I have added a few comments that might hopefully make some things clearer about how I got to this. Short comments appear next to the menu.lst line it applies to. Longer comments are at the end. To begin with, I had to change (hd0,2) to (hd0,1) in many places. Here's what I now have -- fxmenu (hd0,1)/boot/message color white/blue black/light gray default 0 timeout 8 title linux kernel (hd0,1)/boot/vmlinuz root=/dev/hda3 hdc=ide-scsi vga=788 makeactive <-- I added this not sure if that was correct or not. title windows root (hd0,2) # makeactive <-- This is a null/zero length partition (see Note1 below) chainloader + 1 title floppy root (fd0) chainloader + 1 title failsafe kernel(hd0,1)/boot/vmlinuz.shipped root=/dev/hda3 ide=nodma apm=off ocpi=off vga=normal nosmp maxcpus=0 disablepic 3 initrd (hd0,1)/boot/initrd.shipped When I ran the last install, Linux suggested (as best I can remember) -- Swap 3 G Linux Windows Swap ? <-- Some smaller size, as I recall <-- Not sure if there was anything in here Reiserfs <-- sp? I had manually gone in and edited the partition setup on the previous install and that was a complete disaster. So, this time, I tried to go along with Linux as best as I could. I didn't really want Windows on the machine, but I was afraid to strip out that partition completely, so I simply made it 0 length. It seemed to be giving me problems during start-up, so I added commented out the "make active" statement. There was no such statement on the Linux partition, so I added one in (was that bad, or would it probably be ignored anyway?). I have no idea what Reiserfs is, but since Linux was wanting to give it to me, I basically said "Ok, whatever you say". When I try to boot the machine now, it hangs completely in Stage 1. When I boot from the CD, I get this -- SELECT SYSTEM /dev/hda2 (SuSE Linux 8.1 (i386)) /dev/hda7 (SuSE Linux 8.1 (i386)) Since it has these two choices here, that makes me think that that's why it's hanging on a regular boot (it has two systems and doesn't know which one to go to). If I select the first one, I basically get the same messages I was getting before (the ones I posted). Before I go further, I'd like to add some general comments. If I get this system back up and running, given that I now know I can get it back from a backup, I plan to continue on and upgrade to 8.2, 9.0, 9.1. Given that, if there are partitioning problems here that can be worked around (say I really don't need either the Windows or the Reiserfs partition), I'd like to be able to just kill those when I move to 8.2. On the other hand, if there is no work around, I guess I'll have to go back through the whole process again. It is terribly slow because of all of the files in there under Oracle. I have Oracle Client on my Windows machine and I have 12 M of occupied storage. There are app. 120,000 files in that 12 M (10,000 files per M!). And that's just Oracle Client! God knows how many files are in the database server setup on my Linux machine. The installation process eats up a good part of a day! Then again, as I said above, I have to get it to work, so whatever it takes to do that I'm most certainly prepared to go through. Any further assistance greatly appreciated. Respectfully yours, Greg Wallace