Translate

Showing posts with label SCCM. Show all posts
Showing posts with label SCCM. Show all posts

Monday, September 25, 2023

SCCM Error Code Bible

SCCM Error Codes – Descriptions and Quick Fixes

Decimal CodeHex CodeDescriptionFix
20x00000002The system cannot find the file specified [prajwaldesai.com], [byskov.com]. This typically indicates a required file or package is missing.- Obtain a fresh copy of the missing installation files (e.g. re-download client setup files from the site server) [prajwaldesai.com].
- Ensure all required content is present in the expected locations before retrying installation.
50x00000005Access is denied [prajwaldesai.com]. The installation process lacks the permissions needed to complete an action.- Run the SCCM installer with administrative privileges on the client (ensure the SCCM service account has local admin rights) [prajwaldesai.com], [mynexttech.com].
- If pushing from the server, verify the client push account has admin access on the target machine.
520x00000034A duplicate name exists on the network [prajwaldesai.com]. (The computer’s name conflicts with another on the network, often a DNS issue.)- Remove or rename any duplicate hostnames in DNS that match the client’s name [prajwaldesai.com], [mynexttech.com].
- Ensure the computer’s name is unique in the domain before retrying deployment.
530x00000035The network path was not found (failed to connect to admin$) [prajwaldesai.com]. This can happen if the admin share is inaccessible (e.g. firewall or service not running).- Enable File and Printer Sharing through the Windows Firewall exceptions on the client [prajwaldesai.com].
- Verify the Server service (for admin$ share) is running and the device is reachable on the network.
640x00000040The specified network name is no longer available [prajwaldesai.com]. (Network connection to the resource was lost during the operation.)- Check network connectivity to the target resource (share or server) [prajwaldesai.com].
- Ensure the resource (e.g. a file share or DP) is still online and accessible, and that no network drop occurred.
670x00000043The network name cannot be found [prajwaldesai.com]. (Name resolution failure or required services are not running on client.)- Verify the client’s hostname can be resolved via DNS [prajwaldesai.com] (update DNS records if needed).
- Ensure necessary services like Remote Registry and File/Printer Sharing are enabled on the client [prajwaldesai.com].
1120x00000070Not enough disk space [prajwaldesai.com]. The target machine does not have sufficient free space for the operation.- Free up disk space on the target machine (SCCM client needs ~100–500 MB for installation) [prajwaldesai.com].
- Clear temporary files or expand the disk volume before retrying the deployment.
10530x0000041DThe service did not respond to the start or control request in a timely fashion [prajwaldesai.com]. (A Windows service needed by SCCM timed out starting.)- Restart the service related to the SCCM client (e.g. ccmexec or ccmsetup) on the client machine [mynexttech.com].
- Check that all dependent services are running and increase the service timeout if persistent.
12030x000004B3The network path was typed incorrectly or does not exist (network provider not available) [prajwaldesai.com]. In practice, this means the client couldn’t find the network location.- Verify the network path in the deployment is correct and reachable by the client [prajwaldesai.com].
- Make sure the client’s network configuration (DNS, firewall) allows access to that path [mynexttech.com].
13960x00000574Logon Failure: The target account name is incorrect [prajwaldesai.com]. Often caused by a mismatch between machine account and AD (e.g. duplicate SPN or old computer object).- Check Active Directory/DNS for a duplicate or stale computer account for the client; remove any duplicates [prajwaldesai.com].
- If the machine’s domain trust is broken, reset the computer account or rejoin it to the domain [mynexttech.com].
16030x000006431603 is a general Windows Installer fatal error (installation failed) [mynexttech.com]. In SCCM client setup logs, it often appears when the CCMExec service couldn’t be stopped [prajwaldesai.com].- Reboot the target machine, then retry the installation (this ensures no SCCM processes are stuck) [mynexttech.com].
- Check MSI logs (ccmsetup.log or client.msi.log) for specific errors, and address any MSI-related issue (e.g., remove previous client remnants) before reinstalling.
17890x000006FDThe trust relationship between this workstation and the primary domain failed (machine account trust broken) [mynexttech.com].- Rejoin the computer to the domain to re-establish trust [mynexttech.com].
- Ensure the system’s clock is in sync with the domain and that the domain controller is reachable.
120020x00002EE2The request timed out while accessing an HTTP resource (WININET error 12002) – for example, an HTTP upload or download timed out [mynexttech.com]. In SCCM, this might occur during content download via BITS.- Check network connectivity for HTTP/HTTPS: ensure the client can reach the SCCM distribution point and that firewall ports (80/443) are open [mynexttech.com].
- If using a proxy or slow link, adjust BITS settings or retry when network conditions improve.
21479424130x8007000DA file needed by Windows Update is corrupted or missing [sccmgeekbl…dpress.com]. This error commonly causes Windows updates (or upgrade task sequences) to fail.- Repair the Windows Update components: run System File Checker (SFC) and DISM to fix corrupted system files [learn.microsoft.com].
- Reset Windows Update (clear SoftwareDistribution cache) and then re-download the update [learn.microsoft.com].
21475000370x80004005Unspecified error (E_FAIL) – a generic failure with no specific message [learn.microsoft.com]. In SCCM logs, 0x80004005 appears when an operation fails without a detailed error (it can indicate anything from network issues to access denied, depending on context).- General troubleshooting: check SCCM logs (e.g. SMSTS.log, AppEnforce.log) to find the underlying error message since 0x80004005 itself is generic [nextofwindows.com].
- Verify there are no obvious issues like firewall blocks, misconfigured client settings, or permission problems that could cause a generic failure [nextofwindows.com], [nextofwindows.com].
21479435170x8007045DAn I/O device error occurred (e.g. disk I/O failure). In SCCM context, this often shows up when the client’s WMI repository is inaccessible or can’t be written (WMI namespace creation failed) [mynexttech.com].- Rebuild the WMI repository on the client: remove or rename the existing repository (or the CCM namespace) and let it regenerate [mynexttech.com].
- Check the disk health on the client (bad sectors or disk errors can cause 0x8007045D) and ensure the SYSTEM account can write to WMI.
21479441220x800706BAThe RPC server is unavailable [prajwaldesai.com]. The client could not connect via RPC (for example, WMI calls to a remote machine failed).- Make sure the Windows Firewall isn’t blocking RPC – open ports like TCP 135 and enable the “Remote Administration” exception [prajwaldesai.com].
- Verify the WMI service is running on the target and not corrupted (reinstall/repair WMI if RPC calls still fail) [mynexttech.com].
21477499470x8004103BWMI generic failure: WMI namespace creation failed [prajwaldesai.com] (often due to insufficient resources on the client, e.g. low disk space for WMI).- Free up disk space on the client (clear temp files, etc.) and reboot the machine [prajwaldesai.com].
- If WMI is broken, recompile the WMI repository. After freeing resources, retry the SCCM operation that failed.
22785561810x87D00215Failed to get DP locations from the MP (no distribution point could be found) [techuisitive.com]. This often indicates the client is outside any boundary for content or the content is not distributed.- Ensure the client’s network location is added to an SCCM Boundary and that it’s included in a Boundary Group with an associated Distribution Point [techuisitive.com].
- Distribute the content to the appropriate DP if not already done, then refresh policy on the client and retry.
22785571910x87D00607The software distribution failed because content was not found by the client [learn.microsoft.com]. Common causes are misconfigured boundaries (client can’t find a source) or content removal. (In some cases, it can also indicate user permission issues or network errors.)- Verify the application/package is distributed to the correct DP, and that the client’s boundary group is correctly configured for content location [learn.microsoft.com].
- Check that the client can communicate with the DP (no firewall blocking BITS/HTTP) [learn.microsoft.com], and review AppEnforce.log on the client for specific errors [learn.microsoft.com].
22785572840x87D00664Updates deployment was cancelled by SCCM because it exceeded its maximum runtime [sccmgeekbl…dpress.com]. (The update installer was stopped since it ran too long.)- Re-deploy or run the update again on the client (the previous attempt was canceled) [sccmgeekbl…dpress.com].
- If the max run time is too low, adjust the Maximum Run Time setting for that update deployment in SCCM so it doesn’t timeout prematurely.
22785566730x87D01201Not enough space in cache or disk for the application (Cache size too small) [sccmgeekbl…dpress.com]. The SCCM client’s cache or disk ran out of space during app install.- Increase the SCCM client cache size in the Configuration Manager applet or deploy a policy to enlarge it, then retry the installation [sccmgeekbl…dpress.com].
- Free up disk space on the client if the entire disk is low on space. The deployment will resume once space is available.
22785563180x87D0029ECCMSetup failed – generic client install failure. This is a non-specific error indicating the client installation did not complete (often logged after other errors) [mynexttech.com].- Repair WMI on the client (WMI issues are a common cause for generic CCMSetup failures) and then run the client installation again [mynexttech.com].
- If not WMI, run CCMSetup with verbose logging and examine ccmsetup.log to find the preceding error (address that root cause).
22785561990x87D00227Functionality disabled – client installation is blocked due to a metered network connection [prajwaldesai.com]. (By default, SCCM client won’t install over a metered link.)- Re-run the client setup with the /AllowMetered switch to permit installation on a metered connection [prajwaldesai.com], [prajwaldesai.com].
- Or, configure SCCM Client Settings to Allow client communication on metered networks and wait for the policy to apply, then retry the install [prajwaldesai.com].

