Quick tip for Synology users with a Mac

Here’s a quick tip for anyone with a Synology NAS drive who uses it with a Mac running OS X El Capitan (although this should work under Yosemite and perhaps even Mavericks).

When listing directories over the network there can, for particularly large folders, be a noticeable delay before the directory contents is displayed on screen. Thankfully, a delay like this is pretty rare however this tip will speed up network directory listings for folders of all sizes – you’ll just notice it more if the folder in question contains loads of files.

Fire up Terminal and run the following command (do not run as super user using sudo):

defaults write com.apple.desktopservices DSDontWriteNetworkStores true

Reboot your machine and then marvel at the increased directory listing speed!

What does it do?
This simply prevents the hidden file .DS_store being written to network devices and this speeds things up monumentally!

However, a word of warning. Synology’s forthcoming DSM 6.0 has support for OS X’s Spotlight!!!!!  This is a major improvement and I’m so, so happy about it. Details are sketchy at the moment, however I suspect that network shares will need to be mounted in AFP rather than SMB (which has been the default protocol since OS X Yosemite). I prefer SMB (find it more stable) but will be willing to give AFP another go should Synology’s Spotlight implementation require it. Anyway, I digress. The reason I mention this is that it’s entirely possible that Spotlight support in DSM 6.0 will require .DS_store file to be written to network shares (as that’s where important Spotlight information is saved) so this tip might be out of date soon. (It just makes me wish I’d known about it 18 months ago!)

So if you need to revert back to enable Spotlight in DSM 6.0, just enter the following command in Terminal under your user and then reboot:

defaults write com.apple.desktopservices DSDontWriteNetworkStores false

Note that this is a user level setting, so if you have multiple accounts set up on your machine then you’ll need to run it for each of them.

As always, this advice should be taken at face value and you enter commands into Terminal at your own risk. Blah, blah, blah. 😉