Diskless booting Puppy from a Router (PXE, WRT, DHCP)

What features/apps/bugfixes needed in a future Puppy
Post Reply
Message
Author
woodeye18
Posts: 16
Joined: Sat 01 Oct 2005, 15:59
Location: Southern California
Contact:

Diskless booting Puppy from a Router (PXE, WRT, DHCP)

#1 Post by woodeye18 »

I have been looking into the Open WRT project which includes numerous Linux mods to mostly the Linksys WRT54G router that adds enhancements to the existing firmware.

Would it be possible to load a small bootstrap PXE server that could serve up the Puppy kernel, redirect to a TFTP server for usrcram and bascially serve as a Network boot on the router.

If the client did not have PXE, there are programs that can flash almost any old bios to make it a network bootable client.

I like the idea of avoiding a constantly running PC server, but having the router there to serve up a central copy of Puppy to any diskless PC client.

User avatar
sunburnt
Posts: 5090
Joined: Wed 08 Jun 2005, 23:11
Location: Arizona, U.S.A.

#2 Post by sunburnt »

Hi woodeye18; That's almost like what I'd like, one of these NAS (network attached storage) devices to PXE serve Linux.
Unfortunately most of the commercial NAS units are too expensive, limited, & not new firmware frendly.

I kind of understand what your talking about, but if it redirects to another server why not just have it do the job?
Also, even simpler setup of nonPXE client PCs can be done with an EtherBoot floppy disk.
If the router could be fitted with approx. 4 to 8 MB of storage (flash card, etc.) then that would be enough to hold the Puppy kernel & the gzipped root file system image which is sent by tftp to the client PC.
This sounds like a hassle as the squash file has to be NFS or Samba mounted to complete the picture.
there seems to be little advantage to messing with the router when you need NAS anyway, just run a server.
But if the router could be fitted with approx. 128 MB of flash it'd do most Puppy versions, but no "more" files.

I've been working on my Puppy project LanPuppy for some time now, & I think I've finally ironed out all the bugs (knock on wood).
It uses Puppy 1 for a Samba & PXE boot server & hopefully will serve most Puppy 1 versions to PXE boot client PCs.
Being a Samba server has the added advantage of centralized server resources being available to Win. PCs also.
I've looked at Barry's boot code for Puppy 2 & the client boot code I've developed won't work for it the way it is.
Also I don't know if jmarsden's Samba server dotpup package that's hosted by MU will work on Puppy 2.

woodeye18
Posts: 16
Joined: Sat 01 Oct 2005, 15:59
Location: Southern California
Contact:

#3 Post by woodeye18 »

Sunburnt,

You are right, some of these NAS devices can be spendy. I know the new Terabyte box can PXE boot, has wifi, and 1.6 Tb, but its $700, before loading up on drives.

I was aiming a bit cheaper. I have been considering devices like the Linksys WRTSL54GS which is just under $100. http://www.ehomeupgrade.com/entry/1544/ ... ek_linksys