Friday, March 27, 2020

SCCM ConfigMgr Client Health

When you operate your client in an enterprise environment, then you may find from time to time clients in an unhealty condition. E.g. SCCM reporting does not work anymore or other issues around WMI originating from a corrupt WMI repository and much more.


The tech fellow Anders Rodland created a fantastic PowerShell based framework to diagnose and heal your (sccm) clients automatically.


Features

ConfigMgr Client Health detects and fixes following errors:

  • ConfigMgr client is not installed.
  • ConfigMgr client is assigned the correct site code.
  • ConfigMgr client is upgraded to current version if not at specified minimum version.
  • ConfigMgr client not able to forward state messages to management point.
  • ConfigMgr client stuck in provisioning mode.
  • ConfigMgr client maximum log file size.
  • ConfigMgr client cache size. Fixed size (MB) or percentage of disk space.
  • ConfigMgr client certificate error.
  • ConfigMgr client hardware inventory not running.
  • ConfigMgr client CcmSQLCE.log exists and client is not in debug mode.
  • Corrupt WMI.
  • DNS server record matches local IP’s
  • Drivers – Reports faulty or missing drivers on client.
  • Logging to SQL database and / or file share
  • Pending reboot check
  • User-friendly reboot of computer with 3rd party reboot app when in pending reboot or computer uptime is more than specified in config.
  • Services for ConfigMgr client is not running or disabled.
  • Other services can be specified to start and run and specific state.
  • Windows Update Agent not working correctly, causing client not to receive patches.
  • Windows Update Agent missing patches that fixes known bugs.
  • PLUS additional ones in the latest version (check it out!)

