← ClaudeAtlas

ubuntu-zfs-mirror-installlisted

Install Ubuntu Server onto a 2-disk ZFS mirror root (rpool→/) plus a striped data pool (dpool→/data) via debootstrap + ZFSBootMenu, or fall back to a plain single-disk ext4 install (GRUB-EFI) when there aren't two equal-size disks. Use when asked to install Ubuntu on ZFS, build a ZFS mirror root / rpool+dpool layout, set up root-on-ZFS with ZFSBootMenu, or do a scripted Ubuntu Server install on a UEFI x86 server with one or two SSDs/NVMes.
soulmachine/skills · ★ 2 · AI & Automation · score 75
Install: claude install-skill soulmachine/skills
# Ubuntu ZFS-mirror (or ext4) Server Install Validated end-to-end (proven on an 8-GPU ASUS ESC8000-E12P). Every fix that makes the ZFS path boot **hands-free and reboot-safe** is baked into the scripts — see [REFERENCE.md](REFERENCE.md) for what they are and how to recover if something's off. ## Decision rule (choose the path from the disks) - **Exactly two fixed disks of the SAME size → ZFS mirror** (`scripts/install.sh`): per disk `ESP | rpool-member | dpool-member`; `rpool` mirror → `/`, `dpool` stripe → `/data` (no redundancy). - **One disk, or two disks of different sizes → plain ext4 single-disk** (`scripts/install-ext4.sh`): `ESP | ext4 root`, GRUB-EFI. (`install.sh` refuses unequal/single disks and points here.) ## Prerequisites - Target booted into an **Ubuntu Server LIVE** environment (24.04+/26.04), **UEFI** mode (CSM off). - A **root shell** on it (local console, or SSH — enable `ssh` + set a password in the live env). - **Internet** reachable from the live env (debootstrap + ZFSBootMenu download). - Copy `scripts/` to the target (e.g. `scp -r scripts root@<live-ip>:`). ## Workflow 1. **List disks:** `sudo bash scripts/install.sh --list` — shows fixed disks with by-id paths + sizes; the live/USB medium is marked `[LIVE MEDIUM, do NOT pick]`. 2. **Gather settings from the user** (ask; defaults in parens): | Setting | Notes | |---|---| | disk(s) | by-id path(s); count+size decides ZFS vs ext4 | | rpool size *(ZFS only)* | **128 / 256 / 512 / 1