You are on page 1of 76

Uir Ribeiro

CERTIFICAO
LINUX

2 Edio
2009

Copyright 2009 by Uir Ribeiro


Copyright 2009 by DK Ltda.

Nenhuma parte desta publicao poder ser reproduzida


sem autorizao prvia e escrita da editora.

Certificao Linux
Uir Ribeiro
ISBN: 85-7323-232-3
Segunda Edio
Ampliada e revisada

Os conceitos emitidos nesta obra so de inteira


responsabilidade do Autor.

Site do Autor:
http://www.certificacaolinux.com.br

DK Editora
Av. Afonso Pena, 3111 - 1109
30130-008 Belo Horizonte MG

Agradecimentos

O paradoxo dos agradecimentos quase impossvel de ser completo e


aceitavelmente breve.
No sagrado mistrio da vida, cada corao possui no Infinito a alma
gmea da sua, companheira divina para a viagem gloriosa imortalidade.
Agradeo minha alma de minhalma Carla Cruz, por tecer-me a felicidade em sorrisos de esplendor.
Ao meu pequeno grande amigo, meu filho, Arthur. Que torna todos
os momentos mais doces e engraados.
Ao amigo Jon Maddog Hall que to gentilmente me honrou ao escrever o prefcio deste livro.
Aos milhares de programadores e pessoas que do o melhor de si ao
desenvolverem solues OpenSource adequadas, tornando a vida em sociedade cada vez melhor.
Ao companheirismo e apoio das diversas pessoas que foram cruciais
em diversas ocasies, a minha gratido.
Deus, pela fora, pela sade, pelo po nosso de cada dia e pela f.
Uir Ribeiro
Belo Horizonte MG
11 de Julho de 2009

Sobre o Autor

Uir Endy Ribeiro formado em processamento de dados, ps-graduado em telecomunicaes e mestre em sistemas distribudos.
Uir especialista em telecomunicaes, redes de comutao de pacotes, Voz sobre IP, gateways de acesso remoto, gatekeepers, ATM, Roteadores
Mid-Range, MAX TNT e APX8000. Tambm fluente em sistemas UNIX
SCO, Sun, Linux, Cisco OS, Firewall-One, nos protocolos TCP/IP, BGP-4,
H.323, SS7, H.248, Megaco e em desenvolvimento de aplicaes em ASP,
ASP.NET, C#, C++, PHP, Perl, Unixshell, MySQL, MS-SQL e Oracle.
Trabalhou como Engenheiro na Lucent Technologies com centrais de
tecnologia Softswitch de voz sobre IP. Responsvel pelo primeiro teste de
voz sobre IP na Telefonica em So Paulo utilizando protocolos G.729, G.723,
Fax sobre IP e convergncia de dados em redes de comutao. Tambm
participou do consrcio de interoperabilidade de redes voz sobre IP entre a
Lucent e Alcatel no Chile e em NY nos Estados Unidos.
Foi diretor da Ecobusiness School, escola de ps-graduao em meioambiente, quando desenvolveu uma plataforma de ensino distncia integrada com controle acadmico.
Atualmente diretor acadmico da Universidade Salgado de Oliveira,
campus Belo Horizonte, responsvel por 16 cursos de graduao e uma
equipe de 170 professores.
Tambm autor do livro Sistemas Distribudos: desenvolvendo aplicaes de alta performance no Linux, Metodologia Cientfica: teoria e
prtica, TCC Trabalho de Concluso de Curso e 37 Hbitos dos professores altamente eficazes.

Prefcio

Saudaes,
Se voc est lendo estas palavras, porque voc, provavelmente, tomou
vrias decises.
Em primeiro lugar, voc, provavelmente, conhece algo sobre o movimento de Software Livre no Brasil, e sua importncia para a economia de
seu pas. Voc, provavelmente, j percebeu que existe uma disponibilidade
de cdigo fonte de projetos como GNU e o Linux Kernel, atravs dos quais
voc pode adequar o sistema operacional para melhor se enquadrar s suas
necessidades ou as necessidades de seu empregador.
Em segundo lugar, voc pode estar usado Linux em seu PC em casa, ou
talvez voc um administrador de um sistema como Solaris, AIX, HP/UX,
ou algum outro sistema de propriedade Unix e logo, voc comeou a usar
Linux no trabalho. Ou ainda, voc se sente pronto para trabalhar em uma
empresa que trabalha como sistema Linux em tempo integral.
Em terceiro lugar, voc pode ter olhado em um jornal e percebeu que
alguns anncios de emprego j esto exigindo que o candidato tenha
Certificao de LPI, e voc deseja saber o motivo de tal requisito. Afinal
de contas, voc j sabe como manter um sistema de Linux!
Quando eu comecei em informtica, trinta e cinco anos atrs, as coisas
eram muito, mas muito mais simples do que elas so hoje. Um programador s precisava saber como perfurar cartes e como escrever na linguagem
FORTRAN (ou COBOL). No havia Internet ou vrus, somente interfaces
grficas pobres, e a memria principal era medida em kilobytes, nada de
megabytes ou gigabytes. Na realidade, nem se quer existia algum ttulo

oficial para o cargo que temos hoje de administrador de sistemas, uma


vez que cada sistema era executado por operadores que se preocupavam
com uma mquina especfica, e no com a interatividade de vrias mquinas que trabalham em conjunto.
Hoje, ns temos que nos preocupar com segurana, trfico de rede e
tabelas de rotas, subnets, e demais assuntos de rede. Temos que controlar
migrao de dados e de programas de um sistema para o outro, e a
interoperabilidade de vrias redes e protocolos. Ns temos que ser capazes
de planejar o crescimento, alm de resolver problemas. E a partir dessas
necessidades que originaram as tarefas e o ttulo de Administrador de
Sistemas.
Em reconhecimento do crescimento fenomenal do sistema operacional
GNU/Linux, o Linux Professional Institute, uma organizao sem fins lucrativos sediada no Canad, estipulou uma srie de qualificaes que um
administrador de sistemas Linux deve possuir. Eles tambm criaram testes
com o intuito de verificar se essas atribuies so dominadas pelo administrador em questo.
Assim, se o administrador dominar uma mdia pr-definida desses requisitos, ento ele, provavelmente, possui o conhecimento necessrio para
administrar sistemas de GNU/Linux. Mantendo o esprito de Software Livre, o instituto publicou os objetivos dos testes em seu site, de modo que
diferentes mtodos de estudo podem ser desenvolvidos.
Este livro um exemplo de um mtodo de treinamento para lhe ajudar
a alcanar este nvel de conhecimento.
O conhecimento de sistemas de GNU/Linux por si s no desenvolve
um mestre em administrao de sistemas, mas para o gerente que est
contratando, ter algum que passou no teste LPI, lhe d a segurana que o
mesmo est contratando um administrador com um desempenho adicional
e medido atravs da certificao.

Claro que o contratante tambm pode conferir o potencial do candidato


com seus ex-empregadores ou professores. E porque tambm no verificar
as realizaes prvias do empregado como listado em seu currculo? Mas o
fato do candidato ter sido aprovado nos exames de LPI assegura para o
empregador que o candidato em questo, com certeza, se trata de um BOM
administrador de sistemas GNU/Linux.
Para aqueles que desejam estudar e desenvolver uma carreira em Administrao de Sistemas, por favor, sinta se seguro ao utilizar os objetivos
listados para cada um dos exames LPI e os veja como um bom guia de
estudo com as informaes que voc deve saber. Pois eles foram desenvolvidos para administradores de sistemas e por administradores de sistemas.
Assim, mesmo que voc no tenha a inteno de fazer os exames de LPI
formalmente, saiba que este material lhe tornar um melhor administrador
de sistemas.
Finalmente, d as boas-vindas a este livro, pois se trata de um guia
relativamente barato para estudar e alcanar a sua meta de se tornar um
administrador de sistemas GNU/Linux certificado.
No ser o fim de sua aprendizagem, mas um BOM comeo.
Meus cumprimentos,
Jon maddog Hall
Diretor executivo
Linux International

SUMRIO

GUIA DE ESTUDOS PARA LPI ......................................................... 23


