| Author |
Message |
doveman
Joined: 11 Aug 2012 Posts: 12
|
Posted: Sat 11 Aug 2012, 12:08 Post subject:
Booting with grub4dos |
|
I've managed to boot Lucid Puppy and Wary Puppy from grub4dos by extracting the vmlinuz, initrd.gz and .sfs files from each ISO, renaming the vmlinuz and initrd.gz files and using the following entries in menu.lst.
| Code: | title Lucid Puppy
find --set-root /vmlinuz-lu
kernel /vmlinuz-lu pmedia=sda1
initrd /initrd-lu.gz
title Wary Puppy
find --set-root /vmlinuz-wa
kernel /vmlinuz-wa pmedia=sda1
initrd /initrd-wa.gz |
I just want to check that's sufficient or whether there needs to be other options on the kernel line to make certain functionality work. Will the saved settings load like this (I understand if there's more than one set it shows a menu but assuming there's only one set will that load OK like this?)
|
|
Back to top
|
|
 |
don570

Joined: 10 Mar 2010 Posts: 2476 Location: Ontario
|
Posted: Sat 11 Aug 2012, 15:46 Post subject:
|
|
Did you read THIS PAGE?
It's always handy to have a GRUB entry that has the kernel option
pfix=ram because then you can test software on a Puppy
that is guaranteed 'fresh' i.e. nobody else has installed extra libraries.
__________________________________________
|
|
Back to top
|
|
 |
rcrsn51

Joined: 05 Sep 2006 Posts: 7758 Location: Stratford, Ontario
|
Posted: Sat 11 Aug 2012, 19:54 Post subject:
Re: Booting with grub4dos |
|
| doveman wrote: | | Code: | title Lucid Puppy
find --set-root /vmlinuz-lu
kernel /vmlinuz-lu pmedia=sda1
initrd /initrd-lu.gz |
|
"pmedia=sda1" is not a valid argument. This would be better.
| Code: | title Lucid Puppy
find --set-root /vmlinuz-lu
kernel /vmlinuz-lu pmedia=atahd pdev1=sda1
initrd /initrd-lu.gz |
|
|
Back to top
|
|
 |
doveman
Joined: 11 Aug 2012 Posts: 12
|
Posted: Sun 12 Aug 2012, 10:48 Post subject:
|
|
| don570 wrote: | Did you read THIS PAGE?
It's always handy to have a GRUB entry that has the kernel option
pfix=ram because then you can test software on a Puppy
that is guaranteed 'fresh' i.e. nobody else has installed extra libraries.
__________________________________________ |
I did thanks but it doesn't explain what any of the options "pmedia= pdev1= psubdir= pfix=(fsck,nox,ram,copy)" are for.
I've found this page now which does explain most of them, apart from pfix=fsck,nox (although I found a thread which explains nox prevents xwin loading) http://puppylinux.org/wikka/BootParametersPuppy
It seems that pfix=copy is the default as it seems to load the sfs into RAM without any pfix= parameters.
|
|
Back to top
|
|
 |
