How can I tell if my problem is because of my hardware?
- Does the problem happen before your operating system loads?
- Does the problem happen on different operating systems on the same machine?
- Do the errors seem like they have no cause (i.e. random crashes every few days/hours, not linked to any particular program running or time spent with the PC on?
How can I figure out which component is to blame?
A very short summary of what happens when components fail
- Hard Drive: "Missing Operating system" or similar, frequently prompted to run
CHKDSK (or similar).
- RAM: Programs/OS crash for seeming no reason, and with no real pattern.
- CPU / Heatsink / Power Supply / Outlet: Computer shuts off when doing a lot of work, computer refuses to start at all, or shuts down abruptly.
- USB drive: Devices plugged in do not get recognized, or they do not get powered.
- Motherboard: Nothing starts up.
My computer does not turn on at all
A short-circuit anywhere in the system can cause the power supply to enter over-current shutdown. Therefore disconnect all components except:
- power supply
- CPU fan
- one memory module (sometimes one module per bank is needed)
- video card (may be part of the motherboard or processor)
- power switch and LED
- PC speaker (the piezo buzzer connected to a four pin connector on the motherboard, not your stereo/surround computer speakers)
If your computer still cannot turn on at all (power supply and CPU fans are not rotating), your problem lies with one (or more) of the following components:
- Power supply: Your machine is not getting enough power to start. For desktops make sure you have a large enough supply. If the supply seems large enough, it might still be broken. For laptops, make sure it is plugged in, and the charger works.
- Motherboard: Somewhere on your motherboard there is a fried/broken something. While this is rare, it does happen.
- BIOS chip: The BIOS chip itself might be fried on the machine. This is extremely rare, but possible.
My computer turns on, beeps, and shuts off
These are called beep codes. Use your manufacturer's website (in the case of a desktop, the motherboard's manufacturer's website) to find out what the beep codes for your particular machine are. Generally, the beep code will tell you exactly what is wrong with the machine (i.e. keyboard not found, hard drive not found, etc). Beep codes will work even if there is no screen (this is their primary advantage to on-screen messages).
My computer turns on, but has some issues:
Step 1: Checking BIOS settings
The very first thing to check is if the problem is actually a BIOS problem as opposed to a hardware problem. In some cases they can appear to be very similar as BIOS runs before boot.
While the way to get into your computer's BIOS settings may vary, generally there is a button you can press before the operating system loads (Delete, F2, F10, F12, End are the most common options) that will bring you into the BIOS setup.
Once there, check to see if any hardware (particularly the hardware that you suspect might be operating incorrectly or not at all) is disabled. If it is, enable it, and see if things work now. If it doesn't read on.
Step 2: Running memory diagnostics
If the RAM has problems, pretty much anything can happen. So the first thing to do is to run a program that will test your memory. Windows 7 has a memory diagnostic built in, but if that is unavailable (windows does not boot, you don't run windows, etc) you can always use Memtest. Just burn it to a CD/USB and boot to the device. If there are memory errors, even when running at specified voltage and speed, you need new RAM. Try swapping out a stick at a time to see which sticks/positions are faulty. If a stick is faulty, just get a new one, and if a position is faulty, you have to decide if you want to get a new motherboard.
Step 3: Running hard drive diagnostics
Make sure the hardware is OK:
There is something called S.M.A.R.T that comes with almost all modern hard drives that is supposed to be able to tell you if your hard drive is going to fail. It does a not so good job at that, but it is better than nothing. To look at the S.M.A.R.T. data use:
- Windows: you can use
wmic followed by
diskdrive get status
- Mac: DiskUtility (off of the mac install disk, or after the OS is booted if that is an option)
- Unix: You can use SmartMonTools (and see here) for more info. (SmartMontools also has a windows version).
It should be noted that these are just locations of where you can find utilities that can read the S.M.A.R.T data. You can run any of these utilities though, on basically any drive.
Additionally, these programs refer to the host OS, NOT the OS on the drive. The OS on the drive has no baring at all on which one of these tools to use.
Check the file system
- Windows, get an installation disk, and run
chkdsk from that. To do this, select repair, and then after you pick the OS (if any is found) select Command Prompt. Then, type something like
chkdsk c: /f (optionally add /r to try and recover some data, /b to try and get some sectors back, /v to see the errors, and /i to speed it up at the cost of not checking everything as stringently).
- Unix-like systems, you can use fsck(1) (File System ChecK) which is part of all major Unix distros (including mac, FreeBSD, and Linux).
These tools should be able to repair the file systems, if that is indeed the issue.
Step 4: Bootloader
Only use this step if the issue is that you cannot boot into/find your operating system
Super GRUB disk is a great utility that can scour your hard drive and try to find all bootable partitions, and will let you boot to them. Once you have booted, it is important to actually repair the Master Boot Record (MBR).
- Windows this is possible with a utility called EasyBCD
- Mac: Use Disk Utility, click on your hard drive (the drive itelf, not the partitions). Move the triangular slider that adjusts the partition back and forth, and the click Apply. The boot infrastructure (either MBR, or EFI) will be recreated. Note: It should warn you that a partition is being changed.
Grub (many Linux distros): (taken from here Note change the appropriate references from hd2, hd0, etc to what is appropriate for your setup)
- Open a terminal as the root user.
- Enter GRUB (we're now are in a command line interface shell for GRUB).
- Enter root (hd2,0) (setting the boot drive where most of GRUB, and the system kernel files are).
- Enter find (hd2,0)/grub/stage1 (the first file GRUB uses to boot up from). This step may not be necessary, but better safe than sorry.
- This gives a list of drives partitions where GRUB could be installed.
- Enter setup (hd0) (to install the bootloader to the drive my system BIOS boots up).
- Enter quit (to properly exit from the GRUB command line interface shell).
FreeBSD: The page here contains extensive instructions for how to restore a bootloader in FreeBSD. The shortened summary though is that if your MBR gets overwritten by some other OS or something else, it can be restored to its plain vanilla state with
fdisk -B -b /boot/boot0 device where device is that device that you boot from.
Step 5: Graphics
Only read this step if you have a graphics problem
- If the problem shows up before your OS boots up, then it is a hardware problem.
- If before the BIOS it is fine, and after not, it might be a graphics card or driver issue
- If the problem occurs at random, then it is probably a hardware issue.
Hopefully, if you have reached the end of this post (I know, its long) you have an idea of what the issue is if it is hardware based or pre-OS problem. If not, feel free to ask a question on Super User that lists more details of your situation.
How do I troubleshoot hardware issues related to a computer freeze/crash?
How do I troubleshoot when I have no clue where to start?