Skip to content

Commit 865c634

Browse files
committed
Consistency edits
1 parent 87dc8ae commit 865c634

1 file changed

Lines changed: 27 additions & 24 deletions

File tree

support/mem/configmgr/setup-migrate-backup-recovery/understand-troubleshoot-updates-servicing.md

Lines changed: 27 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -188,7 +188,7 @@ Successfully Dropped the state message 3~~
188188
189189
DMPDownloader sends the `3 (VERIFIED_MANIFEST)` state message to confirm that the file has a trusted signature.
190190
191-
Finally, DMPDownloader renames ConfigMgr.Update.Manifest.cab to ___CABConfigMgr.Update.Manifest.MCM, and then moves the renamed file to one of the following locations:
191+
Finally, DMPDownloader renames ConfigMgr.Update.Manifest.cab to ___CABConfigMgr.Update.Manifest.mcm, and then moves the renamed file to one of the following locations:
192192
193193
- If the SCP is remote from the site server, DMPDownloader stores the file at MP\\OUTBOXES\\MCM.box. The MP File Dispatch manager (MPFDM) moves the file to the site server.
194194
- If the SCP is co-located with the site server, the file is saved directly to inboxes\\hman.box\\ForwardingMsg.
@@ -210,7 +210,7 @@ In Hierarchy Manager (HMAN), a message forwarding thread moves the incoming MCM
210210
211211
HMAN checks for the manifest for the download signature, extracts the manifest, and then processes the manifest and checks that the update packages are applicable.
212212
213-
The SMSDBMon component drops a blank file that's named \<SiteCode>.SCU to the \<ConfigMgr installation Directory>\\inboxes\\hman.box folder.
213+
The SMSDBMon component drops a blank file that's named \<SiteCode>.scu to the \<ConfigMgr installation Directory>\\inboxes\\hman.box folder.
214214
215215
> [!NOTE]
216216
> In these file and path names, \<SiteCode> represents the code of your Configuration Manager site, and \<ConfigMgr installation Directory> represents the local directory where Configuration Manager is installed.
@@ -271,15 +271,15 @@ The following steps summarize this troubleshooting process. The steps vary depen
271271
272272
- **SCP in Online mode**
273273
274-
1. On the SCP, check the DMPDownloader.log file for any error messages that the DMPDownloader generated while it downloaded and processed the manifest .cab file.
274+
1. On the SCP, check the DMPDownloader.log file for any error messages that the DMPDownloader generated while it downloaded and processed the manifest CAB file.
275275
1. Verify that the HMAN.log file contains entries that resemble the following excerpt:
276276
277277
```output
278278
Extracting file E:\ConfigMgr\inboxes\hman.box\CFD\ConfigMgr.Update.Manifest.CAB to E:\ConfigMgr\CMUStaging\~
279279
Extracted E:\ConfigMgr\CMUStaging\Manifest.xml
280280
```
281281
282-
These log entries indicate that DMPDownloader successfully downloaded and processed the .cab file.
282+
These log entries indicate that DMPDownloader successfully downloaded and processed the CAB file.
283283
284284
- **SCP in Offline mode**
285285
@@ -321,7 +321,7 @@ As part of troubleshooting the Applicability check stage, verify that the site d
321321
SELECT dbo.fnCurrentSiteVersion()
322322
```
323323
324-
Correlate the returned version information to other sources such as the version of the smsexec.exe binary file. The following table lists multiple sources of these values.
324+
Correlate the returned version information to other sources such as the version of the SMSExec.exe binary file. The following table lists multiple sources of these values.
325325
326326
> [!NOTE]
327327
> The values might include both regular build numbers (expressed as *nnnn*) and minor build numbers (expressed as *mm*). Only the regular build numbers (*nnnn*) are relevant to troubleshooting this issue.
@@ -345,7 +345,7 @@ As described earlier, each update package has a unique GUID (also known as the u
345345
346346
### Process step 1: DMPDownloader downloads the update and any supporting files
347347
348-
By default, DMPDownloader automatically initiates the download of the latest applicable update package. Alternatively, an Administrator can manually download any other applicable update package by selecting it in the console and then selecting **Download**.
348+
By default, DMPDownloader automatically starts downloading the latest applicable update package. Alternatively, an Administrator can manually download any other applicable update package by selecting it in the console and then selecting **Download**.
349349
350350
In either case, after the process starts, the SMS provider calls the `spAddPackageToDownload` stored procedure. The stored procedure adds the package GUID to the `CM_UpdatePackagesToDownload` table in the SQL database.
351351
@@ -453,7 +453,7 @@ To download the redists, DMPDownloader reads the same Manifest.xml file that it
453453
</Content>
454454
```
455455