More Information's can be found here:
https://www.andersrodland.com/configmgr-client-health/

And the latest "ConfigMgrClient Health" can be found on Github:
https://github.com/AndersRodland/ConfigMgrClientHealth

Thursday, November 29, 2018

Servicing Stack Update - what it is and when you need it!

From time to time it is necessary to fix the Windows Setup itself. This is the so called "Component Base Setup" CBS. This you will also find the setup logs. For several reasons it might be necessary to do an update!


Here you will find the latest Servicing Stack Updates:

(Sometimes they have even something to do with security fixes.)
 
You will find this also in my "Important Links" list.


So what is it in detail?

The "servicing stack" is the code that installs other operating system updates. Additionally, it contains the "component-based servicing stack" (CBS), which is a key underlying component for several elements of Windows deployment, such as DISM, SFC, changing Windows features or roles, and repairing components. The CBS is a small component that typically does not have updates released every month.

For more information please refer to:

When and how to apply?

Best is to add it via DISM right after applying the image in a Task Sequence in SCCM. So you ensure it is already updated before Windows Setup starts its tasks. e.g. with this command during an task sequence where your are still offline but C:\Windows exists due to the fact that you applied the image first and then you run this command in a SCCM package:

dism /Image:C:\ /Add-Package /PackagePath=windows10.0-kb00001-x64.msu /LogPath=C:\Windows\logs\dism-add-stackservicingpackage.log
Write them in one line! Word wrapping is just for better readability in my blog!

