The likelihood that a single tool or utility will provide all of the diagnostic capabilities that you are looking for is very slim; if you do happen to find such a utility, there's a decent chance that its support for said capabilities will be shallow. So while it may seem like a good idea to try to find a really generalized and versatile hardware diagnostics app, you'll probably be better off with getting smaller more specialized apps that are designed to only check one to a few of your system's hardware components.
In addition, some hardware components such as your system's PSU (power supply unit) are best checked with specialized electrical equipment designed to check for faults in your PSU, such as your PSU is no longer capable of sustaining the level of Watts your system requires.
Hardware Health Diagnostic Applications
Hard-Disk/Solid-State Drive
- SMARTReporter
- User Interface is kinda compact (feels a bit overwhelming with everything squished together).
- $4.99
- Available in the App Store.
smartmontools
- primarily command-line only, GUI depends on the X Server,but even if you do have XQuartz installed, GUI doesn't show up. (Check man page for usage details:
man smartctl
)
- Free
- Install via brew:
brew install smartmontools
- DriveDx
- Much nicer UI than SMARTReporter, feels much cleaner and less in your face.
- Lots of statistics and info presented in a take your time kinda way.
- $19.99
- Available in the App Store.
Memory (RAM)
NOTE
I couldn't find much in the App Store with a few quick searches, but I do know of a couple different RAM diagnostic utilities, however, all of them require the use of a USB or a floppy or some other media type that can be booted into; while I have experience with at least one of these, I have never used any of these under Mac OS X. So you're on your own.
memtest86
- memtest86+
- Free (and open-source)
- Based on the previously mentioned memtest86.
- memtester
- A memory (RAM) stress-tester.
- Free
- install via brew:
brew install memtester
- see man page for more details:
man memtester
Also, while this may sound super silly, I'd invest some time in checking the contents of your systems' logs, like tail /var/log/system.log
, however, if I were you I'd check everything in /var/log
just to make sure that you aren't missing anything.
In addition, be sure to run and check the output of sudo dmesg | less
: in my experience, if your system is experiencing problems, there's a high likelihood that dmesg
's output will shed light on the situation.
Mac OS X boot-time keyboard shortcuts (in no particular order):
- Hold down D during startup
- Takes you to Apple's Hardware Test utility (or Apple Diagnostics, depending on Mac model)
- Option+D can be used instead to try starting up Apple Hardware Test or Apple Diagnostics over the internet
- Hold down Alt+Cmd+P+R during startup
- Clears the PRAM (parameter RAM) and NVRAM (non-volatile RAM): if either the PRAM or the NVRAM become corrupt, problems will ensue. Hold the keys down until your computer restarts: release the keys after you hear the second startup sound.
- Hold Alt down during startup
- This will load the boot menu allowing you to boot to a different operating system partition you may have installed on your hard drive. May also allow you to boot to a USB, but that's just a conjecture.
- Hold down N during startup
- if your setup includes a compatible network server (NetBoot), you can hold down the said key during boot to attempt a network boot. You can alternatively use the Alt+N keys during startup to start from a NetBoot server using the default boot image provided.
- Hold down T during startup
- puts your Mac into Target Disk Mode, effectively turning your computer into a large removable flash drive. (Allows you to transfer files to and from your machine with... ease?)
- Hold down Shift during startup
- Boot into safe mode. Very similar to Windows Safe Mode; a great way to troubleshoot OSX applications and extensions that aren't working properly.
- Hold down Cmd+V during startup
- Boot into verbose mode. A terminal-like interface will appear while booting. It will contain information important to startup, allowing you to diagnose startup problems by seeing any errors that may be occurring during startup. Verbose mode exits automatically when your mac finishes booting.
- Hold down Cmd+S during startup
- Boot into single user mode.
NOTE A knowledge of bash and the command-line (in general) is recommended. Handy for advanced startup sequence troubleshooting.
Also, I'd check out Parted Magic and GParted, as well as any other distribution of Linux that offers a Live-disc version. These can be used to ease the diagnostics process since they're (at least Parted Magic and GParted) are designed with system maintenance in mind--not to mention the fact that you'll have access to a far larger software repository with any given Linux (that has a package manager) than you would with brew, for example.
system_profiler
, the Macbooks should have shipped with it on them, so downloading it shouldn't be a huge concern. I don't know whether iMac ships with it too, though.