Skip to main content

A simple TFTP boot server for the Raspberry Pi

Project description

nobodd is a confusingly named, but simple TFTP server intended for net-booting Raspberry Pis directly from OS images without having to loop-back mount those images. Even customization of an image for booting on a particular board is handled without loop devices or mounts (making it possible to operate completely unprivileged), via a read/write FAT implementation within the nobodd-prep tool.

Usage

If you have an appropriately customized OS image already placed in a file (ubuntu.img), and the serial number of the Pi in question (1234ABCD) then serving it as simple as:

$ sudo nobodd-tftpd --board 1234ABCD,ubuntu.img

This defaults to reading the first partition from the file, and pretends (to TFTP clients) that the contents of the first partition appears under the 1234ABCD/ directory. Hence a TFTP request for 1234ABCD/cmdline.txt will serve the cmdline.txt file from the first partition contained in ubuntu.img.

The service either needs to run from root (because the default TFTP port is the privileged port 69), or can be run as a systemd or inetd socket-activated service, in which case the service manager will provide the initial socket and the service can run without any special privileges.

The mapping of Pi serial numbers to OS image files can also be placed in a configuration file under /etc/nobodd/conf.d. A tool, nobodd-prep, is provided to both customize images for boot and generate basic configuration files for nobodd-tftpd and nbd-server.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nobodd-0.5.tar.gz (122.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nobodd-0.5-py3-none-any.whl (102.9 kB view details)

Uploaded Python 3

File details

Details for the file nobodd-0.5.tar.gz.

File metadata

  • Download URL: nobodd-0.5.tar.gz
  • Upload date:
  • Size: 122.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for nobodd-0.5.tar.gz
Algorithm Hash digest
SHA256 0bd8c936d684a28bd69235eba0c4a232fa053f90d87872630c63bd87004df4b8
MD5 9a9e078c9b98b7eff234ca2798571625
BLAKE2b-256 61b37f6aa5b268bf5d5422a19bbb35e0a35227cebef5d4319b9416d065ee1dfa

See more details on using hashes here.

File details

Details for the file nobodd-0.5-py3-none-any.whl.

File metadata

  • Download URL: nobodd-0.5-py3-none-any.whl
  • Upload date:
  • Size: 102.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for nobodd-0.5-py3-none-any.whl
Algorithm Hash digest
SHA256 9be0e9c3262fb4b34987c562517b045771ce1259c7c3542fd037942324225c39
MD5 03a9aa382f5e849cee17a1e57378e30d
BLAKE2b-256 e1c229408c7dd1a5b7f4f00699e20da765a96c8e67481334dfde0bb094926b56

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page