AppleJack
AppleJack is the only open source tool in this list and it is the only one that isn’t focused on hard drives or hardware. AppleJack is a tool designed to resolve problems with Mac OS X that can cause failures and erratic behavior, including startup issues. It is a shell script that is designed to run only in single user mode. This makes it useful if you are troubleshooting a Mac that cannot startup properly.
Most of AppleJack’s features are actually easy to navigate access to existing command-line tools or troubleshooting techniques. However, placing them in an easy-to-use, menu-driven package that can be easily accessed from the single user mode command prompt is a great help to the troubleshooting process. AppleJack even offers an autopilot mode that runs through its core techniques automatically. The interface is also very user friendly for those not comfortable with command-line tools.
AppleJack provides access to the disk repair options that Disk Utility offers (the fsck command-line tool) as well as to the repair permissions function in Disk Utility. It also includes features for cleaning out system and user cache files as well as the ability to verify the system and user preferences files are not corrupt (this is done using the plutil command-line tool, which can also be done from the Terminal or using the Preferential Treatment application). It can also delete the virtual memory swap file, which is normally deleted when Mac OS X restarts but can become corrupted and that corruption can, in rare cases, remain despite a restart.
AppleJack also has a series of expert features that are listed as being experimental or still in development. These features include the ability test installed RAM using the memtest command-line tool, which can be installed along with AppleJack (memtest can also be run from the terminal or using the Rember application). Two other features include the ability to disable auto-login and login items for specific users (which can be helpful as part of troubleshooting failures that occur at login). There is also the ability to disable specific system configuration files if you suspect that they are corrupt.
AppleJack’s expert features also include several NetInfo tools, including an interface for easily restoring a NetInfo database, disabling NetInfo automounts, and deleting the local NetInfo database. Deleting the NetInfo database, a feature named "enable new machine setup" will cause Mac OS X to enter setup mode as though it were just installed. This can be for resolving problems associated with local user accounts, but without erasing the hard drive. It can also be used if you are giving away a computer and want to delete your user information but leave files in tact.
Editor's Note: Ryan Faas has updated this article for 2010. Be sure to also read The Top Mac Hard Drive Utilities, 2010 Edition.