456-
Then DMPDownloader engages the usual Configuration Manager redist downloading process, SetupDL.exe. SetupDL.exe downloads the redists and language manifests, and logs this information in ConfigMgrSetup.log. The entries resemble the following excerpt:
456+
Then DMPDownloader engages SetupDL.exe, the usual Configuration Manager redist downloading process. SetupDL.exe downloads the redists and language manifests, and logs this information in ConfigMgrSetup.log. The entries resemble the following excerpt:
457457

458458
```output
459459
INFO: Attempting to load resource DLL...
@@ -474,14 +474,14 @@ INFO: Setup downloader setupdl.exe: FINISHED
474474

475475
### Process step 2: Completing the Download
476476

477-
As a result of the previous step, the \\EasySetupPayload shared folder contains a folder \\\<Update GUID> that has an integrated \\Redists folder.
477+
As a result of the previous step, the \\EasySetupPayload shared folder contains the \\\<Update GUID> folder, which has an integrated \\Redists folder.
478478

479-
Depending on the SCP configuration, DMPDownloader puts a so-called CMU file in one of the following locations:
479+
Depending on the SCP configuration, DMPDownloader puts a file that's referred to as the CMU file in one of the following locations:
480480

481481
- If the SCP is remote from the site server, DMPDownloader puts the file in MP\\OUTBOXES\\MCM.box. Afterwards, MPFDM moves the file to inboxes\\hman.box\\ForwardingMsg for the site server.
482482
- If the SCP is collocated with the site server, DMPDownloader saves the file directly to the inboxes\\hman.box\\ForwardingMsg folder.
483483

484-
The file has a .mcm extension, and contains the information that marks the state of the update package as `State="262146"` (also known as `"DOWNLOAD_SUCCESS"`). The corresponding log entries resemble the following excerpt:
484+
The file has a .mcm extension, and contains the information that marks the state of the update package as **State="262146"** (also known as **"DOWNLOAD_SUCCESS"**). The corresponding log entries resemble the following excerpt:
485485

486486
```output
487487
The CMU file name is E:\ConfigMgr\inboxes\hman.box\ForwardingMsg\___CMU3b7d84fa-eccc-4ea0-b8ab-abbda1e88e0e.MCM~~
@@ -490,7 +490,7 @@ outerxml is <ConfigurationManagerUpdateContent Guid="3b7d84fa-eccc-4ea0-b8ab-abb
490490

491491
The notification file is just an XML file that contains the update package GUID and its status. `State="262146"` means that the update package was downloaded.
492492

