Parece que você está solicitando uma opinião ao invés de responder uma pergunta, então talvez isso esteja em meta ou em algum lugar, mas para mim o maior erro que o linux fez foi o overcommit de memória para malloc, resultando no assassino da OOM e qualquer outra coisa esse caminho.
O segundo maior erro histórico, IMHO, é a decisão predominante de substituir ferramentas antigas do Unix por versões que funcionam de forma semelhante, mas não idêntica, como tornar o vi um atalho para o vim (em vez de um vi real ou como um como nvi), sh apontando para bash e coisas assim. Essas decisões ainda causam problemas na compatibilidade do script shell entre o Linux e outros Unix, incluindo os BSDs.Edit: 3rd, e como eu poderia esquecê-lo, toda a coisa / var / namespace é preferida ao sysctl, embora eu entenda por que isso foi feito e faça como a semântica do sistema de arquivos onde eles fazem sentido.