It is a regular Linksys WRT Router with a USB port that allows you to plug in USB Hard drive(s) or a thumb drive. It has 16Mb storage and I have read that some have used open source firmwares like OpenWRT/White Russian firmware ( http://forum.openwrt.org/viewtopic.php?id=3529&p=7 )
and HyperWRT Thibor ( http://www.thibor.co.uk/ ) to flash the Router and then set it up to automount the USB drive. It doesn't say explicitly that you can PXE boot off of it, but I imagine if its a recent version of DHCP, it must. So I was thinking of using their Linux OS(firmware) on the router/server to then send the puppy boot image to the clients.

I agree floppies would be simpler for the clients. With most post 2001 having WOL and Lan booting standard, I imagine that won't be a problem soon. I mentioned the flashing the BIOS of the clients, cause I am hoping to see a system that minimizes as much moving parts, fans, energy consumption and also end user's ability to fiddle. As you mentioned central admin is a nice benefit.

If the $99 Linksys router could boot and automount a USB drive, I imagine you could setup the router's boot server to send the PXE client the kernel, etc. off of the automounted USB drive on the router.

I like the idea of not running a PC server 24/7. It would be nice to update subsequent versions of Puppy at the central server point, leaving users personal settings intact, and their personal files on a 2Gb thumbdrive centrally located on the back of the router. If they want large media files, then store them using online storage on the internet and cache them on the server.

I read a bit today about your LANpuppy and I am hoping to try it out. If I can send any links your way that I run across on this router or whatever, let me know.

User avatar
sunburnt
Posts: 5090
Joined: Wed 08 Jun 2005, 23:11
Location: Arizona, U.S.A.

#4 Post by sunburnt »

The router having USB definitely has potental, the separate parts are an undesirable mess though.
I can't help but think of my Iomega par. Zip drive, I hated having an external drive & wanted an internal one.
However if the modem, router, & USB H.D. are in a closet somewhere then it wouldn't make much difference.

Cost of a USB box is ~ $30 & a 300GB HD (best cost per GB) is only $90, total cost is only $120 + tax!
300GB is even enough space for alot of media files to be served up to the client PCs.

www.tomshardware.com (a good site) had an article about a $90 LinkSys (I think) NAS with only a 40GB HD.
I assumed that the 40GB HD could be replaced with a bigger one, the article hacked the firmware to Linux.

The LinkSys router will be expensive (my D-Link cost $25), also on tomshardware was a review of NAS.
It showed another NAS device ~$160 that mounted 2 HDs & the firmware was already some Linux distro.

I've suggested an embedded Puppy before, most effort is put to it's desktop development of course.
To do the job of boot server & file server (not an application server) only a 200mhz Pentium PC is needed.
I prefer the idea of "network appliances" like we're talking about, smaller, simpler, cheaper, & less energy.

LanPuppy is done I beleave, I'm still working on the utility to convert Puppy 1.0.x versions to LanPups.
Once that's done I'll turn my attention to making the utility work to convert Puppy 2 versions to LanPups.
As I'd said, the needed parts to make Puppy 2 into a LanPuppy server aren't available at this time.
Fortunately the server is really just an incidental part, an appliance to service the rest of the system.
Any PXE server can serve any OS, even Win., just so the client PCs are PXE boot compliant.
The point of the whole setup is the client PCs & their applications & capabilites.

I don't like modifing stuff much, & I hate cobbled together packages or systems, too much to go wrong.
With LanPuppy I wanted it to be like any other Puppy version, just copy 3 files to the HD & set to boot.
For the testing phase I think I'll post the PXE boot files (DHCP3, Xinet, Tftp-hpa) & the converter util.
Prospective testers will have to download EmptyCrust Puppy 1.0.7 & install Samba server & the PXE package.
Then they'll have to select a Puppy 1.0.x version, & convert it to a LanPup client & install (copy) it.
File posting size here is limited, so this will allow testing & the full release can be hosted elsewere.
The converter util. works, I need to test a number of Puppy versions, some booted but didn't work fully.
I don't know if this was a problem with my util. (I can't see how) or if the Puppy version had problems.
All the util. does is copy the 3 Samba mount files to /sbin & replace /etc/rc.d/sysinit with my version.
Chubby Puppy booted with no errors, but the OpenOffice apps. wouldn't start, some other apps. worked.
I'm going to try MUs megapup "more" file which has OpenOffice & if it'll work then Chubby won't matter.

marksouth2000
Posts: 622
Joined: Wed 05 Apr 2006, 20:43

#5 Post by marksouth2000 »

When it comes to Network Attached Storage, the cheapest solution (assuming you have an old machine lying around) is to use FreeNAS: http://www.freenas.org/

Far more configurable than most proprietary boxes.

User avatar
sunburnt
Posts: 5090
Joined: Wed 08 Jun 2005, 23:11
Location: Arizona, U.S.A.

#6 Post by sunburnt »

marksouth2000; Is it PXE boot server ready or capable, or can DHCP & TFTP be added on to it?
This is the problem with almost all NAS / router / other type devices is they aren't upgradeable.
In this age of network attached appliances & access terminals, it's a shame they aren't capable.

marksouth2000
Posts: 622
Joined: Wed 05 Apr 2006, 20:43

#7 Post by marksouth2000 »

Sunburnt, FreeNAS is open source free/libre free/gratis software, you can do anything you want with it, including writing to the authors and asking them to put something in to the next version. They are sharp people who enjoy building FreeNAS. Read the docs and email them with any remaining questions. Really.

woodeye18
Posts: 16
Joined: Sat 01 Oct 2005, 15:59
Location: Southern California
Contact:

#8 Post by woodeye18 »

Sunburnt, I think the NAS device you are refering to is the NSLU2 which is a very popular device to mod with alternative linux firmwares.

http://www.nslu2-linux.org/

It has the benefit of being a network storage device but needs to be plugged into a router so, in essence, it has the multiple plugged in devices that you are trying to avoid.

There are projects like ASTLinux http://www.astlinux.com/ that is a PBX on a thumbdrive that has a PXE boot server built into it. They have instructions to load it on a CF card on a Soekris net4801, but that I'm sure is more trouble than its worth for your purposes.

I see what you mean about plugging stuff into a router being a hassle. That's why I thought that WRT with a Thumbdrive in the back seemed the least chance of "Entaglement". I hate the rats nest of cables. Also, as we mentioned before, avoiding moving parts and fans and stuff would be a big plus.

Maybe I can test one of your 1.x versions when the time comes. Sounds cool. If you need online ftp for it, I know some sites that have linkable ftp up to 30mbs. They have limits on traffic, but its free if you expect low trafiic.

Woodeye
woodeye18@yahoo.com

User avatar
sunburnt
Posts: 5090
Joined: Wed 08 Jun 2005, 23:11
Location: Arizona, U.S.A.

#9 Post by sunburnt »

marksouth2000; Thanks, I have a few projects in mind to make variants of LanPuppy.
A smaller server's one of them, so I'll definately have a further look at FreeNAS.
I actually downloaded sometime back, but never did anything with it because of the lack of PXE.

woodeye18; I was reading on cable modem setups as I was having trouble, this is what I found.
Ideally the main cable into the house is split in two at the box, one leg is for the modem & the other everything else.
Ideally the modem would be right there in the cable access box as close as possable to the splitter.
So it'd be a good spot to put the router also, as the network will spread out all over the house typically.
Though the router could be anywhere as the ether network doesn't have the signal loss of the cable.
This being the case, the router would be separate from the NAS / server in most setups.
Though as I thought when I bought the Motorola modem, that it'd been nice if it had the router in it.
That would REALLY make sense to combine the two of them together!

woodeye18
Posts: 16
Joined: Sat 01 Oct 2005, 15:59
Location: Southern California
Contact:

#10 Post by woodeye18 »

That would be convenient to keep the router in the box with the Modem. Unfortunately I have to keep mine centrally located for wireless for the kids. As we were talking about having additional storage on the Linksys WRT, I saw a mod that you can add a SD card to an existing WRT router and then easily store the Puppy image on it for boot serving it to PXE clients. Link is below:

http://kiel.kool.dk/

User avatar
sunburnt
Posts: 5090
Joined: Wed 08 Jun 2005, 23:11
Location: Arizona, U.S.A.

#11 Post by sunburnt »

Interesting, the pix shows a 16MB card but there's no mention how big a card can be used.
512MB would allow Puppy, MeagPup file, & devx files to be served complete by the router.

Wanting a central repository for apps., docs, media, downloads, etc. means HDs. It makes the most sense for that setup to have the PXE in the NAS (PC server) unit.

Lots of setups don't need NAS storage, then one of the other units in the network fills the job of boot server.

Post Reply