sIDHistory interfering with scanstate/loadstate?
Good afternoon,
We are trying to replace our Windows XP PCs with Windows 7 using SCCM 2007 R3 Task Sequences and USMT 4.0 hardlinking.
Our Active Directory domain is several years old, and users had accounts in one domain that were migrated into another.
For instance, user account TZ0270 was originally in a domain called OLDDOMAIN, but then migrated to snewman in a domain called NEWDOMAIN. SidHistory was kept on his NEWDOMAIN account.
So in OLDDOMAIN:
sAMAccountName: TZ0270
objectSid: S-1-5-21-436374069-789336058-682003330-188741
and in NEWDOMAIN:
sAMAccountName: snewman
objectSid: S-1-5-21-4016430739-906247392-1194744260-8484
sIDHistory: S-1-5-21-436374069-789336058-682003330-188741
The user's workstation was originally in the OLDDOMAIN domain and moved to the NEWDOMAIN domain.
This seems to be causing the USMT scanstate/loadstate process to throw errors, and not successfully migrating the user profiles.
From scanstate.log on the workstation being upgraded (filtering on specific records for snewman, the entire log is 12 MB):
2010-12-01 15:11:55, Info [0x0803b8] Processing profile: C:\Documents and Settings\snewman
2010-12-01 15:17:37, Info [0x0803af] Name: snewman, Domain: NEWDOMAIN, Profile: %SystemDrive%\Documents and Settings\snewman, SidString: S-1-5-21-4016430739-906247392-1194744260-8484,
ID: USER00000002, IsAdmin: 1, IsBuiltInAdmin: 0, IsDisabled: 0, IsInteractive: 1, Groups: Debugger Users;Administrators
2010-12-01 15:17:37, Info [0x080000] Known folder FOLDERID_Downloads: C:\Documents and Settings\snewman\Downloads, default location: Yes
2010-12-01 15:17:37, Info [0x080000] Known folder CSIDL_INTERNET_CACHE: C:\Documents and Settings\snewman\Local Settings\Temporary Internet Files, default
location: Yes
2010-12-01 15:17:37, Info [0x080000] Known folder CSIDL_COOKIES: C:\Documents and Settings\snewman\Cookies, default location: Yes
2010-12-01 15:17:37, Info [0x080000] Known folder CSIDL_DESKTOP: C:\Documents and Settings\snewman\Desktop, default location: Yes
2010-12-01 15:17:37, Info [0x080000] Known folder CSIDL_DESKTOPDIRECTORY: C:\Documents and Settings\snewman\Desktop, default location: Yes
2010-12-01 15:17:37, Info [0x080000] Known folder CSIDL_FAVORITES: C:\Documents and Settings\snewman\Favorites, default location: Yes
2010-12-01 15:17:37, Info [0x080000] Known folder CSIDL_HISTORY: C:\Documents and Settings\snewman\Local Settings\History, default location: Yes
2010-12-01 15:17:37, Info [0x080000] Known folder CSIDL_MYPICTURES: C:\Documents and Settings\snewman\My Documents\My Pictures, default location: Yes
2010-12-01 15:17:37, Info [0x080000] Known folder CSIDL_MYMUSIC: C:\Documents and Settings\snewman\My Documents\My Music, default location: Yes
2010-12-01 15:17:37, Info [0x080000] Known folder CSIDL_MYVIDEO: C:\Documents and Settings\snewman\My Documents\My Videos, default location: Yes
2010-12-01 15:17:37, Info [0x080000] Known folder CSIDL_PERSONAL: C:\Documents and Settings\snewman\My Documents, default location: Yes
2010-12-01 15:17:37, Info [0x080000] Known folder CSIDL_MYDOCUMENTS: C:\Documents and Settings\snewman\My Documents, default location: Yes
2010-12-01 15:17:37, Info [0x080000] Known folder CSIDL_PROGRAMS: C:\Documents and Settings\snewman\Start Menu\Programs, default location: Yes
2010-12-01 15:17:37, Info [0x080000] Known folder CSIDL_RECENT: C:\Documents and Settings\snewman\Recent, default location: Yes
2010-12-01 15:17:37, Info [0x080000] Known folder CSIDL_SENDTO: C:\Documents and Settings\snewman\SendTo, default location: Yes
2010-12-01 15:17:37, Info [0x080000] Known folder CSIDL_STARTMENU: C:\Documents and Settings\snewman\Start Menu, default location: Yes
2010-12-01 15:17:37, Info [0x080000] Known folder CSIDL_STARTUP: C:\Documents and Settings\snewman\Start Menu\Programs\Startup, default location: Yes
2010-12-01 15:17:37, Info [0x080000] Known folder CSIDL_TEMPLATES: C:\Documents and Settings\snewman\Templates, default location: Yes
2010-12-01 15:17:37, Info [0x0803af] Name: snewman, Domain: NEWDOMAIN, Profile: %SystemDrive%\Documents and Settings\TZ0270, SidString: S-1-5-21-436374069-789336058-682003330-188741,
ID: USER00000004, IsAdmin: 1, IsBuiltInAdmin: 0, IsDisabled: 0, IsInteractive: 1, Groups: Debugger Users;Administrators
NEWDOMAIN\snewman, administrator: Yes, interactive:
Yes, logged on: No, has profile: Yes
NEWDOMAIN\snewman, administrator: Yes, interactive:
Yes, logged on: No, has profile: Yes
2010-12-01 15:17:48, Info [0x0801ee] Catalog user map: added 'NEWDOMAIN\snewman'
2010-12-01 15:20:27, Status [0x000000] Processing File C:\swdis\work\profiles\snewman
2010-12-01 15:20:27, Status [0x000000] Processing File C:\swdis\work\profiles\snewman [epsp.cat]
2010-12-01 15:20:40, Info [0x080000] Catalog optimizations for NEWDOMAIN\snewman: BeginOffset: 1603533, EndOffset: 39084772
Now filtering the scanstate.log for TZ0270:
2010-12-01 15:11:55, Info [0x0803b8] Processing profile: C:\Documents and Settings\TZ0270
2010-12-01 15:17:37, Info [0x0803b8] Processing profile: C:\Documents and Settings\TZ0270
2010-12-01 15:17:37, Info [0x0803e2] Adding indirect mapping from HKCU to <C:\Documents and Settings\TZ0270\NTUSER.DAT> loaded at HKEY_USERS\S-1-5-21-436374069-789336058-682003330-188741
(R/W)
2010-12-01 15:17:37, Info [0x0803e2] Adding indirect mapping from HKCU\Software\Classes to <C:\Documents and Settings\TZ0270\Local Settings\Application
Data\Microsoft\Windows\UsrClass.dat> loaded at HKEY_USERS\S-1-5-21-436374069-789336058-682003330-188741_Classes (R/W)
2010-12-01 15:17:37, Info [0x0803af] Name: snewman, Domain: NEWDOMAIN, Profile: %SystemDrive%\Documents and Settings\TZ0270, SidString: S-1-5-21-436374069-789336058-682003330-188741,
ID: USER00000004, IsAdmin: 1, IsBuiltInAdmin: 0, IsDisabled: 0, IsInteractive: 1, Groups: Debugger Users;Administrators
Then there are a boat load of errors in the scanstate log (here's 2, in this particular log there are 4824):
2010-12-01 15:19:52, Info [0x080000] Error 4317 while gathering object C:\Documents and Settings\TZ0270\Application Data\Microsoft\UProof\CUSTOM.DIC. Shell
application requested ignore
2010-12-01 15:19:52, Status [0x000000] Processing File C:\Documents and Settings\TZ0270\Application Data\Microsoft\UProof [ExcludeDictionaryEN0409.lex]
2010-12-01 15:19:52, Warning [0x080000] Mig::CTransportDataStore::Create: Failed to add intermediate folder for C:\Documents and Settings\TZ0270\Application Data\Microsoft\UProof\ExcludeDictionaryEN0409.lex:
Win32Exception: DoesObjectExist not allowed for a locked context.: The operation identifier is not valid. [0x000010DD] int __thiscall Mig::CMediaManager::DoesObjectExist(class Mig::CUserContext *,struct Mig::IMigLocation *,struct Mig::IMigLocation **,struct
Mig::IMigLocation **)
2010-12-01 15:19:52, Error [0x000000] Read error 4317 for C:\Documents and Settings\TZ0270\Application Data\Microsoft\UProof [ExcludeDictionaryEN0409.lex]. Windows
error 4317 description: The operation identifier is not valid.[gle=0x00000012]
2010-12-01 15:19:53, Info [0x080000] Error 4317 while gathering object C:\Documents and Settings\TZ0270\Application Data\Microsoft\UProof\ExcludeDictionaryEN0409.lex.
Shell application requested ignore
2010-12-01 15:19:53, Status [0x000000] Processing File C:\Documents and Settings\TZ0270\Application Data\Microsoft\UProof [ExcludeDictionaryEN0809.lex]
2010-12-01 15:19:53, Warning [0x080000] Mig::CTransportDataStore::Create: Failed to add intermediate folder for C:\Documents and Settings\TZ0270\Application Data\Microsoft\UProof\ExcludeDictionaryEN0809.lex:
Win32Exception: DoesObjectExist not allowed for a locked context.: The operation identifier is not valid. [0x000010DD] int __thiscall Mig::CMediaManager::DoesObjectExist(class Mig::CUserContext *,struct Mig::IMigLocation *,struct Mig::IMigLocation **,struct
Mig::IMigLocation **)
2010-12-01 15:19:53, Error [0x000000] Read error 4317 for C:\Documents and Settings\TZ0270\Application Data\Microsoft\UProof [ExcludeDictionaryEN0809.lex]. Windows
error 4317 description: The operation identifier is not valid.[gle=0x00000012]
From LOADSTATE.LOG (filtering on S-1-5-21-4016430739-906247392-1194744260-8484)
2010-12-01 16:57:37, Info [0x000000] User NEWDOMAIN\snewman maps to S-1-5-21-4016430739-906247392-1194744260-8484
2010-12-01 16:57:37, Info [0x000000] Adding domain account NEWDOMAIN\snewman (S-1-5-21-4016430739-906247392-1194744260-8484)
2010-12-01 16:57:37, Info [0x0803b2] Adding user S-1-5-21-4016430739-906247392-1194744260-8484, NEWDOMAIN\snewman
2010-12-01 16:57:37, Info [0x0803b3] User S-1-5-21-4016430739-906247392-1194744260-8484, NEWDOMAIN\snewman added successfully
2010-12-01 16:57:37, Info [0x080000] Creating profile for user S-1-5-21-4016430739-906247392-1194744260-8484, NEWDOMAIN\snewman. Using existent SID
2010-12-01 16:57:49, Info [0x0803e2] Adding indirect mapping from HKCU to <C:\Users\snewman\NTUSER.DAT> loaded at HKEY_USERS\S-1-5-21-4016430739-906247392-1194744260-8484
(R/W)
2010-12-01 16:57:52, Info [0x000000] Local Group Membership Mapping: Changing local group for S-1-5-21-4016430739-906247392-1194744260-8484 to be Debugger
Users
2010-12-01 16:57:52, Info [0x0803e2] Adding indirect mapping from HKCU to <C:\Users\snewman\NTUSER.DAT> loaded at HKEY_USERS\S-1-5-21-4016430739-906247392-1194744260-8484
(R/W)
2010-12-01 16:57:52, Info [0x0803e2] Adding indirect mapping from HKCU\Software\Classes to <C:\Users\snewman\AppData\Local\Microsoft\Windows\UsrClass.dat>
loaded at HKEY_USERS\S-1-5-21-4016430739-906247392-1194744260-8484_Classes (R/W)
2010-12-01 16:57:52, Info [0x08040f] Setting SMI registry mappings for user context (HKU\S-1-5-21-4016430739-906247392-1194744260-8484, HKU\S-1-5-21-4016430739-906247392-1194744260-8484_Classes)
2010-12-01 16:58:40, Info [0x0808fe] Plugin {0db12ccb-7cfd-46b6-b4d1-daa6ff0fbcf7}: CscMig: _CSC_MIG_USER_INFORMATION::Log(54):User NEWDOMAIN\snewman (SID
- S-1-5-21-4016430739-906247392-1194744260-8484) ListEntry = 00000000000EF9E8 Index = 0
2010-12-01 16:58:40, Info [0x0808fe] Plugin {0db12ccb-7cfd-46b6-b4d1-daa6ff0fbcf7}: CscMig: CscMigpExtractSidMap(453):Storing SID for NEWDOMAIN\snewman SID:
S-1-5-21-4016430739-906247392-1194744260-8484?
2010-12-01 16:58:50, Info [0x08024c] %MSMIGENV_MSI_InstallerManaged% <-> HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\Managed\S-1-5-21-4016430739-906247392-1194744260-8484
2010-12-01 16:58:50, Info [0x08024c] %MSMIGENV_MSI_InstallerUserData% <-> HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-21-4016430739-906247392-1194744260-8484
2010-12-01 16:58:50, Info [0x08024c] %USERSID% <-> S-1-5-21-4016430739-906247392-1194744260-8484
From LOADSTATE.LOG (filtering on S-1-5-21-436374069-789336058-682003330-188741)
2010-12-01 16:57:37, Info [0x000000] User NEWDOMAIN\snewman maps to S-1-5-21-436374069-789336058-682003330-188741
2010-12-01 16:57:37, Info [0x000000] Adding domain account NEWDOMAIN\snewman (S-1-5-21-436374069-789336058-682003330-188741)
2010-12-01 16:57:37, Info [0x0803b2] Adding user S-1-5-21-436374069-789336058-682003330-188741, NEWDOMAIN\snewman
2010-12-01 16:57:37, Info [0x0803b3] User S-1-5-21-436374069-789336058-682003330-188741, NEWDOMAIN\snewman added successfully
2010-12-01 16:57:49, Info [0x080000] Creating profile for user S-1-5-21-436374069-789336058-682003330-188741, NEWDOMAIN\snewman. Using existent SID
2010-12-01 16:57:51, Info [0x0803e2] Adding indirect mapping from HKCU to <C:\Users\snewman.000\NTUSER.DAT> loaded at HKEY_USERS\S-1-5-21-436374069-789336058-682003330-188741
(R/W)
2010-12-01 16:58:42, Info [0x0803e2] Adding indirect mapping from HKCU to <C:\Users\snewman.000\NTUSER.DAT> loaded at HKEY_USERS\S-1-5-21-436374069-789336058-682003330-188741
(R/W)
2010-12-01 16:58:42, Info [0x0803e2] Adding indirect mapping from HKCU\Software\Classes to <C:\Users\snewman.000\AppData\Local\Microsoft\Windows\UsrClass.dat>
loaded at HKEY_USERS\S-1-5-21-436374069-789336058-682003330-188741_Classes (R/W)
2010-12-01 16:58:42, Info [0x08040f] Setting SMI registry mappings for user context (HKU\S-1-5-21-436374069-789336058-682003330-188741, HKU\S-1-5-21-436374069-789336058-682003330-188741_Classes)
2010-12-01 16:58:42, Info [0x0808fe] Plugin {0db12ccb-7cfd-46b6-b4d1-daa6ff0fbcf7}: CscMig: _CSC_MIG_USER_INFORMATION::Log(54):User NEWDOMAIN\snewman (SID
- S-1-5-21-436374069-789336058-682003330-188741) ListEntry = 000000000019C748 Index = 0
2010-12-01 16:58:42, Info [0x0808fe] Plugin {0db12ccb-7cfd-46b6-b4d1-daa6ff0fbcf7}: CscMig: CscMigpExtractSidMap(453):Storing SID for NEWDOMAIN\snewman SID:
S-1-5-21-436374069-789336058-682003330-188741?
2010-12-01 16:58:46, Info [0x0808fe] Plugin {0db12ccb-7cfd-46b6-b4d1-daa6ff0fbcf7}: CscMig: _CSC_MIG_USER_INFORMATION::Log(54):User NEWDOMAIN\snewman (SID
- S-1-5-21-436374069-789336058-682003330-188741) ListEntry = 00000000003F9428 Index = 0
2010-12-01 16:58:46, Info [0x0808fe] Plugin {0db12ccb-7cfd-46b6-b4d1-daa6ff0fbcf7}: CscMig: CscMigpExtractSidMap(453):Storing SID for NEWDOMAIN\snewman SID:
S-1-5-21-436374069-789336058-682003330-188741?
2010-12-01 16:58:50, Info [0x08024c] %MSMIGENV_MSI_InstallerManaged% <-> HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\Managed\S-1-5-21-436374069-789336058-682003330-188741
2010-12-01 16:58:50, Info [0x08024c] %MSMIGENV_MSI_InstallerUserData% <-> HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-21-436374069-789336058-682003330-188741
2010-12-01 16:58:50, Info [0x08024c] %USERSID% <-> S-1-5-21-436374069-789336058-682003330-188741
2010-12-01 16:58:50, Error [0x000000] Invalid user mapping: NEWDOMAIN\snewman -> S-1-5-21-436374069-789336058-682003330-188741[gle=0x00000006]
You can see, there are two user folders created - C:\Users\snewman and C:\Users\snewman.000. At the end of the process, the user profile is not migrated.
Please advise.
Thanks,
Terence Durning
December 3rd, 2010 3:23pm
Did you add the /md:OldDomain:NewDomain switch to loadstate?
/ Johan
Free Windows Admin Tool Kit Click here and download it now
December 6th, 2010 2:27am
Hi Johan,
Thanks for your reply.
The migration from OLDDOMAIN to NEWDOMAIN occurred years ago, but "OLDDOMAIN\TZ0270" and "NEWDOMAIN\snewman" both still exist and are in use.
I think what I need is for loadstate to not map both SIDs to the NEWDOMAIN account, i.e., instead of:
2010-12-01 16:57:37, Info [0x000000] User NEWDOMAIN\snewman maps to S-1-5-21-4016430739-906247392-1194744260-8484
2010-12-01 16:57:37, Info [0x000000] User NEWDOMAIN\snewman maps to S-1-5-21-436374069-789336058-682003330-188741
it should read:
2010-12-01 16:57:37, Info [0x000000] User NEWDOMAIN\snewman maps to S-1-5-21-4016430739-906247392-1194744260-8484
2010-12-01 16:57:37, Info [0x000000] User OLDDOMAIN\TZ0270 maps to S-1-5-21-436374069-789336058-682003330-188741
Additionally, the 4,824 errors (Read error 4317) occur during the scanstate of the files in "C:\Documents and Settings\TZ0270" and it's associated HKCU.
Thanks,
Terence Durning
December 6th, 2010 11:23am
hmm, I don't know about that one... let me ping some of the USMT folks and see if they have a better answer...
/ Johan
Free Windows Admin Tool Kit Click here and download it now
December 6th, 2010 12:16pm
Hi Johan,
The sIDHistory is definitely the culprit. I had the Active Directory team remove the sIDHistory from another account that was throwing errors. The scanstate completed successfully.
Before sIDHistory was removed:
2010-12-07 11:22:40, Info [0x0803af] Name: cjohnson, Domain: NEWDOMAIN, Profile: %SystemDrive%\Documents and Settings\TZ0864, SidString: S-1-5-21-436374069-789336058-682003330-213332,
ID: USER0000000A, IsAdmin: 1, IsBuiltInAdmin: 0, IsDisabled: 0, IsInteractive: 1, Groups: Debugger Users;Administrators
And after:
2010-12-07 15:23:50, Info [0x0803af] Name: TZ0864, Domain: OLDDOMAIN, Profile: %SystemDrive%\Documents and Settings\TZ0864, SidString: S-1-5-21-436374069-789336058-682003330-213332,
ID: USER0000000A, IsAdmin: 1, IsBuiltInAdmin: 0, IsDisabled: 0, IsInteractive: 1, Groups: Administrators
Additionally, the 3,262 errors (pre-removal of sIDHistory) are no longer there.
Thanks,
Terence Durning
December 8th, 2010 8:41am
Great, and thanks for posting back the solution...
/ Johan
Free Windows Admin Tool Kit Click here and download it now
December 8th, 2010 11:48am
Deleting the sidHistory data of a user is not the recommended solution here. The problem is caused by not translating user profiles with ADMT during computer migration, leaving you with a user that now has multiple profiles. Removing SID history could remove
a user's access to their files, email, databases, applications, etc.
Instead, use USMT /UEL to skip unused stale profiles. Alternatively, you can delete those orphaned profiles with DEPLROF.EXE, SYSDM.CPL, group policy "Delete user profiles older than a specified number of days on system restart", etc.Ned Pyle [MSFT] Enterprise Platforms Support - DS
April 16th, 2011 10:02pm
The /uel switch didn't work for me as both the users profiles show the exact same date and size under System Properties.
It has been a few months since we moved these PCs to the new domain, but I certainly recall translating user profiles with ADMT during the computer migration. The logs are long gone though, so no idea if the process had any errors.
Not sure what the best option is but have about 150 computers like this that need to be upgraded to Windows 7.
Free Windows Admin Tool Kit Click here and download it now
May 20th, 2011 12:44am
I found another solution that didn't involve deleting the SID history. I used a powershell command to delete all the old registry entries from the old domain.
Get-ChildItem "HKLM:SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\" | Select-String -pattern "S-1-5-21-2542228921" | foreach {$_ -replace "HKEY_LOCAL_MACHINE", "HKLM:"} | remove-item
Obviously, you need to change the pattern to match the beginning of the SID of your old domain.
May 20th, 2011 1:55pm