On Saturday, August 21, 2004 8:09 @ AM, Marcos Lazarini wrote --
Greg Wallace wrote:
On Friday, August 20, 2004 @ 9:01 PM, Marcos Vinicius Lazarini wrote:
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
Greg, You must understand that your menu.lst file alone is (in practical terms) useless if we don't know (without doubts and guesses) your partition scheme and the mount points.
How can I say: "Hey, change hd0,1 to hd0,2 in menu.lst" if you provide no solid info about the partitions? I'm trying yo make you understand the close-relation between those: menu.lst (GRUB) <-> `fdisk -l` (Partitions) <-> /etc/fstab (mount point)
kernel (hd0,1)/boot/vmlinuz root=/dev/hda3 hdc=ide-scsi vga=788 Here you load the kernel (/boot/vmlinuz) from /dev/hda2 (hd0,1), and give parameters ' root=/dev/hda3 hdc=ide-scsi vga=788'. Notice that you inform the kernel to look for it's root filesystem (the / directory) in
For now, I can only see an inconsistency in your menu.lst. partition /dev/hda3 (hd0,2). (Based on what you posted here, I'm assuming you have only one linux partition for everything)
I'm not sure about the 'makeactive' option, I have never used, don't think it will be necessary.
You have to pay attention to the details; one number wrong in any of these steps and your system won't boot anymore.
(I'm leaving now; will try to read mails tomorrow - otherwise, be back on monday)
Regards, Marcos Lazarini
Ah, Marcos, sometimes you overestimate my knowledge. "fdisk -l", so that's where I can see the details of my partitions! Ok, now I'm off to do the reconciling you talk about. Greg W.