Przygotowywanie dysku VHD lub VHDX systemu Windows do przekazania na platformę Azure
Dotyczy: ✔️ maszyny wirtualne z systemem Windows
Przed przekazaniem maszyny wirtualnej z systemem Windows ze środowiska lokalnego do platformy Azure należy przygotować wirtualny dysk twardy (VHD lub VHDX). pomoc techniczna platformy Azure maszyn wirtualnych generacji 1 i 2. generacji, które mają format pliku VHD i mają dysk o stałym rozmiarze. Maksymalny rozmiar dozwolony dla wirtualnego dysku twardego systemu operacyjnego na maszynie wirtualnej generacji 1 wynosi 2 TB. Plik VHD lub VHDX można zweryfikować, korzystając z tej dokumentacji.
Plik VHDX można przekonwertować na dysk VHD, przekonwertować dynamicznie rozwijający się dysk na dysk o stałym rozmiarze, ale nie można zmienić generacji maszyny wirtualnej. Aby uzyskać więcej informacji, zobacz Tworzenie maszyny wirtualnej generacji 1 lub 2 w funkcji Hyper-V? i Obsługa maszyn wirtualnych 2. generacji na platformie Azure.
Aby uzyskać informacje na temat zasad pomocy technicznej dla maszyn wirtualnych platformy Azure, zobacz Obsługa oprogramowania serwera firmy Microsoft dla maszyn wirtualnych platformy Azure.
Uwaga
Instrukcje opisane w tym artykule dotyczą:
- 64-bitowa wersja systemu Windows Server 2008 R2 i nowszych systemów operacyjnych Windows Server. Aby uzyskać informacje na temat uruchamiania 32-bitowego systemu operacyjnego na platformie Azure, zobacz Obsługa 32-bitowych systemów operacyjnych na maszynach wirtualnych platformy Azure.
- Jeśli jakiekolwiek narzędzie odzyskiwania po awarii zostanie użyte do migracji obciążenia, takiego jak usługa Azure Site Recovery lub usługa Azure Migrate, ten proces jest nadal wymagany w systemie operacyjnym gościa w celu przygotowania obrazu przed migracją.
Systemowy kontroler plików
Uruchom narzędzie do sprawdzania plików systemu Windows przed uogólnienie obrazu systemu operacyjnego
Systemowy moduł sprawdzania plików (SFC) służy do weryfikowania i zastępowania plików systemowych systemu Windows.
Ważne
Użyj sesji programu PowerShell z podwyższonym poziomem uprawnień, aby uruchomić przykłady w tym artykule.
Uruchom polecenie SFC:
sfc.exe /scannow
Beginning system scan. This process will take some time.
Beginning verification phase of system scan.
Verification 100% complete.
Windows Resource Protection did not find any integrity violations.
Po zakończeniu skanowania SFC zainstaluj aktualizacje systemu Windows i uruchom ponownie komputer.
Ustawianie konfiguracji systemu Windows na platformie Azure
Uwaga
Platforma Azure instaluje plik ISO na dysku DVD-ROM, gdy maszyna wirtualna z systemem Windows jest tworzona na podstawie uogólnionego obrazu. Z tego powodu dysk DVD-ROM musi być włączony w systemie operacyjnym w uogólnionej ilustracji. Jeśli ta funkcja jest wyłączona, maszyna wirtualna z systemem Windows będzie zablokowana w środowisku gotowego do użycia (OOBE).
Usuń wszystkie statyczne trasy trwałe w tabeli routingu:
- Aby wyświetlić tabelę routingu, uruchom polecenie
route.exe print
. - Sprawdź sekcję Trasy trwałości. Jeśli istnieje trasa trwała, użyj
route.exe delete
polecenia , aby go usunąć.
- Aby wyświetlić tabelę routingu, uruchom polecenie
Usuń serwer proxy WinHTTP:
netsh.exe winhttp reset proxy
Jeśli maszyna wirtualna musi pracować z określonym serwerem proxy, dodaj wyjątek serwera proxy dla adresu IP platformy Azure (168.63.129.16), aby maszyna wirtualna mogła nawiązać połączenie z platformą Azure:
$proxyAddress='<your proxy server>' $proxyBypassList='<your list of bypasses>;168.63.129.16' netsh.exe winhttp set proxy $proxyAddress $proxyBypassList
Otwórz narzędzie DiskPart:
diskpart.exe
Ustaw zasady sieci SAN dysku na :
Onlineall
DISKPART> san policy=onlineall DISKPART> exit
Ustaw czas uniwersalny koordynowany (UTC) dla systemu Windows. Ponadto ustaw typ uruchamiania usługi czasowej systemu Windows w32time na Wartość Automatyczna:
Set-ItemProperty -Path HKLM:\SYSTEM\CurrentControlSet\Control\TimeZoneInformation -Name RealTimeIsUniversal -Value 1 -Type DWord -Force Set-Service -Name w32time -StartupType Automatic
Ustaw profil zasilania na wysoką wydajność:
powercfg.exe /setactive SCHEME_MIN powercfg /setacvalueindex SCHEME_CURRENT SUB_VIDEO VIDEOIDLE 0
Upewnij się, że zmienne środowiskowe TEMP i TMP są ustawione na ich wartości domyślne:
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Environment' -Name TEMP -Value "%SystemRoot%\TEMP" -Type ExpandString -Force Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Environment' -Name TMP -Value "%SystemRoot%\TEMP" -Type ExpandString -Force
W przypadku maszyn wirtualnych ze starszymi systemami operacyjnymi (Windows Server 2012 R2 lub Windows 8.1 i poniżej) upewnij się, że zainstalowano najnowsze usługi składników integracji funkcji Hyper-V. Aby uzyskać więcej informacji, zobacz Aktualizacja składników integracji funkcji Hyper-V dla maszyny wirtualnej z systemem Windows.
Uwaga
W scenariuszu, w którym maszyny wirtualne mają być konfigurowane przy użyciu rozwiązania odzyskiwania po awarii między lokalnym serwerem VMware i platformą Azure, nie można używać usług składników integracji funkcji Hyper-V. Jeśli tak jest, skontaktuj się z pomocą techniczną programu VMware, aby przeprowadzić migrację maszyny wirtualnej na platformę Azure i udostępnić ją na serwerze VMware.
Sprawdzanie usług systemu Windows
Upewnij się, że każda z następujących usług systemu Windows jest ustawiona na wartość domyślną systemu Windows. Te usługi są minimalne, które należy skonfigurować, aby zapewnić łączność maszyny wirtualnej. Aby ustawić ustawienia uruchamiania, uruchom następujący przykład:
Get-Service -Name BFE, Dhcp, Dnscache, IKEEXT, iphlpsvc, nsi, mpssvc, RemoteRegistry |
Where-Object StartType -ne Automatic |
Set-Service -StartupType Automatic
Get-Service -Name Netlogon, Netman, TermService |
Where-Object StartType -ne Manual |
Set-Service -StartupType Manual
Aktualizowanie ustawień rejestru pulpitu zdalnego
Upewnij się, że następujące ustawienia są poprawnie skonfigurowane pod kątem dostępu zdalnego:
Uwaga
Jeśli podczas uruchamiania Set-ItemProperty -Path 'HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services' -Name <string> -Value <object>
zostanie wyświetlony komunikat o błędzie , można go bezpiecznie zignorować. Oznacza to, że domena nie ustawia tej konfiguracji za pomocą obiektu zasad grupy.
Protokół RDP (Remote Desktop Protocol) jest włączony:
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server' -Name fDenyTSConnections -Value 0 -Type DWord -Force Set-ItemProperty -Path 'HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services' -Name fDenyTSConnections -Value 0 -Type DWord -Force
Port RDP jest poprawnie skonfigurowany przy użyciu portu domyślnego 3389:
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\Winstations\RDP-Tcp' -Name PortNumber -Value 3389 -Type DWord -Force
Podczas wdrażania maszyny wirtualnej domyślne reguły są tworzone dla portu 3389. Aby zmienić numer portu, zrób to po wdrożeniu maszyny wirtualnej na platformie Azure.
Odbiornik nasłuchuje w każdym interfejsie sieciowym:
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\Winstations\RDP-Tcp' -Name LanAdapter -Value 0 -Type DWord -Force
Skonfiguruj tryb uwierzytelniania na poziomie sieci (NLA) dla połączeń RDP:
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -Name UserAuthentication -Value 1 -Type DWord -Force
Ustaw wartość keep-alive:
Set-ItemProperty -Path 'HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services' -Name KeepAliveEnable -Value 1 -Type DWord -Force Set-ItemProperty -Path 'HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services' -Name KeepAliveInterval -Value 1 -Type DWord -Force Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\Winstations\RDP-Tcp' -Name KeepAliveTimeout -Value 1 -Type DWord -Force
Ustaw opcje ponownego nawiązywania połączenia:
Set-ItemProperty -Path 'HKLM:\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services' -Name fDisableAutoReconnect -Value 0 -Type DWord -Force Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\Winstations\RDP-Tcp' -Name fInheritReconnectSame -Value 1 -Type DWord -Force Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\Winstations\RDP-Tcp' -Name fReconnectSame -Value 0 -Type DWord -Force
Ogranicz liczbę połączeń współbieżnych:
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\Winstations\RDP-Tcp' -Name MaxInstanceCount -Value 4294967295 -Type DWord -Force
Usuń wszystkie certyfikaty z podpisem własnym powiązane z odbiornikiem RDP:
if ((Get-Item -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp').Property -contains 'SSLCertificateSHA1Hash') { Remove-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp' -Name SSLCertificateSHA1Hash -Force }
Ten kod gwarantuje, że można nawiązać połączenie podczas wdrażania maszyny wirtualnej. Te ustawienia można również przejrzeć po wdrożeniu maszyny wirtualnej na platformie Azure.
Jeśli maszyna wirtualna jest częścią domeny, sprawdź następujące zasady, aby upewnić się, że poprzednie ustawienia nie zostały przywrócone.
Goal Zasady Wartość Włączono protokół RDP Konfiguracja komputera\Zasady\Ustawienia systemu Windows\Szablony administracyjne\Składniki\Usługi pulpitu zdalnego\Host sesji usług pulpitu zdalnego\Połączenia Zezwalanie użytkownikom na zdalne łączenie przy użyciu pulpitu zdalnego Zasady grupy nla Settings\Administrative Templates\Components\Remote Desktop Services\Remote Desktop Session Host\Security Wymaganie uwierzytelniania użytkownika na potrzeby dostępu zdalnego przy użyciu usługi NLA Ustawienia zachowania aktywności Konfiguracja komputera\Zasady\Ustawienia systemu Windows\Szablony administracyjne\Składniki systemu Windows\Usługi pulpitu zdalnego\Host sesji pulpitu zdalnego\Połączenia Konfigurowanie interwału połączenia o zachowaniu aktywności Ponowne nawiązywanie połączenia z ustawieniami Konfiguracja komputera\Zasady\Ustawienia systemu Windows\Szablony administracyjne\Składniki systemu Windows\Usługi pulpitu zdalnego\Host sesji pulpitu zdalnego\Połączenia Połącz ponownie automatycznie Ograniczona liczba ustawień połączenia Konfiguracja komputera\Zasady\Ustawienia systemu Windows\Szablony administracyjne\Składniki systemu Windows\Usługi pulpitu zdalnego\Host sesji pulpitu zdalnego\Połączenia Ograniczanie liczby połączeń
Konfigurowanie reguł zapory systemu Windows
Włącz Zaporę systemu Windows w trzech profilach (domena, standardowa i publiczna):
Set-NetFirewallProfile -Profile Domain, Public, Private -Enabled True
Uruchom poniższy przykład, aby umożliwić usługę WinRM za pośrednictwem trzech profilów zapory (domena, prywatna i publiczna) i włączyć usługę zdalną programu PowerShell:
Enable-PSRemoting -Force
Uwaga
Po uruchomieniu tego polecenia włącza ona automatycznie odpowiednie reguły zapory.
Włącz następujące reguły zapory, aby zezwolić na ruch RDP:
Get-NetFirewallRule -DisplayGroup 'Remote Desktop' | Set-NetFirewallRule -Enabled True
Włącz regułę udostępniania plików i drukarek, aby maszyna wirtualna mogła odpowiadać na żądania ping wewnątrz sieci wirtualnej:
Set-NetFirewallRule -Name FPS-ICMP4-ERQ-In -Enabled True
Utwórz regułę dla sieci platformy Azure:
New-NetFirewallRule -DisplayName AzurePlatform -Direction Inbound -RemoteAddress 168.63.129.16 -Profile Any -Action Allow -EdgeTraversalPolicy Allow New-NetFirewallRule -DisplayName AzurePlatform -Direction Outbound -RemoteAddress 168.63.129.16 -Profile Any -Action Allow
Ważne
168.63.129.16 to specjalny publiczny adres IP należący do firmy Microsoft for Azure. Aby uzyskać więcej informacji, zobacz Co to jest adres IP 168.63.129.16.
Jeśli maszyna wirtualna jest częścią domeny, sprawdź następujące zasady firmy Microsoft Entra, aby upewnić się, że poprzednie ustawienia nie zostały przywrócone.
Goal Zasady Wartość Włączanie profilów Zapory systemu Windows Konfiguracja komputera\Zasady\Ustawienia systemu Windows\Szablony administracyjne\Sieć\Połączenie sieciowe\Zapora systemu Windows\Profil domeny\Zapora systemu Windows Ochrona wszystkich połączeń sieciowych Włączanie protokołu RDP Konfiguracja komputera\Zasady\Ustawienia systemu Windows\Szablony administracyjne\Sieć\Połączenie sieciowe\Zapora systemu Windows\Profil domeny\Zapora systemu Windows Zezwalaj na wyjątki przychodzącego pulpitu zdalnego Konfiguracja komputera\Zasady\Ustawienia systemu Windows\Szablony administracyjne\Sieć\Połączenie sieciowe\Zapora systemu Windows\Profil standardowy\Zapora systemu Windows Zezwalaj na wyjątki przychodzącego pulpitu zdalnego Włączanie protokołu ICMP-V4 Konfiguracja komputera\Zasady\Ustawienia systemu Windows\Szablony administracyjne\Sieć\Połączenie sieciowe\Zapora systemu Windows\Profil domeny\Zapora systemu Windows Zezwalaj na wyjątki protokołu ICMP Konfiguracja komputera\Zasady\Ustawienia systemu Windows\Szablony administracyjne\Sieć\Połączenie sieciowe\Zapora systemu Windows\Profil standardowy\Zapora systemu Windows Zezwalaj na wyjątki protokołu ICMP
Weryfikowanie maszyny wirtualnej
Upewnij się, że maszyna wirtualna jest w dobrej kondycji, bezpieczna i jest dostępna protokół RDP:
Aby upewnić się, że dysk jest w dobrej kondycji i spójny, sprawdź dysk przy następnym ponownym uruchomieniu maszyny wirtualnej:
chkdsk.exe /f
Upewnij się, że raport zawiera czysty i w dobrej kondycji dysk.
Ustaw ustawienia danych konfiguracji rozruchu (BCD).
cmd bcdedit.exe /set "{bootmgr}" integrityservices enable bcdedit.exe /set "{default}" device partition=C: bcdedit.exe /set "{default}" integrityservices enable bcdedit.exe /set "{default}" recoveryenabled Off bcdedit.exe /set "{default}" osdevice partition=C: bcdedit.exe /set "{default}" bootstatuspolicy IgnoreAllFailures #Enable Serial Console Feature bcdedit.exe /set "{bootmgr}" displaybootmenu yes bcdedit.exe /set "{bootmgr}" timeout 5 bcdedit.exe /set "{bootmgr}" bootems yes bcdedit.exe /ems "{current}" ON bcdedit.exe /emssettings EMSPORT:1 EMSBAUDRATE:115200 exit
Dziennik zrzutu może być pomocny w rozwiązywaniu problemów z awariami systemu Windows. Włącz zbieranie dzienników zrzutu:
# Set up the guest OS to collect a kernel dump on an OS crash event Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\CrashControl' -Name CrashDumpEnabled -Type DWord -Force -Value 2 Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\CrashControl' -Name DumpFile -Type ExpandString -Force -Value "%SystemRoot%\MEMORY.DMP" Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\CrashControl' -Name NMICrashDump -Type DWord -Force -Value 1 # Set up the guest OS to collect user mode dumps on a service crash event $key = 'HKLM:\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps' if ((Test-Path -Path $key) -eq $false) {(New-Item -Path 'HKLM:\SOFTWARE\Microsoft\Windows\Windows Error Reporting' -Name LocalDumps)} New-ItemProperty -Path $key -Name DumpFolder -Type ExpandString -Force -Value 'C:\CrashDumps' New-ItemProperty -Path $key -Name CrashCount -Type DWord -Force -Value 10 New-ItemProperty -Path $key -Name DumpType -Type DWord -Force -Value 2 Set-Service -Name WerSvc -StartupType Manual
Sprawdź, czy repozytorium Instrumentacja zarządzania Windows (WMI) jest spójne:
winmgmt.exe /verifyrepository
Jeśli repozytorium jest uszkodzone, zobacz WMI: uszkodzenie repozytorium lub nie.
Upewnij się, że żadne inne aplikacje niż TermService używają portu 3389. Ten port jest używany dla usługi RDP na platformie Azure. Aby sprawdzić, które porty są używane na maszynie wirtualnej, uruchom polecenie
netstat.exe -anob
:netstat.exe -anob
Poniżej przedstawiono przykład.
netstat.exe -anob | findstr 3389 TCP 0.0.0.0:3389 0.0.0.0:0 LISTENING 4056 TCP [::]:3389 [::]:0 LISTENING 4056 UDP 0.0.0.0:3389 *:* 4056 UDP [::]:3389 *:* 4056 tasklist /svc | findstr 4056 svchost.exe 4056 TermService
Aby przekazać wirtualny dysk twardy z systemem Windows, który jest kontrolerem domeny:
Wykonaj następujące dodatkowe kroki , aby przygotować dysk.
Upewnij się, że znasz hasło trybu przywracania usług katalogowych (DSRM), jeśli kiedykolwiek trzeba uruchomić maszynę wirtualną w trybie DSRM. Aby uzyskać więcej informacji, zobacz Ustawianie hasła DSRM.
Upewnij się, że znasz wbudowane konto administratora i hasło. Możesz zresetować bieżące hasło administratora lokalnego i upewnić się, że możesz użyć tego konta do zalogowania się do systemu Windows za pośrednictwem połączenia RDP. To uprawnienie dostępu jest kontrolowane przez obiekt zasad grupy "Zezwalaj na logowanie za pośrednictwem usług pulpitu zdalnego". Wyświetl ten obiekt w Edytorze lokalnych zasad grupy:
Computer Configuration\Windows Settings\Security Settings\Local Policies\User Rights Assignment
Sprawdź następujące zasady firmy Microsoft Entra, aby upewnić się, że nie blokują one dostępu RDP:
Computer Configuration\Windows Settings\Security Settings\Local Policies\User Rights Assignment\Deny access to this computer from the network
Computer Configuration\Windows Settings\Security Settings\Local Policies\User Rights Assignment\Deny log on through Remote Desktop Services
Sprawdź następujące zasady firmy Microsoft Entra, aby upewnić się, że nie usuwają żadnego z wymaganych kont dostępu:
Computer Configuration\Windows Settings\Security Settings\Local Policies\User Rights Assignment\Access this computer from the network
Zasady powinny zawierać listę następujących grup:
Administratorzy
Operatorzy kopii zapasowych
Wszyscy
Użytkownicy
Uruchom ponownie maszynę wirtualną, aby upewnić się, że system Windows jest nadal w dobrej kondycji i można uzyskać do niego dostęp za pośrednictwem połączenia RDP. Na tym etapie rozważ utworzenie maszyny wirtualnej na lokalnym serwerze funkcji Hyper-V, aby upewnić się, że maszyna wirtualna jest uruchamiana całkowicie. Następnie przetestuj, aby upewnić się, że możesz nawiązać połączenie z maszyną wirtualną za pośrednictwem protokołu RDP.
Usuń wszelkie dodatkowe filtry interfejsu sterowników transportu (FILTER). Na przykład usuń oprogramowanie, które analizuje pakiety TCP lub dodatkowe zapory.
Odinstaluj inne oprogramowanie lub sterownik innych firm powiązany z fizycznymi składnikami lub inną technologią wirtualizacji.
Instalowanie aktualizacji systemu Windows
Uwaga
Aby uniknąć przypadkowego ponownego uruchomienia podczas aprowizacji maszyny wirtualnej, zalecamy ukończenie wszystkich instalacji aktualizacji systemu Windows i upewnienie się, że nie ma oczekującego ponownego uruchomienia. Jednym ze sposobów wykonania tej czynności jest zainstalowanie wszystkich aktualizacji systemu Windows i ponowne uruchomienie maszyny wirtualnej przed przeprowadzeniem migracji na platformę Azure.
Jeśli musisz również przeprowadzić uogólnienie systemu operacyjnego (sysprep), musisz zaktualizować system Windows i ponownie uruchomić maszynę wirtualną przed uruchomieniem polecenia Sysprep.
W idealnym przypadku należy zachować aktualizację maszyny do poziomu poprawek, jeśli nie jest to możliwe, upewnij się, że są zainstalowane następujące aktualizacje. Aby uzyskać najnowsze aktualizacje, zobacz strony historii aktualizacji systemu Windows: Windows 10 i Windows Server 2019, Windows 8.1 i Windows Server 2012 R2 i Windows 7 z dodatkiem SP1 oraz Windows Server 2008 R2 z dodatkiem SP1.
Składnik | Plik binarny | Windows 7 SP1, Windows Server 2008 R2 SP1 | Windows 8, Windows Server 2012 | Windows 8.1, Windows Server 2012 R2 | Windows 10 v1607, Windows Server 2016 v1607 | Windows 10 v1703 | Windows 10 v1709, Windows Server 2016 v1709 | Windows 10 v1803, Windows Server 2016 v1803 |
---|---|---|---|---|---|---|---|---|
Storage | disk.sys | 6.1.7601.23403 — KB3125574 | 6.2.9200.17638 / 6.2.9200.21757 — KB3137061 | 6.3.9600.18203 — KB3137061 | - | - | - | - |
storport.sys | 6.1.7601.23403 — KB3125574 | 6.2.9200.17188 / 6.2.9200.21306 — KB3018489 | 6.3.9600.18573 — KB4022726 | 10.0.14393.1358 — KB4022715 | 10.0.15063.332 | - | - | |
ntfs.sys | 6.1.7601.23403 — KB3125574 | 6.2.9200.17623 / 6.2.9200.21743 — KB3121255 | 6.3.9600.18654 — KB4022726 | 10.0.14393.1198 — KB4022715 | 10.0.15063.447 | - | - | |
Iologmsg.dll | 6.1.7601.23403 — KB3125574 | 6.2.9200.16384 — KB2995387 | - | - | - | - | - | |
Classpnp.sys | 6.1.7601.23403 — KB3125574 | 6.2.9200.17061 / 6.2.9200.21180 — KB2995387 | 6.3.9600.18334 — KB3172614 | 10.0.14393.953 — KB4022715 | - | - | - | |
Volsnap.sys | 6.1.7601.23403 — KB3125574 | 6.2.9200.17047 / 6.2.9200.21165 — KB2975331 | 6.3.9600.18265 — KB3145384 | - | 10.0.15063.0 | - | - | |
partmgr.sys | 6.1.7601.23403 — KB3125574 | 6.2.9200.16681 — KB2877114 | 6.3.9600.17401 — KB3000850 | 10.0.14393.953 — KB4022715 | 10.0.15063.0 | - | - | |
volmgr.sys | 10.0.15063.0 | - | - | |||||
Volmgrx.sys | 6.1.7601.23403 — KB3125574 | - | - | - | 10.0.15063.0 | - | - | |
Msiscsi.sys | 6.1.7601.23403 — KB3125574 | 6.2.9200.21006 — KB2955163 | 6.3.9600.18624 — KB4022726 | 10.0.14393.1066 — KB4022715 | 10.0.15063.447 | - | - | |
Msdsm.sys | 6.1.7601.23403 — KB3125574 | 6.2.9200.21474 — KB3046101 | 6.3.9600.18592 — KB4022726 | - | - | - | - | |
Mpio.sys | 6.1.7601.23403 — KB3125574 | 6.2.9200.21190 — KB3046101 | 6.3.9600.18616 — KB4022726 | 10.0.14393.1198 — KB4022715 | - | - | - | |
vmstorfl.sys | 6.3.9600.18907 — KB4072650 | 6.3.9600.18080 — KB3063109 | 6.3.9600.18907 — KB4072650 | 10.0.14393.2007 — KB4345418 | 10.0.15063.850 — KB4345419 | 10.0.16299.371 — KB4345420 | - | |
Fveapi.dll | 6.1.7601.23311 — KB3125574 | 6.2.9200.20930 — KB2930244 | 6.3.9600.18294 — KB3172614 | 10.0.14393.576 — KB4022715 | - | - | - | |
Fveapibase.dll | 6.1.7601.23403 — KB3125574 | 6.2.9200.20930 — KB2930244 | 6.3.9600.17415 — KB3172614 | 10.0.14393.206 — KB4022715 | - | - | - | |
Sieć | netvsc.sys | - | - | - | 10.0.14393.1198 — KB4022715 | 10.0.15063.250 — KB4020001 | - | - |
mrxsmb10.sys | 6.1.7601.23816 — KB4022722 | 6.2.9200.22108 — KB4022724 | 6.3.9600.18603 — KB4022726 | 10.0.14393.479 — KB4022715 | 10.0.15063.483 | - | - | |
mrxsmb20.sys | 6.1.7601.23816 — KB4022722 | 6.2.9200.21548 — KB4022724 | 6.3.9600.18586 — KB4022726 | 10.0.14393.953 — KB4022715 | 10.0.15063.483 | - | - | |
mrxsmb.sys | 6.1.7601.23816 — KB4022722 | 6.2.9200.22074 — KB4022724 | 6.3.9600.18586 — KB4022726 | 10.0.14393.953 — KB4022715 | 10.0.15063.0 | - | - | |
tcpip.sys | 6.1.7601.23761 — KB4022722 | 6.2.9200.22070 — KB4022724 | 6.3.9600.18478 — KB4022726 | 10.0.14393.1358 — KB4022715 | 10.0.15063.447 | - | - | |
http.sys | 6.1.7601.23403 — KB3125574 | 6.2.9200.17285 — KB3042553 | 6.3.9600.18574 — KB4022726 | 10.0.14393.251 — KB4022715 | 10.0.15063.483 | - | - | |
vmswitch.sys | 6.1.7601.23727 — KB4022719 | 6.2.9200.22117 — KB4022724 | 6.3.9600.18654 — KB4022726 | 10.0.14393.1358 — KB4022715 | 10.0.15063.138 | - | - | |
Podstawowe funkcje | ntoskrnl.exe | 6.1.7601.23807 — KB4022719 | 6.2.9200.22170 — KB4022718 | 6.3.9600.18696 — KB4022726 | 10.0.14393.1358 — KB4022715 | 10.0.15063.483 | - | - |
Usługi pulpitu zdalnego | rdpcorets.dll | 6.2.9200.21506 — KB4022719 | 6.2.9200.22104 — KB4022724 | 6.3.9600.18619 — KB4022726 | 10.0.14393.1198 — KB4022715 | 10.0.15063.0 | - | - |
termsrv.dll | 6.1.7601.23403 — KB3125574 | 6.2.9200.17048 — KB2973501 | 6.3.9600.17415 — KB3000850 | 10.0.14393.0 — KB4022715 | 10.0.15063.0 | - | - | |
termdd.sys | 6.1.7601.23403 — KB3125574 | - | - | - | - | - | - | |
win32k.sys | 6.1.7601.23807 — KB4022719 | 6.2.9200.22168 — KB4022718 | 6.3.9600.18698 — KB4022726 | 10.0.14393.594 — KB4022715 | - | - | - | |
rdpdd.dll | 6.1.7601.23403 — KB3125574 | - | - | - | - | - | - | |
rdpwd.sys | 6.1.7601.23403 — KB3125574 | - | - | - | - | - | - | |
Zabezpieczenia | MS17-010 | KB4012212 | KB4012213 | KB4012213 | KB4012606 | KB4012606 | - | - |
KB4012216 | KB4013198 | KB4013198 | - | - | ||||
KB4012215 | KB4012214 | KB4012216 | KB4013429 | KB4013429 | - | - | ||
KB4012217 | KB4013429 | KB4013429 | - | - | ||||
CVE-2018-0886 | KB4103718 | KB4103730 | KB4103725 | KB4103723 | KB4103731 | KB4103727 | KB4103721 | |
KB4103712 | KB4103726 | KB4103715 |
Uwaga
Aby uniknąć przypadkowego ponownego uruchomienia podczas aprowizacji maszyny wirtualnej, zalecamy upewnienie się, że wszystkie instalacje usługi Windows Update zostały zakończone i że żadne aktualizacje nie są oczekujące. Jednym ze sposobów wykonania tej czynności jest zainstalowanie wszystkich możliwych aktualizacji systemu Windows i ponowne uruchomienie raz przed uruchomieniem sysprep.exe
polecenia.
Określanie, kiedy należy używać narzędzia Sysprep
Narzędzie przygotowywania systemu (sysprep.exe
) to proces, który można uruchomić w celu zresetowania instalacji systemu Windows.
Narzędzie Sysprep zapewnia środowisko "gotowe do użycia", usuwając wszystkie dane osobowe i resetując kilka składników.
Zazwyczaj uruchamia się polecenie sysprep.exe
, aby utworzyć szablon, na podstawie którego można wdrożyć kilka innych maszyn wirtualnych z określoną konfiguracją. Szablon jest nazywany uogólniony obraz.
Aby utworzyć tylko jedną maszynę wirtualną z jednego dysku, nie musisz używać narzędzia Sysprep. Zamiast tego możesz utworzyć maszynę wirtualną na podstawie wyspecjalizowanego obrazu. Aby uzyskać informacje o sposobie tworzenia maszyny wirtualnej na podstawie wyspecjalizowanego dysku, zobacz:
- Tworzenie maszyny wirtualnej na podstawie wyspecjalizowanego dysku
- Tworzenie maszyny wirtualnej na podstawie wyspecjalizowanego dysku VHD
Aby utworzyć uogólniony obraz, należy uruchomić narzędzie Sysprep. Aby uzyskać więcej informacji, zobacz How to use Sysprep: An introduction (Jak używać narzędzia Sysprep: wprowadzenie).
Nie każda rola lub aplikacja zainstalowana na komputerze z systemem Windows obsługuje uogólnione obrazy. Przed użyciem tej procedury upewnij się, że program Sysprep obsługuje rolę komputera. Aby uzyskać więcej informacji, zobacz Obsługa programu Sysprep dla ról serwera.
W szczególności narzędzie Sysprep wymaga pełnego odszyfrowywania dysków przed wykonaniem. Jeśli włączono szyfrowanie na maszynie wirtualnej, wyłącz je przed uruchomieniem narzędzia Sysprep.
Uogólnij wirtualny dysk twardy
Uwaga
Jeśli tworzysz uogólniony obraz z istniejącej maszyny wirtualnej platformy Azure, zalecamy usunięcie rozszerzeń maszyn wirtualnych przed uruchomieniem narzędzia sysprep.
Uwaga
Po uruchomieniu sysprep.exe
w poniższych krokach wyłącz maszynę wirtualną. Nie włączaj go ponownie, dopóki nie utworzysz obrazu z niego na platformie Azure.
Zaloguj się do maszyny wirtualnej z systemem Windows.
Uruchom sesję programu PowerShell jako administrator.
Usuń katalog panther (C:\Windows\Panther).
Zmień katalog na
%windir%\system32\sysprep
. Następnie należy uruchomić poleceniesysprep.exe
.W oknie dialogowym Narzędzie przygotowywania systemu wybierz pozycję Enter System Out-of-Box Experience (OOBE) i upewnij się, że pole wyboru Uogólnij jest zaznaczone.
W obszarze Opcje zamknięcia wybierz pozycję Zamknij.
Wybierz przycisk OK.
Po zakończeniu narzędzia Sysprep zamknij maszynę wirtualną. Nie używaj opcji Uruchom ponownie , aby zamknąć maszynę wirtualną.
Teraz wirtualny dysk twardy jest gotowy do przekazania. Aby uzyskać więcej informacji na temat tworzenia maszyny wirtualnej na podstawie uogólnionego dysku, zobacz Przekazywanie uogólnionego dysku VHD i używanie go do tworzenia nowej maszyny wirtualnej na platformie Azure.
Uwaga
Niestandardowy plik unattend.xml nie jest obsługiwany. Mimo że obsługujemy właściwość additionalUnattendContent , która zapewnia tylko ograniczoną obsługę dodawania opcji konfiguracji microsoft-windows-shell-setup do pliku unattend.xml używanego przez agenta aprowizacji platformy Azure. Możesz na przykład użyć polecenia additionalUnattendContent, aby dodać polecenia FirstLogonCommands i LogonCommands. Aby uzyskać więcej informacji, zobacz przykład additionalUnattendContent FirstLogonCommands.
Konwertowanie dysku wirtualnego na dysk VHD o stałym rozmiarze
Uwaga
Jeśli zamierzasz użyć programu Azure PowerShell do przekazania dysku na platformę Azure i masz włączoną funkcję Hyper-V , ten krok jest opcjonalny. Polecenie Add-AzVHD wykona je za Ciebie.
Użyj jednej z metod w tej sekcji, aby przekonwertować i zmienić rozmiar dysku wirtualnego na wymagany format dla platformy Azure:
Wykonaj kopię zapasową maszyny wirtualnej przed uruchomieniem procesu konwersji dysku wirtualnego lub zmiany rozmiaru.
Upewnij się, że dysk VHD systemu Windows działa poprawnie na serwerze lokalnym. Przed podjęciem próby przekonwertowania lub przekazania jej na platformę Azure rozwiąż wszelkie błędy w samej maszynie wirtualnej.
Przekonwertuj dysk wirtualny na stały typ.
Zmień rozmiar dysku wirtualnego, aby spełniał wymagania platformy Azure:
Dyski na platformie Azure muszą mieć rozmiar wirtualny wyrównany do 1 MiB. Jeśli dysk VHD jest ułamkiem 1 MiB, musisz zmienić rozmiar dysku na wielokrotność 1 MiB. Dyski, które są ułamkami miB powodują błędy podczas tworzenia obrazów z przekazanego dysku VHD. Aby sprawdzić rozmiar, można użyć polecenia cmdlet Get-VHD programu PowerShell, aby wyświetlić wartość "Size", która musi być wielokrotną 1 miB na platformie Azure i "FileSize", która będzie równa "Rozmiar" plus 512 bajtów dla stopki wirtualnego dysku twardego.
$vhd = Get-VHD -Path C:\test\MyNewVM.vhd $vhd.Size % 1MB 0 $vhd.FileSize - $vhd.Size 512
Maksymalny rozmiar dozwolony dla dysku VHD systemu operacyjnego z maszyną wirtualną generacji 1 to 2048 GiB (2 TiB),
Maksymalny rozmiar dysku danych to 32 767 GiB (32 TiB).
Uwaga
- Jeśli przygotowujesz dysk systemu operacyjnego Windows po przekonwertowaniu na dysk stały i w razie potrzeby zmień jego rozmiar, utwórz maszynę wirtualną, która używa dysku. Rozpocznij i zaloguj się do maszyny wirtualnej i kontynuuj pracę z sekcjami w tym artykule, aby zakończyć przygotowywanie go do przekazania.
- Jeśli przygotowujesz dysk danych, możesz zatrzymać się w tej sekcji i przejść do przekazania dysku.
Konwertowanie dysku za pomocą Menedżera funkcji Hyper-V
- Otwórz Menedżera funkcji Hyper-V i wybierz komputer lokalny po lewej stronie. W menu powyżej listy komputerów wybierz pozycję Akcja>Edytuj dysk.
- Na stronie Lokalizowanie wirtualnego dysku twardego wybierz dysk wirtualny.
- Na stronie Wybieranie akcji wybierz pozycję Konwertuj>dalej.
- Aby przekonwertować dysk VHDX, wybierz pozycję VHD>Dalej.
- Aby przekonwertować dysk dynamicznie powiększający się, wybierz pozycję Stały rozmiar>Dalej.
- Znajdź i wybierz ścieżkę, aby zapisać nowy plik VHD.
- Wybierz Zakończ.
Konwertowanie dysku przy użyciu programu PowerShell
Dysk wirtualny można przekonwertować przy użyciu polecenia cmdlet Convert-VHD w programie PowerShell. Jeśli potrzebujesz informacji na temat instalowania tego polecenia cmdlet, zobacz Instalowanie roli funkcji Hyper-V.
Uwaga
Jeśli zamierzasz użyć programu Azure PowerShell do przekazania dysku na platformę Azure i masz włączoną funkcję Hyper-V , ten krok jest opcjonalny. Polecenie Add-AzVHD wykona je za Ciebie.
Poniższy przykład konwertuje dysk z VHDX na dysk VHDX. Konwertuje również dysk z dynamicznie powiększającego się dysku na dysk o stałym rozmiarze.
Convert-VHD -Path C:\test\MyVM.vhdx -DestinationPath C:\test\MyNewVM.vhd -VHDType Fixed
W tym przykładzie zastąp wartość path ścieżką do wirtualnego dysku twardego, który chcesz przekonwertować. Zastąp wartość DestinationPath nową ścieżką i nazwą przekonwertowanego dysku.
Zmienianie rozmiaru dysku za pomocą Menedżera funkcji Hyper-V
Uwaga
Jeśli zamierzasz użyć programu Azure PowerShell do przekazania dysku na platformę Azure i masz włączoną funkcję Hyper-V , ten krok jest opcjonalny. Polecenie Add-AzVHD wykona je za Ciebie.
- Otwórz Menedżera funkcji Hyper-V i wybierz komputer lokalny po lewej stronie. W menu powyżej listy komputerów wybierz pozycję Akcja>Edytuj dysk.
- Na stronie Lokalizowanie wirtualnego dysku twardego wybierz dysk wirtualny.
- Na stronie Wybieranie akcji wybierz pozycję Rozwiń>dalej.
- Na stronie Lokalizowanie wirtualnego dysku twardego wprowadź nowy rozmiar w aplikacji GiB >Next.
- Wybierz Zakończ.
Zmienianie rozmiaru dysku przy użyciu programu PowerShell
Uwaga
Jeśli zamierzasz użyć programu Azure PowerShell do przekazania dysku na platformę Azure i masz włączoną funkcję Hyper-V , ten krok jest opcjonalny. Polecenie Add-AzVHD wykona je za Ciebie.
Rozmiar dysku wirtualnego można zmienić przy użyciu polecenia cmdlet Resize-VHD w programie PowerShell. Jeśli potrzebujesz informacji na temat instalowania tego polecenia cmdlet, zobacz Instalowanie roli funkcji Hyper-V.
Poniższy przykład zmienia rozmiar dysku z 100.5 MiB na 101 MiB w celu spełnienia wymagań dotyczących wyrównania platformy Azure.
Resize-VHD -Path C:\test\MyNewVM.vhd -SizeBytes 105906176
W tym przykładzie zastąp wartość path ścieżką do wirtualnego dysku twardego, którego rozmiar chcesz zmienić. Zastąp wartość SizeBytes nowym rozmiarem w bajtach dysku.
Konwertowanie z formatu dysku VMware VMDK
Jeśli masz obraz maszyny wirtualnej z systemem Windows w formacie pliku VMDK, możesz użyć usługi Azure Migrate , aby przekonwertować zestaw VMDK i przekazać go na platformę Azure.
Ukończ zalecane konfiguracje
Następujące ustawienia nie mają wpływu na przekazywanie wirtualnego dysku twardego. Zdecydowanie zalecamy jednak ich skonfigurowanie.
Zainstaluj agenta maszyny wirtualnej platformy Azure. Następnie możesz włączyć rozszerzenia maszyn wirtualnych. Rozszerzenia maszyn wirtualnych implementują większość krytycznych funkcji, które mogą być używane z maszynami wirtualnymi. Aby zresetować hasła lub skonfigurować protokół RDP, potrzebne będą na przykład rozszerzenia. Aby uzyskać więcej informacji, zobacz Omówienie agenta maszyny wirtualnej platformy Azure.
Po utworzeniu maszyny wirtualnej na platformie Azure zalecamy umieszczenie pliku stronicowania na woluminie dysku czasowego w celu zwiększenia wydajności. Umieszczanie plików można skonfigurować w następujący sposób:
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management' -Name PagingFiles -Value 'D:\pagefile.sys' -Type MultiString -Force
Jeśli dysk danych jest dołączony do maszyny wirtualnej, litera woluminu czasowego jest zwykle D. To oznaczenie może się różnić w zależności od ustawień i liczby dostępnych dysków.
- Zalecamy wyłączenie blokowania skryptów, które mogą być udostępniane przez oprogramowanie antywirusowe. Mogą zakłócać i blokować skrypty agenta aprowizacji systemu Windows wykonywane podczas wdrażania nowej maszyny wirtualnej z obrazu.
Napiwek
Opcjonalnie użyj narzędzia DISM , aby zoptymalizować obraz i zmniejszyć czas pierwszego rozruchu maszyny wirtualnej.
Aby zoptymalizować obraz, zainstaluj dysk VHD, klikając go dwukrotnie w Eksploratorze Windows, a następnie uruchom program DISM z parametrem /optimize-image
.
DISM /image:D:\ /optimize-image /boot
Gdzie D: to ścieżka zainstalowanego dysku VHD.
Uruchomienie DISM /optimize-image
powinno być ostatnią modyfikacją wprowadzonego do wirtualnego dysku twardego. Jeśli przed wdrożeniem wprowadzisz jakiekolwiek zmiany w dysku VHD, musisz uruchomić DISM /optimize-image
ponownie.