In our company we implemented an MDT infrastructure to deploy Windows 10 to notebooks. Most of our phyiscal device have more than one hard disk installed. Usually there are two disks. One SSD disk and a normal HDD. The target is to install the Operating System to the SSD (if there is one installed).
Usually the first disk loaded disk in Windows PW gets ID 0, the second loaded Disk gets ID 1 and so on. There are notebook models, where the SSD is does not get Disk ID 0. In our task sequence the we specified to install the operating system to the Disk with the ID 0. Of course I could change that for these specific notebook models, but that is not the target.
- Added the following featuers to Windows PE: DISM Cmdlets, Enhanced Storage, .NET Framework, winpe-platformid, Windows Powershell, Storage Management Cmdlets
- WMI Filtering and Powershell Filteroptions (two examples)
Example 1 - Get-WmiObject -Class Win32_DiskDrive
For this command there is no possibility to see if the disk is an SSD or not
Example 2 - Get-WmiObject -Class MSFT_PhysicalDisk -Namespace “root\microsoft\windows\storage”
With this command I can filter by media type and see if it is an SSD or an HDD, but this command is not available during Windows PE. After the a successful OS installation it is possible to execute that command in Powershell.
References that I tried:
Now the main question :)
Is there a way to install the operating system to an SSD drive if there are multiple disks installed and even the SSD disk has the ID 0 or 1? Of course I can do several task sequences for these specific models, but there should be better way. Maybe there is a way with a Custom variable during the task sequence?
Thanks in advance for your help