Importing Windows into Proxmox virtualization

October 18, 2021

Lang: cs en de es

The Proxmox virtualization software is a highly customizable and usable tool. Thanks to this, you can work with VPSs very easily and therefore efficiently and, for example, not install them but import them directly. Especially if you need to install Windows, importing such a VPS with Windows will save you an extreme amount of time that you would have spent clicking to install. And in this article you will find instructions on how to quickly use the import to get Windows or other VPSes up and running

Proxmox is built on standard Linux technologies, so it uses KVM for full virtualization. And it is using this technology that you can run virtualized Windows.

For importing, common knowledge of Linux, KVM, Proxmox and console is required. We will use the console because it is the most efficient way to manage servers, allows for automation, and when working with large files you don't have to worry about how fast your work computer's line is, because all the tasks (especially downloading data) are done directly on the server.

Windows in a virtual machine

The first question is if and why run Windows in a virtual machine? Without discussion, running Windows operating system in a virtual machine(VPS) is the only right choice. In a nutshell: less hassle with HW, save time with installations, almost zero time when moving the server to another HW, snapshots(backups though temporary or regular), ability to change computer parameters.
All the reasons and in detail you can find in the following video:

Proxmox

I assume you already have Proxmox installed, if not, use the video tutorial on how to install Proxmox. Or use my services to install Proxmox on physical hardware.

Getting Windows

First of all, you need to get Windows. However, don't look for an ISO/CD installer, because installing Windows is terribly and unnecessarily time-consuming. A better option is to download pre-made images of a virtual machine with Windows installed. (Licensing-wise, this should be ok for both testing and production use, where the license can be specified.)

Creating a VPS

Create a VPSk, according to your needs with the required parameters. Even for experimental purposes, remember that Windows needs some minimum amount of RAM. The size of the disk doesn't matter, delete it later and replace it with an imported one.

It is possible to download pre-made images for various visualization tools: VmWare, Hyper-V VirtualBox. For the purpose of importing into Proxmox, you need to download the files intended for VirtualBox, because the files for VirtualBox have an open standardized format that can be further worked with. Download links can be googled - this is the official Microsoft site. For example, the link here: developmental Windows zip archive is 19.4GB or Windows 7,10 etc + Internet Explorer - Win 7 zip archive has 4,2GB, Windows 10 zip archive has 6,7GB . I used the smallest possible archive, i.e. Win7. This image contains an installation where the preset disk size is 32GB. So, wherever you import this virtual Windows, you need up to 32GB of free space.

To download directly to the server, use wget:

 wget "https://az792536.vo.msecnd.net/vms/VMBuild_20150916/VirtualBox/IE8/IE8.Win7.VirtualBox.zip"
 
Windows devel address:
https://download.microsoft.com/download/1/8/c/18c400fa-91d3-4ab2-b232-5e2b0480da43/WinDev2108Eval.VirtualBox.zip
You can choose different versions of Windows to download and with different versions of Internet Explorer not MS Edge. I am adding links to what I downloaded so you don't have to click through the download page linked above.

Unzip the archive with unzip:

unzip IE8.Win7.VirtualBox.zip

The resulting OVA file is an archive with the disk and files for VirtualBox, unzip the archive with tar:

tar -xvf *.ova

Import disk

To import a disk, you need to know the ID of the VPS to which you want to assign the disk. Next, you need to decide what storage the disk will be stored on - this depends on the type of installation and what you have named the storage.
You can see what storage is available in the Proxmox overview. The machine ID is listed next to the VPS created and is its main and unique designation. In a typical automatic installation, the storage for the virtual machine disks is named data. The ID of the VPS I created was 103.
Import command:

qm importdisk 103 'IE8 - Win7-disk1.vmdk' data

Starting and Running

Now all that's left to do is to set up the virtual machine and then you can start it up and boot the operating system.
You need to edit the following items on the VPS via the web interface:

  • Delete the original created and empty disk.
  • Set the imported disk to be connected to the VPSka via which bus.
  • Set up booting from this imported and attached disk.

In this case, without a lengthy installation, you boot straight into Windows login. The default user in Windows is named IEUser and has a password of Passw0rd!. Be sure to change your password!

Windows Import Video Tutorial

Detailed video instructions on where to download Windows, how to create a VPS and import Windows.

Import from another virtualization

As you have noticed as the tutorial also shows how virtual machines from VirtualBox can be re-migrated to Proxmox (i.e. to KVM). VPSs from VmWare or other visualization tools can be migrated in a similar way to take advantage of the benefits and convenience of Proxmox.

Resources

Another way to move Virtualbox VDI to Proxmox VE

Articles on a similar topic

GitLab CI/CD: test automation and application deployment
Migrating VPS from VMware to Proxmox
VMware licensing change
Running Microsoft SQL Server on Linux
Backup: the Proxmox Backup Server
Linux as a router and firewall
How to upload a docker image to the Docker Registry
Linux: logical volume management
Linux Software RAID
Running a web application behind a proxy
Mailbox migration
Docker multistage build
Backing up your data by turning on your computer
Podman
Docker and PHP mail
Proxmox virtualization
Docker and Cron
Lenovo ThinkPad X1 Carbon: LTE modem EM7544 commissioning
Yocto Project: Build custom operating system for embedded devices
Preparing a Linux server to run a web application in Python
How to address poor file share performance in Docker
How to get started using Docker correctly
Installing Linux on a dedicated HPE ProLiant DL320e server
How to stress test a web application
Why use the JFS filesystem
How to boot from a 4TB drive with GTP using UEFI
Btrfs file system
Raspberry PI
WINE - running Windous programs under Linux
GNU/Linux operating system

Newsletter

If you are interested in receiving occasional news by email.
You can register by filling in your email news subscription.


+