Episode: 1034 Title: HPR1034: PXE Boot Source: https://hub.hackerpublicradio.org/ccdn.php?filename=/eps/hpr1034/hpr1034.mp3 Transcribed: 2025-10-17 17:42:59 --- . Hello everyone, my name is Ken Phalan, and you're listening to another episode of Hacker Public Radio. Today, I want to give you a little rundown on a project that I've been working on for a while. I want to have a system in the house like a picture book frame type system, and I recently upgraded my monitor to a widescreen monitor because I have a widescreen monitor and mark them when I'm working from home. It's rather annoying having a 17-inch monitor, so I got a 32-inch monitor, quite nice. So that left me with a nice 17-inch monitor, which actually caused more than a new monitor that I had, and that gave me the option to have it around the house. And do something with it. Now like most of you, I guess, we have a lot of PCs, nothing around the place, and I was particularly looking for something that I could connect up to this monitor to use as a sort of picture frame and information booth here in the house. The idea would be that I'd have something that would show me if there was any train delays at the station, show what the weather outside was, and perhaps upcoming events and emails, something like that. Something like a Chombie, I suppose, but more custom tailored to what I wanted to do. And it's also, I have mounted next to the kitchen table so that I can swing it. I've it on the Babel arm, which I got on extreme deals. It was something like 10, 15 euros, about, I guess, under $20. And it mounts there, and you can just swing it out of the way, nice and easy. So I have a mount there, and it would be nice if my wife's using the main PC in the house rather than having to take out the laptop, to secure shell into something, or get on an IRC or whatever, that I would have that option. Also I wanted to be able to do some lightweight, stream some video to it, and basically some lightweight internet tasks, some email and that sort of thing. Now one of the options I had here was to run some of the old PCs, but the issue with those is that they make quite a lot of noise, so I was looking for something really quiet. A long time ago I had bought a via M9000 motherboard and a small form factor PC, about the size of a large book, I guess. And to be honest, it has been a disappointment from the work go. Everything that I've tried to do with it has been a miserable failure. The board overheats, there is not enough ventilation in there when I added more ventilation. It's just been a bad look after a bad look after a bad look the whole time, so it's been a complete waste. I tried to recycle it for this project again, and I can get it to boost the hard disk to work again. It was still even though I had purchased a silent fan for it to assist in the cooling, because passive cooling was not enough despite what I was saying on my brochures. You could still hear it in the living room, and that's something that I don't want. So, some time ago I was donated a small HP tin headless terminal window CE. It's got a HP compact T5000, and that is genuinely a silent PC. There's no fans, no moving parts, it's big heat sinks, but the heat sinks are designed to allow airflow from the bottom through the machine up. And I've turned it on and ran it for days without any issue. It's got half a giga-gram and 500 megs of disk space enough to store windows CE, which of course has gone. I ran into some issues obviously with this machine because it's designed for a particular purpose, and I have other plans in mind for it. One of the main things that I ran into an issue with was with installing grub. The system itself allows you to boot from USB, so you can install a system on there and install grub onto the main hard disk. But it's ran into several issues where you got into a catch 22 situation that's grub wouldn't install. So then you needed to add another USB disk in order to get to it, and you couldn't boot because it was booting off the internal drive. So I needed a way to boot the system without having to use either the internal drive or the attached USB storage. And this is where something like boot and pixie boot comes in to play. I'll give you some links in the show notes to what pixie boot is. Basically it's a feature that's available on most computers and particularly on these thin client machines where you can boot off a remote server. And it boots across the network, loads the programs that it needs to run into RAM. And after that it is essentially running the code from a remote server. Now I decided to install Debian onto this system and included in the show notes will be a link to wiki.debian.org pixie boot install. So what you actually need is a server running somewhere on that server can be a server or it can be another machine configured to run the applications that we need. In this case it's a DHCP server and we'll also need a TFTP server and we'll need a boot image. These are three things that we need. So DHCP server is dynamic host control protocol and normally in most networks that's a server that's set up on your router and will just issue IP addresses to your network. In my case that is actually the router but I tend to use DHCP only for Wi-Fi connections and as I don't use Wi-Fi mostly I have all the machines set to using static IP addresses. So I was able to disable DHCP on my own router and run it temporarily on my server downstairs in the basement. Just one word of advice. If you are doing this in a work environment you need to be quite careful because you can make a lot of enemies in the IT department. If you put a rogue DHCP server on the network it can cause lots of problems to you and everybody else and where you start, where your machine innocently starts issuing IP addresses to other machines on the network and that's something that you don't tend to do. So if you're doing this make sure you know what you do and put in some restrictions on the website that I'm going to show you has a list of good restrictions that you can use. There's a sample configuration file and this basically describes the subnet, how many IP addresses you go into a sign, things like the broadcast address, which router you go to and name servers. The other section is the group section and that describes the hardware MAC address of the machine, your client machine. Now most biases have the option that if they don't boot from the hardest USB disk they'll try booting to a pixie drive. And there you will be able to get the IP address or sorry the MAC address of the hardware that's trying to connect. Just make an own of that and add it to your configuration file. You will need to have some sort of DHCP server. The W and Wiki recommends ICS, ISC, sorry, dash DHCP, dash server. And once you make the changes you can restart your server and then when you turn on your machine you'll see that it gets an IP address but the TFTP open times out. The next thing you need to set up is a TFTP server which is a trivial file transfer protocol. And while FTP itself is unsafe, trivial FTP takes that to another level of unsafe. So be careful of what you're running and what you're sharing out on TFTP. They recommend using TFTP-HPA and they have some standard settings which will require you to do not so very much. The next thing you need to do is guess a netboot-tard.gz and unpack it to a server as we are slash TFTP and you might need to make some changes to the permissions there. Once you do that you can turn your machine on and off and then you will, during the boot option, get some option to boot from the network. When you do that, all go well. You should see a regular standard devian install. The only thing you need to be watch out for in this case is I have a 500 megabyte flash drive internally which isn't enough to store a modern operation system. So I attached a form gigabyte USB stick. The first time I installed the devian system, I made sure that it was ext2 partition for both because I don't want any journaling and unnecessary writing to both of those solid state drives. And I made sure that the boot partition was exclusive on the internal flash and that everything else was external on the USB stick. I partitioned it so that there was 500 meg reserved for a swap drive. The remainder three and a half gig was for the normal one partition in one big group partition. After that it was a normal install. However, when I rebooted, I got the R-Grobe 17 R, which is essentially a generic R-Grobe count find its configuration. So I was back to the same situation again if I moved, if I tried booting, I ran into an issue because the USB, if I moved out the USB drive, then I lost half my OS and if I booted, I couldn't boot off the internal drive. So the solution again was to boot into the pixie boot and this time when the devian install came up, try our recovery and that will bring you to a console. And there you can do a recovery of the growth configuration and what actually happened in my situation was that it completely failed to run the Grub-Configure command I believe it is. I'll have the correct command on the show notes if you run into this situation. And that will add the configuration to the Grub menu. So unlike Grub 2, Grub, unlike Grub pre-grub, this new version of Grub, whatever version it is, it's a bit like the old Lilo that if you don't run Lilo, your configuration still gets generations. So once I have that done, I install the base system and in my case, I can then continue on and SSH into the machine adding the source packages for CrunchBang, the next.org startler and convert the system to a startler system. So that is basically how you get around catch 22 situations where you can't install something where a machine perhaps doesn't have a USB, doesn't support USB booting, doesn't have a CD-ROM, doesn't have any connectors for a CD-ROM, won't boot off a USB drive, then another option that you might choose is pixie booting. Okay, I hope this has been of interest to you and tune in tomorrow for another exciting episode of Hacker Public Radio. You have been listening to Hacker Public Radio at Hacker Public Radio, those are. We are a community podcast network that releases shows every weekday Monday through Friday. Today's show, like all our shows, was contributed by a HBR listener by yourself. If you ever considered recording a podcast, then visit our website to find out how easy it really is. Hacker Public Radio was founded by the digital dark pound and the economical and computer cloud. HBR is funded by the binary revolution at binref.com, all binref projects are crowd-responsive by linear pages. From shared hosting to custom private clouds, go to lunarpages.com for all your hosting needs. Unless otherwise stasis, today's show is released under a creative comments, attribution, share a like, videos or license.