Proxmox Virtual Environment allows you to run virtual machines in all shapes and forms. It features its own web-based user interface to manage VMs and the resources they use. These include ISOs, which can be uploaded so that they can be used with a VM. But what if your ISO is currently stored on a machine with access to your Proxmox server, but without an internet browser? In this case, you can use scp to directly copy and ssh to otherwise manage your ISOs.

Prerequisites

The requirements are as follows:

  • A Proxmox server, which can be accessed through SSH from the machine your ISO is stored on.
  • Access to the scp command on the uploading machine. (scp is included with most if not all Linux distributions, and also on Windows 10 and newer with the OpenSSH Client feature enabled.)
  • One or more ISOs to upload, such as a custom NixOs ISO.

Details

Within a Proxmox Virtual Environment server, ISOs are stored within the /var/lib/vz/template/iso folder. ISOs which are placed in this folder can be mounted as virtual drives to VMs.

By using scp, we can copy a local ISO to this directory on the Proxmox server:

scp ./ReactOS-0.4.14-release-15-gb6088a6.iso root@pve1:/var/lib/vz/template/iso/

In which:

  • ReactOS-0.4.14-release-15-gb6088a6.iso is the ISO to upload.
  • pve1 is the hostname or IP of the Proxmox server.

Note: the user root is created when installing Proxmox and is accessible via SSH by default.

Bonus: list currently available ISOs

Before or after uploading, you can check which ISOs are available using:

ssh root@pve1 "ls /var/lib/vz/template/iso"