Como Marcar a prova? ............................................................................ 28
A importncia de Fazer exerccios .......................................................... 29
Aprendendo de acordo com o funcionamento do seu crebro ................ 30
Fsico ............................................................................................ 30
Lingstico / sonoro ..................................................................... 31
Visual ........................................................................................... 32
Voc precisa fazer simulados! ................................................................. 34
Localizando Ajuda na Internet ................................................................ 35
Listas de discusso .................................................................................. 35
O site http://www.certificacaolinux.com.br ............................................ 36
O EXAME LPI 101 ............................................................................... 37
TPICO 101 .......................................................................................... 41
101.1 Determinar e Configurar o Hardware ...................................... 43
Kernel dos Sistemas Operacionais .................................................... 45
Interrupes ....................................................................................... 48
BIOS .................................................................................................. 51
Portas de Entrada/Sada (Input / Output) ......................................... 51
Requisio de Interrupo (IRQ) ....................................................... 52
Acesso Direto a Memria (DMA) ..................................................... 53
Dispositivos PCI ................................................................................ 54
Utilitrio lspci .................................................................................... 55
O Utilitrio lsusb ............................................................................... 55
SYSFS ................................................................................................ 56
BLOCK ........................................................................................ 57
BUS .............................................................................................. 57
CLASS ......................................................................................... 57
DEVICES ..................................................................................... 57

FIRMWARE ................................................................................. 58
MODULE ..................................................................................... 58
POWER ........................................................................................ 58
HALD ................................................................................................ 59
UDEV ................................................................................................ 59
D-BUS ................................................................................................ 60
Configurando o Modem e Placas de Som ......................................... 60
setserial ........................................................................................ 61
Configurando a Placa de Som ........................................................... 63
Configurando Dispositivos no-IDE ................................................. 64
SCSI ID ........................................................................................ 66
SCSI LUN .................................................................................... 66
Terminadores ............................................................................... 66
Configurando Dispositivos de Rede e Outros Dispositivos .............. 67
Configurando dispositivos de conectividade ..................................... 70
Bridged/DHCP ............................................................................. 71
PPPoX .......................................................................................... 71
Configurando IP esttico .............................................................. 72
Configurando IP dinmico via rede Bridged usando DHCP ....... 73
Configurando IP dinmico usando PPPoX .................................. 74
Configurando IP esttico usando PPPoX ..................................... 76
Configurando dispositivos USB ........................................................ 76
TECLADO ................................................................................... 78
MOUSE ........................................................................................ 79
IMPRESSORA ............................................................................. 79
WEBCAM .................................................................................... 79
Outros Dispositivos ...................................................................... 79
Ferramentas para configurao de dispositivos USB .................. 80
101.2 Sistemas de Boot ....................................................................... 81
Processo de Carga do Kernel ............................................................. 82
O Gerenciador de boot ....................................................................... 85
101.3 Alterando runlevels, shutdown e reboot .................................... 87
Definindo quais os processos sero executados por cada runlevel ... 89

Definindo o Runlevel padro ............................................................. 91


Shutdown ........................................................................................... 92
TPICO 102 .......................................................................................... 95
102.1 Layout do Disco (Particionamento) ........................................... 97
A partio de Swap ............................................................................ 98
102.2 Instalando um Gerenciador de Boot .......................................... 99
LInux LOader (LILO) ..................................................................... 100
O utilitrio lilo ........................................................................... 101
Grand Unified Boot Loader (GRUB) .............................................. 103
O utilitrio grub-install .............................................................. 106
102.3 Gerenciamento de Bibli7otecas Compartilhadas ................... 108
Arquivos tarball ............................................................................... 109
Compilando o Cdigo Fonte ............................................................ 111
PR-PROCESSAMENTO ......................................................... 113
COMPILAO ......................................................................... 113
ASSEMBLER ............................................................................ 113
LINKER ..................................................................................... 114
make ........................................................................................... 114
configure .................................................................................... 117
As Bibliotecas Compartilhadas ....................................................... 119
ldd .................................................................................................... 121
ldconfig ............................................................................................ 121
# ldconfig [opes] diretrio_de_bibliotecas .................................. 122
LD_LIBRARY_PATH ..................................................................... 123
102.4 Gerenciamento de Pacotes Debian .......................................... 123
Gerenciamento de Pacotes Debian .................................................. 125
dpkg ................................................................................................. 127
dpkg-reconfigure ............................................................................. 129
apt-get .............................................................................................. 129
aptitude ............................................................................................ 131
dselect .............................................................................................. 132

alien ................................................................................................. 132


unpack .............................................................................................. 133
apt-cache .......................................................................................... 133
102.5 Gerenciamento de Arquivos Red Hat e YUM ........................ 135
RPM ................................................................................................. 136
YUM ................................................................................................ 140
TPICO 103 ........................................................................................ 143
103.1 Trabalhando com a linha de comandos do Shell ................. 147
Variveis do Shell ............................................................................ 147
unset ................................................................................................. 150
env .................................................................................................... 150
exec .................................................................................................. 150
pwd ................................................................................................... 151
Trabalhando com eficcia no Shell ................................................. 151
~/.profile .......................................................................................... 156
~/.bashrc .......................................................................................... 157
Usando a documentao local ......................................................... 157
Encontrando a documentao necessria em /usr/share/doc .......... 157
Utilizando as pginas Info ............................................................... 158
Utilizando as Pginas do Manual .................................................... 159
Utilizando o Help on line ................................................................ 161
Utilizando os comandos apropos e whatis ...................................... 161
uname ............................................................................................... 162
103.2 Utilizando Filtros de Texto ....................................................... 163
cat ..................................................................................................... 163
cut ..................................................................................................... 165
expand .............................................................................................. 166
unexpand .......................................................................................... 166
fmt .................................................................................................... 167
head .................................................................................................. 167
join ................................................................................................... 168

nl ...................................................................................................... 169
od ..................................................................................................... 171
paste ................................................................................................. 172
pr ...................................................................................................... 173
split .................................................................................................. 174
tac ..................................................................................................... 175
tail .................................................................................................... 175
tr ....................................................................................................... 176
wc ..................................................................................................... 177
hexdump .......................................................................................... 178
sort ................................................................................................... 179
uniq .................................................................................................. 180
103.3 Gerenciamento Bsico de Arquivos ......................................... 180
cp ...................................................................................................... 181
mv .................................................................................................... 182
rm ..................................................................................................... 183
mkdir ................................................................................................ 184
rmdir ................................................................................................ 185
touch ................................................................................................ 185
tar ..................................................................................................... 186
Os compressores de dados ............................................................... 188
Utilizando o cpio para backup e restaurao de arquivos ............... 190
dd ..................................................................................................... 191
Fazendo Backup do Master Boot Record .................................. 193
103.4 Redirecionamento e Condutores .............................................. 193
Smbolos Coringa (Wildcards) ........................................................ 196
tee ..................................................................................................... 197
xargs ................................................................................................. 198
103.5 Executando, Gerenciando e Eliminado Processos .................. 199
Sinais ............................................................................................... 201
Controle de Processos ...................................................................... 201

Prioridade de execuo .................................................................... 203


ps ...................................................................................................... 203
pstree ................................................................................................ 204
top .................................................................................................... 205
kill .................................................................................................... 207
killall ................................................................................................ 208
jobs ................................................................................................... 210
bg ..................................................................................................... 211
fg ...................................................................................................... 211
nohup ............................................................................................... 212
free ................................................................................................... 212
uptime .............................................................................................. 213
103.6 Modificando a prioridade de execuo dos processos ........... 213
nice ................................................................................................... 213
renice ................................................................................................ 214
103.7 Utilizando Expresses Regulares ............................................. 215
grep .................................................................................................. 216
egrep ................................................................................................. 219
fgrep ................................................................................................. 219
sed .................................................................................................... 219
Resumo das expresses Regulares ................................................... 220
103.8 Trabalhando com o vi ................................................................ 221
TPICO 104 ........................................................................................ 225
104.1 Criando Sistemas de Arquivos ................................................. 227
Parties Primrias .......................................................................... 229
Parties Estendidas ........................................................................ 229
Parties Lgicas ............................................................................. 230
Partio de Swap (arquivo de troca) ................................................ 230
Os sistemas de Arquivos .................................................................. 230
ext2 ............................................................................................. 231

ext3 ............................................................................................. 231


XFS ............................................................................................ 232
Reiserfs v3 .................................................................................. 233
VFAT .......................................................................................... 234
Criando Parties e Sistemas de Arquivos ...................................... 235
fdisk ................................................................................................. 235
mkfs ................................................................................................. 237
mkswap ............................................................................................ 238
104.2 Mantendo a Integridade do Sistema de Arquivos .................. 239
df ...................................................................................................... 239
du ..................................................................................................... 240
fsck ................................................................................................... 241
mke2fs .............................................................................................. 242
debugfs ............................................................................................. 243
dumpe2fs .......................................................................................... 244
tune2fs .............................................................................................. 244
e2fsck ............................................................................................... 244
104.3 Montando e Desmontando Sistema de Arquivos .................... 245
O arquivo /etc/fstab .......................................................................... 246
mount ............................................................................................... 249
umount ............................................................................................. 251
104.4 Trabalhando com Quotas de Disco .......................................... 252
quota ................................................................................................ 255
quotaon ............................................................................................ 256
quotaoff ............................................................................................ 257
quotacheck ....................................................................................... 257
edquota ............................................................................................. 258
repquota ........................................................................................... 259
104.5 Trabalhando com Permisses ................................................... 260
Criando Novos Arquivos ................................................................. 266

