Existem várias coisas que você pode fazer para reduzir o tamanho e o número de arquivos em /boot/kernel
.
Possivelmente, a melhor economia de espaço é obtida configurando WITHOUT_KERNEL_SYMBOLS
em /etc/src.conf
(se esse arquivo ainda não existir, basta criá-lo) e na próxima vez que você installkernel
, os arquivos de símbolo de depuração vencidos pode ser instalado. É seguro deletá-los agora, se você precisar do espaço imediatamente ( rm /boot/kernel/*.symbols
)
Existem algumas configurações de make.conf
que controlam quais módulos são criados:
-
NO_MODULES
- desabilita a construção de módulos completamente -
MODULES_OVERRIDE
- especifica os módulos que você deseja construir -
WITHOUT_MODULES
- lista de módulos que não devem ser construídos
A opção NO_MODULES
é provavelmente um pouco pesada demais, então uma combinação judiciosa das outras duas é uma escolha melhor. Se você sabe exatamente quais módulos deseja, basta defini-los em MODULES_OVERRIDE
. Observe que WITHOUT_MODULES
é avaliado após MODULES_OVERRIDE
, portanto, qualquer módulo nomeado em ambas as listas não será criado.
Se você realmente quer suprimir a construção de todos os módulos, você pode usar NO_MODULES
e garantir que todos os drivers e módulos necessários sejam estaticamente compilados no kernel. Cada manpage do driver mostra as linhas apropriadas para adicionar ao seu arquivo de configuração do kernel, então você deve ser capaz de descobrir o que você precisa.
Se você ainda achar que o espaço é um problema, ou se você quer apenas desmontar o kernel o máximo possível, você pode editar sua configuração do kernel para remover quaisquer dispositivos e subsistemas que sua máquina não suporta, ou que você Tem certeza que você não vai querer usar. O sistema de compilação é bastante sensato, e se você inadvertidamente remover um módulo requerido por um ainda ativo na configuração, você receberá uma falha na construção e uma mensagem de erro explicando o que deu errado.
Embora possa ser extremamente entediante, a melhor abordagem é dar pequenos passos, removendo uma ou duas coisas por vez e garantindo que a configuração resultante seja compilada e inicializada corretamente. Seja o que for que você faça, eu recomendo que você faça uma cópia de /usr/src/sys/<arch>/config/GENERIC
e edite a cópia. Se você alguma vez ficar tão confuso que o único recurso é começar a partir da configuração padrão, você ficará contente por ainda ter o arquivo GENERIC
em seu sistema!
Para construir seu kernel personalizado, você pode passar o nome da configuração na linha de comando como make KERNCONF=MYKERNCONF buildkernel
ou pode definir KERNCONF
em /etc/make.conf
. Certifique-se de colocar o arquivo de configuração personalizado em /usr/src/sys/<arch>/config
e o sistema de compilação poderá encontrá-lo.