Dela via


Använda CMD- och PowerShell Windows-kommandon

Gäller för: ✔️ Virtuella Windows-datorer

Den här artikeln innehåller exempelkommandon för att utföra vanliga uppgifter i scenarier där du måste använda SAC (Special Administration Console) för att få åtkomst till din virtuella Windows-dator (VM). Du kan till exempel behöva använda SAC för att felsöka RDP-anslutningsfel.

SAC ingår i alla versioner av Windows sedan Windows Server 2003. Som standard är den dock inaktiverad. SAC förlitar sig på sacdrv.sys kerneldrivrutinen, Special Administration Console Helper tjänsten (sacsvr) och sacsess.exe processen. Mer information finns i Verktyg och inställningar för nödhanteringstjänster.

MED SAC kan du ansluta via en seriell port till det operativsystem som körs. När du öppnar ett kommandotolkfönster i SAC startar sacsess.execmd.exe inom ditt körande operativsystem. I Aktivitetshanteraren kan du se att om du samtidigt även ansluter via RDP till den virtuella datorn är du nu ansluten till SAC via seriekonsolfunktionen. CMD-fönstret som du kommer åt via SAC är samma som det cmd.exe fönster som du använder när du ansluter via RDP. Alla samma kommandon och verktyg är tillgängliga, inklusive möjligheten att starta PowerShell från den CMD-instansen. Den största skillnaden mellan SAC och Windows Recovery Environment (WinRE) är att SAC låter dig hantera ditt operativsystem som körs, men WinRE börjar med ett annat, minimalt operativsystem. Även om virtuella Azure-datorer inte stöder möjligheten att komma åt WinRE kan de hanteras via SAC.

Eftersom SAC är begränsat till en 80 x 24 bildpunktsskärmsbuffert som inte har någon bakåtrullningsfunktion lägger du till | more kommandon för att visa utdata en sida i taget. Använd <spacebar> för att se nästa sida eller <enter> för att se nästa rad.

Inklistringsgenvägen för seriekonsolfönstret är SHIFT+INSERT.

På grund av SAC:s begränsade skärmbuffert kan det vara enklare att hantera längre kommandon genom att kopiera dem från en lokal textredigerare till SAC.

Använda CMD för Windows-registerinställningar

Följ dessa steg om du vill visa och redigera Windows-registerinställningar med hjälp av CMD:

  1. Kontrollera att RDP är aktiverat. Kör följande kommandon:

    reg query "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections

    reg query "HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services" /v fDenyTSConnections

    Observera: Den andra nyckeln (under \Policies) finns bara om den relevanta gruppolicyinställningen har konfigurerats.

  2. Aktivera RDP genom att köra följande kommandon:

    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

    Obs: Den andra nyckeln (under \Policies) är endast nödvändig om den relevanta grupppolicyinställningen har konfigurerats. Värdet skrivs om vid nästa grupprincipuppdatering om det har konfigurerats i grupprincip.

Använda CMD för att hantera Windows-tjänster

Följ dessa steg för att hantera Windows-tjänster med hjälp av CMD:

  1. Visa tjänstens status:

    sc query termservice

  2. Visa tjänstinloggningskontot:

    sc qc termservice

  3. Ange tjänstinloggningskontot:

    sc config termservice obj= "NT Authority\NetworkService"

    Anmärkning: Ett blanksteg krävs efter likhetstecknet.

  4. Ange tjänststarttyp:

    sc config termservice start= demand

    Obs: Ett blanksteg krävs efter likhetstecknet. Möjliga startvärden är: boot, system, auto, demand, disabledoch delayed-auto.

  5. Ange tjänstberoenden:

    sc config termservice depend= RPCSS

    Notera: Ett blanksteg krävs efter likamedtecknet.

  6. Starta tjänsten genom att köra något av följande kommandon:

    net start termservice

    sc start termservice

  7. Stoppa tjänsten genom att köra något av följande kommandon:

    net stop termservice

    sc stop termservice

Använda CMD för att hantera nätverksfunktioner

