How to fake pfix=ram boot option with USB-install

How to do things, solutions, recipes, tutorials
Post Reply
Message
Author
lilleguard-liste
Posts: 42
Joined: Thu 29 May 2008, 12:04
Location: Loppa (Norway)

How to fake pfix=ram boot option with USB-install

#1 Post by lilleguard-liste »

I boot puppy linux from a usb-stick. I have saved my personal settings in a pup_save-myname.2fs file. Sometimes I have wanted to do a fresh boot (ignoring my pup_save-file). With a live-CD I can do that by writing pfix=ram before the installation begins, but with the usb-install this isn't possible.

My solution to this has been to make an exstra .2fs file: pup_save-EMPTYFILE.2fs. Placing this in the same folder as my pup_save-myname.2fs file halts the usual boot process and gives me the option of choosing three options:
0) Boot without any personal file (fresh)
1) Boot pup_save-myname.2fs
2) Boot pup_save-EMPTYFILE.2fs

Option 0 initiates a fresh puppy install!
Perhaps anyone knows a smarter way of doing this (a secret key combination during booting which forces pfix=ram)?

User avatar
Evil20071
Posts: 489
Joined: Sat 07 Jun 2008, 19:50
Location: Piedmont, SC,.United States
Contact:

#2 Post by Evil20071 »

Not sure if this will work... try installing grub, and add an entry to the menu.lst for normal startup, and one with the boot option you want? Not sure if it'll work though. Only thing I can think up on the spot though.
[url=http://totalelectronics.us]TotalElectronics.us[/url]

User avatar
rcrsn51
Posts: 13096
Joined: Tue 05 Sep 2006, 13:50
Location: Stratford, Ontario

#3 Post by rcrsn51 »

@lilleguard-liste :

There is no secret key combination. Your technique is a clever alternative.

The Puppy Universal Installer sets up flash drives with the syslinux bootloader. It is possible to create a menu in its syslinux.cfg file. Once you figure out the syntax, you could add an entry that has "pfix=ram" on the "append" line.

User avatar
DanYHKim
Posts: 103
Joined: Mon 15 Sep 2008, 01:51

Edit your GRUB script on the fly

#4 Post by DanYHKim »

If your USB install includes GRUB, then you can set some short delay time for the menu.lst entries to be displayed. During this time, you can use the up/down arrows to highlight an entry that you want to boot with.

If you press "E", you can edit the lines of this instruction, so if GRUB normally boots Puppy and loads your puppyxx.2fs file or whatever, you can append the command "pfix=ram" in the command. Press ESC (I think) and then "B" to proceed with the boot.

Puppy will now follow the instruction you added, and load with the pfix=ram parameter. This is not a permanent change to menu.lst! Instead, it will work for this session only.

I have found this useful when I want to create a new *.2fs file and ignore the old one.

zandarian
Posts: 117
Joined: Wed 14 Oct 2009, 21:10

#5 Post by zandarian »

Yesterday I first tried my "pendrive Puppy" in different computers from usual. I noticed that they shouldn't have loaded my computer's configuration from xxxxx.2fs: the desktop showed a mixed collection of drives; the same back in my computer. And the mouse of the other computers didn't work ....

So I did like lilleguard-liste told. But I didn't find it nice because back to my computer I had to select 1 or 2 all the time ... making the bootup slower and less comfortable.

I also tried to add pfix=ram without success.

But today I've found the solution:

(Comment: I installed Puppy Linux with UNetbootin, that makes the USB memory or pendrive to boot with SYSLINUX)

In the beginning of the booting, in the UNetbootin menu, I choose Default or puppy and press tab. I delete pmedia=cd and replace it with pfix=ram . Enter and ... it's done!! When I finish and shutdown I tell the computer not to save anything. (Not to have to remember pfix=ram I've writen it on the pendrive external surface, physically, with a waterproof marker)

To make it easier (and not to have too many things written on my pendrive case) I've done this:

I've opened /mnt/home/syslinux.cfg, copied the last paragraph, pasted and edited both of them. So now these are the last 2 paragraphs:

Code: Select all

label ubnentry0

menu label puppy-saved_sessions

kernel /vmlinuz

append initrd=/initrd.gz pmedia=cd



label ubnentry1

menu label puppy-not_saved_session

kernel /vmlinuz

append initrd=/initrd.gz pfix=ram
So now, in the beginning of the booting, in the UNetbootin menu, I can choose how I want the boot to be: based in saved session(s) or fresh (just in RAM). If I choose the second option while shutting down I choose not to save the session. But if in the future I begin to use another computer frequently I may save it in another xxxxxxx.2fs .

