Tiny Core Linux over HTTP

This application note describes how Tiny Core Linux can be HTTP-booted using the gPXE network bootloader.


Although Tiny Core Linux comes with PXE netboot support, HTTP booting is attractive because it is more flexible. Only a HTTP server is required (rather than a full DHCP + TFTP setup). HTTP also works well over the internet.

Tiny Core Linux is “the core needed to boot into a very minimal X desktop typically with wired internet access”. From there you can load applications on-demand from the internet. It's a great starting point for a custom thin-client or for one-off Linux sessions without big downloads upfront.

Preparing to HTTP boot

Download the latest Tiny Core Linux ISO image:

wget http://distro.ibiblio.org/pub/linux/distributions/tinycorelinux/release/tinycore_1.2.iso

Mount the ISO:

mount -o loop tinycore_1.2.iso /mnt

Copy kernel and initramfs to a web-accessible directory:

cp /mnt/boot/{bzImage,tinycore.gz} /var/www

Create a gPXE script for easy booting:

cat >/var/www/tinycore.gpxe
kernel http://example.org/bzImage
initrd http://example.org/tinycore.gz

Booting a client machine

Boot gPXE and enter the following command at the shell (Ctrl+B):

dhcp net0
chain http://example.org/tinycore.gpxe

Tiny Core Linux should download via HTTP and boot.

Going further...

You may want to add kernel command-line arguments like this in tinycore.gpxe:

kernel http://example.org/bzImage lang=en kmap=us


* [[:start|Home]] * [[:about|About our Project]] * [[:download|Download]] * [[:screenshots|Screenshots]] * Documentation * [[:howtos|HowTo Guides]] * [[:appnotes|Application Notes]] * [[:faq:|FAQs]] * [[:doc|General Doc]] * [[:talks|Videos, Talks, and Papers]] * [[:hardwareissues|Hardware Issues]] * [[:mailinglists|Mailing lists]] * [[http://support.etherboot.org/|Bugtracker]] * [[:contributing|Contributing]] * [[:editing_permission|Wiki Edit Permission]] * [[:wiki:syntax|Wiki Syntax]] * [[:contact|Contact]] * [[:relatedlinks|Related Links]] * [[:commerciallinks|Commercial Links]] * [[:acknowledgements|Acknowledgements]] * [[:logos|Logo Art]]

QR Code
QR Code appnotes:tinycore (generated for current page)