Modificando as Permisses de Arquivos ......................................... 267


chattr ................................................................................................ 269
lsattr ................................................................................................. 271
chown ............................................................................................... 272
chgrp ................................................................................................ 273
104.6 Links Simblicos e Hard Links ................................................ 274
ln ...................................................................................................... 275
104.7 Procurando por arquivos e sua posio correta no sistema ..... 276
Subdiretrio /bin .............................................................................. 280
Subdiretrio /boot ............................................................................ 280
Subdiretrio /dev ............................................................................. 280
Subdiretrio /etc ............................................................................... 281
Subdiretrio /home .......................................................................... 281
Subdiretrio /lib ............................................................................... 282
Subdiretrio /mnt ............................................................................. 282
Subdiretrio /proc ............................................................................ 282
Subdiretrio /root (opcional) ........................................................... 282
Subdiretrio /sbin ............................................................................ 283
Subdiretrio /tmp ............................................................................. 283
Subdiretrio /usr. ............................................................................. 283
Subdiretrio /var .............................................................................. 283
which ................................................................................................ 284
find ................................................................................................... 284
locate ................................................................................................ 286
updatedb ........................................................................................... 286
whatis ............................................................................................... 286
apropos ............................................................................................. 287
O EXAME LPI 102 ............................................................................. 289
TPICO 105 ........................................................................................ 293
105.1 Customizando o shell ................................................................. 295
Aliases .............................................................................................. 296
Funes ............................................................................................ 297

Arquivos de Configurao do Bash ................................................. 298


Ajustando o ambiente de trabalho dos usurios .............................. 299
O diretrio /etc/skel (esqueleto) ...................................................... 300
105.2 Alterando e Escrevendo Scripts de Shell ................................ 300
Escolhendo o Interpretador de Script .............................................. 301
Permisses de execuo ................................................................... 302
Variveis especiais ........................................................................... 303
O comando test ................................................................................ 304
Referncias dos comandos bash para programao shell ............... 304
A condicional case ........................................................................... 306
Uso de loops utilizando o for ........................................................... 306
Uso de loops utilizando o while ...................................................... 307
Recebendo dados dos usurios via script com o comando read ...... 307
seq .................................................................................................... 309
105.3 Gerenciamento de dados SQL .................................................. 310
INSERT ............................................................................................ 312
DELETE .......................................................................................... 313
UPDATE .......................................................................................... 314
SELECT ........................................................................................... 315
TPICO 106 ........................................................................................ 321
106.1 Instalao e configurao do X Window System ................ 323
Verificar a compatibilidade da verso do X: ................................... 324
Verificar o chipset da placa de vdeo. .............................................. 324
Verificar o tipo do monitor .............................................................. 324
Configurando o XF86 ...................................................................... 325
Instalando mais fontes no XF86 ...................................................... 328
Customizando o XF86 com o .Xresources e .Xdefaults .................. 329
106.2 Configurando um Gerenciador de Janelas ............................. 330
XDM ................................................................................................ 330
KDM ................................................................................................ 333
GDM ................................................................................................ 334

Estaes de Trabalho X ................................................................... 335


Emulador de Terminal ..................................................................... 336
106.3 Acessibilidade ............................................................................ 337
TPICO 107 ........................................................................................ 341
107.1 Gerenciando Usurios e Grupos de Usurios ......................... 343
Grupos de Trabalho ......................................................................... 346
Administrando contas de usurio .................................................... 347
useradd ............................................................................................. 347
passwd .............................................................................................. 348
usermod ............................................................................................ 349
userdel .............................................................................................. 350
groupadd .......................................................................................... 351
gwpasswd ......................................................................................... 351
groupdel ........................................................................................... 351
pwconv ............................................................................................. 352
grpconv ............................................................................................ 352
pwunconv ......................................................................................... 353
grpunconv ........................................................................................ 353
chage ................................................................................................ 353
107.2 Automatizando a administrao do sistema com
agendamento de tarefas ........................................................ 354
O cron .............................................................................................. 354
O comando crontab .......................................................................... 356
O at ................................................................................................... 359
107.3 Internacionalizao do sistema ............................................. 361
Configurando as Zonas de Fuso Horrio ......................................... 362
Iniciando o Relgio do sistema ....................................................... 362
Padres de Caractere ....................................................................... 363
ASCII ............................................................................................... 363
ISSO-8859 ....................................................................................... 363
UNICODE ....................................................................................... 365

UTF-8 ............................................................................................... 366


Configurando o mapa de teclado ..................................................... 366
Converso de arquivos ..................................................................... 367
Variveis ambientais de internacionalizao .................................. 368
TPICO 108 ........................................................................................ 371
108.1 Mantendo a hora do sistema ................................................. 373
108.2 Sistema de Log ........................................................................ 376
KLOGD ............................................................................................ 380
logger ............................................................................................... 381
108.3 Agente de Transferncia de Correio ..................................... 382
Sendmail .......................................................................................... 382
QMAIL ............................................................................................. 386
EXIM ............................................................................................... 386
POSTFIX ......................................................................................... 386
108.4 Gerenciamento de Impressoras e impresso ....................... 387
Instalando uma Impressora ............................................................. 388
lp ...................................................................................................... 390
lpq .................................................................................................... 391
lprm .................................................................................................. 392
lpc ..................................................................................................... 392
Imprimindo Arquivos ...................................................................... 394
APSfilter ..................................................................................... 395
Magicfilter .................................................................................. 395
lpr ..................................................................................................... 397
Instalando Impressoras Remotas em Linux .................................... 398
Instalando Impressoras Remotas em Windows ............................... 398
TPICO 109 ........................................................................................ 401
109.1 Fundamentos do TCP/IP ........................................................... 403
Classe A ........................................................................................... 405
Classe B ........................................................................................... 405

Classe C ........................................................................................... 406


Classe D ........................................................................................... 406
Classe E ........................................................................................... 406
Protocolos que compe o TCP/IP .................................................... 407
Servios e Portas TCP/IP ................................................................. 410
IPv6 .................................................................................................. 412
Utilitrios e Ferramentas do TCP/IP ............................................... 414
dig .................................................................................................... 414
ping .................................................................................................. 416
traceroute ......................................................................................... 417
tracepath .......................................................................................... 418
whois ................................................................................................ 419
telnet ................................................................................................ 420
ftp ..................................................................................................... 420
host ................................................................................................... 421
109.2 Configurando a rede ................................................................. 423
/etc/HOSTNAME ............................................................................ 423
/etc/hosts .......................................................................................... 423
/etc/resolv.conf ................................................................................. 424
/etc/host.conf .................................................................................... 424
/etc/nsswitch.conf ............................................................................ 425
/etc/networks .................................................................................... 425
domainname .................................................................................... 426
dnsdomainname ............................................................................... 426
ifconfig ............................................................................................. 426
ifup ................................................................................................... 428
ifdown .............................................................................................. 429
109.3 Resolvendo problemas bsicos de rede .................................... 429
hostname .......................................................................................... 429
netstat ............................................................................................... 430
route ................................................................................................. 431
109.4 Configurando o cliente Resoluo de Nomes .......................... 433

TPICO 110 ........................................................................................ 439


110.1 Tarefas de Segurana ................................................................ 441
Procurando por executveis com SUID ........................................... 441
Verificando a integridade dos pacotes ............................................. 442
Verificando a integridade de arquivos tarball. ................................ 444
Gerenciamento de Senhas ............................................................... 445
Verificando processos em execuo ................................................. 445
Leitura dos Anncios de Segurana ................................................ 445
Determinando as portas abertas com o NMAP ............................... 446
Determinando os arquivos abertos com o LSOF ............................. 447
Aplicando Segurana nos Usurios ................................................. 448
usermod ............................................................................................ 451
Executando programas com a permisso de outro usurio ............. 451
110.2 Aplicando segurana no Host ................................................... 453
Uso de Tcpwrappers ......................................................................... 453
Configurando o inetd ....................................................................... 455
Utilizando Tcpwrappers para segurana do inetd ........................... 456
Configurando o xinetd ..................................................................... 457
110.3 - Criptografia de dados ............................................................. 459
Usando o Shell Seguro .................................................................... 459
Usando criptografia de dados .......................................................... 464
GLOSSRIO ....................................................................................... 471
TPICOS DAS PROVAS ................................................................... 495
PROVA 101 ...................................................................................... 497
PROVA 102 ...................................................................................... 503
PESOS DAS QUESTES ................................................................... 512
PROVA 101 ...................................................................................... 512
PROVA 102 ...................................................................................... 513
REFERNCIAS ................................................................................... 515

