fsck.fat - check and repair MS-DOS filesystems


   fsck.fat [OPTIONS] DEVICE


   fsck.fat  verifies the consistency of MS-DOS filesystems and optionally
   tries to repair them.

   The following filesystem problems can be corrected (in this order):

   *   FAT contains invalid cluster numbers.  Cluster is changed to EOF.

   *   File's cluster chain contains a loop.  The loop is broken.

   *   Bad clusters (read errors).  The clusters are marked bad  and  they
       are removed from files owning them.  This check is optional.

   *   Directories  with a large number of bad entries (probably corrupt).
       The directory can be deleted.

   *   Files . and  ..  are  non-directories.   They  can  be  deleted  or

   *   Directories . and .. in root directory.  They are deleted.

   *   Bad filenames.  They can be renamed.

   *   Duplicate directory entries.  They can be deleted or renamed.

   *   Directories with non-zero size field.  Size is set to zero.

   *   Directory  . does not point to parent directory.  The start pointer
       is adjusted.

   *   Directory .. does not point to parent  of  parent  directory.   The
       start pointer is adjusted.

   *   Start cluster number of a file is invalid.  The file is truncated.

   *   File contains bad or free clusters.  The file is truncated.

   *   File's  cluster  chain is longer than indicated by the size fields.
       The file is truncated.

   *   Two or more files share the same cluster(s).  All but  one  of  the
       files  are  truncated.   If the file being truncated is a directory
       file that has already been read, the filesystem check is  restarted
       after truncation.

   *   File's  cluster chain is shorter than indicated by the size fields.
       The file is truncated.

   *   Clusters are marked as used but are not owned by a file.  They  are
       marked as free.

   Additionally, the following problems are detected, but not repaired:

   *   Invalid parameters in boot sector

   *   Absence of . and .. entries in non-root directories

   When fsck.fat checks a filesystem, it accumulates all changes in memory
   and performs them only after all checks  are  complete.   This  can  be
   disabled with the -w option.


   -a  Automatically  repair  the  filesystem.   No  user  intervention is
       necessary.  Whenever there is more  than  one  method  to  solve  a
       problem, the least destructive approach is used.

   -A  Use  Atari  variation of the MS-DOS filesystem.  This is default if
       fsck.fat is run on an Atari,  then  this  option  turns  off  Atari
       format.   There  are  some  minor differences in Atari format: Some
       boot sector fields are  interpreted  slightly  different,  and  the
       special  FAT  entries  for  end-of-file  and  bad  cluster  can  be
       different.  Under MS-DOS 0xfff8 is used for EOF and  Atari  employs
       0xffff  by  default,  but  both  systems  recognize all values from
       0xfff8...0xffff as end-of-file.  MS-DOS uses only  0xfff7  for  bad
       clusters,  where  on  Atari  values  0xfff0...0xfff7  are  for this
       purpose (but the standard value is still 0xfff7).

   -b  Make read-only boot sector check.

   -c PAGE
       Use DOS codepage PAGE to  decode  short  file  names.   By  default
       codepage 437 is used.

   -d PATH
       Delete  the  specified  file.  If more than one file with that name
       exist, the first one is deleted.  This option  can  be  given  more
       than once.

   -f  Salvage  unused  cluster  chains  to  files.   By  default,  unused
       clusters are added to the free disk space except in auto mode (-a).

   -l  List path names of files being processed.

   -n  No-operation mode: non-interactively check for  errors,  but  don't
       write anything to the filesystem.

   -p  Same as -a, for compatibility with other *fsck.

   -r  Interactively  repair the filesystem.  The user is asked for advice
       whenever there is more than one approach to fix  an  inconsistency.
       This  is  the  default  mode  and  the  option is only retained for
       backwards compatibility.

   -t  Mark unreadable clusters as bad.

   -u PATH
       Try to undelete the specified file.  fsck.fat tries to  allocate  a
       chain  of  contiguous unallocated clusters beginning with the start
       cluster of the undeleted file.  This option can be given more  than

   -v  Verbose mode.  Generates slightly more output.

   -V  Perform  a  verification  pass.   The  filesystem check is repeated
       after the first run.  The  second  pass  should  never  report  any
       fixable  errors.   It  may  take considerably longer than the first
       pass, because the first  pass  may  have  generated  long  list  of
       modifications that have to be scanned for each disk read.

   -w  Write changes to disk immediately.

   -y  Same as -a (automatically repair filesystem) for compatibility with
       other fsck tools.


   0   No recoverable errors have been detected.

   1   Recoverable errors have been detected or fsck.fat has discovered an
       internal inconsistency.

   2   Usage error.  fsck.fat did not access the filesystem.


   fsck0000.rec, fsck0001.rec, ...
       When   recovering  from  a  corrupted  filesystem,  fsck.fat  dumps
       recovered data into files named 'fsckNNNN.rec'  in  the  top  level
       directory of the filesystem.


   Does  not  create  .  and  ..  files  where necessary.  Does not remove
   entirely empty directories.   Should  give  more  diagnostic  messages.
   Undeleting files should use a more sophisticated algorithm.




   The  home  for  the  dosfstools  project  is  its  GitHub  project page


   dosfstools were  written  by  Werner  Almesberger  werner.almesberger@,  Roman Hodek,
   and others.  The current maintainer is Andreas Bombe


Personal Opportunity - Free software gives you access to billions of dollars of software at no cost. Use this software for your business, personal use or to develop a profitable skill. Access to source code provides access to a level of capabilities/information that companies protect though copyrights. Open source is a core component of the Internet and it is available to you. Leverage the billions of dollars in resources and capabilities to build a career, establish a business or change the world. The potential is endless for those who understand the opportunity.

Business Opportunity - Goldman Sachs, IBM and countless large corporations are leveraging open source to reduce costs, develop products and increase their bottom lines. Learn what these companies know about open source and how open source can give you the advantage.

Free Software

Free Software provides computer programs and capabilities at no cost but more importantly, it provides the freedom to run, edit, contribute to, and share the software. The importance of free software is a matter of access, not price. Software at no cost is a benefit but ownership rights to the software and source code is far more significant.

Free Office Software - The Libre Office suite provides top desktop productivity tools for free. This includes, a word processor, spreadsheet, presentation engine, drawing and flowcharting, database and math applications. Libre Office is available for Linux or Windows.

Free Books

The Free Books Library is a collection of thousands of the most popular public domain books in an online readable format. The collection includes great classical literature and more recent works where the U.S. copyright has expired. These books are yours to read and use without restrictions.

Source Code - Want to change a program or know how it works? Open Source provides the source code for its programs so that anyone can use, modify or learn how to write those programs themselves. Visit the GNU source code repositories to download the source.


Study at Harvard, Stanford or MIT - Open edX provides free online courses from Harvard, MIT, Columbia, UC Berkeley and other top Universities. Hundreds of courses for almost all major subjects and course levels. Open edx also offers some paid courses and selected certifications.

Linux Manual Pages - A man or manual page is a form of software documentation found on Linux/Unix operating systems. Topics covered include computer programs (including library and system calls), formal standards and conventions, and even abstract concepts.