External hard drive accessed on Scriv opening

I recently upgraded both to Snow Leopard and to Scrivener 2. Now when I open Scrivener (and, automatically, the two projects I’m working on), something accesses my external hard drive, which dramatically slows Scrivener’s opening, because the external hard drive needs to wake from sleep then search for whatever it is. Both of my projects, however, are located on my Macbook’s internal hard drive. Any tips on how to keep Scrivener from looking (or whatever it’s doing) on my external hard drive?

Are you sure it is only Scrivener that does this? Macs have long had a problem with spinning up drives for activity that shouldn’t otherwise require their accessibility. Starting applications, saving documents, opening documents, closing applications, even sometimes just browsing on sites with a heavy use of Flash. It’s exceptionally annoying if you have a disc in the optical drive as that has such a long spin up time.

You could check a few settings in Scrivener’s preferences. In General the scratch pad location is set, and the Backup tab for the automatic backup location. If either of those are pointing at the drive, it might help to change them to the internal drive. I suspect that normal Mac applications like Scrivener that invoke Finder activity when they start up can cause this because they attach themselves to the /Volumes directory, and so perhaps at that point OS X feels compelled to refresh /Volumes which is where devices are mounted to the filesystem.

You could also try disabling “Put the hard disk(s) to sleep when possible” in the System Preferences : Energy Saver panel. This is a sensible thing to do anyway. Modern drives are extremely power efficient (we’re talking a few dollars a year, if that, to keep it spinning instead of idling on and off) and it can really reduce the lifespan of the drive to have it ramping up and down multiple times a day; that’s a very stressful operation to the mechanism. This may not work; it depends on the external drive. Some do not respect the setting at all, and on newer versions of OS X, that setting only changes the idle to three hours instead of completely disabling it. But it’s worth a shot. It works for my externals, especially the time machine one since that gets hit once an hour anyway.

Just to add that there is no code in Scrivener that looks for hard drives or anything like it on opening or at any other time. My guess is that it is just OS X gathering data and firing up unnecessary drives, as Ioa said, although it’s strange that it would do that given that all of the paths Scrivener accesses - unless you have backups or the scratch pad set to your external drive - are local. (My own external drive is untouched while Scrivener or any other program opens, but that’s on Lion and I don’t have backups pointing to it.)

All the best,
Keith

It’s a BSD/unix thing that you are hitting. The short answer is take Ioa’s (AmberV) advice and turn off disk sleep.

The long answer is that the underlying call to the kernel to get FS path issues a read request to all mounted filesystems to validate partition tables and blah blah blah blah. No one really wants to hear this so I will stop now.

Thanks for the quick replies. I’ll give turning off disk sleep a shot. Nothing in Scrivener is pointing to the external drive (not notes, backups, or the projects themselves), and I haven’t noticed the drive spinning up on any other apps, but I’ll keep an eye out for it.

And Jaysen’s technobabble gave me a chuckle.