GUIA DE
ESTUDOS
PARA LPI

Certificao Linux

Muita coisa melhorou desde que escrevi meu primeiro livro de Linux
em 2004. A presena do Linux Professional Institute cresceu abundantemente no pas e a procura pelas provas certificatrias tambm cresceu.
Isto reflexo do crescimento do uso do sistema operacional Linux, e da
percepo das pessoas em tornarem-se profissionais e serem bem pagas
por isto. Hoje o LPI conta com mais de 32000 pessoas certificadas no
mundo.
O LPI conta com trs nveis de certificao: LPIC-1, LPIC-2 e LPIC3. Cada nvel pretende certificar um profissional apto a desempenhar tarefas que devam ser executadas com um crescente grau de dificuldade e
complexidade.
Se voc est lendo este livro, voc com certeza quer passar na prova
da LPI e colocar o certificado no seu currculo e no seu carto de visitas.
O mercado de Software Livre est em franco crescimento e a procura de
profissionais certificados. E isso timo para voc, sua carreira, seu
futuro e tambm seu bolso.
Tenho visto isto todas as semanas, com meus alunos, agradecendo o
sucesso que tiveram nas provas.
A primeira edio deste livro foi aclamada como o melhor livro de
estudos para a certificao LPI pela comunidade do BR-LINUX. Este
sucesso fruto de muito trabalho, dedicao e empatia com os usurios
do Linux.
Esta segunda edio foi ampliada e revisada para contemplar a
reformulao da prova em Abril de 2009. Novos tpicos foram escritos e
tambm muita coisa deixou de ser objeto da prova, e, portanto do livro.
Este um livro de Linux diferente, porque objetivo, didtico e focado
nos temas das provas LPIC-1. Voc ir encontrar exatamente aquilo que
precisa estudar na medida certa para o exame.
25

Prof. Uir Ribeiro

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 e Gerenciamento de Pacotes
Tpico 103 Comandos GNU e UNIX
Tpico 104 Dispositivos e Sistema de Arquivos
PROVA 102:
Tpico 105 Shell, Scripts e Gerenciamento de Dados
Tpico 106 Interface do Usurio
Tpico 107 Tarefas Administrativas
Tpico 108 Servios Essenciais do Sistema
Tpico 109 Fundamentos de Rede
Tpico 110 - Segurana
Veja que de tempos em tempos os tpicos so re-ordenados entre as
provas 101 e 102.
Em abril de 2009 houve mudanas na distribuio dos tpicos entre o
exame 101 e 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:
... amai-vos, esse o primeiro ensinamento;
instru-vos, este o segundo.
Jesus - Evangelho VI

26

Certificao Linux

Gerenciamento de dados SQL


Acessibilidade
Internacionalizao e regionalizao
Criptografia de dados
Mais tratamento de erros e segurana
Gerenciamento de dispositivos udev

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
O exame 101 a primeira prova requerida para a certificao LPIC
Nvel 1. Nesta prova 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 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
27

Prof. Uir Ribeiro

solidificar os conceitos bsicos do sistema 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.
Este exame costuma ser 20% maior que o exame 101 e cobre uma boa
parte da administrao 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 dado nos tpicos relativos a segurana.

Como Marcar a prova?


Voc pode fazer a prova escrita de acordo com a agenda do LPI Brasil. Esta agenda itinerante e perpassa pelos grandes centros urbanos a
cada ms.
Pessoalmente eu prefiro marcar a prova em um centro Pearson Vue.
Primeiro porque quase sempre existir um prximo de voc e voc
quem manda quando quer fazer a prova.
Para marcar a prova do Linux Professional Institute voc precisa primeiro se cadastrar no http://www.lpi.org/ e obter um LPI ID. Voc deve
passar este nmero para o centro Pearson Vue para que eles possam marcar sua prova.
Onde encontrar um centro Pearson Vue? Escolha pelo site deles: http:/
/www.pearsonvue.com. Selecione Tecnologia da Informao, Linux
Professional Institute e depois Brasil. Da voc poder escolher por estado e cidade. As cidades com mais de 100 mil habitantes geralmente tem
um centro destes.

28

Certificao Linux

Como o ambiente da prova? Ela feita pelo computador. Ento este


computador fica em uma pequena sala fechada e isolada do som e distraes. Parece um biombo pequeno. Voc no pode levar nada. Deve deixar celular, agenda, papel tudo. Eles vo te dar papel, lpis e um dicionrio ingls-portugus se a prova for em ingls. Qualquer movimentao
estranha eles anulam seu teste.
Outro detalhe importante da prova em computador que se voc
errar alguma questo de algum tpico, o computador seleciona mais
questes do mesmo tpico para testar ainda mais seus conhecimentos
sobre o tema. Isto tem um lado bom e outro ruim. O lado bom que se
voc tiver errado de bobeira, voc ter outra chance de redimir seu
erro. Mas se voc de fato no estiver devidamente preparado para o
tema, voc est lascado.

A importncia de Fazer exerccios


O crebro um msculo. Quanto mais exercitado, mais forte e resistente ele fica. Portanto, faa muitos exerccios sobre os tpicos. Exercite os comandos. Veja suas opes e argumentos. Teste as funcionalidades de cada um deles.
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 independncia 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 tem. De forma que toda a configurao
e manejo do servidor feita 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.
29

Prof. Uir Ribeiro

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, arquivos 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.

Aprendendo de acordo com o funcionamento do


seu crebro
Voc tambm precisa se conhecer um pouco para que o aprendizado
seja efetivo. Nossa mente trabalha basicamente com 3 tipos de estilos de
aprendizagem: fsico, visual e lingustico/sonoro. Como voc fixa melhor aquilo que aprendeu?
Veja como so estes estilos e tente se identificar neles:

Fsico
As Pessoas com estas caractersticas so os inquietos, so os fuadores,
os desmontadores de equipamentos e brinquedos, os que querem saber
como funciona e ver por dentro, os que no conseguem ficar sossegados
em seu lugar.
Eles so pessoas que no conseguem ficar sentadas por muito tempo.
Eles simplesmente 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.

30

Certificao Linux

Quando esto aprendendo ou adquirindo capacitao acadmica, essas pessoas se beneficiaro mais com atividades de expresso corporal,
manipulando e tocando objetos, realizando exerccios, etc.
Dicas para voc aprender melhor:
Realize seus estudos com montagens e construes de objetos e
simulaes
Inclua aulas virtuais em computadores
Alterne sees tericas e prticas durante o estudo.

Lingstico / 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. Vem sons em tudo. Eles podem no serem os melhores
cantores ou msicos, mas eles tem uma habilidade natural para interagir
e entender os sons, musicais ou no.
Sua relao com o mundo atravs dos sons e ritmos sonoros. As
atividades que podem 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 instrumentos para acompanhar seus trabalhos ou de outros,
ou desenvolvendo projetos de multimdia.
Dicas para voc aprender melhor:
Tente transformar aquilo que voc est aprendendo em msica
Grave aquilo que est aprendendo para escutar depois
Utilize msica agradvel durante os estudos

31

Prof. Uir Ribeiro

Visual
Estas pessoas so os modernos Picassos e Renoirs, os grafiteiros e
rabiscadores, e indivduos que tem um talento natural para as cores e
para harmonizar ambientes. Os indivduos Visuais parecem ter um senso
artstico que faz com que tudo 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 acadmica, essas pessoas se beneficiaro mais com desenho e criao de diagramas,
inclusive grficos, leitura cartogrfica, criao de mapas, ou realizando
demonstraes
Dicas para voc aprender melhor:
Crie apresentaes multimdia
Utilize interpretao de mapas, diagramas e grficos
Use e abuse de ilustraes, grficos, slides, filmes, etc.
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, exercitando as possveis situaes. Faa as seguintes
perguntas para cada comando estudado:
A cincia da computao no mais sobre
computadores, da mesma forma que a astronomia
no mais sobre telescpios.
E. W. Dijkstra

32

Certificao Linux

Para que serve este comando?


Como ele usado?
Quando ele usado?
Quais arquivos ele afeta?

