Some of you probably know this, but I didn’t!
Windows XP is a stickler for insisting on restarting your PC if you’re trying to CHKDSK with a repair included in the process (e.g. CHKDSK D: /r ). If this is something you’re doing to your local C: drive I can understand this but for external drives, not so much.
So when you want to repair and external drive, plug it in, open a DOS prompt (Start > Run > type cmd) then enter as follows:
chkdsk d: /X /r
(obviously replace d: with the drive letter of your choice)
chkdsk will then unmount your external drive and repair as normal. Once finished you do need to remount the drive again (read: unplug and re-plug).