A computer that fails to boot if certain USB devices are plugged in

I don't have an active problem with this but I am curious.

Over time, my repair work has led me to experience many instances (repeatable and reliable ones) where a computer (desktop or laptop; every situation is unique but is consistent in itself) has problems during the POST/boot phase of startup.

An example: One computer hangs during boot (I forget exactly where, but it's after POST) when I have an external USB storage media in it. This can be a hard drive or a USB drive. It's not EVERY USB HDD or Flash stick, but it is a significant number. So much so that when I boot, I try to make sure it doesn't have these devices plugged in. I can't remember if it matters WHICH USB port(s) is used, but I typically use the front ones.

Another example is a laptop that I worked on, which hung after POST when an Ubuntu LiveUSB was plugged in, unless I used a specific port, which was almost completely destroyed inside.

A third example is another desktop machine which, when booting while a USB hard drive is plugged in, hangs during boot at the point where you see text on the screen. During the pre-OS boot phase. If I unplug the hard drive, the boot immediately resumes as if there were no problem.

Why would external devices (some bootable, some non-bootable) cause this kind of boot issue? It's wide-spread, and non-uniform, and I'm curious what happens at a machine level.


Solution 1:

Here's some insight.

  • Some BIOSes are buggy. A good BIOS should skip over invalid or unknown devices but not all of them do for whatever reason. Try updating your BIOS. I will add that to me, it seems when PCs started gaining the ability to boot off of things other than a floppy or locally attached hard drive, weird bugs have been present on particular BIOSes and systems.

  • Some USB drives I suspect don't implement the USB mass storage standard 100% correctly. This would usually be a problem with MP3 players that look like hard drives, devices that actually present two storage devices to the system (I had an MP3 player that presented its internal and external storage as two USB mass storage "subdevices" and I always had to make sure it was unplugged during boot).

  • Some devices may be flaky and be causing the bus to hang or other weird behavior. USB drives are cheap and it's likely no one cares about QC'ing them against every possible hardware combination. It's also possible the motherboard chipset may have idiosyncracies that only shows up with specific devices.

So much so that when I boot, I try to make sure it doesn't have these devices plugged in.

This is what I do with pretty much any system, IMHO it's a best practice.

Solution 2:

You could try checking the boot order of the BIOS in question. If a USB device is listed before the HDD or CD drive, then the computer will attempt to use it to boot up. If there is no bootable partition on the USB device, then you may get a blank screen or some kind of "Boot record not found" type message.

Apart from the boot order, there may be some compatibility issues between the motherboard and USB device. If the motherboard is unable to recognise the device, or only looks at a certain port, then this would explain the apparent inconsistent behaviour.

Solution 3:

One case I noticed was that is that on Ubuntu 12.04 LTS, if you don't explicitly use fstab to mount a large NTFS drive (3TB) but leave it to Ubuntu to automount, then it will hang without even allowing you to access the BIOS.

I don't understand why this would happen if the BIOS doesn't depend on the operating system, but I'm just adding it here in case anyone else is as perplexed as I am.

EDIT Sorry, I thought the problem had gone away but it's resurfaced even with what I wrote above. So I guess what I wrote above is simply not true.