Build a custom Ubuntu base box for Vagrant by downloading, extracting, tweaking, and packaging the stock Ubuntu ISO.
curl
(1).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.
- Chef is installed.
Edit configuration in
config.sh
Building ISO images:
./build-iso
Building virtual machines through VirtualBox:
./build-vbox
Building Vagrant boxes:
./build-vagrant
There are matching clean-{iso,vbox,vagrant}
scripts that remove the
products of their build counterparts.
The Makefile
contains targets for common build tasks. For Ubuntu 12.04
(Precise Pangolin) 32-bit use
make precise32
For Ubuntu 12.04 (Precise Pangolin) 64-bit use
make precise64