Grub error in booting kernel (fresh frugal install) SOLVED

Booting, installing, newbie
Post Reply
Message
Author
redrum
Posts: 56
Joined: Mon 02 Oct 2006, 11:16
Location: Athens , Grecce

Grub error in booting kernel (fresh frugal install) SOLVED

#1 Post by redrum »

I just installed Puppy 2.13 to the HD in frugal. Untill now all the times I did HD install was the normal install to the whole partition and I was very happy with Universal Installer. This time I attempted to do the frugal way. I came to surprise to see that after copying of the files Grub config wizard didn't start. So I started it myself. I selected my ext3 partition (/dev/hdb1) and chose grub to mbr. I rebooted only to see that was not booting. Later I noticed that Grub is searching vmlinuz in the wrong place. After I fixed that and restarted I got the error : kernel panic-not syncing :no init found try passing init= option to kernel.

Tried more options , goggle it yet I couldn't find the right asnwer to make it work . So here I am waiting for a suggestion by Puppy addicts :idea:
Last edited by redrum on Thu 04 Jan 2007, 02:55, edited 1 time in total.

User avatar
Sit Heel Speak
Posts: 2595
Joined: Fri 31 Mar 2006, 03:22
Location: downwind

#2 Post by Sit Heel Speak »

I'm dished. I use Grub4DOS, which is a grub.exe executable started by Win98 DOS using a line in autoexec.bat. If you were using that, my request would be to see \boot\grub\menu.lst. However, I forget in what file the configuration for MBR Grub resides (boot.ini?), or if it even has one. Find the file that has the title and chainloader and kernel lines and post it here, and tell us where pup_213.sfs and vmlinuz and initrd.gz are.

The original homepage of GRUB is

http://www.gnu.org/software/grub/

and its development page is

http://grub4dos.sourceforge.net/

which covers both GRUB4DOS and WINGRUB (the MBR version, which you have).

HTH

redrum
Posts: 56
Joined: Mon 02 Oct 2006, 11:16
Location: Athens , Grecce

#3 Post by redrum »

The frugal install is in an empty ext3 partition. I used frugal this time in order to take advantage of loading puppy in ram. So all files are in "/" . There is nothing else there only the files the universal installer copied to the partition. Ofcourse there is the folder that Grub did (\boot\grub\) . I had to edit menu.lst anyhow to change the vmlinuz location because grub couldn't find it before. But that didn't take me far since after uncompressing linux ... the kernel panic came !

User avatar
Sit Heel Speak
Posts: 2595
Joined: Fri 31 Mar 2006, 03:22
Location: downwind

#4 Post by Sit Heel Speak »

So, let's see menu.lst.

User avatar
WhoDo
Posts: 4428
Joined: Wed 12 Jul 2006, 01:58
Location: Lake Macquarie NSW Australia

#5 Post by WhoDo »

redrum wrote:The frugal install is in an empty ext3 partition. I used frugal this time in order to take advantage of loading puppy in ram. So all files are in "/" . There is nothing else there only the files the universal installer copied to the partition. Ofcourse there is the folder that Grub did (\boot\grub\) . I had to edit menu.lst anyhow to change the vmlinuz location because grub couldn't find it before. But that didn't take me far since after uncompressing linux ... the kernel panic came !
The initrd.gz isn't being found. For some reason the Grub Configuration Loader doesn't use the right locations or syntax.

Edit /boot/grub/menu.lst as follows:

Code: Select all

title PuppyLinux-Frugal
root (hd1,0) #using hdb1 this is correct syntax
kernel /vmlinuz root=/dev/ram0 #substitute correct location of vmlinuz
initrd /initrd.gz #substitute correct location of initrd.gz
Note that stuff after # is a comment only and doesn't need to be added to the file.

With this format your frugal install should boot properly. If you previously created a pup_save.2fs file on that partition, remove it before rebooting. Puppy will create a new one with your current settings.

Hope that helps.

redrum
Posts: 56
Joined: Mon 02 Oct 2006, 11:16
Location: Athens , Grecce

#6 Post by redrum »

For the record :before it was like this

Code: Select all

