Mark Jenkins iPXE menu

From SkullSpace Wiki
Revision as of 00:08, 14 March 2019 by Markjenkinsparit (talk | contribs) (arbitrary debian 9 / monero example)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

The Mark Jenkins (Mark) sub-menu on the Skullspace IPXE boot option is loaded from http://mark2.ipxe.vmsrv.markjenkins.ca/mark.txt

As this domain name resolves to a private Skullspace LAN IP address, you will only be able to view it from Skullspace. Mark is planning to eventually switch to a publicly reachabe top level menu and select sub-menus for Skullspace network eyes only depending on the relevant content.

Only items Mark intends to eventually make publicly available are on this wiki:

Debian 9 (stretch) installers and rescue environments

A sub-menu from debian/debian9.txt . Provides Debian 9 network installers with some of these variations:

  • x86 (32 bit) and amd64/x86_64
  • the installer from the debian9 release and the latest current installer for Debian 9
  • the regular installer and the rescue mode built into the installer

Using the MUUG mirror https://muug.ca/mirror/debian which is hosted at Les.net is recommended for really fast install.

Ask Mark about getting variants where questions like the country, timezone, language, keyboard, and mirror are pre-seeded.

Mine Monero (XMR)

This option, to mine Monero for Skullspace has probably been obsoleted by a proof of work change. Intended more as a proof of concept, we're not asking people run their machines or inefficient Skullspace machines non-stop for this. Just demo the "coolness" and turn it off.

The bigger idea here is to illustrate an easy way you can netboot your own Debian 9 payload, perhaps if you were trying to use the Skullspace machines for some kind of cluster experiment. Here's the relevant two lines from the mark.txt iPXE config

kernel arbboot/debian9-runstuff-vmlinuz rdinit=/sbin/init runme=http://mark.ipxe.vmsrv.skullspace.ca/arbboot/monero.sh
initrd arbboot/debian9-runstuff-initrd.gz

What this does is load a minimal debian 9 environment entirely into RAM with the file system provided by an initrd (initial root disk). The rdinit= kernel param ensures /sbin/init is used from this initrd instead of the usual initrd program whoes job is to mount another filesystem. The runme= paramater is picked up later in the startup process (by way of userspace reading /proc/cmdline) and executed by root.

Mark's arbboot/monero.sh downloads the prerequisites for a (presumed out of date) monero mining stack and then switches from the root user to the skullspace user to run that.

From a personal or Skullspace computer and using the ipxe shell or your own member-sub menu, you could load the same kernel and small debian initrd as I do here, but put in your runme= to run your own script on startup. What do you want to do with debian9 en-mass today?