Disk2vhd: Jak przenieść fizyczny serwer na wirtualny

Masz starą maszynę fizyczną — serwer z Windows Server 2012 albo zwykłego desktopa — która ciągle musi działać, ale sprzęt już rzęzi, dysk ma swoje lata, a gwarancja skończyła się dawno temu? Zamiast klonować to na nowy fizyczny komputer, możesz przenieść cały system, aplikacje i dane do maszyny wirtualnej na hoście Hyper-V. Ten proces nazywa się P2V (physical-to-virtual), a najprostszym i darmowym narzędziem do jego pierwszego kroku jest Disk2vhd ze zestawu Sysinternals.

W tym poradniku przejdziesz całą drogę: od tego, czym P2V w ogóle jest i kiedy go nie robić, przez przygotowanie maszyny, użycie Disk2vhd w trybie graficznym i z linii poleceń, aż po utworzenie gotowej VM-ki w Hyper-V i posprzątanie po konwersji. Konkretnie, krok po kroku.

Czym jest konwersja P2V i co właściwie robi Disk2vhd

P2V to przeniesienie działającego systemu operacyjnego razem z aplikacjami i danymi z fizycznego sprzętu na maszynę wirtualną. Zamiast instalować wszystko od zera na nowej VM-ce, przenosisz dokładnie ten sam system, który masz teraz — z tymi samymi ustawieniami, kontami i zainstalowanym oprogramowaniem.

Tu ważna rzecz, którą wiele poradników przemilcza: Disk2vhd samo w sobie nie jest pełnym narzędziem P2V. Robi tylko jedną, ale kluczową rzecz — czyta zawartość fizycznych dysków i tworzy z nich plik .vhdx (lub starszy .vhd), czyli wirtualny dysk dla Hyper-V. Nie przygotowuje systemu do pracy w środowisku wirtualnym, nie tworzy samej maszyny i nie podmienia sterowników. To Ty robisz resztę kroków ręcznie. Dzięki temu narzędzie jest proste, lekkie (archiwum do pobrania waży około 564 KB) i nie wymaga instalacji.

Najważniejsza zaleta Disk2vhd w porównaniu do zwykłego skopiowania dysku: używa VSS (Volume Shadow Copy Service). Tworzy migawkę woluminu, dzięki czemu możesz skonwertować dysk systemu, który nadal działa, bez wyłączania serwera. Obraz jest spójny na poziomie systemu plików, a Ty nie musisz mieć kilkugodzinnego okna serwisowego tylko po to, żeby zrobić kopię.

Kiedy NIE używać Disk2vhd

Zanim odpalisz konwersję, sprawdź, czy Twój przypadek nie należy do tych, w których P2V przez Disk2vhd to zły pomysł. To oszczędzi Ci długich godzin debugowania nierozruchalnej VM-ki.

  • Kontroler domeny (Active Directory) — nie konwertuj DC „na żywca”. Active Directory bardzo źle znosi cofanie się w czasie (USN rollback), do którego łatwo doprowadzić przy konwersji obrazu. Zamiast tego postaw świeżą VM-kę, dodaj rolę kontrolera domeny, zsynchronizuj z istniejącym DC i przenieś role FSMO. To bezpieczna ścieżka.
  • Serwery baz danych i aplikacje transakcyjneSQL Server, Exchange, SharePoint. Tu potrzebujesz spójności transakcyjnej, a nie tylko plikowej. Zaplanuj okno serwisowe, zatrzymaj usługi baz danych przed konwersją i ewentualnie odłącz kartę sieciową, żeby nikt nie zapisywał danych w trakcie.
  • Maszyny z RAID sprzętowym i egzotycznymi sterownikami pamięci masowej — sterowniki kontrolera RAID po przeniesieniu do Hyper-V będą niepotrzebne, ale ich usuwanie na maszynie źródłowej może ją unieruchomić. Nie ruszaj ich przed konwersją.
PRZECZYTAJ  Procedura wyłączenia i włączenia serwerowni i serwerów

W pozostałych przypadkach — zwykły serwer plików, serwer wydruku, aplikacja webowa, stacja robocza z legacy-oprogramowaniem — możesz spokojnie ruszać.

Przygotowanie maszyny przed konwersją (pre-flight check)

Konwersje P2V bywają kapryśne, a im starszy system operacyjny, tym większe ryzyko. Te kilka kroków robi różnicę między udaną migracją a wieczorem spędzonym na ratowaniu systemu.

  1. Zrób pełną kopię zapasową maszyny źródłowej w bezpieczne miejsce. To Twoja siatka bezpieczeństwa — gdyby coś poszło nie tak, masz do czego wrócić.
  2. Sprawdź kondycję systemu plików. Uruchom chkdsk i przejrzyj dziennik zdarzeń (Event Viewer) pod kątem błędów dysku. Konwersja uszkodzonego woluminu da Ci uszkodzony .vhdx.
  3. Posprzątaj, ale ostrożnie. Odinstaluj zbędne oprogramowanie i sterowniki sprzętu, którego w VM-ce nie będzie. Ale nie ruszaj niczego, co jest krytyczne dla rozruchu (np. sterowników RAID) — jeśli P2V się nie uda, nie chcesz zostać z niedziałającą maszyną źródłową.
  4. Rozważ wyjęcie maszyny z domeny przed konwersją. To eliminuje część problemów po przeniesieniu, np. konflikt konta komputera w AD.
  5. Zatrzymaj jak najwięcej usług, zwłaszcza bazy danych. Disk2vhd robi wprawdzie migawkę VSS, ale efekt jest najlepszy, gdy aplikacje są zamknięte i nie zapisują danych. Wszystko, co zmieni się na dysku po rozpoczęciu konwersji, nie trafi do obrazu.

VHD czy VHDX — który format wybrać

Przy konwersji Disk2vhd zapyta, czy chcesz format VHD, czy VHDX. W praktyce niemal zawsze wybierasz VHDX — i tu jest dlaczego:

  • VHD — starszy format, limit pojemności 2 TB, brak ochrony przed uszkodzeniem przy nagłej utracie zasilania, brak wsparcia dla TRIM i wyrównania sektorów. Wybierasz go tylko wtedy, gdy obraz ma trafić na Hyper-V w Windows Server 2008 R2 lub starszym.
  • VHDX — nowszy format dostępny od Windows Server 2012. Pojemność do 64 TB, ochrona przed uszkodzeniem dzięki dziennikowaniu metadanych, sektory 4 KB dla lepszego wyrównania i wsparcie dla TRIM. To domyślny i rekomendowany wybór.

Zaznacz opcję Use Vhdx, chyba że masz konkretny powód, by tego nie robić. Wersja systemu gościa nie ma tu znaczenia — nawet jeśli przenosisz starszego Windowsa, VHDX zadziała.

Krok po kroku: konwersja w trybie graficznym

1. Pobierz Disk2vhd

Ściągnij narzędzie z oficjalnej strony Microsoft Sysinternals (learn.microsoft.com/sysinternals/downloads/disk2vhd). Archiwum zawiera disk2vhd.exe oraz plik pomocy Disk2vhd.chm. Najnowsza wersja to v2.02 (z 12 października 2021 r.) — narzędzie jest stabilne i od lat nie wymagało aktualizacji.

2. Skopiuj i uruchom na maszynie źródłowej

Rozpakuj archiwum i skopiuj disk2vhd.exe na komputer, którego dyski chcesz skonwertować. Uruchom plik bezpośrednio na tej maszynie — narzędzie nie instaluje się, działa od razu po dwukliku.

PRZECZYTAJ  Web server Linux Debian, Apache, PostgreSQL, PHP. Serwer www Linux.

3. Wybierz dyski i lokalizację pliku

W oknie programu zobaczysz listę dostępnych woluminów. Zwróć uwagę na partycję System Reserved (tworzoną na systemach od Windows 7 i Windows Server 2008 R2 wzwyż) — musisz ją zaznaczyć, jeśli chcesz, żeby wynikowy .vhdx był rozruchowy. Jeśli ją pominiesz, VM-ka się nie uruchomi.

W polu VHD File Name wskaż lokalizację docelową (przycisk z trzema kropkami otwiera okno wyboru). Przy włączonej opcji VSS możesz spokojnie zapisywać .vhdx nawet na tym samym dysku, który konwertujesz — pod warunkiem, że jest na nim wystarczająco wolnego miejsca.

4. Uruchom konwersję

Upewnij się, że zaznaczone są Use VHDX i Use Volume Shadow Copy, a następnie kliknij Create. Program najpierw utworzy migawkę VSS, a potem zacznie kopiować dane. Możesz dalej korzystać z systemu podczas kopiowania, ale pamiętaj — zmiany wprowadzone po starcie konwersji nie trafią do obrazu.

Tryb wiersza poleceń — gdy potrzebujesz automatyzacji

Tryb graficzny jest wygodny dla pojedynczej maszyny. Ale jeśli masz do skonwertowania kilkanaście stacji albo chcesz wpiąć konwersję w skrypt logowania czy zadanie harmonogramu, użyj wersji konsolowej. Składnia jest prosta:

disk2vhd [-h] <[drive: [drive:]...] | [*]>

Co oznaczają poszczególne elementy:

  • -h — opcjonalny. Przygotowuje warstwę abstrakcji sprzętu (HAL), jeśli konwertujesz dysk podpięty do Windows XP lub Windows Server 2003. Przy nowszych systemach niepotrzebny.
  • drive: lub * — wymagany. Podajesz litery dysków oddzielone spacjami (np. C: D:) albo gwiazdkę * dla wszystkich. Uwaga: tylko gwiazdka obejmie partycję System Reserved.
  • vhdfile — wymagany. Pełna ścieżka i nazwa pliku wynikowego. Ścieżki UNC (np. \\serwer\udzial\obraz.vhdx) są akceptowane.

Przykład — konwersja wszystkich dysków systemu, łącznie z System Reserved, do jednego obrazu:

disk2vhd * C:\VHD\serwer.vhdx

Co dostajesz na wyjściu

Oba tryby dają ten sam efekt: jeden plik VHD/VHDX na każdy dysk fizyczny w źródle. Jeśli konwertujesz jeden dysk, dostaniesz dokładnie tę nazwę, którą podałeś. Jeśli więcej — do nazwy bazowej dokleja się myślnik i numer dysku.

Przykład: dla nazwy bazowej Demo i trzech dysków źródłowych powstaną Demo-0.vhdx, Demo-1.vhdx i Demo-2.vhdx. Pierwszy z nich zwykle zawiera partycję System Reserved razem z dyskiem C:.

Sprawdź obraz przed użyciem

Zanim podepniesz .vhdx do maszyny wirtualnej, zweryfikuj jego integralność na hoście z Hyper-V (Windows Server 2012+). Wystarczy jedno polecenie PowerShell:

Test-VHD -Path "C:\VHDs\serwer.vhdx"

Test nie jest wyczerpujący, ale wyłapie oczywiste problemy, które uniemożliwiłyby użycie pliku w Hyper-V.

Tworzenie maszyny wirtualnej w Hyper-V

Pamiętaj: Disk2vhd dał Ci tylko pliki dysków. Teraz musisz ręcznie zbudować VM-kę i podpiąć do niej obraz. Najprościej zrobić to w Hyper-V Manager.

  1. Skopiuj pliki .vhdx na host Hyper-V, do lokalizacji, do której host ma dostęp. Domyślny katalog na wirtualne dyski znajdziesz w Hyper-V Settings → Virtual Hard Disks.
  2. W panelu Actions kliknij New → Virtual Machine, by uruchomić kreatora.
  3. Nadaj nazwę i lokalizację VM-ki. Ta nazwa to tylko etykieta w narzędziach Hyper-V — nie ma związku z nazwą systemu gościa.
  4. Wybierz generację — to kluczowy moment. Jeśli maszyna źródłowa startowała w trybie klasycznego BIOS, musisz wybrać Generation 1. Jeśli używała nowszego trybu UEFI — wybierz Generation 2. Pomyłka tu skończy się VM-ką, która się nie uruchomi.
  5. Ustaw pamięć. Podaj ilość pamięci startowej i zdecyduj, czy włączyć Dynamic Memory.
  6. Podłącz kartę sieciową. Możesz od razu wskazać virtual switch albo zostawić jako Not Connected i skonfigurować później (zalecane, jeśli maszyna źródłowa wciąż działa w sieci — unikniesz konfliktu IP).
  7. Podłącz istniejący dysk wirtualny. W kroku konfiguracji dysku wybierz opcję podpięcia istniejącego .vhdx i wskaż plik utworzony przez Disk2vhd.
  8. Potwierdź ustawienia i kliknij Finish. Kreator nie uruchomi VM-ki automatycznie — masz jeszcze chwilę, by dostosować liczbę vCPU czy pamięć.

Pierwsze uruchomienie i sprzątanie po konwersji

Uruchom maszynę w Hyper-V Manager. System przejdzie przez fazę wykrywania nowego sprzętu — to normalne. Pamiętaj o dwóch rzeczach:

  • Obraz jest w stanie crash-consistent — system zachowa się tak, jakby został wyłączony nieprawidłowo. Może pojawić się okno Shutdown Event Tracker i konieczność jednego lub dwóch restartów, by sfinalizować zmiany sprzętowe.
  • Po pierwszym rozruchu otwórz Menedżer urządzeń i usuń pozostałości po sprzęcie fizycznym, którego w VM-ce już nie ma — karty sieciowe, kontrolery, sterowniki RAID. Najlepiej włącz Pokaż ukryte urządzenia, bo część z nich będzie wyszarzona, ale wciąż obecna i może powodować konflikty.

Na koniec zweryfikuj działanie:

  • Sieć — jeśli nie podłączyłeś karty podczas tworzenia VM, zrób to teraz i skonfiguruj adres IP. Adapter w Hyper-V to nowa karta syntetyczna, więc stara konfiguracja IP może wymagać ponownego wpisania.
  • Aktywacja — oprogramowanie powiązane ze sprzętem (w tym sam Windows) może wymagać ponownej aktywacji, bo zmienił się „sprzęt”.
  • Aplikacje — przetestuj kluczowe usługi i dane. Programy ściśle zależne od konkretnego sprzętu mogą nie zadziałać w środowisku wirtualnym.

FAQ — najczęstsze pytania o Disk2vhd i P2V

Czy Disk2vhd jest darmowe i bezpieczne?

Tak, jest w pełni darmowe i sygnowane przez Microsoft (Sysinternals). „Bezpieczne” w sensie ryzyka konwersji oznacza tyle, że samo narzędzie działa pewnie, ale nie przygotowuje systemu do wirtualizacji — problemy mogą wynikać ze sterowników pamięci masowej czy działających usług. Dlatego przed konwersją zatrzymaj bazy danych i zrób kopię zapasową.

Czy mogę konwertować działający serwer bez wyłączania go?

Tak — to główna zaleta Disk2vhd. Dzięki VSS narzędzie robi migawkę i kopiuje system „na żywo”. Pamiętaj jednak, że zmiany zapisane na dysku po starcie konwersji nie trafią do obrazu, więc dla baz danych i tak warto zaplanować okno serwisowe.

Wybrać Generation 1 czy Generation 2 przy tworzeniu VM?

Zależy od trybu rozruchu maszyny źródłowej. Klasyczny BIOS (MBR) → Generation 1. Nowszy UEFI (GPT) → Generation 2. Jeśli wybierzesz źle, system w VM-ce się nie uruchomi.

Dlaczego moja maszyna wirtualna nie startuje po konwersji?

Najczęstsze przyczyny: pominięta partycja System Reserved (konwertuj wszystkie dyski przez *), zła generacja VM (BIOS vs UEFI) albo uszkodzony obraz. Sprawdź .vhdx poleceniem Test-VHD przed pierwszym uruchomieniem.

Czy Disk2vhd nadaje się do migracji do VMware lub Proxmox?

Disk2vhd tworzy obrazy w formacie Hyper-V (.vhd/.vhdx). Do VMware czy Proxmox musiałbyś najpierw przekonwertować obraz (np. narzędziem qemu-img) lub użyć dedykowanego narzędzia P2V dla danej platformy. Do środowiska Hyper-V to jednak najprostsza i najtańsza droga.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Wymagane pola są oznaczone *

You May Also Like