Skip to main content

Virtualization on servers can really be a hard concept to get into. You sometimes need to feel around in the dark so to speak. Today we bring you Proxmox VE. Proxmox is distributed as a Debian distribution. Making it effortless to get up and running. Proxmox is written in Perl with an initial release going back to 2008. Today is the day we will pull out our flashlights and light the way to installing VMs on servers using a GUI based hypervisor in your browser. Proxmox has a few minimal requirements such as 4 GB of ram for starters. You can follow along using your own at home server, Virt-manager also works extremely well to learn how to install it and even use it in the browser of the host machine. Meaning you can make nested VM if you have Virt-manager set up for it.

Today we will start by showing you where to get the distribution. We will then image it to a USB and install it to a physical server. Next we will go over how to configure it during installation to assure you have a working server after. Then we will show you how to get your ISO images uploaded to your Proxmox box. Finally, we will go over how to install an image using the GUI. Now let’s get to virtualizing some servers or perhaps your favorite desktop environment.

Distribution

First thing to do is locate Proxmox VE for download. We should go straight to the official site to make sure we get the latest and greatest they have to offer. The download page can be found here. You will have a choice of all their maintained versions to download as an ISO or use a torrent. “A torrent you say?”, why yes we mean a torrent. Torrents themselves are not bad even if that is how lots of “illegal” media is distributed. So let’s learn to use a torrent client and get Proxmox VE.

Arch

sudo pacman -S transmission-cli

Debian/Ubuntu

sudo apt install transmission-cli

RHEL/Fedora

sudo dnf install transmission-cli
transmission-cli install on pacman

Now make sure to download the torrent file, so you can get your copy of Proxmox VE. The file should look something like this proxmox-ve_7.2-1.torrent. The version will very much change over time. So make sure it’s the up-to-date version at the time you read this.

Download an ISO file with transmission-cli

Make sure that when you’re done downloading to give back by letting your torrent client seed to the others that are looking to download Proxmox VE as well. This is so that you contribute back. A good rule to go by is, however long it takes to download, you should try to seed the ISO. Do not worry, your ISP will see your seeding for good not evil. No need to slow things down with a VPN.

Image ISO

The next process to get familiar with is creating installation media. We will go over the one imaging technique that work almost every time as long as you get your paths right and use the right permissions. We do want to issue a warning, as the following commands can write to your own disk or partition if you write something wrong. You are welcome to copy and past then edit a few pieces of key information. Now we need to be in the file location that you downloaded the ISO to, most likely the location is your Downloads directory. First you need to check your block devices to see what drive to write to.

lsblk

We are going to target sdb as it is the USB that we are using to image our ISO to. Now we can go ahead and start the process.

sudo dd if=proxmox-ve_7.2-1.iso of=/dev/sdb bs=64K conv=noerror,sync status=progress

Here you can see that we need to use sudo privileges to use this command. Next you will see dd followed by if, which is the location path to our ISO to be written to USB. Next we will see of, which is the location path to write to. So again, make sure this is a drive you don’t mind nuking all the data. This is followed by bs, which is the byte size. Therefore, you could change this to 8M for instance to run a little faster. This is followed by conv and sync, which refers to errors. Following by status=progress that will show you a status printout in the terminal. Now to get all the information about what else the dd command is good for, go to the Arch Wiki here. They have great explanations for the dd command.

Installation

Now we can go ahead and insert the USB we just created into our home server. You can use any old desktop tower you have sitting around with a minimum of 4 GB ram. The more ram the better. 16 GB or better means you can give a lot more VMs space to run, whereas 4 GB is just enough to run Proxmox and one VM. So, ram will help you out. CPU will affect the speed but should not be an issue as long as you’re not running something more than 10 years old. Therefore, Proxmox is pretty forgiving. If you run it in Virt-manger to learn about it, you will notice you can actually talk to it via your browser with no extra setup. Just make sure you give it all the same considerations on specs.

Boot from a USB key

You will want to know how to boot into this key on the machine you are installing this on. On my server, I have it set in the bios to boot USB keys first as this will come in handy for future installations. Make sure to look up your server model and learn how to boot into BIOS to make this change or to set the key bind to hit during boot that give you an option to boot into a USB. Now we just select the USB to boot. This should take you to the start install menu for Proxmox VE.

Configuration

We are going to have to give some information much like any other distribution installation. Like username, hostname, domain and even your email. So, we will walk you through this to help make sure you don’t miss anything. First up we will start to the installation.

Proxmox start install screen

Next we will need to pick a target disk. If there are no others we will just choose what is available.