Följ dessa steg för att hantera nätverksfunktioner med hjälp av CMD:

  1. Visa egenskaperna för nätverksgränssnittet (netsh):

    netsh interface show interface

  2. Visa IP-egenskaper:

    netsh interface ip show config

  3. Visa IPSec-konfiguration:

    netsh nap client show configuration

  4. Aktivera nätverksgränssnittet:

    netsh interface set interface name="<interface name>" admin=enabled

  5. Ange netsh-gränssnittet så att DHCP används:

    netsh interface ip set address name="<interface name>" source=dhcp

Mer information om netshfinns i Network Shell (netsh).

Virtuella Azure-datorer bör alltid konfigureras i gästoperativsystemet för att använda DHCP för att hämta en IP-adress. Azures statiska IP-inställning använder fortfarande DHCP för att ge den statiska IP-adressen till den virtuella datorn.

Ping

ping 8.8.8.8

Port ping

Installera telnet-klienten

dism /online /Enable-Feature /FeatureName:TelnetClient

Testa anslutningen

telnet bing.com 80

Ta bort telnet-klienten

dism /online /Disable-Feature /FeatureName:TelnetClient

När powershell är begränsat till metoder som är tillgängliga i Windows som standard kan det vara en bättre metod för att testa portanslutningen. Se följande PowerShell-avsnitt för exempel.

Testa DNS-namnmatchning

nslookup bing.com

Visa Windows-brandväggsregel

netsh advfirewall firewall show rule name="Remote Desktop - User Mode (TCP-In)"

Inaktivera Windows-brandväggen

netsh advfirewall set allprofiles state off

Du kan använda det här kommandot när du felsöker för att tillfälligt utesluta Windows-brandväggen. Brandväggen aktiveras vid nästa omstart eller när du aktiverar den med hjälp av kommandot i nästa avsnitt. Stoppa inte tjänsten Windows Firewall Service (MPSSVC) eller BFE (Base Filtering Engine) som en metod för att utesluta Windows-brandväggen. Om du stoppar MPSSVC eller BFE blockeras all anslutning.

Aktivera Windows-brandväggen

netsh advfirewall set allprofiles state on

Hantera användare och grupper med hjälp av CMD

Skapa ett lokalt användarkonto

net user /add <username> <password>

Lägga till lokal användare i lokal grupp

net localgroup Administrators <username> /add

Kontrollera att användarkontot är aktiverat

net user <username> | find /i "active"

Virtuella Azure-datorer som skapas från en generaliserad avbildning har det lokala administratörskontot bytt namn till det namn som anges under provisioneringen av den virtuella datorn. Vanligtvis är namnet inte Administrator.

Aktivera användarkonto

net user <username> /active:yes

Visa egenskaper för användarkonto

net user <username>

Exempel på intresserader från ett lokalt administratörskonto:

Account active          Yes

Account expires         Never

Password expires        Never

Workstations allowed    All

Logon hours allowed     All

Local Group Memberships *Administrators

Visa lokala grupper

net localgroup

Hantera Windows-händelseloggen med hjälp av CMD

Frågehändelseloggfel

wevtutil qe system /c:10 /f:text /q:"Event[System[Level=2]]" | more

Ändra /c:10 till önskat antal händelser som ska returneras eller flytta det för att returnera alla händelser som matchar filtret.

Fråga händelselogg efter händelse-ID

wevtutil qe system /c:1 /f:text /q:"Event[System[EventID=11]]" | more

Fråga händelselogg efter händelse-ID och provider

wevtutil qe system /c:1 /f:text /q:"Event[System[Provider[@Name='Microsoft-Windows-Hyper-V-Netvsc'] and EventID=11]]" | more

Fråga händelselogg efter händelse-ID och provider under de senaste 24 timmarna

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]]]"

Använd 604800000 för att se tillbaka sju dagar i stället för 24 timmar.

Fråga händelselogg efter händelse-ID, provider och EventData under de senaste sju dagarna

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

Visa eller ta bort installerade program med hjälp av CMD

Visa en lista över installerade program

wmic product get Name,InstallDate | sort /r | more

Kommandot sort /r sorterar resulterar i fallande ordning efter installationsdatum, vilket gör det enklare att identifiera nyligen installerade program. Använd <spacebar> för att gå vidare till nästa sida med utdata eller <enter> för att gå vidare med en rad.

Avinstallera ett program

wmic path win32_product where name="<name>" call uninstall

Ersätt <name> med namnet som returneras i föregående kommando för det program som du vill ta bort.

Filsystemhantering med hjälp av CMD

