[[HomePage]] > [[ComponentHowTo Components and HowTos]] > [[InstallationIndex Install]] ====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.) < 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=== - install the latest available versions of [[bzip2]], [[e2fsprogs]], [[grep]], [[parted]] and [[tar]] - 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 ({{color text="WARNING" c="red"}} - 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 ({{color c="red" text="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 {[[http://www.linuxplanet.com/linuxplanet/tutorials/7208/1 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. ==={{color text="References" c="black"}}=== http://www.murga-linux.com/puppy/viewtopic.php?t=54566 http://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 //[[http://www.kernel.org/pub/linux/utils/boot/syslinux/ 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 [[http://www.smokey01.com/coolpup/syslinux.cfg 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 When making an installation to an internal H.D.D. with an existing operating system, one has the option to either allow that operating system to remain or be removed. Only remove the existing operating system if the computer is more than 3 years old since most computer manufacturers cease to provide [[http://murga-linux.com/puppy/viewtopic.php?p=483349#483349 new B.I.O.S. versions]] after that time. If the intention is to remove the existing operating system, regardless of computer age, then ensure to check for and install any B.I.O.S. updates first. If the Puppy files are to be appended, by making a //frugal installation only// of Puppy, then this would involve one of the following: - either making a //new partition// for Puppy (not recommended) - or, using an //existing partition// for Puppy (recommended) One can place a frugal installation within a pre-existing Windows installation. The save file, although itself is comprised of a Linux file-system, may reside on a F.A.T. or N.T.F.S. partition; which is why a frugal installation is also called a "co-exist" installation. A full hard disk drive installation on a F.A.T. partition is not possible because F.A.T. partitions do not support Linux symbolic links. There is an option to install from within Microsoft Windows using the relevant file from here: http://www.mediafire.com/?5ah0d0rzcz5cc ===Appendix 3 - How to run Puppy Linux from a flash memory drive on any computer already running=== http://puppylinux.org/wikka/QEMUpuppy ===Appendix 4 - Absent internal H.D.D.=== 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=== - http://www.murga-linux.com/puppy/viewtopic.php?p=514608#514608 - http://www.murga-linux.com/puppy/viewtopic.php?p=517161#517161 - http://www.murga-linux.com/puppy/viewtopic.php?p=517224#517224 ===Also see=== UsingPuppy [[InstallationFullHDD]] [[BootLoaders]] [[BootParameters]] ---- ==Categories== [[CategoryInstallation]]