I have a NTFS partition with Windows XP but it has bad sectors and it can't boot.

It's a SATA drive and the Windows CD can't access it because it's missing it's drivers, I don't have a floppy drive so I can't load drivers through there.

I've tried ntfsfix from Linux but it refuses to do anything. Also tried nftsclone with the --rescue option to at least back up the data but it doesn't work either.

How can I run chkdsk in this case?

7 Answers 7


If you have access to another computer and a CD burner, you can download (legally) a Vista or Windows 7 recovery disk and use this to run CHKDSK. Hopefully Vista or Win 7 would have drivers for your ESATA disk. http://neosmart.net/blog/2008/windows-vista-recovery-disc-download/

  • In the I borrowed a Vista DVD, but among the answers this is easier than building a personalized disk, and since I can still access my Linux partition I wouldn't need to access another computer.
    – solarc
    Oct 1, 2010 at 5:33
  • > you can download (legally) a Vista or Windows 7 recovery disk Really? I would have thought that you can only download the disk corresponding to the version you own (I could swear seeing a notice to that effect somewhere as well).
    – Synetech
    Jul 21, 2012 at 3:34

If you have access to a Vista or Windows 7 installation DVD, boot from it and get a command prompt, then run the command:

chkdsk /r C:

Bad sectors does not always mean they are bad - sometimes they are corrupt and chkdsk will attempt to repair them. If it cannot it will mark the sector as bad so it will not be used by the OS.


Chkdsk may not fix the problem : If the bad sectors are in a file that is required for booting, as your case seems to be. All it will do is flag them as bad, so they will still not be available for boot, in effect destroying your Windows installation.

If you still have access to a functioning computer, see this article:
Install Windows XP on SATA without a Floppy (F6)
which will show you how to integrate the SATA drivers into the Windows boot CD.

One solution is then to Perform a Repair Installation. This will refresh the XP installation without destroying the Windows installation. However, you should be using an XP boot CD that is of the same service-pack level as currently installed. You shouldn't repair, for example, XP SP3 using an XP SP2 boot CD.

If you don't have an XP SP3 boot CD, see how to create it from an older CD in :
How to Slipstream Windows XP Service Pack 3 to Create an Integrated XP Setup Disk with SP 3.

Another solution (and in my opinion the best) is to invest in a commercial disk repair program, which will try to recover the existing contents of the disk, by rereading the bad sectors in various ways, then mapping them to good sectors.

A hard disk with bad sectors can still be resuscitated by using a commercial product such as SpinRite or HDD Regenerator. SpinRite can sometimes work magic, and gives an absolute money-back satisfaction guarantee.


Personally I would try ntfsresize -fi /dev/sdYZ from the ntfsprogs package under Linux.

  • I fixed it before reading this but will give it a try the next time.
    – solarc
    Oct 1, 2010 at 5:38

One time my Windows XP wouldn't boot. When I turned on the computer nothing happened except I got a small error message in the upper left-hand corner on a black screen. I didn't even get a Blue Screen of Death. I tried all the Windows recovery options, from a Recovery Disk to a Windows XP CD and nothing worked.

What worked for me was a program called TESTDISK. Testdisk is FREE recovery software and will run on several operating systems. Using my dad's computer I created a live Linux CD that had testdisk, I used it to repair the BOOT SECTOR and that fixed it, allowing me to boot Windows. Later I ran chkdsk to repair Windows file system.

Using Linux can provide the drivers you need, and Testdisk can repair a Windows partition that won't boot. Windows Repair Installation was mentioned, but that is more for repairing Windows file system (C:\WINDOWS), not a hard drive or boot sector problem. If nothing happens when you turn on the computer, the boot sector is messed up and I don't think a Repair Installation will help, but, it's great for missing Windows files.

Basically, run Testdisk and use it to repair the MFT and the boot sector. Also, if you can't use your CD/DVD drive, you can put Linux on a USB thumb drive. I know it can be done, but I personally don't have any experience with it.

If anyone is interested in TESTDISK, here's a list of Linux distros with testdisk.


If you can't pull the disc and put it in another machine either as a usb drive or a secondary sata drive, you can try booting up using BartPE (windows xp boot disc) and try the built in utilities to access the drive.

  • He can't boot, so can't create a BartPE CD
    – harrymc
    Sep 29, 2010 at 6:20
  • 2
    Doesn't mean a friend can't build it for him, or maybe he has a second system.
    – MaQleod
    Sep 29, 2010 at 6:25
  • BartPE is no longer available "Bart's PE Builder is no longer available. We have to move on! Thanks everyone for all your support throughout the years!!!"
    – brewmanz
    Jul 7, 2016 at 9:31

I used ntfsfix /dev/sdaX under Ubuntu Live, it will force Windows to run chkdsk on the next boot.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.