ConfigMgr Task Sequence OSD Multiple Physical Drives | SCCM

In this post, we learn about ConfigMgr Task Sequence OSD Multiple Physical Drives. Let’s try to understand how can we use conditions in the Task sequence to install operating systems via SCCM Task Sequence on a machine having dual drives.

The below articles will give you an idea about the scenario which I have faced in installing a windows OS on a machine having two physical Hard drives. The conditions can be customized according to the environment and requirements.

Introduction

We are taking an example of a system with a dual drive (or more) configuration, an NVMe drive, and either a SATA mechanical disk or SATA SSD. In some cases, the SATA disk may be enumerated as Disk 0 and the NVMe drive as Disk 1 or vice versa. 

This can be confirmed by booting to WinPE, executing the DiskPart utility, and selecting disk 0 and/or disk 1, followed by the command detail disk.  Note the type of disk displayed, which will either be SATA or NVMe.

Patch My PC

In a default standard SCCM OSD task sequence, disk 0 will be formatted and partitioned depending on the partition scheme assigned (MBR or GPT). As newer models are getting released the SATA mechanical disks or even SATA SSD disks are getting replaced with NVMe disks.

Info on Dual Drives

To check the drives on your machine use the below command in PowerShell.

wmic diskdrive get index,model
ConfigMgr Task Sequence OSD Multiple Physical Drives | SCCM
ConfigMgr Task Sequence OSD Multiple Physical Drives | SCCM

You can also check the information on the dual drive using disk management, and open diskmgmt.msc right-click on the disk for which you want information as in my case I want information on disk 1, you can get info in the General tab.

ConfigMgr Task Sequence OSD Multiple Physical Drives | SCCM
ConfigMgr Task Sequence OSD Multiple Physical Drives | SCCM

Similarly, if you have a dual drive one with NVMe and another with SATA mechanical or SATA SDD it will show accordingly.

Adaptiva

Solution

Ideally, the Windows OS should be installed on the NVMe disk for better performance ( Why it should be installed on the NVMe disk is a different topic ), there are many ways to achieve it you can add dynamic variables inside the OSD task sequence, you can use scripts to achieve it.

If you are aware of your environment and know the hardware which is being used with their configurations then it can be simply achieved by a WMI condition. Below are the steps which you can add to your task sequence to achieve it:

I created two groups with Format and Partition conditions as below, I am aware of the models which are procured in my environment, but to be on detect if the NVMe disk is at 0 or 1 the two groups are created

ConfigMgr Task Sequence OSD Multiple Physical Drives | SCCM
ConfigMgr Task Sequence OSD Multiple Physical Drives | SCCM

The first group will format and partition if NVMe is at disk 0 and make it an OS disk and the other disk as a data disk, in the second group if NVMe is found at disk 1 that will be configured as an OS disk, and the other one as data disk.

You can add two conditions first one on getting info on disk drive details and the second one on the models on which you want to perform this step.

ConfigMgr Task Sequence OSD Multiple Physical Drives | SCCM
ConfigMgr Task Sequence OSD Multiple Physical Drives | SCCM
ConfigMgr Task Sequence OSD Multiple Physical Drives | SCCM
ConfigMgr Task Sequence OSD Multiple Physical Drives | SCCM

WMI conditions

Let’s check the WMI conditions to check the disk types and avoid issues with SCCM task Sequence.

Select * from Win32_DiskDrive where Model like "%NVMe%" and Index=0
Select * from Win32_ComputerSystem where Model like "%Model%"

Verification

You can go through the smsts.log during the Image build to find out if the conditions which you have configured are meeting your requirement.

  • Location of smsts.log before the hard drive is formatted
x:\windows\temp\smstslog\smsts.log

The location of smsts.log after the hard drive is formatted and partitioned.

x:\smstslog\smsts.log
ConfigMgr Task Sequence OSD Multiple Physical Drives | SCCM
ConfigMgr Task Sequence OSD Multiple Physical Drives | SCCM

Let’s look into the results now.

Result

You can customize the condition according to your environment and requirement.

ConfigMgr Task Sequence OSD Multiple Physical Drives | SCCM 1
ConfigMgr Task Sequence OSD Multiple Physical Drives | SCCM

References

Author

Anoop is Microsoft MVP! He is a Solution Architect in enterprise client management with more than 20 years of experience (calculation done in 2021) in IT. He is a blogger, Speaker, and Local User Group HTMD Community leader. His main focus is on Device Management technologies like SCCM 2012, Current Branch, and Intune. E writes about ConfigMgr, Windows 11, Windows 10, Azure AD, Microsoft Intune, Windows 365, AVD, etc…

5 thoughts on “ConfigMgr Task Sequence OSD Multiple Physical Drives | SCCM”

  1. Great article thanks!
    We have a new model that has 2 x identical NVMe drive.
    Can you suggest how we might be able to format and partition 1 drive for OS and the other simply for Data.
    And then how to apply the OS to the correct disk/partition.
    I have been struggling with it all day 🙂

    Reply
    • Hello,
      If you have two identical NVMe drive then the format and partition step is straight forward, in this scenario you dont have you give information of the disk drive as 0 or 1 because both are identical.You can create a Group in TS with providing condition of model, in that group create first step for Format and Partition disk 0 and assign it as OS disk and in same group mention format and partition step again and assign disk 1 as Data disk.

      Reply
  2. Hi,

    I have two NVMe disks in a laptop. One is 1TB, the other one which we manually add ist 2TB. We want TS to install Windows on the smaller 1TB NVMe, but naturally TS takes the bigger disk always.
    How can I make the TS to install Windows on the smaller of the two NVMe disks?

    Thank you

    Reply
    • Hi in that case you have to use a powershell script which will detect the physical drives and assign the smaller nvme disk as disk 0 dynamically.
      There is a good article on this from lenovo you can check that and change according to your infra.

      Reply
  3. Has anyone worked on a Dell Latitude 3140 with WD SDINFD04-128G eMMC storage? Instead of NVMe, SSD does anyone know how to do this on the above-said storage drive?

    Reply

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.