Build a custom Ubuntu ISO for Vagrant by downloading, extracting, tweaking, and packaging the stock Ubuntu ISO.
curl
(1).hdiutil
(1), and therefore Mac OS X. It may be possible to relax this dependency but it has not been investigated.m4
(1).mkisofs
(1) from thecdrtools
package available from MacPorts or Homebrew.
The results are bootable ISO images and so should run on any i386
or
amd64
hardware. They are only tested in VirtualBox.
- Network access is configured using sane default settings. WiFi is not supported.
- The hostname is
vagrant
; the domain isvagrantup.com
. These are configurable. - The system clock is set to UTC.
- The entire disk is partitioned
ext4
without LVM. - The default kernel for the architecture is used.
linux-server
foramd64
andlinux-generic-pae
fori386
. - The
root
andvagrant
users exist; both their password arevagrant
. Vagrant's standard insecure SSH key is authorized forvagrant
. These are all configurable. - OpenSSH server is installed.
- VirtualBox Guest Additions are installed.
Building ISO images:
./build-iso
Building virtual machines through VirtualBox:
./build-vbox
Building Vagrant boxes:
./build-vagrant
There are matching clean-{iso,vbox,vagrant}
programs that remove the
products of their build counterparts.
The Makefile
contains targets for common build tasks.