The missing path to the MSU file is by purpose. The command always get executed in the same directory as the command is invoked by the Task sequence SCCM package. 

Also image directory in offline mode (Windows PE) is C:\



You have also the option to mount the Vanila WIM Image (it is important that is is NOT a built and capture image for upgrade scenarios!) and add the servicing stack update directly there. So it becomes out of the box part of the WIM file.

But keep in mind if you are using the WIM image for Windows 10 inplace upgrade (7 to 10 or 10 old to 10 newer) then your are only allowed to do a very limited set of image modifications. Built and capture is absolutelly forbidden in this scenario.

You can add the following to the WIM used for upgrades:



1. Latest servicing stack update (for your particular Windows version!)1. Latest cummulative update (for your particular Windows version!)
2. Latest cumulative update (for your particular Windows version!)
3. Additional feature on demand packages (keep in mind you need to look for the right Feature on demand DVD that fits to this version of windows!)
4. Language packs (also need to fit to the right version of Windows!)

NEVER mix up versions!

Kudos to Manuel for sending me the link of the repo! ;-)

Friday, November 16, 2018

SCCM Driver handling by model

All the time you have to add driver packages to the task sequence in SystemCenter Configuration Manager (SCCM). Therfore it is simple to use the builtin TS variable called "Model".

But to compare this you will need the correct model string to compare from your system.

Use the WMI Console command to get this very easy.
1. Start WMIC in admin window
2. type in: Computersystem get model

And below Model you will see exactly the string you need for the task sequence variable you need to compare with.


And here is exactly the place you can use this:


Thursday, June 28, 2018

SCCM Deployment Logging Variables

Sometimes its helpful to have SMSTS.LOG for debugging issues in SCCM OSD Deployments. But this log is very long and even with cmtrace logviewer anoying to read. 



You are looking probably for some very specific informations stored in variables.

Here is a comprehensive list of variables:

The following list describes the built-in variables that are available in Configuration Manager:
Built-in Variable NameDescription
_OSDDetectedWinDirThe task sequence scans the computer's hard drives for a previous operating system installation when Windows PE starts. The Windows folder location is stored in this variable. You can configure your task sequence to retrieve this value from the environment and use it to specify the same Windows folder location to use for the new operating system installation.
_OSDDetectedWinDriveThe task sequence scans the computer's hard drives for a previous operating system installation when Windows PE starts. The hard drive location for where the operating system is installed is stored in this variable. You can configure your task sequence to retrieve this value from the environment and use it to specify the same hard drive location to use for the new operating system.
_SMSTSAdvertIDStores the current running task sequence deployment unique ID. It uses the same format as a Configuration Manager software distribution deployment ID. If the task sequence is running from stand-alone media, this variable is undefined.

Example:

ABC20001
_TSAppInstallStatusThe task sequence sets the _TSAppInstallStatus variable with the installation status for the application during the Install Application step. The task sequence sets the variable with one of the following values:

1. Undefined: The Install Application step has not run.
2. Error: At least one application failed because of an error during the Install Application step.
3. Warning: No errors occur during the Install Application step. One or more applications, or a required dependency, did not install because a requirement was not met.
4. Success: There are no errors or warnings detected during the Install Application step.
_SMSTSBootImageIDIf the current running task sequence references a boot image package, this variable stores the boot image package ID. If the task sequence does not reference a boot image package, this variable is not set.

Example:

ABC00001
_SMSTSBootUEFIThe task sequence sets the SMSTSBootUEFI variable when it detects a computer that is in UEFI mode.
_SMSTSClientGUIDStores the value of Configuration Manager client GUID. This variable is not set if the task sequence is running from stand-alone media.

Example:

0a1a9a4b-fc56-44f6-b7cd-c3f8ee37c04c
_SMSTSCurrentActionNameSpecifies the name of the currently running task sequence step. This variable is set before the task sequence manager runs each individual step.

Example:

run command line
_SMSTSDownloadOnDemandIf the current task sequence is running in download-on-demand mode, this variable is true. Download-on-demand mode means the task sequence manager downloads content locally only when it must access the content.
_SMSTSInWinPEWhen the current task sequence step is running in Windows PE, this variable is true. Test this task sequence variable to determine the current operating system environment.
_SMSTSLastActionRetCodeStores the return code that was returned by the last action that was run. This variable can be used as a condition to determine if the next step is run.

