Computing/NAS/Software: Difference between revisions
(Created page with "Proxmox Unraid VM Unraid needs a USB stick to boot from. Legacy advice on the Internet is that Proxmox won't boot a VM from a USB stick, but that's wrong with at least Proxmox V8. Config for VM * q35 machine * UEFI/OVMF * '''No''' EFI disk * Some GB of RAM * Host CPU cores, 2 of them (the VM is tied to the USB stick anyway, so may as well tie it to the host cores) * PCI passthrough - SATA controller SATA controller was assigned to a resource mapping at the Datacenter...") |
|||
| (4 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
== Hardware == | |||
Core is a https://nascompares.com/review/cwwk-q670-8-bay-gen5-nas-vpro-mobo-review/ ([https://web.archive.org/web/20250624104920/https://nascompares.com/review/cwwk-q670-8-bay-gen5-nas-vpro-mobo-review/ archive] link); twin 2.5G network ports, a lot of SATA ports, and lots of compromises. | |||
== Network == | |||
Used https://mkdocs-4960c2.gitlab.io/lab/incus/incus_network_issues_walkthrough/ ([https://web.archive.org/web/20260402165455/https://mkdocs-4960c2.gitlab.io/lab/incus/incus_network_issues_walkthrough/ archive] link; apparently AI generated, but functional enough) as a guide to reconfiguring the Fedora OS that's running the NAS so that br0 is the primary interface for Incus to use directly. This enables host-container communication - macvlan doesn't allow this, and the default Incus bridge uses NAT (and I don't want to deal with port forwards) | |||
=== Host === | |||
The host uses enp7s0 for connectivity<syntaxhighlight lang="ini"> | |||
[connection] | |||
id=enp7s0 | |||
uuid=4d354481-a088-3449-8d28-35b96ac1a3d4 | |||
type=ethernet | |||
autoconnect-priority=-999 | |||
interface-name=enp7s0 | |||
timestamp=1775146834 | |||
[ethernet] | |||
[ipv4] | |||
address1=192.168.0.181/24 | |||
dns=192.168.0.1; | |||
gateway=192.168.0.1 | |||
method=manual | |||
[ipv6] | |||
addr-gen-mode=default | |||
method=auto | |||
[proxy] | |||
</syntaxhighlight> | |||
=== Host Bridge === | |||
The bridge is configured with br0 having a static IP, and a slave interface is set up for enp8s0 so that the bridge sits on physical network port.<syntaxhighlight lang="ini"> | |||
[connection] | |||
id=br0 | |||
type=bridge | |||
interface-name=br0 | |||
[bridge] | |||
forward-delay=0 | |||
stp=false | |||
[ipv4] | |||
address1=192.168.0.2/24 | |||
dns=192.168.0.1; | |||
gateway=192.168.0.1 | |||
method=manual | |||
[ipv6] | |||
addr-gen-mode=default | |||
method=auto | |||
</syntaxhighlight><syntaxhighlight lang="ini"> | |||
[connection] | |||
id=br0-slave | |||
type=ethernet | |||
controller=br0 | |||
interface-name=enp8s0 | |||
port-type=bridge | |||
[ethernet] | |||
[bridge-port] | |||
</syntaxhighlight> | |||
=== Incus Bridge === | |||
Incus's default bridge was removed when setting up the new configuration (older install where the default bridge had been accepted. A custom physical interface was added, based on the <code>br0</code> bridge. Profiles were then changed to use the new <code>ibr0</code>. | |||
incus network create ibr0 --type=physical parent=br0 | |||
== VMs and Containers == | |||
=== Unraid VM (deprecated / removed) === | |||
Unraid needs a USB stick to boot from, as it uses the serial number of the stick as a license key. Ended up with plopkexec in the boot path for the qemu-backed VM (pc-q35)<syntaxhighlight lang="yaml"> | |||
devices: | |||
iso-volume: | |||
boot.priority: '10' | |||
pool: machines | |||
source: plopkexec64.iso | |||
type: disk | |||
bootdrive: | |||
required: 'true' | |||
serial: 20CF302E2382F150663CA637 | |||
type: usb | |||
sata: | |||
address: '00:17.0' | |||
type: pci | |||
</syntaxhighlight>Whole SATA controller is passed through, removing the devices from the view of the host OS. | |||
2026-07: Unraid went out of maintenance contract, and I wasn't using the featureset. Migrated to Snapraid + Mergerfs. NFS exports from the homelab box, SMB exports from an incus system container (not an application container) that has the mergerfs volume bind mounted. | |||
=== HomeAssistant (deprecated / removed) === | |||
Default HAOS setup, but with two USB devices passed through from the host for Zigbee and Matter support.<syntaxhighlight lang="yaml"> | |||
devices: | |||
matter-antenna: | |||
productid: 831a | |||
type: usb | |||
vendorid: 303a | |||
zigbee: | |||
productid: 55d4 | |||
type: usb | |||
vendorid: 1a86 | |||
</syntaxhighlight>The Incus web UI can do very silly things when adding USB devices; doing it via the YAML editor is safer. Silly being defined as not allowing settings for the passed-through device, and 'usb' seemed to grab everything including the pass through for the Unraid VM (making Unraid unhappy). | |||
2026-06: HA was moved to a Pi5 instead, so that I can fiddle with the homelab and not break HA at inopportune times. | |||
Latest revision as of 07:48, 19 August 2026
Hardware
Core is a https://nascompares.com/review/cwwk-q670-8-bay-gen5-nas-vpro-mobo-review/ (archive link); twin 2.5G network ports, a lot of SATA ports, and lots of compromises.
Network
Used https://mkdocs-4960c2.gitlab.io/lab/incus/incus_network_issues_walkthrough/ (archive link; apparently AI generated, but functional enough) as a guide to reconfiguring the Fedora OS that's running the NAS so that br0 is the primary interface for Incus to use directly. This enables host-container communication - macvlan doesn't allow this, and the default Incus bridge uses NAT (and I don't want to deal with port forwards)
Host
The host uses enp7s0 for connectivity
[connection]
id=enp7s0
uuid=4d354481-a088-3449-8d28-35b96ac1a3d4
type=ethernet
autoconnect-priority=-999
interface-name=enp7s0
timestamp=1775146834
[ethernet]
[ipv4]
address1=192.168.0.181/24
dns=192.168.0.1;
gateway=192.168.0.1
method=manual
[ipv6]
addr-gen-mode=default
method=auto
[proxy]
Host Bridge
The bridge is configured with br0 having a static IP, and a slave interface is set up for enp8s0 so that the bridge sits on physical network port.
[connection]
id=br0
type=bridge
interface-name=br0
[bridge]
forward-delay=0
stp=false
[ipv4]
address1=192.168.0.2/24
dns=192.168.0.1;
gateway=192.168.0.1
method=manual
[ipv6]
addr-gen-mode=default
method=auto
[connection]
id=br0-slave
type=ethernet
controller=br0
interface-name=enp8s0
port-type=bridge
[ethernet]
[bridge-port]
Incus Bridge
Incus's default bridge was removed when setting up the new configuration (older install where the default bridge had been accepted. A custom physical interface was added, based on the br0 bridge. Profiles were then changed to use the new ibr0.
incus network create ibr0 --type=physical parent=br0
VMs and Containers
Unraid VM (deprecated / removed)
Unraid needs a USB stick to boot from, as it uses the serial number of the stick as a license key. Ended up with plopkexec in the boot path for the qemu-backed VM (pc-q35)
devices:
iso-volume:
boot.priority: '10'
pool: machines
source: plopkexec64.iso
type: disk
bootdrive:
required: 'true'
serial: 20CF302E2382F150663CA637
type: usb
sata:
address: '00:17.0'
type: pci
Whole SATA controller is passed through, removing the devices from the view of the host OS.
2026-07: Unraid went out of maintenance contract, and I wasn't using the featureset. Migrated to Snapraid + Mergerfs. NFS exports from the homelab box, SMB exports from an incus system container (not an application container) that has the mergerfs volume bind mounted.
HomeAssistant (deprecated / removed)
Default HAOS setup, but with two USB devices passed through from the host for Zigbee and Matter support.
devices:
matter-antenna:
productid: 831a
type: usb
vendorid: 303a
zigbee:
productid: 55d4
type: usb
vendorid: 1a86
The Incus web UI can do very silly things when adding USB devices; doing it via the YAML editor is safer. Silly being defined as not allowing settings for the passed-through device, and 'usb' seemed to grab everything including the pass through for the Unraid VM (making Unraid unhappy).
2026-06: HA was moved to a Pi5 instead, so that I can fiddle with the homelab and not break HA at inopportune times.