/opt/unetlab/addons/qemu/
└── vyos-1.4.0/
├── virtioa.qcow2 # renamed from downloaded image
├── hda.qcow2 # optional second disk
└── vyos.yml # optional template
This is where 50% of users fail.
/opt/unetlab/wrappers/unl_wrapper -a fixpermissions
Without this, EVENG cannot execute the QEMU process.
/opt/unetlab/wrappers/unl_wrapper -a fixpermissions
🚫 Common mistake: Forgetting this step = “Permission denied” errors when starting nodes. eveng qemu images download better
Even with the best sources, things go wrong. Here are the top complaints and the better way to fix them.
| Symptom | Likely Cause | Better Fix |
|--------|--------------|-------------|
| Node starts but shows "Booting from Hard Disk..." forever | Missing or wrong disk name | Ensure virtioa.qcow2 exists. Case-sensitive. |
| Console hangs with "Guest has not initialized display" | Missing QEMU agent or wrong VGA mode | Edit node and set console to "telnet" (not VNC). |
| Extreme CPU usage (100% all the time) | Missing virtio or no KVM | Reconvert image with virtio. Enable KVM in node config. |
| Node disappears after fixpermissions | Corrupt image file | Run qemu-img check virtioa.qcow2. If errors, re-download. |
| "Permission denied" when starting node | Wrong ownership | Run fixpermissions again. Do not use chmod 777. | /opt/unetlab/addons/qemu/
└── vyos-1
| Image type | Required filename | Works out‑of‑the‑box? |
|------------|------------------|------------------------|
| Linux cloud image | virtioa.qcow2 | ✅ Yes (no install) |
| Windows Server | virtioa.qcow2 | ⚠️ Need VirtIO drivers |
| Cisco CSR1000v | virtioa.qcow2 | ✅ Yes |
| Juniper vMX | hda.qcow2 | ✅ Yes (use vMX template) |
| FortiGate VM | virtioa.qcow2 | ✅ Yes |
| Arista vEOS | hda.qcow2 | ✅ Yes |
If you rebuild labs often, host a local mirror of QEMU images. This is where 50% of users fail
This reduces WAN downloads and ensures team consistency.
If you have multiple labs needing the same base image:
ln -s /opt/unetlab/addons/qemu/Ubuntu-20.04 /opt/unetlab/tmp/lab-name/Ubuntu-20.04
This avoids duplication across lab snapshots.