

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Nicht-NVME-Festplatten auf Amazon-EC2-Windows-Instance Volumes zuordnen
<a name="windows-list-disks"></a>

Für Instances, die von einem Windows-AMI gestartet werden, das AWS PV- oder Citrix PV-Treiber verwendet, können Sie die auf dieser Seite beschriebenen Beziehungen verwenden, um Ihre Windows-Festplatten Ihrem Instance-Speicher und Ihren EBS-Volumes zuzuordnen. In diesem Thema wird erklärt, wie Sie die **NVMe Nicht-Festplatten** anzeigen, die für das Windows-Betriebssystem auf Ihrer Instance verfügbar sind. Außerdem wird gezeigt, wie diese Nicht-NVME-Festplatten den zugrunde liegenden Amazon-EBS-Volumes und den Gerätenamen zugeordnet werden, die für die von Amazon EC2 verwendeten Blockgerät-Zuweisungen angegeben wurden.

**Anmerkung**  
Wenn das Windows-AMI Red-Hat-PV-Treiber verwendet, können Sie ein Upgrade Ihrer Instance für die Verwendung von Citrix-Treibern durchführen. Weitere Informationen finden Sie unter [Upgrade von PV-Treibern auf EC2-Windows-Instances](Upgrading_PV_drivers.md).

