diff --git a/web/app/docs/create-vm/system-windows/page.tsx b/web/app/docs/create-vm/system-windows/page.tsx new file mode 100644 index 0000000..015730f --- /dev/null +++ b/web/app/docs/create-vm/system-windows/page.tsx @@ -0,0 +1,500 @@ +import type { Metadata } from "next" +import Link from "next/link" +import Image from "next/image" +import { ArrowLeft, Monitor, Settings, Zap, Sliders, HardDrive, ExternalLink, Server, Target } from "lucide-react" + +export const metadata: Metadata = { + title: "ProxMenux Documentation: Windows Virtual Machines", + description: + "Guide for creating and configuring Windows virtual machines on Proxmox VE using ProxMenux, including UUP Dump ISO and local ISO options.", + openGraph: { + title: "ProxMenux Documentation: Windows Virtual Machines", + description: + "Guide for creating and configuring Windows virtual machines on Proxmox VE using ProxMenux, including UUP Dump ISO and local ISO options.", + type: "article", + url: "https://macrimi.github.io/ProxMenux/docs/virtual-machines/windows", + images: [ + { + url: "https://macrimi.github.io/ProxMenux/vm/menu_windows.png", + width: 1200, + height: 630, + alt: "ProxMenux Windows VM Menu", + }, + ], + }, + twitter: { + card: "summary_large_image", + title: "ProxMenux Documentation: Windows Virtual Machines", + description: + "Guide for creating and configuring Windows virtual machines on Proxmox VE using ProxMenux, including UUP Dump ISO and local ISO options.", + images: ["https://macrimi.github.io/ProxMenux/vm/menu_windows.png"], + }, +} + +interface ImageWithCaptionProps { + src: string + alt: string + caption: string +} + +function ImageWithCaption({ src, alt, caption }: ImageWithCaptionProps) { + return ( +
+
+ {alt} +
+ {caption} +
+ ) +} + +export default function WindowsVMPage() { + return ( +
+
+ +
+ +

Windows VM Creator Script

+
+ +
+

+ ProxMenux provides automated scripts that create and configure Windows virtual machines on Proxmox VE. These + scripts simplify the process by handling the necessary configurations and optimizations for Windows + installations, including VirtIO drivers setup and TPM configuration. +

+
+
+ + + +
+

Script Overview

+

+ The Windows VM creation script automates the process of setting up virtual machines optimized for running + Windows operating systems. The script handles all aspects of VM configuration, including hardware allocation, + disk setup, and boot options. +

+ +

The script simplifies the VM creation process by offering the following options:

+
    +
  • Selection of default or advanced configuration
  • +
  • Configuration of CPU, RAM, BIOS, and machine type
  • +
  • Choice between virtual disk or physical disk passthrough
  • +
  • Selection of disk interface type (SCSI, SATA, VirtIO, or IDE)
  • +
  • Automatic configuration of EFI and TPM for secure boot
  • +
  • Automatic VirtIO drivers setup for optimal performance
  • +
+ +
+

+ + Default and Advanced Configuration +

+

The script offers two configuration modes:

+ +

+ + Default Configuration +

+

+ If you select default configuration, the script will automatically apply the following values: +

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterDefault Value
Machine Typeq35
BIOS TypeOVMF (UEFI)
CPU TypeHost
Core Count4
RAM Size8192 MB
Bridgevmbr0
MAC AddressAutomatically generated
TPMEnabled (v2.0)
Start VM on CompletionNo
+
+

+ If you want to customize the configuration, select the Advanced Settings option in the menu. +

+ +

+ + Advanced Configuration +

+

+ If you select advanced configuration, the script will allow you to customize each parameter: +

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ParameterOptions
Machine Typeq35 or i440fx
BIOS TypeOVMF (UEFI) or SeaBIOS (Legacy)
CPU TypeHost or KVM64
Core CountNumber of CPU cores
RAM SizeAmount of memory allocated to the VM
BridgeNetwork bridge for connection
MAC AddressCustom MAC address
VLANVLAN tag (if used)
MTUMaximum Transmission Unit size
TPMEnable or disable TPM
+
+
+ +
+

+ + Disk Interface Selection +

+

+ The script allows you to choose the disk interface type for both virtual and physical disks: +

+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Interface TypeDescriptionBest For
SCSI + Modern interface with good performance and features + + Recommended for Windows 10/11 (includes discard/trim support) +
SATAStandard interface with high compatibility + Good general-purpose choice (includes discard/trim support) +
VirtIO + Paravirtualized interface with highest performance + + Advanced users seeking maximum performance (includes discard/trim support) +
IDELegacy interface with maximum compatibility + Legacy Windows systems only (no discard/trim support) +
+
+
+ +
+

Windows Installation Options

+

ProxMenux offers two methods for installing Windows on your virtual machine:

+ +
+
+
+
+ UUP Dump Logo +
+

Script UUP Dump ISO Creator

+
+ +

+ The ProxMenux script UUP Dump ISO Creator allows you to download and create Windows installation media directly from Microsoft's Windows + Update servers. This option provides the latest Windows builds, including Insider Preview versions. +

+ +

Features:

+
    +
  • Access to the latest Windows builds
  • +
  • Ability to download Insider Preview versions
  • +
  • Clean, official Microsoft installation files
  • +
  • Automatic ISO creation and mounting
  • +
  • Support for various Windows editions (Home, Pro, Enterprise)
  • +
+ +

+ + Learn more about UUP Dump ISO Creator + +

+
+ +
+
+ +

Install with Local ISO

+
+ +

+ This option allows you to use your own Windows ISO file that's already uploaded to your Proxmox server's + local storage. Ideal if you have custom or specific Windows installation media. +

+ +
+ +
+
+
+
+ +
+

Installation Process

+

+ After configuring the VM settings and selecting your installation method, the script will: +

+
    +
  1. Create the VM with the specified configuration
  2. +
  3. Configure EFI disk and TPM for secure boot support
  4. +
  5. Create and attach virtual disks or pass through physical disks
  6. +
  7. Download and mount the Windows ISO (UUP Dump option) or mount your local ISO
  8. +
  9. Download and mount the VirtIO drivers ISO
  10. +
  11. Set the boot order (disk first, then ISO)
  12. +
  13. Configure the QEMU Guest Agent
  14. +
  15. Start the VM if requested
  16. +
+
+ +
+

VirtIO Drivers Setup

+

+ For optimal performance, Windows VMs require VirtIO drivers. The script automatically handles this by: +

+
    +
  • Downloading the latest VirtIO drivers ISO or using an existing one
  • +
  • Mounting the VirtIO drivers ISO to the VM
  • +
  • Providing instructions for loading the drivers during Windows installation
  • +
+

+ If you select a SCSI or VirtIO disk interface for the virtual machine, + Windows installation will not detect the disk by default. In this case, you must click "Load Driver" during the disk selection + step and browse to the mounted VirtIO ISO to install the necessary storage drivers. +
+ These interfaces offer significantly better performance compared to traditional SATA disks, + and are therefore recommended for optimal disk I/O. +

+
+ +
+

+ + Tips +

+
    + +
  • + If you select VirtIO as the network interface (recommended for performance), + you must also install the VirtIO network drivers from the same ISO. This ensures that the Windows installer can access + the network to complete updates or activate the system. +
  • + +
    +

    Important:

    +

    + Without the VirtIO network driver, the virtual machine will not have internet access during installation, + which may prevent Windows from completing activation or downloading necessary updates. +

    +
    +
+
+ + +
+ {/* Step 1 */} +
+

+ Step 1: Access the "Where do you want to install Windows?" screen +

+

+ During Windows installation, if no disks are shown on the “Where do you want to install Windows?” screen, it means the required storage drivers for your selected disk interface (such as SCSI or VirtIO) are not available. You'll need to load them manually. +

+ +
+ + {/* Step 2 */} +
+

Step 2: Click "Load driver"

+

+ Click the “Load driver” button to browse the mounted VirtIO ISO. This will allow you to load the necessary storage drivers so Windows can detect the virtual disk. +

+ +
+ + {/* Step 3 */} +
+

Step 3: Browse to the correct driver location

+

+ On the mounted VirtIO ISO, navigate to the appropriate driver folder that matches your selected disk interface and Windows version. + For example, the viostor folder contains storage drivers, and you'll find subfolders organized by version (e.g., Windows 10, 11, Server). +

+ +
+ + {/* Step 4 */} +
+

Step 4: Select the appropriate driver

+

+ After selecting the folder, Windows will list the available drivers. Choose the appropriate one — usually “Red Hat VirtIO SCSI controller” — and click “Next” to proceed with the installation. +

+ +
+ + {/* Step 5 */} +
+

Step 5: Install network drivers (recommended)

+

+ Pro Tip: If you selected VirtIO as the network interface, Windows will not recognize it by default. To enable internet access during installation, load the VirtIO network driver from the ISO by browsing to the NetKVM folder and selecting the correct subfolder for your Windows version. +

+ +
+ + + {/* Post-installation block */} +
+

Post-Installation Driver Setup

+

+ After the Windows installation is complete, it's recommended to install the remaining VirtIO drivers for full hardware support and optimal performance. + To do this, open the mounted VirtIO ISO in File Explorer and run the installer named{" "} + virtio-win-guest-tools.exe. This will install drivers for network, display, input, ballooning, and other virtualized components. +

+
+
+ + +
+
+ ) +} diff --git a/web/public/vm/windows/virtio-step-1.png b/web/public/vm/windows/virtio-step-1.png index 1881c74..93682d0 100644 Binary files a/web/public/vm/windows/virtio-step-1.png and b/web/public/vm/windows/virtio-step-1.png differ