I have an external hard drive that I'd like to use with both Mac and Windows. I want to avoid the ._ file issue (see Removing ._ Files from Non-Mac OS File System In Dropbox)

What filesystem can I format the HD to that supports extended file attributes (and thus avoid the ._ files) and is compatible with both Mac and Windows without use of additional drivers or whatever?

I know there are a ton of questions about filesystems for sharing among Mac/PC. I specifically want to know which are compatible but additionally support extended file attributes.


  • Why is linux among your tags? Do you also need compatibility with this? – AFH Mar 1 '18 at 16:30
  • You can disable the _ files for the usb, google for "DSDontWriteUSBStores" for details. Why you need extended attribs? – uDev Mar 1 '18 at 18:07
  • @uDev I don't know if I need them. I definitely don't want them, at least for this drive. – zundi Mar 1 '18 at 20:30
  • @AFH You're right. Removed the linux tag. – zundi Mar 1 '18 at 20:31
  • You should look at this link. – AFH Mar 1 '18 at 21:10

Nothing meets all your criteria. The only filesystems macOS reads and writes out of the box without doing the ._ AppleDouble files are the Apple-proprietary HFS+ and APFS filesystem families. Windows does not read and write either of those filesystems out of the box.


The macOS operating system includes the dot_clean command, which can be used to remove the dot files from a FAT32 or ExFAT formatted drive partition. I consider the work needed to periodically run this command is about the same as emptying the trash.

For example, if my external drive is named MYEXTUSB, then I could use the command shown below to remove the dot files.

dot_clean /Volumes/MYEXTUSB  


The dot_clean man page from macOS 10.13.3 (High Sierra) is given below.

DOT_CLEAN(1)              BSD General Commands Manual             DOT_CLEAN(1)

     dot_clean -- Merge ._* files with corresponding native files.

     dot_clean [-fmnsv] [--keep=[mostrecent|dotbar|native]] [dir ...]

     For each dir, dot_clean recursively merges all ._* files with their cor-
     responding native files according to the rules specified with the given
     arguments.  By default, if there is an attribute on the native file that
     is also present in the ._ file, the most recent attribute will be used.

     If no operands are given, a usage message is output.  If more than one
     directory is given, directories are merged in the order in which they are

     -f      Flat merge.  Do not recursively merge all directories in the
             given dir.  This is off by default.

     -h      Help. Prints verbose usage message.

     -m      Always delete dot underbar files.

     -n      Delete dot underbar file if there is no matching native file.

     -s      Follow symbolic links.  This will follow symbolic dot underbar
             files when they are found.

     -v      Print verbose output.

             The default option.  If an attribute is associated with a data
             fork, use that.  Otherwise, use information stored in the Apple-
             Double file.  Note that the native fork's data is preferred even
             if the data in the AppleDouble file is newer.

             Always use information stored in the AppleDouble file, replacing
             any extended attributes associated with the native file.

             Always use the information associated with the data fork, ignor-
             ing any AppleDouble files.

     The following is how to do an dot_clean merge on the mounted volume test,
     always using the dot underbar information.

           dot_clean --keep=dotbar /Volumes/test

     The dot_clean utility exits 0 on success, and >0 if an error occurs.

     None known.

BSD                              Sept 27, 2012                             BSD
  • The man page says dot_clean recursively merges all ._* files with their corresponding native files. Doesn't this imply that the original file would be modified? Not sure that's what I want. – zundi Mar 3 '18 at 21:39
  • If the external drive is FAT32 or ExFAT formatted, then the information stored in the ._* files can not be merged. Instead, the ._* files are deleted. I guess this is not clearly stated in the man page. – David Anderson Mar 3 '18 at 22:33
  • Would these *_ files be generated again later? – zundi Mar 4 '18 at 22:50

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.