Tip: I've copied the xxxxxxx.2fs file that I use with my computer to a folder in the pendrive, and renamed its extension. This way if by accident I boot in a different computer using the session file instead of just RAM, getting it "polluted", I can replace the spoiled file with the backuped and rename it well so I go back to normality.

Enjoy!

User avatar
scabz
Posts: 364
Joined: Thu 30 Apr 2009, 18:14
Location: Tallahassee FL US
Contact:

#6 Post by scabz »

This might be a dumb ? but have to tried "puppy pfix=ram"

with gurb it is just pfix=ram but when booting from cd or usb, when it asks you boot options type

Code: Select all

puppy pfix=ram

User avatar
technosaurus
Posts: 4853
Joined: Mon 19 May 2008, 01:24
Location: Blue Springs, MO
Contact:

#7 Post by technosaurus »

To add to this topic if you still want to load an sfs file without a save file you can simply rename it to what your zdrv sfs would be named for that puppy version. I do this with the devx so that I can ensure dependencies are minimized and tracked. (there is a pet that will let you do it dynamically now though so its not as useful as it once was)
Check out my [url=https://github.com/technosaurus]github repositories[/url]. I may eventually get around to updating my [url=http://bashismal.blogspot.com]blogspot[/url].

User avatar
scabz
Posts: 364
Joined: Thu 30 Apr 2009, 18:14
Location: Tallahassee FL US
Contact:

#8 Post by scabz »

technosaurus wrote:To add to this topic if you still want to load an sfs file without a save file you can simply rename it to what your zdrv sfs would be named for that puppy version. I do this with the devx so that I can ensure dependencies are minimized and tracked. (there is a pet that will let you do it dynamically now though so its not as useful as it once was)
hey thanks for this info, man i should of thought of that its so simple.

r__hughes
Posts: 359
Joined: Thu 13 Apr 2006, 04:14
Location: Montreal, Canada

#9 Post by r__hughes »

The zip file contains a boot_changes folder with the following
new files.

boot.msg
extlinux.conf
help.msg
logo.16

Drag & drop these onto the USB to replace the originals
You can edit the boot.msg to show the appropriate pup version (it
has 4.30 at present)

The usb now boots up with the same logo & messages as the Live CD
Attachments
usb_bootchanges.zip
(58.02 KiB) Downloaded 686 times
--- quad booting Slacko57NPAE, Slacko56NPAE, Slacko55PAE (with OO4, devx, Gimp) & WXP on DELL Dimension 2400 PC & DELL Latitude 630 Laptop using grub.
---USB-Flash booting same on Samsung N110 WXP Netbook and Lenovo q100 WXP netPC.

DemostiX
Posts: 46
Joined: Fri 24 Apr 2009, 15:17

How to fake pfix=ram boot option with USB-install

#10 Post by DemostiX »

Thank you so much r_hughes. I'd asked for this in other, and maybe the wrong way, because it was obvious that if the splash screen and options were right for OS loading from CD, then they should be immediately available from the USB flash drive, without complications of a boot loader etc.

(I could digress to explain to non-virgins here, that there are probably lots of us who went through the trauma of faulty early Ubuntu installers of grub which lied to us about how our hdds would be treated. We'll evermore be tentative about it. )

Hope the Universal Installer will evermore restore this capability, and that puplet developers will also.

zandarian
Posts: 117
Joined: Wed 14 Oct 2009, 21:10

#11 Post by zandarian »

I've installed the last Puppy, 4.3.1, in a pendrive of mine, this time without UNetbootin. This is how I've put syslinux.cfg to be able to choose between using saved session(s) or booting fresh:

Code: Select all

default 1sessions
say -
say If no key is pressed in 5 seconds boot begins taking saved sessions into account
say -
prompt 1
timeout 50

label 1sessions
say 1sessions
kernel vmlinuz
append initrd=initrd.gz pmedia=cd

label 2fresh
say 2fresh
kernel vmlinuz
append initrd=initrd.gz pfix=ram
say -
This way no boot.msg , help.msg nor logo.16 files are needed. They can be deleted. More info in http://murga-linux.com/puppy/viewtopic.php?t=48484

fyujj
Posts: 102
Joined: Sat 04 Apr 2009, 17:40

#12 Post by fyujj »

**Updating**
Quirky 1.2 has a simple one-line syslinux.cfg

Code: Select all

default vmlinuz initrd=initrd.gz pmedia=usbflash
To append pfix=ram on-the-fly, one just needs to press the Shift key when booting the flashdrive and syslinux will go to a "boot:" prompt, then type

Code: Select all

vmlinuz initrd=initrd.gz pmedia=usbflash pfix=ram
(Alt key, Caps Lock and Scroll Lock also can be used, as detailed in Syslinux's wiki)

Then when one has more than one pup_save file in the flashdrive Puppy will automatically offer the option to boot with no pup_save loaded.

Post Reply