Example:

0
_SMSTSLastActionSucceededIf the last step succeeded, this variable is true. If the last step failed, it is false. If the task sequence skipped the last action, because the step is disabled or the associated condition evaluated to false, this variable is not reset. It still holds the value for the previous action.
_SMSTSLaunchModeSpecifies one of the following task sequence launch methods:

- SMS: the task sequence started from the Configuration Manager client
- UFD: the task sequence started from legacy USB media
- UFD+FORMAT: the task sequence started from newer USB media
- CD: the task sequence started from a CD
- DVD: the task sequence started from a DVD
- PXE: the task sequence started from PXE
- HD: the task sequence started from prestaged media on a hard disk
_SMSTSLogPathStores the full path of the log directory. Use this value to determine where actions are logged. This value is not set when a hard drive is not available.
_SMSTSMachineNameStores and specifies the computer name. Stores the name of the computer that the task sequence uses to log all status messages. To change the computer name in the new operating system, use the OSDComputerName variable.

Example:

ABC
_SMSTSMDataPathSpecifies the path defined by the SMSTSLocalDataDrive variable. When you define SMSTSLocalDataDrive before the task sequence starts, such as by setting a collection variable, Configuration Manager then defines the _SMSTSMDataPath variable once the Task Sequence starts.
_SMSTSMediaTypeSpecifies the type of media that is used to initiate the installation. Examples of types of media are Boot Media, Full Media, PXE, and Prestaged Media.
_SMSTSMPStores the URL or IP address of a Configuration Manager management point.
_SMSTSMPPortStores the management point port number of a Configuration Manager management point.

Example:

80
_SMSTSOrgNameStores the branding title name that the task sequence displays in the progress dialog.

Example:

XYZ Organization
_SMSTSOSUpgradeActionReturnCodeStores the exit code value that Windows Setup returns to indicate success or failure. This variable is set during the Upgrade Operating System task sequence step. This variable is useful with the /Compat command-line option.

Example:

On the completion of /Compat, take action in later steps depending on the failure or success exit code. On success, initiate the upgrade. Or, set a marker in the environment (for example, add a file or set a registry key) to collect with hardware inventory. Use this marker to create a collection of computers that are ready to upgrade, or that require action before upgrade.
_SMSTSPackageIDStores the current running task sequence ID. This ID uses the same format as a Configuration Manager software package ID.

Example:

HJT00001
_SMSTSPackageNameStores the current running task sequence name specified by the Configuration Manager administrator when the task sequence is created.

Example:

Deploy Windows 10 task sequence
_SMSTSSetupRollbackSpecifies whether the operating system Setup performed a rollback operation. The variable values can be true or false.
_SMSTSRunFromDPSet to true if the current task sequence is running in run-from-distribution-point mode, which means the task sequence manager obtains required package shares from distribution point.
_SMSTSSiteCodeStores the site code of the Configuration Manager site.

Example:

ABC
_SMSTSTypeSpecifies the type of the current running task sequence. It can have the following values:

1 - indicates a generic task sequence.

2 - indicates an operating system deployment task sequence.
_SMSTSTimezoneThe _SMSTSTimezone variable stores the time zone information in the following format (without spaces):

Bias, StandardBias, DaylightBias, StandardDate.wYear, wMonth, wDayOfWeek, wDay, wHour, wMinute, wSecond, wMilliseconds, DaylightDate.wYear, wMonth, wDayOfWeek, wDay, wHour, wMinute, wSecond, wMilliseconds, StandardName, DaylightName

Example:

For the Eastern Time U.S. and Canada, the value would be 300,0,-60,0,11,0,1,2,0,0,0,0,3,0,2,2,0,0,0,Eastern Standard Time,Eastern Daylight Time
_SMSTSUseCRLWhen the task sequence uses HTTPS to communicate with the management point, specifies whether it uses the certificate revocation list (CRL).
_SMSTSUserStartedSpecifies whether a task sequence is started by a user. This variable is set only if the task sequence is started from the Software Center. For example, if _SMSTSLaunchMode is set to SMS. The variable can have the following values:

