• On GameFAQs: Top 10 Ridiculous (But Awesome) Weapons
advertisement
January 31, 2006 8:00 AM PST

Tutorial: Resolving slow startup: Speeding up Mac OS X boot time

by CNET staff

A variety of factors can affect Mac OS X startup time, though there are a few not directly tied to the speed and resources available on your Mac. If you think you are experiencing inordinately boot times, run through the following list of shotgun techniques for a possible speed bump.

Check PRAM -- reset, or replace battery Especially on some older PowerMac G3s, problematic PRAM (parameter RAM) or a defective PRAM battery can cause delays in startup as the system constantly re-checks for connected devices and other hardware that are normally stored in PRAM.

The first thing to try in this case is a PRAM reset. In order to do this, shut down your Mac, then start it up again while holding down the Command, Option, P and R keys. Wait until you hear the startup chime twice, then release the keys and allow normal startup to proceed.

Failing this, you may need to replace your PRAM battery. Various online resellers like OWC offer replacement batteries that can be user-installed.

Disconnect network cables Various network issues can cause startup stalls for connected Macs. Errant connections through Ethernet cables, telephone lines and even AirPort cards can cause significant delays.

Try disconnecting any network cables temporarily then re-attempting startup and check for persistence of the startup slow-down. Try reconnecting the devices once startup has completed.

Check for loose network, speaker, device connections Loose connections or defective wiring can cause startup issues for systems with external peripherals.

For instance, one MacFixIt reader reported an issue where a loose connection with a set of speakers was causing significant startup delays as the system persistently attempted to make contact with the set, eventually failing and proceeding with startup.

As such, make sure that all peripheral and network connections are snugly attached, and also ensure that your AirPort card (if present) is seated properly and firmly.

Some peripherals can cause slow-down Meanwhile, some third-party devices will inevitably cause a delay in startup even with a problem-free connection. One group of devices notorious for this behavior includes third-party displays from Dell and other manufacturers.

Check for problematic login or startup items Login items (which load after entering your user credentials) or startup items (which load at startup universally) can both have detrimental effects on boot time.

Open the "Accounts" pane of System Preferences and click the "Login Items" tab. Remove items from the list one at a time, logging in after each removal, until the problem goes away. When it does, you can assume that the last removed item is the culprit.

Once you have identified the troublesome item, your next step will be to re-add all the items you deleted along the way and that are presumably OK. A potential issue here is that you may not recall the names of all the items you deleted. Even worse, you may have no idea where some of the deleted items are located, making it hard to re-add them.

One solution to this dilemma is to create a copy of the loginwindow.plist, located in the ~/Library/Preferences folder file before you begin deleting items from the list in the Accounts System Preferences pane. Save the copy to your Desktop. This provides you with a list of all of your originally installed Login Items and the path to their locations. You can use this information to recall and locate deleted items later on when you want to re-add them. [For more information on login items, see this tutorial]

Startup Items are a bit easier to work with -- just check the /Library/Startup Items/ folder for any potentially problem-causing items. Move them out of their parent folder, restart, and check for persistence of the issue.

Problematic preference files Similar to problematic startup and login items, corrupt preference files can cause slow or completely stalled startup.

These files are located in ~/Library/Preferences.

Your best bet in finding the problematic files is to startup from an alternate volume, temporarily move the Preferences folder (on the problematic volume) to a location outside the Library folder, reboot and check for persistence of the slow-down/stall.

If the issue is gone, re-add the old preferences a handful at a time (recursively), starting from the old drive periodically. Once the problem disappears, look through the most recent handful for the culprit.

Disable network volume automounts Some users have been able to resolve slow login times by disabling automounting of networked volumes.

Checking for problematic fonts Some have experienced success reducing startup time cleaning font caches with Font Finagler, though for most, it doesn't seem to provide a significant reduction of startup time.

A better option is removal of extraneous, non-native fonts from their system using Apple's Font Book (located in the "Applications" folder on a standard Mac OS X installation).

Fonts can be removed using the "Remove Font" menu item inside Font Book. Also, make sure all default fonts are all reactivated or you will not be able to activate "Accounts" in "System preferences".

