Tip: Recovering a corrupt config\SYSTEM

Status
Not open for further replies.
D

DelJo63

The symptom is
Missing or corrupt file \windows\system32\config\SYSTEM
edit: or any file in this directory: DEFAULT, SAM, SECURITY, SOFTARE, SYSTEM /edit

this and other files in this location are part of your windows registry:
DEFAULT, SAM, SECURITY, SOFTARE, SYSTEM​

Corruption of any of these files will cause BOOT problems.

Your user files (Music, pictures, Documents) are still present on the HD and if
the corruption can be corrected, you can get your system to boot again.
(if so, you ought to prioritize replicating them to some external media
(eg: other system, thumb drive, or external USB hd) )

If you have ever run NTBackup and completed a system state backup, you can restore
that image.

The first thing you will need is the ability to boot some other media like
your XP install disk. XP is desirable as your HD is (or should be) an NTDS filesystem,
and Win98* will not read or write to it.

When the "Welcome to Setup" screen appears, press R to start the Recovery Console.

Fixing the corrupted file(s) will be to copy some other copy to replace the damaged one.

One copy of these files is located at \windows\repair -- HOWEVER ---
these are incomplete! The are never updated and will only solve the BOOT
issue, not revive your installed programs that are still resident on the HD.
For example, my files at ..\repair are back dated and smaller than the real files
Code:
			\repair		\system32\config
	Security	48k		256k
	SAM		28k		28k
	Software	23,568k		23,368k
	System		7,164k		7,168k
	Default		1,440k		1,5360k

As these files are logically a database, you need to keep them in sync.
Replacing ALL the SYSTEM32\Config registry files:
Code:
cd \windows
xcopy repair\SECURITY system32\config\ /H /R /Y
xcopy repair\SAM      system32\config\ /H /R /Y
xcopy repair\SOFTWARE system32\config\ /H /R /Y
xcopy repair\SYSTEM   system32\config\ /H /R /Y
xcopy repair\DEFAULT  system32\config\ /H /R /Y

The system will now at least boot, so Boot into Safe Mode, using F8

There's a long way to recover the registry, but here we use the normal system
tools to recover using a System Restore Point.

Be sure to login using an Admin account.
get a command prompt (run->cmd)
and run the restore from A Restore Point
C:\Windows\system32\Restore\rstrui.exe​
now WHICH RESTORE POINT?
Certainly NOT one from today NOR any day previous that has been
causing you problems. Pick something a few days back.
You should be aware that the further back you go, the more likely that
changes you intended to make can be lost -- but reinstalling a new program
is far better than losing all your precious files :)

The above is a synopsys of this MS KB article
and steps 2-3 are superceeded by the use of Restore from System Restore Point
 
Nice one jobeard
Can you also do one for Missing or corrupt file \windows\system32\config\Software
 
On a windows 2000 pro machine, my registries SYSTEM file was 5 megabytes. I solved this problem by using jayroos method[1], but his method didn't work completely for me, as Windows 2000's regedt32's "load a hive" option was grayed out for some unknown reason. I could have loaded my Winnt\system32\config\SYSTEM registry file on another computer to check if it was good, but I'm lazy.

Here's what I did:

  1. booted to the windows 2000 recovery console from the w2k cd
  2. Copied Winnt\system32\Config\SYSTEM to SYSTEM.original (jayroos guide says System.bad but I prefer .original)
  3. Copied Winnt\repair\SYSTEM (the default one created at OS Setup) to Winnt\system32\Config\
  4. Booted up windows, got an inaccessible_boot_device error. I solved this (unrelated) problem by disconnecting the zip drive
  5. booted up windows again, correctly
  6. attempted jayroos method but couldn't load SYSTEM.original into the Regedt32 editor
  7. loaded ultimate boot cd for windows[2], still didn't fix anything
  8. rebooted into recovery console
  9. renamed SYSTEM.original to SYSTEM
  10. finally windows booted up correctly

So to boil it down to what's absolutely necessary:

  1. boot to the windows 2000 recovery console from the w2k cd
  2. Copy Winnt\system32\Config\SYSTEM to SYSTEM.original (jayroos guide says System.bad but I prefer .original)
  3. Copy Winnt\repair\SYSTEM (the default one created at OS Setup) to Winnt\system32\Config\SYSTEM
  4. boot up into windows
  5. reboot into recovery console
  6. rename SYSTEM.original to SYSTEM
  7. boot up windows

[1] google 'systemced'
[2] google 'ubcd4win'
 
Status
Not open for further replies.
Back