Hämta filversion

wmic datafile where "drive='C:' and path='\\windows\\system32\\drivers\\' and filename like 'netvsc%'" get version /format:list

Det här exemplet returnerar filversionen av drivrutinen för det virtuella nätverkskortet, som är netvsc.sys, netvsc63.syseller netvsc60.sys beroende på Windows-versionen.

Sök efter skadade systemfiler

sfc /scannow

Se även Reparera en Windows-avbildning.

Sök efter skadade systemfiler

dism /online /cleanup-image /scanhealth

Se även Reparera en Windows-avbildning.

Exportera filbehörigheter till textfil

icacls %programdata%\Microsoft\Crypto\RSA\MachineKeys /t /c > %temp%\MachineKeys_permissions_before.txt

Spara filbehörigheter till ACL-fil

icacls %programdata%\Microsoft\Crypto\RSA\MachineKeys /save %temp%\MachineKeys_permissions_before.aclfile /t

Återställa filbehörigheter från ACL-fil

icacls %programdata%\Microsoft\Crypto\RSA /save %temp%\MachineKeys_permissions_before.aclfile /t

När du använder /restore, anger du den överordnade mappen för den som används i /save. Använd till exempel \RSA om du tidigare sparade behörigheter för \MachineKeys.

Ta NTFS-ägarskap för en mapp

takeown /f %programdata%\Microsoft\Crypto\RSA\MachineKeys /a /r

Bevilja NTFS-behörigheter till en mapp rekursivt

icacls C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys /t /c /grant "BUILTIN\Administrators:(F)"

Hantera enheter

Ta bort poster för icke-existerande PNP-enheter

Det här kommandot rensar enhetsposter för maskinvara som inte längre finns i systemet:

%windir%\System32\RUNDLL32.exe %windir%\System32\pnpclean.dll,RunDLL_PnpClean /Devices /Maxclean

Hantera grupprincip

Tvinga fram en grupprincipuppdatering

gpupdate /force /wait:-1

Diverse uppgifter med hjälp av CMD

Visa operativsystemversion

ver

eller

wmic os get caption,version,buildnumber /format:list

eller

systeminfo find /i "os name"

systeminfo | findstr /i /r "os.*version.*build"

Visa installationsdatum för operativsystem

systeminfo | find /i "original"

eller

wmic os get installdate

Visa senaste starttid

systeminfo | find /i "system boot time"

Visa tidszon

systeminfo | find /i "time zone"

eller

wmic timezone get caption,standardname /format:list

Starta om Windows

shutdown /r /t 0

Att lägga till /f tvingar program som körs att stängas utan förvarning.

Identifiera start i felsäkert läge

bcdedit /enum | find /i "safeboot"

Windows-kommandon – PowerShell

Om du vill köra PowerShell i SAC skriver du:

powershell <enter>

Försiktighet

Ta bort PSReadLine-modulen från PowerShell-sessionen innan du kör andra PowerShell-kommandon. Det finns ett känt problem där extra tecken kan introduceras i text som klistras in från Urklipp om PSReadLine körs i en PowerShell-session i SAC.

Kontrollera först om PSReadLine har lästs in. Den läses in som standard på Windows Server 2016, Windows 10 och senare versioner av Windows. Den skulle bara finnas i tidigare Windows-versioner om den är manuellt installerad.

Om det här kommandot återgår till en prompt utan resultat, var modulen inte laddad och du kan fortsätta använda PowerShell-sessionen i SAC som vanligt.

get-module psreadline

Om föregående kommando returnerar PSReadLine-modulversionen kör du följande kommando för att ta bort den. Det här kommandot tar inte bort eller avinstallerar inte modulen. Det tar bara bort det från den aktuella PowerShell-sessionen.

remove-module psreadline

Om PSReadLine läses in kan det medföra extra tecken när du klistrar in text. Undvik detta genom att ta bort modulen med hjälp av remove-module psreadline.

Visa och redigera Windows-registerinställningar med hjälp av PowerShell

Kontrollera att RDP är aktiverat

get-itemproperty -path 'hklm:\system\curRentcontrolset\control\terminal server' -name 'fdenytsconNections'

get-itemproperty -path 'hklm:\software\policies\microsoft\windows nt\terminal services' -name 'fdenytsconNections'

