Netboot Raspberry Pi Part II: The Netboot Server

In this article, I will provide an overview of how netbooting with the Raspberry Pi 4 works and how to configure a server off of which you can boot your Pi. Several components are needed for netbooting a Pi: The Pi itself needs to have netbooting in its boot order config A DHCP server is needed to provide IPs for the Pi and the TFTP server. In this series, the IP for the Pi will be provided by my OPNsense firewall and the netboot options will be provided by DNSmasq. A TFTP (Trivial File Transfer Protocol) server to provide the boot files Prerequisites For this article, the following things are assumed to be present: ...

August 2, 2022 · 10 min · Michael

Netboot Raspberry Pi 4 Part I: Introduction

In this multipart series, I will be detailing how I set up a Raspberry Pi 4 to netboot, with no local SD card/eMMC/other storage required. The setup will use Ceph to provide both, NFS storage for the /boot partition, and an RBD volume for the root disk. For the PXE netboot itself, DNSmasq will be used. Part II: The Netboot Server Part III: Telling Linux Where to Boot From Part IV: Using Packer and Ansible to create a Raspberry Pi Ubuntu Netboot Image Part V: Ansible Playook Part VI: Conclusion Why though? So why would you want a diskless Pi? First of all, the standard option for Raspberry Pi storage is either an SD card or, for Pi CM4 modules, eMMC storage. Both have the same downsides: Their performance is relatively slow, and they are not very durable, wearing out relatively quickly under any but the lightest write loads. ...

July 25, 2022 · 4 min · Michael

Introduction

Let’s start with the traditional Why ln –help? name question. Well, one rather amusing part of my career in tech is: Whenever I have to create a symlink in Linux, the first thing I do is running ln --help. Because for the life of me, I can never remember whether the link name or the link target comes first in the argument order. That’s true even when I created another symlink just minutes ago… ...

July 22, 2022 · 2 min · Michael