It all started with the question why my disks weren’t spinning down more frequently than anticipated. Who was keeping my disks up? Keeping them from sleep? One nice thing about the internet are the moments where you learn a random fact while searching for something completely different. I don’t even talk about unexpected appearances of problems that are hard to solve. A situation that leaves you a little bit more knowledgeable1 after you have actually solved the problem. I think of even more random facts that come along the way in the process. Intellectual2 by-catch, so to speak. This by-catch came along when I searched for the reason why tests are only performed when you choose never for the -n option for smartctl.

For example when you search for a translation for a blog title about how a command line option of a tool behaves. The random fact this morning: There are languages with a concept called negative concord. Those languages know the concept of affirming a negative instead of cancelling each other out. Old English or some dialects of English know this concept, the German language does not. Modern standard English doesn’t know it either, but it seems to be in colloquial use. If I say in the undying words of Bob Marley “I shot the sheriff, but I didn’t shoot no deputy”, then the correct translation is “Ich habe den Sheriff erschossen, aber den Hilfssheriff habe ich nicht erschossen” but not “Ich habe den Sheriff erschossen, aber ich habe keinen Hilfssheriff nicht erschossen”. I really didn’t shoot the deputy. I didn’t commit a deputy massacre.

Or Pink Floyd’s “We don’t need no education”, which correctly translates to “Wir brauchen keine Bildung” (in the sense of, we really don’t need it) and not to “Wir brauchen nicht keine Bildung” (in the sense of: we want education). There is a long blog entry about double negatives at Wikipedia. Fits somewhat in the overall impression of Germans: We don’t have time for such linguistic concepts — we have to work and sort our paperclips. We have only the strange concept of adding words into gargantuan single-word constructs enabling us to have a word for everything, like “Rindfleischetikettierungsüberwachungsaufgabenübertragungsgesetz”. Efficient! We don’t like no inefficiency! Did I use this correctly? It’s not native to me ;)

Okay, why I’m writing all this: There is an option in TrueNAS Scale to control the behaviour of the S.M.A.R.T. service checking the hard disk health. By default it’s set to never. There is a nice question mark behind it explaining that the tests are only performed if “never” is selected. WTF?

Double Negation

At first this makes absolutely no sense whatsoever. It starts to make sense as soon as you look at the fact that it’s used for the -n option of smartctl. With the command you can prevent the tool from performing tests when the disk is spun down. It really makes total sense when you look at the full name of the option: --nocheck. So this option is a double negation. We don’t need no check! Okay, wrongly worded, that would be negative concord. More correct: There is no power mode of the disks where we don’t do a self test of the disk. If you set it to standby for example, the test is only done when the disk is working. If you set it to sleep the test should only be executed when the disk is not spun down.

That said, that “never” only makes sense when you keep the full name in mind. This morning I learned two things: Why my hard disks woke up without seemingly any reason. And negative concord.

PS: Okay, when I really think about it — shouldn’t --nocheck=never translate to “I really don’t want your f— check! Ever!” in the light of negative concord?


  1. Large servings of knowledge are exceedingly rare. 

  2. Okay, “intellectual” may be a large word here — 

Written by

Joerg Moellenkamp

Grey-haired, sometimes grey-bearded Windows dismissing Unix guy.