Check for drive directory or permissions issues Problems where a system fails to startup properly can spontaneously occur with any incremental Mac OS X update, and usually involve problems with an incompatible third-party add-on loading at startup or damage done to the drive directory or permissions during installation. The problems usually manifest in an inability to move past the startup progress bar or an indefinite stall before the Desktop appears.

In the case of drive directory damage or problems with permissions, the solution is usually to use Apple's Disk Utility to repair the disk. Of course, you won't be able to perform this operation normally (simply launching the Disk Utility application, located in Applications/Utilities, and initiating a disk repair) if your system will not startup. So two options exist:

Insert your Mac OS X 10.4.x (Tiger) media (DVD or CD) and restart the computer while holding down the "C" key. Once the computer has booted from the installation disc, select "Utilities" from the menubar and open Disk Utility. Repair the disk, then quit Disk Utility and restart your system.

Alternatively, you can repair the disk while booted in single user mode if you do not have access to a retail Mac OS X 10.4.x (Tiger) DVD/CD. To startup in single user mode, hold down the "Command" and "S" keys simultaneously at startup. Once properly booted, type the command fsck at the prompt. Repeat these process until no errors appear.

Slow startup normal after installation of a Mac OS X upgrade Note that slow startup after applying a Mac OS X update (except in the case of directory or permissions damage as aforementioned) is normal and expected. In some cases, startup can take several minutes directly after applying an update.

Subsequent restarts generally take place at normal speed.

An AppleScript for eliminating startup snags The following AppleScript that deletes several files implicated in increased startup time. The script has been successful for a number of users, and is as follows:

  • property systemList : {¬
  • "com.apple.ATS.System.fcache", ¬
  • "com.apple.ATSServer.FODB_System", ¬
  • "fontTablesAnnex"}
  • property localList : {¬
  • "501:Classic.fcache", ¬
  • "501:Local.fcache", ¬
  • "User.fcache", ¬
  • "Classic.fodb", ¬
  • "Local.fodb", ¬
  • "User.fodb", ¬
  • "FondResourceCache"}
  • tell application "Finder"
  • set versionFinder to version as text
  • end tell
  • if versionFinder starts with "10.3" then
  • set localCaches to ((path to "cusr") as text) & "Library:Caches:com.apple.ATS:"
  • set systemCaches to ((path to "boot") as text) & "System:Library:Caches:"
  • tell application "Finder"
  • repeat with name in localList
  • try
  • delete file (localCaches & name)
  • end try
  • end repeat
  • repeat with name in systemList
  • try
  • delete file (systemCaches & name)
  • end try
  • end repeat
  • end tell
  • end if

In order to run this script, simply open the application Script Editor (located in Applications/AppleScript on a standard installation), create a new file, paste the above script, click "Compile" then click "Run." You will be asked for your administrator password several times.

Cleared caches can slow startup Note that if you have recently cleaned your system caches, the subsequent startup can be unusually long as Mac OS X rebuilds information in these files.

Make sure you have enough free hard drive space Having enough free space on your startup volume is imperative for speedy startup. 20% free space is recommended, with a minimum of 10%.

Archive and Install As a last resort, you can try an Archive and Install process to eliminate continuing delays in startup. This process will eliminate a number of the aforementioned, potentially problematic files that can be causing the slowdown -- but it will also necessitate user replacement of some custom settings.

Feedback? Late-breakers@macfixit.com.

Like what you've found in this tutorial? Get more troubleshooting guidance (updated daily) by subscribing to MacFixIt Pro.

