How To Fix SCCM Task Sequence Error 0x80070490

Jason Barrett Jason Barrett | | Task Sequence

Today when re-imaging a HP laptop the task sequence failed and displayed the error 0x80070490. The error 0x80070490 means can not find the local storage device.

Looking in the smsts.log I saw the root cause was related to “Unable to find a volume that is suitable for staging the boot image” This is usually caused by one of the following issues

  • C:\ Volume is on a GPT disk
  • Storage Driver Missing From Boot Image
  • BIOS controller set to AHCI

The most common cause is because the local disk needs reformatting, Below I will show you how to do this manually and also how to add it in to the task sequence to do automatically every time the task sequence runs.

Review SMSTS.log

The first thing we need to do is review the smsts.log file to find out what the root cause is for the error “0x80070490”

To review the smsts.log file do the following

  1. Start the sccm task sequence on the machine that is getting the error
  2. Press F8 to bring up the command prompt
    command prompt in task sequence
  3. Run the task sequence until it fails, the task sequence will not exit because we have opened the command prompt
    SCCM Task Sequence Error 0x80070490
  4. In the command prompt type in notepad and hit enter
    open notepad in winpe
  5. In notepad hit file > open > select type of files (All Files)
  6. go to X:\Windows\Temp\SMSLog\
  7. Open SMSTS.log
    smsts log in winpe
  8. Take a look at the last few lines as this will highlight what is causing the error
    smsts log with error
  9. Above it is clear the issue is being caused because the task sequence can not find a fixed disk

You might also see the below errors in the smsts.log file

  • Volume D: is not a fixed disk
  • Volume X:\ is not a fixed disk
  • Volume C: is on a GPT disk, but the system is MBR
  • Unable to find a volume that is suitable for staging the boot image. Element not found. (Error: 80070490; Source: Windows)
  • Unable to find a partition on the system disk that can be set as active
  • Failed to prepare the system partition for staging, Element not found. (Error 80070490; Source Windows)
  • Failed to validate for boot image staging
  • StageBootImage() failed 0x80070490)
  • Failed to stage WinPE. Code(0x80070490)

Now we know what is causing the error we can work on a solution.

How To Fix SCCM Task Sequence Error 0x80070490

There are many fixes for the task sequence error 0x80070490, the most likely fix is re-formatting the local storage drive which I will show you how to do first.

WARNING : This step will wipe all data from the local storage device.

1. Format The Local Storage Device With DiskPart

To format the local storage device manually follow these steps

  1. Start the sccm task sequence on the machine that is getting the error
  2. Press F8 to bring up the command prompt
    command prompt in task sequence
  3. Before you start the task sequence type in the following to format your local storage drives
  4. Diskpart (This will load the diskpart application)
    running diskpart
  5. List disk (we can see below my disk id is 0, if no disks are listed here then you need to inject the storage driver in to the boot image which I will cover below)
    diskpart list disk
  6. Select disk 0  (To select the local storage disk)
    select disk 0
  7. Clean (Formats the disk)
    diskpart clean
  8. Create partition primary (Creates the partition)
    Create partition primary
  9. Select partition 1  (Selects the partition)
    Select partition 1
  10. Format quick fs=NTFS (Formats drive with NTFS filesystem)
    Format quick fs NTFS
  11. Assign letter C (Assigns the drive to letter C)
    Assign letter C
  12. Exit
  13. Now restart the machine and try to run the task sequence again

2. Format Disks In Task Sequence

In the previous step we used Diskpart to manually delete, create and then format the local storage device.

What we can do is automate this task and put it in the task sequence as a step that always gets run.  This way we know we will not get the error 0x80070490.

I add this step in to all my task sequences as in my experiences it helps to reduce task sequence failures.

