Skip to content

OS-1337/netboot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

OS/1337 netboot

Network / Internet Boot Configurations needed to boot OS/1337 via Network and/or Internet


Why?

To make OS/1337 a versatile and easy to use recovery & rescue Linux.

Being able to boot it easily from naked machines is kinda important and useful.

This is intended to mimic most "Rescue Linux" OSes used by big hosters and classic recovery distros like "Tom's Root Boot" as well as the Raspberry Pi Online Installer that has been added to the Firmware of the Raspberry Pi 4 Series (including Pi4B, CM4 and Pi400), allowing for easy setup similar to Apple's Recovery System aka. "BridgeOS" ...

At the end, one can have a fully-automatically netbooting system that starts (ideally the latest current version of) OS/1337 and is then ready for use.

Direct Online-Booting of OS/1337 as an easy easy way to use the latest version.

Which allows for diskless setups and using OS/1337 as easy to setup and maintain Thin Client / "SSH Terminal" System in critical applications.

How?

Using iPXE as boot firmware

Which can be chainloaded as bootloader, a OS/1337 image is being loaded via TFTP or HTTP and subsequently booted.


Navigating the Project Files:

OS/1337 Netboot Repository
├── build 					# build directory
│   ├── build.conf.d				# Build Configurations...
│   │   └── ipxe.config				# ...for iPXE
│   ├── downloads				# Cached Version of the Source Downloads
│   ├── scripts					# Build Scripts
│   │   └── sources.lists.d			# Download URLs
│   │       └── ipxe.url			# Download URL of the latest release Version Source
│   └── working					# Working Directory
├── configs					# Configurations for various Systems & Parts
│   ├── dhcp					# Configs for ISC DHCPd
│   │   └── dhcpd.conf				# Configuration Parameters so the DHCP can point at the boot server
│   ├── efi					# (U)EFI boot files
│   ├── grub					# Grub Configuration Files
│   │   └── chainload.ipxe.grub.conf		# GRUB config to chainload iPXE
│   ├── ipfire					# ipFire Configuration files
│   │   └── updxlrator				# "UpdateAccelerator", a built in Squid Proxy Cache.
│   ├── ipxe					# iPXE Configuration Files
│   │   ├── script.ipxe				# the main boot script
│   │   ├── script.ipxe.sig			# Signature of said Boot Script for verification
│   │   └── unused.params.ipxe			# Just a file with some unused params as of now.
│   └── tftp					# tftp files
├── pub						# Public Servers' Contents
│   └── boot.os1337.com				# The Public OS/1337 Bootserver
│       ├── http				# http_public directory of the OS/1337 bootserver
│       │   ├── boot.php			# the iPXE boot.php script
│       │   ├── index.html			# basic HTML file if someone curious stubles upon the server
│       │   ├── os1337.img			# generic image [i486 CORE Edition]
│       │   ├── robots.txt			# tells crawlers to feck off and not waste bandwith!
│       │   └── [email protected]	# pubkey for the signed files 
│       └── rsync				# rsync jobs
│           └── sync.os1337.releases.sh 	# rsync script to sync the public webservers root directory.
├── docu					# documentation
│   ├── further-reading.md			# further reading materials
│   └── self-hosting.md				# how and why to self-host the bootserver.
├── LICENSE.md					# License
├── README.md					# README
├── TODO.md					# Project TODO list.
└── .gitignore					# Avoids duplicate code to be held in the repository.

Thus should provide you with a good overview.


FAQs

What license is this project under?

This Project falls under 0BSD License.

IMPORTANT NOTE:

This only covers the Work as of this project and not underlying / dependent code like iPXE which falls under GPLv2+ !