Resources

  • replacement batteries
  • tutorial
  • Font Finagler
  • Archive and Install
  • Late-breakers@macfixit.com
  • subscribing to MacFixIt Pr...
  • More from Tutorials
  • Recent posts from MacFixIt
    iTunes 10 user interface sees some minor changes
    Apple seeds iOS 4.1 Gold Master to developers
    Possible fix for Harman Kardon iSub problems with PowerPC Macs
    Precautions to take before installing iTunes 10
    A reminder on how to reset your Mac's system password
    Mail messages appearing blank
    Adobe Lightroom update brings direct Facebook publishing; Camera Raw 6.2 released
    Weekly troubleshooting utilities update
    Add a Comment (Log in or register) (8 Comments)
    • prev
    • next
    by wobblebottom January 31, 2006 11:28 AM PST
    I tried running the AppleScript for eliminating startup snag but it did nothing. It
    never asked for an admin password. If anyone has an answer as to why it didn't
    work that would be great. I followed the instructions and the script looks fine
    once compiled. I wonder if it's only for OS 10.3 or if it's missing something
    simple such as On Run and End Run.

    Kevan
    Reply to this comment
    by John McGibney January 31, 2006 11:28 AM PST
    <class="merchant"><span>&#62;</span><div class="datestamp"><i>This is a reply to a previous comment by wobblebottom</i></div></class><br />
    Copy the Applescript and change 10.3 to 10.4 and the script will run in Tiger. I
    don't know if all the files match up still.
    Reply to this comment
    by macaholic January 31, 2006 2:39 PM PST
    Much easier, more options, and better results by using Yasu:
    http://www.versiontracker.com/dyn/moreinfo/macosx/21674
    Reply to this comment
    by kateyourke February 3, 2006 10:49 PM PST
    When attempting to compile abovelisted Applescript:


    Syntax Error

    Expected expression, etc. but found unknown token.
    Reply to this comment
    by Gennx30 February 7, 2006 9:53 AM PST
    It doenst seem to run for anyone so far-perhaps the author, who lists "10.3" (thought he writes the article in present tense as if for 10.4) in the script, left out some crucial step, or bit of code...
    Reply to this comment
    by mkupietz March 31, 2006 3:18 PM PST
    Worked fine for me under 10.3.9 once I made sure to remove the line breaks from the property lists... don't know yet if it sped up my login, but the applescript executed properly.
    Reply to this comment
    by SFriman March 31, 2006 3:18 PM PST
    <class="merchant"><span>&#62;</span><div class="datestamp"><i>This is a reply to a previous comment by mkupietz</i></div></class><br />
    Use this one: make sure the lines have no paragraph breaks like below. { to }
    should be together not in separate lines. (It appears to run into separate
    lines because it's too long but technically still one line.) The original script is
    full of line breaks and doesn't work without being cleaned up.

    property systemList :
    {"com.apple.ATS.System.fcache","com.apple.ATSServer.FODB_System","fontTa
    blesAnnex"}
    property localList : {"501:Classic.fcache","501:
    Local.fcache","User.fcache","Classic.fodb","Local.fodb","User.fodb","FondResou
    rceCache"}
    tell application "Finder"
    set versionFinder to version as text
    end tell
    if versionFinder starts with "10.3" then
    set localCaches to ((path to "cusr") as text) &amp; "Library:Caches:com.apple.ATS:"
    set systemCaches to ((path to "boot") as text) &amp; "System:Library:Caches:"
    tell application "Finder"
    repeat with name in localList
    try
    delete file (localCaches &amp; name)
    end try
    end repeat
    repeat with name in systemList
    try
    delete file (systemCaches &amp; name)
    end try
    end repeat
    end tell
    end if
    Reply to this comment
    by tassgrubber November 18, 2008 7:01 AM PST
    There are so many things that are loaded on a system during boot time that could slow the actual boot process. You have outlined a great list of items that are the primary culprits for causing a slow boot. The one that i have seen cause the most issues is reconnecting to network drives. This is usually caused by a slow authentication process. The other, believe it or not, is font files that are corrupt. <a href="http://uptobat.com/">Baseball Bats For Sale</a> <a href="http://uptobat.com/cheap-baseball-bats-for-sale">Cheap Baseball Bats</a>
    Reply to this comment
    (8 Comments)
    • prev
    • next
    advertisement

    About MacFixIt

    MacFixIt is CNET's troubleshooting resource for all things Mac. The information here helps you navigate the ins-and-outs of Mac ownership with how-tos, troubleshooting information, news, reviews, and more.

    Add this feed to your online news reader