- true - specifies that the task sequence is manually started by a user from the Software Center.
- false - specifies that the task sequence is initiated automatically by the Configuration Manager scheduler.
_SMSTSUseSSLSpecifies whether the task sequence uses SSL to communicate with the Configuration Manager management point. If your site is running in native mode, the value is set to true.
_SMSTSWTGSpecifies if the computer is running as a Windows To Go device.
OSDPreserveDriveLetterThis task sequence variable is deprecated. During an operating system deployment, by default, Windows Setup determines the best drive letter to use (typically C:).

Previous behavior: when applying an image, the OSDPreverveDriveLetter variable determines whether or not the task sequence uses the drive letter captured in the image file (.WIM). Set the value for this variable to False to use the location that you specify for the Destination setting in the Apply Operating System task sequence step. For more information, see Apply Operating System Image.
SMSTSAssignmentsDownloadIntervalThe number of seconds to wait before the client attempts to download the policy since the last attempt that returned no policies. By default, the client waits 0 seconds before retrying.

You can set this variable by using a prestart command from media or PXE.
SMSTSAssignmentsDownloadRetryThe number of times a client will attempt to download the policy after no policies are found on the first attempt. By default, the client retries 0 times.

You can set this variable by using a prestart command from media or PXE.
SMSTSAssignUsersModeSpecifies how a task sequence associates users with the destination computer. Set the variable to one of the following values:

- Auto: The task sequence creates a relationship between the specified users and destination computer when it deploys the operating system to the destination computer.
- Pending: The task sequence creates a relationship between the specified users and the destination computer. An administrator must approve the relationship to set it.
- Disabled: The task sequence does not associate users with the destination computer when it deploys the operating system.
SMSTSDownloadAbortCodeThis variable contains the abort code value for the external program downloader (specified in the SMSTSDownloadProgram variable). If the program returns an error code equal to the value of the SMSTSDownloadAbortCode variable, then the content download fails and no other download method is attempted.
SMSTSDownloadProgramUse this variable to specify an Alternate Content Provider, a downloader program that is used to download content instead of the default Configuration Manager downloader, for the task sequence. As part of the content download process, the task sequence checks the variable for a specified downloader program. If specified, the task sequence runs the program to perform the download.
SMSTSDownloadRetryCountThe number of times that Configuration Manager attempts to download content from a distribution point. By default, the client retries 2 times.
SMSTSDownloadRetryDelayThe number of seconds that Configuration Manager waits before it retries to download content from a distribution point. By default, the client waits 15 seconds before retrying.
SMSTSDriverReceiveTimeOutThe number of seconds before the connection to the server times out.
SMSTSErrorDialogTimeoutWhen an error occurs in a task sequence, it displays a dialog box with the error. The task sequence automatically dismisses it after the number of seconds specified by this variable. By default, this value is 900 seconds (15 minutes).
TSDisableProgressUI Beginning in Configuration Manager version 1706, use this variable to control when the task sequence displays progress to end users. To hide or display progress at different times, set this variable multiple times in a task sequence. To hide task sequence progress, set the value of this variable to True. To display task sequence progress, set the value of this variable to False.
SMSTSDisableStatusRetry In disconnected scenarios, the task sequence engine repeatedly tries to send status messages to the management point. This behavior in this scenario causes delays in task sequence processing. Beginning in Configuration Manager version 1802, set this variable to True and the task sequence engine doesn't attempt to send status messages after the first message fails to send. This first attempt includes multiple retries.

When the task sequence restarts, the value of this variable persists. However, the task sequence tries sending an initial status message. This first attempt includes multiple retries. If successful, the task sequence continues sending status regardless of the value of this variable. If status fails to send, the task sequence uses the value of this variable.

NOTE: task sequence status reporting relies upon these status messages to display the progress, history, and details of each step.
SMSTSLanguageFolderUse this variable to change the display language of a language neutral boot image.
SMSTSLocalDataDriveSpecifies where temporary files are stored on the destination computer while the task sequence is running.

This variable must be set before the task sequence starts, such as by setting a collection variable. Once the task sequence starts, Configuration Manager defines the _SMSTSMDataPath variable once the Task Sequence starts.
SMSTSMPUse this variable to specify the URL or IP address of the Configuration Manager management point.
SMSTSPeerDownloadUse this variable to enable the client to use Windows PE Peer Cache.