Eu sugiro que voc faa um esquema de espinha de peixe para os


comandos, de forma que voc trabalhe com todas as potencialidades de
aprendiazado do seu crebro: visual, fsico e leia o texto em voz alta para
tambm exercitar o lado sonoro.
FIGURA 1 - Esquema de espinha de peixe

Este tipo de esquema atente a pelo menos dois tipos de estilo de aprendizagem: o fsico pois voc est fazendo movimentos ao escrever, visual pois
voc est fazendo um diagrama. Tambm ajuda na lgica e memorizao
pois voc est categorizando a informao em COMO, O QUE, QUANDO
e ARQUIVOS. Se possvel compre fichas pautadas 10x15cm que so exelente para fazer consultas rpidas e podem te ajudar na memorizao.
Tente imaginar as situaes em que os comandos so usados e teste os
diversos tipos de opes que eles tem. Isto importante porque uma opo de um comando pode inverter o resultado.
33

Prof. Uir Ribeiro

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 comando ir mostrar todas as linhas que no
tem a palavra uira no texto.txt.
Outro detalhe importante. Leia os MAN dos comandos de cada
tpico. Eles tem informaes importantes que o programador que desenvolveu o software deixou ali de forma especial para voc.

Voc precisa fazer simulados!


Este item um complemento do anterior, mas to importante que
resolvi separ-lo para que voc d mais ateno a ele.
Um simulado vai te dar uma idia exata do tipo de questes das provas voc vai deparar pelo caminho. Tem questes que so maldosamente
formuladas para que voc caia na vala do senso comum.
Veja que existem questes que vo priorizar pela simples memorizao,
outras vo exercitar sua capacidade de anlise em entender um problema
do mundo real e sua capacidade de transpor para o mundo computacional, outras vo exercitar seu julgamento diante de um problema em
questo e outras vo te apresentar um problema e a soluo e voc dever
avaliar se a soluo a correta ou no e porque.
A prova feita para no ser fcil. E isto de suma importncia para
atestar a qualidade das pessoas que so certificadas. Se qualquer um com
pouco preparo pode ser certificado, de que adianta exibir este ttulo no
currculo? Mas se para os poucos que realmente se dedicaram e estudaram a fundo, ora, uma certificao de peso.
Existem simulados em livros e em sites na Internet. A maioria na
lngua de Shakespeare. Faa todos que encontrar pela frente. E principalmente quando voc errar uma questo, anote para saber qual foi seu
34

Certificao Linux

erro e qual seria a resposta correta e porque. O aprendizado se constri


desta maneira.

Localizando Ajuda na Internet


Existem boas pginas Internet Nacionais e Internacionais sobre o
GNU/Linux e assuntos relacionados com este sistema. Elas trazem documentos e explicaes sobre configurao, instalao, manuteno, documentao, suporte, etc.
http://www.tdpl.org/ - Este site mantm a documentao do Linux
Documentation Project LDP. sem dvida o local ideal para encontrar
informaes sobre o Linux.
http://www.linux.org/ - Pgina oficial do GNU/Linux. Documentao, livros, cursos, links para distribuies e download de aplicativos
podem ser encontrados neste site.
http://counter.li.org/ - Este um servio que tem o objetivo de contar
os usurios, mquinas, grupos de usurios Linux existentes ao redor do
mundo.
http://metalab.unc.edu/ - O ponto de referncia mais tradicional de
softwares GNU/Linux. Voc pode encontrar desde dicas, documentao
How-Tos e algumas distribuies GNU/Linux.

Listas de discusso
As listas de discusso so grupos de usurios que trocam mensagens
entre si, resolvem dvidas, ajudam na configurao de programas, instalao, etc. Algumas listas so especficas a um determinado assunto do
sistema, algumas so feitas para usurios iniciantes ou avanados, outras
falam praticamente de tudo.

35

Prof. Uir Ribeiro

O site http://www.certificacaolinux.com.br
O treinamento para a certificao LPI que ofereo 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 individualizado, dinmico, gostoso de fazer e muito
prtico.
O curso aborda todos os tpicos das provas LPI 101 e 102 j
atualizadas com as alteraes de abril deste ano.
No link http://www.certificacaolinux.com.br/treinamento.htm 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.

S as estrelas podem iluminar nosso caminho.


Olhe para elas...
via Corneli

36

O EXAME
LPI
101

Certificao Linux

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.
Atualmente existem cinco tpicos chaves para o exame 101:
Tpico 101 Arquitetura do Sistema: este tpico aborda determinar e configurar o hardware, sistema de boot e mudar nveis de
execuo de runlevel.
Tpico 102 Instalao do Linux e Gerenciador de Pacotes: neste
tpico faz-se saber como proceder com o layout de disco, a instalao do gerenciador de boot, a instalao de programas partir
do cdigo fonte, o gerenciamento de bibliotecas compartilhadas e
a usar o sistema de pacotes Debian, RPM e YUM.
Tpico 103 GNU e comandos Unix: este tpico cobre comandos
usados no dia-a-dia da administrao do sistema, sintaxe dos comandos, filtros de texto, processos, prioridades de processos,
gerenciamento de arquivos e diretrios, redirecionamentos, expresses regulares e trabalhar com o vi.
Tpico 104 Dispositivos e sistemas de arquivos: os objetivos
deste tpico incluem criar parties e sistemas de arquivos, controlar e manter integridade do sistema de arquivos, configurar quotas de disco, permisses e links simblicos.
Este exame ir testar seu conhecimento terico, comandos e suas opes comuns, localizao de arquivos importantes, sintaxe de configuraes e procedimentos mais usados.

39

TPICO 101
ARQUITETURA
DE HARDWARE

Certificao Linux

Este tpico aborda o conhecimento de arquitetura de hardware de um


PC, bem como os requerimentos necessrios para uma instalao do Linux
bem sucedida.
Neste captulo abordaremos a configurao de BIOS, IRQs, portas de entrada e sada (I/O) para alguns dispositivos como modems,
placas de rede, placas SCSI, portas paralelas, portas seriais e dispositivos USB.
Ajustar estes dispositivos placa me do computador pode requerer alguma configurao na BIOS. Outros dispositivos, especialmente os mais antigos, podem requerer configuraes de portas I/O, IRQ,
DMA atravs de interruptores especiais localizados na sua placa chamados jumpers.
importante que voc conhea bem a configurao dos dispositivos
do sistema para saber identificar e corrigir possveis problemas de conflitos e fazer ajustes caso seja necessrio.

101.1 Determinar e Configurar o Hardware


De forma simplista os sistemas operacionais podem ser entendidos
como programas especiais que controlam todos os recursos do computador e fornecem toda a base para a execuo de outros programas e aplicaes. No incio quando no existiam os sistemas operacionais, os
aplicativos tinham de cuidar de tudo. Era preciso que o programador
tivesse grande conhecimento da plataforma que seus programas iriam
rodar.
Para que o desenvolvimento fosse facilitado, criou-se uma camada de
software que iria lidar com o hardware e fornecer uma interface amigvel para os programadores interagirem com a mquina e cujo o objetivo
era oferecer funes simples para as diversas tarefas que um computador
pode fazer, tais como somar, ler um dado, gravar algo, imprimir, etc.
43

Prof. Uir Ribeiro

No incio, os primeiros sistemas operacionais eram simples e monoprogramados, com um nico programa de usurio em execuo. A necessidade de mais programas serem executados ao mesmo tempo fez com que
eles evolussem para a multiprogramao, suportando a execuo de
mltiplos programas de usurios de forma concorrente.
Isso foi possvel porque o tempo do processador foi distribudo entre
os programas em execuo. Cada programa executado em uma fatia de
tempo, ou at que um evento solicite a 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 tempo 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 interrupo de relgio o sistema operacional assume o controle e decide se o processo pode continuar executando ou se
j ganhou tempo de CPU suficiente.
Quem se interessaria em ouvir os atores falar?
H.M. Warner, do estdio Warner Brothres, em
1927, ltimo anos dos filmes mudos.

44

Certificao Linux

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 escalonamento 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.

Kernel dos Sistemas Operacionais


Sem dvida o Kernel a parte mais importante de qualquer sistema
operacional sendo considerado o ncleo do sistema. Ele responsvel
pelas funes de baixo nvel, como gerenciamento de memria,
gerenciamento de processos, subsistemas de arquivos, rede, suporte aos
dispositivos e perifricos conectados ao computador. Os ncleos dos sistemas operacionais podem ser implementados de duas formas bsicas:
Kernel monoltico e o microkernel.
O Kernel monoltico estruturado em um nico arquivo binrio,
um nico processo que executa inteiramente em modo protegido. Ele
possui desempenho superior na passagem de mensagens, mas apresenta inmeras desvantagens como a dificuldade de alteraes no ncleo
e o desperdcio de recursos, pois os drivers de dispositivos permanecem constantemente em memria, mesmo quando os dispositivos no
esto sendo utilizados.

