So I decided to build a new desktop PC.
Things I expected to be complex were perhaps not as complex as I would have thought.
Things that really should have Just Worked did not. (Turns out my DVD drive pilfered from an older machine was flaky, leading to all sorts of reasons to burst into tears.)
Here’s a recent WTF I ran into, with a solution that worked for me.
I decided to set up the machine to dual boot Windows 7 and Ubuntu 14.04. I have Windows 8 on a Surface Pro 3 and while it’s similar to Windows 7 (once you install Classic Shell, etc.) I’m more happy with 7. Plus I have a Windows 8 upgrade disk I bought a while back. Plus I wold rather hold off until Windows 10.
From assorted Googling I determined that the best path for dual boot was ot first install Windows, then install Ubuntu and have it do the GRUB thing.
I had already installed Windows on a SSD and it was booting and running fine. I then added a new hard drive and did the Ubuntu install.
It went well, set up GRUB with Ubuntu and Windows, terrific.
I rebooted the box, selected Ubuntu, all is good.
I rebooted again, selected Windows, and all is not so good.
The USB keyboard/mouse (a single Lenovo compact track-point keyboard) does nothing. I cannot sign into Windows. I cannot click anything to make it shut down. I cringe and do a hard power off.
Back to Google. I find others have had this problem. Same situation: With the Ubuntu/GRUB hard drive connected, booting to Windows leaves the USB keyboard dead. If I detach the Ubuntu drive and boot straight from the Windows drive all is good. Also, the USB stuff all works fine in the BIOS screen and in Ubuntu.
One person with the same trouble said they detached the GRUB drive so they could get into Windows and then made sure they installed all available Windows updates.
This also worked for me. After installing some dozen+ updates I powered down, reattached the GRUB drive, booted back up, and magically all seems OK.
I find these things mysterious. I have no real idea why the loading form GRUB should render the USB keyboard invisible to Windows. Or why updating Windows would fix it. I’m going to guess it has something to do with the inclusion of the additional drive.
But still: why? I have no idea. It feels like spooky action-at-a-distance. And I actually have a good idea about how computers work. I had no such issue when I had a different Ubuntu drive attached (where I selected the OS from the BIOS; the Ubuntu drive was created some time in the past and new nothing of the Windows drive).
It’s just weird science.
So I add some hard drives to the box and boot into Ubuntu to finish setting up. I shut down Ubuntu and reboot into Windows.
Once again, no working USB keyboard at the Windows sign-in screen.
I manage to get into Windows by first unhooking the non-Windows hard drives before rebooting.
I had the idea to then reconnect the drives once I was signed into Windows with a working keyboard. My suspicion is that it was not the Windows updates that fixed the initial problem. My guess is that, for whatever reason, adding a new drive behind Windows’ back makes it sad. And sad Windows then ignores the USB keyboard.
I conceded that this explanation lacks technical merit.
I’m just guessing. It’s a mental model that might help me if this happens again.
Still, after getting in and attaching the drives I was then able to reboot to Windows and sign in with no trouble.
There’s a complete lack of rigor in all this. I have not been methodical. I’ve been focused on getting a working, stable, dual-boot machine in place. It occurs to me now that at some point I altered the boot order for the drives to by -pass GRUB. I have not worked through all combinations of actions.
This is one of many situations I’ve run into where I have a problem, and a goal, and while I would like to understand the technical aspects of solving the problem, I am far more interested in the end goal. If this means semi-random guided hacks that get me where I want to be, I’m OK.
It’s a practical matter. I have more drives to add to the machine, and perhaps I’ll track what happens and what steps I take to get things working (assuming there’s another problem), but documenting weird interactions of hardware and software is not a main goal for me.