Desmarcar os sistemas de arquivos e drivers não reduzirá nem um pouco o tamanho do kernel, porque eles são compilados como módulos e somente os módulos que correspondem ao hardware que você possui são carregados.
Existem alguns recursos do kernel que não podem ser compilados como módulos e que você pode não estar usando. Comece com .config
do Ubuntu, depois examine os que estão compilados no kernel ( y
, não m
). Se você não entende o que é um recurso, deixe-o em paz.
A maioria dos recursos opcionais do kernel são opcionais porque você pode não querer usá-los em um sistema embarcado. Os sistemas embarcados têm duas características: eles são pequenos, portanto, não desperdiçar memória em código não utilizado é importante, e eles têm um propósito dedicado, portanto, há muitos recursos que você sabe que não vai precisar. Um PC é um dispositivo de propósito geral, onde você tende a conectar vários hardwares de terceiros e executar vários softwares de terceiros. Você não pode dizer com antecedência que nunca vai precisar desse ou daquele recurso. Principalmente, o que você será capaz de fazer é oferecer suporte a tipos de CPU diferentes dos seus e soluções alternativas para bugs em chipsets que você não possui (o que poucos não são compilados como módulos). Se você compilar um kernel de 64 bits, não haverá muitos deles, nem perto de um kernel x86 de 32 bits, onde há um pouco de bagagem histórica.
Em qualquer caso, você não vai ganhar nada significativo. Com 8GB de memória, a memória usada pelo kernel é insignificante.
Se você realmente quer brincar com kernels e outras coisas, eu sugiro comprar uma prancha de hobby ou de utilidade ( BeagleBoard , Gumstix , SheevaPlug ,…).