Example:

SMSTSPeerDownload = TRUE enables this functionality.
SMSTSPeerRequestPortA custom network port that Windows PE peer cache uses for the initial broadcast. The default port configured in client settings is 8004.
SMSTSPersistContentUse this variable to temporarily persist content in the task sequence cache.
SMSTSPostActionSpecifies a command that is run after the task sequence completes. For example, you can use this variable to specify a script that enables write filters on embedded devices after the task sequence deploys an operating system to the device.
SMSTSPreferredAdvertIDForces the task sequence to run a specific targeted deployment on the destination computer. Set this variable through a prestart command from media or PXE. If this variable is set, the task sequence overrides any required deployments.
SMSTSPreserveContentThis variable flags the content in the task sequence to be retained in the Configuration Manager client cache after the deployment. This variable is different from SMSTSPersistContent, which only preserves the content for the duration of the task sequence. SMSTSPersistContent uses the task sequence cache, SMSTSPreserveContent uses the Configuration Manager client cache.

Example:

SMSTSPreserveContent = TRUE enables this functionality.
SMSTSRebootDelaySpecifies how many seconds to wait before the computer restarts. If this variable is zero (0), the task sequence manager does not display a notification dialog before reboot.

Examples:

0: do not display a notification

60: display a notification for one minute
SMSTSRebootMessageSpecifies the message to display in the restart notification dialog. If this variable is not set, a default message appears.

Example:

The task sequence is restarting this computer.
SMSTSRebootRequestedIndicates that a restart is requested after the current task sequence step is completed. If a restart is required, just set this variable to true, and the task sequence manager will restart the computer after this task sequence step. If the task sequence step requires a restart to complete the action, set this variable. After the computer restarts, the task sequence continues to run from the next task sequence step.
SMSTSRetryRequestedRequests a retry after the current task sequence step is completed. If this task sequence variable is set, the SMSTSRebootRequested must also be set to true. After the computer is restarted, the task sequence manager will rerun the same task sequence step.
SMSTSUDAUsersSpecifies the primary users of the destination computer by using the following format:

Example:

domain\user1, domain\user2, domain\user3

Separate multiple users by using a comma (,). For more information, see Associate users with a destination computer.


Thanks to MS @ https://docs.microsoft.com/en-us/sccm/osd/understand/task-sequence-built-in-variables

Friday, March 2, 2018

SCCM automated driver management

Its always a pain to handle driver updates with each new release of Windows 10. The most simplest way to fix this is simply use Microsoft Surface products. Drivers and Bios Updates are deployed simply through Windows Update and all major headaches are gone. :-)

But unfortunately the world is not that simply. And as always there is a solution too.

Simply use the Driver Automation Tool




Thanks to Maurice Daly (MVP)
https://gallery.technet.microsoft.com/scriptcenter/Driver-Tool-Automate-9ddcc010

The Driver Automation Tool is a GUI developed in PowerShell which provides full automation of BIOS and driver downloads, extraction, packaging and distribution with Dell, HP, Lenovo & Microsoft client hardware.
The intuitive GUI provides you with a full list of models from the supported manufacturer, allowing you to select one or many models, it also will detect Dell and Lenovo models matched against the WMI models known to ConfigMgr.


How Does It Work?
When the tool is opened, you have the option to select your manufacturer and OS of choice. When you click on the Find Models button, the tool initiates a download of XML content from the selected manufacturer, reads in the XML and displays a full list of models for selection. Clicking on the Add to Import List adds each of these models for processing and once you click on the Start Download and Import Process button the tool starts the full process to automatically download and package the content.


MDT Support
Although primarily designed for use with ConfigMgr, the tool also supports MDT. Here you will find the ability to select your deployment shares as well as dynamic creation of folder hierarchies based on total control naming methods


FEATURES: ConfigMgr
  • Site server selection
  • Automatic site code discovery
  • Distribution point and distribution point group selection
  • Binary differential replication
  • Distribution priority
  • Clean up of unused drivers
  • Removal of superseded driver packages
  • Removal of source download packages
  • Driver & BIOS piloting
  • Driver & BIOS deployment state management (production, pilot, retired)
