Link to home
Start Free TrialLog in
Avatar of dhickey
dhickey

asked on

Ntoskrnl.exe file is missing or corrupt .....

Hi Team,

I hope you can help me with this, I had this problem awhile back but I corrected it by simply formatting the drive which is just not feasable this time.

History: I was ripping a DVD using SmartRipper when I started to think why the DVD Speed is so slow. 1x 2x max. the DVD drive is 16X max. SO i read up a little and it looked like I was not using the ASPI drivers which would dramitally increase the performance of the ripper and drive.

So i installed ASPI checker from http://www.doom9.org/Soft21/SupportUtils/aspichk.rar

ASPI checker tells that the drivers were not installed properly so I installed Force ASPI fromhttp://www.doom9.org/Soft21/SupportUtils/forceaspi17.rar.

Ok, After the install of ForceASPI i rebooted .. No error on reboot. So i checked the ASPI install with ASPI Checker but still the same message about the drivers not installed properly.

So, I ran ForceASPI again but this time ran a .bat file that automatically dumps the previous ASPI .sys .ini files and 1 .exe file called wowpow.exe (i think). Anyways i ran the install.bat again and rebooted when prompted and was then shortly thereafter met with the pending black box of doom . And the message read as follows

Windows could not start because the following file is missing or corrupt.

<windows root>\system32\ntoskrnl.exe

Please reinstall a copy of the above file.

What im looking for is a step by step follow through of how to extract a good copy of this file back into the system32 directory. I do support myself but for handheld devices. Im a little weary of the DOS command.

Your help would be greatly appreciated, I have no idea what to rate this question as this is my first post.

Thanks
dhickey
Avatar of LeafsFan
LeafsFan

dhickey,

Hoping this page sheds some insight for you:

http://www.jsiinc.com/SUBF/TIP2700/rh2745.htm

-BNS
you MUST check your computer for a virus.  This sounds like symptoms of a virus infection.
Avatar of dhickey

ASKER

Hi LeafsFan and Dimitri.

I appreciate both of your answers and I plan on applying both when I reach home tonight. I apologize I should have mentioned that I am using WinXP, however I should be able to modify the boot.ini file in the same manner. Does anyone know of a virus utility i can run in DOS. I will let you know how it turns out.

Thanks
ASKER CERTIFIED SOLUTION
Avatar of SunBow
SunBow
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
what os version? windows 2000,nt5,xp?

let me know and ill tell you how to restore the file.

thanks,

Scolis
Avatar of dhickey

ASKER

Before i get started on my little adventure tonight I wanted to answer Scolis question. I am using XP SP1. So thanks everyone for your answers I let you know how things work out.

dhickey
Avatar of dhickey

ASKER

Before i get started on my little adventure tonight I wanted to answer Scolis question. I am using XP SP1. So thanks everyone for your answers I let you know how things work out.

dhickey
Avatar of dhickey

ASKER

Well I booted the recovery console from the DOS install it asked which OS to log into I chose C:Windows. Rebooted the system, OS Selection came up, chose XP and all was good. I cant thank you enough.

dhickey
Good deal.
Thanx.
                    Always nice to know that those tools work (validation).
What happens though if you did have the windows xp cd to do the repairs what happens then, i have the same problem but i do not have the xp cd, is there anything that i can do.
See Microsoft Knowledge Base 314477

I run Windows 2000 Advanced Server and my server hanged yesterday. When I restarted, I got the error "Windows could not start cause of the following file is missing or corrupt"

<Windows 2000 root >\System32\ntoskrnl.exe reinstall
\Winnt\System32\c-437.nls

Please advice.

Regards,

Muteti
Well as someone else said an up to date virus scanner is a must! I have had this problem more than once. If you have the windows cd boot into the recovery console and you will find ntoskrnl.ex_ in the I386 directory. This file needs to be expanded using the "expand" command ,, sorry im not exactly sure of the syntax at the moment but you can type expand /? to see how. As far as why this happened I personal had a virus called w32.pinfil or something like that. It spread to my other drives and was a pain to get rid of. I had to boot in safe mode and use norton. Although norton only quantined the file because it said access denied so I deleted them in the RC. The win32 virus likes to mess with exe extentions so it may have wondered around to ntoskrnl.exe. It did me 3 times untill I got a virus scanner.