Den andra nyckeln under \Policies finns bara om den relevanta grupprincipinställningen har konfigurerats.

Aktivera 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

Den andra nyckeln (under \Policies) behövs bara om den relevanta grupprincipinställningen har konfigurerats. Värdet skrivs om vid nästa uppdatering av grupprincipen om det har konfigurerats i grupprincipen.

Hantera Windows-tjänster med PowerShell

Visa tjänstinformation

get-wmiobject win32_service -filter "name='termservice'" | format-list Name,DisplayName,State,StartMode,StartName,PathName,ServiceType,Status,ExitCode,ServiceSpecificExitCode,ProcessId

Get-Service kan användas men inkluderar inte kontot för tjänstinloggning. Get-WmiObject win32-service Gör.

Ange tjänstinloggningskonto

(get-wmiobject win32_service -filter "name='termservice'").Change($null,$null,$null,$null,$null,$false,'NT Authority\NetworkService')

När du använder ett annat tjänstkonto än NT AUTHORITY\LocalService, NT AUTHORITY\NetworkServiceeller LocalSystem, anger du kontolösenordet som det sista argumentet (åttonde) efter kontonamnet.

Ange starttyp för tjänsten

set-service termservice -startuptype Manual

Set-service Automaticaccepterar , Manualeller Disabled för starttyp.

Ange tjänstberoenden

Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Services\TermService' -Name DependOnService -Value @('RPCSS','TermDD')

Starta tjänsten

start-service termservice

Stoppa tjänsten

stop-service termservice

Hantera nätverksfunktioner med Hjälp av PowerShell

Visa egenskaper för nätverkskort

get-netadapter | where {$_.ifdesc.startswith('Microsoft Hyper-V Network Adapter')} | format-list status,name,ifdesc,macadDresS,driverversion,MediaConNectState,MediaDuplexState

eller

get-wmiobject win32_networkadapter -filter "servicename='netvsc'" | format-list netenabled,name,macaddress

Get-NetAdapter är tillgängligt i 2012 och senare versioner, för 2008 R2 använder du Get-WmiObject.

Visa IP-egenskaper

get-wmiobject Win32_NetworkAdapterConfiguration -filter "ServiceName='netvsc'" | format-list DNSHostName,IPAddress,DHCPEnabled,IPSubnet,DefaultIPGateway,MACAddress,DHCPServer,DNSServerSearchOrder

Aktivera nätverkskort

get-netadapter | where {$_.ifdesc.startswith('Microsoft Hyper-V Network Adapter')} | enable-netadapter

eller

(get-wmiobject win32_networkadapter -filter "servicename='netvsc'").enable()

Get-NetAdapter är tillgängligt i 2012 och senare versioner, för 2008 R2 använder du Get-WmiObject.

Ange att nätverkskortet ska använda 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 finns i 2012 och senare versioner. För 2008 R2 använder du Get-WmiObject. Virtuella Azure-datorer bör alltid konfigureras i gästoperativsystemet för att använda DHCP för att hämta en IP-adress. Azures statiska IP-inställning använder fortfarande DHCP för att ge IP-adressen till den virtuella datorn.

Ping

test-netconnection

Anmärkning

Cmdleten Write-Progress kanske inte fungerar med hjälp av det här kommandot. Som en åtgärd kan du köra $ProgressPreference = "SilentlyContinue" i PowerShell för att inaktivera förloppsindikatorn.

Or

get-wmiobject Win32_PingStatus -Filter 'Address="8.8.8.8"' | format-table -autosize IPV4Address,ReplySize,ResponseTime

Test-Netconnection utan några parametrar, försök att pinga internetbeacon.msedge.net. Den är tillgänglig i 2012 och senare versioner. För 2008 R2 använder du Get-WmiObject, som i det andra exemplet.

Port ping

test-netconnection -ComputerName bing.com -Port 80

Or

(new-object Net.Sockets.TcpClient).BeginConnect('bing.com','80',$null,$null).AsyncWaitHandle.WaitOne(300)

Test-NetConnection finns i 2012 och senare versioner. För 2008 R2 använder du Net.Sockets.TcpClient.

Testa DNS-namnmatchning

resolve-dnsname bing.com

Or

[System.Net.Dns]::GetHostAddresses('bing.com')

