How to troubleshoot an OSD to a raw disk #OSD troubleshooting / workaround

I was implementing a SCCM 2012 R2 environment at a customer. The customer bought new Lenovo Desktops with a SSD 128GB disks. The disks were not preconfigured. The disks were new and not been used by the vendor. So, the disks were raw. Raw disk can be a problem for the OSD. I had a problem with WinPE that doesn’t recognized the SSD disk. Only the card reader and the DVD drive. This means that the card reader(removable disk) gets automatically the C letter and the DVD drive the D letter.

The workaround for this was trying formatting, partitioning and assigning the SSD before starting the deployment task sequence in WinPE. This means that the SSD has been written, and not raw anymore, before starting the task sequence. So, the solution/workaround for this problem is:

In the properties of the boot image you can use a prestart command. At the launch WinPE will run this command automatically. In this command you can set networksettings or formatting the disk before its launching the task sequence, etc. I have made a txt file within the commands for Diskpart. The commands for Diskpart are:

select disk 0

create partition primary size=300

format quick fs=ntfs label=”TEMP”

assign letter=”C”

Diskpart Scripts and Examples: http://technet.microsoft.com/en-us/library/dn614984.aspx

Source directory is the directory where SCCM can find the txt file for Diskpart.

If you updated your boot image, you can try this workaround for the OSD. Maybe you have to configure some another settings like the correct disk number. Maybe you disk has number 2. But this workaround should work as a prestart command in WinPE. After running this command successfully, the task sequence or WinPE should recognized the SSD as a C: drive..

Good luck J

Advertisements

15 thoughts on “How to troubleshoot an OSD to a raw disk #OSD troubleshooting / workaround

  1. Good morning Albert, This document helps me to avoid having my techs run a diskpart, if the HD’s are raw. Thank you for that!!

    I was wondering, do you have documentation on how to handle multiple HD’s in a system, & have SCCM detect more than one, & format each one??

    -Larry

    1. Hello Larry,

      Thanks for your comment.
      I don’t have any documentation how to handle multiple HDDs in a system. SCCM will not detect the hdds automatically. You have to set this in the Task Sequence. If you edit the Format and Partition step you have also the option to change the “Disk number”. De first HDD is number 0 and the second will be 1. That’s the way to formatting multiple HDDs via SCCM. So for each HDD you have to add a new step for formatting and partitioning the HDD. Then you have to option to filter on modeltype with WMI, if you are using different type of setups. This is needed if you are using different configs. As example; HP has 2 HDDs and Dell has 4 HDDs. You have 1 Task Sequence and this one got 4 Formatting and Partitioning steps (for each HDD a Format and Partition step). You are going to deploy an OS on the HP. Because HP has got 2 HDDS you will get an error if SCCM is trying to find the 3rd disk for format and partition. With WMI SCCM will skip these steps. You have to set a WMI query on step 3 and 4. These steps are specially for Dell machines with 4 HDDs. Filtering is also possible with groups.

      Good luck!
      Albert

    1. Yes, that’s is possible, but not for a RAW disk. You have to format the new disk before starting de Task Sequence, otherwise you will get an error. Task sequence will check the disks before starting the tasksteps. Good luck 🙂

      1. Ok but i would like to make secure my boot PXE if an user boot on the Network, he could do a dikspart on this machine… With one Click he can do this.

      2. Ok, are you using support for unknown devices? Maybe you have to use password before starting with deployment. Or don’t clear the PXE flag till the computer has to refresh again.

      3. That’s very easy. Via your SCCM console go to Administration -> Site Configuration -> Servers and Site System Roles. Select your distribution point and dubble click on Distribution point below. You will get the properties of your DP. Then go to the tab PXE and enable “Require a password when computers use PXE”. Good luck!

    1. Hm.. good question. I think that is not possible. If you enable password then you will get a wizard screen. There you have to enter the password to continue the deployment.

  2. I got task sequence error when enabling prestart command. Do I need to write access for source directory?

    1. That is not needed, but I need more information about the error. What is the error? Please check the log SMSTS.log(X:\Windows\Temp\) for the error.

      1. Disregard. I found out after checking smsts.log that my hard drive got encrypted with bitlocker and task sequence can’t be downloaded to hard drive.

      2. This solution works only on a hard drive which is never been used before, so called raw disk. So, what you have is a used disk and is encrypted by Bitlocker. Then you have to work with task sequence steps and not with prestart command. As an alternative on the task sequence(which is more difficult), you can use the prestart command for formatting and partitioning the encrypted hard disk. If so, you have to customize the diskpart script, based on a bitlocker disk.

        To download the task sequence before starting the task sequence you have to make an advertisement based on the SCCM client only, not PXE nor bootmedia. This will download the content of your task sequence on a encrypted hard disk. After that the system will reboot and task sequence will handle the Bitlocker in WinPE.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s