Monday night, after come back from camping trip to San Simeon State Park, starting up my MacBook asked me to update OS to 10.5.7. I let it go ahead. Minutes later, my MacBook looked like going into a loop, the spinning wheel showed for a while and then disappeared, repeated 3-4 times, the laptop became hot. I decided to press power button to cut it off before explosion...
Moments later, booting up the laptop was very very slow, it took at least 5 minutes to show the desktop, but launching applications kept failing. About 10 minutes later, applications could be brought up OK, but again very very slow. Applications could run for a few minutes and then went into frozen for a few seconds. I noticed that reading files, even very small files, from the hard disk was like a crawling snail. Lots of I/O errors were printed in the system log. This sounded like a disk failure. Do you agree?
I was scared and made an appointment for Apple support to call me. This is kind of nice, as you don't have to hang on the phone line waiting for hours. But I hope there is an option allowing you to wait. Apple guy told me to do a reset by pressing the power button 10 second while power is off (battery taken out). That didn't help, then I was told to do an archive install to reinstall OS from the installation disc and preserve my personal data. The Apple guy suspected the OS update was half way done, and reinstall the original OS X 10.5.2 is not only way to bring the OS back to normal.
The archive install process took almost 3 hours. It worked! No more I/O errors and slowness when booting and running. All my personal data were untouched, even the cache in browsers. The only one trouble was from VPN client. I got the famous error "Unable to communicate with the VPN subsystem". Web
tells me a simple fix: quit VPNClient, open a Terminal window, (Applications -> Utilities -> Terminal) and type the following:
sudo /System/Library/StartupItems/CiscoVPN/CiscoVPN restart
This should restart the CiscoVPN.kext extension. But my /System/Library/StartupItems is totally empty. Because the reinstall of the OS. I had to reinstall the Cisco VPN client. After that, everything is back in business. Hooray!