.DS Store

Summary

In the Apple macOS operating system, .DS_Store is a file that stores custom attributes of its containing folder, such as folder view options, icon positions, and other visual information.[1] The name is an abbreviation of Desktop Services Store,[2] reflecting its purpose. It is created and maintained by the Finder application in every folder, and has functions similar to the file desktop.ini in Microsoft Windows. Starting with a period . character, it is hidden in Finder and many Unix utilities. Its internal structure is proprietary,[3] but has been reverse-engineered.[4] Starting at macOS 10.12 16A238m, Finder will not display .DS_Store files (even with com.apple.finder AppleShowAllFiles YES set).

Apple Desktop Services Store
Filename extension
.DS_Store
Internet media type
application/octet-stream
Magic number\0\0\0\1Bud1\0
Developed byApple Inc.

Purpose and location edit

The file .DS_Store is created in any directory (folder) accessed by the Finder application, even on remote file systems mounted from servers that share files (for example, via Server Message Block (SMB) protocol or the Apple Filing Protocol (AFP)).[5] Remote file systems, however, could be excluded by operating system settings (such as permissions). Although primarily used by the Finder, these files were envisioned as a more general-purpose store of metadata about the display options of folders, such as icon positions and view settings.[2] For example, on Mac OS X 10.4 "Tiger" and later, the ".DS_Store" files contain the Spotlight comments of the folder's files. These comments are also stored in the extended file attributes,[6] but Finder does not read those.[7]

In earlier Apple operating systems, Finder applications created similar files, but at the root of the volume being accessed, including on foreign file systems, collecting all settings for all files on the volume (instead of having separate files for each respective folder).[8]

Problems edit

User complaints prompted Apple to publish means to disable the creation of these files on remotely mounted network file systems.[9] Since macOS High Sierra (10.13), Apple delays the metadata gathering for .DS_Store for folders sorted alphanumerically to improve browsing speed.[10] However, these instructions do not apply to local drives, including USB flash drives, although there are some workarounds.[11] Before Mac OS X 10.5, .DS_Store files were visible on remote filesystems.[12]

.DS_Store files may impose additional burdens on a revision control process, since they are frequently changed and can therefore appear in commits, unless specifically excluded.[13]

.DS_Store files are included in archives, such as ZIP, created by OS X users, along with other hidden files and directories like the AppleDouble ._.[14][15][16]

.DS_Store files have been known to adversely affect copy operations. If multiple files are selected for file transfer, the copy operation will retroactively cancel all progress upon reaching a (duplicate) .DS_Store file, forcing the user to restart the copy operation from the beginning.[17][18]

Some Google Drive users on macOS reported that .DS_Store files were being flagged for copyright violations. Google stated that they had addressed an issue that "impacted a small number of Drive files" to try to prevent this issue from occurring.[19]

See also edit

References edit

  1. ^ "Removing .DS_Store files on Macintosh OS X?". Adobe.com. Adobe Systems. 24 February 2003. Archived from the original on 29 September 2006. Retrieved 29 September 2006.
  2. ^ a b Gourdol, Arno (1 October 2006). "On the origins of .DS_Store". arno.org. Retrieved 1 October 2006.
  3. ^ "File Extension .DS_STORE Information". PC.net. 2007. Retrieved 28 July 2017.
  4. ^ "DS Store File Format". 18 July 2007. Retrieved 16 October 2022.
  5. ^ ".DS_Store". rixstep.com. 21 May 2003. Retrieved 29 September 2006.
  6. ^ Siracusa, John (April 2004). "Mac OS X 10.4 Tiger". Ars Technica. Condé Nast. Archived from the original on 23 May 2013. Retrieved 2013-06-28.
  7. ^ "Ambient Ideas Blog".
  8. ^ "Macintosh: Meaning of the Desktop DB & Desktop DF Files". support.apple.com. Retrieved 6 May 2022.
  9. ^ "Mac OS X v10.4 and later: How to prevent .DS_Store file creation over network connections". Support.Apple.Com. Apple Inc. 24 May 2005. Archived from the original on 14 July 2019. Retrieved 27 July 2012.
  10. ^ "Adjust SMB browsing behavior in macOS High Sierra 10.13 and later". Apple Support. Retrieved 5 January 2020.
  11. ^ "Disable .DS_Store in OS X El Capitan". pixelcog. 27 February 2016.
  12. ^ "Prevent creation of .DS_Store files in network shares". greci.cc. 12 November 2007. Archived from the original on 9 July 2015. Retrieved 12 November 2008.
  13. ^ Nielsen, Spencer (24 December 2011). "Death to .DS_Store". AorenSoftware.com. Retrieved 29 October 2012.
  14. ^ "How to compress folders on a mac without DS_Store files". The Website Dev. 6 January 2018. Archived from the original on 27 August 2018. Retrieved 27 August 2018.
  15. ^ danixd (12 October 2010). "Compressing folders on a mac, without the .DS_Store". Superuser. Stack Exchange. Retrieved 27 August 2018.
  16. ^ Bernard, John (25 May 2016). "Compress without .DS_Store and __MACOSX". Ask Different. Stack Exchange. Retrieved 27 August 2018.
  17. ^ Brandt, Gary (8 September 2012). "Why does DS_Store prevent copying?". discussions.apple.com. Retrieved 21 August 2014.
  18. ^ "ditto(1) Mac OS X Manual Page". OS X Man Pages. Apple Developer. 19 December 2008. Archived from the original on 6 May 2017.
  19. ^ "Google Drive flags macOS '.DS_Store' files for copyright violation". BleepingComputer. Retrieved 22 February 2022.

External links edit

  • Binary format specification from Kaitai
  • A reverse-engineered description of the file format from Mozilla (Mark Mentovai)
    • A more detailed description of the file format (Perl documentation by Mark Mentovai and Wim Lewis)
    • Perl code to decode the .DS_Store format
  • A blog post walking through parsing the .DS_Store file format