|
Recover CHK Files
|
Important: Save
yourself some trouble. If you already know the extension of the file(s)
you want to
get back, just rename all your CHK files to the desired extension and
see what works. The programs here are for when you have way too
many CHK files to test or when you have way too many different file
extensions you want to recover.
So what is a CHK file?
Well, any time a program or Windows
crashes, any files that were open are not closed properly. Part of
closing
is writing all the file location information in all the right places.
Without
this info, Windows can't find all the parts of the file. When SCANDISK
or CHKDISK is run, all the parts are identified as "lost file
fragments"
and converted (if you want) into CHK files. Face it. Stuff crashes all
the time. If you only run SCANDISK once a month, you get a month's
worth
of old crash junk. If you were working on (and lost) something
important
just before a crash, you might want to try to recover any data from any
CHK files that exist. On the other hand, if you aren't in a state of
panic
over lost data, just delete any CHK files. A handy tip: Keep your disk
defragmented. That way if you ever do lose it all, the lost file
fragments
will be more likely to be complete files.
File Recovery and Viruses
This is unavoidable. If file is infected and it gets recovered, your antivirus may
complain that the recovery program wrote the virus. Which is true. And really, a
fair percentage of all recoveries are due to a poorly-written virus causing file
system problems. So when the recovery program renames a file from "chk" to "exe"
and your antivirus pops up, please remember that your problem is the recovered file,
not the program that recovered it!
Welcome Competition!
A nice guy named Martin Kratz
wrote a utility to compete with my UnCHK program. Amazingly, he sent me
the source code. So... I compiled it and am offering it here for your
consideration. Pay attention: Read the next paragraph about MSVBM50. Now. I'll wait...
Apparently some ne'er-do-wells are using the normal "file missing" message
from Martin's FileCHK program to scare you into installing something bad. Don't be fooled.
The respected
Virus Total analysis has been giving FileCHK a clean bill of health since 2008.
Both programs need the Visual Basic 5 runtime files.
If you receive
a MSVBM50.dll not found error,
you can get the required files
from Microsoft.
Now you have two open-source CHK file recovery programs to choose from! I'll do a side-by-side comparison:
|
UnCHK
(Eric
Phelps)
|
FileCHK
(Martin
Kratz)
|
Out-of-box supported file types |
JPG PSP PSD GIF ZIP CAB EXE DLL OCX WRI BMP DOC PPT XLS PDF
RTF HTM WAV MID AVI RAR TIF MP3 WPD FPX EPS CLP |
3DS TIF EXE BMP SWF PSD AI GIF PST CAB RAR CHM MID PDF ZIP
HLP MP3
DWG MPG LNK URL HTM JPG TTF MDB MOV QT DOC XLS RMI WAV AVI CDR TXT ASF |
Can add more file types? |
Yes, just drag a good file and drop it on the program (only
applies
if that file type has a standard header). |
No. |
Alters CHK files? |
No. Makes a copy of the CHK file and gives the copy the
correct extension. |
Yes. Renames the original CHK file so it has the correct
extension. |
Recovers any CHK file? |
Yes. Anything with a CHK file extension is checked. This
makes things
more flexible. |
No. Only acts on files named like "FILE####.CHK". This makes
things
safer in case there are legitimate files with CHK extensions. |
Identifies files by file header? |
Yes. Also looks inside some files in an inexact way to try to
discriminate between different types of files that share the same
header.
|
Yes. Also reads inside the file in a more exact way to tell
different
files that use the same header apart. |
Looks inside CHK files to recover cross-linked files? |
Yes (if you choose the "hard disk" option).
|
No.
|
Looks inside CHK files to recover embedded
items?
|
Yes (if you choose the "embedded files"
option).
|
No.
|
Runs fast? |
Fast enough. And it has a percentage done indicator so you'll
know whether you have time for lunch.
|
Yes. You won't believe it. |
Has cool graphical interface? |
Cool? Well... It has an interface. |
No. No way. None at all. Except for the "Done" message when
it finishes. |
Stable? |
It works for me. |
Always. It's too simple to break. |
Selectable directory? |
Yes. You pick what directory CHK files are in and what
directory you
want recovered files to be in. The program itself can be anywhere. |
No. Put the program in the same directory as your CHK files
and run
it. |
False negative or false positive recoveries? |
About a quarter the files it recovers are either mis-named
duplicates (which
can't be opened) or fragments (which you might not be able to open).
But
it allows you to choose scan depth options so you can decide how to
trade off missed files and false detections. |
Might not recover a file fragment and never recovers a
cross-linked
file, but the files it does recover can more likely be opened without
errors. |
The UnCHK program link above (at the top of the comparison table) is
for version 3.
Version 3 was built for
Windows 2000, but might work on computers as old as Windows 95
view the Virus Total report.
Version 2 was built for Windows 95, but
might work on computers as new as NT4
view the Virus Total report.
Version
1 was built for Windows 3.1 and might work on computers as new
as NT4
view the Virus Total report.
I recommend you use the newest version that applies, because
the older versions really needed the fixes and features that are in
later versions!
Other free recovery programs
PC
INSPECTOR File Recovery A generic file
and disk recovery program.
Avira UnErase From the people who also provide the free Avira antivirus
PC
INSPECTOR Smart Recovery Recovers jpg, tif, bmp, gif, crw,
raf, raw, orf, dcr, mrw, nef, x3f, avi, mov, wav, and dss image and
multimedia files from most digital camera removable memory devices.
Zero Assumption
Digital Image Recovery Recovers GIF, JPG, TIF, WAV, MOV, and
CRW. This dedicated image recovery utility was made to recover digital
camera data, so it recovers an
entire drive.... which means use it on a mounted camera or CF/SD card,
not to recover a few CHK files on a normal hard drive!
If you've lost your entire hard drive
and you already tried fixing it with ScanDisk, then UnChk and FileChk
(or something like them) may be your only hope. Once you run scandisk
or
do anything else to a bad drive (like running
a program or copying a file), you make changes to the "File Allocation
Table" (FAT) that helps track where the files are
(were) actually stored. If you lost your entire hard drive, your FAT
probably got damaged by an accident that
killed Windows while it was busy updating the table. If you use
Scandisk, it goes through and builds an entirely new file allocation
table, permanently replacing whatever was left of the previous one.
Which eliminates all hope of every fixing the original FAT.
If all your recovered files only seem to be pieces, it's because your
files are (were) fragmented. All hope is lost. Well... If you have a
viewer that lets you see the good part of a bad file (like you can see
half a picture or hear half a song), then it will take you about one
solid month of work to recover a single file. If you can't see
partial files and you have more than a few fragments in a file, you are
on the wrong side of a big factorial. There will be nothing but
neutrons and black holes in the universe by the time you get anything
recovered. You're better off starting over.
Your only hope is that you were hit by a particular kind of virus...
Maybe a virus made a separate copy of your FAT and hid it in a "bad"
sector of your hard drive. The virus then put a fake FAT in its place.
If the virus suddenly got killed (usually because a newer virus tried
to take its place), then nobody would know where the real FAT was
hidden. If that's what happened, you might be able to use an anti-virus
program to find your missing FAT. A clue would be if ScanDisk or
CHKDISK says you have "bad" sectors on your hard drive. There are also
some dedicated disk recovery programs that are familiar with common
hiding places for FAT tables.
If you ever lose your entire hard drive
again
(and you know it's badly fragmented), turn the computer off, pull out
your bad
hard drive, run out to the store and buy a new hard drive and a
recovery program. Install and format the new hard drive in the computer
and make it the primary drive. Reinstall an operating system on the new
hard drive. Install the recovery program on the new drive. Then install
your bad drive as a slave. Once the recovery program is running, tell
it to try to repair
the FAT and preserve the original file names as much as possible.
If you're
lucky, the recovery program might even be able to fix your bad drive.
If not,
you at least stand a good chance of at least getting your data copied
onto your new drive. By the way, the better recovery programs
(and better computer techs) NEVER write to or change anything on a bad
hard drive unless they are VERY sure they can bring the bad hard drive
100 percent back to normal.
I can't recommend a disk recovery
program. It's not that I won't recommend a
program, but I can't recommend a
program. I have almost no experience with them! Most of what I
know is
based on a vendor's reputations and on what
I've heard.
The first one that comes to mind is Symantec
(Norton Utilities). I also remember "LostAndFound" from PowerQuest, but
I see they've been purchased by Symantec. Maybe you can find someone
(other than me) who downloaded or bought it while it was available.
PowerQuest/Symantec now suggests
Total Recall's VirtualLab.
I tried it and was impressed, but found they wanted about a hundred
dollars for the first gigabyte of recovered data. Ouch! Steve Gibson's SpinRite
disk recovery software has a very good reputation. SpinRite will work
on any file system to recover low-level hard-disk errors. Another great
company is OnTrack. They mainly
do
paid disk recovery, but they also sell programs so you can do your own
disk or file recovery. Sysinternals
is another company with a good reputation. Ask almost any sysadmin, and
you'll find at least one of their tools being used. Sysinternals offers
NTRecover
and RemoteRecover
for limited transfer of NTFS files from a bad computer. Sysinternals
gives most of their utilities away free, but the unlimited recovery
versions of their software do require you to spend something! Finally,
there's RunTime, a company I
only know of because of a recommendation. RunTime has several disk
recovery programs. The big reason I include it here is that they
support (and have links to and from) Bart Lagerweij's PE Builder
-- a method of creating a bootable CDROM to host your recovery
programs. The link from Bart's site to RunTime really raises RunTime's
credibility. Having a bootable CDROM around in case of problems is such
a great idea. And being able to customize the CD to include the
programs you want makes it an even better idea!
My personal experience with disk recovery was when I managed to wipe a
20GB disk (by foolishly
installing and uninstalling a FAT disk encryption program). I had a
feeling all the data was there, but that the FAT table was bad: Windows
2000 wouldn't see the drive, and the disk manager showed it existed
with an unknown partition type. I tried Active Partition Recovery,
and while it was a little awkward, it did convert my hard disk from the
inappropriate FAT12 into the correct FAT32, thereby recovering the hard
drive. That set me back about 40 bucks, but I had darned little choice
-- the disk that got lost was the one I had all my disk recovery
software on. No backups, of course!
I searched PC Magazine for software reviews and found
this page:
http://www.pcmag.com/category2/0,4148,4834,00.asp
I searched Google with words like "file disk recovery data
download" and I was shocked to see how many disk recovery programs are
out there! Here's a few in no particular order and with no
recommendations. Most offer a free preview version that will show you
the data they can recover (after you pay for the full version):
http://www.stellarinfo.com/
http://www.jufsoft.com/badcopy/
http://www.z-a-recovery.com/
http://mediarecover.com
http://biatchux.dmzs.com/
http://www.ntfs.com/products.htm
http://www.recovermyfiles.com/
http://www.bitmart.net/
http://www.wrinx.com/products/recover/
http://www.r-undelete.com/
http://www.finalrecovery.com/
http://www.softwareshelf.com/default.asp
http://www.downloadfreetrial.com/utilities/file_&_disk_recovery.html
MP3 Files
Virtually everybody I know who's lost a bunch of MP3 files knows which
files are the MP3 files they've lost. Really, you don't need either of
the above UnCHK or FileCHK programs! Just rename the files so they have
an MP3 file extension. Then see which ones actually play! The next
problem is how to rename all the MP3
files by song title and/or artist. Luckily, there are several perfectly
good MP3 ID3 utilities out there that can automate the renaming task.
You can search the web and find several, but my favorite software site
is SourceForge (because like the UnCHK program, all their software is
free and open-source). SourceForge has the following Windows MP3 ID3
projects:
http://massid3lib.sourceforge.net/
http://entagged.sourceforge.net/
http://mp3bookhelper.sourceforge.net/
<>
Martin's Explanation on FAT and Filenames
Filenames are contained in
ordinary files with the DIR attribute set, which DOS and Windows
recognize as directories / folders. There you find for each file
contained in that directory: DOS 8.3 file name in ASCII, Win Long file
name in Unicode, file size, Create/Modify/Last Access Date, attributes
(such as ReadOnly, Hidden, Archive, System, and DIR [meaning actually a
subdirectory, not a file]) - and the disc sector cluster number of the
file's first fragment.
With the latter info, the OS goes
to the FAT to find out the cluster numbers of all subsequent fragments
- that's all a FAT does. It describes clusters - whether they're free,
bad, or used.
It's possible to use some sector-level
disc editor to search lost directories for files with 1st cluster
numbers matching the1st cluster number of a given FILE####.CHK, but
that that would probably take weeks (it has to be done manually) and
you can totally forget it if the disc in question is your C: drive.
There are FAT-16 and FAT-32 file
systems. FAT-16 FAT entries are simply 2-byte unsigned integers and
hence can hold values of up to 2^16-1 = 65535 for each cluster. That's
why we have clusters - on discs having more sectors than that, Gates
had to lump subsequent sectors together in clusters to scale down the
numeric values. If a cluster is used, the FAT entry of that cluster
gives the number of the cluster where the next file fragment sits, or
some special value if the cluster has the last fragment of a file.
However, cluster sizes in the
MByte range would be a waste of disc space because of slack. Imagine a
300-byte Iexplorer favorite taking up 1MByte on a 65-GByte disc because
it has to combine 2048 512-Byte sectors into 1 cluster in order not to
have more than 65535 clusters. So Gates came up with FAT-32 - to get
cluster sizes back down to at least tens of kBytes. By the way, that's
why "file size" and "size on disk" are different ballgames (last
fragments of files not filling up their entire clusters), and that
(among other things) is also why Gates should be serving >=10 yrs in
a boot camp for not combining all favorites in a single bookmark file,
like Netscape does (at least he combined all those pesky WIN3.11 INI
files into SYSTEM.DAT and USER.DAT).
After reading Martin's explanation, you may see how after CHKDISK
or SCANDISK "fixes" your hard drive, NEITHER of our two recovery
programs will get your original file names back. Why? Because both our
programs are ignorant of any recovered directory files that might
contain the original names. We both treat a recovered directory
file as just another file.
Lost? Look at the site map.
Bad links? Questions? Send me mail.