45

Prof. Uir Ribeiro

FIGURA 2 - Estrutura do Kernel Monoltico

No microkernel apenas uma pequena parte do ncleo executa em modo


protegido para acessar diretamente o hardware, como tambm responsvel pela comunicao entre processos e gerncia de memria.
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.
Os recursos do sistema so acessados atravs de um protocolo cliente/servidor, e para incluir um novo servio basta acrescentar um novo
servidor. O microkernel possui um desempenho inferior ao modelo
monoltico, mas podem-se alterar suas partes sem a necessidade de
reiniciar a mquina permitindo a expanso para um sistema distribudo
de forma mais fcil.
Pode-se entender o microkernel paralelo como um conjunto de
microkernels locais cooperativos, um em cada n da mquina paralela. O
ponto crucial a comunicao entre processos sobre um mesmo
processador ou em processadores diferentes, de acordo com um protoco46

Certificao Linux

FIGURA 3 - Microkernel.

lo cliente/servidor. O mdulo responsvel pela comunicao possui as


funes bsicas para receber mensagens originrias de outros processadores, receber resultados de operaes executadas remotamente e enviar mensagens destinadas a outros processadores.
Sua organizao baseada no modelo cliente/servidor, onde os servios do sistema so implementados por servidores especializados. Os
Clientes, que so programas de aplicao, solicitam os servios ao sistema operacional que os encaminham aos processos servidores. Estes
recebem a solicitao e a executam, enviando o resultado de volta ao
microkernel e ento aplicao.
47

Prof. Uir Ribeiro

Interrupes
Para que tudo esteja funcionando corretamente necessrio que os
dispositivos estejam alocando recursos do computador. Estes recursos
podem ser portas de entrada 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
microprocessador 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/sada 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.
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 eventos externos seqncia de instrues que ela est
executando, para quando for necessrio uma quebra do processamento
normal para atender a uma outra solicitao.

48

Certificao Linux

Em grandes sistemas multiusurio, uma constante rajada de interrupes direcionada 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 solicitaes de servios. Por exemplo, se uma aplicao necessita a 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 avisa
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.
Por tempo, como no escalonamento;
Falha de hardware;
Por eventos de entrada e sada de dados sinalizando o final de
operao ou condio de erro.
Ento, os eventos gerados pelas interrupes provocam a execuo
da rotina de tratamento correspondente a fonte da interrupo no sistema
operacional.
Ao fazer o tratamento das interrupes de hardware, o dispositivo
solicitante interrompe processador. Este acaba execuo da instruo atual,
49

Prof. Uir Ribeiro

testa existncia de interrupo e salva estado atual do processo que perder o controle do processador na memria. O processador carrega o
contador de programa com endereo da rotina de tratamento da interrupo e transfere seu controle para a rotina de tratamento da interrupo. A
rotina de tratamento da interrupo executa e ao trmino, restaura o estado anterior para retornar a execuo da rotina interrompida.

FIGURA 4 - Tratamento de Interrupes

Um ncleo simples desabilita o tratamento de interrupes enquanto


ele responde a uma interrupo. Elas so novamente habilitadas aps o
processamento estar completo.

O maior empresrio de todos os tempos foi Tutankamon,


que construi as pirmides h 5 mil anos
e elas at hoje produzem riqueza.
Peter Drucker, pai da administrao moderna.

50

Certificao Linux

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 processamento permitido para
cada interrupo. Se essa fatia de tempo estourar, ele passa o restante 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 dispositivos requerem configurao manual.
Para que tudo esteja funcionando corretamente, necessrio que os
dispositivos estejam alocando recursos do computador. Estes recursos
podem ser portas de entrada e sada, requisies de interrupo (IRQ) e
acesso direto a memria (DMA). Vejamos estes conceitos:

Portas de Entrada/Sada (Input / Output)


As portas de entrada e sada so endereos de memria reservados no
microprocessador para os dispositivos realizarem entrada e sada de informaes. Estes endereos de memria so utilizados para troca de dados entre o processador os dispositivos de forma simplificada. Os dispo51

Prof. Uir Ribeiro

sitivos podem usar mais de uma porta de entrada/sada 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 nica que
no podem ser compartilhados entre outros dispositivos.
Os endereos de E/S em uso no sistema podem ser visualizados com o
comando:
# cat /proc/ioports
0000-001f : dma1
0020-003f : pic1
0040-005f : timer
0060-006f : keyboard
0070-007f : rtc
(...)

Requisio de Interrupo (IRQ)


Os IRQs so chamadas que os dispositivos podem fazer para requerer ateno especial do processador. A maioria dos computadores
oferece apenas 16 interrupes de hardware para os mais diversos dispositivos.
Pode parecer pouco para as modernas configuraes com os mais diferentes dispositivos. Felizmente os IRQs podem ser compartilhados.
As interrupes do sistema podem ser visualizadas no Kernel com o
comando:
# cat /proc/interrupts
CPU0
0:

604694

XT-PIC

1:

35746

XT-PIC keyboard

2:

XT-PIC cascade

52

timer

Certificao Linux
3:

13546

XT-PIC orinoco_cs

11:

15

XT-PIC ALi Audio Accelerator

14:

38759

XT-PIC ide0

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 gerenciados para que conflitos entre os dispositivos sejam
evitados.
Alguns dispositivos como portas seriais e paralelas j utilizam os recursos no padro a seguir:
TABELA 1 - Referencia de dispositivos no Linux
Nome do
Dispositivo
no Linux

Nome do
Dispositivo
no MS-DOS

Porta E/S

DMA

IRQ

ttyS0

COM1

0x3F8

ttyS1

COM2

0x2F8

ttyS2

COM3

0x3E8

ttyS3

COM4

0x2E8

53

Prof. Uir Ribeiro

Nome do
Dispositivo
no Linux

Nome do
Dispositivo
no MS-DOS

Porta E/S

DMA

IRQ

lp0

LPT1

0x378

lp1

LPT1

0x278

/dev/hda1

C:

0x1F0

14

/dev/fd0

A:

0x3F0

No exame possvel 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 conectados no micro. A lista das placas de expanso encontradas poder ser lida atravs do arquivo especial /proc/pci.
# 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

54

Certificao Linux

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
-vv
-n
-x
-xxx

Mostra informaes detalhadas sobre todos os dispositivos.


Mostra ainda mais informaes sobre os dispositivos.
Mostra os cdigos dos fabricantes e dispositivos.
Mostra os primeiros 64 bytes da configurao PCI em hexadecimal.
Mostra toda a configurao PCI em hexadecimal.

# lspci
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

55

Prof. Uir Ribeiro


Bus 001 Device 001: ID 0000:0000
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
iProduct
2
iSerial
1
bNumConfigurations
1
(...)

O Kernel 2.6 do Linux possui um robusto sistema de reconhecimento


de hardware e suporte a diversos dispositivos. Este sistema foi implementado principalmente atravs do sysfs, udev e o d-bus.

SYSFS
O sysfs um recurso do Kernel 2.6 para exportar informaes teis
sobre o sistema 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 asseguraram que as informaes passadas pelo sysfs aos programas sejam precisas e utilizadas facilmente.
56

Certificao Linux

Uma vez que a estrutura do sysfs composta de diretrios, arquivos e


links simblicos, 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.
BUS
Este diretrio contm subdiretrios para cada tipo de barramento suportado pelo Kernel. 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 indicado. O segundo contm os drivers
de dispositivos daquele tipo de barramento.
CLASS
O diretrio class contm representaes de cada classe de dispositivo
que est registrado 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 aquela 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 que ele pertence.
DEVICES
O diretrio devices contm a hierarquia global dos dispositivos encontrados e suportados pelo Kernel. Sua hierarquia de diretrios obedece
a organizao dos dispositivos em qual tipo de conexo eltrica eles es57

Prof. Uir Ribeiro

to 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 a plataforma de
processamento e barramento do hardware. Por exemplo: dispositivos inerentes portas 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.
MODULE
O diretrio module contm subdiretrios com todos os mdulos de Kernel
carregados 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 freqncia o drive de disquete, voc 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 fazem 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 sis58

Certificao Linux

tema 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 interagir melhor com o Kernel.