**Topics**
+ [Listet NVMe Nichtfestplatten auf](#windows-disks)
+ [Ordnen Sie Volumes, die keine NVMe Festplatten sind, zu](#windows-volume-mapping)

## Listet NVMe Nichtfestplatten auf
<a name="windows-disks"></a>

Sie können die Festplatten auf Ihrer Windows-Instanz mithilfe der Datenträgerverwaltung oder finden PowerShell.

------
#### [ Disk Management ]

**So zeigen Sie die Datenträger in Ihrer Windows-Instance an**

1. Melden Sie sich per Remotedesktop an Ihrer Windows-Instance an. Weitere Informationen finden Sie unter [Herstellen einer Verbindung mit Ihrer Windows-Instance mithilfe von RDP](connecting_to_windows_instance.md).

1. Starten Sie das Dienstprogramm für die Datenträgerverwaltung.

   Klicken Sie in der Aufgabenleiste mit der rechten Maustaste auf das Windows-Logo und wählen Sie anschließend **Datenträgerverwaltung** aus.

1. Überprüfen Sie die Datenträger. Das Root-Volume ist ein EBS-Volume, das unter `C:\` gemountet ist. Wenn keine weiteren Datenträger angezeigt werden, haben Sie keine zusätzlichen Volumes angegeben, als Sie das AMI erstellt bzw. die Instance gestartet haben.

   Das folgende Beispiel zeigt die verfügbaren Datenträger beim Start einer `m3.medium`-Instance mit einem Instance-Speicher-Volume (Disk 2) und einem zusätzlichen EBS Volume (Disk 1).  
![\[Datenträgerverwaltung mit einem Root-Volume, einem Instance-Speicher-Volume und einem EBS-Volume\]](http://docs.aws.amazon.com/de_de/AWSEC2/latest/UserGuide/images/disk_management.png)

1. Klicken Sie mit der rechten Maustaste auf den grauen Bereich mit der Bezeichnung "Datenträger 1" und wählen Sie dann die Option **Eigenschaften**. Notieren Sie sich den Wert unter **Location (Speicherort)** und schlagen Sie ihn in den Tabellen unter [Ordnen Sie Volumes, die keine NVMe Festplatten sind, zu](#windows-volume-mapping) nach. Für den folgenden Datenträger wird als Speicherort z. B. der Wert„Bus Number 0, Target Id 9, LUN 0” angezeigt. Laut der Tabelle für EBS-Volumes lautet der Gerätename für diesen Speicherort `xvdj`.  
![\[Der Speicherort eines EBS-Volumes.\]](http://docs.aws.amazon.com/de_de/AWSEC2/latest/UserGuide/images/disk_1_location.png)

------
#### [ PowerShell ]

Das folgende PowerShell Skript listet jede Festplatte sowie den entsprechenden Gerätenamen und das entsprechende Volume auf.

**Anforderungen und Einschränkungen**
+ Erfordert Windows Server 2012 oder höher.
+ Erfordert Anmeldedaten, um die EBS-Volume-ID zu erhalten Sie können ein Profil mit den Tools für PowerShell konfigurieren oder der Instanz eine IAM-Rolle zuweisen.
+ Unterstützt keine NVMe Volumes.
+ Unterstützt keine dynamischen Festplatten.

Connect zu Ihrer Windows-Instanz her und führen Sie den folgenden Befehl aus, um die PowerShell Skriptausführung zu aktivieren.

```
Set-ExecutionPolicy RemoteSigned
```

Kopieren Sie das folgende Skript und speichern Sie es unter Ihrer Windows-Instance als `mapping.ps1`.

```
# List the disks
function Convert-SCSITargetIdToDeviceName {
  param([int]$SCSITargetId)
  If ($SCSITargetId -eq 0) {
    return "sda1"
  }
  $deviceName = "xvd"
  If ($SCSITargetId -gt 25) {
    $deviceName += [char](0x60 + [int]($SCSITargetId / 26))
  }
  $deviceName += [char](0x61 + $SCSITargetId % 26)
  return $deviceName
}

[string[]]$array1 = @()
[string[]]$array2 = @()
[string[]]$array3 = @()
[string[]]$array4 = @()

Get-WmiObject Win32_Volume | Select-Object Name, DeviceID | ForEach-Object {
  $array1 += $_.Name
  $array2 += $_.DeviceID
}

$i = 0
While ($i -ne ($array2.Count)) {
  $array3 += ((Get-Volume -Path $array2[$i] | Get-Partition | Get-Disk).SerialNumber) -replace "_[^ ]*$" -replace "vol", "vol-"
  $array4 += ((Get-Volume -Path $array2[$i] | Get-Partition | Get-Disk).FriendlyName)
  $i ++
}

[array[]]$array = $array1, $array2, $array3, $array4

Try {
  $InstanceId = Get-EC2InstanceMetadata -Category "InstanceId"
  $Region = Get-EC2InstanceMetadata -Category "Region" | Select-Object -ExpandProperty SystemName
}
Catch {
  Write-Host "Could not access the instance Metadata using AWS Get-EC2InstanceMetadata CMDLet.
Verify you have AWSPowershell SDK version '3.1.73.0' or greater installed and Metadata is enabled for this instance." -ForegroundColor Yellow
}
Try {
  $BlockDeviceMappings = (Get-EC2Instance -Region $Region -Instance $InstanceId).Instances.BlockDeviceMappings
  $VirtualDeviceMap = (Get-EC2InstanceMetadata -Category "BlockDeviceMapping").GetEnumerator() | Where-Object { $_.Key -ne "ami" }
}
Catch {
  Write-Host "Could not access the AWS API, therefore, VolumeId is not available.
Verify that you provided your access keys or assigned an IAM role with adequate permissions." -ForegroundColor Yellow
}

Get-disk | ForEach-Object {
  $DriveLetter = $null
  $VolumeName = $null
  $VirtualDevice = $null
  $DeviceName = $_.FriendlyName

  $DiskDrive = $_
  $Disk = $_.Number
  $Partitions = $_.NumberOfPartitions
  $EbsVolumeID = $_.SerialNumber -replace "_[^ ]*$" -replace "vol", "vol-"
  if ($Partitions -ge 1) {
    $PartitionsData = Get-Partition -DiskId $_.Path
    $DriveLetter = $PartitionsData.DriveLetter | Where-object { $_ -notin @("", $null) }
    $VolumeName = (Get-PSDrive | Where-Object { $_.Name -in @($DriveLetter) }).Description | Where-object { $_ -notin @("", $null) }
  }
  If ($DiskDrive.path -like "*PROD_PVDISK*") {
    $BlockDeviceName = Convert-SCSITargetIdToDeviceName((Get-WmiObject -Class Win32_Diskdrive | Where-Object { $_.DeviceID -eq ("\\.\PHYSICALDRIVE" + $DiskDrive.Number) }).SCSITargetId)
    $BlockDeviceName = "/dev/" + $BlockDeviceName
    $BlockDevice = $BlockDeviceMappings | Where-Object { $BlockDeviceName -like "*" + $_.DeviceName + "*" }
    $EbsVolumeID = $BlockDevice.Ebs.VolumeId
    $VirtualDevice = ($VirtualDeviceMap.GetEnumerator() | Where-Object { $_.Value -eq $BlockDeviceName }).Key | Select-Object -First 1
  }
  ElseIf ($DiskDrive.path -like "*PROD_AMAZON_EC2_NVME*") {
    $BlockDeviceName = (Get-EC2InstanceMetadata -Category "BlockDeviceMapping")."ephemeral$((Get-WmiObject -Class Win32_Diskdrive | Where-Object { $_.DeviceID -eq ("\\.\PHYSICALDRIVE" + $DiskDrive.Number) }).SCSIPort - 2)"
    $BlockDevice = $null
    $VirtualDevice = ($VirtualDeviceMap.GetEnumerator() | Where-Object { $_.Value -eq $BlockDeviceName }).Key | Select-Object -First 1
  }
  ElseIf ($DiskDrive.path -like "*PROD_AMAZON*") {
    if ($DriveLetter -match '[^a-zA-Z0-9]') {
      $i = 0
      While ($i -ne ($array3.Count)) {
        if ($array[2][$i] -eq $EbsVolumeID) {
          $DriveLetter = $array[0][$i]
          $DeviceName = $array[3][$i]
        }
        $i ++
      }
    }
    $BlockDevice = ""
    $BlockDeviceName = ($BlockDeviceMappings | Where-Object { $_.ebs.VolumeId -eq $EbsVolumeID }).DeviceName
  }
  ElseIf ($DiskDrive.path -like "*NETAPP*") {
    if ($DriveLetter -match '[^a-zA-Z0-9]') {
      $i = 0
      While ($i -ne ($array3.Count)) {
        if ($array[2][$i] -eq $EbsVolumeID) {
          $DriveLetter = $array[0][$i]
          $DeviceName = $array[3][$i]
        }
        $i ++
      }
    }
    $EbsVolumeID = "FSxN Volume"
    $BlockDevice = ""
    $BlockDeviceName = ($BlockDeviceMappings | Where-Object { $_.ebs.VolumeId -eq $EbsVolumeID }).DeviceName
  }
  Else {
    $BlockDeviceName = $null
    $BlockDevice = $null
  }
  New-Object PSObject -Property @{
    Disk          = $Disk;
    Partitions    = $Partitions;
    DriveLetter   = If ($DriveLetter -eq $null) { "N/A" } Else { $DriveLetter };
    EbsVolumeId   = If ($EbsVolumeID -eq $null) { "N/A" } Else { $EbsVolumeID };
    Device        = If ($BlockDeviceName -eq $null) { "N/A" } Else { $BlockDeviceName };
    VirtualDevice = If ($VirtualDevice -eq $null) { "N/A" } Else { $VirtualDevice };
    VolumeName    = If ($VolumeName -eq $null) { "N/A" } Else { $VolumeName };
    DeviceName    = If ($DeviceName -eq $null) { "N/A" } Else { $DeviceName };
  }
} | Sort-Object Disk | Format-Table -AutoSize -Property Disk, Partitions, DriveLetter, EbsVolumeId, Device, VirtualDevice, DeviceName, VolumeName
```

Führen Sie das Skript wie folgt aus:

```
PS C:\> .\mapping.ps1
```

Es folgt eine Beispielausgabe.

```
Disk  Partitions  DriveLetter   EbsVolumeId             Device      VirtualDevice   DeviceName              VolumeName
----  ----------  -----------   -----------             ------      -------------   ----------              ----------
   0           1            C   vol-0561f1783298efedd   /dev/sda1   N/A             NVMe Amazon Elastic B   N/A
   1           1            D   vol-002a9488504c5e35a   xvdb        N/A             NVMe Amazon Elastic B   N/A
   2           1            E   vol-0de9d46fcc907925d   xvdc        N/A             NVMe Amazon Elastic B   N/A
```

Wenn Sie Ihre Anmeldeinformationen für die Windows-Instance nicht angegeben haben, kann das Skript die EBS-Volume-ID nicht abrufen und N/A in der `EbsVolumeId` Spalte verwenden.

------

## Ordnen Sie Volumes, die keine NVMe Festplatten sind, zu
<a name="windows-volume-mapping"></a>

Der Blockgerät-Treiber für die Instance weist die tatsächlichen Volume-Namen beim Aufspielen der Volumes zu.

**Topics**
+ [Instance-Speicher-Volumes](#instance-store-volume-map)
+ [EBS-Datenträger](#ebs-volume-map)

### Instance-Speicher-Volumes
<a name="instance-store-volume-map"></a>

In der folgenden Tabelle wird beschrieben, wie die Citrix PV- und AWS PV-Treiber Volumes, die keine NVMe Instanzspeicher sind, Windows-Volumes zuordnen. Die Anzahl der verfügbaren Instance-Speicher-Volumes wird von dem jeweiligen Instance-Typ bestimmt. Weitere Informationen finden Sie unter [Volumenlimits für den Instance-Speicher für EC2-Instances](instance-store-volumes.md).


| Ort | Gerätename | 
| --- | --- | 
| Bus Number 0, Target ID 78, LUN 0 | xvdca | 
| Bus Number 0, Target ID 79, LUN 0 | xvdcb | 
| Bus Number 0, Target ID 80, LUN 0 | xvdcc | 
| Bus Number 0, Target ID 81, LUN 0 | xvdcd | 
| Bus Number 0, Target ID 82, LUN 0 | xvdce | 
| Bus Number 0, Target ID 83, LUN 0 | xvdcf | 
| Bus Number 0, Target ID 84, LUN 0 | xvdcg | 
| Bus Number 0, Target ID 85, LUN 0 | xvdch | 
| Bus Number 0, Target ID 86, LUN 0 | xvdci | 
| Bus Number 0, Target ID 87, LUN 0 | xvdcj | 
| Bus Number 0, Target ID 88, LUN 0 | xvdck | 
| Bus Number 0, Target ID 89, LUN 0 | xvdcl | 

### EBS-Datenträger
<a name="ebs-volume-map"></a>

In der folgenden Tabelle wird beschrieben, wie die Citrix PV- und AWS PV-Treiber Nicht-NVMe-EBS-Volumes Windows-Volumes zuordnen.


| Speicherort | Gerätename | 
| --- | --- | 
| Bus Number 0, Target ID 0, LUN 0 | /dev/sda1 | 
| Bus Number 0, Target ID 1, LUN 0 | xvdb | 
| Bus Number 0, Target ID 2, LUN 0 | xvdc | 
| Bus Number 0, Target ID 3, LUN 0 | xvdd | 
| Bus Number 0, Target ID 4, LUN 0 | xvde | 
| Bus Number 0, Target ID 5, LUN 0 | xvdf | 
| Bus Number 0, Target ID 6, LUN 0 | xvdg | 
| Bus Number 0, Target ID 7, LUN 0 | xvdh | 
| Bus Number 0, Target ID 8, LUN 0 | xvdi | 
| Bus Number 0, Target ID 9, LUN 0 | xvdj | 
| Bus Number 0, Target ID 10, LUN 0 | xvdk | 
| Bus Number 0, Target ID 11, LUN 0 | xvdl | 
| Bus Number 0, Target ID 12, LUN 0 | xvdm | 
| Bus Number 0, Target ID 13, LUN 0 | xvdn | 
| Bus Number 0, Target ID 14, LUN 0 | xvdo | 
| Bus Number 0, Target ID 15, LUN 0 | xvdp | 
| Bus Number 0, Target ID 16, LUN 0 | xvdq | 
| Bus Number 0, Target ID 17, LUN 0 | xvdr | 
| Bus Number 0, Target ID 18, LUN 0 | xvds | 
| Bus Number 0, Target ID 19, LUN 0 | xvdt | 
| Bus Number 0, Target ID 20, LUN 0 | xvdu | 
| Bus Number 0, Target ID 21, LUN 0 | xvdv | 
| Bus Number 0, Target ID 22, LUN 0 | xvdw | 
| Bus Number 0, Target ID 23, LUN 0 | xvdx | 
| Bus Number 0, Target ID 24, LUN 0 | xvdy | 
| Bus Number 0, Target ID 25, LUN 0 | xvdz | 