Comandi di Windows - CMD e PowerShell
Si applica a: ✔️ macchine virtuali di Windows
Questa sezione include comandi di esempio per l'esecuzione di attività comuni in scenari in cui potrebbe essere necessario usare SAC per accedere alla macchina virtuale Windows, ad esempio quando è necessario risolvere gli errori di connessione RDP.
SAC è stato incluso in tutte le versioni di Windows a partire da Windows Server 2003, ma è disabilitato per impostazione predefinita. SAC si basa sul driver kernel sacdrv.sys
, sul servizio Special Administration Console Helper
(sacsvr
) e sul processo sacsess.exe
. Per ulteriori informazioni, vedere Strumenti e impostazioni dei servizi di gestione delle emergenze.
SAC ti consente di connetterti al tuo sistema operativo in esecuzione tramite la porta seriale. Quando si avvia CMD da SAC, sacsess.exe
avvia cmd.exe
all'interno del sistema operativo in esecuzione. È possibile vederlo in Gestione attività se si utilizza RDP sulla macchina virtuale nello stesso momento in cui si è connessi a SAC tramite la funzione della console seriale. Il CMD a cui si accede tramite SAC è lo stesso cmd.exe
che si usa quando si è connessi tramite RDP. Sono disponibili tutti gli stessi comandi e strumenti, inclusa la possibilità di avviare PowerShell da tale istanza CMD. Questa è una grande differenza tra SAC e Windows Recovery Environment (WinRE) in quanto SAC ti consente di gestire il tuo sistema operativo in esecuzione, dove WinRE si avvia in un sistema operativo diverso e minimo. Sebbene le macchine virtuali di Azure non supportino la possibilità di accedere a WinRE, con la funzionalità della console seriale, le macchine virtuali di Azure possono essere gestite tramite SAC.
Poiché SAC è limitato a un buffer di schermo 80x24 senza possibilità di scorrimento all'indietro, aggiungere | more
ai comandi per visualizzare l'output una pagina alla volta. Utilizzare <spacebar>
per visualizzare la pagina successiva o <enter>
per visualizzare la riga successiva.
SHIFT+INSERT
è la scorciatoia per incollare la finestra della console seriale.
A causa del buffer dello schermo limitato di SAC, i comandi più lunghi potrebbero essere più facili da digitare in un editor di testo locale e quindi incollati in SAC.
Visualizza e modifica le impostazioni del registro di Windows utilizzando CMD
Verificare che RDP sia abilitato
reg query "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections
reg query "HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services" /v fDenyTSConnections
La seconda chiave (in \Policies) esisterà solo se è configurata l'impostazione dei criteri di gruppo pertinente.
Abilitare RDP
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services" /v fDenyTSConnections /t REG_DWORD /d 0
La seconda chiave (in \Policies) sarebbe necessaria solo se l'impostazione dei criteri di gruppo pertinente fosse stata configurata. Il valore verrà riscritto al successivo aggiornamento dei criteri di gruppo se è configurato nei criteri di gruppo.
Gestisci i servizi Windows utilizzando CMD
Visualizza lo stato del servizio
sc query termservice
Visualizza l'account di accesso al servizio
sc qc termservice
Imposta account di accesso al servizio
sc config termservice obj= "NT Authority\NetworkService"
È necessario uno spazio dopo il segno di uguale.
Imposta il tipo di avvio del servizio
sc config termservice start= demand
È necessario uno spazio dopo il segno di uguale. I valori iniziali possibili includono boot
, system
, auto
, demand
, disabled
, delayed-auto
.
Imposta le dipendenze del servizio
sc config termservice depend= RPCSS
È necessario uno spazio dopo il segno di uguale.
Avvia servizio
net start termservice
o
sc start termservice
Interruzione del servizio
net stop termservice
o
sc stop termservice
Gestisci le funzionalità di rete utilizzando CMD
Mostra proprietà NIC
netsh interface show interface
Mostra proprietà IP
netsh interface ip show config
Mostra configurazione IPSec
netsh nap client show configuration
Abilita NIC
netsh interface set interface name="<interface name>" admin=enabled
Impostare la scheda NIC per utilizzare DHCP
netsh interface ip set address name="<interface name>" source=dhcp
Per ulteriori informazioni su netsh
, fare clic qui.
Le macchine virtuali di Azure devono essere sempre configurate nel sistema operativo guest per usare DHCP per ottenere un indirizzo IP. L'impostazione dell'IP statico di Azure usa ancora DHCP per fornire l'IP statico alla macchina virtuale.
Ping
ping 8.8.8.8
Ping della porta
Installa il client telnet
dism /online /Enable-Feature /FeatureName:TelnetClient
Testare la connettività
telnet bing.com 80
Per rimuovere il client telnet
dism /online /Disable-Feature /FeatureName:TelnetClient
Se limitato ai metodi disponibili in Windows per impostazione predefinita, PowerShell può rappresentare un approccio migliore per testare la connettività delle porte. Vedere la sezione PowerShell di seguito per esempi.
Prova la risoluzione dei nomi DNS
nslookup bing.com
Mostra regola Windows Firewall
netsh advfirewall firewall show rule name="Remote Desktop - User Mode (TCP-In)"
Disattiva Windows Firewall
netsh advfirewall set allprofiles state off
È possibile utilizzare questo comando durante la risoluzione dei problemi per escludere temporaneamente Windows Firewall. Sarà abilitato al prossimo riavvio o quando lo abiliti utilizzando il comando seguente. Non arrestare il servizio Windows Firewall (MPSSVC) o il servizio Base Filtering Engine (BFE) per escludere Windows Firewall. L'arresto di MPSSVC o BFE comporterà il blocco di tutta la connettività.
Abilita Windows Firewall
netsh advfirewall set allprofiles state on
Gestisci utenti e gruppi utilizzando CMD
Crea un account utente locale
net user /add <username> <password>
Aggiungi utente locale al gruppo locale
net localgroup Administrators <username> /add
Verificare che l'account utente sia abilitato
net user <username> | find /i "active"
Le macchine virtuali di Azure create dall'immagine generalizzata avranno l'account amministratore locale rinominato con il nome specificato durante il provisioning della macchina virtuale. Quindi di solito non sarà Administrator
.
Abilita account utente
net user <username> /active:yes
Visualizza le proprietà dell'account utente
net user <username>
Esempi di linee di interesse da un account amministratore locale:
Account active Yes
Account expires Never
Password expires Never
Workstations allowed All
Logon hours allowed All
Local Group Memberships *Administrators
Visualizza i gruppi locali
net localgroup
Gestisci il registro eventi di Windows utilizzando CMD
Errori del registro eventi di query
wevtutil qe system /c:10 /f:text /q:"Event[System[Level=2]]" | more
Modificare /c:10
al numero desiderato di eventi da restituire, oppure spostarlo per restituire tutti gli eventi corrispondenti al filtro.
Query registro eventi per ID evento
wevtutil qe system /c:1 /f:text /q:"Event[System[EventID=11]]" | more
Query registro eventi per ID evento e provider
wevtutil qe system /c:1 /f:text /q:"Event[System[Provider[@Name='Microsoft-Windows-Hyper-V-Netvsc'] and EventID=11]]" | more
Interroga il registro eventi per ID evento e provider per le ultime 24 ore
wevtutil qe system /c:1 /f:text /q:"Event[System[Provider[@Name='Microsoft-Windows-Hyper-V-Netvsc'] and EventID=11 and TimeCreated[timediff(@SystemTime) <= 86400000]]]"
Utilizzare 604800000
per guardare indietro di 7 giorni invece che di 24 ore.
Interroga il registro eventi per ID evento, provider ed EventData negli ultimi 7 giorni
wevtutil qe security /c:1 /f:text /q:"Event[System[Provider[@Name='Microsoft-Windows-Security-Auditing'] and EventID=4624 and TimeCreated[timediff(@SystemTime) <= 604800000]] and EventData[Data[@Name='TargetUserName']='<username>']]" | more
Visualizza o rimuovi le applicazioni installate utilizzando CMD
Elenca le applicazioni installate
wmic product get Name,InstallDate | sort /r | more
L'ordinamento sort /r
è decrescente in base alla data di installazione, per facilitare la visualizzazione di ciò che è stato installato di recente. Utilizzare <spacebar>
per passare alla pagina successiva o <enter>
per avanzare di una riga.
Disinstallare un'applicazione
wmic path win32_product where name="<name>" call uninstall
Sostituire <name>
con il nome restituito dal comando precedente per l'applicazione che si desidera rimuovere.
Gestione file system utilizzando CMD
Ottieni la versione del file
wmic datafile where "drive='C:' and path='\\windows\\system32\\drivers\\' and filename like 'netvsc%'" get version /format:list
Questo esempio restituisce la versione del file del driver NIC virtuale, che è netvsc.sys, netvsc63.sys o netvsc60.sys a seconda della versione di Windows.
Cerca la corruzione del file di sistema
sfc /scannow
Vedere anche Riparare un'immagine Windows.
Cerca la corruzione del file di sistema
dism /online /cleanup-image /scanhealth
Vedere anche Riparare un'immagine Windows.
Esporta i permessi dei file in un file di testo
icacls %programdata%\Microsoft\Crypto\RSA\MachineKeys /t /c > %temp%\MachineKeys_permissions_before.txt
Salva i permessi dei file nel file ACL
icacls %programdata%\Microsoft\Crypto\RSA\MachineKeys /save %temp%\MachineKeys_permissions_before.aclfile /t
Ripristina i permessi dei file dal file ACL
icacls %programdata%\Microsoft\Crypto\RSA /save %temp%\MachineKeys_permissions_before.aclfile /t
Il percorso quando si utilizza /restore
deve essere la cartella madre della cartella specificata quando si utilizza /save
. In questo esempio, \RSA
è il genitore della cartella \MachineKeys
specificata nell'esempio /save
.
Prendi la proprietà NTFS di una cartella
takeown /f %programdata%\Microsoft\Crypto\RSA\MachineKeys /a /r
Concedere le autorizzazioni NTFS a una cartella in modo ricorsivo
icacls C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys /t /c /grant "BUILTIN\Administrators:(F)"
Gestire i dispositivi
Rimuovere i dispositivi PNP non presenti
%windir%\System32\RUNDLL32.exe %windir%\System32\pnpclean.dll,RunDLL_PnpClean /Devices /Maxclean
Gestire Criteri di gruppo
Forza l'aggiornamento dei criteri di gruppo
gpupdate /force /wait:-1
Attività varie utilizzando CMD
Mostra la versione del sistema operativo
ver
o
wmic os get caption,version,buildnumber /format:list
o
systeminfo find /i "os name"
systeminfo | findstr /i /r "os.*version.*build"
Visualizza la data di installazione del sistema operativo
systeminfo | find /i "original"
o
wmic os get installdate
Visualizza l'ora dell'ultimo avvio
systeminfo | find /i "system boot time"
Visualizza il fuso orario
systeminfo | find /i "time zone"
o
wmic timezone get caption,standardname /format:list
Riavvia Windows
shutdown /r /t 0
L'aggiunta di /f
forzerà la chiusura delle applicazioni in esecuzione senza avvisare gli utenti.
Rileva l'avvio in modalità provvisoria
bcdedit /enum | find /i "safeboot"
Comandi di Windows - PowerShell
Per eseguire PowerShell in SAC, dopo aver raggiunto un prompt CMD, digitare:
powershell <enter>
Attenzione
Rimuovere il modulo PSReadLine dalla sessione di PowerShell prima di eseguire qualsiasi altro comando di PowerShell. Esiste un problema noto in cui è possibile introdurre caratteri aggiuntivi nel testo incollato dagli Appunti se PSReadLine è in esecuzione in una sessione di PowerShell in SAC.
Innanzitutto controlla se PSReadLine è caricato. Viene caricato per impostazione predefinita su Windows Server 2016, Windows 10 e versioni successive di Windows. Sarebbe presente solo nelle versioni precedenti di Windows se fosse stato installato manualmente.
Se questo comando restituisce un prompt senza output, il modulo non è stato caricato ed è possibile continuare a utilizzare normalmente la sessione di PowerShell in SAC.
get-module psreadline
Se il comando precedente restituisce la versione del modulo PSReadLine, eseguire il comando seguente per scaricarlo. Questo comando non elimina o disinstalla il modulo, lo scarica solo dalla sessione corrente di PowerShell.
remove-module psreadline
Visualizza e modifica le impostazioni del registro di Windows utilizzando PowerShell
Verificare che RDP sia abilitato
get-itemproperty -path 'hklm:\system\curRentcontrolset\control\terminal server' -name 'fdenytsconNections'
get-itemproperty -path 'hklm:\software\policies\microsoft\windows nt\terminal services' -name 'fdenytsconNections'
La seconda chiave (in \Policies) esisterà solo se è configurata l'impostazione dei criteri di gruppo pertinente.
Abilitare RDP
set-itemproperty -path 'hklm:\system\curRentcontrolset\control\terminal server' -name 'fdenytsconNections' 0 -type dword
set-itemproperty -path 'hklm:\software\policies\microsoft\windows nt\terminal services' -name 'fdenytsconNections' 0 -type dword
La seconda chiave (in \Policies) sarebbe necessaria solo se l'impostazione dei criteri di gruppo pertinente fosse stata configurata. Il valore verrà riscritto al successivo aggiornamento dei criteri di gruppo se è configurato nei criteri di gruppo.
Gestisci i servizi Windows utilizzando PowerShell
Visualizzare i dettagli del servizio
get-wmiobject win32_service -filter "name='termservice'" | format-list Name,DisplayName,State,StartMode,StartName,PathName,ServiceType,Status,ExitCode,ServiceSpecificExitCode,ProcessId
Get-Service
può essere utilizzato ma non include l'account di accesso al servizio. Get-WmiObject win32-service
sì.
Imposta account di accesso al servizio
(get-wmiobject win32_service -filter "name='termservice'").Change($null,$null,$null,$null,$null,$false,'NT Authority\NetworkService')
Quando si utilizza un account di servizio diverso da NT AUTHORITY\LocalService
, NT AUTHORITY\NetworkService
o LocalSystem
, specificare la password dell'account come ultimo (ottavo) argomento dopo il nome dell'account.
Imposta il tipo di avvio del servizio
set-service termservice -startuptype Manual
Set-service
accetta Automatic
, Manual
o Disabled
come tipo di avvio.
Imposta le dipendenze del servizio
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Services\TermService' -Name DependOnService -Value @('RPCSS','TermDD')
Avvia servizio
start-service termservice
Arresta servizio
stop-service termservice
Gestisci le funzionalità di rete utilizzando PowerShell
Mostra proprietà NIC
get-netadapter | where {$_.ifdesc.startswith('Microsoft Hyper-V Network Adapter')} | format-list status,name,ifdesc,macadDresS,driverversion,MediaConNectState,MediaDuplexState
o
get-wmiobject win32_networkadapter -filter "servicename='netvsc'" | format-list netenabled,name,macaddress
Get-NetAdapter
è disponibile in 2012+, per l'utilizzo di 2008R2Get-WmiObject
.
Mostra proprietà IP
get-wmiobject Win32_NetworkAdapterConfiguration -filter "ServiceName='netvsc'" | format-list DNSHostName,IPAddress,DHCPEnabled,IPSubnet,DefaultIPGateway,MACAddress,DHCPServer,DNSServerSearchOrder
Abilita NIC
get-netadapter | where {$_.ifdesc.startswith('Microsoft Hyper-V Network Adapter')} | enable-netadapter
o
(get-wmiobject win32_networkadapter -filter "servicename='netvsc'").enable()
Get-NetAdapter
è disponibile in 2012+, per l'utilizzo di 2008R2Get-WmiObject
.
Impostare la scheda NIC per utilizzare DHCP
get-netadapter | where {$_.ifdesc.startswith('Microsoft Hyper-V Network Adapter')} | Set-NetIPInterface -DHCP Enabled
(get-wmiobject Win32_NetworkAdapterConfiguration -filter "ServiceName='netvsc'").EnableDHCP()
Get-NetAdapter
è disponibile in 2012+. Per 2008R2 utilizzare Get-WmiObject
. Le macchine virtuali di Azure devono essere sempre configurate nel sistema operativo guest per usare DHCP per ottenere un indirizzo IP. L'impostazione dell'IP statico di Azure usa ancora DHCP per fornire l'IP alla macchina virtuale.
Ping
test-netconnection
Note
Il cmdlet Write-Progress potrebbe non funzionare con questo comando. Come miglioramento, puoi eseguire $ProgressPreference = "SilentlyContinue"
in PowerShell per disabilitare la barra di avanzamento.
o
get-wmiobject Win32_PingStatus -Filter 'Address="8.8.8.8"' | format-table -autosize IPV4Address,ReplySize,ResponseTime
Test-Netconnection
senza alcun parametro tenterà di eseguire il ping per internetbeacon.msedge.net
. È disponibile in 2012+. Per 2008R2 utilizzare Get-WmiObject
come nel secondo esempio.
Ping della porta
test-netconnection -ComputerName bing.com -Port 80
o
(new-object Net.Sockets.TcpClient).BeginConnect('bing.com','80',$null,$null).AsyncWaitHandle.WaitOne(300)
Test-NetConnection
è disponibile in 2012+. Per 2008R2 utilizzare Net.Sockets.TcpClient
Prova la risoluzione dei nomi DNS
resolve-dnsname bing.com
o
[System.Net.Dns]::GetHostAddresses('bing.com')
Resolve-DnsName
è disponibile in 2012+. Per 2008R2 utilizzare System.Net.DNS
.
Mostra la regola del firewall di Windows per nome
get-netfirewallrule -name RemoteDesktop-UserMode-In-TCP
Mostra la regola del firewall di Windows per porta
get-netfirewallportfilter | where {$_.localport -eq 3389} | foreach {Get-NetFirewallRule -Name $_.InstanceId} | format-list Name,Enabled,Profile,Direction,Action
o
(new-object -ComObject hnetcfg.fwpolicy2).rules | where {$_.localports -eq 3389 -and $_.direction -eq 1} | format-table Name,Enabled
Get-NetFirewallPortFilter
è disponibile in 2012+. Per 2008R2 utilizzare l'oggetto COM hnetcfg.fwpolicy2
.
Disabilita il firewall di Windows
Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled False
Set-NetFirewallProfile
è disponibile in 2012+. Per 2008R2 utilizzare netsh advfirewall
come indicato nella sezione CMD precedente.
Gestisci utenti e gruppi utilizzando PowerShell
Crea un account utente locale
new-localuser <name>
Verificare che l'account utente sia abilitato
(get-localuser | where {$_.SID -like "S-1-5-21-*-500"}).Enabled
o
(get-wmiobject Win32_UserAccount -Namespace "root\cimv2" -Filter "SID like 'S-1-5-%-500'").Disabled
Get-LocalUser
è disponibile in 2012+. Per 2008R2 utilizzare Get-WmiObject
. Questo esempio mostra l'account amministratore locale predefinito, che ha sempre il SID S-1-5-21-*-500
. Le macchine virtuali di Azure create dall'immagine generalizzata avranno l'account amministratore locale rinominato con il nome specificato durante il provisioning della macchina virtuale. Quindi di solito non sarà Administrator
.
Aggiungi utente locale al gruppo locale
add-localgroupmember -group Administrators -member <username>
Abilita account utente locale
get-localuser | where {$_.SID -like "S-1-5-21-*-500"} | enable-localuser
Questo esempio abilita l'account di amministratore locale predefinito, che ha sempre il SID S-1-5-21-*-500
. Le macchine virtuali di Azure create dall'immagine generalizzata avranno l'account amministratore locale rinominato con il nome specificato durante il provisioning della macchina virtuale. Quindi di solito non sarà Administrator
.
Visualizza le proprietà dell'account utente
get-localuser | where {$_.SID -like "S-1-5-21-*-500"} | format-list *
o
get-wmiobject Win32_UserAccount -Namespace "root\cimv2" -Filter "SID like 'S-1-5-%-500'" | format-list Name,Disabled,Status,Lockout,Description,SID
Get-LocalUser
è disponibile in 2012+. Per 2008R2 utilizzare Get-WmiObject
. Questo esempio mostra l'account amministratore locale predefinito, che ha sempre il SID S-1-5-21-*-500
.
Visualizza i gruppi locali
(get-localgroup).name | sort
(get-wmiobject win32_group).Name | sort
Get-LocalUser
è disponibile in 2012+. Per 2008R2 utilizzare Get-WmiObject
.
Gestisci il registro eventi di Windows utilizzando PowerShell
Errori del registro eventi di query
get-winevent -logname system -maxevents 1 -filterxpath "*[System[Level=2]]" | more
Modificare /c:10
al numero desiderato di eventi da restituire, oppure spostarlo per restituire tutti gli eventi corrispondenti al filtro.
Query registro eventi per ID evento
get-winevent -logname system -maxevents 1 -filterxpath "*[System[EventID=11]]" | more
Query registro eventi per ID evento e provider
get-winevent -logname system -maxevents 1 -filterxpath "*[System[Provider[@Name='Microsoft-Windows-Hyper-V-Netvsc'] and EventID=11]]" | more
Interroga il registro eventi per ID evento e provider per le ultime 24 ore
get-winevent -logname system -maxevents 1 -filterxpath "*[System[Provider[@Name='Microsoft-Windows-Hyper-V-Netvsc'] and EventID=11 and TimeCreated[timediff(@SystemTime) <= 86400000]]]"
Utilizzare 604800000
per guardare indietro di 7 giorni invece che di 24 ore. |
Interroga il registro eventi per ID evento, provider ed EventData negli ultimi 7 giorni
get-winevent -logname system -maxevents 1 -filterxpath "*[System[Provider[@Name='Microsoft-Windows-Security-Auditing'] and EventID=4624 and TimeCreated[timediff(@SystemTime) <= 604800000]] and EventData[Data[@Name='TargetUserName']='<username>']]" | more
Visualizza o rimuovi le applicazioni installate utilizzando PowerShell
Elenca il software installato
get-wmiobject win32_product | select installdate,name | sort installdate -descending | more
Disinstallare il software
(get-wmiobject win32_product -filter "Name='<name>'").Uninstall()
Gestione del file system tramite PowerShell
Ottieni la versione del file
(get-childitem $env:windir\system32\drivers\netvsc*.sys).VersionInfo.FileVersion
Questo esempio restituisce la versione del file del driver NIC virtuale, denominato netvsc.sys, netvsc63.sys o netvsc60.sys a seconda della versione di Windows.
Scarica ed estrai il file
$path='c:\bin';md $path;cd $path;(new-object net.webclient).downloadfile( ('htTp:/'+'/download.sysinternals.com/files/SysinternalsSuite.zip'),"$path\SysinternalsSuite.zip");(new-object -com shelL.apPlication).namespace($path).CopyHere( (new-object -com shelL.apPlication).namespace("$path\SysinternalsSuite.zip").Items(),16)
Questo esempio crea una cartella c:\bin
, quindi scarica ed estrae la suite di strumenti Sysinternals in c:\bin
.
Attività varie tramite PowerShell
Mostra la versione del sistema operativo
get-wmiobject win32_operatingsystem | format-list caption,version,buildnumber
Visualizza la data di installazione del sistema operativo
(get-wmiobject win32_operatingsystem).converttodatetime((get-wmiobject win32_operatingsystem).installdate)
Visualizza l'ora dell'ultimo avvio
(get-wmiobject win32_operatingsystem).lastbootuptime
Visualizza il tempo di attività di Windows
"{0:dd}:{0:hh}:{0:mm}:{0:ss}.{0:ff}" -f ((get-date)-(get-wmiobject win32_operatingsystem).converttodatetime((get-wmiobject win32_operatingsystem).lastbootuptime))
Restituisce il tempo di attività come <days>:<hours>:<minutes>:<seconds>:<milliseconds>
, ad esempio 49:16:48:00.00
.
Riavvia Windows
restart-computer
L'aggiunta di -force
forzerà la chiusura delle applicazioni in esecuzione senza avvisare gli utenti.
Metadati dell'istanza
È possibile eseguire query sui metadati dell'istanza di Azure dall'interno della macchina virtuale di Azure per visualizzare dettagli quali osType, Location, vmSize, vmId, name, resourceGroupName, subscriptionId, privateIpAddress e publicIpAddress.
L'esecuzione di query sui metadati dell'istanza richiede una connettività di rete guest sana, perché effettua una chiamata REST tramite l'host di Azure al servizio di metadati dell'istanza. Pertanto, se sei in grado di eseguire query sui metadati dell'istanza, significa che il guest è in grado di comunicare in rete con un servizio ospitato da Azure.
Per altre informazioni, vedere Servizio metadati istanza di Azure.
Metadati dell'istanza
$im = invoke-restmethod -headers @{"metadata"="true"} -uri http://169.254.169.254/metadata/instance?api-version=2017-08-01 -method get
$im | convertto-json
Tipo di sistema operativo (metadati dell'istanza)
$im.Compute.osType
Posizione (metadati dell'istanza)
$im.Compute.Location
Dimensioni (metadati dell'istanza)
$im.Compute.vmSize
ID VM (metadati dell'istanza)
$im.Compute.vmId
Nome VM (metadati istanza)
$im.Compute.name
Nome del gruppo di risorse (metadati dell'istanza)
$im.Compute.resourceGroupName
ID sottoscrizione (metadati dell'istanza)
$im.Compute.subscriptionId
Tag (metadati dell'istanza)
$im.Compute.tags
ID gruppo di posizionamento (metadati dell'istanza)
$im.Compute.placementGroupId
Dominio di errore della piattaforma (metadati dell'istanza)
$im.Compute.platformFaultDomain
Dominio di aggiornamento della piattaforma (metadati dell'istanza)
$im.Compute.platformUpdateDomain
Indirizzo IP privato IPv4 (metadati dell'istanza)
$im.network.interface.ipv4.ipAddress.privateIpAddress
Indirizzo IP pubblico IPv4 (metadati dell'istanza)
$im.network.interface.ipv4.ipAddress.publicIpAddress
Indirizzo/prefisso subnet IPv4 (metadati istanza)
$im.network.interface.ipv4.subnet.address
$im.network.interface.ipv4.subnet.prefix
Indirizzo IP IPv6 (metadati dell'istanza)
$im.network.interface.ipv6.ipAddress
Indirizzo MAC (metadati dell'istanza)
$im.network.interface.macAddress
Passaggi successivi
- La pagina principale della documentazione di Windows della console seriale si trova qui.
- La console seriale è disponibile anche per le macchine virtuali Linux.
- Ulteriori informazioni sulla diagnostica di avvio.
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.