HALD
O hald um programa que fica em execuo em modo de servidor
(daemon) que mantm 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 referentes aos dispositivos e prov uma biblioteca de programao API para que outros
programas possam descobrir, monitorar e fazer uso dos dispositivos. O
HALD facilita 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 estrutura de diretrio do /dev (diretrio que contm os links que
representam os dispositivos) de forma 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 dispositivo no
diretrio /dev.

59

Prof. Uir Ribeiro

D-BUS
D-BUS um projeto de software livre mantido pela freedesktop.org.
Seu principal objetivo 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 que ele deseja se conectar. Desta forma, o D-BUS oferta uma
biblioteca de programao que permite a troca de mensagens entre as
aplicaes 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.

Configurando o Modem e Placas de Som


Os modems so dispositivos especiais utilizados at hoje para conectar
os computadores a outros computadores e redes atravs da linha telefnica. O seu nome deriva da palavra MODulador/DEModulador. Ele transforma um fluxo de bits em um sinal analgico que possa ser transmitido
por uma linha telefnica e transformado novamente em bits no receptor.
As placas modernas possuem algoritmos especiais para compresso dos
dados e correo de erros.
Bem como as placas de rede, a configurao de um modem requer
uma ateno especial no Linux. Estes dispositivos so conectados em
uma porta serial disponvel. Isto significa que eles transmitem e recebem
um bit por vez e tem como limitador a velocidade mxima da porta serial
(115200bps). Os modems podem ser encontrados em trs verses: interno, externo e SoftModem.
A cada bela impresso que causamos, conquistamos um
inimigo. Para ser popular indispensvel
ser medocre.
Oscar Wilde

60

Certificao Linux

O modem externo utiliza uma fonte de alimentao externa e


conectado ao micro atravs de um cabo serial padro RS-232 em uma
porta serial /dev/ttyS0 (COM1) ou /dev/ttyS1 (COM2).
O modem interno conectado a um barramento ISA ou PCI dependendo do modelo. Ele tambm utiliza uma porta serial /dev/ttyS2 ou /
dev/ttyS3. Do ponto de vista tcnico, eles so iguais.
A outra variao de modem foi desenhada especialmente para funcionar no Microsoft Windows e so chamados de WinModem, SoftModem
ou HSP (Host Signal Processor). Este tipo necessita utilizar muita carga
de CPU e um software especfico e por isto so mais baratos. As aes
como compreenso de dados e correo de erros feita pela CPU principal via software. O suporte no Linux a este modem limitado e depende
de um driver especfico. O Softmodem da Lucent /Agere j possuem suporte na maioria das distribuies.
Se no existir conflito de hardware a configurao do modem no
complicada, uma vez que ele utiliza uma porta serial e um IRQ.
Por ltimo, deve-se configurar a porta serial no Linux para operar na
velocidade correta. Para isto utiliza-se o comando setserial.

setserial
Este utilitrio foi especialmente desenvolvido para configurar as portas seriais no Linux. 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.

61

Prof. Uir Ribeiro


/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

Este comando tipicamente necessita dos seguintes parmetros:


serial - Define a porta que dever ser configurada. Ex.: /dev/ttys0
port - Define a porta de entrada e sada em hexadecimal. Ex.:
0x3f8
irq - Define a interrupo de hardware. Ex.: 3
uart - Define o tipo de UART a ser utilizado. Ex.: nenhum, 8250,
16450, 16550, 16550A, 16650, 16650V2, 16750, 16850, 16950,
16954.
baud_base - Define a velocidade em bits por Segundo. Ex.: 115200
divisor - Define o divisor padro de velocidade.
O divisor poder assumir os seguintes valores:

spd_hi
spd_vhi
spd_shi
spd_warp
spd_cust

spd_normal

Use 56kb
Use 115kb
Use 230kb
Use 460kb
Use um divisor especifico para definir a velocidade: baud rate = baud_base / divisor
Use 38.4kb

Veja dois exemplos de uso do comando setserial:


setserial /dev/ttyS0 uart 16550A port 0x03f8 irq 4 baud_base
115200 spd_normal

setserial /dev/ttyS1 uart 16550A port 0x02f8 irq 3 baud_base


115200 spd_normal

62

Certificao Linux

O script /etc/init.d/setserial geralmente utilizado para configurar as portas seriais COM1 e COM2 durante o processo de carga do
sistema.
No captulo de Fundamentos de Rede trataremos da configurao
do PPP (Point-to-Point-Protocol Protocolo de Conexo Ponto Ponto) responsvel pela conexo de computadores a redes TCP/IP via linha
telefnica.

Configurando a Placa de Som


A configurao de dispositivos de udio deixou de ser algo complicado com o desenvolvimento de drivers para estes dispositivos e melhoria
nos padres dos sistemas de som para o Linux.
Dependendo do modelo, as placas de som podem utilizar barramentos
ISA, PCI ou embutidas na placa me. Os recursos padres utilizados por
estes dispositivos so: IRQ 5, DMA 1, DMA 16 e as portas de entrada e
sada 0x220, 0x330 e 0x388.
O Linux suporta dois padres de sistema de som: OSS (Open Sound
System) e ALSA (Advanced Linux Sound Architecture).
O OSS foi o primeiro padro desenvolvido. O padro ALSA mais
novo, suporta full duplex, mantm a compatibilidade com OSS e garante
maior desempenho alm de outros recursos adicionais.
Para utilizar o dispositivo de som, carregue o mdulo da placa com o
comando:
# modprobe nome_mdulo

Algumas placas requerem que seja especificado o recurso de hardware


utilizado como parmetro:
63

Prof. Uir Ribeiro


# modprobe sb io=0x220 irq=5 dma=1 dma16=5 mpu_io=0x388

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.

Configurando Dispositivos no-IDE


As placas SCSI (Small Computer System Interfaces) so interfaces
para conexo de dispositivos de armazenamento de dados como discos
rgidos, fitas DAT, CD-ROM, etc. Esta tecnologia possibilita transferncia de dados em alta velocidade e a conexo de at 16 dispositivos por
barramento.
Os dispositivos SCSI so classificados em 8 categorias:
SCSI 1 Utiliza um cabo Centronics de 50 conectores para conexo dos dispositivos e a transferncia de dados de 5MBps a 8bits. A taxa de transferncia no muito alta.
SCSI 2 Utiliza um cabo Micro-D de 50 pinos para a ligao de
perifricos. Permite que sejam ligados at 7 perifricos em uma
mesma controladora. A transferncia de dados continua sendo de
5MBps a 8-bits.
Wide SCSI Utiliza um cabo Micro-D de 68 pinos para suportar transferncia de dados a 16-bits dobrando a taxa para
10MBps.
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.
64

Certificao Linux

Ultra SCSI Utiliza um cabo Micro-D de 50 pinos com transferncia de 20MBps a 8-bits.
Ultra Wide SCSI Tambm chamada de SCSI 3. Usa um cabo de
68 pinos que pode atingir at 5 metros de comprimento. Permite
que sejam ligados at 16 perifricos em uma mesma controladora.
Pode atingir at 40MBps a 16-bits de transferncia.
Ultra SCSI 320 Nova tecnologia SCSI que permite at 320MBps
de transferncia a 2x32-bit. Utiliza um cabo de 68 pinos.

FIGURA 5 - Conectores SCSI

65

Prof. Uir Ribeiro

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.
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, verificar os dispositivos conectados
e seus respectivos SCSI IDs e at configurar a velocidade 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 Inexpresive Disks) utilizam um recurso chamado de Nmero
de Unidade Lgica (LUN). Este recurso utilizado pelas controladoras
para enxergarem 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 compo66

Certificao Linux

nente eltrico chamado terminador. A funo deste componente condicionar o sinal enviado pelo cabo, diminuir rudos e ecos no barramento.
Alguns dispositivos SCSI podem funcionar sem o terminador, mas no
de forma elegante. Alguns fabricantes o incluem no prprio cabo. Outros
fabricantes incluem no prprio disco que ser conectado ao cabo. importante que voc saiba que os dispositivos 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.

Configurando Dispositivos de Rede e Outros


Dispositivos
difcil conceber a idia de um PC que no esteja conectado a uma
rede ou a Internet. Desta maneira, configurar corretamente uma placa de
rede no Linux se tornou indispensvel.
O primeiro passo para configurarmos um dispositivo de rede identificar o tipo de barramento que ele utiliza. Se o barramento for ISA pode
ser preciso alterar a configurao de jumpers retirando ou colocando pequenos terminais na placa para adequar o endereamento de E/S e IRQs.
Algumas dispensam o acesso fsico placa, pois so reconhecidas pela
BIOS que fornecer a configurao dos recursos.
Caso sua placa seja PCI ou CNR, o comando lspci poder ser til
para identificar o fabricante e modelo dos dispositivos PCI.
# lspci
00:00.0 Host bridge: ALi Corporation M1541 (rev 04)
00:01.0 PCI bridge: ALi Corporation M1541 PCI to AGP Controller
(rev 04)
00:02.0 USB Controller: ALi Corporation USB 1.1 Controller (rev 03)