FEATURES: MDT
  • Auto or manual selection of the MDT PS module
  • Deployment share listing
  • Folder structure naming
FEATURES: Settings
All settings are saved into an XML file open close, and read back into the tool upon launch.


Thursday, August 17, 2017

Updated Office 365 release cycle and new deployment method

Microsoft just released new informations regarding the new Office 365 release cycle and improved update Management.

Good news first:
  • it is alligned with Windows 10
  • it will be managed like Windows 10 with SCCM (at least SCCM 1610)

Checkout this 9 minute video:
https://www.youtube.com/watch?v=d1xHdHsTspY

Tuesday, December 20, 2016

SCCM 1610: Ability to migrate BIOS to UEFI Partitioning and Boot

One of the biggest automated migration issues was always the fact that many companies have Windows 7 x64 in place but due to legacy issues with UEFI deployments in the past they stick still with LEGACY Bios settings and not with modern and much more secure UEFI boot bios settings. UEFI also need GPT partitioning and not MBR partitioning.


To remove this hurdle Microsoft introduced in SCCM 1610 a nice feature that allows you to migrate to UEFI during a task sequence.


Additionally to the task sequence you may need a vendor specific tool that allow you to migrate your bios settings to UEFI.


More you can find here:
https://docs.microsoft.com/en-us/sccm/osd/deploy-use/task-sequence-steps-to-manage-bios-to-uefi-conversion


Example with Dell CCTK.
The original blog still refer to an older alternate way. But the rest of the article in the end refer to the Dell CCTK tool to modify the BIOS. This is still valid.
http://www.scconfigmgr.com/2016/06/14/switch-from-bios-to-uefi-on-dell-systems-during-windows-10-deployment-with-configmgr/

Enjoy the show!

Thursday, April 28, 2016

Monday, November 23, 2015

SystemCenter Config Manager 2016 Technical Preview 4 publicly available

SystemCenter Configuration Manager 2016 Technical Preview 4 is now publicly available! Same as with Windows Server 2016 TP4 no production support available! This is for testing only.

This is the last technical preview before the general availability (GA) of the current branch of System Center Configuration Manager. This release is a great opportunity for you to get your hands on the next version and try it out before it is officially available!
New features in this technical preview include:
  • Mobile Device management (MDM): enhanced feature parity with Intune standalone – With this technical preview, many of the MDM features that are supported via Intune standalone (cloud only) are also enabled for Configuration Manager integrated with Intune (hybrid). MS will publish additional information later this year about the specific capabilities which will be supported with a hybrid deployment. 
  • Integration with Windows Update for Business – With Technical Preview 4, you have the ability to view the list of devices that are controlled by Windows Update for Business.  
  • Certificate provisioning for Windows 10 devices managed via on-premises mobile device management
While this build is very similar to the final System Center Configuration Manager build, it also includes several features for early preview. You will notice that this technical preview is a full setup and not an upgrade from previous releases. Moving forward, this release will be used as a baseline to deliver technical preview updates, similar to how we have delivered updates to Technical Preview 3 in September and October.


If you may wonder there is an internal difference between SystemCenter and SystemCenter Configuration Manager. When you are in WSSC TAP (MS Beta Program) you operate on Windows Client&Server and the rest of the SystemCenter products exept on SystemCenter Configuration Manager where a dedicated TAP program is available. Some things are more equal than others ;-)

Also keep in mind there is a ton of new functionality around the new endpoint protection. With Windows 10, System Center Configuration Manager Technical Preview will manage Windows Defender on Windows 10 computers without installing a separate Endpoint Protection agent. This means that all malware management and reporting will now come from Defender. The Endpoint Protection agent is still required for Windows 8.1 and earlier Windows operating systems. But there are much more new features like cloud scan. Stay tuned to find out more here.

Reference:
http://blogs.technet.com/b/configmgrteam/archive/2015/11/19/now-available-system-center-configuration-manager-technical-preview-4.aspx


Download SCCM TP4 here:
http://www.microsoft.com/en-us/evalcenter/evaluate-system-center-configuration-manager-and-endpoint-protection-technical-preview

Tons of good free official MS Ebooks can be found here: https://mva.microsoft.com/ebooks#9780735695832