My Mac only runs properly in Safe mode

If your Mac is unstable when running in normal mode, one useful test is to start it up in Safe mode. So what do you do if that makes your Mac much more stable, or even solves your problems, but they return when you restart in normal mode?

safebootred

The big difference between Safe and ordinary modes is that, in Safe mode, OS X only loads essential Apple components, in terms of extensions, startup and login items, and runs a minimum of services. Logically, if blocking all extra components from running makes your Mac behave better, the instability must be caused by one or more of the components which is blocked in Safe mode. The difficulty then rests in identifying those components.

El Capitan and Sierra prevent third-party installers from placing their components in the /System/Library folder, but if your Mac migrated from Yosemite or earlier, old third-party components may well have been migrated into that folder. You should therefore check several folders in /System/Library for such old components. The most probable folders which might be harbouring problems are:

  • /System/Library/Extensions – any dating from before 10 Jan 2015 should be suspect, and almost all should be dated 23 Aug 2015 or later
  • /System/Library/LaunchAgents – these should all start with com.apple., apart from one with org.openbsd.ssh-agent.plist
  • /System/Library/LaunchDaemons – most start with com.apple., but there are quite a few others too; look for obviously third-party files
  • /System/Library/PreferencePanes – these should only be standard Apple panes
  • /System/Library/StartupItems – should be empty.

If you find others, which are associated with old software which you might have had installed many years ago, you should uninstall those old products, or move the suspect components into a folder in your Documents folder. With SIP, what usually happens is that the file is copied, leaving you to remove the original from /System/Library. SIP will prevent you from removing key Apple items, but should still – when you have authenticated as an admin user – allow you to trash third-party components.

Then turn your attention to your main /Library and Home folder ~/Library folders, paying particular attention to the following folders there:

  • Library/Extensions – these are all third-party, and should all be under suspicion
  • Library/Internet Plug-Ins – these extend Safari in particular; get rid of the old, and update as many as possible
  • Library/LaunchAgents – these are all third-party, and should all be under suspicion
  • Library/LaunchDaemons – a few are Apple’s, but most are third-party and should be under suspicion
  • Library/PreferencePanes – these are all third-party, and should all be under suspicion
  • Library/StartupItems – should normally be empty
  • Library/Widgets – your main store of Widgets; beware of third-party items here.

Don’t just grab a load of components whose function is unclear and dump them in the Trash: that can do more damage than good, and if you’re unlucky could make your Mac more unstable, or even unusable. The best approach is to move (not remove) those that look to be unnecessary, but be ready to reinstall them if required.

You may also get clues from browsing your logs with Console when things start going wrong. You may then see errors from third-party and other components which relate to software which you used several years ago, for example. Look through your Library folders (and Applications) to see if migration has quietly brought that ancient software along, without your knowing. If you don’t need it, move it out and test to see whether that improves or worsens stability.

One excellent way of discovering what old components are still running on your Mac is to browse them using Objective-See’s excellent KnockKnock. This lists persistently-installed software components such as kernel extensions, and should lead you to their location – which is particularly helpful for those components outside the main Library folders.

If you identify components which you think are still important, but they are more than six months old, locate their support site and look for a more recent update or upgrade there. Although some updates bring their own problems, as a general rule you are better off using the most recent release of a product.

Because Safe mode also blocks a lot of Apple’s components in OS X from running, your problems may result from one of those instead. For example, in Safe mode the best and fastest graphic drivers are often disabled, leaving your Mac running, but rather more slowly than normal. You should not try moving or disabling those components: if they come as part of OS X / macOS, then you should try not to meddle with them at all.

At the end of this, not only should your Mac be much more stable, but your Library folders should be free of the dross which they tend to accumulate over the years, and you may even find that your Mac runs more briskly as a result.