Proxmox installer to disk

We will then be prompted to choose our locales. This will be your country, time zone and keyboard layout.

Proxmox installer pick locales

Following this, we will get prompted for our password and email address. You will want to use a stronger password as it will not let you use a super short one.

Proxmox installer Picking a password

Next we will be prompted for the network device, you should probably use the default unless you have a custom configuration on the machine. Next you will want to add a domain name. You can add a real domain if your server has one. We are just going to use linux.linux, but you can use any two words with a dot in between them. If it does not detect your IP setup you can add it manually.

Proxmox installer add your domain

Last thing to do is check on the configuration, making sure not to make any mistakes. Then we will click the installation button. This will set up your new Proxmox box and boot right into it.

Proxmox installer summary

Once booted you will be greeted with a URL to use to log into your Proxmox box. This URL will have a port number on it. It should look something like this.

https://192.168.0.0:8006/

Your IP will be different so make sure you look for and use your IP Address. You will need this to get to the Proxmox panel along with your root password.

proxmox Log in

Don’t worry if after you log in and see this message, as this is free. They are trying to encourage some paying customers. If you like the product you should consider subscribing.

proxmox subscription message

ISO Upload

Uploading an ISO is pretty easy. You don’t have to worry about going to download it to your system then transferring it to your server, mounting the media. Just no. We are going to grab the download URL for the ISO file. You need the ISO file for this to work. You can hover over the link to see the full URL and just make sure it ends with “.iso”.

Download Debian

We are looking for the net install Debian 11 ISO download which can be found here. We will need to navigate to our ISO storage on our Proxmox page in our browser. First click on the server we just made on the left.

Proxmox Select Server

Now you will need to go to the local storage.

proxmox Local storage

Now we will want to click on ISO images.

proxmox ISO files

Then we will click on download from URL.

proxmox Download iso from URL

Then we will add the following ISO URL that we copied when we were on the Debian download page.

https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-11.3.0-amd64-netinst.iso
Add link to download panel

This is where we will add the link twice to make sure that we get the ISO file and name it in a way that we will remember where to get the ISO again if you need. Then just hit download.

Install VM

The first thing we need to do to create a VM is to click on the Create VM button. This will give us a panel where we will need to select some options for.

Creating  VM in Proxmox

Now we will want to name it what it is, Debian server, or whatever choices you plan to make during the installation. This ISO will give you all the popular desktops as options and some server options. Now we will want to add the ISO we want to use. Debian in this case.

VM ID in Proxmox VE

Next we will select the ISO we would like to use.

Select ISO source in proxmox

We will leave the System tab at the defaults. The disk size can go down to 10 GB. We will just not need many for our Debian server. Add what you think you will need for the distributions you are running.

Virtual drive size in proxmox

Now we will need to adjust the cores and sockets. We are going to leave them at 1 for this server. You may have a need for more cores, so add them accordingly.

Selecting CPU cores in proxmox

We are going to leave it at 2048 MiB or 2 GB of RAM. Again you may need more but for our server we do not. Now we will need to turn our attention to the network tab. We will leave this alone unless you have something exotic planned.

Default vm network in proxmox

Finally, we have the confirmation tab to check and see if we did everything right.

Confirm choices

Now we can go to the new VM and open our console to start our VM. You will be able to start the Debian net installer. You will have a good time with it. Very useful for lite Debian installations.

Proxmox VM start screen

Bonus

We wanted a darker mode to help us see something other than that white light burnout on your eyes. We found a script that will help us change to a dark mode profile. You should use scripts at your own risk. Make sure to check out the source code here if you have any worries about this script. So, here we go, let’s go from blinding to dark brilliance. We will run this on the server we installed Proxmox to, as root since that should be the only way to log in at this point.

wget https://raw.githubusercontent.com/Weilbyte/PVEDiscordDark/master/PVEDiscordDark.sh && bash PVEDiscordDark.sh install && rm PVEDiscordDark.sh

Once you go back to the browser you can refresh Proxmox and you will see a beautiful dark theme that will not hurt your eyes. Leaving you with the ability to work longer with less strained eyes. As you can see Proxmox is a tool that can help you install VM servers locally, in the cloud, or in Virt-manager. You have no excuse to not at least learn about it. Gives you an edge up if you work in tech. You will always need to learn or test something new, like Pi hole, Plex, Nextcloud, the list can really go on forever. Why not add Proxmox to your learning tools if nothing else. Thanks for reading.

Boyd Gordon

Looking forward to researching that next project. Writing the next blog and living life to the fullest with my family.

Leave a Reply