Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a: ✔️ macchine virtuali di Windows
Questo articolo fornisce i passaggi per risolvere i problemi in cui il disco non può essere letto in una macchina virtuale (VM) di Azure.
Sintomi
Quando si utilizza Diagnostica di avvio per visualizzare la schermata della macchina virtuale, viene visualizzato un messaggio "Si è verificato un errore di lettura del disco. Premere Ctrl+Alt+Canc per riavviare".
Causa
Questo messaggio di errore indica che la struttura del disco è danneggiata e illeggibile. Se si utilizza una macchina virtuale di generazione 1, è anche possibile che la partizione del disco contenente i dati di configurazione di avvio non sia impostata su Attiva.
Soluzione
Panoramica processo
Suggerimento
Se hai un backup recente della VM, puoi provare a ripristinare la VM dal backup per risolvere il problema di avvio.
- Crea e accedi a una macchina virtuale di riparazione.
- Selezionare una soluzione:
- Abilita la console seriale e la raccolta di dump della memoria.
- Ricostruisci la macchina virtuale.
Note
Quando si verifica questo errore di avvio, il sistema operativo guest (OS) non è operativo. Risolverai i problemi in modalità offline per risolvere questo problema.
Creare e accedere a una macchina virtuale di ripristino
- Utilizzare i passaggi 1-3 dei comandi di riparazione della VM per preparare una VM di riparazione.
- Utilizzando Connessione desktop remoto, connettiti alla VM di riparazione.
Imposta lo stato della partizione su attivo
Note
Questa mitigazione si applica solo per le macchine virtuali di prima generazione. Le macchine virtuali di seconda generazione (che usano UEFI) non usano una partizione attiva.
Collega il disco di sistema a una macchina virtuale di ripristino.
Avviare una connessione Desktop remoto alla VM di ripristino.
Apri Gestione computer>Gestione disco. Assicurati che il disco sia contrassegnato come Online nella console di Gestione disco. Prendere nota della lettera di unità assegnata al disco di sistema collegato.
Identificare la partizione di avvio e la partizione di Windows. Se è presente una sola partizione sul disco del sistema operativo, questa partizione è sia partizione di avvio che partizione di Windows.
Se il disco del sistema operativo contiene più di una partizione, è possibile identificare le partizioni visualizzando le cartelle in esse contenute:
La partizione di Windows contiene una cartella denominata Windows e questa partizione è più grande delle altre.
La partizione di avvio contiene una cartella denominata Boot. Per impostazione predefinita questa cartella è nascosta. Per visualizzare la cartella, è necessario visualizzare le cartelle e i file nascosti e disattivare l'opzione Nascondi i file di sistema protetti (scelta consigliata) . La partizione di avvio è in genere di 300 MB ~ 500 MB.
Eseguire il comando seguente come amministratore per creare un record di avvio:
bcdboot <Windows partition>:\Windows /S <windows partition>:
Usare lo strumento DISKPART per verificare se la partizione di Windows è attiva:
Aprire un prompt dei comandi con privilegi elevati e aprire lo strumento DISKPART.
diskpart
Elencare i dischi nel sistema e cercare dischi aggiunti e continuare a selezionare il nuovo disco. In questo esempio il nuovo disco è Disk 1.
list disk sel disk 1
Elencare tutte le partizioni sul disco e quindi procedere con la selezione della partizione da controllare. In genere le partizioni gestite dal sistema sono di dimensioni inferiori e di circa 350 MB. Nell'immagine seguente questa partizione è Partition 1.
list partition sel partition 1
Controllare lo stato della partizione. Nell'esempio la partizione 1 non è attiva.
detail partition
Se la partizione non è attiva, modificare il flag Attivo e quindi controllare di nuovo che la modifica è stata eseguita correttamente.
active detail partition
Uscire dallo strumento DISKPART.
exit
Correggi la partizione del disco
Apri un prompt dei comandi con privilegi elevati (cmd.exe).
Utilizzare il seguente comando per eseguire CHKDSK sui dischi ed eseguire la correzione degli errori:
chkdsk <DRIVE LETTER>: /f
L'aggiunta dell'opzione di comando /f corregge eventuali errori sul disco. Assicurati di sostituire < DRIVE LETTER> con la lettera del VHD del sistema operativo allegato.
Abilita la console seriale e la raccolta di dump della memoria
Importante
In questa sezione, metodo o attività viene illustrata la procedura per modificare il Registro di sistema. Se, tuttavia, si modifica il Registro di sistema in modo errato, possono verificarsi gravi problemi. Pertanto, assicurarsi di osservare attentamente la procedura seguente. Al fine di protezione, eseguire il backup del registro di sistema prima di modificarlo, in modo da poterlo ripristinare in caso di problemi. Per ulteriori informazioni su come eseguire il backup e il ripristino del Registro di sistema, vedi Come eseguire il backup e il ripristino del Registro di sistema in Windows.
Opzione consigliata: prima di ricompliare la macchina virtuale, attivare la Console seriale e la raccolta dei dump di memoria seguendo i seguenti passaggi:
Aprire una sessione del prompt dei comandi con privilegi elevati come amministratore.
Eseguire i seguenti comandi BCDEdit utilizzando le opzioni /ems e /emssettings:
Attivare la console seriale:
bcdedit /store <volume-letter-containing-the-bcd-folder>:\boot\bcd /ems {<boot-loader-identifier>} ON bcdedit /store <volume-letter-containing-the-bcd-folder>:\boot\bcd /emssettings EMSPORT:1 EMSBAUDRATE:115200
Verificare che lo spazio libero sul disco del sistema operativo sia maggiore della dimensione della memoria (RAM) sulla macchina virtuale.
Se lo spazio sul disco del sistema operativo non è sufficiente, è necessario modificare la posizione in cui viene creato il file di dump della memoria e fare riferimento a qualsiasi disco dati collegato alla macchina virtuale che disponga di spazio libero sufficiente. Per modificare la posizione, sostituisci
%SystemRoot%
con la lettera dell'unità del disco dati, ad esempioF:
, nei seguenti comandi.Per abilitare il file di dump del sistema operativo, eseguire i seguenti comandi load, add e unload per implementare la configurazione suggerita utilizzando lo strumento reg:
Caricare l'hive del Registro di sistema dal disco del sistema operativo danneggiato:
reg load HKLM\<broken-system> <volume-letter-of-broken-os-disk>:\windows\system32\config\SYSTEM
Abilitare su ControlSet001:
reg add "HKLM\<broken-system>\ControlSet001\Control\CrashControl" /v CrashDumpEnabled /t REG_DWORD /d 1 /f reg add "HKLM\<broken-system>\ControlSet001\Control\CrashControl" /v DumpFile /t REG_EXPAND_SZ /d "%SystemRoot%\MEMORY.DMP" /f reg add "HKLM\<broken-system>\ControlSet001\Control\CrashControl" /v NMICrashDump /t REG_DWORD /d 1 /f
Abilitare su ControlSet002:
reg add "HKLM\<broken-system>\ControlSet002\Control\CrashControl" /v CrashDumpEnabled /t REG_DWORD /d 1 /f reg add "HKLM\<broken-system>\ControlSet002\Control\CrashControl" /v DumpFile /t REG_EXPAND_SZ /d "%SystemRoot%\MEMORY.DMP" /f reg add "HKLM\<broken-system>\ControlSet002\Control\CrashControl" /v NMICrashDump /t REG_DWORD /d 1 /f
Scaricare il disco del sistema operativo danneggiato:
reg unload HKLM\<broken-system>
Ricostruire la macchina virtuale
Utilizzare il passaggio 5 dei comandi di riparazione della VM per ricostruire la VM.
Contattaci per ricevere assistenza
In caso di domande o bisogno di assistenza, creare una richiesta di supporto tecnico oppure formula una domanda nel Supporto della community di Azure. È possibile anche inviare un feedback sul prodotto al feedback della community di Azure.