Resolve-DnsName finns i 2012 och senare versioner. För 2008 R2 använder du System.Net.DNS.

Visa Windows-brandväggsregel efter namn

get-netfirewallrule -name RemoteDesktop-UserMode-In-TCP

Visa Windows-brandväggsregeln efter port

get-netfirewallportfilter | where {$_.localport -eq 3389} | foreach {Get-NetFirewallRule -Name $_.InstanceId} | format-list Name,Enabled,Profile,Direction,Action

Or

(new-object -ComObject hnetcfg.fwpolicy2).rules | where {$_.localports -eq 3389 -and $_.direction -eq 1} | format-table Name,Enabled

Get-NetFirewallPortFilter finns i 2012 och senare versioner. Använd COM-objektet för hnetcfg.fwpolicy2 2008 R2.

Inaktivera Windows-brandväggen

Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled False

Set-NetFirewallProfile finns i 2012 och senare versioner. För 2008 R2 använder du netsh advfirewall enligt beskrivningen i cmd-avsnittet tidigare i den här artikeln.

Hantera användare och grupper med PowerShell

Skapa ett lokalt användarkonto

new-localuser <name>

Kontrollera att användarkontot är aktiverat

(get-localuser | where {$_.SID -like "S-1-5-21-*-500"}).Enabled

Or

(get-wmiobject Win32_UserAccount -Namespace "root\cimv2" -Filter "SID like 'S-1-5-%-500'").Disabled

Get-LocalUser finns i 2012 och senare versioner. För 2008 R2 använder du Get-WmiObject. Det här exemplet visar det inbyggda lokala administratörskontot. Det här kontot har alltid SID S-1-5-21-*-500. Virtuella Azure-datorer som skapas från en generaliserad avbildning har det lokala administratörskontot bytt namn till det namn som anges under provisioneringen av den virtuella datorn. Vanligtvis är namnet inte Administrator.

Lägga till lokal användare i lokal grupp

add-localgroupmember -group Administrators -member <username>

Aktivera lokalt användarkonto

get-localuser | where {$_.SID -like "S-1-5-21-*-500"} | enable-localuser

Det här exemplet aktiverar det inbyggda lokala administratörskontot. Det här kontot har alltid SID S-1-5-21-*-500. Virtuella Azure-datorer som skapas från en generaliserad avbildning har det lokala administratörskontot bytt namn till det namn som angavs under provisioneringen av den virtuella datorn. Vanligtvis är namnet inte Administrator.

Visa egenskaper för användarkonto

get-localuser | where {$_.SID -like "S-1-5-21-*-500"} | format-list *

Or

get-wmiobject Win32_UserAccount -Namespace "root\cimv2" -Filter "SID like 'S-1-5-%-500'" | format-list Name,Disabled,Status,Lockout,Description,SID

Get-LocalUser finns i 2012 och senare versioner. För 2008 R2 använder du Get-WmiObject. Det här exemplet visar det inbyggda lokala administratörskontot. Det här kontot har alltid SID S-1-5-21-*-500.

Visa lokala grupper

(get-localgroup).name | sort (get-wmiobject win32_group).Name | sort

Get-LocalUser finns i 2012 och senare versioner. För 2008 R2 använder du Get-WmiObject.

Hantera Windows-händelseloggen med Hjälp av PowerShell

Frågehändelseloggfel

get-winevent -logname system -maxevents 1 -filterxpath "*[System[Level=2]]" | more

Ändra /c:10 till önskat antal händelser som ska returneras eller ta bort det för att returnera alla matchande händelser.

Fråga händelselogg efter händelse-ID

get-winevent -logname system -maxevents 1 -filterxpath "*[System[EventID=11]]" | more

Fråga händelselogg efter händelse-ID och provider

get-winevent -logname system -maxevents 1 -filterxpath "*[System[Provider[@Name='Microsoft-Windows-Hyper-V-Netvsc'] and EventID=11]]" | more

Fråga händelselogg efter händelse-ID och provider under de senaste 24 timmarna

get-winevent -logname system -maxevents 1 -filterxpath "*[System[Provider[@Name='Microsoft-Windows-Hyper-V-Netvsc'] and EventID=11 and TimeCreated[timediff(@SystemTime) <= 86400000]]]"

Använd 604800000 för att se tillbaka sju dagar i stället för 24 timmar. |

