Jump to content


Register a free account to unlock additional features at BleepingComputer.com
Welcome to BleepingComputer, a free community where people like yourself come together to discuss and learn how to use their computers. Using the site is easy and fun. As a guest, you can browse and view the various discussions in the forums, but can not create a new topic or reply to an existing one unless you are logged in. Other benefits of registering an account are subscribing to topics and forums, creating a blog, and having no ads shown anywhere on the site.

Click here to Register a free account now! or read our Welcome Guide to learn how to use this site.

* * * * * 2 votes

How to install Puppy Linux (frugal) and configure Grub2 bootloader

  • Please log in to reply
2 replies to this topic

#1 Al1000


  • Global Moderator
  • 7,971 posts
  • Gender:Male
  • Location:Scotland
  • Local time:08:57 AM

Posted 15 June 2015 - 04:13 PM

How to install Puppy Linux (frugal) and configure Grub2 bootloader

Guide Overview

The purpose of this guide is to teach you how to install Puppy Linux and configure Grub2 bootloader. Frugal installation is the recommended way of installing Puppy, and essentially means that Puppy is installed to a directory on a partition, rather than to an entire partition.

Advantages of frugal installations include easier back-ups, and the ability to have several frugal installations on one partition. Puppy can be installed to any partition that already contains other data, including partitions that already contain other operating systems. The other operating system will just see the Puppy installation as another directory. However, as the partition that you install Puppy on will always be mounted when you use Puppy, for security purposes you may want to install Puppy on a partition that has nothing important on it. Puppy is not a multi-user operating system, and the user has root access to all files on all mounted partitions at all times. Therefore it's a good idea to dedicate a partition to Puppy. I have a 3GiB partition on my laptop, which is more than enough space for one installation of most versions of Puppy.

If you are reading this guide, you have probably installed and are already using Linux and Grub2. Grub2 automatically detects most Linux operating systems and even Windows, but unfortunately it doesn't detect frugal installations of Puppy. Installing Puppy should be reasonably straightforward for Linux users so this guide will just cover the steps that Linux users may not be familiar with, then cover configuring Grub2 in detail.

Tools Needed
  • Computer with Linux and Grub2 already installed
  • Puppy ISO burned to CD/DVD or a bootable USB
In this guide I'll be installing Tahr Puppy 6.0CE, from a CD, to a partition on my computer's primary internal hard drive, then configuring Grub2 from an Ubuntu-based distro as a non-root user using the sudo command. Please alter any of the following instructions where appropriate in these respects.

