Bagikan melalui


Remove-SCVirtualDiskDrive

Menghapus drive disk virtual dari komputer virtual atau dari templat komputer virtual.

Sintaks

Remove-SCVirtualDiskDrive
      [-VirtualDiskDrive] <VirtualDiskDrive>
      [-SkipDeleteVHD]
      [-JobGroup <Guid>]
      [-Force]
      [-RunAsynchronously]
      [-PROTipID <Guid>]
      [-JobVariable <String>]
      [-WhatIf]
      [-Confirm]
      [-OnBehalfOfUser <String>]
      [-OnBehalfOfUserRole <UserRole>]
      [<CommonParameters>]

Deskripsi

Cmdlet Remove-SCVirtualDiskDrive menghapus objek drive disk virtual dari komputer virtual atau dari templat komputer virtual di lingkungan Virtual Machine Manager (VMM).

Contoh

Contoh 1: Menghapus drive disk virtual dari komputer virtual

PS C:\> $VM = Get-SCVirtualMachine | Where-Object { $_.VMHost.Name -Eq "VMHost01.Contoso.com" -And $_.Name -Eq "VM01" }
PS C:\> $VirtDiskDrive = @(Get-SCVirtualDiskDrive -VM $VM)
PS C:\> If($VirtDiskDrive.Count -Gt 1){Remove-SCVirtualDiskDrive -VirtualDiskDrive $VirtDiskDrive[1]}

Perintah pertama mendapatkan objek komputer virtual bernama VM01 yang disebarkan di VMHost01 dengan menggunakan cmdlet Get-SCVirtualMachine . Perintah menyimpan objek tersebut dalam variabel $VM.

Perintah kedua mendapatkan semua objek drive disk virtual di VM01, lalu menyimpan objek yang diambil di $VirtDiskDrive. Menggunakan simbol @ dan tanda kurung memastikan bahwa perintah menyimpan hasil dalam array, meskipun perintah mengembalikan satu objek atau nilai $Null.

Perintah terakhir mengembalikan jumlah drive disk virtual yang terkait dengan komputer virtual dan kemudian, jika ada lebih dari satu, perintah menghapus drive disk virtual kedua, yang ditunjuk oleh [1], dari komputer virtual.

Contoh 2: Menghapus semua disk pass-through yang terpasang pada komputer virtual

PS C:\> $VM = Get-SCVirtualMachine | Where-Object {$_.Name -Eq "VM02"}
PS C:\> $VirtDiskDrives = @(Get-SCVirtualDiskDrive -VM $VM | Where-Object {$_.IsVHD -Eq $False})
PS C:\> If($VirtDiskDrives.Count -Gt 0){ForEach($VirtDiskDrive in $VirtDiskDrives){Remove-SCVirtualDiskDrive -Force -VirtualDiskDrive $VirtDiskDrive}}

Perintah pertama mendapatkan objek komputer virtual bernama VM02, lalu menyimpan objek tersebut dalam variabel $VM.

Perintah kedua mendapatkan semua objek drive disk virtual yang melekat pada VM02 yang bukan hard disk virtual. Perintah hanya mendapatkan objek yang mewakili disk pass-through. Perintah menyimpan objek disk pass-through dalam array objek $VDDs.

Perintah terakhir menggunakan pernyataan If untuk menentukan apakah setidaknya ada satu drive disk virtual pass-through. Jika hasilnya adalah satu atau beberapa, perintah kemudian menggunakan pernyataan ForEach untuk menghapus setiap drive disk virtual dari array objek. Untuk informasi selengkapnya, ketik Get-Help about_If dan Get-Help about_Foreach.

Perintah terakhir menentukan parameter Paksa . Oleh karena itu, perintah menghapus setiap drive disk virtual dari komputer virtualnya meskipun objek VMM lainnya bergantung pada drive disk virtual tersebut.

Contoh 3: Menghapus drive disk virtual berdasarkan nama

PS C:\> $VM = @(Get-SCVirtualMachine | Where-Object {$_.Name -Match "WebSrvLOB"})
PS C:\> ForEach-Object ($VM in $VMs){$VirtDiskDrives = Get-SCVirtualDiskDrive -VM $VM 
PS C:\> ForEach-Object ($VirtDiskDrive in $VirtDiskDrives){If($VirtDiskDrive.Name -Match "LOBData"){Remove-SCVirtualDiskDrive -VirtualDiskDrive $VirtDiskDrive}}}

Perintah pertama mendapatkan semua objek komputer virtual yang namanya cocok dengan string WebSrvLOB, lalu menyimpan objek tersebut dalam array $VM.

Dua perintah berikutnya menggunakan cmdlet ForEach-Object untuk melakukan iterasi melalui komputer virtual yang disimpan di $VM untuk mendapatkan semua objek drive disk virtual dari setiap komputer virtual. Perintah kedua menyimpan objek drive disk virtual dalam array objek $VirtDiskDrives.

Perintah ketiga menggunakan perulangan ForEach kedua untuk memilih semua objek drive disk virtual yang namanya berisi string LOBData dari array $VirtDiskDrives dan meneruskan objek ini ke cmdlet saat ini. Cmdlet ini menghapus objek dari VMM.

Parameter

-Confirm

Meminta Anda mengonfirmasi sebelum menjalankan cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

Memaksa operasi selesai.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-JobGroup

Menentukan pengidentifikasi untuk serangkaian perintah yang berjalan sebagai set tepat sebelum perintah akhir yang menyertakan pengidentifikasi grup pekerjaan yang sama berjalan.

Type:Guid
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-JobVariable

Menentukan variabel di mana kemajuan pekerjaan dilacak dan disimpan.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OnBehalfOfUser

Menentukan nama pengguna. Cmdlet ini beroperasi atas nama pengguna yang ditentukan parameter ini.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-OnBehalfOfUserRole

Menentukan peran pengguna. Untuk mendapatkan peran pengguna, gunakan cmdlet Get-SCUserRole . Cmdlet ini beroperasi atas nama peran pengguna yang ditentukan parameter ini.

Type:UserRole
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-PROTipID

Menentukan ID tip Performa dan Pengoptimalan Sumber Daya (pro tip) yang memicu tindakan ini. Parameter ini memungkinkan Anda mengaudit tips PRO.

Type:Guid
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RunAsynchronously

Menunjukkan bahwa pekerjaan berjalan secara asinkron sehingga kontrol segera kembali ke shell perintah.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SkipDeleteVHD

Menunjukkan bahwa cmdlet ini bukan file VHD saat menghapus drive disk virtual.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-VirtualDiskDrive

Menentukan objek drive disk virtual. Anda dapat melampirkan hard disk virtual atau disk pass-through ke objek drive disk virtual.

Type:VirtualDiskDrive
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-WhatIf

Menunjukkan apa yang akan terjadi jika cmdlet berjalan. Cmdlet tidak dijalankan.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Catatan

  • Memerlukan objek drive disk virtual VMM, yang dapat diambil dengan menggunakan cmdlet Get-SCVirtualDiskDrive .