Revision [20024]
This is an old revision of InstallationFrugal made by coolpup on 2011-12-30 19:46:56.
How to make a frugal Puppy installation
A frugal Puppy installation is performed by extracting the contents of the container file (either ISO or ZIP) to normally one, i.e. the same, directory residing optimally on an EXT4 formatted partition. Let that desired partition be known as the target partition since one is aiming to install to it. That partition may be located on:
- either an external device, e.g. U.S.B. flash memory drive (U.F.D.) (often erroneously referred to as a memory stick) or S.D. flash memory card
- or, an internal device, usually a hard disk drive (H.D.D.)
WARNING: If the target partition contains any important files copy them elsewhere if required, because they will be destroyed when the target partition is formated.
The target device is the device which contains the partition that one aims to install to, such as an external flash memory drive or an internal hard disk drive. Such a device must have a partition with a minimum storage capacity of 256MB.
The following procedure assumes that one is running Puppy Linux. However, the same procedure is followed with any running Linux distribution. If one is running Microsoft Windows go to Appendix 1 below.
Step 1 - Installing a boot-loader to the target device
A. Using SYSLINUX for EXT4 file-systems
- install the latest available version of SYSLINUX
- install the boot code to the M.B.R. of the target device X:
/bin/dd bs=446 conv=notrunc count=1 if=/usr/lib/syslinux/mbr.bin of=/dev/sdX
- install the boot system file ldlinux.sys to the target partition XY, ensuring that it is mounted first:
/bin/mount /dev/sdXY /mnt/sdXY && /bin/mkdir -p /mnt/sdXY/extlinux && /sbin/extlinux -i --stupid /mnt/sdXY/extlinux
- install the boot configuration file syslinux.cfg by placing it on the target device (this will need editing if more than one Puppy version was installed)
- follow the additional instructions in Appendix 3 at LiveDVD
- if there is already an existing Puppy installation re-boot the computer with the flash memory device connected; if there is no existing Puppy installation then either both steps 2 and 3 or just step 3 (if any existing file-system is to be retained) must be performed before re-booting the computer with the flash memory device connected
B. Using SYSLINUX for FAT32 file-systems
- install the latest available version of SYSLINUX
- install the boot code to the M.B.R. of the target device X:
/bin/dd bs=446 conv=notrunc count=1 if=/usr/lib/syslinux/mbr.bin of=/dev/sdX
- install the boot system file ldlinux.sys to the target partition XY:
/usr/bin/syslinux -i --stupid /dev/sdXY
- install the boot configuration file syslinux.cfg by placing it on the target device (this will need editing if more than one Puppy version was installed)
- follow the additional instructions in Appendix 3 at LiveDVD
- if there is already an existing Puppy installation re-boot the computer with the flash memory device connected; if there is no existing Puppy installation then either both steps 2 and 3 or just step 3 (if any existing file-system is to be retained) must be performed before re-booting the computer with the flash memory device connected
C. Using GRUBforDOS for all common file-systems
- install the latest available version of helper program Grub4DosConfig
- install the boot code to the M.B.R. of the target device X:
bootlace.com --time-out=0 /dev/sdX
- install the boot system file grldr by placing it on the target device
- install the boot configuration file menu.lst, or update an existing one, by using Grub4DosConfig: Menu > System > Grub4Dos
- follow the additional instructions in Appendix 3 at LiveDVD
- if there is already an existing Puppy installation re-boot the computer with the flash memory device connected; if there is no existing Puppy installation then either both steps 2 and 3 or just step 3 (if any existing file-system is to be retained) must be performed before re-booting the computer with the flash memory device connected
Step 2 - Creating a partition and file-system on the target device
- determine the correct device name of the target device to work on, via the command-line interface:
probedisk2
- ensure to dismount the target device:
umount /dev/sdX
- (optional) create a new partition table (disklabel) on the target device X (WARNING - access to all existing files on the target device will be lost):
/usr/sbin/parted /dev/sdX mklabel msdos && /usr/sbin/parted -l print
- (optional) create a partition(s) or, delete or resize an existing one on the target device X: Menu > System > GParted > Partition:
/usr/sbin/parted /dev/sdX mkpart primary ext4 0% 100% && /usr/sbin/parted /dev/sdX print && /usr/sbin/parted /dev/sdX align-check opt 1
- (optional) create the required file-system (formatting) on the partition(s) of the target device X (WARNING - all data on the target partition will be over-written (destroyed)): Menu > System > GParted > Partition > Format to
select EXT4 for all partitions if possible {fastest file-system for flash memory devices}
/sbin/mkfs -m 0 -L PUPPY -O extents,uninit_bg,dir_index,filetype,has_journal,sparse_super -T ext4 /dev/sdXY
then optionally select FAT32 for another partition for sharing the device with non-Linux devices {requires dosfstools}
/usr/sbin/mkdosfs -v -n PUPPY -F 32 /dev/sdXY
- ensure the boot flag status of the device is set to on via Menu > System > GParted > Partition > Manage Flags > boot or via the command-line interface, e.g for partition 1 of device X
/usr/sbin/parted /dev/sdX set 1 boot on
Step 3 - Installing Puppy to the target device
- mount the target device
- mount the Puppy ISO (or ZIP) file by clicking on it
- copy from the ISO (or ZIP) directory to the target device either all the files, or, just these essential ones: vmlinuz, initrd.gz, and all those with the extension .sfs (if more than one Puppy version is to be installed ensure that they are each contained within their own directory)
Step 4 - Creating the storage file
When shutting down for the first time there will be the option to create a personal storage (pupsave) file which must be chosen if personal settings and configuration are to be kept.References
http://www.murga-linux.com/puppy/viewtopic.php?t=54566http://www.murga-linux.com/puppy/viewtopic.php?t=46129
http://www.puppylinux.org/main/index.php?file=Manual-English05.txt
http://aronzak.wordpress.com/2008/10/07/usb-linux-howto-puppy-41/
http://www.murga-linux.com/puppy/viewtopic.php?t=54826
http://www.pendrivelinux.com/put-lucid-puppy-on-usb-flash-drive-from-windows/#more-4392 (see next reference also)
http://murga-linux.com/puppy/viewtopic.php?p=458818#458818
http://www.murga-linux.com/puppy/viewtopic.php?t=54360
http://www.murga-linux.com/puppy/viewtopic.php?t=43203
http://www.murga-linux.com/puppy/viewtopic.php?t=37368
http://www.puppylinux.com/flash-puppy.htm
Appendix 1 - Installation to any external device, from within Microsoft Windows
- Format the drive or partition to FAT32
- Download and extract the latest syslinux .zip file to the C drive, i.e. C:\syslinux
- Then go to directory C:\syslinux\win32\:
cd C:\syslinux\win32\
- Then, with administrator privileges, run the syslinux command to make the target drive bootable: (where X is the drive letter for the target drive or partition)
syslinux.exe -m -a X:
- Open the Puppy ISO (or ZIP) file to view its contents, using e.g. 7-zip, (it is important that the original file names be kept)
- Copy to the target device the files: vmlinuz, initrd.gz, and all those with the extensions .sfs
- Download this sample boot-loader configuration file syslinux.cfg and place it on the target device
- Re-boot the computer with the flash memory device connected
Appendix 2 - Installation to any Microsoft Windows partition and using GRUBforDOS as boot-loader
Installing the boot-loader to the internal hard disk drive (where Microsoft Windows resides)http://www.icpug.org.uk/national/linnwin/step1-xp.htm
http://puppy.b0x.me/lin-n-win
Installing the boot-loader to an external drive
http://shino.pos.to/linux/lupq/puppydualboot.html
Appendix 3 - How to run Puppy Linux from a flash memory drive on any computer already running
http://puppylinux.org/wikka/QEMUpuppyAppendix 4
Some old Puppy versions will not boot from U.F.D. if the internal H.D.D. has been removed:Posted on 23 Apr 2011, 22:54 by perthie USB Install Issue? I notice that you still haven't commented on this issue. A machine missing an internal hard drive can no longer be booted from a flash drive. The new search procedure fails to find the sfs file on the flash drive. Posted on 24 Apr 2011, 8:20 by BarryK Re no boot usb I have written it down in my to-do list.
http://bkhome.org/blog/?viewDetailed=02001
http://bkhome.org/blog/?viewDetailed=02231
Appendix 5 - How to boot from a flash memory drive without B.I.O.S. support
Also see
UsingPuppyInstallationFullHDD
BootLoaders
BootParameters