Differences

This shows you the differences between two versions of the page.

Link to this comparison view

preparando_kernel_freebsd_10.1_para_o_carp_e_altq_pt_br [2017/09/05 12:18] (current)
Line 1: Line 1:
 +====== Preparando o Kernel do FreeBSD 10.1 para CARP e ALTQ ======
  
 +
 +E ai galera aqui vamos verificar como preparar o kernel do <​nowiki>​FreeBSD</​nowiki>​ 10.1 para trabalhar com o CARP e o ALTQ.
 +
 +Agora pense que você não mandou instalar os fontes do kernel na instalaço do <​nowiki>​FreeBSD</​nowiki>​. Então a gente precisamos obter ele, vamos fazer este processo com o svn, vamos mandar instalar ele.
 +
 +Podemos mandar instalar ele com o pkg da seguinte forma
 +<sxh bash>
 +pkg install subversion
 +</​sxh>​
 +
 +Podemos fazer a intalação também pelo ports
 +<sxh bash>
 +cd /​usr/​ports/​devel/​subversion
 +make install clean
 +</​sxh>​
 +
 +Agora vamos obter os fontes da seguinte forma.
 +<sxh bash>
 +svn checkout https://​svn0.us-west.FreeBSD.org/​base/​head/​sys /​usr/​src/​sys
 +</​sxh>​
 +
 +Agora vamos criar um diretório que vai armazenar a configuração do kernel.
 +<sxh bash>
 + mkdir /​root/​kernels
 +</​sxh>​
 +
 +Agora vamos criar o nosso arquivo de configuração para o nosso kernel.
 +<sxh bash>
 +vim /​root/​kernels/​PFFIREWALL
 +### INCLUDE GENERIC CONFIGURATION
 +include GENERIC
 +
 +### SET THE ID FOR KERNEL
 +ident PFFIREWALL
 +
 +### CONFIGURATION FOR PF AND CARP
 +device pf
 +device pflog
 +device pfsync
 +device carp
 +
 +### CONFIGURATION FOR ALTQ CAN BE USED WITH PF TO PROVIDE (QOS)
 +options ​        ALTQ
 +options ​        ​ALTQ_CBQ
 +options ​        ​ALTQ_RED
 +options ​        ​ALTQ_RIO
 +options ​        ​ALTQ_HFSC
 +options ​        ​ALTQ_PRIQ
 +options ​        ​ALTQ_NOPCC
 +
 +### ENABLE QUOTA FOR FS
 +options QUOTA
 +</​sxh>​
 +
 +A primeira linha do arquivo fazemos a importação da configuração do kernel GENERIC que é o padrão que vem com o <​nowiki>​FreeBSD</​nowiki>,​ eu adicionei uma linha extra que é para quota caso precise caso não queira basta remover.
 +
 +Agora vamos criar um link da configuração do nosso kernel para o diretório que contem o GENERIC kernel da nossa arquitetura.
 +<sxh bash>
 +ln -s  /​root/​kernels/​PFFIREWALL /​usr/​src/​sys/​$(uname -m)/​conf/​PFFIREWALL
 +</​sxh>​
 +
 +Agora vamos acessar o diretório /​usr/​src ​
 +<sxh bash>
 +cd /usr/src
 +</​sxh>​
 +
 +Agora precisamos mandar compilar o kernel.
 +<sxh bash>
 +make buildkernel KERNCONF=PFFIREWALL
 +</​sxh>​
 +
 +Agora precisamos mandar instalar o kernel.
 +<sxh bash>
 +make installkernel KERNCONF=PFFIREWALL
 +</​sxh>​
 +
 +Agora precisamos só mandar reiniciar a máquina.
 +<sxh bash>
 +reboot
 +</​sxh>​
 +
 +Depois que o sistema reinicializar vamos ter algo como.
 +<sxh bash>
 +uname -a
 +FreeBSD freebsd.douglasqsantos.com.br 10.1-RELEASE-p3 FreeBSD 10.1-RELEASE-p3 #0: Wed Jan  7 10:46:38 BRST 2015     ​root@freebsd.douglasqsantos.com.br:/​usr/​obj/​usr/​src/​sys/​PFFIREWALL ​ amd64
 +</​sxh>​
 +
 +====== Referências ======
 +  - http://​svnweb.freebsd.org/​base/​head/​sys/​
 +  - https://​www.freebsd.org/​doc/​en_US.ISO8859-1/​books/​handbook/​svn.html