~BmW
O I also wanted to metion you can use windows sfc (system file checker) to check if your system files have been altered since your last install or service pack upgrade. BUT! keep in mind any applications you did not install using the <Add New Programs> button in <Control Panel/Add and Remove Programs> may have to be reinstalled. This is because many applications override system dll files so they can work. Much like win98 when it asked if u wanted to copy a file that was older then the existing. (Based on the time stamp I do beavle) So if u want to try it type sfc /scannow in run. OK im done now : o )

~BmW
Ok im sorry to keep posting but I keep discovering new knowlege that may be helpfull to you guys. I am tring to Dual boot linux and windows 2000 but usiing the windows 2000s ntloader well i have to make a fat parition that both can read well i can`t mess with my 10gb (partiton magic won`t work for some reason) so i decided to change the jumpers to boot the 3gb (my other drive that was primary slave) first. I then copyed the required files from my 10gb to make it boot. It booted but when I selected an os i got the missing or corrupt ntoskrnl.exe error. So I remebered the boot.ini file tells the system were to find windows according to drives and were there located so i edited it. below is the old setup:
     [boot loader]
     timeout=10
     default=multi(0)disk(0)rdisk(0)partition(2)\WINNT
     [operating systems]
     multi(0)disk(0)rdisk(0)partition(2)\WINNT="(D:) 2000 Datacenter Server" /fastdetect
multi(0)disk(0)rdisk(0)partition(1)\WINNT="(C:)2000 Datacenter server" /fastdetect

This is the new:
[boot loader]
timeout=10
default=multi(0)disk(0)rdisk(1)partition(2)\WINNT
[operating systems]
multi(0)disk(0)rdisk(1)partition(2)\WINNT="(D:) 2000 Datacenter Server(3gb hd as Master)" /fastdetect
multi(0)disk(0)rdisk(1)partition(1)\WINNT="(E:)2000 Datacenter server(3gb hd as Master)"

As you can see the value for rdisk is now 1  the first 3 () start counting from 0 and the last starts from 1. (schools good for something beavle it or not)