# Linux bootable partition config begins
  title Linux (on /dev/hdb1)
  root (hd0,0)
  kernel /vmlinuz root=/dev/hdb1 ro vga=normal

I am going to try the solution that WhoDo suggests and inform this thread.

redrum
Posts: 56
Joined: Mon 02 Oct 2006, 11:16
Location: Athens , Grecce

#7 Post by redrum »

now it looks like this

Code: Select all

root (hd0,0) 
kernel /vmlinuz root=dev/hdb1
initrd /initrd.gz
Like this I managed to get further down the road of booting process ...BUT ... still halts in bootng with the same message !!! It loads kernel modules ,pups_save.2fs etc etc untill "creating unionfs on (/initrd)/pup_new (to become /_ DONE

Then in BusyBox 1.01 multi call binary I get :

Code: Select all

Usage : init 

Init is the parent of all processes.

kernel panic-not syncing :no init found try passing init= option to kernel. 

any MacGyver tricks here ? 8) [/code]

User avatar
Sit Heel Speak
Posts: 2595
Joined: Fri 31 Mar 2006, 03:22
Location: downwind

#8 Post by Sit Heel Speak »

Like WhoDo says, hd0,0 isn't where it's at. Try this:

Code: Select all

 
timeout 10
default 0

title Puppy Linux 2.13-Frugal on hdb1
rootnoverify (hd1,0)
kernel (hd1,0)/vmlinuz root=/dev/ram0  ro vga=normal irqpoll PMEDIA=idehd
initrd (hd1,0)/initrd.gz
(the PMEDIA part is on the same line as kernel)
If this works you can experiment taking out the irqpoll part, that's just for safety.

User avatar
WhoDo
Posts: 4428
Joined: Wed 12 Jul 2006, 01:58
Location: Lake Macquarie NSW Australia

#9 Post by WhoDo »

redrum wrote:now it looks like this

Code: Select all

root (hd0,0) 
kernel /vmlinuz root=dev/hdb1
initrd /initrd.gz
You seem to be missing my point, redrum.

1. In line 2 you need root=/dev/ram0 ... the slashes and syntax are specific to your frugal install.

2. If your partition is hdb1, in line 1 you need root (hd1,0)

Please check my post again for what it should look like.

Even though you have installed the files to hdb1, when a Puppy Frugal install loads, it creates a RAMDISK (/dev/ram0) and loads Puppy there. That's why you get the different root= line in your menu.lst file; because that's where the files are by then, so that's where Puppy looks for them.

Hope that helps.

redrum
Posts: 56
Joined: Mon 02 Oct 2006, 11:16
Location: Athens , Grecce

#10 Post by redrum »

Either my english really suck and I don't understand or my linux skill suck and I don't know what I am doing .

Currently I tried the following:
root (hd1,0)
kernel /vmlinuz root=/dev/ram0
initrd /initrd.gz

About the hd1,0 ! Well gparted inside linux had my ext3 partition in hdb1 . Same in Grub which was the only place I can continue the setup. BUT if I set

Code: Select all

 root (hd1,0)  
I get

Code: Select all

  Error 21: Selected disk does not exist

So although my partition is hdb1 I have to put hd0,0 in order to get there.

At least now I can boot properly and thank you for that!!!

My last question : does root/dev/ram0 means that everything is loaded on ram ?

User avatar
Sit Heel Speak
Posts: 2595
Joined: Fri 31 Mar 2006, 03:22
Location: downwind

#11 Post by Sit Heel Speak »

??? Bizarre ??? hdb1 = (hd0,0) ??? Oh well, whatever floats your trireme...

(***EDITED later: maybe not so bizarre; it could be that redrum had the same kind of quirk in his IDE controller that I just now experienced in my (failing) own, over in the thread
http://murga-linux.com/puppy/viewtopic.php?t=14207
; or, could be simply that the Linux kernel found it regardless of where menu.lst says it is)
redrum wrote: does root/dev/ram0 means that everything is loaded on ram ?
Yes, that's the idea. It won't all load into ram, of course, if you have less ram than the size of contents of the .sfs file.

Post Reply