Tornando o kernel do OpenBSD enxuto.
Escrito por VonNaturAustreVe em Março 22, 2008
Tornando o kernel do OpenBSD enxuto.
Este artigo visa demonstrar o uso da ferramenta dmassage para tornal o kernel o mais enxuto possível. Descobri a ferramenta dmassage enquanto lia o livro “Absolute Openbsd - Unix for the pratical paranoid”, que eu recomendo para aqueles que querem entrar no mundo dos bsd’s.
Generic kernel
#pkg_add -vvvi dmassage parsing dmassage-0.6 Adding dmassage-0.6 extracting /usr/local/bin/dmassage extracting /usr/local/man/man1/dmassage.1 /dev/wd0e: 383 bytes /dev/wd0g: 12126 bytes #
Dmssage instalado, temos agora que baixar o src do kernel já que o OpenBSD não traz junto com ele na instalação.
# cd /usr/src/
Conectamos no ftp do openbsd
Usuario anonymous e sem senha
# ftp ftp.openbsd.org
Pegamos o src
ftp> get pub/OpenBSD/4.1/src.tar.gz
Assim que tivermos baixado podemos extrai-lo
#tar -xvzf src.tar.gz
Ja temos o src do kernel agora precisamos usar o dmassage para verificar o que meu kernel necessita.
#cd sys/arch/i386/conf/ #dmassage -s GENERIC > new
Abra o arquivo new e veja que o dmassage colocou um comentario # na frente de todos os devices que nao possuimos em nossa maquina, isso proporciona a nossa maquina o uso especifico de devices,e que em termos de hardware ajuada a economizar um pouco de memoria.
Compilando o kernel
Usamos o config para criar os arquivos necessarios para a compilacao
#config new
Don’t forget to run “make depend”
Descemos 2 niveis e entramos no diretorio do kernel new
# cd ../compile/new/
Compilamos as dependencias
# make depend
Compilamos o kernel
# make
O kernel ainda nao esta instalado, para instalarmos devemos copiar o arquivo bsd que esta nesta pasta para o diretorio /. Para evitarmos um erro de kernel no boot, vamos copiar o kernel com um nome diferente de bsd, no caso bsd.new
# cp bsd /bsd.new
Feito isso podemos reiniciar a maquina, atentando para a hora em que o boot for iniciar carregarmos o novo kernel digitarmos boot bsd.new
Using Drive: 0 Partition: 3
reading boot…..
probing: pc0 com0 com1 apm mem[639k 255M a20=on]
disk: fd0 hd0+
>> OpenBSD/i386 BOOT 2.10
boot> boot bsd.new
Instalado o kernel
Caso o boot tenha sucesso e vc esteja certo que seus devices estejam todos funcionando podemos setar nosso kernel para o default
#mv /bsd /bsd.old #mv /bsd.new /bsd
Referências
Compilar um novo kernel
Dmassage
OpenBSD Faq
Autor:Giancarlo Rubio
Email do autor:gianrubio@NOSPAM-gmail.com

