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 descrive come risolvere i problemi quando ci si connette a una macchina virtuale (VM) di Azure e Servizi Desktop remoto, o TermService, non si avvia o non riesce ad avviarsi.
Sintomi
Quando si tenta di connettersi a una macchina virtuale, si verificano i seguenti scenari:
Lo screenshot della VM mostra che il sistema operativo è completamente caricato e in attesa delle credenziali.
Puoi visualizzare in remoto i registri eventi nella macchina virtuale usando il Visualizzatore eventi. Si nota che Servizi Desktop remoto, TermService, non si avvia o non riesce ad avviarsi. Il seguente registro è un esempio:
Nome registro: sistema
Fonte: Gestione controllo servizi
Data: 16/12/2017 11:19:36 AM
ID evento: 7022
Categoria attività: nessuna
Livello: errore
Parole chiave: classico
Utente: N/D
Computer: vm.contoso.com
Descrizione: il servizio Servizi Desktop remoto si è bloccato all'avvioPuoi anche utilizzare la funzionalità della console di accesso seriale per cercare questi errori eseguendo la seguente query:
wevtutil qe system /c:1 /f:text /q:"Event[System[Provider[@Name='Service Control Manager'] and EventID=7022 and TimeCreated[timediff(@SystemTime) <= 86400000]]]" | more
Causa
Questo problema si verifica perché Servizi Desktop remoto non è in esecuzione nella macchina virtuale. La causa può dipendere dai seguenti scenari:
- Il servizio TermService è impostato su Disabilitato.
- Il servizio TermService si arresta in modo anomalo o non risponde.
- Il TermService non si avvia a causa di una configurazione errata.
Soluzione
Per risolvere questo problema, utilizzare la console seriale. Oppure ripara la VM offline collegando il disco del sistema operativo della VM a una VM di ripristino.
Usa la console seriale
Accedere a Console seriale selezionando Supporto e risoluzione dei problemi>Console seriale. Se la funzionalità è abilitata sulla macchina virtuale, è possibile connettere correttamente la macchina virtuale.
Crea un nuovo canale per un'istanza CMD. Immettere CMD per avviare il canale e ottenere il nome del canale.
Passa al canale che esegue l'istanza CMD. In questo caso, dovrebbe essere il canale 1:
ch -si 1
Seleziona di nuovo Invio e inserisci un nome utente e una password validi, un ID locale o di dominio, per la VM.
Interroga lo stato del servizio TermService:
sc query TermService
Se lo stato del servizio mostra Interrotto, provare ad avviare il servizio:
sc start TermService
Interroga nuovamente il servizio per assicurarti che il servizio sia stato avviato correttamente:
sc query TermService
Se il servizio non si avvia, segui la soluzione in base all'errore che hai ricevuto:
Errore Suggerimento 5- ACCESSO NEGATO Vedere Il servizio TermService è stato interrotto a causa di un errore di accesso negato. 1053 - ERROR_SERVICE_REQUEST_TIMEOUT Vedere Il servizio TermService è disabilitato. 1058 - ERROR_SERVICE_DISABLED Vedere Il servizio TerService si arresta in modo anomalo o si blocca. 1059 - ERROR_CIRCULAR_DEPENDENCY Contattare l'assistenza per risolvere rapidamente il problema. 1067 - ERROR_PROCESS_ABORTED Vedere Il servizio TerService si arresta in modo anomalo o si blocca. 1068 - ERROR_SERVICE_DEPENDENCY_FAIL Contattare l'assistenza per risolvere rapidamente il problema. 1069 - ERROR_SERVICE_LOGON_FAILED Vedere Il servizio TermService non riesce a causa di un errore di accesso 1070 - ERROR_SERVICE_START_HANG Vedere Il servizio TerService si arresta in modo anomalo o si blocca. 1077 - ERROR_SERVICE_NEVER_STARTED Vedere Il servizio TermService è disabilitato. 1079 - ERROR_DIFERENCE_SERVICE_ACCOUNT Contattare l'assistenza per risolvere rapidamente il problema. 1753 Contattare l'assistenza per risolvere rapidamente il problema.
Il servizio TermService è stato interrotto a causa di un problema di accesso negato
Connettiti alla Console seriale e apri un'istanza di PowerShell.
Scarica lo strumento Process Monitor eseguendo il seguente script:
remove-module psreadline $source = "https://download.sysinternals.com/files/ProcessMonitor.zip" $destination = "c:\temp\ProcessMonitor.zip" $wc = New-Object System.Net.WebClient $wc.DownloadFile($source,$destination)
Ora avvia una traccia procmon:
procmon /Quiet /Minimized /BackingFile c:\temp\ProcMonTrace.PML
Riproduci il problema avviando il servizio che fornisce Accesso negato:
sc start TermService
Se non riesce, terminare la traccia Monitoraggio processi:
procmon /Terminate
Raccogli il file c:\temp\ProcMonTrace.PML:
- Collegare un disco dati alla macchina virtuale.
- Usa la console seriale per copiare il file nella nuova unità. Ad esempio:
copy C:\temp\ProcMonTrace.PML F:\
. In questo comando, F è la lettera del driver del disco dati collegato. - Scollegare l'unità dati e collegarla a una VM funzionante in cui è installato Process Monitor ubstakke.
Apri ProcMonTrace.PML utilizzando Process Monitor della macchina virtuale funzionante. Quindi filtrare per Il risultato è ACCESSO NEGATO, come mostrato nello screenshot seguente:
Correggere le chiavi di registro, le cartelle o i file presenti nell'output. In genere, questo problema si verifica quando l'account di accesso utilizzato nel servizio non dispone dell'autorizzazione ACL per accedere a questi oggetti. Per conoscere l'autorizzazione ACL corretta per l'account di accesso, puoi controllare una macchina virtuale integra.
Il servizio TermService è disabilitato
Ripristina il servizio al suo valore di avvio predefinito:
sc config TermService start= demand
Avvia il servizio:
sc start TermService
Interroga nuovamente il suo stato per assicurarti che il servizio sia in esecuzione:
sc query TermService
Prova a connetterti alla VM utilizzando Desktop remoto.
Il servizio TermService non riesce a causa di un errore di accesso
Questo problema si verifica se l'account di avvio di questo servizio è stato modificato. Ripristinato il suo valore predefinito:
sc config TermService obj= 'NT Authority\NetworkService'
Avvia il servizio:
sc start TermService
Prova a connetterti alla VM utilizzando Desktop remoto.
Il servizio TermService si arresta in modo anomalo o si blocca
Se lo stato del servizio è bloccato su Avvio o Arresto, prova ad arrestare il servizio:
sc stop TermService
Isolare il servizio sul proprio contenitore "svchost":
sc config TermService type= own
Avvia il servizio:
sc start TermService
Se il servizio continua a non avviarsi, Contatta l'assistenza.
Ripara la VM offline
Collegare il disco del sistema operativo a una macchina virtuale di ripristino
Collegare il disco del sistema operativo a una macchina virtuale di ripristino.
Avviare una connessione Desktop remoto alla VM di ripristino. Assicurati che il disco collegato sia contrassegnato come Online nella console Gestione disco. Prendere nota della lettera di unità assegnata al disco del sistema operativo collegato.
Aprire un'istanza del prompt dei comandi con privilegi elevati (Esegui come amministratore). Quindi eseguire il seguente script. Si presuppone che la lettera di unità assegnata al disco del sistema operativo collegato sia F. Sostituiscilo con il valore appropriato nella tua VM.
reg load HKLM\BROKENSYSTEM F:\windows\system32\config\SYSTEM REM Set default values back on the broken service reg add "HKLM\BROKENSYSTEM\ControlSet001\services\TermService" /v start /t REG_DWORD /d 3 /f reg add "HKLM\BROKENSYSTEM\ControlSet001\services\TermService" /v ObjectName /t REG_SZ /d "NT Authority\NetworkService“ /f reg add "HKLM\BROKENSYSTEM\ControlSet001\services\TermService" /v type /t REG_DWORD /d 16 /f reg add "HKLM\BROKENSYSTEM\ControlSet002\services\TermService" /v start /t REG_DWORD /d 3 /f reg add "HKLM\BROKENSYSTEM\ControlSet002\services\TermService" /v ObjectName /t REG_SZ /d "NT Authority\NetworkService" /f reg add "HKLM\BROKENSYSTEM\ControlSet002\services\TermService" /v type /t REG_DWORD /d 16 /f
Scollegare il disco del sistema operativo e ricreare la macchina virtuale. Quindi controlla se il problema è stato risolto.
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.