New-CMTSStepRestoreUserState

Create a Restore User State step, which you can add to a task sequence.

Syntax

New-CMTSStepRestoreUserState
   [-ConfigFile <String[]>]
   [-ContinueOnRestore <Boolean>]
   [-ModeOption <ModeType>]
   -Package <IResultObject>
   [-Password <SecureString>]
   [-RestoreLocalAccount <Boolean>]
   [-VerboseLogging <Boolean>]
   [-Condition <IResultObject[]>]
   [-ContinueOnError]
   [-Description <String>]
   [-Disable]
   -Name <String>
   [-DisableWildcardHandling]
   [-ForceWildcardHandling]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

This cmdlet creates a new Restore User State step object. Then use the Add-CMTaskSequenceStep cmdlet to add the step to a task sequence. For more information on this step, see About task sequence steps: Restore User State.

Note

Run Configuration Manager cmdlets from the Configuration Manager site drive, for example PS XYZ:\>. For more information, see getting started.

Examples

Example 1

This example first gets a package object for the User State Migration Tool (USMT). The next line creates an object for the Restore User State step, which uses that USMT package and configures several step settings. It then gets a task sequence object, and adds this new step to the task sequence at index 11.

$pkgUsmt = Get-CMPackage -Name "User State Migration Tool for Windows" -Fast

$step = New-CMTSStepRestoreUserState -Name "Restore User State" -Package $pkgUsmt -ModeOption Standard -VerboseLogging $true -ContinueOnRestore $true -RestoreLocalAccount $false

$tsNameOsd = "Default OS deployment"
$tsOsd = Get-CMTaskSequence -Name $tsNameOsd -Fast

$tsOsd | Add-CMTaskSequenceStep -Step $step -InsertStepStartIndex 11

Parameters

-Condition

Specify a condition object to use with this step. To get this object, use one of the task sequence condition cmdlets. For example, Get-CMTSStepConditionVariable.

Type:IResultObject[]
Aliases:Conditions
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ConfigFile

When you specify -ModeOption Customize to customize how user profiles are restored, use this parameter to specify the file names of custom XML configuration files. These files need to be in the USMT package.

Type:String[]
Aliases:ConfigFiles
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Prompts you for confirmation before running the cmdlet.

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

-ContinueOnError

Add this parameter to enable the step option Continue on error. When you enable this option, if the step fails, the task sequence continues.

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

-ContinueOnRestore

Set this parameter to $true to continue restoring user state and settings even if USMT is unable to restore some files.

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

-Description

Specify an optional description for this task sequence step.

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

-Disable

Add this parameter to disable this task sequence step.

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

-DisableWildcardHandling

This parameter treats wildcard characters as literal character values. You can't combine it with ForceWildcardHandling.

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

-ForceWildcardHandling

This parameter processes wildcard characters and may lead to unexpected behavior (not recommended). You can't combine it with DisableWildcardHandling.

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

-ModeOption

There are two modes in which USMT can operate:

  • Standard: Restore all captured user profiles with standard options. This option is the default.

  • Customize: Customize how user profiles are restored. If you specify this option, use the ConfigFile parameter to specify the custom XML configuration files.

Type:ModeType
Accepted values:Standard, Customize
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Name

Specify a name for this step to identify it in the task sequence.

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

-Package

Specify an object for the USMT package. To get this object, use the Get-CMPackage cmdlet.

Type:IResultObject
Aliases:UserStateMigrationToolPackage
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Password

If you enable the RestoreLocalAccount parameter, use this parameter to assign a new password to the restored local user accounts. USMT can't migrate the original passwords. Specify a secure string for the local account password.

Type:SecureString
Aliases:NewPasswordForLocalAccount
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RestoreLocalAccount

Set this parameter to $true to restore local computer user profiles. These profiles aren't for domain users. USMT can't migrate the original passwords. To assign new passwords to the restored local user accounts, use the Password parameter.

Type:Boolean
Aliases:RestoreLocalComputerUserProfile
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-VerboseLogging

Set this parameter to $true to enable USMT verbose logging.

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

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet doesn't run.

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

Inputs

None

Outputs

IResultObject

Notes

For more information on this return object and its properties, see SMS_TaskSequence_RestoreUserStateAction server WMI class.