493-
HMAN converts the file back to .cmu, and then moves it to HMAN.box\\CFD. This process resembles that applied to the Manifest .cab file during the [Synchronization stage](#process-step-1-dmpdownloader-downloads-the-update-and-any-supporting-files). The CMUHandler thread in HMAN logs an entry to HMAN.log that resembles the following excerpt:
493+
HMAN converts the file back to .cmu, and then moves it to HMAN.box\\CFD. This process resembles that applied to the manifest CAB file during the [Synchronization stage](#process-step-1-dmpdownloader-downloads-the-update-and-any-supporting-files). The CMUHandler thread in HMAN logs an entry to HMAN.log that resembles the following excerpt:
494494

495495
```output
496496
Validate CMU file C:\Program Files\Microsoft Configuration Manager\inboxes\hman.box\CFD\e8e74b72-504a-4202-9167-8749c223d2a5.CMU with no intune subscription.
@@ -578,7 +578,7 @@ At the top-level site, you take one of the following actions:
578578
- To install the update, select **Install**.
579579
- Start a prerequisite check.
580580

581-
HMAN uses the shared folder \\\\[servername]\\EasySetupPayload\\\<Update GUID> as the source to create or update the package. The change in the update package state fires the `CM_UpdatePackages_UPD_HMAN` trigger. The SMSDBMON component drops a file named HMAN.box\CFD\2.ESC. This action wakes up HMAN, and it starts processing the update. If the verbose logging option is turned on, SMSDBMON logs entries in Smsdbmon.log that resemble the following excerpt:
581+
HMAN uses the shared folder \\\\[servername]\\EasySetupPayload\\\<Update GUID> as the source to create or update the package. The change in the update package state fires the `CM_UpdatePackages_UPD_HMAN` trigger. The SMSDBMON component drops a file that's named 2.esc in the HMAN.box\\CFD folder. This action wakes up HMAN, and it starts processing the update. If the verbose logging option is turned on, SMSDBMON logs entries in SMSDBMon.log that resemble the following excerpt:
582582

583583
```output
584584
RCV: UPDATE on CM_UpdatePackages for CM_UpdatePackages_UPD_HMAN [2 ]
@@ -738,15 +738,15 @@ In a multi-tier hierarchy, the child primary sites replicate the Easy Setup Pack
738738

739739
If the state of the package doesn't change from `State=2 (Enabled)`, this typically means that HMAN can't finish its task. To troubleshoot this issue, analyze HMAN.log.
740740

741-
1. Look for entries that mention processing the 2.ESC file.
741+
1. Look for entries that mention processing the 2.esc file.
742742
1. Filter the log by the respective thread.
743-
1. Alternatively, look for the last **SubstageID** value that's recorded in the log. The data that's associated with this value should include either `IsComplete=2` (Success) or `IsComplete=4` (Failure). This information should resemble the following excerpt:
743+
1. Alternatively, look for the last `SubstageID` value that's recorded in the log. The data that's associated with this value should include either `IsComplete=2 (Success)` or `IsComplete=4 (Failure)`. This information should resemble the following excerpt:
744744

745745
```output
746746
Successfully reported ConfigMgr update status (SiteCode=CS1, SubStageID=0xb0001, IsComplete=2, Progress=100, Applicable=1)
747747
```
748748

749-
1. If the HMAN.log file rolled over (removing older entries), try to manually recreate the empty 2.ESC file in the HMAN.box\CFD folder. This operation should trigger the same process again.
749+
1. If the HMAN.log file rolled over (removing older entries), try to manually recreate the empty 2.esc file in the HMAN.box\\CFD folder. This operation should trigger the same process again.
750750

751751
> [!NOTE]
752752
> Even if SCP is local to the site server, HMAN has to use a share path (such as \\\\\<SCP FQDN>\\EasySetupPayLoad\\\<PackageGUID>) to calculate the hash for the Easy Setup Package and to update the `EasySetupSettings` table. If HMAN can't access the share, it logs an error message that resembles the following excerpt:
@@ -888,7 +888,7 @@ Preparing prereq check for site server [BIG-CS1SITE.BIGLAB.NET]...~
888888

889889
During this process, CMUpdate silently sets the `Update State` in the `CM_UpdatePackages` table to `131073 (PREREQ_IN_PROGRESS)`.
890890

891-
Then CMUpdate looks for the Update.map file in the \\CMUStaging\\\<PackageGUID>\\SMSSetup folder. In the file, CMUpdate looks for the `CONFIGURATION_MANAGER_UPDATE` section, which contains the hashes of the files that it needs. This section of the file resembles the following excerpt:
891+
Then CMUpdate looks for the update.map file in the \\CMUStaging\\\<PackageGUID>\\SMSSetup folder. In the file, CMUpdate looks for the `CONFIGURATION_MANAGER_UPDATE` section, which contains the hashes of the files that it needs. This section of the file resembles the following excerpt:
892892

893893
```xml
894894
BEGIN_COMPONENT_FILELIST
@@ -915,7 +915,7 @@ BEGIN_COMPONENT_FILELIST
915915
END_COMPONENT_FILELIST
916916
```
917917

918-
The file of particular interest is prereqcore.dll, which contains the actual prerequisite check logic. CMUpdate calculates the hash of the file that resides in \\CMUStaging\\\<PackageGUID>\\SMSSetup\\BIN\\X64 and compares it to the hash in the `Update.map` file. If the hashes match, the check continues. CMUpdate logs an entry that resembles the following excerpt:
918+
The file of particular interest is prereqcore.dll, which contains the actual prerequisite check logic. CMUpdate calculates the hash of the file that resides in \\CMUStaging\\\<PackageGUID>\\SMSSetup\\BIN\\X64 and compares it to the hash in the update.map file. If the hashes match, the check continues. CMUpdate logs an entry that resembles the following excerpt:
919919

920920
```output
921921
prereqcore has hash value SHA256:48899098998C712DDF097638B281D5620D8C511FB9B51E2391119281E0ECA43E
@@ -928,7 +928,7 @@ Running prereq checking against Server [BIG-CS1SITE.BIGLAB.NET] ...~
928928
```
929929

930930
> [!NOTE]
931-
> Hotfixes typically don't have a specific section in the Update.map file. In such cases, CMUpdate uses the prereqcore.dll file that's associated with the installed version of Configuration Manager, and the log entry resembles the following excerpt:
931+
> Hotfixes typically don't have a specific section in the update.map file. In such cases, CMUpdate uses the prereqcore.dll file that's associated with the installed version of Configuration Manager, and the log entry resembles the following excerpt:
932932
>
933933
> ```output
934934
>update.map has no update for CONFIGURATION_MANAGER_UPDATE
@@ -1077,11 +1077,14 @@ Since version 1810, Configuration Manager requires SQL Native Client version 11.
10771077

10781078
Similarly, since version 2303, Configuration Manager requires ODBC Driver 18 for SQL Server or a later version. Since version 2503, Configuration Manager requires ODBC Driver 18.4.1.1 for SQL Server or a later version. To view the current requirement, check the value of the `HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSODBCSQL18\InstalledVersion` registry entry.
10791079

1080-
To meet both SQL Server prerequisites, consider manually installing the following msi files from the \\EasySetupPayload\\\<Update GUID>\\redist folder (only available for major releases):
1080+
To meet both SQL Server prerequisites, consider manually installing the following MSI files from the \\EasySetupPayload\\\<Update GUID>\\redist folder:
10811081

10821082
- sqlncli.msi
10831083
- msodbcsql.msi
10841084

1085+
> [!NOTE]
1086+
> These files are only available for major releases.
1087+
10851088
Alternatively, download the latest binaries from the following URLs in the Microsoft Download Center:
10861089

10871090
- [SQL Server 2012 Native Client 11.0.7001.0](https://www.microsoft.com/download/details.aspx?id=50402) or [SQL Server 2012 Feature Pack (scroll to Native Client)](https://www.microsoft.com/download/details.aspx?id=29065)
@@ -1169,7 +1172,7 @@ There is no service window defined for the site server to apply the CM server up
11691172

11701173
### Process step 2: CMUpdate verifies the state of the update and redist content
11711174

1172-
CMUpdate verifies that the CMUStaging content is intact, and then reads update.map file. It logs entries that resemble the following excerpt:
1175+
CMUpdate verifies that the CMUStaging content is intact, and then reads the update.map file. It logs entries that resemble the following excerpt:
11731176

11741177
```output
11751178
Checking if the CMU Staging folder already has the content extracted.
@@ -1270,7 +1273,7 @@ Copying contents of update package from E:\ConfigMgr\CMUStaging\3B7D84FA-ECCC-4E
12701273
successfully updated setup registry to have new external files stored at E:\ConfigMgr\cd.latest\redist
12711274
```
12721275

1273-
Finally, CMUpdate creates a notification file that's named 196612.esc for HMAN, and then starts the post-installation tasks. It logs entries that resemble the following excerpt:
1276+
Finally, CMUpdate creates a notification file for HMAN that's named 196612.esc, and then starts the post-installation tasks. It logs entries that resemble the following excerpt:
12741277

12751278
```output
12761279
INFO: Successfully dropped update pack installed notification to HMAN CFD box.
@@ -1358,11 +1361,11 @@ The following issues can cause an update package to appear to be stuck during th
13581361
- CMUpdate has stopped, so the installation process can't continue.
13591362
- The update package content can't replicate between the CAS and the primary sites because of a Database Replication Service (DRS) issue.
13601363

1361-
Failures can occur at any step of the Installation stage. CMUpdate.log is the primary log to use for investigating installation issues. However, if the failure occurs at any of the post-installation steps, review the SiteComp.log file for information about component reinstallations and the SMSExec.logfile for information about component startup.
1364+
Failures can occur at any step of the Installation stage. CMUpdate.log is the primary log to use for investigating installation issues. However, if the failure occurs at any of the post-installation steps, review the SiteComp.log file for information about component reinstallations and the SMSExec.log file for information about component startup.
13621365

13631366
#### Case studies of Installation stage issues
13641367

1365-
##### Issue 1: Error in verifying the trust of file \\\\?\...\CMUStaging\79FB5420-BB10-44FF-81BA-7BB53D4EE22F\SMSSetup\update.map.cab**
1368+
##### Issue 1: "Error in verifying the trust of file \\\\?\...\CMUStaging\79FB5420-BB10-44FF-81BA-7BB53D4EE22F\SMSSetup\update.map.cab"
13661369

13671370
In CMUpdate.log, you find an error message that resembles the following excerpt:
13681371

@@ -1409,7 +1412,7 @@ If this issue occurs, look for the following typical causes:
14091412
| Folder | Location | Description |
14101413
|--------|---|-------------|
14111414
| \EasySetupPayload | SCP | This shared folder contains the actual installation files for an update. There's no Setup.exe file. Instead, an Install.map file is used for installing. |
1412-
| \CMUStaging | Site server | This folder contains unpacked Configuration Manager manifest cab file that's downloaded and extracted by HMAN to perform applicability checks. The installation files are temporarily stored in this folder while the update installs. |
1415+
| \CMUStaging | Site server | This folder contains unpacked Configuration Manager manifest CAB file that HMAN downloaded and extracted to perform applicability checks. The installation files are temporarily stored in this folder while the update installs. |
14131416
| \CMUClient | Site server | This folder contains the latest client installation files. The files are copied directly from the EasySetupPayload folder. |
14141417
| \PilotingUpgrade | Site server | This folder contains the source content for the Client Piloting Package. |
14151418
| \ClientUpgrade | Site server | This folder contains the source content for the Client Upgrade Package. |

0 commit comments

Comments
 (0)