If you find this useful, please consider sharing it on social media to help spread the word!

In this tutorial, you will install Proxmox Virtualization Environment with the OS running on a pair of hard drives in a ZFS RAID array.

ZFS offers improved data integrity at the low cost of a little bit of speed, there are other pros and cons to it as well, I found this article by Louwrentius to provide a nice overview of the main differences. If you’d rather still run an MDRAID array, that’s a bit more complicated but absolutely possible, you can learn how to do that here.

When you finish your installation, I suggest you do some memory tuning for maximum performance.

Step 1 - Get some hard drives

Here are the drives I would recommend:

Home Lab Grade:

Enterprise Grade:

Mission Critical Grade:

Step 2 - Make a USB installer

Head over to the Proxmox download page and grab yourself the Proxmox VE 6.0 ISO Installer.

Run through the steps on their official instructions for making a USB installer

Step 3 - Prepare your system

WARNING: Anything on your soon to be server machine is going to be deleted, so make sure you have all the important stuff off of it before you continue!

With your soon-to-be server powered off, plug in the Proxmox installer USB. You’ll want to get into the BIOS or UEFI of the computer where we can mess with some settings, go ahead and hit the power button, and then start pressing the F2, F10, and DEL keys on the keyboard repeatedly until you hopefully end up at a settings screen. If the computer keeps booting up to the old system, you may need to search the web for “(Your computer model) BIOS menu key”.

Use the arrow keys to navigate the menu (there are usually instructions on the bottom of the screen), first look for boot settings and move your USB installer to the top of the list, then look through the advanced settings for anything that says virtualization , VT-x , VT-d , AMD-V , or IOMMU , turn on any that are available. Finally, look for a “Save and Exit” option, the system will reboot and hopefully load up the Proxmox installer.

Step 4 - Run through the installer

Hit enter to choose the option “Install Proxmox VE”.

If you are presented with the warning “No support for KVM…” as below, either your CPU does not support virtualization, or it is not enabled in the BIOS, so you’ll need to go back and check or do some more web searching to figure this out.

If you see the license agreement screen as below, you shouldn’t have any problems with virtualization. Go ahead and click “I agree”

On the next screen, click the Options button next to Target Harddisk , then click the drop-down box for Filesystem , and choose your RAID level. I am going with RAID1 (mirror) because I only have two disks available for this install.

You can now choose the disks you want to use for this array, and modify the advanced ZFS settings if desired (but you probably don’t need to).

From here on it is a standard installation, there are no more extra steps for a ZFS RAID install, so if you’ve done this before and already know how to switch to the free community edition update repository instead of the paid enterprise repository there is no need to continue reading this article 😜

The next screen will have you input your Country, time zone, and keyboard layout.

Next, set a root password and enter your Email address.

Now for network settings:

Hostname: You can put anything you want here, I would choose a good domain name you can implement later for your home network like bob.home , so you could use for example pve.bob.home (PVE stands for Proxmox Virtual Environmnt) Note: You don’t want to use .com or any other public top level domains, and you don’t want to use .local here either for complicated reasons that are beyond the scope of this article, I suggest you just use .home

, so you could use for example (PVE stands for Proxmox Virtual Environmnt) IP Address: You’ll want to put this outside of the available range so there are not conflicts later. If the default value is something like 192.168.0.23 for example, you’d want to change it to say 192.168.0.201 . You’ll want to ping the address you intend to use first to make sure it’s not in use. Write this IP address down so you don’t forget it, we will need it later. I recommend having a peak at This article for more information on static IP addresses and IP address ranges.

The remaining settings should be fine for the defaults unless you have an advanced home network already set up.

Bonus points: If you already have an advance home network, set up your router’s DHCP and/or DNS records to have the host name point to your server. It’s totally fine to skip this step if you have no clue what I’m talking about.

Check over the settings one more time on the summary page, and then click Install.

Nice! Now you can go grab a coffee or something while the installer goes to work.

After the installation you will be prompted to reboot the system, go ahead with that and pull out the USB drive when it tells you to “Remove the CD-ROM”, Does anyone use those anymore?.

Step 5 - Add the PVE Community repository

After the reboot, you’ll see a text only screen prompting you to visit https://YourServerIP:8006 (from another computer), and that’s exactly what we will do next, don’t forget the s in https or it will fail to load the page.

You will be presented with a login screen, go ahead and use root for the user name, and the password you used during the installation earlier.

Upon logging in, you will be presented with a “You do not have a valid subscription” warning, this will always pop up when you log in and that’s fine, we aren’t going to use the Enterprise Edition, we will use the free Community Edition, there are a few steps to get that set up.

On the left column, click the name you chose for your server during the installation, then click the Shell button on the top right.

A new window should open with a command line on the server. You will need to type in the five commands below to accomplish the following:

Move to the directory where Advanced Package Tool (APT) looks for software update repositories Rename the Enterprise configuration file to have .disabled at the end so it is ignored by APT Create a configuration file for the Community repository Update APT’s package list Install all available software updates

cd /etc/apt/sources.list.d mv pve-enterprise.list pve-enterprise.list.disabled echo 'deb http://download.proxmox.com/debian/pve stretch pve-no-subscription' > pve-community.list apt update apt -y dist-upgrade

You’ll want to reboot after installing the updates by clicking the reboot button on the web interface, feel free to choose shutdown here if you want to move the server computer somewhere else now that it’s all set up.

That’s all there is to it!