OMG. This has been going on since at least Jan 2010? Are you serious Apple??? How about fix the **** problem. Why should your fancy, shiny UI freeze every fifteen minutes because something in your OS decided to spin up an external drive randomly for no good reason? Dudes, get on it and fix it. It's been far too long. I've already told your operating system that you should perform Time Machine backups only every three hours, yet your OS wants to spin up the TM drive all the time. ***??? Oh right, and it pauses every other function in the **** UI while it does it. Thanks for the forced "me time". There is NO REASON WHATSOEVER FOR YOU TO TOUCH MY TIME MACHINE DRIVE AS OFTEN AS YOU DO. Stop doing it. This is obviously a problem that every Mac user faces and it is not becoming for what is usually a very intelligent operating system. Get a grip Apple.
There are only two workarounds for this ridiculous defect. AND YES, THIS IS A DEFECT. I DARE SOMEONE TO EXPLAIN TO ME WHY A UI MUST NECESSARILY FREEZE WHILE AN EXTERNAL DRIVE SPINS UP. I CALL BULLSH!T.
1. unplug external drives while using them. LAME.
2. implement a script to "touch" your drive periodically to prevent it from spinning down during a specific timeframe.
small tutorial:
step one,
create script file "keepUSBDriveAlive.sh" (or whatever you want to call it) with code:
#!/bin/bash
if [ -d /Volumes/$1 ]; then
touch /Volumes/$1/.touchMe
fi
step two,
create a file on the root folder of your external drive named ".touchme". The dot in front will make it a hidden file in general (linux idiom). This file is obviously referenced in the script... name it whatever you want as long as the script matches the name in its code.
step three,
create a cron job to call this script periodically. from terminal:
crontab -e <--this opens crontab for editing
now your in "vi editor"... press "i" for insert mode... enter this:
*/5 08-23 * * * /Users/yourusername/Library/Scripts/keepUSBDriveAlive.sh "Time Machine"
(or wherever the path is to your script, but username/Library/Scripts is a great place to put it) (Notice the name of your drive is getting passed into the script as the first parameter (in quotes))
press "esc" to exit insert mode... press :wq (that is colon w q) to Write then Quit.
The "*/5" syntax means every five minutes. Change the 5 to whatever minute interval you want (Different drives have different spin down times). The "08-23" part says " within the hours of 8am to 11 pm run the script, otherwise in the middle of the night lay off". Change "Time Machine" to whatever the name of your external drive is.
If you have multiple external drives, then create an additional line in the cron tab file and replace "Time Machine" with the name of your external drive. Each cron job needs it's own separate line in the file.
Good luck my friends.
God bless the bureaucracy. Hopefully we can get a fix within four score and seven years from now.