Troubleshooting Proxmox Installation
I encountered some issues when installing Proxmox on a new homelab. One method of solving these would have been to install Debian and then Proxmox from there. I decided to try my hand at troubleshooting the issues instead.
Why Proxmox
Before describing the issues I faced and how I resolved them, I though I should explain why I'm using Proxmox in the first place - why persevere through the pain?
The end state for my homelab is to have a number of different Virtual Machines (VMs) running segregated services. There are a few reasons I want to run multiple VMs:
- To segment any data used for services to the specific VM I'm running it in
- Most VMs will be running NixOS - I want to manage them remotely and become more familiar with tools like deploy-rs and nixos-anywhere
- I want to be able to use VMs from any machine to easily experiment with new Linux distributions
I mostly want to use VMs over containers as currently NixOS doesn't work so well with LXC, it's possible, but I haven't been thrilled with the result. I will use LXC for running some services like [Home Assistant].
Initial Boot
The first issue I had was getting the Proxmox install step to boot from USB. I kept getting an error saying: /dev fully populated
I managed to find a post on the Proxmox forum which suggested changing the boot flags to resolve the error:
# e at boot menu add nomodeset
GRUB_CMDLINE_LINUX_DEFAULT="quiet nomodeset"
This let me proceed to the install step for Proxmox.
Booting After Install
After installing Proxmox I rebooted my machine and found I hit a similar error again - adding the aforementioned nomodeset
didn't work as I found Proxmox was using systemd-boot rather than grub.
This was resolved by the following thanks to a post on Reddit:
for EFI boot (systemd-boot) add `nomodeset` to /etc/kernel/cmdline after installation; run `pve-efiboot-tool refresh` to update
Setting Safe Mode to Boot from Intel Graphics
I thought I was finally done and ready to start setting up some VMs - but no, I hit a fatal server error, which required me to change my vga settings. I found a YouTube video which explained the changes:
lspci | grep -i vga
mkdir -p /usr/share/X11/xorg.conf.d
vi /usr/share/X11/xorg.conf.d/10-fbdev.conf
Enter the following text in 10-fbdev.conf
Section "Device"
Identifier "Card0"
Driver "fbdev"
BusID "pci0:2:0:0"
EndSection
Finally the system booted and I was able to start setting up Proxmox.
Bonus Tip - GPU Passthrough
Finally I wanted to leave some references I found helpful for configuring GPU passthrough for a VM in Proxmox. I needed to do this for my Jellyfin service, so I could take advantage of Intel QuickSync. For further reference on setting up and testing hardware transcoding checkout the Jellyfin documentation.
You can pass through an Intel GPU via PCI passthrough, as detailed in Proxmox documentation