So to sum all that up you may have an incorrect boot.ini file thats pointing to no mans land causeing that error. Why it doesn`t just say that I will never know.

~BmW
we have tried even debug and reinstall windows xp but no help and its problem with the HDD ... as even if u debug and reinstall windows .. it will give errors and at last u need to replace the HDD.
if u have Seagate HDD .. u can download the tool from
www.seagate.com/support/seatools/index.html

or
Maxtor or Quantum
www.maxtor.com/en/support/downloads/files/powermax.exe

or
Samsung
www.samsungelectronics.com/hdd/support/downloads/utilities_02.html

Hope this will Help

Thanx
I've got the same error just today after udpating the dat files to my virus scan program. Gotten after the reboot to finish the installation. Can't get it to do the restore thing, Can't get it to boot to the installation cd. Can't get it to do much of anything except tell me I need to replace the file. Geezz. I need the dos commands to copy that file from the Windows XP Professional installation cd. I don't see any other way to fix this other than reformat and that's something I'd rather avoid.
Fear is your worst enemy.  I have solved this on several machines, although when complete, the process is fuzzy (ususlly late at night).  Start with a virus scan.  Use a W98 boot disk and setup the scan on a CD.  On my W2K Computer, I use McAfee.  Go to program files/common Files/Network Assoc./Virusscan Engine/4.0xx and copy all the current files to the CD.
On XP, install the Recovery Console from the WXP CD. Read Q314477 and Q305595, 307654, 291980.

Go carefully, take notes!  Next I used "Fixmbr" in recovery console. Try a restart here, if it fails, then continue.  Then used "Bootcfg"  as described in 291980.  

I am fuzzy after this point.  Good Luck
O  sorry the Scan is run from a cmd prompt.  "Scan /adl /clean /all"

See the Mcafee web site, look for "Scan from Dos"
Great suggestion only I run Mcafee virus scan 6.01xxwhatever.I did fineally remove the hdd from this machine (the one having the problem) and put it on the other as a slave, run the vscan from there. Came out clean so I simply copied the Ntoskrnl.exe  file from that hdd to this one. No problems. Again, I do appreciate the help.
I'm the serious-problem-support person for a network of about 5000 machines, and I've seen that error many times.  In my experience, despite what the error message and all of the Microsoft Knowledge Base articles say, the problem is not with the NTOSKRNL.EXE file nor BOOT.INI.

I've seen a few causes of this error message:

-- Under Windows NT, the boot partition is limited to about 8 GB.  If it's larger, and NTOSKRNL.EXE is upgraded, it can be put in a different position on the disk past the 8 GB barrier, causing this boot failure.  I'm not sure if that's an issue under Windows 2000 or not, but I suspect not.

-- The System Registry is corrupted.  Load the disk as a secondary disk on another machine.  Run REGEDT32.EXE and Load Hive of <secondary>\Windows\System32\Config\system, and if it gives an error, then that's your issue.  Try the same with the Software registry hive as well.  Fixing a registry corruption is another issue, however.

-- There is file system corruption causing problems accessing the system registry.  Again, load the disk as a secondary and do a CHKDSK /F on it.  The few times I've hit this case, it's been able to fix the problem with no data loss.

Hope that helps!


Hi, a friend of mine is having this problem, and cant seem to figure out how to solve it.
When he starts his pc up (running win xp home), he gets this same message:

Windows could not start because the following file is missing or corrupt.

<windows root>\system32\ntoskrnl.exe

Please reinstall a copy of the above file.

Have read all comments etc on this, and the  m/s knowledgebase, however, his computer wont let him choose boot from cd rom from the startup option obtained by holding f8, so cannot run win recovery. any ideas?
Thanks
Modify the BIOS so the first boot device is the CD and the 2nd is Floppy and 3rd is HDD.  This will make machine boot from CD.

Make sure the Boot.ini file is OK as described above.

Make sure the file (Ntoskrnl.exe) is in root directory.
Can get it from the CD using Recovery Console and the EXPAND command.
See MS Knowledge Base for How to's on Recovery Console.
Also search for file (Ntoskrnl.exe) on KB.
Simple solution:

Boot from the OS CD-Rom. Install a new version of Windows, but make sure you install it in a different folder then the original one (f.e. wintmp)
Boot that newly installed version of WIndows
Update it with teh same service pack and patch level of your original system
When all is done, copy the file ntoskernel.exe back to the original installation folder
reboot system, select the right entry in boot.ini and off you go.

You can delete the temp install later.
cannot access the bios setup to alter boot order unfortunately.
and as i say, it will not let him boot from ANY CD. so cannot install a new copy of XP.
Thanks anyway guys. Am going round to see if i can sort it out for him later. any other suggestions would be appreciated.

Thanks

Scott
Too Much stuff to read.
A good dos scanner is SOPHOS@!!!!
I don't know how late this is but it is the best virus scanner I have found.
OK, it's midnight and I'm knee deep in the gore.  Similar problem as already logged above - an XP Pro that suddenly won't boot.  It happened once before about a month ago and I was successful at that time running the Recovery Console and rebulding the boot.ini file.  Am currently running a Hitachi disk drive checker to check the hardware (just finished - no errors) but I suspect that I have file corruption that escapes the Recovery Console processes at this point.  While in the Console, I also ran chkdsk /p and let it do it's thing.  No fix.   I've re-extracted the offending files that I'm warned about - ntoskrnl.exe, hal.dll, KDCOM.dll, deleted the boot.ini and rebuilt a new one, have only 1 OS to choose from, still it hangs at bootup with the same message:  

Windows could not start because of an error in the software.  
Please report this problem as :
load needed DLLs for kernel.
Please contact your support person to report this problem

I then tried to to a Repair install of XP Pro from the CD.  It finds the original install, I select it for Repair, it does it's disk check and then says to reboot.  I let it reboot and it never comes back to the install CD - just back to the above message.

Any other suggestions out there?

I'm feeling like I have to do a clean install but I'd like to rename or move the Documents and Settings folder so I don't lose the settings and files for 4 users on this machine.   The Recovery Console doesn't let you do that - so how do I go about at least renaming it so I can copy it back later?   Some little DOS boot diskette?  Is this my only recourse?

Print the MS KB article 330184

Follow Resolution steps 1 to 6

Then use the Attrib command  "ATTRIB -H -R -S C:Boot.ini"  NO QUOTES!

(I had to use it with only one attribute at a time, ie "ATTRIB -H c:boot.ini", etc.)

Then:

 del c:boot.ini
bootcfg /rebuild
fixboot

Someplace it here the system will ask for the "load identifier".  Enter:   "Windows XP Home"
the name of the OS

and the second "enter OS load options"    enter:   "/fastdetect"

Exit Recovery console.
Reboot.
Just wanted to add my fix in case it can help someone else...

Symptoms:
1. Win 2K SP4 getting ntoskrnl.exe file missing or corrupt at boot up.
2. When going into the Recovery Console, it does NOT ask for me to log into an instance of windows (ie. C:\WINNT), but it DOES give me a C: prompt.
3. When doing a DIR command at the C: prompt, there is no WINNT directory.
4. Attempting to repair with or without an Emergency Repair Disk (ERD) tells me that it cannot find a copy of Windows on the PC (in this case a Dell Precision M40 laptop)

Fix:
1. From the C: prompt of the RC, I did a CHKDSK.
2. It "found" 3 "missing" directories and stuck them inside a FOUND.000 directory. They were DIR0000.chk, DIR0001.chk and DIR0002.chk.
3. Upon inspecting their contents, it turned out they were the WINNT, SYSTEM32 and CONFIG directories.
4. I put the laptop harddrive into a working PC as a secondary drive (you need to use a $5 pinout converter), renamed and moved the directories to their proper locations (CONFIG goes inside SYSTEM32 which goes inside WINNT which is at the root - in my case, at least), performed a SCANDISK (it found 48k of bad sectors), shutdown the PC, put the laptop drive back in the laptop and everything came up fine.
5. I then backed up all my necessary files and promptly bought a new laptop!
Here is one for history books.....and Should shed some light on this problem from the Server Side

Generic Server with 2 serperate SCSI cards (Adaptec 7902 and LSI MegaRaid).  The Adaptec has 2 36GB drives on it.  I did a fresh install of Win2K3 only loading the Adaptec Driver during setup.  It finds the drives and I create a partition  and format.  All is good so far....

After setup finishs copying files it wants to reboot and run the install from Disk right....well that would normally be the case....

After the  reboot we get....

Windows could not start because the following file is missing or corrupt.

<windows root>\system32\ntoskrnl.exe

Please reinstall a copy of the above file.

So I reinstall.....3 times....thinking its something to do with the SCSI controller.   Turns out that after booting into the Recovery Console (thx for the advice SUNBOW) and doing a TYPE BOOT.INI for some reason Windows has decided to put the following info...

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(1)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(1)partition(1)\WINDOWS="Windows Server 2003, Enterprise" /fastdetect

Not sure why....so I manually made a BOOT.INI (may be a better way than this...I don't know) specifiing that the RDISK(1) should really be RDISK(0) and copied it onto the ROOT partition of the server in question.

Rebooted and Setup continues like it should....

Mabye this is just an isolated incident but the BOOT.INI is definately something you should consider!
If you can get there... try Q314477 off Microsoft Support site. If you have a Winxp install cd, you can repair.  They (those above) are correct in referrring to fix the boot.ini. there are several methods outlined in the Microsoft document.

If you have Symantec NAV on a machine, you can create bootable floppies (3 or 4) for removing any virus  as long as your definitions are up to date. That is located under the 'nav install directory'/support/edisk .. run the NED.exe . This will put the images onto floppies for you. As far as the drive assignment config in the boot.ini...I think asmccullough above is correct. Kind of like what I had to do when trying to ghost image a Dell GX280 with the SATA drive (combination mode..duh). I had to change the rdisk
i dont hace the xp cd or start up floppy