doveman
Joined: 11 Aug 2012 Posts: 12
|
Posted: Sun 12 Aug 2012, 10:50 Post subject:
Re: Booting with grub4dos |
|
| rcrsn51 wrote: |
"pmedia=sda1" is not a valid argument. This would be better.
| Code: | title Lucid Puppy
find --set-root /vmlinuz-lu
kernel /vmlinuz-lu pmedia=atahd pdev1=sda1
initrd /initrd-lu.gz |
|
Ah thanks. Strange it seems to work (maybe it's just ignoring the pmedia setting and defaulting to atahd and assuming pdev1=sda1 as that's the drive it's booting from) but I'll tidy it up to be correct.
|
|
Back to top
|
|
 |
rcrsn51

Joined: 05 Sep 2006 Posts: 7758 Location: Stratford, Ontario
|
Posted: Sun 12 Aug 2012, 11:04 Post subject:
Re: Booting with grub4dos |
|
| doveman wrote: | | Strange it seems to work (maybe it's just ignoring the pmedia setting and defaulting to atahd and assuming pdev1=sda1 as that's the drive it's booting from) |
Puppy will just ignore any arguments that it doesn't recognize and go through its default search procedure.
|
|
Back to top
|
|
 |
rcrsn51

Joined: 05 Sep 2006 Posts: 7758 Location: Stratford, Ontario
|
Posted: Sun 12 Aug 2012, 11:44 Post subject:
|
|
| doveman wrote: | | It seems that pfix=copy is the default as it seems to load the sfs into RAM without any pfix= parameters. |
Actually, it's the opposite. If you don't specifiy a pfix=copy/nocopy parameter, the default behaviour is to NOT copy the main sfs file into RAM.
You can verify this by trying both options. Watch the initial boot messages and check the "free" command.
Note that this does not apply if you are running off a slow medium like the Live CD or a flash drive.
|
|
Back to top
|
|
 |
doveman
Joined: 11 Aug 2012 Posts: 12
|
Posted: Mon 13 Aug 2012, 13:22 Post subject:
|
|
| rcrsn51 wrote: | Actually, it's the opposite. If you don't specifiy a pfix=copy/nocopy parameter, the default behaviour is to NOT copy the main sfs file into RAM.
You can verify this by trying both options. Watch the initial boot messages and check the "free" command.
Note that this does not apply if you are running off a slow medium like the Live CD or a flash drive. |
Ah OK, thanks. I'm pretty sure it did load it into RAM, but maybe it was because I was booting in Virtualbox with a vmdk pointing to the CF and that made it think it was booting off a slow medium.
|
|
Back to top
|
|
 |
doveman
Joined: 11 Aug 2012 Posts: 12
|
Posted: Tue 14 Aug 2012, 21:54 Post subject:
|
|
I tested booting off both a HDD and a CF card and with both it seems to load the sfs file into RAM, despite the absence of any pfix parameter.
I also can't seem to get it to save the config. It appears to go through the process when shutting down, but I can't seem to find the file anywhere and the setup wizard still runs again next time I boot. Is it perhaps not possible to save the config when the sfs is loaded into RAM? The partitions on the HDD or CF don't seem to be mounted until I click on their icons that appear bottom left but I think I tried saving the config after I'd mounted at least some of them and it still failed to create the file.
|
|
Back to top
|
|
 |
rcrsn51

Joined: 05 Sep 2006 Posts: 7758 Location: Stratford, Ontario
|
Posted: Tue 14 Aug 2012, 23:14 Post subject:
|
|
If you have never created a savefile, you are working in PUPMODE=5. So different rules apply for loading the main sfs file.
Your inability to create a savefile is a separate issue. Are you still working in Virtualbox?
|
|
Back to top
|
|
 |
doveman
Joined: 11 Aug 2012 Posts: 12
|
Posted: Tue 14 Aug 2012, 23:18 Post subject:
|
|
Ah, I see.
No, I was booting on a real machine (HP VL400) this time, first from HDD and then from CF card (which is what I'll be using exclusively in the end and disconnecting the HDD. I did test with only the CF card connected to reduce the number of partitions it could save the file to).
|
|
Back to top
|
|
 |
rcrsn51

Joined: 05 Sep 2006 Posts: 7758 Location: Stratford, Ontario
|
Posted: Tue 14 Aug 2012, 23:21 Post subject:
|
|
In your menu.lst, omit the "pmedia" and "pdev1" arguments. Let Puppy find everything on its own.
|
|
Back to top
|
|
 |
doveman
Joined: 11 Aug 2012 Posts: 12
|
Posted: Wed 15 Aug 2012, 07:45 Post subject:
|
|
OK, I'll try that thanks.
|
|
Back to top
|
|
 |
doveman
Joined: 11 Aug 2012 Posts: 12
|
Posted: Mon 20 Aug 2012, 14:05 Post subject:
|
|
Thanks, that did the trick. When it came to saving it offered me a choice of sda1 or sda2 (my CF is divided into two partitions) which I don't think it did before. It does still say "copying to ram" for the sfs even with no parameters though.
There's another wierd issue though. I have the initrd, vmlinuz and sfs all in the root of sda1 but when booting it seems to have trouble finding the sfs and shows "searching deeper, sub-sub folders" before finding it. If I have the HDD connected as well as the CF card, it searches the HDD first as well, making it take even longer.
|
|
Back to top
|
|
 |
Bruce B

Joined: 18 May 2005 Posts: 10818 Location: The Peoples Republic of California
|
Posted: Mon 20 Aug 2012, 15:21 Post subject:
|
|
| doveman wrote: | | There's another wierd issue though. I have the initrd, vmlinuz and sfs all in the root of sda1 but when booting it seems to have trouble finding the sfs and shows "searching deeper, sub-sub folders" before finding it. If I have the HDD connected as well as the CF card, it searches the HDD first as well, making it take even longer. |
Hi,
Everything above and many other things can be understood by reading the file init inside initrd.gz (another subject altogether).
I think the basic programming logic here is to search the faster media first for Puppy parts. This search can be avoided by specifying on the kernel line where Puppy should look for all its parts.
Here is an example of the revelant portions of my kernel line.
kernel (hd0,1)/520/vmlinuz ro pmedia=atahd psubdir=520 pfix=nocopy,fsck pdev1=sda2
Your locations and other specifics will vary.
By providing all this information to Puppy it doesn't search because it it has been told where to find things.
FYI the 'p*' parameters used on the kernel line are Puppy specific and have no meaning to the Linux kernel.
~
_________________ New! Puppy Linux Links Page
|
|
Back to top
|
|
 |
|