Fråga händelselogg efter händelse-ID, provider och EventData under de senaste sju dagarna

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

Visa eller ta bort iInstalled-program med hjälp av PowerShell

Lista installerad programvara

get-wmiobject win32_product | select installdate,name | sort installdate -descending | more

Avinstallera programvara

(get-wmiobject win32_product -filter "Name='<name>'").Uninstall()

Filsystemhantering med hjälp av PowerShell

Hämta filversion

(get-childitem $env:windir\system32\drivers\netvsc*.sys).VersionInfo.FileVersion

Det här exemplet returnerar filversionen av den virtuella nätverkskortsdrivrutinen, som heter netvsc.sys, netvsc63.syseller netvsc60.sys beroende på Windows-versionen.

Ladda ned och extrahera fil

$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)

Det här exemplet skapar en c:\bin mapp och laddar sedan ned och extraherar Sysinternals-paketet med verktyg till c:\bin.

Diverse uppgifter som använder PowerShell

Visa operativsystemversion

get-wmiobject win32_operatingsystem | format-list caption,version,buildnumber

Visa installationsdatum för operativsystem

(get-wmiobject win32_operatingsystem).converttodatetime((get-wmiobject win32_operatingsystem).installdate)

Visa senaste starttid

(get-wmiobject win32_operatingsystem).lastbootuptime

Visa Windows-drifttid

"{0:dd}:{0:hh}:{0:mm}:{0:ss}.{0:ff}" -f ((get-date)-(get-wmiobject win32_operatingsystem).converttodatetime((get-wmiobject win32_operatingsystem).lastbootuptime))

Returnerar drifttid som <days>:<hours>:<minutes>:<seconds>:<milliseconds>, till exempel 49:16:48:00.00.

Starta om Windows

restart-computer

Att lägga till -force tvingar program som körs att stängas utan förvarning.

Instansmetadata

Du kan köra frågor mot Azure-instansmetadata från din virtuella Azure-dator för att visa information som osType, Location, vmSize, vmId, name, resourceGroupName, subscriptionId, privateIpAddress och publicIpAddress.

Att skicka frågor mot instansmetadata kräver en stabil gästnätverkets anslutning eftersom det gör ett REST-anrop via Azure värdmiljö till instansmetadatatjänsten. Om du kan göra anrop mot instansmetadata kan gästen kommunicera över nätverket till en tjänst som är värdbaserad i Azure.

Mer information finns i Azure Instance Metadata Service.

Instansmetadata

$im = invoke-restmethod -headers @{"metadata"="true"} -uri http://169.254.169.254/metadata/instance?api-version=2017-08-01 -method get

$im | convertto-json

OS-typ (instansmetadata)

$im.Compute.osType

Plats (instansmetadata)

$im.Compute.Location

Storlek (instansmetadata)

$im.Compute.vmSize

VM-ID (instansmetadata)

$im.Compute.vmId

VM-namn (instansmetadata)

$im.Compute.name

Namn på resursgrupp (instansmetadata)

$im.Compute.resourceGroupName

Prenumerations-ID (instansmetadata)

$im.Compute.subscriptionId

Taggar (instansmetadata)

$im.Compute.tags

Placeringsgrupps-ID (instansmetadata)

$im.Compute.placementGroupId

Plattformsfeldomän (instansmetadata)

$im.Compute.platformFaultDomain

Plattformsuppdateringsdomän (instansmetadata)

$im.Compute.platformUpdateDomain

Privat IP-adress för IPv4 (instansmetadata)

$im.network.interface.ipv4.ipAddress.privateIpAddress

Offentlig IP-adress för IPv4 (instansmetadata)

$im.network.interface.ipv4.ipAddress.publicIpAddress

IPv4-undernätsadress/prefix (instansmetadata)

$im.network.interface.ipv4.subnet.address

$im.network.interface.ipv4.subnet.prefix

IPv6 IP-adress (instansmetadata)

$im.network.interface.ipv6.ipAddress

MAC-adress (instansmetadata)

$im.network.interface.macAddress

Nästa steg

Kontakta oss om du vill ha hjälp

Om du har frågor eller behöver hjälp skapar du en supportbegäran eller frågar Azure Community-support. Du kan också skicka produktfeedback till Azure-feedbackcommunityn.