Escolar Documentos
Profissional Documentos
Cultura Documentos
Livro Certificacao Linux 4 Edicao Amostra PDF
Livro Certificacao Linux 4 Edicao Amostra PDF
I N T R O D U O
w w w . e d i t o r a n o v a t e r r a . c o m . b r
2 Certificao Linux
Sempre existiu e vai existir uma lacuna no mercado de TI: os profissionais que saem
das faculdades nem sempre esto preparados para aquilo que o mercado quer e preci-
sa. Ainda mais no mercado de TI, onde a velocidade muito grande e as tecnologias
mudam e se aprimoram a cada 6 meses.
Desta maneira, a indstria de TI, formada por grandes empresas, como IBM, HP, SuSe,
Microsoft, Cisco, Intel, RedHat, Apple, dentre outras, se reuniram atravs de associa-
es ou programas prprios de certificaes para preencher essa lacuna no mercado
de profissionais capazes de trabalhar com eficcia nas suas plataformas, equipamen-
tos e tecnologias.
Duas grandes organizaes reconhecidas mundialmente para cumprir esse papel de certi-
ficar os profissionais de TI so a CompTIA e a LPI.
A LPI surgiu em 1999 com o objetivo de criar uma certificao independente
da distribuio Linux, de forma que seus profissionais certificados esto aptos
a trabalhar com qualquer verso de Linux. O LPI conta com trs nveis de certi-
ficao: LPIC-1, LPIC-2 e LPIC-3. Cada nvel pretende certificar um profissional
apto a desempenhar tarefas que devam ser executadas com um crescente grau de
dificuldade e complexidade.
A CompTIA tem um programa de certificao h 25 anos mais abrangente, que abraa
diversas tecnologias, no s o Linux.
Em 2012, essas duas organizaes resolveram unir suas foras no mundo Linux para
criar uma certificao dupla, de forma que o profissional que se certificar no Comp-
TIA Linux+ Powered by LPI, alm de receber o certificado da CompTIA, recebe o
certificado da LPI, LPIC-1.
Isso, alm de ser um grande incentivo, garante a entrada e sustentabilidade dos tcni-
cos no mercado de trabalho capazes de realizar tarefas no Linux. Desta forma, as duas
provas da CompTIA Linux+ LX0-101 e LX0-102 foram desenvolvidas para certificar a
competncia do sistema de administrao usando o sistema operacional Linux e suas
ferramentas associadas. Foi desenvolvido para ser neutro em termos de distribuio,
seguindo o Linux Standard Base entre outros padres e convenes relevantes.
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Introduo Guia de Estudos Para CompTIA Linux + Powered by LPI & LPI
3
Desta forma, voc far as provas da CompTIA Linux+ e receber dois certificados, um
da CompTIA e outro da LPI. Mas veja que essa parceria s funciona se voc fizer as
provas da CompTIA e no da LPI.
Se voc est lendo esse livro, com certeza quer ter uma certificao de peso reconhe-
cida internacionalmente no seu currculo e no seu carto de visitas. O mercado de
software livre est em crescimento e procura de profissionais certificados. E isso
timo para voc, sua carreira e tambm seu bolso.
A primeira edio deste livro, publicado em 2005, foi aclamada como o melhor livro
de estudos para a certificao LPI pela comunidade do BR-LINUX. Este sucesso
fruto de muito trabalho e empatia da comunidade Linux.
Esta edio foi ampliada e revisada para contemplar a reformulao da prova da LPI
em abril de 2012 e tambm contempla os contedos da CompTIA Linux+, de forma
que voc vai poder fazer as provas da CompTIA e ter dois certificados em mos.
Este um livro de Linux objetivo, didtico e focado nos temas das provas CompTIA
Linux+ e LPI LPIC-1. Voc ir encontrar exatamente aquilo que precisa estudar e na
medida certa para o exame.
E, para cumprir com os objetivos, preciso que voc saiba todos os tpicos das provas
101 e 102.
Os tpicos de cada prova da certificao LPIC-1 so:
PROVA 101:
Tpico 101 Arquitetura do Sistema;
Tpico 102 Instalao do Linux e Gerenciamento de Pacotes;
Tpico 103 Comandos GNU e UNIX;
Tpico 104 Dispositivos e Sistema de Arquivos.
w w w . e d i t o r a n o v a t e r r a . c o m . b r
4 Certificao Linux
PROVA 102:
Tpico 105 Shell, Shell Scripts e Gerenciamento de Dados;
Tpico 106 Interface de Usurio e Desktop;
Tpico 107 Tarefas Administrativas;
Tpico 108 Servios Essenciais do Sistema;
Tpico 109 Fundamentos e Servios de Rede;
Tpico 110 Segurana e Criptografia.
Veja que de tempos em tempos os tpicos so reordenados entre as provas 101 e 102.
Em abril de 2012 houve mudanas na distribuio dos tpicos entre o exame 101 e
o 102, alguns contedos foram retirados dos exames e outros poucos acrescentados.
Hoje tambm no mais possvel escolher entre o exame para distribuies baseadas
em RPM/YUM ou Debian, devendo o candidato ser fluente em ambos os sistemas de
distribuio de pacotes de software. Os novos temas que antes no eram abordados so:
Gerenciamento de dados SQL;
Acessibilidade;
Internacionalizao e regionalizao;
Criptografia de dados;
Mais tratamento de erros e segurana;
Gerenciamento de dispositivos udev;
Cobertura do sistema de arquivos EXT4;
Gerenciador de boot GRUB2;
Cobertura do systemd;
Gerenciador de volumes LVM;
IPv6.
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Introduo Guia de Estudos Para CompTIA Linux + Powered by LPI & LPI
5
Em compensao, alguns itens no fazem mais parte do exame 101 e 102, tais como:
Estratgias de Backup;
Configurao de servidor de DNS;
Customizar e recompilar o Kernel;
Configurao de servidor Apache;
Configurao de compartilhamento de arquivos via Samba;
Configurao de compartilhamento de arquivos via NFS;
Configurao de Servidor de DHCP;
Configurao de cliente PPP;
Gerenciador de boot LILO.
O exame 101 a primeira prova requerida para a certificao LPIC Nvel 1. Nesta pro-
va so abordados 4 tpicos.
O exame 101 tem 90 minutos de durao e aproximadamente 60 questes. Cerca de 75%
das questes so de mltipla escolha onde existe somente uma opo correta. Algumas iro
apresentar um cenrio onde alguma medida administrativa precisa ser tomada e em outras
se pergunta qual o comando apropriado para uma determinada tarefa.
Outros 10% das questes so de mltipla escolha com mais de uma opo correta.
Este tipo de questo sem dvida mais difcil porque apenas uma opo incorreta
invalida toda a questo.
Este exame ir testar seu conhecimento terico, comandos e suas opes comuns,
localizao de arquivos importantes, sintaxe de configuraes e procedimentos mais
usados. Uma vez que voc tenha conseguido solidificar os conceitos bsicos do sis-
tema operacional, esta no ser uma prova difcil e geralmente no existem questes
com respostas ambguas ou maldosas.
O exame de certificao Linux LPI 102 o segundo requerido para obter o certificado
LPIC Nvel 1.
w w w . e d i t o r a n o v a t e r r a . c o m . b r
6 Certificao Linux
Este exame costuma ser 20% maior que o exame 101 e cobre uma boa parte da administra-
o de sistemas Linux. Ele no tem a inteno de fazer perguntas de dupla interpretao e
nem maldosas, mas os tpicos abordados so mais complexos e exigem maior experincia
do candidato. Uma ateno especial deve ser dada nos tpicos relativos a segurana.
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Introduo Guia de Estudos Para CompTIA Linux + Powered by LPI & LPI
7
Muitas pessoas me perguntam sobre qual distribuio de Linux a mais adequada
para a certificao, testar os comandos, etc. Eu sempre respondo: aquela que voc
gostar mais. Diferentemente das outras certificaes de Linux, a LPI preza pela inde-
pendncia das distribuies. A prova focada em LINUX, seja ele qual for.
A LPI no utiliza na prova nenhum wizard ou configurador automtico que algumas
distribuies tm. De forma que toda configurao e manejo do servidor so feitos
com comandos no Shell e diretamente nos arquivos de configurao. Isto muito bom
porque o profissional fica experiente em qualquer Linux e no fica viciado em alguma
ferramenta amigvel.
Mas existe alguma que eu indico? Sim. Mas se trata de minha opinio pessoal. Eu
gosto do OPEN-SUSE. uma distribuio muito estvel, feita por alemes que prezam
muito pela obedincia completa aos padres do Linux Standard. Os comandos, arqui-
vos e estrutura so exatamente como manda o figurino. S um detalhe importante:
voc precisar se familiarizar com os gerenciadores de pacote Debian e RedHat. E
geralmente uma distribuio adota um OU outro. E para preparar-se para a prova
bom voc estar afiado nos dois modelos. Portanto, escolha uma distribuio baseada
em Debian e outra em RedHat.
Fsico
As pessoas com estas caractersticas so os inquietos, so os fuadores, os desmonta-
dores de equipamentos e brinquedos, os que querem saber como funciona e ver por
dentro, os que no conseguem ficar sossegados em seu lugar.
w w w . e d i t o r a n o v a t e r r a . c o m . b r
8 Certificao Linux
Eles so pessoas que no conseguem ficar sentadas por muito tempo. Eles simples-
mente raciocinam melhor quando seus corpos esto em movimento. Eles interagem
melhor com o mundo atravs do contato manual e corporal. Os Aprendizes fsicos
adoram esportes, inventar, construir e danar.
Quando esto aprendendo ou adquirindo capacitao acadmica, essas pessoas se
beneficiaro mais com atividades de expresso corporal, manipulando e tocando ob-
jetos, realizando exerccios, etc.
MENU
NOTA Dicas para voc aprender melhor:
DICA
ATENO
CUIDADO
Realize seus estudos com montagens e construes de objetos
PRATIQUE e simulaes;
Inclua aulas virtuais em computadores;
Alterne sees tericas e prticas durante o estudo.
Lingustico / Sonoro
So aquelas pessoas que vivem cantando ou entoando algum som mesmo com a boca
fechada, os cantores e aqueles descritos com tendo um ouvido musical. Veem sons em
tudo. Eles podem no ser os melhores cantores ou msicos, mas eles tm uma habili-
dade natural para interagir e entender os sons, musicais ou no.
Sua relao com o mundo atravs dos sons e ritmos sonoros. As atividades que po-
dem ser mais proveitosas para elas so ouvir msicas, tocar instrumentos, interpretar
sons e cantar.
Quando esto aprendendo ou adquirindo capacitao acadmica, essas pessoas se
beneficiaro mais escrevendo letras e canes para msicas, tocando instrumen-
tos para acompanhar seus trabalhos ou de outros, ou desenvolvendo projetos de
multimdia.
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Introduo Guia de Estudos Para CompTIA Linux + Powered by LPI & LPI
9
MENU
NOTA
DICA Dicas para voc aprender melhor:
ATENO
CUIDADO Tente transformar aquilo que voc est aprendendo em msica;
PRATIQUE
Grave aquilo que est aprendendo para escutar depois;
Utilize msica agradvel durante os estudos.
Visual
Estas pessoas so os modernos Picassos e Renoirs, os grafiteiros e rabiscadores, e in-
divduos que tm um talento natural para as cores e para harmonizar ambientes. Os
indivduos Visuais parecem ter um senso artstico que faz com que tudo que criem
parea agradvel aos olhos. Sua relao com o mundo atravs de pinturas e imagens.
As atividades que podem ser mais proveitosas para elas incluem pintura, escultura e a
criao de artes grficas. Quando esto aprendendo ou adquirindo capacitao acad-
mica, essas pessoas se beneficiaro mais com desenho e criao de diagramas, inclusive
grficos, leitura cartogrfica, criao de mapas ou realizando demonstraes.
MENU
NOTA
DICA
Dicas para voc aprender melhor:
ATENO
CUIDADO Crie apresentaes multimdia;
PRATIQUE
Utilize interpretao de mapas, diagramas e grficos;
Uma vez que voc tenha se identificado em pelo menos um destes estilos, faa uso das
potencialidades do seu crebro. Isso facilita seu aprendizado.
Como exerccio, execute cada comando de cada tpico pelo menos mais de uma vez, exer-
citando as possveis situaes. Faa as seguintes perguntas para cada comando estudado:
w w w . e d i t o r a n o v a t e r r a . c o m . b r
10 Certificao Linux
COMO O QU
DIGITADO NO PROMPT MOSTRA O ESPAO LIVRE EM DISCO
df
ARQUIVOS QUANDO
/etc/fstab (LEITURA) - QUANDO OS SERVIOS
/PROC/PARTITIONS PARAM INESPERADAMENTE;
- VERIFICAO EM MANUTENES PERIDICAS
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Introduo Guia de Estudos Para CompTIA Linux + Powered by LPI & LPI
11
Por exemplo, o comando grep uira texto.txt vai filtrar todas as ocorrncias da palavra
uira no arquivo texto.txt. J o grep com a opo -v inverte, de forma que o coman-
do ir mostrar todas as linhas que no tm a palavra uira no texto.txt.
Outro detalhe importante. Leia os MAN dos comandos de cada tpico. Eles tm in-
formaes importantes que o programador que desenvolveu o software deixou ali de
forma especial para voc.
w w w . e d i t o r a n o v a t e r r a . c o m . b r
12 Certificao Linux
Listas de Discusso
As listas de discusso so grupos de usurios que trocam mensagens entre si, resol-
vem dvidas, ajudam na configurao de programas, instalao etc. Algumas listas
so especficas a um determinado assunto do sistema, algumas so feitas para usu-
rios iniciantes ou avanados, outras falam praticamente de tudo.
O site http://www.certificacaolinux.com.br
O treinamento para certificao LPI + CompTIA que ofereo a distncia, com aulas
totalmente multimdia e com garantia de 95% de aprovao. Voc ir assistir as aulas
quando desejar, quantas vezes quiser, de qualquer lugar, pois o curso individualiza-
do, dinmico, gostoso de fazer e muito prtico.
O curso aborda todos os topicos das provas LPIC e CompTIA, sempre atu-
alizado. Convido o leitor a fazer o Simulado para a prova e baixar o Mapa
Mental gratuitamente no site. E se desejar complementar o estudo do livro
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Introduo Guia de Estudos Para CompTIA Linux + Powered by LPI & LPI
13
com aulas multimdia, tem um desconto especial na aquisio do curso para
quem j tem o livro.
No link http://www.certificacaolinux.com.br/ voc ir ver uma aula demonstrativa e
tambm os detalhes, valores e formas de pagamento. E a matrcula rpida e fcil.
Eu tambm fiz um GUIA de estudos e um MAPA MENTAL que esto no site. D uma
olhadinha. grtis.
w w w . e d i t o r a n o v a t e r r a . c o m . b r
P R O V A I
O E x a m e L P I 101
16 Certificao Linux
w w w . e d i t o r a n o v a t e r r a . c o m . b r
T P I C O 1 0 1
ARQUITETURA DE HARDWARE
18 Certificao Linux
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Tpico 101: Ar quitetur a de Har dware
19
troca do controle do processador. Esse processo de troca de controle do processador pelos
diversos programas chamado de escalonamento e a parte do sistema responsvel por
decidir qual deles vai ser executado primeiro chamada de escalonador.
O escalonamento dos primeiros sistemas baseados em cartes perfurados e unidades
de fita era simples. A regra era executar o prximo processo na fita ou na leitora de
cartes. Nos novos sistemas multiusurio de tempo compartilhado o algoritmo de
escalonamento mais complexo.
Imagine que cada processo nico e imprevisvel. Alguns passam a maior parte do tem-
po esperando por leitura e gravao de arquivos, enquanto outros utilizam a CPU por
horas, se tiverem chance. Desta forma, quando o escalonador inicia a execuo de um
processo, ele nunca sabe com certeza quanto tempo esta demanda vai demorar.
Para que a execuo de um processo no demande tempo demais, os computadores
possuem um mecanismo de relgio que causam interrupes peridicas. A cada inter-
rupo de relgio o sistema operacional assume o controle e decide se o processo pode
continuar executando ou se j ganhou tempo de CPU suficiente.
O escalonamento altera a prioridade em funo do tipo de espera a que o processo
estava submetido. Desta forma um processo que exige muito processamento tende
a ter mais prioridade que a de um processo que exige muita leitura e gravao. Este
esquema permite balancear o uso do processador entre todos os tipos de processos.
A eficincia dos sistemas operacionais modernos est na forma em que o escalona-
mento e a gerncia de memria esto implementados.
Existem ainda os sistemas operacionais conhecidos como de tempo real. Eles so
usados para controlar um dispositivo em uma aplicao dedicada, como controle de
experimentaes cientficas, imagens mdicas, controle industrial, robtica, aviao,
dentre outros. Sua principal caracterstica a necessidade do tempo de resposta aos
eventos ser crtica.
w w w . e d i t o r a n o v a t e r r a . c o m . b r
20 Certificao Linux
KERNEL
HARDWARE
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Tpico 101: Ar quitetur a de Har dware
21
O restante do sistema roda em modo usurio, uma vez que executa tarefas que no
necessitam acessar diretamente o hardware, e seus servios clssicos so assegurados
por processos servidores.
SHELL
CHAMADAS DE SISTEMA
SUBSISTEMA DE SUBSISTEMA DE
ARQUIVOS CONTROLE DE PROCESSOS
ESCALONADOR
GERNCIA DE MEMRIA
BUFFER
DRIVER DE DISPOSITIVO
CONTROLE DE HARDWARE
HARDWARE
FIGURA 3 - Microkernel.
w w w . e d i t o r a n o v a t e r r a . c o m . b r
22 Certificao Linux
Interrupes
Para que tudo esteja funcionando corretamente necessrio que os dispositivos
estejam alocando recursos do computador. Estes recursos podem ser portas de en-
trada e sada, requisies de interrupo (IRQ) e acesso direto a memria (DMA).
Veja estes conceitos:
As portas de entrada e sada so endereos de memria reservados no microprocessa-
dor para os dispositivos realizarem entrada e sada de informaes. Estes endereos
de memria so utilizados para troca de dados entre o processador e os dispositivos
de forma simplificada. Os dispositivos podem usar mais de uma porta de entrada/sa-
da ou uma faixa de endereos. Por exemplo, uma placa de som padro usa as portas
0x220, 0x330 e 0x388. Cada dispositivo possui um endereo de porta nico, que no
pode ser compartilhado entre outros dispositivos.
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Tpico 101: Ar quitetur a de Har dware
23
O Acesso Direto a Memria (DMA) usado para permitir a transferncia de dados
entre dispositivos e a memria sem a interveno do processador. Este acesso feito
atravs de canais (channels). A maioria dos computadores tem dois controladores
de DMA. O primeiro controla os canais 0, 1, 2, 3 e o segundo, os canais 4, 5, 6, 7,
totalizando 8 canais.
As Requisies de Interrupo (IRQ) so chamadas que os dispositivos podem fazer para
requerer ateno especial do processador. A maioria dos computadores oferece apenas
16 interrupes de hardware. Pode parecer pouco para as modernas configuraes com
os mais diferentes dispositivos. Felizmente os IRQs podem ser compartilhados.
O mecanismo de tratamento das interrupes faz com que a CPU esteja atenta aos even-
tos externos sequncia de instrues que ela est executando, para quando for neces-
sria uma quebra do processamento normal para atender a uma outra solicitao.
Em grandes sistemas multiusurio, uma constante rajada de interrupes direciona-
da ao processador. Respostas rpidas a essas interrupes so essenciais para manter
os recursos do sistema bem utilizados, e para prover tempos de resposta aceitveis
pelos usurios.
importante saber que estes recursos so limitados e precisam ser gerenciados para
que conflitos entre os dispositivos sejam evitados.
Desta forma, os sistemas operacionais reagem a eventos que representam as solicita-
es de servios. Por exemplo, se uma aplicao necessita da leitura de um arquivo,
ela faz a solicitao a uma funo executada pelo sistema operacional. Este ir acessar
o controlador do perifrico e requisitar a transferncia dos dados para o endereo de
memria informado no pedido do servio. O controlador do perifrico ao terminar avi-
sa o processador atravs de uma requisio de interrupo que far com que o sistema
operacional execute uma rotina para seu tratamento.
As interrupes podem ser geradas pelos seguintes eventos:
Geradas pelo programa aplicao que so implementadas com o uso de instrues
especiais;
Por erro, como na diviso por zero, referncia memria fora do espao permitido etc;
w w w . e d i t o r a n o v a t e r r a . c o m . b r
24 Certificao Linux
SISTEMA OPERACIONAL
EXECUTA PROCESSO 2
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Tpico 101: Ar quitetur a de Har dware
25
Se houver um fluxo permanente de interrupes, como nos sistemas multiusurio, este
esquema pode ocasionar interrupes desabilitadas por um grande tempo e em respostas
insatisfatrias. Para evitar isso, o Kernel precisa estar atento ao tempo mximo de proces-
samento permitido para cada interrupo. Se essa fatia de tempo estourar, ele passa o res-
tante do processamento da interrupo para um outro processo apropriado do sistema que
ir terminar de trat-las, enquanto o ncleo continua apto a receber novas interrupes.
Isto significa que elas podem ficar habilitadas durante muito tempo, e o sistema torna-se
mais eficiente em responder a requisies das aplicaes dos usurios.
BIOS
A BIOS (Basic Input Output System) um software especial gravado em memria flash
situada na placa-mo do computador. Este software responsvel por realizar todos os
testes de hardware e reconhecer os dispositivos ligados placa-me. Alm de testar a
memria e reconhecer os discos, ela responsvel por manter o registro de hora e data.
Nem sempre as placas de vdeo, som, rede, SCSI, placas aceleradoras, dentre outras,
so reconhecidas e configuradas automaticamente pela BIOS. Alguns destes disposi-
tivos requerem configurao manual.
Alguns poucos anos atrs, a maioria dos PCs baseados na arquitetura X86 e X86-64
utilizavam a BIOS como seu principal sistema de entrada e sada. Desde 2011 um
novo tipo de software vem instalado nas placas me, chamado de Extensible Firmware
Interface (EFI) ou Unified EFI (UEFI) como padro. Existem pequenas diferenas na
carga do sistema operacional quando tratamos das antigas BIOS ou dos novos EFIs,
que ser abordado no captulo de carga do sistema operacional.
Para que tudo esteja funcionando corretamente, necessrio que os dispositivos estejam
alocando recursos do computador. Estes recursos podem ser portas de entrada e sada, re-
quisies de interrupo (IRQ) e acesso direto a memria (DMA). Vejamos estes conceitos.
w w w . e d i t o r a n o v a t e r r a . c o m . b r
26 Certificao Linux
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Tpico 101: Ar quitetur a de Har dware
27
Acesso Direto a Memria (DMA)
A DMA usada para permitir a transferncia de dados entre dispositivos e a memria
sem a interveno do processador. Este acesso feito atravs de canais (channels). A
maioria dos computadores tem dois controladores de DMA. O primeiro controla os
canais 0, 1, 2, 3 e o segundo os canais 4, 5, 6, 7, totalizando 8 canais.
Os canais de DMA em uso no sistema podem ser visualizados com o comando:
# cat /proc/dma
4: cascade
importante que voc saiba que estes recursos so limitados e precisam ser gerencia-
dos para que conflitos entre os dispositivos sejam evitados.
Alguns dispositivos como portas seriais e paralelas j utilizam os recursos no padro
a seguir:
Nome do Dispositivo no Linux Nome do Dispositivo no MS-DOS Porta E/S DMA IRQ
ttyS0 COM1 0x3F8 - 4
ttyS1 COM2 0x2F8 - 3
ttyS2 COM3 0x3E8 - 4
ttyS3 COM4 0x2E8 - 3
lp0 LPT1 0x378 - 7
lp1 LPT1 0x278 - 5
/dev/hda1 C: 0x1F0 - 14
/dev/fd0 A: 0x3F0 2 6
No exame pode ser que voc tenha que resolver algum possvel conflito de recursos
em portas seriais ou paralelas.
Dispositivos PCI
Durante o processo de carga do sistema, o Kernel detecta os dispositivos PCI conecta-
dos no micro. A lista das placas de expanso encontradas poder ser lida atravs do
arquivo especial /proc/pci.
w w w . e d i t o r a n o v a t e r r a . c o m . b r
28 Certificao Linux
# cat /proc/pci
PCI devices found:
Bus 0, device 0, function 0:
Host bridge: PCI device 10b9:1644 (Acer Laboratories Inc. [ALi]) (rev 1).
Prefetchable 32 bit memory at 0xf0000000 [0xf3ffffff].
Bus 0, device 1, function 0:
PCI bridge: Acer Laboratories Inc. [ALi] M5247 (rev 0).
Master Capable. No bursts. Min Gnt=8.
Bus 0, device 2, function 0:
USB Controller: Acer Laboratories Inc. [ALi] M5237 USB (rev 3).
IRQ 11.
Master Capable. Latency=64. Max Lat=80.
Non-prefetchable 32 bit memory at 0xf7eff000 [0xf7efffff].
Bus 0, device 4, function 0:
IDE interface: Acer Laboratories Inc. [ALi] M5229 IDE (rev 195).
Master Capable. Latency=64. Min Gnt=2.Max Lat=4.
I/O at 0xeff0 [0xefff].
Bus 0, device 6, function 0:
Multimedia audio controller: Acer Laboratories Inc. [ALi] M5451
Utilitrio lspci
O lspci til para mostrar todas as informaes sobre os barramentos PCI do sistema
e os dispositivos conectados a eles.
Suas opes mais comuns so:
-v Mostra informaes detalhadas sobre todos os dispositivos.
-vv Mostra ainda mais informaes sobre os dispositivos.
-n Mostra os cdigos dos fabricantes e dispositivos.
-x Mostra os primeiros 64 bytes da configurao PCI em hexadecimal.
-xxx Mostra toda a configurao PCI em hexadecimal.
# lspci
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Tpico 101: Ar quitetur a de Har dware
29
0000:00:00.0 Host bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX Host
bridge (rev 01)
0000:00:01.0 PCI bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX AGP
bridge (rev 01)
0000:00:07.0 ISA bridge: Intel Corp. 82371AB/EB/MB PIIX4 ISA (rev 08)
0000:00:07.1 IDE interface: Intel Corp. 82371AB/EB/MB PIIX4 IDE (rev 01)
0000:00:07.2 USB Controller: Intel Corp. 82371AB/EB/MB PIIX4 USB
0000:00:07.3 Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ACPI (rev 08)
O Utilitrio lsusb
O lsusb til para mostrar todas as informaes sobre os dispositivos USB conectados
a este tipo de barramento.
A opo v mostra detalhadamente as informaes sobre o dispositivo USB.
$ lsusb -v
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 1.00
bDeviceClass 9 Hub
bDeviceSubClass 0 Unused
bDeviceProtocol 0
bMaxPacketSize0 8
idVendor 0x0000
idProduct 0x0000
bcdDevice 0.00
iManufacturer 0
w w w . e d i t o r a n o v a t e r r a . c o m . b r
30 Certificao Linux
iProduct 2
iSerial 1
bNumConfigurations 1
(...)
SYSFS
O sysfs um recurso do Kernel 2.6 para exportar informaes teis sobre o siste-
ma para os processos (programas) dos usurios atravs de um sistema de arquivo
em memria.
O sysfs organiza as informaes do Kernel em diretrios de forma rigorosa e baseada
na organizao interna das estruturas de dados do Kernel.
Os arquivos que so criados neste sistema de arquivos so principalmente em ASCII
(texto puro) com um valor por arquivo. Estas caractersticas asseguram que as infor-
maes passadas pelo sysfs aos programas sejam precisas e utilizadas facilmente.
Uma vez que a estrutura do sysfs composta de diretrios, arquivos e links simb-
licos, a navegao dentro dele fcil e intuitiva. O sysfs geralmente montado no
diretrio /sys.
Os principais diretrios do sysfs so: block, bus, class, devices, firmware, fs, kernel,
module e power.
BLOCK
O diretrio block contm subdiretrios para cada sistema de arquivos de bloco (discos
rgidos, principalmente) existentes no sistema. Dentro dos diretrios dos dispositivos, h
diversos arquivos que indicam, ente outras coisas, o tamanho do dispositivo, status etc .
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Tpico 101: Ar quitetur a de Har dware
31
BUS
Este diretrio contm subdiretrios para cada tipo de barramento suportado pelo Ker-
nel. E cada subdiretrio contm os diretrios devices e drivers. O primeiro contm
uma lista de todos os dispositivos encontrados que so do tipo de barramento indica-
do. O segundo contm os drivers de dispositivos daquele tipo de barramento.
CLASS
O diretrio class contm representaes de cada classe de dispositivo que est regis-
trado no Kernel. As classes indicam o tipo de dispositivo que elas representam. Por
exemplo: classe de impressoras, classe de discos etc . Cada subdiretrio de classe
ter um diretrio para cada tipo de dispositivo encontrado pertencente quela classe.
Por exemplo: a classe net contm os dispositivos eth0 e eth1. E, dentro de cada
diretrios de dispositivo, so encontrados arquivos e diretrios associados ao tipo de
dispositivo a que ele pertence.
DEVICES
O diretrio devices contm a hierarquia global dos dispositivos encontrados e supor-
tados pelo Kernel. Sua hierarquia de diretrios obedece a organizao dos dispositi-
vos em qual tipo de conexo eltrica eles esto conectados. Apenas dois dispositivos
so a exceo da regra: dispositivos de plataforma (platform) e de sistema (system).
O primeiro diretrio relativo aos dispositivos perifricos inerentes plataforma de
processamento e barramento do hardware. Por exemplo: dispositivos inerentes a por-
tas de entrada e sada, controladores seriais e paralelos etc . J o system representa os
dispositivos no perifricos que no se encaixam em qualquer outra classificao. Por
exemplo: CPUs, APICs, temporizadores etc .
FIRMWARE
O diretrio firmware contm interfaces para verificar e atribuir objetos especficos de
firmware. Firmware so cdigos executados durante o processo de carga da mquina,
como software da BIOS.
w w w . e d i t o r a n o v a t e r r a . c o m . b r
32 Certificao Linux
MODULE
O diretrio module contm subdiretrios com todos os mdulos de Kernel carrega-
dos para a memria. Os mdulos so pedaos de programas que podem ou no fazer
parte do Kernel, de forma que so lidos e executados de acordo com a necessidade
do usurio. Por exemplo: se voc no utiliza com frequncia o drive de disquete,
pode optar por carregar o mdulo que habilita suporte a disquetes somente quando
for fazer uso deste tipo de mdia. Este tipo de arquitetura modular permite que o
Kernel fique mais leve, ocupando menos memria e tambm menos processamento,
deixando a CPU mais tempo livre para executar os programas dos usurios. Um
Kernel enxuto permite que o sistema tenha uma eficincia melhor, mas no impede
que outras funcionalidades sejam agregadas sob demanda na forma de mdulos do
Kernel. importante saber que todos os diretrios de mdulo contm um arquivo
chamado refcnt que conta o nmero de referncias ou nmero de usurios que fa-
zem uso ao mdulo especfico. Este arquivo lido pelo comando lsmod que ser
visto adiante neste livro.
POWER
O diretrio power representa o subsistema de gerenciamento de energia. Possui alguns
arquivos que representam o mtodo que o sistema ir utilizar para entrar em modo de
suspenso ou economia de energia.
importante voc saber que as informaes contidas neste sistema de arquivos so
organizadas de forma que diversos programas e utilitrios fazem uso delas para inte-
ragir melhor com o Kernel.
HALD
O hald um programa que fica em execuo em modo de servidor (daemon) que man-
tm um banco de dados sobre os dispositivos conectados ao sistema, em tempo real.
Este programa fica conectado no Kernel atravs do D-BUS escutando as mensagens re-
ferentes aos dispositivos e prov uma biblioteca de programao API para que outros
programas possam descobrir, monitorar e fazer uso dos dispositivos. O HALD facilita
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Tpico 101: Ar quitetur a de Har dware
33
o trabalho dos programadores oferecendo um meio fcil e rpido de interagir com os
dispositivos sem precisar fazer acesso direto a eles.
UDEV
O gerenciamento dinmico de dispositivos (udev) responsvel por manter a estru-
tura de diretrio do /dev (diretrio que contm os links que representam os dispo-
sitivos) de forma a permitir que somente dispositivos conectados sejam listados na
estrutura do /dev.
Geralmente este gerenciador executado na forma do programa chamado udevd em
modo de servidor (daemon) que fica escutando os eventos do Kernel para encontrar
quando um dispositivo removido ou adicionado ao sistema. Quando se percebe um
evento de dispositivo no Kernel ele compara com as regras relacionadas no sysfs para
identificar o dispositivo e, depois disso, cria ou remove o link simblico do dispositi-
vo no diretrio /dev.
D-BUS
D-BUS um projeto de software livre mantido pela freedesktop.org. Seu principal ob-
jetivo criar um barramento de troca de mensagens entre os programas. Ele permite
que os programas interajam entre si de forma que o programador no precisa conhecer
a instncia do outro programa em que ele deseja se conectar. Desta forma, o D-BUS
oferta uma biblioteca de programao que permite a troca de mensagens entre as apli-
caes atravs de protocolos padronizados, utilizando-se do XML para fazer a ligao
entre programas distintos. O D-BUS suporta diversas linguagens de programao de
alto nvel como Qt, GLib, Java, C#, Python etc .
w w w . e d i t o r a n o v a t e r r a . c o m . b r
34 Certificao Linux
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Tpico 101: Ar quitetur a de Har dware
35
setserial
Este utilitrio foi especialmente desenvolvido para configurar as portas seriais no Li-
nux. Ele possibilita configurar a porta de entrada e sada, IRQ, velocidade, UART e
tecla de sada.
Durante o processo normal de boot as portas COM 1 a 4 so configuradas usando os
endereos de entrada e sada e IRQs padro. Qualquer configurao diferente destas
listadas abaixo dever ser feita atravs do comando setserial.
/dev/ttys0 (COM1), port 0x3f8, irq 4
/dev/ttys1 (COM2), port 0x2f8, irq 3
/dev/ttys2 (COM3), port 0x3e8, irq 4
/dev/ttys3 (COM4), port 0x2e8, irq 3
w w w . e d i t o r a n o v a t e r r a . c o m . b r
36 Certificao Linux
Algumas placas requerem que seja especificado o recurso de hardware utilizado como
parmetro:
# modprobe sb io=0x220 irq=5 dma=1 dma16=5 mpu_io=0x388
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Tpico 101: Ar quitetur a de Har dware
37
Depois de instanciado no Kernel o mdulo do dispositivo de som, os recursos /dev/
audio, /dev/dsp e /dev/mixer estaro disponveis.
O prximo passo ser instalar um programa para controle de volume, tonalidade e
outros recursos da placa de som.
Fast SCSI: Utiliza um cabo Micro-D de 50 pinos com transferncia de 10MBps a 8-bits.
Este padro consegue um desempenho melhor aumentando o clock de trabalho;
Fast Wide SCSI: Utiliza um cabo Micro-D de 68 pinos com transferncia de 20MBps
a 16-bits. Esta tecnologia combina um barramento e clock maiores;
w w w . e d i t o r a n o v a t e r r a . c o m . b r
38 Certificao Linux
Ultra SCSI 320: Nova tecnologia SCSI que permite at 320MBps de transferncia a
2x32-bit. Utiliza um cabo de 68 pinos.
DB25M (MAC-SCSI)
APROX: 39mm
C50M (SCSI-1)
APROX: 65mm
IDC50M (SCSI-1)
APROX: 70mm
IDC50F (SCSI-1)
APROX: 67mm
HD50M (SCSI-2)
APROX: 35mm
HD68M (SCSI-3)
APROX: 47mm
HD68F (SCSI-3)
APROX: 45mm
VHD68M (SCSI-4)
APROX: 32mm
SCSI ID
Todos os dispositivos SCSI ligados a uma mesma placa so endereados de forma que
cada um tenha uma numerao nica chamada de SCSI ID. Esta numerao vai de 0
a 7 para as placas com barramento de 8-bit e de 0 a 15 para barramentos de 16-bit. As
prprias placas so endereadas e normalmente utilizam o SCSI ID 7.
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Tpico 101: Ar quitetur a de Har dware
39
Nos discos SCSI comum que o endereamento SCSI ID seja definido atravs de
jumpers no disco.
A maioria das controladoras SCSI possui sua prpria BIOS que pode ser configurada
no boot do computador. A BIOS destas placas pode permitir dentre outras coisas a
configurao do SCSI ID da controladora, efetuar formatao fsica dos discos, verifi-
car os dispositivos conectados e seus respectivos SCSI IDs e at configurar a velocida-
de de transmisso dos dados para acomodar discos e fitas antigas.
Algumas placas ainda permitem que voc configure qual o SCSI ID do dispositivo
responsvel pela carga do sistema operacional. O padro que o disco conectado ao
SCSI ID 0 contenha o setor de boot.
SCSI LUN
Alguns dispositivos SCSI como as controladoras RAID (Redundant Array of Inexpre-
sive Disks) utilizam um recurso chamado de Nmero de Unidade Lgica (LUN). Este
recurso utilizado pelas controladoras para enxergar os mltiplos dispositivos lgicos
com apenas um endereo.
Terminadores
Os dispositivos SCSI so conectados ao longo de um cabo que dispe de diversas
entradas. No final do cabo necessrio conectar um componente eltrico chamado
terminador. A funo deste componente condicionar o sinal enviado pelo cabo, di-
minuir rudos e ecos no barramento.
Alguns dispositivos SCSI podem funcionar sem o terminador, mas no de forma ele-
gante. Alguns fabricantes o incluem no prprio cabo. Outros fabricantes incluem no
prprio disco que ser conectado ao cabo. importante que voc saiba que os disposi-
tivos SCSI necessitam de um terminador em cada ponta do cabo para que funcionem
de maneira apropriada.
O comando lsscsi fornece uma lista dos dispositivos SCSI conectados ao sistema.
w w w . e d i t o r a n o v a t e r r a . c o m . b r
40 Certificao Linux
Os modelos que utilizam o barramento PCI na maioria das vezes dispensam a confi-
gurao manual dos recursos despendidos.
Voc ainda dever consultar o endereamento e a interrupo que o dispositivo de rede
est utilizando lendo o contedo do arquivo /proc/interrupts e /proc/ioports.
# cat /proc/interrupts
CPU0
0: 288898893 XT-PIC timer
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Tpico 101: Ar quitetur a de Har dware
41
1: 230 XT-PIC keyboard
2: 0 XT-PIC cascade
5: 7085061 XT-PIC eth0
8: 2 XT-PIC rtc
9: 0 XT-PIC usb-ohci
10: 152038 XT-PIC aic7xxx
12: 411599 XT-PIC eth1
14: 2 XT-PIC ide0
Observe que neste exemplo existem duas placas de rede eth0 e eth1 nos IRQs nmero
5 e 12 respectivamente. Este micro ainda possui uma controladora SCSI modelo AI-
C7xxx no IRQ 10.
# cat /proc/ioports
0000-001f : dma1
0020-003f : pic1
0040-005f : timer
0060-006f : keyboard
0070-007f : rtc
0080-008f : dma page reg
00a0-00bf : pic2
00c0-00df : dma2
00f0-00ff : fpu
01f0-01f7 : ide0
02f8-02ff : serial(auto)
03c0-03df : vesafb
03f6-03f6 : ide0
03f8-03ff : serial(auto)
0cf8-0cff : PCI conf1
5c20-5c3f : ALi Corporation. [ALi] M7101 PMU
b800-b80f : ALi Corporation. [ALi] M5229 IDE
w w w . e d i t o r a n o v a t e r r a . c o m . b r
42 Certificao Linux
b800-b807 : ide0
b808-b80f : ide1
d000-d0ff : Adaptec AHA-2940/2940W / AIC-7871
d000-d0ff : aic7xxx
d400-d4ff : Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (#2)
d400-d4ff : 8139too
d800-d8ff : Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+
d800-d8ff : 8139too
Algumas placas ISA necessitam que o endereamento de E/S e IRQ sejam passados
como argumentos para o comando modprobe alocar os recursos corretamente:
# modprobe ne io=0x300 irq=10
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Tpico 101: Ar quitetur a de Har dware
43
so_do_kernel, como no exemplo abaixo, mas a idia central do modules.conf perma-
nece a mesma.
Arquivos do diretrio /lib/modules/verso_do_kernel:
build modules.dep.bin modules.pcimap
extra modules.devname modules.seriomap
kernel modules.drm modules.softdep
modules.alias modules.ieee1394map modules.symbols
modules.alias.bin modules.inputmap modules.symbols.bin
modules.block modules.isapnpmap modules.usbmap
modules.builtin modules.modesetting source
modules.builtin.bin modules.networking updates
modules.ccwmap modules.ofmap vdso
modules.dep modules.order weak-updates
w w w . e d i t o r a n o v a t e r r a . c o m . b r
44 Certificao Linux
A maneira mais fcil entrar em contato com o pessoal da operadora de banda larga
para saber qual o tipo de mecanismo que eles utilizam. Alguns modems suportam
ambas configuraes, mas no ao mesmo tempo.
Bridged/DHCP
Este tipo de mecanismo para estabelecer uma conexo de banda larga era utilizado
com frequncia pelas operadoras por sua simplicidade de operao.
Este tipo de conexo coloca o microcomputador cliente em uma grande sub-rede LAN,
com todos os outros microcomputadores de outros clientes, expondo todos a um tr-
fego de pacotes ARP e broadcast.
A autenticao deste tipo de mecanismo utiliza o protocolo DHCP para obter um en-
dereo IP vlido, mscara de sub-rede, gateway e servidores de resoluo de nomes.
PPPoX
O mecanismo PPPoX na verdade uma variao do protocolo PPP adaptado para tra-
balhar com modems sncronos como o DSL. Existem duas variaes utilizadas: PPPoE
(PPP sobre Ethernet) e o PPPoA (PPP sobre ATM).
Existem diversas implementaes do PPPoE para Linux que simulam uma conexo
discada, onde o usurio autenticado atravs de um servidor RADIUS atravs de sua
identificao e senha.
Note que a grande vantagem do padro PPPoE que ele possibilita a conexo atravs
de dispositivos no-Ethernet, como o USB.
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Tpico 101: Ar quitetur a de Har dware
45
IP dinmico via rede Bridged usando DHCP
IP dinmico usando PPPoX
IP esttico usando PPPoX
Configurando IP Esttico
Um IP esttico um endereo de rede que no muda. Geralmente utilizado por
clientes que desejam oferecer algum tipo de servio na rede, conectando seu servidor
a ela. Nem todos os provedores de servio oferecem este tipo de conexo, e outros que
o fazem requerem um pagamento diferenciado para tal.
Neste tipo de conexo o endereo IP, mscara de rede, default gateway e os endereos
de servidor de nomes que devero ser configurados so informados pelo provedor.
Em linhas gerais, utiliza-se o comando ifconfig para configurar o endereo IP e msca-
ra de sub-rede da placa ethernet que est conectada ao modem.
# ifconfig eth0 200.150.233.45 up netmask 255.255.255.0
J o default gateway dever ser configurado utilizando o comando route para adicio-
nar a rota padro:
# route add default gw 200.150.233.1 dev eth0
Por fim, o endereo do servidor de nomes dever ser configurado no arquivo /etc/
resolv.conf:
# echo nameserver 8.8.8.8 >> /etc/resolv.conf
w w w . e d i t o r a n o v a t e r r a . c o m . b r
46 Certificao Linux
J o cliente dhcpcd mais simples. Sua utilizao bsica resume em solicitar um en-
dereo IP e devolver um endereo.
Para solicitar um endereo IP:
# dhcpcd eth0
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Tpico 101: Ar quitetur a de Har dware
47
PPPoEd: http://www.davin.ottawa.on.ca/pppoe/
PPPoE Redirector: http://www.ecf.toronto.edu/~stras/pppoe
EnterNet: http://www.nts.com
A configurao do PPPoE ir depender do cliente que voc escolher. A dica seguir as
instrues do arquivo INSTALL ou README includas no pacote escolhido.
Abaixo ser descrita a configurao do Roaring Penguin.
No site est disponvel a verso para compilar do RP-PPPoE: rp-pppoe-3.7.tar.gz.
Para descompactar o pacote:
# tar xvzf rp-pppoe-3.7.tar.gz
w w w . e d i t o r a n o v a t e r r a . c o m . b r
48 Certificao Linux
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Tpico 101: Ar quitetur a de Har dware
49
Um grupo de empresas criou em 1995 um consrcio para desenvolver uma especifi-
cao de hardware e promover a rpida adoo dessa nova tecnologia e o desenvolvi-
mento de novos dispositivos compatveis e de alta qualidade. Nascia o USB (Universal
Serial Bus), um barramento com um nico tipo de combinao porta/conector, usado
para ligar facilmente ao computador vrias categorias de dispositivos como scanners,
cmeras, teclados, caixas de som, impressoras etc .
O barramento USB 1.0 e 1.1 permite at 127 dispositivos a uma velocidade de at 12
Mbps. J o USB 2.0 permite taxas de transferncia at 480 Mbps. A verso 3.0 intro-
duzida em 2010 suporta uma taxa mxima terica de 4,8 Gbps, mas na mdia trabalha
a 3,2 Gbps. Este ltimo padro requer um conector diferente do padro 1.x e 2.0 e
necessariamente um kernel com verso superior ao 2.6.31.
Os perifricos que sero abordados como exemplo so o teclado, o mouse, impressoras
e a WebCam3 USB da Creative Labs.
O primeiro passo determinar qual xHCI (Host Controller Interface) sua placa-me
possui e carregar o mdulo correspondente ao chip.
O comando para determinar qual o chip utilizado em sua placa-me :
# lspci -vt
-[00]-+-00.0 VIA Technologies, Inc. VT82C693A/694x [Apollo PRO133x]
+-01.0-[01]00.0 ATI Technologies Inc Rage XL AGP 2X
+-07.0 VIA Technologies, Inc. VT82C686 [Apollo Super South]
+-07.1 VIA Technologies, Inc. VT82C586/B/686A/B PIPC Bus Master IDE
+-07.2 VIA Technologies, Inc. USB
+-07.3 VIA Technologies, Inc. USB
+-07.4 VIA Technologies, Inc. VT82C686 [Apollo Super ACPI]
+-07.5 VIA Technologies, Inc. VT82C686 AC97 Audio Controller
+-0b.0 Adaptec AIC-7892A U160/m
\-0d.0 Intel Corp. 82557/8/9 [Ethernet Pro 100]
Caso sua placa-me possua um Chipset da INTEL ou da VIA, ser necessrio subir o
mdulo usb-uhci. Se possuir um Chipset da OPTi, SiS, ALi, Compaq, Apple ser ne-
cessrio subir o mdulo usb-ohci.
w w w . e d i t o r a n o v a t e r r a . c o m . b r
50 Certificao Linux
Os comandos so:
# modprobe usb-uhci
Ou
# modprobe usb-ohci
Estes mdulos fornecero suporte aos dispositivos USB.
Agora vamos aos perifricos:
TECLADO
Para configurar corretamente o seu teclado USB, precisamos carregar dois mdulos adicionais:
# modprobe hid
E
$ modprobe keydev
MOUSE
O procedimento para instalarmos um dispositivo Mouse USB parecido com a ativa-
o do teclado:
# modprobe hid
E
# modprobe mousedev
IMPRESSORA
No caso da impressora, ser necessrio carregar, aps o mdulo correto de seu Chipset, o seguin-
te mdulo:
# modprobe printer
WEBCAM
A WebCam USB da Creative Labs baseada no Chip OV511. Devemos carregar, aps
o mdulo do Chipset, o mdulo apropriado para a cmera:
# modprobe ov511
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Tpico 101: Ar quitetur a de Har dware
51
Outros Dispositivos
O Linux tem suporte a diversos dispositivos USB atravs dos mdulos do Kernel. Voc
poder consultar os Chipsets suportados no diretrio /lib/modules/verso-do-kernel/
kernel/drivers/usb.
w w w . e d i t o r a n o v a t e r r a . c o m . b r
52 Certificao Linux
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Tpico 101: Ar quitetur a de Har dware
53
Processo de Carga do Kernel
O setor de boot de um disquete est localizado no cilindro 0, cabea 0, setor 1. Este
setor criado por um programa de formatao de disquetes, como o FORMAT do DOS.
no setor de boot que os sistemas operacionais gravam o software responsvel por
iniciar a carga do sistema operacional.
Desta forma, a BIO procura no setor de boot do disco rgido o gerenciador de boot.
No Linux gerenciadores mais comuns so o LILO, GRUB e GRUB 2. Eles so respon-
sveis pela carga do Kernel na memria. O LILO no mais abordado na prova 101,
uma vez que a grande maioria das distribuies j o abandonou. Em compensao, o
GRUB 2 passa a fazer parte dos requisitos da prova.
Aps a carga do Kernel, este inicia um processo especial chamado init. Este processo
o pai de todos os processos e responsvel pelo restante da carga do boot do Linux.
Depois da carga do boot, o init chama outro programa especial chamado getty, que
responsvel pela autenticao dos usurios e pelo incio do processo de shell.
importante que voc entenda que cada programa pelo menos um processo e que
cada processo possui alguns atributos, tais como:
Process ID (PID) ou identificao do processo: Cada processo possui um nmero
de identificao nico. O primeiro processo init sempre ter o PID 1 e para o res-
tante dos processos este nmero incrementado medida que novos processos
so executados;
User ID e Group ID (ID do usurio e ID do grupo): Os processos precisam ser execu-
tados com os privilgios de uma conta de usurio e do grupo associado a eles. Isto
importante porque assim o sistema pode determinar e gerenciar o acesso aos recursos;
Processo Pai: No Linux nenhum processo executado de forma independente dos
outros. Todos os processos no sistema, com exceo do init, possuem um processo
pai, que responsvel pela sua execuo. O atributo ParentID grava o PID do proces-
so pai. Caso o processo pai termine sua execuo antes do processo filho, o processo
filho apadrinhado pelo init, ganhando o Parent ID igual a 1;
w w w . e d i t o r a n o v a t e r r a . c o m . b r
54 Certificao Linux
PID 1
init
exec()
login
exit() exec()
/bin/sh
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Tpico 101: Ar quitetur a de Har dware
55
Diretrio de trabalho: Os processos tambm so associados a um diretrio de tra-
balho, onde podem fazer a leitura e a escrita do disco;
Temporizadores: O Kernel mantm registros da hora em que os processos so cria-
dos bem como o tempo de CPU que eles consomem durante a sua execuo.
Em um ambiente multiprogramado com apenas um processador, cada processo exe-
cutado aos poucos de cada vez, de forma intercalada. O sistema operacional aloca a
CPU um pouco para cada processo. Um processo aps receber o controle do processa-
dor s o perder quando ocorrer uma interrupo ou quando requerer algum servio
do sistema operacional.
Estas interrupes so transparentes aos processos, pois apenas interrompem tempo-
rariamente sua execuo, que depois continuar a ser executada como se nada tivesse
acontecido. Ao requerer um servio do sistema operacional, o processo bloqueado
at que o servio requerido ao sistema operacional seja satisfeito.
O Gerenciador de Boot
A maioria das distribuies Linux trabalha com um dos dois gerenciadores de boot,
o GRUB (Grand Unified Bootloader) verso 1 ou a verso 2. O gerenciador de boot
responsvel pela carga do Kernel do Linux e tambm para a carga de outros sistemas
operacionais.
Trataremos da instalao do gerenciador de boot mais adiante no livro.
O gerenciador permite que alguns parmetros sejam passados para o Kernel durante a sua
carga. Estes parmetros podem passar para o Kernel algumas informaes que ele pode
no ser capaz de buscar por conta prpria ou at mesmo mudar seu comportamento.
Estes parmetros podem estar escritos no arquivo de configurao dos gerenciadores
de boot ou passados atravs da linha de comando.
Dependendo do seu hardware e configuraes dos mdulos do Kernel, estes parme-
tros podem especificar configuraes de recursos como portas de entrada e sada (IO
Ports), IRQ etc.
w w w . e d i t o r a n o v a t e r r a . c o m . b r
56 Certificao Linux
O gerenciador de boot permite que as informaes sejam passadas para o Kernel, que ir
lidar com os mdulos do sistema, mas ele no lida diretamente com os mdulos do sistema.
O Kernel do Linux modular. Ele permite que mdulos (tambm podem ser chamados
grosseiramente de drivers) possam ser compilados na imagem do Kernel ou carrega-
dos somente quando necessrio.
Para enviar parmetros para os mdulos do Kernel, voc precisar editar o arquivo de con-
figurao dos mdulos, que dependendo da distribuio podem ser /etc/conf.modules,
/etc/modules.conf ou em /lib/modules/verso_do_kernel. Estas configuraes podem
ser endereos de entrada e sada (IO), DMA, IRQ e dispositivos PCMCIA.
Veja um exemplo do arquivo /etc/modules.conf:
####################################
####################################
alias eth0 8139too
alias eth1 8139too
alias tr0 off
alias scsi_hostadapter off
alias fb0 off
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Tpico 101: Ar quitetur a de Har dware
57
Os problemas que podem ocorrer durante a carga do sistema como reconhecimento
de dispositivos, erro na leitura de mdulos do Kernel, erro na execuo de servios
podem ser analisados no principal arquivo de LOG do sistema /var/log/messages.
Existe tambm um utilitrio capaz de ler o buffer (pequena rea de memria)
das telas do processo de carga do sistema, chamado de dmesg. Aps o processo
de carga do sistema este utilitrio ir mostrar as mensagens de carga do sistema,
mas ele capaz de ler qualquer mensagem importante que o Kernel armazene em
seu buffer.
w w w . e d i t o r a n o v a t e r r a . c o m . b r
58 Certificao Linux
Runlevels
No Linux existem sete nveis de execuo predefinidos de 0 a 6. Os servios que cada
runlevel pode executar vo depender da distribuio do Linux e da configurao que
o administrador do sistema efetuou.
Runlevel Descrio
0 O nvel zero define um desligamento elegante e rpido do sistema.
1,s,single O nvel um utilizado para manuteno do sistema, tambm chamado de monousurio (single user). So-
mente o essencial executado.
2 Modo multiusurio com compartilhamento de arquivos NFS desabilitado.
3 Modo multiusurio com todos os servios habilitados, mas sem interface grfica para o login no sistema.
4 No utilizado.
5 Modo multiusurio com todos os servios habilitados, interface grfica X11 e login em modo grfico.
6 O nvel seis parecido com o nvel zero, mas executa o reboot da mquina.
ou
# telinit 6
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Tpico 101: Ar quitetur a de Har dware
59
Definindo Quais Processos Sero
Executados por Cada runlevel
At agora aprendemos que o comando init pode alterar os processos em execuo
alterando os runlevels do sistema. Mas a definio de quais processos sero exe-
cutados por cada nvel de execuo feita pela hierarquia de diretrios /etc/rc.d e
scripts de shell.
Quando o Linux inicia, uma srie de scripts no diretrio /etc/rc.d executada para dar
a carga no sistema. Vejamos estes arquivos e diretrios com detalhe:
O arquivo rc.sysinit executado pelo processo init durante a carga do sistema e
habilita funes essenciais. Por exemplo montar as parties de disco;
O arquivo rc.local executado pelo script rc.sysinit. Ele utilizado pelos adminis-
tradores para eles modificarem os servios na carga do sistema. Este arquivo tem
preferncia para esta tarefa uma vez que no alterado durante um processo de
atualizao (upgrade) do sistema;
O arquivo rc utilizado para transies entre os runlevels;
O diretrio /etc/rc.d/init.d contm os diversos scripts que fazem a carga de todos os
servios do sistema operacional. Por exemplo o servio de shell seguro SSH possui
um script para carga do servio com o nome sshd (Secure Shell Daemon). Este
script e outros scripts podem aceitar como parmetro comandos como start e stop.
Outros servios podem aceitar outros comandos como reload, restart, status etc.
Os nveis de servio so definidos atravs dos diretrios /etc/rc<n>.d, onde <n>
pode variar de 0 a 6, correspondendo aos runlevels.
Por exemplo /etc/rc0.d e /etc/rc1.d. Dentro da cada diretrio de runlevel existem links sim-
blicos para os scripts dos servios nos arquivos em /etc/rc.d/init.d.
Estes link simblicos seguem o seguinte padro:
[K|S]nn[nomedoscript]
Onde:
A letra K, de kill, indica que o script para terminar um determinado servio;
w w w . e d i t o r a n o v a t e r r a . c o m . b r
60 Certificao Linux
Para incluir um determinado servio em algum runlevel desejado, voc dever copiar
o script de carga para o diretrio /etc/rc.d/init.d e criar um link simblico para o script
no runlevel desejado seguindo a nomenclatura acima.
Veja o exemplo:
# cp /usr/local/mailman/mailman.sh /etc/rc.d/init.d
# ln s /etc/rc.d/init.d/mailman.sh /etc/rc.d/rc3.d/S25mailman
Onde o n definir o runlevel pelo seu nmero de 0 a 6. Nunca coloque neste arquivo
o runlevel 0 ou 6 seno o sistema nunca entrar em produo.
Voc poder determinar em qual runlevel o sistema est em execuo atravs do co-
mando runlevel. Este comando retorna o nvel de execuo anterior e o nvel de exe-
cuo atual. Se o nvel de execuo permaneceu inalterado desde a carga do sistema,
o nvel anterior ser mostrado como a letra N.
MENU
NOTA
DICA O comando runlevel no altera o nvel de execuo, mas somente informa.
ATENO
CUIDADO Para alterar utilize o comando init.
PRATIQUE
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Tpico 101: Ar quitetur a de Har dware
61
O Linux ainda possibilita que o desligamento do sistema possa ser o mais elegante
possvel atravs do comando shutdown.
Shutdown
Uso:
# shutdown [opes] horrio [mensagem]
Para reiniciar o sistema as 06h da manh e enviar mensagem no terminal dos usurios:
# shutdown r 06:00 Haver troca de hardware
MENU
NOTA
DICA
A diferena entre trocar o runlevel para 0 ou 6 e o comando shutdown que o
ATENO comando shutdown administrativamente melhor, pois avisa os usurios que ha-
CUIDADO
PRATIQUE ver uma parada no sistema. J para a troca de init no h nenhum tipo de aviso.
w w w . e d i t o r a n o v a t e r r a . c o m . b r
62 Certificao Linux
Systemd
Devido a vrias limitaes do init, outro sistema especial de controle dos processos de
boot e gerncia da execuo dos programas foi criado e denominado systemd.
Este novo sistema j amplamente utilizado nas distribuies mais conhecidas, espe-
cialmente no Kernel 2.6. Sua principal vantagem a carga do sistema de forma mais
rpida, executando os servios e processos em paralelo. Isso foi possvel com a chega-
da dos novos processadores dotados de multiplos ncleos, que permitem a execuo
de diversas threads em paralelo.
Entre as novidades do systemd, esto:
Ativao via socket e bus (executa os servios sob demanda);
Melhor paralelizao dos processos;
Uso de cgroups (control groups grupos de controle) ao invs de PIDS;
Suporta criao de imagens de estado de memria para salvar e restaurar estados
de execuo.
O sistema de controle de grupos permite que o systemd supervisione os processos, de
forma a garantir que, quando um servio parado, todos os processos filhos, netos,
bisnetos etc. tambm sejam parados.
Com um gerenciamento mais robusto, mais ciclos de CPU so necessrios para a cria-
o de novos processos. Mas devido ao alto desempenho dos processadores, isto no
parece ser um problema para o systemd.
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Tpico 101: Ar quitetur a de Har dware
63
No systemd, a carga de processos, mudana de runlevel e scripts de carga so bem
diferentes do init.
Para verificar o status de um servio:
# systemctl status cron.service
cron.service - Command Scheduler
Loaded: loaded (/lib/systemd/system/cron.service; enabled)
Active: active (running) since Mon, 28 May 2012 18:09:57
-0300; 7min ago
Main PID: 673 (cron)
CGroup: name=systemd:/system/cron.service
+ 673 /usr/sbin/cron -n
w w w . e d i t o r a n o v a t e r r a . c o m . b r
64 Certificao Linux
Upstart
O Upstart o substituto do init criado pelo Ubuntu. Sua funo substituir o processo
de init durante a carga dos servios no boot e na execuo dos processos, assim como
o init e o systemd.
Foi criado usando a biblioteca NIH Utility Library que bem leve e rpida. Tem me-
lhorias considerveis em relao ao init, mas no to robusto quanto o systemd.
Para iniciar um servio:
# start servio
w w w . e d i t o r a n o v a t e r r a . c o m . b r
Tpico 101: Ar quitetur a de Har dware
65
Para iniciar um servio:
# initctl start servio
MENU
NOTA
DICA No Upstart o arquivo /etc/inittab no mais utilizado.
ATENO
CUIDADO
PRATIQUE
w w w . e d i t o r a n o v a t e r r a . c o m . b r
66 Certificao Linux
w w w . e d i t o r a n o v a t e r r a . c o m . b r