Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
O arquivo de configurao
O formato geral do arquivo de configurao bastante simples. Cada linha contm
uma palavra-chave e mais algum argumento. Para simplificar, a maioria das linhas
contm somente um argumento. Qualquer coisa que segue um # considerado um
comentrio e ignorado. As seguintes sees descrevem cada palavra-chave,
geralmente na ordem que so listadas no GENERIC, embora algumas palavras-
chaves relacionadas sejam agrupadas em uma nica seo (tal como rede) mesmo que
sejam descartados durante todo o arquivo GENERIC. Uma lista completa de opes
mais detalhadas, a explicao de cada um dos dispositivos presentes no arquivo de
configurao do kernel, esto disponveis no arquivo LINT, localizado no mesmo
diretrio do GENERIC. Se voc tiver na dvida a respeito da necessidade de uma
linha, verifique primeiro no LINT.
Nota: No FreeBSD 5.X e superiores o LINT no existe. Veja o arquivo NOTES para
opes dependentes de arquitetura. Algumas opes, principalmente independentes
da arquitetura, so armazenadas no arquivo /usr/src/sys/conf/NOTES. aconselhvel
revisar as opes dispostas neste arquivo tambm.
A seguir um exemplo de arquivo de configurao GENERIC do kernel com vrios
comentrios adicionais, onde eles forem necessrios, para esclarecimentos. Este
exemplo deve se equivaler uma cpia que voc tem disponvel em
/usr/src/sys/i386/conf/GENERIC. Para obter detalhes sobre todas as opes possveis
do kernel, veja/usr/src/sys/i386/conf/LINT.
#
# GENERIC -- Generic kernel configuration file for FreeBSD/i386
#
# For more information on this file, please read the handbook section on
# Kernel Configuration Files:
#
# http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/kernelconfig-
config.html
#
# The handbook is also available locally in /usr/share/doc/handbook
# if you've installed the doc distribution, otherwise always see the
# FreeBSD World Wide Web server (http://www.FreeBSD.org/) for the
# latest information.
#
# An exhaustive list of options and more detailed explanations of the
# device lines is also present in the ../../conf/NOTES and NOTES files.
# If you are in doubt as to the purpose or necessity of a line, check first
# in NOTES.
#
# $FreeBSD: src/sys/i386/conf/GENERIC,v 1.380 2003/03/29 13:36:41 mdodd Exp $
Est a arquitetura da mquina. Deve ser algum dos seguintes valores: i386, pc98,
sparc64, alpha, ia64, amd64 ou powerpc.
cpu I486_CPU
cpu I586_CPU
cpu I686_CPU
A opo acima especifica o tipo da CPU em seu sistema. possvel manter mltiplas
entradas desta definio, em casos onde no souber ao certo que classes de CPU
devem ser suportadas em seu kernel, nesse caso, as opes escolhidas so I586_CPU
ou I686_CPU), entretanto, para personalizar um kernel, melhor especificar apenas a
CPU que voc dispe, quando esta puder ser prevista. Se voc estiver inseguro
quanto classe da sua CPU, pode verificar o arquivo /var/run/dmesg.boot para
verificar as mensagem do carregamento do sistema.
O suporte I386_CPU ainda est disponvel no fonte do FreeBSD, mas esta opo
agora desativada por padro em ambos -STABLE e -CURRENT. Isto significa que
para instalar o FreeBSD com um processador de classe 386, voc ter que optar por
uma das seguintes alternativas:
Instale uma verso mais antiga do FreeBSD e recompile o sistema como
descrito na Seo 9.3.
Compile as aplicaes em nvel de usurio e o kernel em outra mquina e
instale-as no 386 em questo, usando os arquivos previamente compilados,
armazenados em /usr/obj (para mais detalhes veja a Seo 21.5).
Gere sua prpria verso do FreeBSD incluindo suporte a I386_CPU no
kernel de instalao via CD-ROM.
A primeira destas opes provavelmente a mais fcil, mas voc necessitar de
muito espao em disco em uma mquina de classe 386, o que pode ser difcil de
encontrar.
ident GENERIC
Est a identificao do kernel. Voc pode mudar o nome do seu kernel para
qualquer um, mas como exemplo da configurao do nosso kernel customizado,
oMYKERNEL, voc deve acompanhar as instrues dos prximos exemplos. O
nome que voc colocou no ident sero mostrados quando o kernel for carregado, de
forma que a opo utilizada para dar um nome novo ao kernel, ou um nome
diferente se voc quiser distinguir seu novo kernel do kernel atual (especialmente til
quando quiser compilar um kernel experimental).
maxusers n
A opo maxusers ajusta uma srie de tabelas importantes do sistema. Esta opo no
deve ser utilizada de forma a se igualar ao nmero de usurios simultneos esperados
em sua mquina.
Desde o FreeBSD 4.5, o sistema ajusta automaticamente esta configurao, se seu
valor for modificado para 0[1]. No FreeBSD 5.X, maxusers definido por padro
com o valor 0 quando for omitido. Se sua verso do FreeBSD for anterior ao 4.5, ou
voc deve definir est varivel manualmente sempre, e o valor de maxusers deve ser
no mnimo 4, especialmente se for usando o Sistema de Janelas X, ou compilando
programas com frequncia. A razo que a tabela mais importante ajustada por meio
domaxusers o nmero mximo de processos, que definido como 20 + 16 *
maxusers, de forma que, se voc ajustar maxusers para o valor 1, podero existir no
mximo 36 processos simultneos, incluindo ai os 18 processos que o sistema carrega
na hora da inicializao, e os 15 que voc provavelmente ir criar quando iniciar o
sistema de interface grfica. Mesmo tarefas simples como a leitura de uma pgina de
manual ser iniciada levantando nove processos para filtro, decompactao e
visualizao do manual. Colocando maxusers em 64 permitir que voc tenha 1044
processos simultneos carregados, o que deve ser o suficiente para a maioria de suas
necessidades. Entretanto, se voc se deparar com o erro proc table is full ao tentar
iniciar outro programa, ou se o sistema em questo tratar de um servidor com um
grande nmero de usurios simultneos (digamos, como o ftp.FreeBSD.org por
exemplo), possvel aumentar o valor da varivel maxusers e recompilar o kernel do
sistema.
Nota: maxusersno limita o nmero de usurios que podem logar em sua mquina.
Ele apenas define o valor de vrias tabelas quantias razoveis considerando o
nmero mximo de usurios e processos que voc provavelmente ter rodando em
seu sistema. A opo que possibilita limitar o nmero de logins remotos simultneous
e de terminais grficos pseudo-device pty 16.
# Floating point support - no desabilite.
device npx0 at nexus? port IO_NPX irq 13
Suporte a Rede. Mantenha esta opo ainda que voc no planeje se conectar a uma
rede. Muitos programas tem necessidade mnimas que necessitam de suporte rede,
como o uso da interface de loopbacl (isto , conexes internas de rede), de forma que
esta opo mandatria.
options INET6 #IPv6 communications protocols
Esta opo, est presente apenas no FreeBSD 5.X; ela habilita o suporte do kernel
listas de controle de acesso. Seu uso requer as opes de atributos extendidos e
UFS2, e os detalhes so descritos na Seo 10.13. ACLs so habilitadas por padro, e
no devem ser desabilitadas no kernel se tiverem sido previamente utilizadas no
sistema de arquivos, pois remover a lista de controle de acessos, modificando os
atributos dos arquivos protegidos para valores imprevisveis.
options UFS_DIRHASH #Improve performance on big directories
Est opo inclui recursos para aumentar a velocidade de operaes de disco em
diretrios grandes, ao custo de usar um pouco de memria adicional. Normalmente
interessante usufruir desta opo em um grande servidor, ou em situaes onde haja
grande demanda de interao com estaes de trabalho; remova esta opo quando
estiver usando o FreeBSD em um pequeno sistema onde memria a prioritria e
velocidade de acesso a disco menos importante, como um firewall.
options SOFTUPDATES #Enable FFS Soft Updates support
Esta opo habilita o mtodo Soft Updates no kernel, isto ir ajudar a aumentar a
velocidade de escrita ao disco. Mesmo sendo habilitada no kernel, estes recursos
ainda precisam ser atribudos cada partio de disco. Revise a sada do comando
mount(8) para obter detalhes sobre que sistemas de arquivos esto com Soft
Updateshabilitados. Caso no esteja observando a opo, necessrio ativa-la usando
o tunefs(8) (para sistemas de arquivos existentes) ou newfs(8) (para novo sistema de
arquivos).
options MFS #Memory Filesystem
options MD_ROOT #MD is a potential root device
Compatibilidade com BSD 4.3. Deixe isto descomentado, alguns programas agiro
estranhamente se voc comentar isto.
options COMPAT_FREEBSD4 #Compatible with FreeBSD4
Esta opo necessria no FreeBSD 5.X i386 e Sistemas Alpha para suporte
aplicativos compilados em outras verses do FreeBSD, que usa outro sistema de
interfaces de chamadas. Recomenda-se que esta opo seja usada sobre todos i386 e
sistemas Alpha que podem rodar outros aplicativos; plataformas que ganham suporte
somente em 5.X, tal como ia64 e Sparc64, no tem esta necessidade.
options SCSI_DELAY=15000 #Delay (in ms) before probing SCSI
Isso faz com que o kernel pare por 15 segundos antes de procurar pelos dispositivos
SCSI em seu sistema. Se voc dispor apenas de discos IDE, pode ignorar esta opo;
em discos SCSI, pode ser interessante baixar at 5 segundos, para acelerar a
inicializao. Naturalmente, se depois disso o FreeBSD tiver problemas para
reconhecer algum dispositivo SCSI, suba este valor novamente.
options UCONSOLE #Allow users to grab the console
Permite que a console usada por aplicaes grficas sejam acessadas por outros
usurios. Por exemplo, se voc criar um terminal xterm com xterm -C, tudo que
estiver sendo feito pelo write(1), talk(1), e todas as outras mensagens que voc
receber, assim como algumas mensagens de console emitidas pelo kernel, sero
capturadas.
Nota: No FreeBSD 5.X, UCONSOLE no mais necessria.
options USERCONFIG #boot -c editor
Todos os PCs com FreeBSD suportam esta opo. Caso seu computador seja um IBM
PS/2 (Arquitetura Micro Canal), o FreeBSD fornece um suporte um pouco limitado.
Para maiores informaes sobre este, veja a opco MCA, em
/usr/src/sys/i386/conf/LINT.
device eisa
Inclua esta opo caso sua placa-me seja EISA. Esta opo habilita a auto-deteco
e suporte a configurao de todos os dispositivos sobre o barramento EISA.
device pci
Inclua este opo se sua placa-me suporta PCI. Esta opo habilita a auto-deteco e
suporte a configurao demplacas PCI e os que estiverem em transio do
barramento ISA para PCI.
device agp
Inclua esta opo se voc dispor de uma placa de AGP em seu sistema. Esta opo
habilita suporte AGP e AGP GART em placas com estes recursos.
# Floppy drives
device fdc0 at isa? port IO_FD1 irq 6 drq 2
device fd0 at fdc0 drive 0
device fd1 at fdc0 drive 1
Trata-se do controlador de disco flexvel. Fd0 o drive flexvel A:, e fd1 o drive B:.
device ata
Este driver suporta todos dispositivos ATA e de ATAPI. Voc necessitar somente
uma linha com a entrada device ata para que o kernel detecte todos os dispositivos
PCI ATA/ATAPI em uma mquina moderna.
device atadisk # ATA disk drives
Esta opo necessrio em conjunto com a device ata para dispositivos de controle
de discos ATA.
device atapicd # ATAPI CDROM drives
Esta opo necessrio em conjunto com a device ata para controle dispositivos de
unidades de disquetes ATAPI.
device atapist # ATAPI tape drives
Esta opo faz o controle esttico de nmero identificador ATA, no padro antigo, ou
os nmeros de dispositivos que so alocados dinmicamente.
# ATA and ATAPI devices
device ata0 at isa? port IO_WD1 irq 14
device ata1 at isa? port IO_WD2 irq 15
Suporte controladoras RAID. Voc pode manter apenas suporte aos equipamentos
que voc tem disponvel, removendo o suporte s controladoras RAID no
disponveis.
# atkbdc0 controls both the keyboard and the PS/2 mouse
device atkbdc0 at isa? port IO_KBD
Use este dispositivo caso seu mouse seja do tipo que requer conectores PS/2.
device vga0 at isa?
Uma porta paralela de propsito geral (``geek port'') padro de E/S IEEE1284.
#device vpo # Requires scbus and da
Trata-se do suporte ``Zip Drive'' da Iomega. Requer ainda suporte scbus e da.
Melhor performance garantida com portas em modo EPP 1.9.
# PCI Ethernet NICs.
device de # DEC/Intel DC21x4x (``Tulip'')
device fxp # Intel EtherExpress PRO/100B (82557, 82558)
device tx # SMC 9432TX (83c170 ``EPIC'')
device vx # 3Com 3c590, 3c595 (``Vortex'')
device wx # Intel Gigabit Ethernet Card (``Wiseman'')
Suporte uma srie de placas de rede PCI. Voc pode comentar ou remover os
dispositivos que controlam placas de rede que voc no disponha em seu sistema.
# PCI Ethernet NICs that use the common MII bus controller code.
device miibus # MII bus support
ether necessrio caso voc tenha alguma placa de rede disponvel. Este dispositivo
inclui suporte ao cdigo genrico do protocolo Ethernet.
pseudo-device sl 1 # Kernel SLIP
sl o suporte SLIP. Esta tecnologia foi quase completamente substituda pelo PPP,
que mais fcil de configurar, mais flexvel e melhor suporte conexo modem-a-
modem, e mais mais poderoso. O valor na frente da entrada sl indica quantas
sesses simultneas da conexees SLIP sero suportadas.
pseudo-device ppp 1 # Kernel PPP
usada pelo programa que implementa o suporte PPP em nvel de usurio. O valor
na frente da entrada tun indica o nmero de sesses simultneas suportadas pelo PPP.
Veja a PPP deste livro para obter maiores informaes.
ou
pseudo-device gif 4 # IPv6 and IPv4 tunneling
Implementa tunelamento do protocolo IPv6 sobre IPv4, bem como tunelamento IPv4
sobre IPv4, e IPv6 sobre. partir do FreeBSD 4.4 o dispositivo gif pode ser criado
por demanda, e a primeira entrada (sem o identificador numrico aps o gif) pode ser
usada. Verses anteriores do FreeBSD requerem esta definio.
pseudo-device faith 1 # IPv6-to-IPv4 relaying (translation)
Ou seja, a entrada acd0 deve estar disponvel no /dev, possivelmente seguida por uma
letra, tal como c, ou precedido por uma letra r, que significa tratar-se de um
dispositivo cr (``raw''). Existe contudo uma grande possibilidade destes arquivos no
estarem presentes sob este diretrio, neste caso voc pode entrar no diretrio /dev:
# sh MAKEDEV acd0
Quando a rotina terminar de ser executada, devero existir as entradas acd0c e racd0c
sob /dev.
Para placas de som, o seguinte comando cria as entradas apropriadas:
# sh MAKEDEV snd0
Nota: Ao criar dispositivos de controle tais como Placas de Som, se outras pessoas
tiverem acesso sua mquina, pode ser necessrio proteger os dispositivos contra
acesso externo adicionando os arquivos no /etc/fbtab. Veja o manual do fbtab(5) para
obter maiores informaes.
Siga este simples procedimento quando quizer adicionar dispositivos de controle
outros equipamentos no GENRICOS que no tiverem entradas apropriadas.
Nota: Todas as controladoras SCSI usam a mesma entrada sob o /dev, de forma que
estes no requerem que os dispositivos sejam manualmente criados. As placas de rede
e SLIP/PPP no tem dispositivos de controle sob o /dev, de forma que voc no deve
se preocupar tambm com estes equipamentos.