67

Prof. Uir Ribeiro


00:03.0 Bridge: ALi Corporation M7101 PMU
00:07.0 ISA bridge: ALi Corporation M1533 PCI to ISA Bridge
[Aladdin IV] (rev c3)
00:09.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8139/8139C/8139C+ (rev 10)
00:0b.0 SCSI storage controller: Adaptec AHA-2940/2940W / AIC7871
00:0f.0 IDE interface: ALi Corporation M5229 IDE (rev c1)
01:00.0 VGA compatible controller: NVidia / SGS Thomson (Joint
Venture) Riva128 (rev 10)

Os modelos que utilizam o barramento PCI na maioria das vezes dispensam a configurao 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
1:
230
2:
0
5:
7085061
8:
2
9:
0
10:
152038
12:
411599
14:
2

XT-PIC
XT-PIC
XT-PIC
XT-PIC
XT-PIC
XT-PIC
XT-PIC
XT-PIC
XT-PIC

timer
keyboard
cascade
eth0
rtc
usb-ohci
aic7xxx
eth1
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 AIC7xxx no IRQ 10.
# cat /proc/ioports
0000-001f : dma1
0020-003f : pic1
0040-005f : timer

68

Certificao Linux
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
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

O contedo do arquivo /proc/ioports fornece os endereos de entrada


e sada utilizados pelos dispositivos. No exemplo as placas de rede esto
nos intervalos de endereos 0xD400-0xD4FF e 0xD800-0xD8FF.
Depois de identificarmos a placa, o endereamento de entrada e sada
e o IRQ ser preciso carregar o mdulo do Kernel correspondente ou
compilar o suporte ao dispositivo.
Para carregar o suporte ao dispositivo atravs de um mdulo do Kernel,
devemos utilizar o comando modprobe. Discutiremos o uso deste comando e outros relacionados aos mdulos do Kernel adiante no livro.
# modprobe 8139too

69

Prof. Uir Ribeiro

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

O Linux suporta que os mdulos sejam carregados automaticamente


durante a carga do sistema. As configuraes dos parmetros devem ser
feitas no arquivo /etc/modules.conf da seguinte forma:
# cat /etc/modules.conf
Alias

eth0

Alias

eth1

Options

8139too
ne
ne

io=0x300

irq=5

Depois de carregar os mdulos apropriados para os dispositivos de


rede, resta apenas configurar seus parmetros como endereo IP para
coloc-lo em funcionamento. Este assunto ser abordado no captulo Fundamentos de Rede.

Configurando dispositivos de conectividade


Neste tpico iremos tratar da conexo do Linux com dispositivos de
conectividade sncronos, como modems xDSL e ISDN.
A maioria das conexes de alta velocidade no Brasil utiliza modems
DSL, como Virtua, Velox, Speed, dentre outros produtos.

Por que cometer erros antigos se h tantos erros


novos a escolher?
Bertrand Russel, filsofo ingls

70

Certificao Linux

Estes modems costumam aceitar um dos dois tipos de mecanismos


para estabelecer conexo: Bridged/DHCP ou PPPoX. Ambos tm a tarefa de obter um endereo IP e outras configuraes de rede para que a
conexo seja feita. O importante sabermos qual tipo de configurao o
modem utiliza para podermos instalar o software cliente apropriado.
A maneira mais fcil entrar em contato com o pessoal da operadora
de banda larga para saber qual o tipo de mecanismo 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 freqncia pelas operadoras por sua simplicidade de
operao.
Este tipo de conexo coloca o microcomputador cliente em uma grande subrede LAN, com todos os outros microcomputadores de outros clientes, expondo todos a um trfego de pacotes ARP e broadcast.
A autenticao deste tipo de mecanismo utiliza o protocolo DHCP
para obter um endereo IP vlido, mscara de subrede, gateway e servidores de resoluo de nomes.

PPPoX
O mecanismo PPPoX na verdade uma variao do protocolo PPP
adaptado para trabalhar com modems sncronos como o DSL. Existem
duas variaes utilizadas: PPPoE (PPP sobre Ethernet) e o PPPoA (PPP
sobre ATM).
Existe 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.
71

Prof. Uir Ribeiro

Note que a grande vantagem do padro PPPoE que ele possibilita a


conexo atravs de dispositivos no-Ethernet, como o USB.
Na perspectiva do provedor de servios, o PPPoE mais fcil de administrar e fazer a manuteno. Do ponto de vista do usurio, ele mais
trabalhoso para configurar, consome mais CPU e a conexo pode no ser
to estvel.
Dependendo do seu provedor de servios, existem vrias maneiras de
estabelecer a conexo via modem DSL. So elas:

IP esttico
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 mscara de subrede da placa ethernet que est conectada ao
modem.
# ifconfig eth0 111.222.333.444 up netmask 255.255.255.0

72

Certificao Linux

J o default gateway dever ser configurado utilizando o comando


route para adicionar a rota padro:
# route add default gw 111.222.333.1 dev eth0

Por fim, o endereo do servidor de nomes dever ser configurado no


arquivo /etc/resolv.conf:
# echo nameserver 222.333.444.1 >> /etc/resolv.conf

No tpico 112 os comandos ifconfig, route e o arquivo /etc/resolv.conf


so tratados mais detalhadamente.

Configurando IP dinmico via rede Bridged usando DHCP


Existem diversos clientes DHCP nas distribuies do Linux. Os mais
comuns so o dhcpcd e o pump.
O cliente DHCP negocia com o provedor de servios uma espcie de
emprstimo de endereo IP que ser utilizado durante aquela conexo.
Outras informaes como mscara de subrede, default gateway e servidor de nomes so tambm negociados enquanto a conexo estabelecida.
O endereo IP emprestado poder ser utilizado durante um intervalo de
tempo configurado pelo provedor, e poder ser renovado ou trocado.
Alguns provedores podem requerer algum tipo de autenticao para
estabelecer uma conexo via DHCP. O mtodo mais comum via endereo de hardware da placa de rede, conhecido como MAC address. Cada
placa de rede tem o seu endereo nico, formado por uma seqncia de 6
dgitos em hexadecimal, como 00:50:04:C2:19:BC. O endereo MAC
poder ser visualizado durante o processo de carga do sistema operacional
ou atravs do comando ifconfig. Desta forma, necessrio informar o
endereo da placa de rede ao provedor antes da primeira conexo.
73

Prof. Uir Ribeiro

O utilitrio pump poder ser utilizado para solicitar um endereo IP


para o provedor, bem como devolver ou desconectar um endereo.
Para verificar o estado da conexo:
# pump -i eth0 status

Para devolver um endereo IP:


# pump -i eth0 release

Para solicitar um endereo IP:


# pump -i eth0

J o cliente dhcpcd mais simples. Sua utilizao bsica resume em


solicitar um endereo IP e devolver um endereo.
Para solicitar um endereo IP:
# dhcpcd eth0

Para devolver um endereo IP:


# dhcpcd k eth0

Configurando IP dinmico usando PPPoX


Existem diversos clientes PPPoE para o Linux:
The Roaring Penguin (rp-pppoe): http://www.roaringpenguin.com/
pppoe/
PPPoEd: http://www.davin.ottawa.on.ca/pppoe/
PPPoE Redirector: http://www.ecf.toronto.edu/~stras/pppoe
EnterNet: http://www.nts.com
74

Certificao Linux

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 descrito a configurao do Roaring Penguin.
No site est disponvel a verso para compilar do RP-PPPoE: rp-pppoe3.7.tar.gz.
Para descompactar o pacote:
# tar xvzf rp-pppoe-3.7.tar.gz

Depois entre no diretrio rp-pppoe-3.7.


O comando go ir checar as dependncias e compilar o software:
# ./go

Este comando dever ser executado como root.


Uma vez compilado e instalado, utilize o comando pppoe-setup e siga
as instrues na tela.
Depois de configurado, os comandos pppoe-start e pppoe-stop so
utilizados para conectar e desconectar.
Para verificar se a conexo foi realizada com sucesso, o comando
ifconfig dever apresentar alm da interface de rede conectada ao modem
(eth0), a interface PPP (ppp0):
# ifconfig
eth0 Link encap:Ethernet HWaddr 00:A0:CC:33:74:EB
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

75

You might also like