I haven't had quite the same problem, but this might shed some light...
As of 10.7 I've noticed that Lion is much, much more persnickity about having access to its peripherals. If a peripheral goes offline (e.g.: sleep mode) Lion will often freeze up until it comes back. This is particularly sensitive in regard to disk drives, and it tends to bite you more often than seems logical.
For instance, I use an external RAID array (SmartStore DS4600) for Time Machine. Under 10.6, I absolutely NEVER experienced this problem, but after the 10.7 upgrade it made both Time Machine and, for the most part, the DS4600 unusable. The DS4600 is a "smart" (or "green") drive... if you don't touch it for 10 minutes, it powers down each of the array drives. This is pretty common, most drives are designed to sleep after some period of time... but with 10.7, that meant every time the drive was 'touched' it would spin up, and being a 4-drive RAID array, that takes 40 seconds or so! When I do a Spotlight query, it might touch the drive. Open a new finder, if I'm unlucky, it touches the drive. TIme Machine of course, always touches the drive.
Now you can imagine, with a 40-second spin up time I was running into constant "lockups." Worse, it seems that the slow spin up time would cause Lion to "give up" now and then... probably too slow for it, and it just would stay locked up maybe 1 out of 5 times. That was a daily experience -- sometimes a few times a day.
My short-term solution was to disconnect the drive unless I wanted Time Machine to take a snapshot, then I'd disconnect it again. This, as a rule, pretty well sucked as a solution.
I finally found a better one, and it was a two step process:
- I thought if I could keep the system touching the drive, it wouldn't sleep. Turns out it was a breeze to do this, I just created a LaunchDaemon job that basically touches a file in the DS4600 root directory every minute. It's set up as a system-wide daemon, it only touches the drive once a minute for an instant, and as a system-wide daemon it is always running. Also, it checks to make sure the drive is mounted before doing it's thing. Works like a charm.
- But, alas, after the first day I came back and found my system asleep... I shook the mouse, it started to wake up and... the system was frozen. What the heck!?! Oh, yea... system went to sleep, so the drive went to sleep, and Lion "gave up" again when it woke up. Easy enough to fix, I told my laptop never to sleep and never to shut down the hard drive while it's on A/C power. Perhaps not ideal and perfectly green, but these laptops run very quiet and use low power when they aren't "busy," so it works.
For those interested in the nitty gritty, here's what I did to set up the LaunchDaemon:
First, create a file (named "com.hyraxintl.ds4600touch.plist" in my case, name it whatever you like) in the /Library/LaunchDaemons directory. This is what the file should contain:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
Make sure the file is owned by the "root" user.
Then, create your version of the /usr/local/bin/ds4600touch.sh script. Mine looks like this:
if [ -d /Volumes/DS4600 ] ; then
date > /Volumes/DS4600/.ds4600touch
echo `date` "DS4600 not mounted"
In both of the above files, you'll need to make changes for your local machine and disk. For instance, my drive is mounted at /Volumes/DS4600, yours will be different.
That's about it. Once you reboot, your system will start touching your external drive every minute. Just be sure to change all of the paths accordingly!
After all of these changes, I haven't experienced the same problems with locking up that I used to. Time Machine seems to be working just as well as it used to under 10.6, thankfully.
I haven't tried this yet, but will if I have any more issues.
Had no trouble with Time Machine last few goes, this is after I ran disk utilities over my internal HD and found thousands of disk permission errors, etc. Took D.U. aaageeeeees to do it's thing (even got the non responsive spinning beach ball thing).
Okay, so I FINALLY decided that i've fogot even WEEKS to do manual time machine backups that it woudl better to lose all my archives by doing a refresh than to not have anything.
So I went to disk utility and formatting my external FireWire drive and I started Time Machine Fresh.
It has completed its backup process and now, I am back to where I was before.
Every time Time Machine starts, it looks up my system for about 60 to 90 seconds.
I am SO FRUSTRATED!
I found a solution that is going to work for me!
I've simply turned off the auto backups within the Time Machien preferences.
This software allows me schedule Time Machine backups on my own schedule. It works AMAZINGLY! I simply scheduled my backups for three times a day that I am least likely to be in the middle of something extremely important.
Thanks for the heads up. I just upgratded to 10.7.3 and and turned off Time Machine Editor. I turned the Time Machine backup on and just launched the backup manually. It seems to be working so far without interfering with anything that I am wanting to do.
I will keep an eye on it. I use my computer all day every day, so I should know by tomorrow afternoon if this is officially solved.
I just wished I never DUMPED my backups going way back into the past!!! I hope I dont need them now, but would have been nice to have just in case.
Nope. Total failure. During the last five minutes of the 1st backup after the upgrade to 10.7.3, I got the spinning ball and sytem lockup again. I waited an hour and when the backup kicked in again, it locked up again.
I've just turned off the Time Machine baciup and turned my "Time Machine Editor" program back on as I described above.
Hummm... Interesting, because so far (fingers crossed), I haven't had any more issues.
The 10.7.3 update did actually fail for me first time, and then my Mac crashed while opening Preview, and wouldn't boot after that, so I had to restore from backup (luckily, I did one before I updated).
Second attempt and the update worked, and since then Time Machine hasn't mis-behaved.
Right now, TIme Machine is backing up 72GB of data, I'm playing music in iTunes, and typing this message.
No glitches, no freezes.
I'm not sure at all how it can be resolved for you, apart from your current work around.
Have you tried Zacharias Beckman's idea? Might do the trick?
I've enabled your solution to help cure the DS4600 random disapearence. Seems to works: thank you very much!
So, being curiousI wanted to see what was being written in /tmp/dsStoragetouch.err and /tmp/dsStoragetouch.out files. Nothing gets written to the dsStoragetouch.out file, but the dsStoragetouch.err file shows error after error; here's an example:
/usr/local/bin/sdStoragetouch.sh: line 8: : command not found
Here is the script adapted for my environment:
# Place this file in /usr/local/bin and chown it to "root"
if [ -d /Volumes/Storage ] ; then
date > /Volumes/Storage/.dsStoragetouch
echo `date` "Storage not mounted"
It seems to me that there is a command missing in the first "if" statement. What preceeds the "-d"? Maybe I've missed something in the plist file?
Looking forward to your response.
PS: Running 10.7.3 Server with all latest patches/updates on a Mac Mini