Solved: Ctrl+F3 hotkey not working

I had a problem where the key combination Ctrl+F3 stopped working everywhere. In most editors, this moves a selection to the next instance of the currently select string of characters, so it’s a quick way to skip through all the uses of a function inside a file, for example. It’s a deeply-seated part of my msucle memory, and having it not work is frustrating.

The reason for this tuned out to be Parsec, which I had recently installed, and which registered for several global hotkeys that are very commonly used in IDEs. And since Windows prioritizes global hotkeys over application hotkeys, it was eating all my Ctrl+F3 commands. Changing the Parsec hotkeys made my problem go away.

Developers: Don’t do this. Ctrl as the sole modifier for a hotkey should be reserved for applications, where it isn’t already used by the OS (like Ctrl+F, Ctrl+Z, Ctrl+V and Ctrl+C). Same goes for unmodified function keys. F1, F3 and F10 have a canonical purpose in every application. Any combination of modifiers with F1 is probably used by an IDE. Microsoft used to publish interface guidelines that spell this out, but I cannot find a recent version of them, only this page that says it’s discontinued.

D-Link 320L NAS repair

I have had a cheap-ish D-Link NAS running at my home for years. Last week, it broke. The drives were audibly still spinning up, and the activity light was blinking, indicating that it booted, but then went dark. Nothing on the network, no way to tell what was up.

There are two 4 TB drives in the enclosure, configured as RAID1. My immediate suspicion was that the mirroring might be out of sync. A bit of Google research told me that the box is a tiny Linux machine using Linux RAID partitions.

The first thing I did was to remove one of the drives. That made the other one the only drive in the array, and with no discrepancies, the NAS showed up on the network again, and allowed me to take a backup of my data. Which only confirmed my earlier suspicions.

Next, I put both drives in an old Linux desktop that had the required SATA slots, and Linux’s mdadm recognized them as being formatted for a RAID, but out of sync. dmesg said something about kicking sdb2 out of the array, so I used mdadm -a to put the array back together, and the array began rebuilding, which took a few hours, but eventually gave ma a working RAID1 array again. I was able to insert the drives back into the D-Link enclosure, and now it boots up and works just as before.

Lessons learned:

  1. My D-Link NAS cannot recover on its own.
  2. Linux skills pay unexpected dividends.
  3. I should have configured remote syslog logging before this happened. Fixed that first thing.
  4. It is probably time to buy a new device. This one is out of service, has never been 100% reliable, is pretty loud, and has no fancy extras.

Now that I know the disks are still in good shape, I’ve ordered a 2-bay Synology. I’m looking forward to the built-in Plex server, support for more than SMB 1.0, and hopefully a better management interface, too.