Skip to content
This repository was archived by the owner on Feb 18, 2026. It is now read-only.

wohlford/bionic-box

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

104 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

bionic

Automated install of Ubuntu 18.04 LTS (Bionic Beaver) from Vagrant, Open Virtual Appliance (OVA), or custom boot image (ISO) to fully working system.

What is this?

You can use this repo to install a fresh copy of Ubuntu 18.04 LTS. This autoinstall also includes useful configs for the new system. Add any extra shell commands to the first boot script.

Please note this project uses Vagrant's insecure key pair and login.

Process

+--------------------------------------------------+                        
|                                                  |                        
|             +---------------------------------+  |                        
|             |      Vagrant or OVA or ISO      |--+                        
|             +---------------------------------+                           
|  +------+                                                                 
+->| iPXE |--+        +-----------------+                                   
   +------+  |     +->|Installer Preseed|----+                              
             |     |  +-----------------+    |     +-----------------------+
   +---------+     |                         +---->| Custom Config Scripts |
   |               +------+       +---------+      +-----------------------+
   |                      |       |         |                  |            
   |  +----------------+  |       |         v                  |            
   +->| Ubuntu Netboot |--+       | +---------------+          |            
      +----------------+          | | Fresh Beaver! |          |            
                                  | +---------------+          |            
                                  |                            |            
                                  +----------------------------+            
  1. Vagrant, OVA, or ISO
  2. iPXE
  3. Ubuntu Netboot
  4. Installer Preseed
  5. Custom Config Scripts
  6. Full Working System!

HOWTO Build Binaries

  1. Login to an Ubuntu 18.04 LTS system.
  2. Clone this repository.
    git clone --depth 1 https://github.com/wohlford/bionic.git
  3. Execute build script.
    ./build.sh

HOWTO Start Automated Installer

Using Vagrant

  1. Install Vagrant.
  2. Install virtualization software:
  3. Download the Vagrantfile into a directory.
    mkdir bionic && wget https://boot.wohlford.co/bionic/Vagrantfile
  4. Change into the directory.
    cd bionic
  5. Start the virtual machine.
    vagrant up
  6. Wait for install to complete.

Using our custom boot image

  1. Download our custom iPXE ISO.
  2. Boot a network connected machine with our custom image.
  3. Wait for the install to complete.

Using netboot.xyz

  1. Download the netboot.xyz ISO.
  2. Boot a network connected machine with the netboot.xyz image.
  3. Under 'Tools', select the 'iPXE shell'.
  4. Enter the following line in the iPXE shell.
    chain --autofree http://boot.wohlford.co/bionic/boot.ipxe
  5. Wait for the install to complete.

Using the vSphere Web Client

  1. Open the vSphere Web Client interface.
    e.g. https://192.168.100.100/ui/#/login
  2. Login.
  3. Click on the 'Virtual Machines' link in the left-hand pane.
  4. Click the 'Create/Register VM' link.
  5. Choose 'Deploy a virtual machine from an OVF or OVA file'.
  6. Click 'Next'.
  7. Name the virtual machine.
    e.g. Bionic
  8. Add the 'bionic.ova' file.
  9. Click 'Next'.
  10. In "Select storage," choose your datastore.
    e.g. datastore1
  11. Click 'Next'.
  12. In "Deployment options," click 'Next'.
  13. In "Ready to complete," click 'Finish'.
  14. Click on your virtual machine.
  15. Click the 'Console' link.
  16. Click the 'Open browser console' link.
  17. Wait for install to complete.

Replacing a existing Bionic system

  1. Download our custom Linux kernel.
  2. Copy 'ipxe.lkrn' into existing '/boot' directory.
    scp ipxe.lkrn [host]:/boot
  3. Enable GRUB boot menu.
    sed -i -e 's/^GRUB_TIMEOUT_STYLE=hidden$/#GRUB_TIMEOUT_STYLE=hidden/' /etc/default/grub
    sed -i -e 's/^GRUB_TIMEOUT=0$/GRUB_TIMEOUT=900/' /etc/default/grub
  4. Add GRUB boot menu item.
    echo 'menuentry "boot.wohlford.co" {linux16 /ipxe.lkrn}' >> /etc/grub.d/40_custom
  5. Update GRUB.
    update-grub
  6. Select 'boot.wohlford.co' GRUB menu at startup.
  7. Wait for the install to complete.

About

Automated Ubuntu 18.04 LTS (Bionic Beaver) system provisioning using iPXE, preseed, and post-install scripting. Builds hardened, monitored Vagrant boxes for VirtualBox and VMware.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors