Jak skopiować pliki na serwer Hyper-V i do maszyn wirtualnych: 7 metod
Hyper-V to hiperwizor działający w systemie Windows, którym można zarządzać zarówno bezpośrednio na komputerze, na którym jest zainstalowany, jak i zdalnie. Często zachodzi potrzeba kopiowania plików na serwer Hyper-V oraz z serwera na maszyny wirtualne. Nie można po prostu przeciągać i upuszczać plików na maszyny wirtualne Hyper-V, dlatego należy korzystać z innych metod kopiowania plików.
Na przykład podczas tworzenia nowej maszyny wirtualnej w Hyper-V konieczne jest zainstalowanie na niej systemu operacyjnego. Zazwyczaj odbywa się to poprzez zamontowanie obrazu instalacyjnego ISO nośnika systemu operacyjnego. Aby przenieść nośnik na host Hyper-V, należy skopiować plik ISO na host i zainstalować system operacyjny gościa na nowej maszynie wirtualnej Hyper-V.
Ten wpis na blogu przedstawia 6 metod kopiowania plików na maszyny wirtualne Hyper-V oraz na serwer Hyper-V. Należy pamiętać, że te metody kopiowania plików na serwer Hyper-V można również wykorzystać w innych scenariuszach, takich jak kopiowanie plików z hosta Hyper-V na maszyny wirtualne.
Metoda 1: Jak skopiować pliki za pomocą udziału plików na hoście Hyper-V
Metoda ta polega na utworzeniu udziału plików na hoście Hyper-V i skopiowaniu obrazu ISO lub innych plików do tego udziału SMB. Protokół Protokół SMB jest natywnym protokołem udostępniania w systemie Windows, ale jest również obsługiwany w systemie Linux i innych systemach operacyjnych.
Metodę tę można również wykorzystać do kopiowania plików na serwer Hyper-V z dowolnej maszyny fizycznej lub wirtualnej, o ile nawiązano połączenie sieciowe.
- Należy włączyć regułę zapory sieciowej, aby zezwolić na przychodzące połączenia SMB dla komputera z uruchomionym Hyper-V. Aby włączyć
file and printer sharingw zaporze sieciowej, należy uruchomić następujące polecenie na hoście Hyper-V:
netsh advfirewall firewall set rule group="File and Printer Sharing" new enable=Yes
Uwaga: Można skonfigurować udział plików SMB przyznać odpowiednie uprawnienia potrzebnym użytkownikom i udostępnić tylko ten folder, który jest potrzebny.
- Jeśli na komputerze z systemem Windows dostępny jest graficzny interfejs użytkownika (GUI), można połączyć się ze zdalnym udziałem plików na hoście Hyper-V, wpisując ścieżkę do udziału w pasku adresu okna Eksploratora Windows. W tym przykładzie używamy ukrytego udziału systemowego C$, który jest domyślnie włączony na wszystkich komputerach z systemem Windows do celów administracyjnych. Podobnie można połączyć się z innymi woluminami, takimi jak D$, E$ itp.
10.10.10.31c$
Uwaga: Pliki są przechowywane na dysku C: w celach demonstracyjnych. Zaleca się użycie innej, dedykowanej partycji na pliki maszyn wirtualnych, obrazy ISO, udziały plików oraz inne dane niesystemowe.
- Przejdź do katalogu, w którym chcesz przechowywać obrazy ISO lub w którym znajdują się inne pliki, które chcesz skopiować. Jeśli katalog ten nie został jeszcze utworzony, możesz to zrobić teraz. W naszym przypadku pliki ISO znajdują się w C:ISO_1 na naszym hoście Hyper-V, a ścieżka sieciowa to 10.10.10.31c$ISO_1
Jeśli konieczne jest użycie interfejsu wiersza poleceń, można zamapować udział plików SMB jako dysk sieciowy za pomocą polecenia:
Net use * 〈your hyper-v host〉d$
Na przykład:
net use S: 10.10.10.31d$
Uwaga: Polecenie to można uruchomić w programie CMD lub PowerShell na kliencie lub serwerze zawierającym dane, które chcesz przenieść do środowiska Hyper-V.
- Skopiuj potrzebny plik ISO (lub inne pliki) z komputera lokalnego (w naszym przypadku: C:datashared01 ) na host Hyper-V, korzystając z tej ścieżki sieciowej:
- . Po skopiowaniu obrazu ISO na serwer możemy skierować napęd DVD na plik obrazu i przejść do folderu, który utworzyliśmy w katalogu głównym dysku (C:).
- Po zakończeniu kopiowania wszystkich potrzebnych plików na host Hyper-V można ze względów bezpieczeństwa wyłączyć połączenia przychodzące w zaporze systemu Windows na hoście Hyper-V. Jeśli zdecydujemy się to zrobić, możemy wyłączyć reguły zapory dotyczące udziału plików i drukarek, które wcześniej zezwoliliśmy, po prostu zmieniając
YesnaNow poleceniu PowerShell.
netsh advfirewall firewall set rule group="File and Printer Sharing" new enable=No
Metoda 2: Jak skopiować pliki na serwery Hyper-V przy użyciu jednego udziału plików
Gdy w środowisku znajduje się wiele hostów Hyper-V, konfigurowanie udziału plików na każdym z nich i kopiowanie obrazów ISO na wszystkie te hosty może być uciążliwe. Ponadto wykorzystywanie przestrzeni dyskowej na wielu hostach dla tych samych obrazów ISO może być nieracjonalne.
Można skonfigurować udział plików na innym serwerze, na przykład na serwer plików lub NAS i przechowywać tam wszystkie potrzebne obrazy ISO. Wystarczy jednorazowo skonfigurować udział plików, ustawić dostęp dla hostów Hyper-V, a następnie korzystać z potrzebnych obrazów ISO przechowywanych w jednym miejscu dla wszystkich hostów.
Ta metoda jest wygodna, jeśli wszystkie używane maszyny należą do domeny Active Directory.
Jeśli chcesz użyć tej metody do przesyłania plików między hostem Hyper-V a systemem operacyjnym gościa maszyny wirtualnej, musisz skonfigurować przełącznik wirtualny w ustawieniach Hyper-V i ustawić wymagany tryb sieciowy.
Jeśli chcesz skopiować pliki do maszyny wirtualnej z systemem operacyjnym gościa Linux, oprócz protokołu SMB masz jeszcze jedną opcję. Możesz użyć SSH do bezpiecznego przesyłania plików Hyper-V przez sieć.
Metoda 3: Przesyłanie plików w Hyper-V za pośrednictwem RDP
Jeśli serwer Hyper-V działa na komputerze z systemem Windows wyposażonym w interfejs graficzny, można połączyć się z tym hostem za pomocą protokołu RDP (Remote Desktop Protocol) i podłączyć dyski lokalne swojego komputera w celu skopiowania potrzebnych plików. W tym celu należy włączyć połączenia pulpitu zdalnego na serwerze docelowym.
Metodę tę można wykorzystać do kopiowania plików na serwer Hyper-V z innego fizycznego lub wirtualnego komputera z systemem Windows.
- Aby włączyć połączenia z pulpitem zdalnym, przejdź na stronę
Start>Settings>System>Remote Desktopi włącz opcjęRemote Desktop. - Uruchom klienta Pulpit zdalny systemu Windows, który znajduje się pod adresem
%windir%system32mstsc.exe
Wpisz mstsc w wierszu poleceń lub w oknie dialogowym Run i naciśnij przycisk Enter.
- Wprowadź adres IP lub nazwę hosta komputera zdalnego (w naszym przykładzie jest to host Hyper-V o adresie IP 10.10.10.31 ) oraz nazwę użytkownika. Nazwę użytkownika można wprowadzić w pełnym formacie ( domainuser lub computeruser ).
- Przejdź do zakładki
Local Resourcesi kliknijMore.
- Wybierz zasoby lokalne, które chcesz zmapować z komputera na host zdalny (w naszym przykładzie hostem zdalnym jest host Hyper-V). Rozwiń
Drivesi wybierz potrzebny dysk. Potrzebne pliki znajdują się na dyskuE:na naszym komputerze, dlatego wybieramy dyskE:do zmapowania dla naszego połączenia RDP. - Kliknij
OK, aby zapisać ustawienia, a następnie kliknijConnect.
Po nawiązaniu sesji pulpitu zdalnego otwórz My Computer lub This PC w Eksploratorze Windows na komputerze zdalnym. Powinieneś zobaczyć zmapowany dysk z komputera lokalnego, który został zmapowany na komputerze zdalnym (E on SERVER01-DC na poniższym zrzucie ekranu). Przejdź do potrzebnych plików na tym zamapowanym dysku i skopiuj je na swój host Hyper-V.
Ta metoda działa również w przypadku maszyn wirtualnych, o ile są one podłączone do sieci.
Metoda 4: Przesyłanie plików w Hyper-V za pomocą polecenia cmdlet PowerShell
PowerShell 4.0 i nowsze wersje zawierają przydatne polecenie cmdlet, które pozwala kopiować pliki z hosta Hyper-V na maszynę wirtualną bez konieczności posiadania połączenia sieciowego między hostem a gościem maszyny wirtualnej oraz bez konieczności konfigurowania zapory sieciowej.
Przyjrzyjmy się zatem, jak skopiować pliki na maszynę wirtualną Hyper-V w PowerShell bez korzystania z sieci.
- Włącz usługi gościa na maszynie wirtualnej. Usługi integracyjne muszą być zainstalowane w systemie operacyjnym gościa maszyny wirtualnej.
Usługi gościa są częścią Usługi integracji Hyper-V, ale nie są domyślnie włączone. Aby włączyć usługi gościa, otwórz VM settings, wybierz Integration Services w lewym panelu okna ustawień maszyny wirtualnej i zaznacz pole wyboru Guest services .

Włącz usługi gościa dla maszyny wirtualnej w PowerShell: Enable-VMIntegrationService -VMName VM1 -Name 'Guest Service Interface'
- Można sprawdzić, czy funkcja Usługi gościa jest włączona w PowerShellu:
Get-VMIntegrationService -name Guest* -VMName VM1,VM2
Gdzie VM1,VM2 to nazwy maszyn wirtualnych
- Jeśli status to Brak połączenia , należy zaktualizować maszynę wirtualną i zainstalować Usługi integracji w systemie operacyjnym gościa.
- Jeśli status to False , można włączyć wymagany interfejs usług gościa:
Enable-VMIntegrationService -name Guest* -VMName win10preview -Passthru
- Aby wykonać transfer plików z hosta Hyper-V do maszyny wirtualnej, należy użyć poniższego polecenia, ustawiając ścieżkę źródłową na hoście Hyper-V oraz ścieżkę docelową na maszynie wirtualnej:
Copy-VMFile "VMName" -SourcePath "F:Test.txt" -DestinationPath "C:TempTest.txt" -CreateFullPath -FileSource Host
Gdzie:
- VMname to nazwa maszyny wirtualnej, do której kopiowany jest plik (nazwę maszyny wirtualnej można sprawdzić w Menedżerze Hyper-V; nie jest to nazwa hosta maszyny wirtualnej wyświetlana w systemie operacyjnym gościa).
- SourcePath to ścieżka do pliku źródłowego na hoście Hyper-V (pliku, który chcesz skopiować).
- DestinationPath to ścieżka do pliku docelowego na maszynie wirtualnej Hyper-V (miejsce, do którego ma zostać skopiowany potrzebny plik).
- Polecenie -CreateFullPath służy do utworzenia pełnej ścieżki wraz ze wszystkimi niezbędnymi folderami, jeśli jeszcze nie istnieją.
W naszym przykładzie dokładne polecenie PowerShell do przesyłania plików Hyper-V z hosta do maszyny wirtualnej (gościa) brzmi:
Copy-VMFile "VM2" -SourcePath "C:tempfile01.txt" -DestinationPath "C:Temp1file01.txt" -CreateFullPath -FileSource Host
Uwaga: cmdlet Copy-VMFile działa tylko w kierunku od hosta Hyper-V do maszyny wirtualnej.
Metoda 5: Montowanie dysku VHDX na hoście i w maszynie wirtualnej
Zasadą tej metody jest utworzenie dysku wirtualnego VHDX, który można zamontować zarówno na hoście Hyper-V, jak i w maszynie wirtualnej. Można skopiować potrzebne pliki na ten dysk wirtualny, zamontować dysk na wybranej maszynie i kopiować pliki na/z dysku wirtualnego.
W naszym przykładzie używamy systemu Windows Server 2019. Tworzenie dysku wirtualnego VHDX jest dostępne w Zarządzanie komputerem , a nie tylko w Menedżer Hyper-V podczas konfiguracji maszyn wirtualnych.
- Otwórz okno
Computer Management. Można to zrobić, naciskając klawiszWin+Rw celu otwarcia okna dialogowegoRuni uruchomienia poleceniacompmgmt.msc. - Przejdź do sekcji
Storage>Disk Managementw oknie Zarządzanie komputerem . - Kliknij prawym przyciskiem myszy
Disk Managementi w menu kontekstowym wybierz opcjęCreate VHD.
- Otworzy się nowe okno służące do tworzenia dysku wirtualnego.
- Określ lokalizację wirtualnego dysku twardego na hoście Hyper-V, na przykład C:Hyper-Vdata-temp
- Ustaw rozmiar wirtualnego dysku twardego. Tworzymy wirtualny dysk twardy typu
8-GBw celach demonstracyjnych. - Wybieramy format wirtualnego dysku twardego. Wybieramy
VHDXjako nowszy format. Aby dowiedzieć się więcej o różnicach, przeczytaj VHD a VHDX. - Wybieramy typ wirtualnego dysku twardego. Wybieramy
Dynamically expanding, aby zaoszczędzić miejsce na dysku, dopóki nie zostanie on zapełniony danymi. - Klikamy
OK, aby zapisać ustawienia i zamknąć okno.
Alternatywnie, oto przykład polecenia służącego do utworzenia wirtualnego dysku VHDX w PowerShellu:
New-VHD -Path C:Hyper-Vdata-temp.vhdx -SizeBytes 8GB -Dynamic -BlockSizeBytes 1MB
Polecenie do zamontowania dysku wirtualnego VHD w PowerShellu:
mount-VHD -path C:Hyper-Vdata-temp.vhdx
Na naszym hoście Hyper-V utworzono wirtualny dysk twardy.
- Kliknij prawym przyciskiem myszy ten wirtualny dysk twardy VHDX w
Disk Managementi kliknijInitialize Disk.
Alternatywnie, jeśli wolisz używać PowerShellu, wyświetl listę wszystkich zamontowanych dysków, aby zidentyfikować numer potrzebnego dysku wirtualnego przed inicjalizacją:
Get-Disk
- Twój dysk zostanie automatycznie wybrany. Wybierz styl partycji. Używamy
MBR(Master Boot Record) w celu zapewnienia lepszej kompatybilności. KliknijOK.
Alternatywnie, polecenie dla osób korzystających z PowerShell zawiera numer dysku wirtualnego oraz styl partycji:
Initialize-Disk 1 -PartitionStyle MBR
- Utwórz nowy wolumin (partycję) na dysku wirtualnym zainicjowanym na hoście Hyper-V. Ta partycja będzie również widoczna w maszynie wirtualnej Hyper-V (lub Linux, który obsługuje systemy plików NTFS).
Kliknij prawym przyciskiem myszy wolumin o rozmiarze 8 GB i wybierz opcję „ New Simple Volume ” z menu kontekstowego.

- Otworzy się kreator . Kliknij
Next. - Określ rozmiar woluminu. Wykorzystaj cały rozmiar dysku dla tego woluminu.
- Przypisz literę dysku, na przykład H:
- Sformatuj partycję. Wybierz system plików NTFS, pozostaw domyślny rozmiar jednostki alokacji i wprowadź etykietę woluminu (na przykład: Kopiowanie plików ). Zaznacz pole wyboru
Perform a quick format.
Alternatywnie możesz użyć następujących poleceń PowerShell do utworzenia i sformatowania woluminu:
New-Partition -DiskNumber 1 -UseMaximumsize -AssignDriveLetter
Format-Volume -DriveLetter H -FileSystem NTFS -Full -Force
- Po zakończeniu pracy z kreatorem zamontowany dysk wirtualny powinien być widoczny w Eksploratorze Windows na komputerze hosta Hyper-V.
- Skopiuj potrzebne pliki na partycję znajdującą się na dysku wirtualnym. Kopiujemy plik01.txt , jak pokazano na poniższym zrzucie ekranu.
- Musimy odmontować dysk wirtualny z naszego Host Hyper-V po skopiowaniu wszystkich potrzebnych Pliki do dysku wirtualnego.
Kliknij prawym przyciskiem myszy odpowiednią partycję zamontowaną z dysku wirtualnego VHDX i wybierz Eject w menu kontekstowym.
Alternatywnie, polecenie do odmontowania dysku wirtualnego z maszyny hosta w PowerShellu:
dismount-VHD -path C:Hyper-Vdata-temp.vhdx
- Możesz zamontować ten dysk wirtualny utworzony do przesyłu Pliki Hyper V z hosta Hyper-V do gościa i odwrotnie. Zamontujmy dysk wirtualny z zapisanymi Pliki do maszyny wirtualnej.
- Wybierz potrzebną Maszyna wirtualna i otwórz
VM Settingsw Menedżerze Hyper-V. - Wybierz potrzebny kontroler dysku wirtualnego w lewym panelu okna ustawienia maszyny wirtualnej.
- Wybierz
Hard Drivei kliknijAdd.
- Wybierz
Virtual hard diski kliknijBrowse, aby dodać istniejący wirtualny dysk twardy do maszyny wirtualnej. - Określ ścieżkę VHDX. W naszym przypadku ścieżka to C:Hyper-Vdata-temp.vhdx
- Wciśnij
OK, aby zapisać ustawienia.
Alternatywnie, jest to polecenie PowerShell do dodania istniejącego wirtualnego dysku twardego do konfiguracji maszyny wirtualnej Hyper-V:
Add-VMHardDiskDrive -VMName VM2 -Path C:Hyper-Vdata-temp.vhdx
- Uruchom maszynę wirtualną z dołączonym dyskiem wirtualnym na Host Hyper-V.
- Zaloguj się do system gościa i sprawdź, czy wolumin znajdujący się na dysku wirtualnym został zamontowany automatycznie. W przeciwnym razie, przejdź do
Computer Management>Disk Managementi przypisz literę dysku woluminowi z Pliki, które potrzebujesz przesłać z Host Hyper-V do maszyny wirtualnej. - Skopiuj potrzebne Pliki z dołączonego dysku wirtualnego do maszyny wirtualnej.
Metoda 6: VMConnect z tryb sesji rozszerzonej
VMConnect, czyli połączenie z maszyną wirtualną, to wbudowane narzędzie Hyper-V do zarządzania maszynami wirtualnymi. Ekran działający jako monitor dla maszyny wirtualnej, na którym możesz zobaczyć, jak nawigujesz za pomocą klawiatury i myszy, jest częścią narzędzia VMConnect. Używanie VMConnect w tryb sesji rozszerzonej jest wygodniejsze i oferuje więcej funkcji.
Tryb sesji rozszerzonej pozwala dostosować rozdzielczość ekranu podczas łączenia się z maszyną wirtualną i dołączać lokalne zasoby hosta, na którym uruchomiono Menedżer Hyper-V, do zarządzania Maszyny wirtualne. Lokalne zasoby są dołączane podobnie jak w przypadku używania połączenia Pulpitu Zdalnego do dostępu do zdalnego hosta lub maszyny wirtualnej.
Aby włączyć Enhanced session mode:
- Kliknij prawym przyciskiem myszy na nazwie swojego Host Hyper-V w Menedżerze Hyper-V, a następnie w menu kontekstowym wybierz
Hyper-V Settings. - Kliknij
Enhanced session modew lewym panelu - Zaznacz pole wyboru
Use enhanced session mode
Alternatywnie, włącz Enhanced session mode w PowerShellu:
Set-VMHost -EnableEnhancedSessionMode $True
Gdy Enhanced session mode jest włączony, a wszystko jest skonfigurowane na maszynie wirtualnej gościa i serwerze Hyper-V, można uruchomić Maszynę wirtualną i połączyć się z nią za pomocą VMConnect.
Powinieneś zobaczyć okno do wyboru rozdzielczości ekranu, jeśli Enhanced session mode jest włączony. Kliknij Show Options w tym oknie.
Wybierz kartę Local Resources. Kliknij More w sekcji Urządzenia i zasoby lokalne .
Wybierz dyski dostępne na swoim Host Hyper-V, które chcesz podłączyć do Maszyny wirtualnej.
Metoda 7: Transfer plików Hyper-V za pomocą obrazów ISO
Inną metodą kopiowania plików do wirtualnej maszyny Hyper-V jest użycie dysku wirtualnego VHDX. Jednak metoda ta działa tylko w jednym kierunku (kopiowanie plików Hyper-V do Maszyny wirtualnej), a dostęp do plików z Maszyny wirtualnej jest tylko do odczytu.
Jeśli masz aplikację, która może edytować i zapisywać pliki ISO będące obrazami plików CD/DVD, możesz zapisać potrzebne pliki na swoim Host Hyper-V do obrazu ISO i wstawić ten obraz ISO jako wirtualne medium DVD do Maszyny wirtualnej.
Jeśli potrzebujesz skopiować startowy obraz ISO do swojej wirtualnej maszyny (na przykład podczas testowania wirtualizacja zagnieżdżona), powinieneś utworzyć nowy pusty plik obrazu ISO, który nie jest startowy, i dodać plik obrazu startowego ISO do tego obrazu. Następnie możesz skopiować startowy obraz ISO z zewnętrznego pliku ISO wstawionego do wirtualnego napędu DVD maszyny wirtualnej.
Podsumowanie
Którąkolwiek metodę wybierzesz do kopiowania plików na serwer Hyper-V, nie zaleca się jej używania do celów kopii zapasowej. Te metody nie są tak wydajne i niezawodne, jak profesjonalne rozwiązania do kopii zapasowej Hyper-V. Dzisiejsze rozwiązania kopii zapasowej maszyn wirtualnych Hyper-V, takie jak NAKIVO Backup & Replication, tworzą kopie zapasowe na poziomie hosta, które są małe, szybkie i łatwe do odzyskiwania danych.





















