An open API service indexing awesome lists of open source software.

https://github.com/rgl/debian-live-builder-vagrant

Vagrant Environment for creating custom Debian Live ISO images
https://github.com/rgl/debian-live-builder-vagrant

debian-live iso

Last synced: 16 days ago
JSON representation

Vagrant Environment for creating custom Debian Live ISO images

Awesome Lists containing this project

README

        

This is a [Vagrant](https://www.vagrantup.com/) Environment for creating custom [Debian Live](https://www.debian.org/CD/live/) ISO images.

# Usage

Install the [Base Debian Vagrant Box](https://github.com/rgl/debian-vagrant).

Launch the debian live builder, this will build the ISO image and copy it to the current directory as `live-image-amd64.hybrid.iso`:

```bash
vagrant up builder --no-destroy-on-error
```

Boot the generated ISO in [BIOS](https://en.wikipedia.org/wiki/BIOS) mode:

```bash
vagrant up bios --no-destroy-on-error
```

Boot the generated ISO in [EFI](https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface) mode:

```bash
vagrant up efi --no-destroy-on-error
```

To build a netboot image, set the `LB_BUILD_TYPE` environment variable to `netboot` before launching vagrant, e.g. `LB_BUILD_TYPE=netboot vagrant up builder`. This will build the netboot image and copy it to the current directory as `live-image-amd64.netboot.tar`.

To build the arm64 architecture image, set the `LB_BUILD_ARCH` environment variable to `arm64` before launching vagrant, e.g. `LB_BUILD_ARCH=arm64 vagrant up builder`. To execute this image in an emulated virtual machine see the [qemu arm64 emulation](#qemu-arm64-emulation) section.

**NB** Building the arm64 image takes longer than the native amd64. In my machine it takes about 40m (vs 10m for amd64).

# Burning the ISO file to a USB pen/disk drive

Use [Etcher](https://www.etcher.io/) to burn the generated `live-image-amd64.hybrid.iso` file to a device (e.g. `sdd`), or use the following commands:

```bash
sudo su -l # enter a root shell
cp live-image-amd64.hybrid.iso /dev/sdd
sync
echo 1 >/sys/block/sdd/device/rescan
fdisk -u -l /dev/sdd
lsblk /dev/sdd
mkdir -p /mnt/sdd1
mount /dev/sdd1 /mnt/sdd1
(cd /mnt/sdd1 && md5sum --quiet --check md5sum.txt)
umount /mnt/sdd1
eject /dev/sdd
```

# qemu arm64 emulation

The arm64 architecture image can be executed in an emulated virtual machine as:

```bash
# NB in my humble machine (i3-3245) emulating arm64 is very slow and it takes
# several minutes until you can login.
# NB in the qemu window use the "View" menu to switch between the
# virtio-gpu-pci and serial0 console.
mkdir tmp
cd tmp
sudo apt-get install -y qemu-system-arm qemu-efi-aarch64 cloud-image-utils
cat >cloud-init-user-data.yml <