Unraid
Unraid runs the image as a KVM virtual machine. You copy the qcow2 disk to the domains share,
create a Linux machine that uses it as its disk, attach a seed ISO with your SSH key, and start it.
Before you start
- Unraid 7, with VMs enabled under Settings > VM Manager and the
domainsandisosshares in place. - A server with an Intel or AMD processor and hardware virtualization switched on in its
firmware. The image is
amd64only. - Room on the server: 2 vCPU and 4 GB of memory free for the machine, and 40 GB or more of disk, as Hardware describes.
- A network bridge to your LAN, usually
br0, so the machine gets an address on your network. - Your SSH public key: the one line in the
.pubfile, such as~/.ssh/id_ed25519.pub. It goes on the seed ISO. - The file: the qcow2,
antelao-ohm-<version>-amd64.qcow2.
Download
Download the qcow2 from the table on the overview page, then check it before you use it. Run this in the folder you downloaded it to:
curl -fsSLO https://packages.antelao.io/raw/cosign.pub
sha256sum cosign.pub
curl -fsSLO https://images.antelao.io/ohm/stable/0.23.0/SHA256SUMS
curl -fsSLO https://images.antelao.io/ohm/stable/0.23.0/SHA256SUMS.sig
cosign verify-blob --key cosign.pub --signature SHA256SUMS.sig \
--insecure-ignore-tlog=true SHA256SUMS
sha256sum --check --ignore-missing SHA256SUMS
Verify the download says what must come out right, and how to check on Windows or a Mac.
You can also download it on the Unraid server itself, from its terminal (the >_ icon in the web interface), straight into the folder the next step uses.
Import
Unraid has no import as such: a machine's disk is a file on the domains share, and you point a
new machine at it.
-
Make a folder for the machine on the
domainsshare and copy the qcow2 into it, over the network share (\\tower\domainson Windows,smb://tower/domainson a Mac) or on the server:mkdir -p /mnt/user/domains/antelao-ohmcp antelao-ohm-<version>-amd64.qcow2 /mnt/user/domains/antelao-ohm/ -
To give the machine more than 40 GB, grow the disk now, while the server is not running on it. The first boot uses the space:
qemu-img resize /mnt/user/domains/antelao-ohm/antelao-ohm-<version>-amd64.qcow2 100G -
Open the VMs tab and click Add VM, then choose the Linux template.
-
Switch the form to Advanced View (the toggle at the top right) and fill it in:
- Name: for example
antelao-ohm. - CPU cores: 2 or more. Initial Memory: 4096 MB or more.
- Machine: Q35, the default for Linux.
- BIOS: OVMF or SeaBIOS. The disk boots both. It can only be chosen when the machine is created.
- Primary vDisk Location: Manual, then the qcow2 you copied, for example
/mnt/user/domains/antelao-ohm/antelao-ohm-<version>-amd64.qcow2. - Primary vDisk Type: qcow2. Primary vDisk Bus: VirtIO.
- Network Source: the bridge to your LAN, usually
br0.virbr0is a private network behind the Unraid server, where nothing else on your network can reach the machine. - Graphics Card: Virtual, with VNC, so you can watch its screen.
- Name: for example
-
Leave the form open for the next section.
Give it your SSH key
Unraid has no field for an SSH key, so you hand the key over on a seed ISO.
- Build
seed.isowith the seed ISO builder on the overview page. - Copy it to the
isosshare, next to your other installation discs. - In the form, choose
seed.isoas the OS Install ISO. The seed is a data disc, not a boot disc: the machine finds no system on it and boots from its disk, and the first boot finds the seed in the CD drive. - Clear Start VM after creation if you want to check the settings first, then click Create.
No seed? The machine's own screen shows the console address and a one-time sign-in code after the first boot.
Start it and wait for the first boot
- On the VMs tab, click the machine's icon and choose Start, if it is not running yet.
- Choose VNC Remote from the same menu to watch its screen.
The screen shows the usual Linux boot messages, then a login prompt. Among the messages, cloud-init
prints a table of the network devices, its lines starting with ci-info, with the address the
machine received. Your router's list of DHCP leases shows the same address.
The login prompt appearing does not mean the work is done. The first boot installs the server in the background, which takes about 10 minutes, longer on a slow connection or slow disks. Sign in over SSH meanwhile and the login message says how far it is.
Reach the console
Sign in over SSH as debian with your key, using the machine's address or its DNS name:
ssh debian@192.168.1.50
Once the first boot is done, the login message shows the console's address. Read the administrator's first password:
sudo cat /root/antelao-ohm-handoff.json
With a password on the seed instead of a key, sign in as debian on the machine's screen through
VNC Remote. SSH keeps refusing passwords.
Then open the console through an SSH tunnel from your own computer, which opens no port on the machine:
ssh -N -L 5322:127.0.0.1:5322 debian@192.168.1.50
Browse to https://localhost:5322/ and accept the self-signed certificate once. From here, carry
on with the installation page:
Platform notes and troubleshooting
- The machine stops at a firmware shell or "no bootable device". It tried the seed ISO and gave up. Stop it, edit it and check that the disk comes first in the boot order, or recreate it with the other BIOS choice.
- A screen that stays black with OVMF. Recreate the machine with Machine set to Q35, as Unraid's own documentation advises.
- No address appears. Check Network Source: the machine must be on the bridge to your LAN,
not on
virbr0. Settings > Network Settings shows whether bridging is on. - Keep the disk where it is. The machine runs on the file you named. Moving or renaming it breaks the machine; back it up with the machine stopped, or use Unraid's own snapshots.
- Nothing reaches the server from outside your network. Your router has to forward ports 80 and 443 to the machine's address before Let's Encrypt can issue certificates for your instances. Never forward the console's port 5322.
- The first boot failed. The login message says FAILED with the reason. See What the first boot does for how to run it again.
- The seed ISO afterwards. Leave it attached: a machine whose seed disappears looks new to
cloud-init at its next start, as Keep the seed attached
explains. It holds a hash of your password, if you gave one, so keep the
isosshare where only administrators can reach it.