To add disk part in to your task sequence do the following steps.

  1. First we need to create a package in SCCM
  2. Create a folder on your SCCM server where the package files will be put (On my server I will use D:\SCCM Packages\Packages\Diskpart)
  3. Create a diskpart.txt file
  4. Put the following lines in to the file
    Diskpart
    Select disk 0
    Clean
    Create partition primary
    Select partition 1
    Format quick fs=NTFS
    Assign letter C
    Exit
  5. diskpart task sequence
  6. Save the file
  7. Open the SCCM console
  8. go to \Software Library\Overview\Application Management\Packages
  9. Right click on packages, Select create package
    create package
  10. Enter a name for the package
  11. Click next
    Specify information about this package
  12. Select “Do not create a program”
  13. Click next
    choose the program type that you want to create
  14. Click next
  15. Click close
  16. Right click on the package we just created and select properties
    edit package
  17. Click the data source tab
  18. Click set
  19. Select Network path UNC name
  20. Enter the UNC path to the folder
  21. Click ok
    package data source
  22. Click ok
  23. Right click on the package and select distribute package and follow the prompts
  24. In the SCCM console go to \Software Library\Overview\Operating Systems\Task Sequences
  25. Edit the task sequence you want to put the diskpart step in to
  26. Click add > General > Run Command Line
    add task sequence step
  27. Name the step something like “Run Diskpart”
  28. Move it to run just before “Partition Disk 0 – BIOS”
  29. Tick the Package box, select browse and select the package we created
  30. In the command line enter “cmd.exe /c diskpart.exe /s diskpart.txt”
    run command line diskpart
  31. I recommend you click on the options tab and tick the box “Continue on error”
  32. Click ok to exit the task sequence
  33. Now try to build another machine with the task sequence
  34. You should now see the task sequence run the diskpart step we just added
    sccm task sequence running diskpart

3. BIOS Storage Controller set to AHCI

For some machines to build correctly the controller in the BIOS needs to be set to AHCI, this is because if UEFI is set then the task sequence will run the step “Partition Disk 0 UEFI” which will format local storage incorrectly.

partition disk 0 AHCI bios

To set AHCI in your bios follow these steps

  1. Turn on your machine and go in to the BIOS
  2. Select Storage > Storage Options
  3. Make sure Sata Emulation is set to “AHCI Mode”
    bios settings storage options
  4. Save the settings
  5. Restart the SCCM task sequence

4. Inject Storage Driver In To SCCM Boot Image

If all other steps have failed then we need to add the storage driver in to the boot image.

The first thing we are going to do is download the latest WinPE drivers and inject them in to the boot image, and if that doesnt work we will then have to inject the specific driver in to the boot image.

Download the latest Windows PE drivers for your hardware model

Then perform these steps

  1. Insert the downloaded drivers in to SCCM. Take a look at this article I wrote on adding drivers to SCCM
  2. Open the SCCM Console
  3. Go to \Software Library\Overview\Operating Systems\Boot Images
  4. Right click on “Boot image (x64)” and select properties
    sccm boot image properties
  5. Click the drivers tab
  6. Click the sun icon
    boot image 64 drivers tab
  7. Select the WinPE folder
  8. Click select all
  9. Click ok
    select drivers for winpe
  10. Click yes to confirm adding drivers
    confirm adding drivers
  11. Click ok
  12. Click yes to distribute the boot image with the new drivers
    distribute drivers
  13. On the update distribution points with this boot image click next
    update distribution points with this boot image
  14. Click next, this step can take a few minutes
  15. Click close
  16. Try the task sequence again
  17. If the task sequence fails again with the error 0x80070490 download the drivers for that specific hardware model
  18. Add the drivers to SCCM
  19. Then repeat steps 2-16 adding the hardware specific driver

Conclusion

You will see the error 0x80070490 whilst running a SCCM task sequence and the task sequence will fail on the format step because it can not locate a local storage device or the partitions on the storage device are formatted in a way the task sequence can not process.

In this guide I have gone through three methods I used to wipe the drive and format in a way that the task sequence can handle and not fail at the formatting step.

The error can also be caused by a storage driver issue which I have shown how to add the driver in to the boot image.

If you have any further fixes I have not included in this article please let me know about them by posting in a comment below or in one of my online communities.

Leave a Comment