{"id":1869,"date":"2026-09-26T20:30:56","date_gmt":"2026-09-27T01:30:56","guid":{"rendered":"https:\/\/zewwy.ca\/?p=1869"},"modified":"2026-09-26T20:30:56","modified_gmt":"2026-09-27T01:30:56","slug":"migrating-veeam-as-a-vmware-vm-to-a-proxmox-vm","status":"publish","type":"post","link":"https:\/\/zewwy.ca\/index.php\/2026\/09\/26\/migrating-veeam-as-a-vmware-vm-to-a-proxmox-vm\/","title":{"rendered":"Migrating Veeam as a VMware VM to a Proxmox VM"},"content":{"rendered":"<h1 class=\"otQkpb\" style=\"text-align: center;\" role=\"heading\" aria-level=\"3\" data-wiz-attrbind=\"aria-level=Ybbxob_u\/fLk2Md\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 20px; font-weight: 600; margin: 24px 0px 12px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"ez-toc-section\" id=\"Running_Veeam_as_a_Windows_VM_on_Proxmox_VE\"><\/span>Running Veeam as a Windows VM on Proxmox VE<!--TgQPHd|||[]--><span class=\"ez-toc-section-end\"><\/span><\/h1><div id=\"ez-toc-container\" class=\"ez-toc-v2_0_86 ez-toc-wrap-right counter-hierarchy ez-toc-counter ez-toc-black ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\"><p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<\/div><nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-1'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/zewwy.ca\/index.php\/2026\/09\/26\/migrating-veeam-as-a-vmware-vm-to-a-proxmox-vm\/#Running_Veeam_as_a_Windows_VM_on_Proxmox_VE\" >Running Veeam as a Windows VM on Proxmox VE<\/a><ul class='ez-toc-list-level-2' ><li class='ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/zewwy.ca\/index.php\/2026\/09\/26\/migrating-veeam-as-a-vmware-vm-to-a-proxmox-vm\/#1_The_Core_Architecture_How_VBR_Operates_Inside_PVE\" >1. The Core Architecture: How VBR Operates Inside PVE<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/zewwy.ca\/index.php\/2026\/09\/26\/migrating-veeam-as-a-vmware-vm-to-a-proxmox-vm\/#2_Technical_Friction_Points_Lessons_Learned\" >2. Technical Friction Points &amp; Lessons Learned<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/zewwy.ca\/index.php\/2026\/09\/26\/migrating-veeam-as-a-vmware-vm-to-a-proxmox-vm\/#3_The_Migration_Strategy_Zero-Duplication_Streaming_to_LVM-Thin\" >3. The Migration Strategy: Zero-Duplication Streaming to LVM-Thin<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/zewwy.ca\/index.php\/2026\/09\/26\/migrating-veeam-as-a-vmware-vm-to-a-proxmox-vm\/#Phase_1_Pre-Migration_Trim_Dropping_the_Bloat\" >Phase 1: Pre-Migration Trim (Dropping the Bloat)<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/zewwy.ca\/index.php\/2026\/09\/26\/migrating-veeam-as-a-vmware-vm-to-a-proxmox-vm\/#Phase_2_Live_Network_Streaming_via_qm_importdisk\" >Phase 2: Live Network Streaming via qm importdisk<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/zewwy.ca\/index.php\/2026\/09\/26\/migrating-veeam-as-a-vmware-vm-to-a-proxmox-vm\/#4_The_Finish_Line\" >4. The Finish Line<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/zewwy.ca\/index.php\/2026\/09\/26\/migrating-veeam-as-a-vmware-vm-to-a-proxmox-vm\/#BONUS\" >BONUS<\/a><\/li><\/ul><\/li><\/ul><\/nav><\/div>\n\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIChAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">With Broadcom completely upending the virtualization landscape, like many admins, I\u2019ve been heavily evaluating Proxmox VE (PVE) as a viable enterprise alternative. While Veeam now natively supports PVE, I wanted to see what happens when you run the <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Veeam Backup &amp; Replication (VBR) server as a Windows VM hosted directly on a PVE node<!--TgQPHd|||[]--><\/strong>, rather than on dedicated hardware.<!--TgQPHd|||[]--><\/div>\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAICxAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Here is the technical reality of this architecture, the hypervisor mechanics, and the exact step-by-step process I used to execute a zero-duplication migration from ESXi into a tight local LVM-Thin storage layout.<\/div>\n<div class=\"yhAwj\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-sfc-inited=\"2\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><!--TgQPHd|||[]--><\/div>\n<h2 class=\"otQkpb\" role=\"heading\" aria-level=\"3\" data-wiz-attrbind=\"aria-level=Ybbxob_11\/fLk2Md\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 20px; font-weight: 600; margin: 24px 0px 12px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"ez-toc-section\" id=\"1_The_Core_Architecture_How_VBR_Operates_Inside_PVE\"><\/span>1. The Core Architecture: How VBR Operates Inside PVE<!--TgQPHd|||[]--><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIDhAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">When I deployed VBR into a Windows VM on Proxmox, the fundamental architecture shifted away from what I was used to in the VMware world:<!--TgQPHd|||[]--><\/div>\n<ul class=\"KsbFXc U6u95\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-ved=\"2ahUKEwjF2_ah-IyXAxWyj4kEHWaGFd4Q-7AUegYIAAgPEAA\" data-hveid=\"CAAIDxAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">\n<li class=\"Z1qcYe\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIDxAB\" data-complete=\"true\" data-sae=\"\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px 0px 12px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"iNqyIf\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">The VBR VM is just the brain:<!--TgQPHd|||[]--><\/strong> The Windows VM hosting Veeam acts strictly as the management plane, controlling schedules, maintaining the PostgreSQL database, and exposing the console.<br \/>\n&#8211; Works the same way as a VMware VM, it just can&#8217;t act as it&#8217;s own VMware hotadd node when on PVE VM<!--TgQPHd|||[]--><\/span><!--TgQPHd|||[]--><\/li>\n<li class=\"Z1qcYe\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIDxAC\" data-complete=\"true\" data-sae=\"\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px 0px 12px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"iNqyIf\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">The PVE Worker handles the heavy lifting:<!--TgQPHd|||[]--><\/strong> Because PVE lacks a monolithic management layer like vCenter, Veeam requires me to add each individual node in the cluster to the console. Veeam then provisions a lightweight, Linux-based <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Worker VM<!--TgQPHd|||[]--><\/strong> onto each host to act as a stateless data mover.<!--TgQPHd|||[]--><\/span><!--TgQPHd|||[]--><\/li>\n<li class=\"Z1qcYe\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIDxAD\" data-complete=\"true\" data-sae=\"\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px 0px 12px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"iNqyIf\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">The Control vs. Data Paths:<!--TgQPHd|||[]--><\/strong> When a job triggers, my Windows VBR VM talks directly to the Proxmox API to initiate a hypervisor-level snapshot. Once the snapshot is ready, VBR instructs the local Worker VM to mount that snapshot, compress the data blocks, and stream them directly to my backup repository.<!--TgQPHd|||[]--><\/span><!--TgQPHd|||[]--><\/li>\n<p><!--TgQPHd|||[]--><\/ul>\n<div class=\"yhAwj\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-sfc-inited=\"2\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><!--TgQPHd|||[]--><\/div>\n<div class=\"BpxUDf aiModeUiCodeBlock__Container\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-wiz-uids=\"Ybbxob_1h,Ybbxob_1g\" data-hveid=\"CAAIEBAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">\n<div data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">\n<div class=\"rq1a2\" data-animation-atomic=\"\" data-sae=\"\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0.666667px solid rgb(44, 46, 53);\">\n<div class=\"PGvq2d\" dir=\"ltr\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">\n<pre data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 14px 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><code data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"undefined\" data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">                  \u250c\u2500\u2500\u2500 [ Veeam VBR Server (Windows) ] \u2500\u2500\u2500\u2510\r\n                  \u2502                                      \u2502\r\n                  \u25bc (1. Orders Snapshot via API)         \u25bc (3. Orders Data Processing)\r\n       [ Proxmox VE Host ]                       [ Veeam PVE Worker VM ]\r\n                  \u2502                                      \u2502\r\n                  \u25bc (2. Triggers Quiescing)              \u2502\r\n       [ Target VM + QEMU Agent ]                        \u2502\r\n                  \u2502                                      \u2502\r\n                  \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500 (4. Reads Snapshot Data) \u2500\u2500\u2500\u2500\u2500\u2518\r\n<\/span><\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"iMHp6c\" data-animation-atomic=\"\" data-sae=\"\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 3px 0px 0px; text-decoration: none; border-bottom: 0.666667px solid rgb(44, 46, 53);\">\n<div data-sfc-cp=\"\" data-sfc-root=\"ep\" data-ved=\"2ahUKEwjF2_ah-IyXAxWyj4kEHWaGFd4Qh9gSegYIAAgQEAI\" data-complete=\"true\" data-sfc-inited=\"2\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><\/div>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"yhAwj\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-sfc-inited=\"2\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><!--TgQPHd|||[]--><\/div>\n<h2 class=\"otQkpb\" role=\"heading\" aria-level=\"3\" data-wiz-attrbind=\"aria-level=Ybbxob_1p\/fLk2Md\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 20px; font-weight: 600; margin: 24px 0px 12px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"ez-toc-section\" id=\"2_Technical_Friction_Points_Lessons_Learned\"><\/span>2. Technical Friction Points &amp; Lessons Learned<!--TgQPHd|||[]--><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIExAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">While the setup works, moving from ESXi to PVE exposed several architectural limitations and maturity gaps that I had to account for.<!--TgQPHd|||[]--><\/div>\n<div class=\"yhAwj\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-sfc-inited=\"2\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><!--TgQPHd|||[]--><\/div>\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIFhAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><\/div>\n<div class=\"yhAwj\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-sfc-inited=\"2\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><!--TgQPHd|||[]--><\/div>\n<div class=\"otQkpb\" role=\"heading\" aria-level=\"3\" data-animation-nesting=\"\" data-sfc-cp=\"\" data-wiz-attrbind=\"aria-level=Ybbxob_21\/fLk2Md\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-sae=\"\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 20px; font-weight: 600; margin: 24px 0px 12px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">The Infuriating VLAN Blind Spot in the Worker Wizard<!--TgQPHd|||[]--><\/div>\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIGRAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">This is one of the clearest signs that Veeam&#8217;s Proxmox integration is still green. When deploying the Linux-based Worker VMs across my cluster nodes, the <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Veeam Deployment Wizard lacks any field to define a VLAN ID<!--TgQPHd|||[]--><\/strong>. It lets me select the network bridge (e.g., <code class=\"KDcb0c\" dir=\"ltr\" data-sfc-root=\"ep\" data-complete=\"true\" data-sae=\"\" data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0.666667px solid rgb(44, 46, 53);\">vmbr0<!--TgQPHd|||[]--><\/code>), but that\u2019s it.<\/p>\n<p><!--TgQPHd|||[]--><\/div>\n<ul class=\"KsbFXc U6u95\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-ved=\"2ahUKEwjF2_ah-IyXAxWyj4kEHWaGFd4Q-7AUegYIAAgaEAA\" data-hveid=\"CAAIGhAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">\n<li class=\"Z1qcYe\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIGhAB\" data-complete=\"true\" data-sae=\"\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px 0px 12px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"iNqyIf\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">The Hack:<!--TgQPHd|||[]--><\/strong> Because my management network is VLAN-tagged, the newly deployed Worker VMs immediately drop offline upon creation because they can&#8217;t get an IP address. I have to manually jump into the Proxmox GUI, open the hardware settings of the newly provisioned Worker VM, inject the VLAN tag into its virtual NIC, and reboot it.<!--TgQPHd|||[]--><\/span><!--TgQPHd|||[]--><\/li>\n<li class=\"Z1qcYe\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIGhAC\" data-complete=\"true\" data-sae=\"\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px 0px 12px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"iNqyIf\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">The Catch:<!--TgQPHd|||[]--><\/strong> Every time Veeam pushes an update that redeploys or patches these Worker VMs, this manual configuration gets wiped out. It requires immediate administrative intervention in the PVE GUI to fix the network interfaces after every lifecycle update.<!--TgQPHd|||[]--><\/span><!--TgQPHd|||[]--><\/li>\n<p><!--TgQPHd|||[]--><\/ul>\n<div class=\"yhAwj\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-sfc-inited=\"2\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><!--TgQPHd|||[]--><\/div>\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIHRAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><\/div>\n<div class=\"yhAwj\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-sfc-inited=\"2\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><!--TgQPHd|||[]--><\/div>\n<h2 class=\"otQkpb\" role=\"heading\" aria-level=\"3\" data-wiz-attrbind=\"aria-level=Ybbxob_2l\/fLk2Md\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 20px; font-weight: 600; margin: 24px 0px 12px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"ez-toc-section\" id=\"3_The_Migration_Strategy_Zero-Duplication_Streaming_to_LVM-Thin\"><\/span>3. The Migration Strategy: Zero-Duplication Streaming to LVM-Thin<!--TgQPHd|||[]--><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIIBAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Moving my Veeam server presented a unique chicken-and-egg problem. To make matters worse, my old ESXi lab layout was messy: my Veeam backup repository wasn&#8217;t an independent iSCSI target\u2014<strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">it was a raw, bloated 1.2 TiB VMDK sitting directly on local mechanical spindle datastores.<!--TgQPHd|||[]--><\/strong><!--TgQPHd|||[]--><\/div>\n<div data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIIBAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><\/div>\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIIRAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">To avoid the pain of building a fresh Windows OS, configuring IPs, and rebuilding my environment from scratch, I chose to use the <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Self-Backup and Restore<!--TgQPHd|||[]--><\/strong> method. I backed up just the C: drive of the Veeam VM, restored it to Proxmox, and brought the compute layer online.<!--TgQPHd|||[]--><\/div>\n<div data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIIRAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><\/div>\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIIhAA\" data-complete=\"true\" data-processed=\"true\" aria-owns=\"action-menu-parent-container\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">However, migrating that massive data disk into a tight, local <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">LVM-Thin<!--TgQPHd|||[]--><\/strong> pool presented a storage Catch-22: <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">LVM-Thin does not use files like VMDK or QCOW2.<!--TgQPHd|||[]--><\/strong> It is a block-level storage architecture. I couldn\u2019t just copy the file over first because my PVE host had no local path large enough to store a temporary 1.2 TiB file.<!--TgQPHd|||[]--><\/div>\n<div tabindex=\"0\" data-os-fs=\"\" aria-hidden=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: -1px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><\/div>\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIIxAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">To bypass this hurdle and ensure <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">zero file duplication<!--TgQPHd|||[]--><\/strong>, I streamed the conversion directly over the network from the ESXi host using the command line. Which involves adding the ESXi host to PVE, then using PVEs CLI.<!--TgQPHd|||[]--><\/div>\n<div data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIIxAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><\/div>\n<div class=\"yhAwj\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-sfc-inited=\"2\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><!--TgQPHd|||[]--><\/div>\n<h3 class=\"otQkpb\" style=\"text-align: center;\" role=\"heading\" aria-level=\"3\" data-wiz-attrbind=\"aria-level=Ybbxob_2w\/fLk2Md\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 20px; font-weight: 600; margin: 24px 0px 12px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"ez-toc-section\" id=\"Phase_1_Pre-Migration_Trim_Dropping_the_Bloat\"><\/span>Phase 1: Pre-Migration Trim (Dropping the Bloat)<!--TgQPHd|||[]--><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIJRAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Inside the Windows Veeam VM, the OS reported only <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">600GB of actual data<!--TgQPHd|||[]--><\/strong> in use, meaning I had over 200GB of &#8220;ghost bloat&#8221; on the 808GB allocated ESXi VMDK. Before shutting down the VM, I ran a quick optimization check to ensure Windows explicitly issued zero-discard commands to the hypervisor:<!--TgQPHd|||[]--><\/div>\n<div class=\"yhAwj\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-sfc-inited=\"2\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><!--TgQPHd|||[]--><\/div>\n<div class=\"BpxUDf aiModeUiCodeBlock__Container\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-wiz-uids=\"Ybbxob_32,Ybbxob_31\" data-hveid=\"CAAIJhAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">\n<div data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">\n<div class=\"rq1a2\" data-animation-atomic=\"\" data-sae=\"\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0.666667px solid rgb(44, 46, 53);\">\n<div class=\"a2TNg\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">\n<div class=\"GlO4G\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 20px; font-weight: 500; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">powershell<\/div>\n<\/div>\n<div class=\"PGvq2d\" dir=\"ltr\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">\n<pre data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 14px 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><code data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"undefined\" data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Optimize-Volume -DriveLetter D -Defrag -Verbose\r\n Optimize-Volume -DriveLetter D -ReTrim -Verbose\r\n<\/span><\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"iMHp6c\" data-animation-atomic=\"\" data-sae=\"\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 3px 0px 0px; text-decoration: none; border-bottom: 0.666667px solid rgb(44, 46, 53);\">\n<div data-sfc-cp=\"\" data-sfc-root=\"ep\" data-ved=\"2ahUKEwjF2_ah-IyXAxWyj4kEHWaGFd4Qh9gSegYIAAgmEAI\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><em class=\"zhvwWe\" style=\"font-size: 1rem;\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">(After trimming, my actual active file space dropped to exactly <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">519 GB<\/strong>).<\/em><\/div>\n<div data-sfc-cp=\"\" data-sfc-root=\"ep\" data-ved=\"2ahUKEwjF2_ah-IyXAxWyj4kEHWaGFd4Qh9gSegYIAAgmEAI\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><\/div>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"yhAwj\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-sfc-inited=\"2\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><!--TgQPHd|||[]--><\/div>\n<h3 class=\"otQkpb\" style=\"text-align: center;\" role=\"heading\" aria-level=\"3\" data-wiz-attrbind=\"aria-level=Ybbxob_3b\/fLk2Md\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 20px; font-weight: 600; margin: 24px 0px 12px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"ez-toc-section\" id=\"Phase_2_Live_Network_Streaming_via_qm_importdisk\"><\/span>Phase 2: Live Network Streaming via <code class=\"KDcb0c\" dir=\"ltr\" data-sfc-root=\"ep\" data-complete=\"true\" data-sae=\"\" data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 600; margin: 0px; text-decoration: none; border-bottom: 0.666667px solid rgb(44, 46, 53);\">qm importdisk<!--TgQPHd|||[]--><\/code><!--TgQPHd|||[]--><span class=\"ez-toc-section-end\"><\/span><\/h3>\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIKRAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">When you add an ESXi storage provider to Proxmox, PVE transparently maps the remote files to a hidden local runtime directory on the PVE host. This allows you to target the file directly with native Proxmox CLI utilities without copying anything locally.<!--TgQPHd|||[]--><\/div>\n<div data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIKRAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><\/div>\n<div data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIKRAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"iNqyIf\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Add ESXi Storage<!--TgQPHd|||[]--><\/strong>:<!--TgQPHd|||[]--><\/span><\/p>\n<ul class=\"KsbFXc U6u95\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-ved=\"2ahUKEwjskKzIyo2XAxUag4kEHQUwIcQQ-7AUegoIAggACAAIFRAJ\" data-hveid=\"CAIIAAgACBUQCQ\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">\n<li class=\"Z1qcYe\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAIIAAgACBUQCg\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px 0px 12px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"iNqyIf\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Log in to the Proxmox Web UI.<!--TgQPHd|||[]--><\/span><!--TgQPHd|||[]--><\/li>\n<li class=\"Z1qcYe\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAIIAAgACBUQCw\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px 0px 12px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"iNqyIf\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Go to <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Datacenter<!--TgQPHd|||[]--><\/strong> &gt; <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Storage<!--TgQPHd|||[]--><\/strong> &gt; <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Add<!--TgQPHd|||[]--><\/strong> and select <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">ESXi<!--TgQPHd|||[]--><\/strong>.<!--TgQPHd|||[]--><\/span><!--TgQPHd|||[]--><\/li>\n<li class=\"Z1qcYe\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAIIAAgACBUQDA\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px 0px 12px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"iNqyIf\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Enter a unique <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">ID<!--TgQPHd|||[]--><\/strong>, your ESXi host <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Server IP\/hostname<!--TgQPHd|||[]--><\/strong>, and your ESXi administrator <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Username<!--TgQPHd|||[]--><\/strong> and <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Password<!--TgQPHd|||[]--><\/strong>.<!--TgQPHd|||[]--><\/span><!--TgQPHd|||[]--><\/li>\n<li class=\"Z1qcYe\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAIIAAgACBUQDQ\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px 0px 12px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"iNqyIf\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Check <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Skip Certificate Verification<!--TgQPHd|||[]--><\/strong> if your ESXi node uses a self-signed certificate.<!--TgQPHd|||[]--><\/span><!--TgQPHd|||[]--><\/li>\n<li class=\"Z1qcYe\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAIIAAgACBUQDg\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px 0px 12px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"iNqyIf\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Click <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Add<!--TgQPHd|||[]--><\/strong>.<\/span><\/li>\n<\/ul>\n<\/div>\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIKhAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">I created a dummy placeholder virtual disk shell on my newly restored Proxmox Veeam VM (let&#8217;s assume VM ID 108), hopped into the Proxmox CLI, and initiated a fileless stream:<\/div>\n<div class=\"BpxUDf aiModeUiCodeBlock__Container\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-wiz-uids=\"Ybbxob_3i,Ybbxob_3h\" data-hveid=\"CAAIKxAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">\n<div data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">\n<div class=\"rq1a2\" data-animation-atomic=\"\" data-sae=\"\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0.666667px solid rgb(44, 46, 53);\">\n<div class=\"PGvq2d\" dir=\"ltr\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">\n<pre data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 14px 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><code data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"undefined\" data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">qm importdisk <\/span><span class=\"N1kUHb\" data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(250, 144, 62);\">108<\/span><span class=\"undefined\" data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"> \/run\/pve\/import\/esxi\/desktopesxi\/mnt\/ha-datacenter\/Desktop-<\/span><span class=\"N1kUHb\" data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(250, 144, 62);\">2<\/span><span class=\"undefined\" data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">TB\/Veeam\/Veeam.vmdk msiNM620<\/span><\/code><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<p><!--TgQPHd|||[[&quot;bash&quot;,&quot;qm importdisk 108 \/run\/pve\/import\/esxi\/desktopesxi\/mnt\/ha-datacenter\/Desktop-2TB\/Veeam\/Veeam.vmdk msiNM620\\n&quot;,[[&quot;qm importdisk &quot;,0],[&quot;108&quot;,6],[&quot; \/run\/pve\/import\/esxi\/desktopesxi\/mnt\/ha-datacenter\/Desktop-&quot;,0],[&quot;2&quot;,6],[&quot;TB\/Veeam\/Veeam.vmdk msiNM620\\n&quot;,0]]]]--><\/div>\n<div class=\"yhAwj\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-sfc-inited=\"2\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><!--TgQPHd|||[]--><\/div>\n<div class=\"AdPoic\" role=\"heading\" aria-level=\"4\" data-animation-nesting=\"\" data-sfc-cp=\"\" data-wiz-attrbind=\"aria-level=Ybbxob_3o\/fLk2Md\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-sae=\"\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 24px 0px 12px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Beating the Scary LVM-Thin Warnings<!--TgQPHd|||[]--><\/div>\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAILRAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">During the transfer, Proxmox threw a terrifying set of warnings:<br data-sfc-root=\"ep\" data-sfc-pl=\"|||[]\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\" \/><code class=\"KDcb0c\" dir=\"ltr\" data-sfc-root=\"ep\" data-complete=\"true\" data-sae=\"\" data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0.666667px solid rgb(44, 46, 53);\">WARNING: Sum of all thin volume sizes (&lt;1.53 TiB) exceeds the size of thin pool nvme-nm620\/nvme-nm620 and the size of whole volume group (&lt;953.87 GiB).<!--TgQPHd|||[]--><\/code><!--TgQPHd|||[]--><\/div>\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAILhAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Because the 1.2 TiB virtual boundary of the VMDK was larger than my physical 953 GiB NVMe drive, LVM-Thin immediately flagged that I was overprovisioning.<!--TgQPHd|||[]--><\/div>\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAILxAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">However, because we trimmed the drive beforehand, the <code class=\"KDcb0c\" dir=\"ltr\" data-sfc-root=\"ep\" data-complete=\"true\" data-sae=\"\" data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0.666667px solid rgb(44, 46, 53);\">qm importdisk<!--TgQPHd|||[]--><\/code> zero-detection engine kicked in. As the empty space traveled over the LAN, the engine detected the logical zeros and completely dropped them instead of writing them to disk.<!--TgQPHd|||[]--><\/div>\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIMBAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">The progress bar crept through the full 1.2 TiB virtual structure, but it <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">stopped consuming physical blocks<!--TgQPHd|||[]--><\/strong> when it hit empty space. It finished flawlessly at 100%, consuming an exact physical footprint of <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">518.88 GB<!--TgQPHd|||[]--><\/strong> on my NVMe pool\u2014matching my source data perfectly without a single byte of temporary file bloat.<\/div>\n<div data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIMBAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><\/div>\n<div class=\"yhAwj\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-sfc-inited=\"2\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><!--TgQPHd|||[]--><\/div>\n<h2 class=\"otQkpb\" style=\"text-align: center;\" role=\"heading\" aria-level=\"3\" data-wiz-attrbind=\"aria-level=Ybbxob_41\/fLk2Md\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 20px; font-weight: 600; margin: 24px 0px 12px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"ez-toc-section\" id=\"4_The_Finish_Line\"><\/span>4. The Finish Line<!--TgQPHd|||[]--><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIMxAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">To wrap up the migration, I executed the final hookups:<!--TgQPHd|||[]--><\/div>\n<ol class=\"T9WCjf qkgVBf\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">\n<li class=\"Z1qcYe\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAINBAB\" data-complete=\"true\" data-sae=\"\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px 0px 12px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"iNqyIf\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Attach the Block Storage:<!--TgQPHd|||[]--><\/strong> Inside the PVE GUI for VM 108, I went to <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Hardware<!--TgQPHd|||[]--><\/strong>, double-clicked the newly created <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Unused Disk<!--TgQPHd|||[]--><\/strong>, set it to <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">SCSI<!--TgQPHd|||[]--><\/strong>, and checked the <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Discard<!--TgQPHd|||[]--><\/strong> box (ensuring that future Veeam deletions will actively reclaim space on my LVM-Thin pool).<!--TgQPHd|||[]--><\/span><!--TgQPHd|||[]--><\/li>\n<li class=\"Z1qcYe\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAINBAC\" data-complete=\"true\" data-sae=\"\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px 0px 12px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"iNqyIf\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Mount the ISO &amp; Fix the NIC:<!--TgQPHd|||[]--><\/strong> Because the restored Windows VM lacked KVM network drivers, it booted up offline. I used <code class=\"KDcb0c\" dir=\"ltr\" data-sfc-root=\"ep\" data-complete=\"true\" data-sae=\"\" data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0.666667px solid rgb(44, 46, 53);\">scp<!--TgQPHd|||[]--><\/code> to copy the <code class=\"KDcb0c\" dir=\"ltr\" data-sfc-root=\"ep\" data-complete=\"true\" data-sae=\"\" data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0.666667px solid rgb(44, 46, 53);\">virtio-win.iso<!--TgQPHd|||[]--><\/code> from my other cluster node over to this host&#8217;s local directory (<code class=\"KDcb0c\" dir=\"ltr\" data-sfc-root=\"ep\" data-complete=\"true\" data-sae=\"\" data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0.666667px solid rgb(44, 46, 53);\">\/var\/lib\/vz\/template\/iso\/<!--TgQPHd|||[]--><\/code>), mounted it to the VM&#8217;s virtual CD drive, opened Device Manager, and updated the Ethernet Controller driver.<!--TgQPHd|||[]--><\/span><!--TgQPHd|||[]--><\/li>\n<li class=\"Z1qcYe\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAINBAD\" data-complete=\"true\" data-sae=\"\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px 0px 12px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"iNqyIf\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Rescan &amp; Run:<!--TgQPHd|||[]--><\/strong> I brought the data disk <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Online<!--TgQPHd|||[]--><\/strong> in Windows Disk Management (which instantly recognized the original NTFS\/ReFS structure perfectly), opened the Veeam console, and ran a <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Repository Rescan<!--TgQPHd|||[]--><\/strong>.<!--TgQPHd|||[]--><\/span><!--TgQPHd|||[]--><\/li>\n<p><!--TgQPHd|||[]--><\/ol>\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAINRAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Within minutes, Veeam mapped my existing backup chains, and my entire infrastructure was fully functional on Proxmox VE with zero data loss and zero configuration rebuilding.<\/div>\n<div data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAINRAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><\/div>\n<div data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAINRAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">This was nice but I didn&#8217;t move the backup data to a dedicated block level storage, did I&#8230; No&#8230; will I&#8230; mhmmm maybe eventually, but I&#8217;m surprised how well the conversation went, another step to a VMware -&gt; PVE migration. Also, the backup jobs moved from hotadd to NBD cause the Veeam server is not longer on a ESXi host. And <a href=\"https:\/\/forums.veeam.com\/viewtopic.php?f=79&amp;t=95577&amp;start=0\">you can&#8217;t map a backup set when re-adding a backup job sourcing a PVE hos<\/a>t.<\/div>\n<h2 style=\"text-align: center;\" data-sfc-root=\"ep\" data-hveid=\"CAAINRAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"ez-toc-section\" id=\"BONUS\"><\/span>BONUS<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIChAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">When I tried running a <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Full VM Restore<!--TgQPHd|||[]--><\/strong> from my VMware backups directly onto an <strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">LVMthin pool<!--TgQPHd|||[]--><\/strong> on my high-speed SSD. The restore immediately cratered to a miserable 3 MB\/s, pinning my host at a massive <code class=\"KDcb0c\" dir=\"ltr\" data-sfc-root=\"ep\" data-complete=\"true\" data-sae=\"\" data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0.666667px solid rgb(44, 46, 53);\">iowait<!--TgQPHd|||[]--><\/code> percentage. Same problem in my previous blog post when I migrated my email server.<!--TgQPHd|||[]--><\/div>\n<div data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIChAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><\/div>\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAICxAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">When I cancelled the job in Veeam, the console said &#8220;Failed,&#8221; but the helper VM refused to die, and the host remained completely paralyzed. Even running a basic Linux <code class=\"KDcb0c\" dir=\"ltr\" data-sfc-root=\"ep\" data-complete=\"true\" data-sae=\"\" data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0.666667px solid rgb(44, 46, 53);\">sync<!--TgQPHd|||[]--><\/code> command via SSH completely hung and stole my terminal shell.<!--TgQPHd|||[]--><\/div>\n<div data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAICxAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><\/div>\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIDBAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">Here is the juicy reality of what happened under the hood:<!--TgQPHd|||[]--><\/div>\n<ul class=\"KsbFXc U6u95\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-ved=\"2ahUKEwiXk-TeuY2XAxVNhIkEHYYaE-cQ-7AUegYIAAgNEAA\" data-hveid=\"CAAIDRAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">\n<li class=\"Z1qcYe\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIDRAB\" data-complete=\"true\" data-sae=\"\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px 0px 12px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"iNqyIf\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">The Block-Level Choke:<!--TgQPHd|||[]--><\/strong> Veeam streams raw, unallocated data blocks during standard restores. On an un-provisioned LVMthin target, this forces the Proxmox host to perform real-time metadata lookups and extend block structures on <em class=\"zhvwWe\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">every single write loop<!--TgQPHd|||[]--><\/em>. This created a massive write-amplification loop that totally choked the SSD controller queue.\n<p><!--TgQPHd|||[]--><\/span><!--TgQPHd|||[]--><\/li>\n<li class=\"Z1qcYe\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIDRAC\" data-complete=\"true\" data-sae=\"\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px 0px 12px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"iNqyIf\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">The Unkillable &#8220;D-State&#8221;:<!--TgQPHd|||[]--><\/strong> Hard-killing the VM mid-stream locked the <code class=\"KDcb0c\" dir=\"ltr\" data-sfc-root=\"ep\" data-complete=\"true\" data-sae=\"\" data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0.666667px solid rgb(44, 46, 53);\">dm-thin<!--TgQPHd|||[]--><\/code> kernel driver into an uninterruptible sleep state (Linux D-state). Because the storage layer was frozen waiting on hardware, the kernel completely ignored standard ACPI shutdown signals.<!--TgQPHd|||[]--><\/span><!--TgQPHd|||[]--><span class=\"iNqyIf\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><br \/>\n<!--TgQPHd|||[]--><\/span><!--TgQPHd|||[]--><\/li>\n<p><!--TgQPHd|||[]--><\/ul>\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIDhAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><strong class=\"rQesXe MPyX\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 700; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">How I broken it loose without pulling the physical power cord:<!--TgQPHd|||[]--><\/strong><br data-sfc-root=\"ep\" data-sfc-pl=\"|||[]\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\" \/>With the storage layer totally unresponsive and <code class=\"KDcb0c\" dir=\"ltr\" data-sfc-root=\"ep\" data-complete=\"true\" data-sae=\"\" data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0.666667px solid rgb(44, 46, 53);\">sync<!--TgQPHd|||[]--><\/code> frozen, standard reboot commands were completely useless. I had to open a secondary SSH shell and talk directly to the Linux kernel using aggressive, low-level emergency triggers.<!--TgQPHd|||[]--><\/div>\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIDxAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">First, I enabled the kernel&#8217;s magic SysRq interface:<\/div>\n<div class=\"BpxUDf aiModeUiCodeBlock__Container\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-wiz-uids=\"ismGSc_1v,ismGSc_1u\" data-hveid=\"CAAIEBAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">\n<div data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">\n<div class=\"rq1a2\" data-animation-atomic=\"\" data-sae=\"\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0.666667px solid rgb(44, 46, 53);\">\n<div class=\"PGvq2d\" dir=\"ltr\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">\n<pre data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 14px 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><code data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"undefined\" data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">echo <\/span><span class=\"N1kUHb\" data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(250, 144, 62);\">1<\/span><span class=\"undefined\" data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"> &gt; \/proc\/sys\/kernel\/sysrq\r\n<\/span><\/code><\/pre>\n<\/div>\n<\/div>\n<div class=\"iMHp6c\" data-animation-atomic=\"\" data-sae=\"\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 3px 0px 0px; text-decoration: none; border-bottom: 0.666667px solid rgb(44, 46, 53);\">\n<div data-sfc-cp=\"\" data-sfc-root=\"ep\" data-ved=\"2ahUKEwiXk-TeuY2XAxVNhIkEHYYaE-cQh9gSegYIAAgQEAI\" data-complete=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span style=\"font-size: 1rem;\">Then, I sent the emergency hardware reboot signal (<\/span><code class=\"KDcb0c\" dir=\"ltr\" data-sfc-root=\"ep\" data-complete=\"true\" data-sae=\"\" data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0.666667px solid rgb(44, 46, 53);\">b<\/code><span style=\"font-size: 1rem;\">):<\/span><\/div>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"yhAwj\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-complete=\"true\" data-processed=\"true\" data-sfc-inited=\"2\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><!--TgQPHd|||[]--><\/div>\n<div class=\"BpxUDf aiModeUiCodeBlock__Container\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-wiz-uids=\"ismGSc_25,ismGSc_24\" data-hveid=\"CAAIEhAA\" data-complete=\"true\" data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 4px 0px 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">\n<div data-processed=\"true\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">\n<div class=\"rq1a2\" data-animation-atomic=\"\" data-sae=\"\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0.666667px solid rgb(44, 46, 53);\">\n<div class=\"a2TNg\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">\n<div class=\"GlO4G\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 20px; font-weight: 500; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">bash<\/div>\n<\/div>\n<div class=\"PGvq2d\" dir=\"ltr\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">\n<pre data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 14px 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><code data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><span class=\"undefined\" data-copy-service-computed-style=\"font-family: monospace; font-size: 14px; font-weight: 400; margin: 0px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">echo b &gt; \/proc\/sysrq-trigger<\/span><\/code><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<p><!--TgQPHd|||[[&quot;bash&quot;,&quot;echo b \\u003e \/proc\/sysrq-trigger\\n&quot;,[[&quot;echo b \\u003e \/proc\/sysrq-trigger\\n&quot;,0]]]]--><\/div>\n<div class=\"n6owBd awi2gc\" data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIExAA\" data-complete=\"true\" data-processed=\"true\" aria-owns=\"action-menu-parent-container\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">This acted as a software-level reset button, forcing the motherboard to instantly reboot without trying to unmount or flush the corrupted, frozen storage queues. On startup, the LVMthin subsystem automatically repaired its metadata boundaries and the host came back up healthy.<\/div>\n<div data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIExAA\" data-complete=\"true\" data-processed=\"true\" aria-owns=\"action-menu-parent-container\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\"><\/div>\n<div data-sfc-cp=\"\" data-sfc-root=\"ep\" data-hveid=\"CAAIExAA\" data-complete=\"true\" data-processed=\"true\" aria-owns=\"action-menu-parent-container\" data-copy-service-computed-style=\"font-family: &quot;Google Sans&quot;, Arial, sans-serif, &quot;Noto Color Emoji&quot;; font-size: 16px; font-weight: 400; margin: 12px 0px 16px; text-decoration: none; border-bottom: 0px rgb(230, 232, 240);\">I found restoring to the same SSD configured as a DIR Ext4 storage had to problem and restored the VM in 5 minutes. So, not sure how to properly handle a Veeam restore to a LVM-thin without having this problem.<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Running Veeam as a Windows VM on Proxmox VE With Broadcom completely upending the virtualization landscape, like many admins, I\u2019ve been heavily evaluating Proxmox VE (PVE) as a viable enterprise alternative. While Veeam now natively supports PVE, I wanted to see what happens when you run the Veeam Backup &amp; Replication (VBR) server as a &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/zewwy.ca\/index.php\/2026\/09\/26\/migrating-veeam-as-a-vmware-vm-to-a-proxmox-vm\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Migrating Veeam as a VMware VM to a Proxmox VM&#8221;<\/span><\/a><\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5,236],"tags":[14,461,501,88],"class_list":["post-1869","post","type-post","status-publish","format-standard","hentry","category-hypervisors","category-veeam","tag-esxi","tag-pve","tag-storage","tag-vmware"],"_links":{"self":[{"href":"https:\/\/zewwy.ca\/index.php\/wp-json\/wp\/v2\/posts\/1869","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/zewwy.ca\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/zewwy.ca\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/zewwy.ca\/index.php\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/zewwy.ca\/index.php\/wp-json\/wp\/v2\/comments?post=1869"}],"version-history":[{"count":1,"href":"https:\/\/zewwy.ca\/index.php\/wp-json\/wp\/v2\/posts\/1869\/revisions"}],"predecessor-version":[{"id":1870,"href":"https:\/\/zewwy.ca\/index.php\/wp-json\/wp\/v2\/posts\/1869\/revisions\/1870"}],"wp:attachment":[{"href":"https:\/\/zewwy.ca\/index.php\/wp-json\/wp\/v2\/media?parent=1869"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/zewwy.ca\/index.php\/wp-json\/wp\/v2\/categories?post=1869"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/zewwy.ca\/index.php\/wp-json\/wp\/v2\/tags?post=1869"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}