Puppy Grub2 boot menu and Atom netbook

I have an Asus Atom netbook/tablet



Nice right? It has multi touch screen and windows 7 Home Premium so the multi touch screen actually works.

So, why install Linux? well, it work so slow on Windows 7

I wanted a Windows 7 tablet because that way I can install some software that we use at work that only runs on Windows, but it is so slow, that we don’t use the netbook. So finally I decided to put some new life into it and install Linux Mint 11.

Now, Linux Mint 11 works great, even the touch screen works. Not the multi-touch, and it is not perfect yet. The mouse pointer for example does not follow the screen, but at least the netbook is still useful. I even got Onboard (screen keyboard) working

Ubuntu with Unity on the other hand would have been better since the screen is made for tablet, but it would not install (problems with the Intel video drivers).

So, here comes Puppy. It works awesome. It runs fast. It does not work with touch screen except for the click itself, so it is not for tablets. What it does do, and does it really well is run fast. It boots up quick, it shuts down even quicker, so I don’t even need to put the netbook to sleep. I can just shut it down.

What I wanted was a quick Linux distro to browse the web, after all the network cannot do much more than that. I could run Puppy from a USB, or SD card, and have a persistent state since it was designed for that, but I don’t carry either with this netbook, and since it only takes about 500 MB (even less, but I installed more pets) I wanted in the hard drive (SSD drive), so I did a frugal install.

Unfortunately the frugal install has instructions for Grub, which is almost not used anymore.

Well, Grub2 I found out is actually easier to configure.

Simply go to /etc/grub.d/

in here you will see several files. These are the grub2 config files. Grub will load them in alphabetical order, starting with 00_header and so on. But the file we want to change is 40_custom, so open that file

$ sudo nano /etc/grub.d/40_custom

Add at the end

menuentry “Puppy 528 frugal on sda5” {

set root=(hd0,5)

linux /puppy528/vmlinuz psubdir=puppy528

initrd /puppy528/initrd.gz



That is all.

Of course, the menuentry is the name you want to give it in the boot menu. I like to put the version number and the drive it is booting from.

set root sets the hard drive that puppy is booting from. In grub2, the drives match now. sda5 is the fifth partition on the first drive drive. hd0 would be the first drive, and the ,5 is the fifth partition. So, if you installed puppy to sda3 it would be hd0,3, If installed in sdb2 it would be hd1,2.

The next 2 lines are the locations of vmlinuz and initrd.gz The one trick is the psubdir entry. I didn’t add it first and puppy wasn’t booting. But try it first without it

Remember to close the entry using } (you opened { after the menu entry)

The EOF (end of File) is also very important. Even if you have everything else right it will now boot without it


NOTE: This is an old post that I worked on a while ago. I now have Bodhi Linux in the netbook, which runs great, but I need to switch sessions to see the login screen (ctrl+alt+F1 and then ctrl+alt+f7 to go back to GUI)


If you would like to comment, please refer to which section of the article you liked so I know you are not a spammer. Too many out there :)

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s