Installing Puppy
  • Boot your computer using your live Puppy CD
  • Follow the prompts to complete the basic set-up, such as entering settings for location and time etc.
  • Open Universal Installer which you'll find in the Menu or by clicking on the "install" icon on the desktop.
  • Follow the prompts to install Puppy to the appropriate partition, selecting FRUGAL installation.
  • When you reach the step in the screenshot below, copy the name of the directory. This will come in handy later.

  • When installation has completed, select "No" when you are asked if you would like to install Grub4Dos bootloader.
  • A window titled NEWGRUBTEXT will open. Save the file before closing the window. I suggest saving it somewhere that you can easily access from your existing Linux operating system. At this point none of your partitions are mounted, so click on a desktop icon for a partition to mount it if you want to save the file to it. You can then click on the File tab in the NEWGRUBTEXT window, select Save As, and navigate to /mnt to find your mounted partition and save the file. (Puppy doesn't have a /media directory, and devices are mounted in /mnt)

  • Remove the CD from the drive and proceed to reboot your computer. When you are asked if you want to copy files to your computer, select "no," as they will already have been copied automatically during installation.
  • When you are asked if you want to create a Save File or Save Folder, choose "Save Folder (Recommended)" and follow the prompts to create the save folder on the partition that you installed Puppy on.
  • When asked to choose a folder to create the Save Folder in, type a forward slash, then paste the name of the folder that you copied earlier, into the box.
    (This step ensures that the Save Folder is created in the main Puppy folder)

When the Save Folder has been created, boot into your existing Linux installation that contains the configuration file for Grub2. If you already have multiple Linux distros installed, it will normally be the one at the top of the list in the grub boot menu.

Configuring Grub2 bootloader.
  • Navigate to the NEWGRUBTEXT file and open it. The instructions it contains are for an older version of Grub, but you will need some of the information. The menu entry for grub as it stands in the NEWGRUBTEXT file, will look something like this:

    title Puppy Linux 6.0 frugal in sda5 dir tahr6.0frugal
    rootnoverify (hd0,4)
    kernel /tahr6.0frugal/vmlinuz pmedia=atahd psubdir=tahr6.0frugal
    initrd /tahr6.0frugal/initrd.gz
  • Now navigate to /etc/grub.d/40_custom and open the file in a text editor with root permissions. To do this using nano text editor, open a terminal and type or copy and paste:
    sudo nano /etc/grub.d/40_custom
    How to edit a file using nano text editor

    Here's a sample 40_custom file:


    The first 5 lines will already be there. The entry you are about to create will look something like this:
    menuentry 'Tahr Puppy 6.0' {
    search --no-floppy --fs-uuid --set 3ffc6bc0-4379-4449-bbdf-4ae47c1cfdb5
    linux /tahr6.0frugal/vmlinuz pmedia=atahd psubdir=tahr6.0frugal
    initrd /tahr6.0frugal/initrd.gz
  • The name of the distro in first line:
    menuentry 'Tahr Puppy 6.0' {
    ...determines what Puppy will be listed as in your grub multi-boot menu. Type or copy and paste the line into your 40_custom file, as shown in my sample file. Replace Tahr Puppy 6.0 with whatever you would like your multi-boot menu to say.
  • The next line refers to the partition that Puppy is on, and designates it by its UUID.
    Type or copy and paste this code into your 40_custom file:
    search --no-floppy --fs-uuid --set
    Now you need to find the UUID of the partition. To find the UUID of the partition open another tab or window in a terminal and run this command:
    sudo blkid
    Then copy and paste the UUID of the relevant partition into the line, as shown in the sample file above.
  • In the next line, type:
    ...then copy and paste the text from the line following the word "kernel" in your NEWGRUBTEXT file, as shown in the sample file.
    (The psubdir= option means that Puppy will only search your main Puppy folder for Puppy files when it boots up)
  • In the next line, copy and paste the final line from the text in your NEWGRUBTEXT file, as shown in the sample file above.
  • In the final line, close squiggly brackets as shown in the sample file above.
  • Now save the 40_custom file and close the text editor.
  • Update the grub configuration file by running the following command in a terminal:
    sudo update-grub
    You won't see Puppy mentioned in the output in the terminal while grub is updating, but if update-grub displays any error messages in the terminal you may have made a mistake in editing the 40_custom file. Please ensure that all brackets, squiggly brackets, spacings and quotation marks are exactly as shown in the sample file above.
After updating the grub configuration file, you can reboot your computer and choose your frugal installation of Puppy from the multi-boot menu. :)

(If for any reason you subsequently delete your Puppy installation (which is simply a matter of deleting the main Puppy folder and its contents), and re-install the same version of Puppy on the same partition, there is no need to re-configure the bootloader as the entry will be the same)

Edited by Al1000, 20 November 2015 - 04:02 AM.

BC AdBot (Login to Remove)


#2 skoosh60


  • Members
  • 6 posts
  • Local time:08:57 AM

Posted 07 September 2016 - 07:07 AM

Thanks for tutorial.

#3 Mike_Walsh


    Bleepin' 'Puppy' nut..!!

  • Members
  • 1,408 posts
  • Gender:Male
  • Location:King's Lynn, UK
  • Local time:08:57 AM

Posted 08 September 2016 - 02:52 PM

Hiya, skoosh60.


Yes, Al's done a nice job with it, hasn't he? Don't forget, any probs or advice needed, there's help available in the Linux & Unix section. We've got a small but enthusiastic Puppy contingent.....who'll be more than happy to help.


I'm running 14 of the little darlings, myself.....  :lol:


Have fun, and enjoy.



Mike.  :wink:

Distros:- Multiple 'Puppies'..... and Anti-X 16.1

My Puppy BLOG ~~~  My Puppy PACKAGES

Compaq Presario SR1916UK; Athlon64 X2 3800+, 3 GB RAM, WD 500GB Caviar 'Blue', 32GB Kingspec PATA SSD, 3 TB Seagate 'Expansion' external HDD, ATI Radeon Xpress 200 graphics, Dell 15.1" pNp monitor (1024 x 768), TP-Link PCI-e USB 3.0 card, Logitech c920 HD Pro webcam, self-powered 7-port USB 2.0 hub

Dell Inspiron 1100; 2.6 GHz 400FSB P4, 1.5 GB RAM, 64GB KingSpec IDE SSD, Intel 'Extreme' graphics, 1 TB Seagate 'Expansion' external HDD, M$ HD-3000 'Lifecam'.





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users