{"id":29995257,"url":"https://github.com/mrdaemon/hyperv-data-tools","last_synced_at":"2026-02-10T15:31:50.360Z","repository":{"id":1288119,"uuid":"1227929","full_name":"mrdaemon/hyperv-data-tools","owner":"mrdaemon","description":"A collection of Powershell cmdlets allowing one to import and export Hyper-V virtual machines, including the dreaded \"config only\" export which has no exposed user interface to import back into Hyper-V 2008 R2.","archived":false,"fork":false,"pushed_at":"2011-01-10T21:07:51.000Z","size":100,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2023-10-20T21:54:41.812Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mrdaemon.png","metadata":{"files":{"readme":"Readme.rst","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2011-01-06T23:02:01.000Z","updated_at":"2017-02-02T01:47:25.000Z","dependencies_parsed_at":"2022-08-16T12:55:20.073Z","dependency_job_id":null,"html_url":"https://github.com/mrdaemon/hyperv-data-tools","commit_stats":null,"previous_names":[],"tags_count":0,"template":null,"template_full_name":null,"purl":"pkg:github/mrdaemon/hyperv-data-tools","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrdaemon%2Fhyperv-data-tools","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrdaemon%2Fhyperv-data-tools/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrdaemon%2Fhyperv-data-tools/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrdaemon%2Fhyperv-data-tools/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mrdaemon","download_url":"https://codeload.github.com/mrdaemon/hyperv-data-tools/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrdaemon%2Fhyperv-data-tools/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268820421,"owners_count":24312378,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-04T02:00:09.867Z","response_time":79,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-08-05T01:35:15.185Z","updated_at":"2026-02-10T15:31:50.325Z","avatar_url":"https://github.com/mrdaemon.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"Hyper-V Data Tools\n===================\n\nHyper-V 2008 R2 removed the option to export a Virtual Machine without\nits State Data (Snapshots, Virtual Disk Images (VHDs), Suspend State),\nas configuration only through the GUI.\n        \nThe functionality is still there, only it is not exposed through the\nHyper-V Manager snap-in in R2. Many scripts and resources exist to \nperform such an export, namely the PowerShell management Library for \nHyper-V (see links). However, there are very few, if any usable tools\nthat leverage the new ImportVirtualSystemEx() API to perform an import\nof such a configuration-only export. This cmdlet attempts to remedy this.\n\nThe cmdlets (right now, only Import-HVConfigOnlyVM) in this powershell \nmodule will accomplish a multitude of tasks, such as:\n\nCopy the specified VM Export to a sensible location based on the current \nglobal setting for VM Data location in Hyper-V, and then assuming the \nVHD files are in the right place and the Virtual Networks still have \nthe same friendly names, reattach everything together and import the \nvirtual machine back into Hyper-V.\n\nThis was written because there is no direct upgrade path between\nHyper-V Server 2008 and Hyper-V Server 2008 R2, and moving 900gb VHDs\ntakes ages.\n\nImport-HVConfigOnlyVM\n-----------------------\nSafely Imports Hyper-V Virtual Machines that were exported\nas configuration only, without State Data (snapshots, VHDs, etc).\n\n\nPARAMETER ExportDirectory\n~~~~~~~~~~~~~~~~~~~~~~~~~~\nSpecifies either a Directory or a list of directories where the\nConfiguration Only exports can be found. Each directory must contain\nthe 'config.xml' file in the root along with the \"Virtual Machines\"\ndirectory containing the actual configuration.\n        \nINPUTS\n~~~~~~\nYou can pipe a collection of directories into Import-HVConfigOnlyVM.\nThey will all be processed.\n\nOUTPUTS\n~~~~~~~\nSystem.Object - may be formatted as a table, contains a report of\nthe operations in its property members.\n\nNOTES\n~~~~~~\nThe script must be ran locally on the Hyper-V server.\nIt also will only work on Hyper-V R2 and Powershell 2.0.\n\nEXAMPLES\n~~~~~~~~~\nImport a config only export of a virtual machine stored at\nE:\\Export\\VMSVR03\n\n    C:\\PS\u003e Import-HVConfigOnlyVM -ExportDirectory E:\\Export\\VMSVR03\n\nImport all the exports stored in E:\\Export\n\n    C:\\PS\u003e gci E:\\Export | where { $_.PSIsContainer -eq $true } | Import-HVConfigOnlyVM\n    \n \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrdaemon%2Fhyperv-data-tools","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmrdaemon%2Fhyperv-data-tools","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrdaemon%2Fhyperv-data-tools/lists"}