Tip: Recovering a corrupt config\SYSTEM

By jobeard
Feb 6, 2008
  1. 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:

    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
    			\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:
    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

    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
  2. kimsland

    kimsland Ex-TechSpotter Posts: 14,523

    Nice one jobeard
    Can you also do one for Missing or corrupt file \windows\system32\config\Software
  3. jobeard

    jobeard TS Ambassador Topic Starter Posts: 11,123   +982

    this applies to ALL FILES in system32\config :)
  4. m1t0s1s

    m1t0s1s TS Rookie

    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'
Topic Status:
Not open for further replies.

Similar Topics

Add your comment to this article

You need to be a member to leave a comment. Join thousands of tech enthusiasts and participate.
TechSpot Account You may also...