repairing a corrupt xp registry hive
“Windows XP could not start because the following file is missing or corrupt: WINDOWSSYSTEM32CONFIGSYSTEM”
Now thats a message that strikes fear into the hearts of many non-technical users.
It’s rare, but I recently saw 2 systems with this error (just a few days apart).
I can usually fix this using bartPE (or ubcd4win)… I’ll detail how to do it later on.
In this case, bartPE and ubcd4win also wouln’t start (either they would hang, or I’d get a BSOD).
I tried memtest, but found no fault
So I opened up the PC, and eventually fixed the startup problem by moving the RAM to another socket… why didn’t memtest pickup any fault? who knows.
Anyway, to fix the corrupt XP registry hive:
- I start ubcd4win
- Backup the contents of windowssystem32config folder
- Assuming that system restore hasn’t been switched off: I look for the contents of “system volume information_restore{lots of characters}RPXXXsnapshot
- You might need to alter the security settings of “system volume information” so that you can access it.
- There are many RPXXX folders, so just pick one that has a date just before the “crash” occurred.
- Copy all the files (from RPXXX) that start with “_REGISTRY_” to windowssystem32config
- Rename the files that end in “default”, “security”, “software”, “system”, “sam” to default, security, software, system, sam. You probably need to delete the original default, security, etc files first.
- Restart the PC
- You might need to “restore last known good configuration” or XP might perform a disk check
- Breath a sigh of relief.