Você está na página 1de 90

UIR RIBEIRO

Ce rt i fi c a o

LINUX
Guia Para os Exames

LPIC-1, CompTIA Linux+


e Novell Linux Administrator

Copyright 2012 Uir Ribeiro


Copyright 2012 Novaterra Editora e Distribuidora Ltda.
Editor
Capa, ilustraes e programao visual
Editorao eletrnica

Alberto Garcia
Ingo Bertelli
Carlos Alberto S Ferreira

Reviso

Sandro Gomes

Conselho Editorial
Alberto Oliveira, Dauton Janota, Gabriel Torres,
Jlio Battisti, Luiz Fernando Baggio, Rui Rossi dos Santos,
Trajano Leme Filho e Yuri Digenes.

CERTIFICAO LINUX
Guia Para os Exames LPIC-1, CompTIA Linux+ e
Novell Linux Administrator
Uir Ribeiro
ISBN 978-85-61893-20-0
Nenhuma parte deste livro poder ser reproduzida sem a autorizao prvia e por
escrito da Novaterra Editora e Distribuidora Ltda.
Os conceitos emitidos neste livro so de inteira responsabilidade do Autor.
Apesar de toda a ateno, erros de digitao e/ou de impresso no so descartados. Em caso de alguma dvida, entre em contato conosco pelo e-mail editorial@
editoranovaterra.com.br para que possamos ajud-lo.
A Novaterra Editora e Distribuidora Ltda. e o Autor, Uir Ribeiro, excluem-se de quaisquer
responsabilidades por eventuais perdas ou danos a pessoas ou bens por uso deste livro.

Novaterra Editora e Distribuidora Ltda.


Rua Visconde de Santa Isabel, 20 Sala 707 Vila Isabel
Rio de Janeiro RJ CEP 20560-121
Tel./Fax: (21) 2218-5314
contato@editoranovaterra.com.br
www.editoranovaterra.com.br

/ NovaTerraEd

@NovaTerraEd

Agradecimento
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.
A Deus, pela fora, pela sade, pelo po nosso de cada dia e pela f.

Uir Ribeiro
Belo Horizonte MG
10 de dezembro de 2012

IV

Certificao Linux

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 meio ambiente, quando
desenvolveu uma plataforma de ensino a distncia integrada com controle acadmico.
Foi diretor acadmico da Universidade Salgado de Oliveira, campus Belo Horizonte,
responsvel por 16 cursos de graduao e uma equipe de 170 professores. Hoje
diretor de TI de todo o grupo Salgado de Oliveira, responsvel pela informtica de 9
unidades de ensino espalhadas pelo Brasil.
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.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Prefcio

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 s necessidades
de seu empregador.
Em segundo lugar, voc pode estar usando Linux em seu PC em casa, ou talvez voc
seja 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 com o 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 sequer 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

w w w . e d i t o r a n o v a t e r r a . c o m . b r

VI

Certificao Linux

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. a partir dessas
necessidades que se originaram as tarefas e o ttulo de Administrador de Sistemas.
Em reconhecimento ao 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 predefinida 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 de 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 exempregadores ou professores. E por que 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.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Prefcio

VII

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

w w w . e d i t o r a n o v a t e r r a . c o m . b r

VIII

Certificao Linux

w w w . e d i t o r a n o v a t e r r a . c o m . b r

IX

Sumrio

Sumrio
INTRODUO GUIA DE ESTUDOS PARA COMPTIA
LINUX + POWERED BY LPI & LPI................................................................................ 1
Como Marcar a Prova?..................................................................................................... 6
A Importncia de Fazer Exerccios.................................................................................. 6
Aprendendo de Acordo com o Funcionamento do seu Crebro.................................... 7
Fsico........................................................................................................................... 7
Lingustico / Sonoro................................................................................................... 8
Visual.......................................................................................................................... 9
Voc Precisa Fazer Simulados!...................................................................................... 11
Localizando Ajuda na Internet .................................................................................... 12
Listas de Discusso........................................................................................................ 12
O site http://www.certificacaolinux.com.br.................................................................. 12
PROVA I O EXAME LPI 101....................................................................................... 15
TPICO 101 ARQUITETURA DE HARDWARE....................................................... 17
101.1 Determinar e Configurar o Hardware............................................................ 18
Kernel dos Sistemas Operacionais................................................................................ 20
Interrupes................................................................................................................... 22
BIOS............................................................................................................................... 25
Portas de Entrada/Sada (Input / Output)..................................................................... 26
Requisio de Interrupo (IRQ)................................................................................... 26
Acesso Direto a Memria (DMA).................................................................................. 27
Dispositivos PCI............................................................................................................. 27
Utilitrio lspci................................................................................................................ 28
O Utilitrio lsusb........................................................................................................... 29
SYSFS............................................................................................................................ 30

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Certificao Linux

BLOCK...................................................................................................................... 30
BUS........................................................................................................................... 31
CLASS....................................................................................................................... 31
DEVICES................................................................................................................... 31
FIRMWARE............................................................................................................... 31
MODULE.................................................................................................................. 32
POWER..................................................................................................................... 32
HALD............................................................................................................................. 32
UDEV............................................................................................................................. 33
D-BUS............................................................................................................................ 33
Configurando o Modem e Placas de Som..................................................................... 33
setserial..................................................................................................................... 35
Configurando a Placa de Som....................................................................................... 36
Configurando Dispositivos no-IDE.............................................................................. 37
SCSI ID..................................................................................................................... 38
SCSI LUN.................................................................................................................. 39
Terminadores............................................................................................................ 39
Configurando Dispositivos de Rede e Outros Dispositivos.......................................... 40
Configurando Dispositivos de Conectividade.............................................................. 43
Bridged/DHCP.......................................................................................................... 43
PPPoX....................................................................................................................... 44
Configurando IP Esttico............................................................................................... 44
Configurando IP Dinmico via Rede Bridged Usando DHCP...................................... 45
Configurando IP Dinmico Usando PPPoX.................................................................. 46
Configurando IP Esttico Usando PPPoX..................................................................... 48
Configurando Dispositivos USB................................................................................... 48
TECLADO................................................................................................................. 50
MOUSE..................................................................................................................... 50
IMPRESSORA........................................................................................................... 50

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Sumrio

XI

WEBCAM.................................................................................................................. 50
Outros Dispositivos.................................................................................................. 50
Ferramentas Para Configurao de Dispositivos USB............................................. 51
101.2 Sistemas de Boot.............................................................................................. 52
Processo de Carga do Kernel......................................................................................... 52
O Gerenciador de Boot.................................................................................................. 55
101.3 Alterando runlevels, shutdown e reboot........................................................ 57
System V Init Daemon................................................................................................... 57
Runlevels....................................................................................................................... 57
Definindo Quais Processos Sero Executados por Cada runlevel............................... 58
Definindo o Runlevel Padro........................................................................................ 60
Shutdown................................................................................................................. 61
Desvantagens do System V init Daemon................................................................. 62
Systemd.................................................................................................................... 62
Upstart...................................................................................................................... 64
TPICO 102 INSTALAO DO LINUX E GERENCIAMENTO DE PACOTES........ 67
102.1 Layout do Disco (Particionamento)................................................................ 68
A Partio de Swap........................................................................................................ 69
LVM (Logical Volume Manager).................................................................................... 70
Terminologia do LVM.............................................................................................. 71
Passo a passo para trabalhar com o LVM................................................................. 71
Criando parties LVM............................................................................................. 72
Incializando volumes fsicos................................................................................... 72
Criando um volume group....................................................................................... 73
Ativando um volume group..................................................................................... 73
Removendo um volume group................................................................................. 73
Adicionando novos volumes fsicos ao volume group....................................... 73
Removendo volumes fsicos do volume group.................................................... 73
Criando volumes lgicos.......................................................................................... 74

w w w . e d i t o r a n o v a t e r r a . c o m . b r

XII

Certificao Linux

Ativando o volume lgico........................................................................................ 74


Formatando o volume lgico.................................................................................... 74
Aumentando o tamanho do volume........................................................................ 75
Diminuindo o tamanho do volume......................................................................... 75
102.2 Instalando um Gerenciador de Boot............................................................... 76
Grand Unified Boot Loader (GRUB - 1)........................................................................ 76
O Utilitrio grub-install................................................................................................. 78
Grand Unified Boot Loader (GRUB 2)........................................................................ 80
Principais Mudanas do Grub 1 para o Grub 2............................................................ 81
/etc/default/grub....................................................................................................... 82
GRUB_DEFAULT...................................................................................................... 82
GRUB_SAVEDEFAULT ............................................................................................ 83
GRUB_HIDDEN_TIMEOUT .................................................................................... 83
GRUB_HIDDEN_TIMEOUT_QUIET . ..................................................................... 83
GRUB_TIMEOUT .................................................................................................... 83
GRUB_DISTRIBUTOR ............................................................................................ 83
GRUB_CMDLINE_LINUX_DEFAULT ..................................................................... 84
GRUB_CMDLINE_LINUX ....................................................................................... 84
GRUB_TERMINAL .................................................................................................. 84
GRUB_GFXMODE ................................................................................................... 84
GRUB_DISABLE_LINUX_RECOVERY . .................................................................. 84
GRUB_INIT_TUNE . ................................................................................................ 84
/etc/grub.d ................................................................................................................ 84
00_header................................................................................................................. 85
05_debian_theme..................................................................................................... 85
10_hurd..................................................................................................................... 85
10_linux.................................................................................................................... 85
20_memtest86+....................................................................................................... 85
30_os-proper............................................................................................................. 85

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Sumrio

XIII

40_custom................................................................................................................. 85
Sequncia de Carga do Sistema .............................................................................. 86
Nomes das Parties no Grub 2............................................................................... 86
102.3 Gerenciamento de Bibliotecas Compartilhadas............................................ 86
Arquivos tarball............................................................................................................. 87
Compilando o Cdigo Fonte.......................................................................................... 89
PR-PROCESSAMENTO.......................................................................................... 91
COMPILAO.......................................................................................................... 91
ASSEMBLER............................................................................................................. 91
LINKER..................................................................................................................... 91
make.......................................................................................................................... 92
configure................................................................................................................... 94
As Bibliotecas Compartilhadas..................................................................................... 96
ldd............................................................................................................................. 98
ldconfig..................................................................................................................... 99
LD_LIBRARY_PATH............................................................................................... 100
102.4 Gerenciamento de Pacotes Debian................................................................ 101
Gerenciamento de Pacotes Debian.............................................................................. 102
dpkg............................................................................................................................. 103
dpkg-reconfigure......................................................................................................... 105
apt-get.......................................................................................................................... 105
aptitude........................................................................................................................ 107
dselect.......................................................................................................................... 107
alien............................................................................................................................. 108
unpack......................................................................................................................... 108
apt-cache...................................................................................................................... 108
102.5 Gerenciamento de Arquivos Red Hat e YUM............................................... 109
rpm............................................................................................................................... 111
Para consultar a base de dados................................................................................... 111

w w w . e d i t o r a n o v a t e r r a . c o m . b r

XIV

Certificao Linux

Para verificar o status dos pacotes.............................................................................. 111


Para verificar a assinatura e integridade dos pacotes................................................. 111
Para instalar um novo pacote:..................................................................................... 112
Para atualizar um pacote:............................................................................................ 112
Para remover um pacote:............................................................................................. 112
Para refazer o banco de dados RPM:........................................................................... 112
YUM........................................................................................................................ 113
TPICO 103 COMANDOS GNU E UNIX................................................................ 115
103.1 Trabalhando com a Linha de Comandos do Shell....................................... 118
Variveis do Shell........................................................................................................ 118
unset....................................................................................................................... 120
env.......................................................................................................................... 120
exec......................................................................................................................... 120
pwd......................................................................................................................... 121
Trabalhando com Eficcia no Shell............................................................................ 121
~/.profile................................................................................................................ 125
~/.bashrc................................................................................................................ 125
Usando a Documentao Local................................................................................... 125
Encontrando a Documentao
Necessria em /usr/share/doc...................................................................................... 126
Utilizando as Pginas Info........................................................................................... 127
Utilizando as Pginas do Manual............................................................................... 127
Utilizando o Help on-line............................................................................................ 129
Utilizando os Comandos apropos e whatis................................................................ 129
uname..................................................................................................................... 130
103.2 Utilizando Filtros de Texto........................................................................... 131
cat................................................................................................................................. 131
cut................................................................................................................................ 132
expand......................................................................................................................... 133

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Sumrio

XV

unexpand..................................................................................................................... 133
fmt................................................................................................................................ 134
head.............................................................................................................................. 134
join............................................................................................................................... 135
nl.................................................................................................................................. 136
od................................................................................................................................. 137
paste............................................................................................................................. 138
pr.................................................................................................................................. 139
split.............................................................................................................................. 140
tac................................................................................................................................. 140
tail................................................................................................................................ 140
tr................................................................................................................................... 141
wc................................................................................................................................. 142
hexdump...................................................................................................................... 142
sort............................................................................................................................... 144
uniq.............................................................................................................................. 144
103.3 Gerenciamento Bsico de Arquivos.............................................................. 145
cp.................................................................................................................................. 145
mv................................................................................................................................ 146
rm................................................................................................................................. 147
mkdir .......................................................................................................................... 147
rmdir............................................................................................................................ 148
touch............................................................................................................................ 148
tar................................................................................................................................. 149
Os Compressores de Dados......................................................................................... 151
Utilizando o cpio Para Backup e Restaurao de Arquivos....................................... 152
dd............................................................................................................................ 153
Fazendo Backup do Master Boot Record.................................................................... 154
103.4 Redirecionamento e Condutores................................................................... 155

w w w . e d i t o r a n o v a t e r r a . c o m . b r

XVI

Certificao Linux

Smbolos Coringa (Wildcards).................................................................................... 157


tee............................................................................................................................ 157
xargs........................................................................................................................ 158
103.5 Executando, Gerenciando e Eliminado Processos....................................... 159
Sinais........................................................................................................................... 160
Controle de Processos.................................................................................................. 161
Prioridade de Execuo............................................................................................... 161
ps............................................................................................................................. 161
pstree...................................................................................................................... 162
top........................................................................................................................... 163
kill........................................................................................................................... 164
killall....................................................................................................................... 165
jobs.......................................................................................................................... 166
bg............................................................................................................................ 167
fg............................................................................................................................. 168
nohup...................................................................................................................... 168
free.......................................................................................................................... 168
uptime..................................................................................................................... 169
103.6 Modificando a Prioridade de Execuo dos Processos................................ 169
nice............................................................................................................................... 169
renice........................................................................................................................... 170
103.7 Utilizando Expresses Regulares.................................................................. 171
grep.............................................................................................................................. 171
egrep............................................................................................................................. 174
fgrep............................................................................................................................. 174
sed................................................................................................................................ 174
Resumo das Expresses Regulares.............................................................................. 175
103.8 Trabalhando com o vi.................................................................................... 175
TPICO 104 DISPOSITIVOS E SISTEMAS DE ARQUIVOS.................................. 179

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Sumrio

XVII

104.1 Criando Sistemas de Arquivos...................................................................... 180


Parties Primrias...................................................................................................... 181
Parties Estendidas.................................................................................................... 182
Parties Lgicas.......................................................................................................... 182
Partio de Swap (arquivo de troca)........................................................................... 182
Os Sistemas de Arquivos............................................................................................. 183
ext2......................................................................................................................... 183
ext3......................................................................................................................... 183
ex4........................................................................................................................... 184
XFS.......................................................................................................................... 185
Reiserfs v3.............................................................................................................. 186
VFAT....................................................................................................................... 186
Criando Parties e Sistemas de Arquivos................................................................. 187
fdisk........................................................................................................................ 187
mkfs........................................................................................................................ 189
mkswap................................................................................................................... 189
104.2 Mantendo a Integridade do Sistema de Arquivos...................................... 190
df.................................................................................................................................. 190
du................................................................................................................................. 190
fsck............................................................................................................................... 191
mke2fs.......................................................................................................................... 192
debugfs......................................................................................................................... 193
dumpe2fs..................................................................................................................... 193
tune2fs......................................................................................................................... 193
e2fsck........................................................................................................................... 194
104.3 Montando e Desmontando Sistema de Arquivos......................................... 194
O Arquivo /etc/fstab..................................................................................................... 195
mount...................................................................................................................... 197
umount................................................................................................................... 199

w w w . e d i t o r a n o v a t e r r a . c o m . b r

XVIII

Certificao Linux

104.4 Trabalhando com Quotas de Disco................................................................. 200


quota............................................................................................................................ 202
quotaon........................................................................................................................ 203
quotaoff........................................................................................................................ 204
quotacheck................................................................................................................... 204
edquota........................................................................................................................ 205
repquota ...................................................................................................................... 206
104.5 Trabalhando com Permisses........................................................................ 206
Modificando as Permisses de Arquivos.................................................................... 212
chattr....................................................................................................................... 213
lsattr........................................................................................................................ 215
Alterando o Dono dos Arquivos e Grupos.................................................................. 216
chown..................................................................................................................... 216
chgrp....................................................................................................................... 217
104.6 Links Simblicos e Hard Links..................................................................... 217
ln.................................................................................................................................. 218
104.7 Procurando por Arquivos e sua Posio Correta no Sistema..................... 219
Subdiretrio /bin......................................................................................................... 222
Subdiretrio /boot........................................................................................................ 222
Subdiretrio /dev......................................................................................................... 222
Subdiretrio /home...................................................................................................... 223
Subdiretrio /lib.......................................................................................................... 223
Subdiretrio /mnt ....................................................................................................... 223
Subdiretrio /proc ...................................................................................................... 224
Subdiretrio /root (opcional) ..................................................................................... 224
Subdiretrio /sbin........................................................................................................ 224
Subdiretrio /tmp ....................................................................................................... 224
Subdiretrio /usr.......................................................................................................... 225
Subdiretrio /var.......................................................................................................... 225

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Sumrio

XIX

which........................................................................................................................... 225
find............................................................................................................................... 225
locate............................................................................................................................ 227
updatedb...................................................................................................................... 227
whatis........................................................................................................................... 227
apropos........................................................................................................................ 228
PROVA II O EXAME LPI 102.................................................................................... 229
TPICO 105 SHELL, SHELL SCRIPT E GERENCIAMENTO DE DADOS............. 231
105.1 Customizando o Shell.................................................................................... 232
Aliases.......................................................................................................................... 233
Funes........................................................................................................................ 234
Arquivos de Configurao do Bash............................................................................. 235
Ajustando o Ambiente de Trabalho dos Usurios...................................................... 235
O Diretrio /etc/skel (esqueleto).................................................................................. 236
105.2 Alterando e Escrevendo Scripts de Shell..................................................... 236
Escolhendo o Interpretador de Script......................................................................... 237
Permisses de Execuo.............................................................................................. 238
Variveis Especiais...................................................................................................... 239
O Comando test........................................................................................................... 240
Referncias dos Comandos bash Para Programao shell.......................................... 240
A Condicional case...................................................................................................... 242
Uso de Loops Utilizando o for.................................................................................... 242
Uso de Loops Utilizando o while................................................................................ 243
Recebendo Dados dos Usurios via Script com o Comando read............................. 243
seq........................................................................................................................... 244
105.3 Gerenciamento de Dados SQL...................................................................... 246
INSERT........................................................................................................................ 247
DELETE........................................................................................................................ 248
UPDATE....................................................................................................................... 249

w w w . e d i t o r a n o v a t e r r a . c o m . b r

XX

Certificao Linux

SELECT........................................................................................................................ 250
TPICO 106 INTERFACE DE USURIO E DESKTOP.......................................... 255
106.1 Instalao e Configurao do X Window System........................................ 256
Verificar a Compatibilidade da verso do X:.............................................................. 256
Verificar o Chipset da Placa de Vdeo:........................................................................ 257
Verificar o Tipo do Monitor......................................................................................... 257
Configurando o XF86.................................................................................................. 257
Instalando Mais Fontes no XF86................................................................................. 260
Customizando o XF86 com o .Xresources e .Xdefaults............................................. 262
106.2 Configurando um Gerenciador de Janelas XDM......................................... 262
KDM............................................................................................................................. 265
GDM............................................................................................................................. 266
Estaes de Trabalho X............................................................................................... 267
Emulador de Terminal................................................................................................ 268
106.3 Acessibilidade................................................................................................ 269
TPICO 107 TAREFAS ADMINISTRATIVAS.......................................................... 273
107.1 Gerenciando Usurios e Grupos de Usurios.............................................. 274
Grupos de Trabalho..................................................................................................... 276
Administrando Contas de Usurio............................................................................. 277
useradd................................................................................................................... 277
passwd.................................................................................................................... 278
usermod.................................................................................................................. 279
userdel.................................................................................................................... 279
groupadd................................................................................................................. 280
gwpasswd............................................................................................................... 280
groupdel.................................................................................................................. 280
pwconv................................................................................................................... 281
grpconv................................................................................................................... 281

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Sumrio

XXI

pwunconv............................................................................................................... 281
grpunconv............................................................................................................... 281
chage....................................................................................................................... 282
107.2 Automatizando a Administrao do
Sistema com Agendamento de Tarefas...................................................................... 282
O cron.......................................................................................................................... 283
O Comando crontab.................................................................................................... 284
O at............................................................................................................................... 286
107.3 Internacionalizao do Sistema.................................................................... 288
Configurando as Zonas de Fuso Horrio..................................................................... 289
Iniciando o Relgio do Sistema................................................................................... 289
Padres de Caractere................................................................................................... 290
ASCII...................................................................................................................... 290
ISO-8859................................................................................................................. 290
UNICODE............................................................................................................... 292
UTF-8...................................................................................................................... 292
Configurando o Mapa de Teclado............................................................................... 293
Converso de Arquivos............................................................................................... 294
Variveis Ambientais de Internacionalizao............................................................ 294
TPICO 108 SERVIOS ESSENCIAIS DO SISTEMA............................................ 297
108.1 Mantendo a Hora do Sistema........................................................................ 298
108.2 Sistema de Log............................................................................................... 300
KLOGD.................................................................................................................... 303
logger...................................................................................................................... 304
108.3 Agente de Transferncia de Correio (MTA).................................................. 305
Sendmail...................................................................................................................... 305
QMAIL......................................................................................................................... 308
EXIM............................................................................................................................ 309
POSTFIX...................................................................................................................... 309

w w w . e d i t o r a n o v a t e r r a . c o m . b r

XXII

Certificao Linux

108.4 Gerenciamento de Impressoras e Impresso............................................... 309


Gerenciamento de Impressoras................................................................................... 310
Instalando uma Impressora......................................................................................... 311
lp............................................................................................................................. 312
lpq........................................................................................................................... 313
lprm........................................................................................................................ 314
lpc........................................................................................................................... 314
Imprimindo Arquivos.................................................................................................. 315
APSfilter................................................................................................................. 316
Magicfilter.............................................................................................................. 317
lpr............................................................................................................................ 318
Instalando Impressoras Remotas em Linux................................................................ 319
Instalando Impressoras Remotas em Windows.......................................................... 320
TPICO 109 FUNDAMENTOS E SERVIOS DE REDE......................................... 321
109.1 Fundamentos do TCP/IPv4............................................................................ 322
Classe A....................................................................................................................... 323
Classe B........................................................................................................................ 324
Classe C........................................................................................................................ 324
Classe D....................................................................................................................... 325
Classe E........................................................................................................................ 325
Protocolos que Compem o TCP/IP............................................................................ 325
Servios e Portas TCP/IP............................................................................................. 327
IPv6......................................................................................................................... 330
Utilitrios e Ferramentas do TCP/IP............................................................................ 331
dig........................................................................................................................... 332
ping......................................................................................................................... 333
traceroute................................................................................................................ 334
tracepath................................................................................................................. 335
whois...................................................................................................................... 336

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Sumrio

XXIII

telnet....................................................................................................................... 337
ftp............................................................................................................................ 337
host......................................................................................................................... 339
109.2 Configurando a Rede..................................................................................... 339
/etc/HOSTNAME......................................................................................................... 340
/etc/hosts...................................................................................................................... 340
/etc/resolv.conf............................................................................................................. 340
/etc/host.conf............................................................................................................... 341
/etc/nsswitch.conf........................................................................................................ 341
/etc/networks................................................................................................................ 342
domainname................................................................................................................ 342
dnsdomainname.......................................................................................................... 342
ifconfig......................................................................................................................... 343
ifup............................................................................................................................... 345
ifdown.......................................................................................................................... 345
109.3 Resolvendo Problemas Bsicos de Rede....................................................... 345
hostname..................................................................................................................... 345
netstat.......................................................................................................................... 346
route............................................................................................................................. 347
109.4 Configurando o Cliente Resoluo de Nomes DNS..................................... 349
TPICO 110 SEGURANA E CRIPTOGRAFIA...................................................... 353
110.1 Tarefas de Segurana..................................................................................... 354
Procurando por Executveis com SUID...................................................................... 354
Verificando a Integridade dos Pacotes........................................................................ 355
Verificando a Integridade de Arquivos Tarball........................................................... 357
Gerenciamento de Senhas........................................................................................... 357
Verificando Processos em Execuo........................................................................... 357
Leitura dos Anncios de Segurana........................................................................... 357
Determinando as Portas Abertas com o NMAP.......................................................... 358

w w w . e d i t o r a n o v a t e r r a . c o m . b r

XXIV

Certificao Linux

Determinando os Arquivos Abertos com o LSOF...................................................... 359


Aplicando Segurana nos Usurios............................................................................ 360
usermod.................................................................................................................. 362
Executando Programas com a Permisso de Outro Usurio...................................... 362
110.2 Aplicando Segurana no Host....................................................................... 364
Uso de Tcpwrappers.................................................................................................... 364
Configurando o inetd.................................................................................................. 365
Utilizando Tcpwrappers Para Segurana do inetd..................................................... 367
Configurando o xinetd................................................................................................ 368
110.3 Criptografia de Dados.................................................................................... 370
Usando o Shell Seguro................................................................................................ 370
Usando Criptografia de Dados.................................................................................... 374
GLOSSRIO................................................................................................................ 381
TPICOS DAS PROVAS.............................................................................................. 405
Pesos das Questes...................................................................................................... 415
REFERNCIAS BIBLIOGRFICAS............................................................................. 417
NDICE REMISSIVO................................................................................................... 419

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Introduo Guia de Estudos Para CompTIA Linux + Powered by LPI & LPI

GUIA DE ES TUDOS PARA COMPTIA


LINUX + POWERED BY LPI & LPI

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Certificao Linux

Sempre existiu e vai existir uma lacuna no mercado de TI: os profissionais que saem
das faculdades nem sempre esto preparados para aquilo que o mercado quer e precisa. Ainda mais no mercado de TI, onde a velocidade muito grande e as tecnologias
mudam e se aprimoram a cada 6 meses.
Desta maneira, a indstria de TI, formada por grandes empresas, como IBM, HP, SuSe,
Microsoft, Cisco, Intel, RedHat, Apple, dentre outras, se reuniram atravs de associaes ou programas prprios de certificaes para preencher essa lacuna no mercado
de profissionais capazes de trabalhar com eficcia nas suas plataformas, equipamentos e tecnologias.
Duas grandes organizaes reconhecidas mundialmente para cumprir esse papel de certificar os profissionais de TI so a CompTIA e a LPI.
A LPI surgiu em 1999 com o objetivo de criar uma certificao independente
da distribuio Linux, de forma que seus profissionais certificados esto aptos
a trabalhar com qualquer verso de Linux. O LPI conta com trs nveis de certificao: LPIC-1, LPIC-2 e LPIC-3. Cada nvel pretende certificar um profissional
apto a desempenhar tarefas que devam ser executadas com um crescente grau de
dificuldade e complexidade.
A CompTIA tem um programa de certificao h 25 anos mais abrangente, que abraa
diversas tecnologias, no s o Linux.
Em 2012, essas duas organizaes resolveram unir suas foras no mundo Linux para
criar uma certificao dupla, de forma que o profissional que se certificar no CompTIA Linux+ Powered by LPI, alm de receber o certificado da CompTIA, recebe o
certificado da LPI, LPIC-1.
Isso, alm de ser um grande incentivo, garante a entrada e sustentabilidade dos tcnicos no mercado de trabalho capazes de realizar tarefas no Linux. Desta forma, as duas
provas da CompTIA Linux+ LX0-101 e LX0-102 foram desenvolvidas para certificar a
competncia do sistema de administrao usando o sistema operacional Linux e suas
ferramentas associadas. Foi desenvolvido para ser neutro em termos de distribuio,
seguindo o Linux Standard Base entre outros padres e convenes relevantes.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Introduo Guia de Estudos Para CompTIA Linux + Powered by LPI & LPI

Desta forma, voc far as provas da CompTIA Linux+ e receber dois certificados, um
da CompTIA e outro da LPI. Mas veja que essa parceria s funciona se voc fizer as
provas da CompTIA e no da LPI.
Se voc est lendo esse livro, com certeza quer ter uma certificao de peso reconhecida internacionalmente no seu currculo e no seu carto de visitas. O mercado de
software livre est em crescimento e procura de profissionais certificados. E isso
timo para voc, sua carreira e tambm seu bolso.
A primeira edio deste livro, publicado em 2005, foi aclamada como o melhor livro
de estudos para a certificao LPI pela comunidade do BR-LINUX. Este sucesso
fruto de muito trabalho e empatia da comunidade Linux.
Esta edio foi ampliada e revisada para contemplar a reformulao da prova da LPI
em abril de 2012 e tambm contempla os contedos da CompTIA Linux+, de forma
que voc vai poder fazer as provas da CompTIA e ter dois certificados em mos.
Este um livro de Linux objetivo, didtico e focado nos temas das provas CompTIA
Linux+ e LPI LPIC-1. Voc ir encontrar exatamente aquilo que precisa estudar e na
medida certa para o exame.
E, para cumprir com os objetivos, preciso que voc saiba todos os tpicos das provas
101 e 102.
Os tpicos de cada prova da certificao LPIC-1 so:

PROVA 101:

Tpico 101 Arquitetura do Sistema;

Tpico 102 Instalao do Linux e Gerenciamento de Pacotes;

Tpico 103 Comandos GNU e UNIX;

Tpico 104 Dispositivos e Sistema de Arquivos.


Amars o Senhor teu Deus de todo o teu corao,
e ao prximo, como a ti mesmo."
Jesus - Mateus, 22: 36 a 40

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Certificao Linux

PROVA 102:

Tpico 105 Shell, Shell Scripts e Gerenciamento de Dados;

Tpico 106 Interface de Usurio e Desktop;

Tpico 107 Tarefas Administrativas;

Tpico 108 Servios Essenciais do Sistema;

Tpico 109 Fundamentos e Servios de Rede;

Tpico 110 Segurana e Criptografia.

Veja que de tempos em tempos os tpicos so reordenados entre as provas 101 e 102.
Em abril de 2012 houve mudanas na distribuio dos tpicos entre o exame 101 e
o 102, alguns contedos foram retirados dos exames e outros poucos acrescentados.
Hoje tambm no mais possvel escolher entre o exame para distribuies baseadas
em RPM/YUM ou Debian, devendo o candidato ser fluente em ambos os sistemas de
distribuio de pacotes de software. Os novos temas que antes no eram abordados so:

Gerenciamento de dados SQL;

Acessibilidade;

Internacionalizao e regionalizao;

Criptografia de dados;

Mais tratamento de erros e segurana;

Gerenciamento de dispositivos udev;

Cobertura do sistema de arquivos EXT4;

Gerenciador de boot GRUB2;

Cobertura do systemd;

Gerenciador de volumes LVM;

IPv6.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Introduo Guia de Estudos Para CompTIA Linux + Powered by LPI & LPI

Em compensao, alguns itens no fazem mais parte do exame 101 e 102, tais como:

Estratgias de Backup;

Configurao de servidor de DNS;

Customizar e recompilar o Kernel;

Configurao de servidor Apache;

Configurao de compartilhamento de arquivos via Samba;

Configurao de compartilhamento de arquivos via NFS;

Configurao de Servidor de DHCP;

Configurao de cliente PPP;

Gerenciador de boot LILO.

O exame 101 a primeira prova requerida para a certificao LPIC Nvel 1. Nesta 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 de questo sem dvida mais difcil porque apenas uma opo incorreta
invalida toda a questo.
Este exame ir testar seu conhecimento terico, comandos e suas opes comuns,
localizao de arquivos importantes, sintaxe de configuraes e procedimentos mais
usados. Uma vez que voc tenha conseguido solidificar os conceitos bsicos do 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.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Certificao Linux

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 dada nos tpicos relativos a segurana.

Como Marcar a Prova?


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 receber as duas certificaes CompTIA e LPI, voc primeiro precisa ter um LPI-ID,
que pode ser conseguido atravs de um cadastro gratuito no http://www.lpi.org. Voc vai
precisar informar o seu LPI-ID quando for fazer a prova da CompTIA Linux+.
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 tm um centro destes.
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, ter outra chance de redimir seu erro. Mas se voc
de fato no estiver devidamente preparado para o tema, 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.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Introduo Guia de Estudos Para CompTIA Linux + Powered by LPI & LPI

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 tm. De forma que toda configurao e manejo do servidor so feitos
com comandos no Shell e diretamente nos arquivos de configurao. Isto muito bom
porque o profissional fica experiente em qualquer Linux e no fica viciado em alguma
ferramenta amigvel.
Mas existe alguma que eu indico? Sim. Mas se trata de minha opinio pessoal. Eu
gosto do OPEN-SUSE. uma distribuio muito estvel, feita por alemes que prezam
muito pela obedincia completa aos padres do Linux Standard. Os comandos, 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.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Certificao Linux

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.
Quando esto aprendendo ou adquirindo capacitao acadmica, essas pessoas se
beneficiaro mais com atividades de expresso corporal, manipulando e tocando objetos, realizando exerccios, etc.
MENU
NOTA
DICA
ATENO
CUIDADO
PRATIQUE

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.

Lingustico / Sonoro
So aquelas pessoas que vivem cantando ou entoando algum som mesmo com a boca
fechada, os cantores e aqueles descritos com tendo um ouvido musical. Veem sons em
tudo. Eles podem no ser os melhores cantores ou msicos, mas eles tm uma 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.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Introduo Guia de Estudos Para CompTIA Linux + Powered by LPI & LPI

MENU
NOTA
DICA
ATENO
CUIDADO
PRATIQUE

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.

Visual
Estas pessoas so os modernos Picassos e Renoirs, os grafiteiros e rabiscadores, e indivduos que tm um talento natural para as cores e para harmonizar ambientes. Os
indivduos Visuais parecem ter um senso artstico que faz com que tudo que criem
parea agradvel aos olhos. Sua relao com o mundo atravs de pinturas e imagens.
As atividades que podem ser mais proveitosas para elas incluem pintura, escultura e a
criao de artes grficas. Quando esto aprendendo ou adquirindo capacitao acadmica, essas pessoas se beneficiaro mais com desenho e criao de diagramas, inclusive
grficos, leitura cartogrfica, criao de mapas ou realizando demonstraes.
MENU
NOTA
DICA
ATENO
CUIDADO
PRATIQUE

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

w w w . e d i t o r a n o v a t e r r a . c o m . b r

10

Certificao Linux

COMO
DIGITADO NO PROMPT

O QU
MOSTRA O ESPAO LIVRE EM DISCO

dF

ARQUIVOS
/ETC/FETAB (LEITURA)
/PROC/PARTITIONS

QUANDO
- QUANDO OS SERVIOS
PARAM INESPERADAMENTE;
- VERIFICAO EM MANUTENES PERIDICAS
FIGURA 1 Esquema de espinha de peixe

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.
Neste 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 excelente 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 tm. Isto importante porque uma opo de um comando pode
inverter o resultado.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Introduo Guia de Estudos Para CompTIA Linux + Powered by LPI & LPI

11

Por exemplo, o comando grep uira texto.txt vai filtrar todas as ocorrncias da palavra
uira no arquivo texto.txt. J o grep com a opo -v inverte, de forma que o comando ir mostrar todas as linhas que no tm a palavra uira no texto.txt.
Outro detalhe importante. Leia os MAN dos comandos de cada tpico. Eles tm 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 ideia exata do tipo de questes das provas com que voc
vai se deparar pelo caminho. H 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 por que.
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 erro e qual seria a resposta correta e por que. O
aprendizado se constri desta maneira.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

12

Certificao Linux

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

O site http://www.certificacaolinux.com.br
O treinamento para certificao LPI + CompTIA que ofereo a distncia, com aulas
totalmente multimdia e com garantia de 95% de aprovao. Voc ir assistir as aulas
quando desejar, quantas vezes quiser, de qualquer lugar, pois o curso individualizado, dinmico, gostoso de fazer e muito prtico.

O curso aborda todos os topicos das provas LPIC e CompTIA, sempre atualizado. Convido o leitor a fazer o Simulado para a prova e baixar o Mapa
Mental gratuitamente no site. E se desejar complementar o estudo do livro

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Introduo Guia de Estudos Para CompTIA Linux + Powered by LPI & LPI

13

com aulas multimdia, tem um desconto especial na aquisio do curso para


quem j tem o livro.
No link http://www.certificacaolinux.com.br/ voc ir ver uma aula demonstrativa e
tambm os detalhes, valores e formas de pagamento. E a matrcula rpida e fcil.
Eu tambm fiz um GUIA de estudos e um MAPA MENTAL que esto no site. D uma
olhadinha. grtis.

S as estrelas podem iluminar nosso caminho.


Olhe para elas...
via Corneli

w w w . e d i t o r a n o v a t e r r a . c o m . b r

O E x a m e L P I 101

16

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 a partir do cdigo fonte, o gerenciamento de bibliotecas
compartilhadas e a usar o sistema de pacotes Debian, RPM e YUM.

Tpico 103 Comandos GNU e 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.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

ARQUITETURA DE HARDWARE

18

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 em 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 objetivo era oferecer funes simples para as diversas tarefas que um computador pode fazer, tais como somar, ler um dado, gravar algo,
imprimir etc.
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

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Tpico 101: Ar quitetur a de Har dware

19

troca do controle do processador. Esse processo de troca de controle do processador pelos


diversos programas chamado de escalonamento e a parte do sistema responsvel por
decidir qual deles vai ser executado primeiro chamada de escalonador.
O escalonamento dos primeiros sistemas baseados em cartes perfurados e unidades
de fita era simples. A regra era executar o prximo processo na fita ou na leitora de
cartes. Nos novos sistemas multiusurio de tempo compartilhado o algoritmo de
escalonamento mais complexo.
Imagine que cada processo nico e imprevisvel. Alguns passam a maior parte do 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.
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.
Quem se interessaria em ouvir os atores falar?
H.M. Warner, do estdio Warner Brothres, em
1927, no ltimo ano dos filmes mudos.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

20

Certificao Linux

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

COMPILADOR

TELNET

eml

vi

ftp

SHELL & WINDOWS

KERNEL

HARDWARE

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.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

21

Tpico 101: Ar quitetur a de Har dware

O restante do sistema roda em modo usurio, uma vez que executa tarefas que no
necessitam acessar diretamente o hardware, e seus servios clssicos so assegurados
por processos servidores.
SHELL

CHAMADAS DE SISTEMA

SUBSISTEMA DE
ARQUIVOS

SUBSISTEMA DE
CONTROLE DE PROCESSOS
ESCALONADOR
GERNCIA DE MEMRIA
BUFFER

DRIVER DE DISPOSITIVO

CONTROLE DE HARDWARE

HARDWARE

FIGURA 3 - Microkernel.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

22

Certificao Linux

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 protocolo cliente/servidor. O mdulo responsvel pela comunicao possui as funes bsicas para receber mensagens originrias de outros proces
sadores, 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.

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.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Tpico 101: Ar quitetur a de Har dware

23

O Acesso Direto a Memria (DMA) usado para permitir a transferncia de dados


entre dispositivos e a memria sem a interveno do processador. Este acesso feito
atravs de canais (channels). A maioria dos computadores tem dois controladores
de DMA. O primeiro controla os canais 0, 1, 2, 3 e o segundo, os canais 4, 5, 6, 7,
totalizando 8 canais.
As Requisies de Interrupo (IRQ) so chamadas que os dispositivos podem fazer para
requerer ateno especial do processador. A maioria dos computadores oferece apenas
16 interrupes de hardware. Pode parecer pouco para as modernas configuraes com
os mais diferentes dispositivos. Felizmente os IRQs podem ser compartilhados.
O mecanismo de tratamento das interrupes faz com que a CPU esteja atenta aos eventos externos sequncia de instrues que ela est executando, para quando for necessria uma quebra do processamento normal para atender a uma outra solicitao.
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 da leitura de um arquivo,
ela faz a solicitao a uma funo executada pelo sistema operacional. Este ir acessar
o controlador do perifrico e requisitar a transferncia dos dados para o endereo de
memria informado no pedido do servio. O controlador do perifrico ao terminar 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;

w w w . e d i t o r a n o v a t e r r a . c o m . b r

24

Certificao Linux

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 fonte da interrupo no sistema operacional.
Ao fazer o tratamento das interrupes de hardware, o dispositivo solicitante interrompe processador. Este acaba a execuo da instruo atual, testa existncia de interrupo e salva o 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 execuo da rotina interrompida.
SISTEMA OPERACIONAL
EXECUTANDO

INTERRUPO OU CHAMADA DE SISTEMA

ESPERANDO

COLOCA PROCESSO 1 EM ESPERA


EXECUTA PROCESSO 2

INTERRUPO OU CHAMADA DE SISTEMA

COLOCA PROCESSO 2 EM ESPERA

EXECUTANDO

EXECUTANDO

ESPERANDO

VOLTA A EXECUTAR PROCESSO 1

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.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

25

Tpico 101: Ar quitetur a de Har dware

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.

O maior empresrio de todos os tempos foi Tutankamon,


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

w w w . e d i t o r a n o v a t e r r a . c o m . b r

26

Certificao Linux

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

0:
1:
2:
3:
11:
14:

/proc/interrupts
CPU0
604694 XT-PIC
timer
35746 XT-PIC keyboard
0
XT-PIC cascade
13546 XT-PIC orinoco_cs
15
XT-PIC ALi Audio Accelerator
38759 XT-PIC ide0

w w w . e d i t o r a n o v a t e r r a . c o m . b r

27

Tpico 101: Ar quitetur a de Har dware

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 - Referncia 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

lp0

LPT1

0x378

lp1

LPT1

0x278

/dev/hda1

C:

0x1F0

14

/dev/fd0

A:

0x3F0

No exame pode ser que voc tenha que resolver algum possvel conflito de recursos
em portas seriais ou paralelas.

Dispositivos PCI
Durante o processo de carga do sistema, o Kernel detecta os dispositivos PCI conectados no micro. A lista das placas de expanso encontradas poder ser lida atravs do
arquivo especial /proc/pci.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

28

Certificao Linux

# cat /proc/pci
PCI devices found:
Bus 0, device 0, function 0:
Host bridge: PCI device 10b9:1644 (Acer Laboratories Inc. [ALi]) (rev 1).
Prefetchable 32 bit memory at 0xf0000000 [0xf3ffffff].
Bus 0, device 1, function 0:
PCI bridge: Acer Laboratories Inc. [ALi] M5247 (rev 0).
Master Capable. No bursts. Min Gnt=8.
Bus 0, device 2, function 0:
USB Controller: Acer Laboratories Inc. [ALi] M5237 USB (rev 3).
IRQ 11.
Master Capable. Latency=64. Max Lat=80.
Non-prefetchable 32 bit memory at 0xf7eff000 [0xf7efffff].
Bus 0, device 4, function 0:
IDE interface: Acer Laboratories Inc. [ALi] M5229 IDE (rev 195).
Master Capable. Latency=64. Min Gnt=2.Max Lat=4.
I/O at 0xeff0 [0xefff].
Bus 0, device 6, function 0:
Multimedia audio controller: Acer Laboratories Inc. [ALi] M5451

Utilitrio lspci
O lspci til para mostrar todas as informaes sobre os barramentos PCI do sistema
e os dispositivos conectados a eles.
Suas opes mais comuns so:
-v

Mostra informaes detalhadas sobre todos os dispositivos.

-vv

Mostra ainda mais informaes sobre os dispositivos.

-n

Mostra os cdigos dos fabricantes e dispositivos.

-x

Mostra os primeiros 64 bytes da configurao PCI em hexadecimal.

-xxx

Mostra toda a configurao PCI em hexadecimal.

# lspci

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Tpico 101: Ar quitetur a de Har dware

29

0000:00:00.0 Host bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX Host


bridge (rev 01)
0000:00:01.0 PCI bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX AGP
bridge (rev 01)
0000:00:07.0 ISA bridge: Intel Corp. 82371AB/EB/MB PIIX4 ISA (rev 08)
0000:00:07.1 IDE interface: Intel Corp. 82371AB/EB/MB PIIX4 IDE (rev 01)
0000:00:07.2 USB Controller: Intel Corp. 82371AB/EB/MB PIIX4 USB
0000:00:07.3 Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ACPI (rev 08)

O Utilitrio lsusb
O lsusb til para mostrar todas as informaes sobre os dispositivos USB conectados
a este tipo de barramento.
A opo v mostra detalhadamente as informaes sobre o dispositivo USB.
$ lsusb -v
Bus 001 Device 001: ID 0000:0000
Device Descriptor:
bLength

18

bDescriptorType

bcdUSB

1.00

bDeviceClass

9 Hub

bDeviceSubClass

0 Unused

bDeviceProtocol

bMaxPacketSize0

idVendor

0x0000

idProduct

0x0000

bcdDevice

0.00

iManufacturer

w w w . e d i t o r a n o v a t e r r a . c o m . b r

30

Certificao Linux

iProduct

iSerial

bNumConfigurations

(...)

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 do 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 asseguram que as informaes passadas pelo sysfs aos programas sejam precisas e utilizadas facilmente.
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 .

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Tpico 101: Ar quitetur a de Har dware

31

BUS
Este diretrio contm subdiretrios para cada tipo de barramento suportado pelo 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 quela classe.
Por exemplo: a classe net contm os dispositivos eth0 e eth1. E, dentro de cada
diretrios de dispositivo, so encontrados arquivos e diretrios associados ao tipo de
dispositivo a que ele pertence.
DEVICES
O diretrio devices contm a hierarquia global dos dispositivos encontrados e suportados pelo Kernel. Sua hierarquia de diretrios obedece a organizao dos dispositivos em qual tipo de conexo eltrica eles esto conectados. Apenas dois dispositivos
so a exceo da regra: dispositivos de plataforma (platform) e de sistema (system).
O primeiro diretrio relativo aos dispositivos perifricos inerentes plataforma de
processamento e barramento do hardware. Por exemplo: dispositivos inerentes a 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.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

32

Certificao Linux

MODULE
O diretrio module contm subdiretrios com todos os mdulos de Kernel 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 frequncia o drive de disquete,
pode optar por carregar o mdulo que habilita suporte a disquetes somente quando
for fazer uso deste tipo de mdia. Este tipo de arquitetura modular permite que o
Kernel fique mais leve, ocupando menos memria e tambm menos processamento,
deixando a CPU mais tempo livre para executar os programas dos usurios. Um
Kernel enxuto permite que o sistema tenha uma eficincia melhor, mas no impede
que outras funcionalidades sejam agregadas sob demanda na forma de mdulos do
Kernel. importante saber que todos os diretrios de mdulo contm um arquivo
chamado refcnt que conta o nmero de referncias ou nmero de usurios que 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 sistema ir utilizar para entrar em modo de
suspenso ou economia de energia.
importante voc saber que as informaes contidas neste sistema de arquivos so
organizadas de forma que diversos programas e utilitrios fazem uso delas para 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

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Tpico 101: Ar quitetur a de Har dware

33

o trabalho dos programadores oferecendo um meio fcil e rpido de interagir com os


dispositivos sem precisar fazer acesso direto a eles.

UDEV
O gerenciamento dinmico de dispositivos (udev) responsvel por manter a estrutura de diretrio do /dev (diretrio que contm os links que representam os dispositivos) de forma a permitir que somente dispositivos conectados sejam listados na
estrutura do /dev.
Geralmente este gerenciador executado na forma do programa chamado udevd em
modo de servidor (daemon) que fica escutando os eventos do Kernel para encontrar
quando um dispositivo removido ou adicionado ao sistema. Quando se percebe um
evento de dispositivo no Kernel ele compara com as regras relacionadas no sysfs para
identificar o dispositivo e, depois disso, cria ou remove o link simblico do dispositivo no diretrio /dev.

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 em 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 nova-

w w w . e d i t o r a n o v a t e r r a . c o m . b r

34

Certificao Linux

mente 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 tm como limitador a
velocidade mxima da porta serial (115200 bps). Os modems podem ser encontrados
em trs verses: interno, externo e SoftModem.
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 chamada 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 possui 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.

A cada bela impresso que causamos, conquistamos um inimigo.


Para ser popular indispensvel ser medocre.
Oscar Wilde

w w w . e d i t o r a n o v a t e r r a . c o m . b r

35

Tpico 101: Ar quitetur a de Har dware

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.
/dev/ttys0
/dev/ttys1
/dev/ttys2
/dev/ttys3

(COM1),
(COM2),
(COM3),
(COM4),

port
port
port
port

0x3f8,
0x2f8,
0x3e8,
0x2e8,

irq
irq
irq
irq

4
3
4
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: Use 56kb

spd_vhi: Use 115kb

spd_shi: Use 230kb

spd_warp: Use 460kb

spd_cust: Use um divisor especfico para definir a velocidade:



baud rate = baud_base / divisor

spd_normal: Use 38.4kb

w w w . e d i t o r a n o v a t e r r a . c o m . b r

36

Certificao Linux

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

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-toPoint-Protocol Protocolo de Conexo Ponto a 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:
# modprobe sb io=0x220 irq=5 dma=1 dma16=5 mpu_io=0x388

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Tpico 101: Ar quitetur a de Har dware

37

Depois de instanciado no Kernel o mdulo do dispositivo de som, os recursos /dev/


audio, /dev/dsp e /dev/mixer estaro disponveis.
O prximo passo ser instalar um programa para controle de volume, tonalidade e
outros recursos da placa de som.

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 8-bits. 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;

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;

w w w . e d i t o r a n o v a t e r r a . c o m . b r

38

Certificao Linux

Ultra SCSI 320: Nova tecnologia SCSI que permite at 320MBps de transferncia a
2x32-bit. Utiliza um cabo de 68 pinos.

DB25M (MAC-SCSI)
APROX: 39mm

C50M (SCSI-1)
APROX: 65mm

IDC50M (SCSI-1)
APROX: 70mm

IDC50F (SCSI-1)
APROX: 67mm

HD50M (SCSI-2)
APROX: 35mm

HD68M (SCSI-3)
APROX: 47mm

HD68F (SCSI-3)
APROX: 45mm

VHD68M (SCSI-4)
APROX: 32mm

FIGURA 5 Conectores SCSI.

SCSI ID
Todos os dispositivos SCSI ligados a uma mesma placa so endereados de forma que
cada um tenha uma numerao nica chamada de SCSI ID. Esta numerao vai de 0
a 7 para as placas com barramento de 8-bit e de 0 a 15 para barramentos de 16-bit. As
prprias placas so endereadas e normalmente utilizam o SCSI ID 7.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Tpico 101: Ar quitetur a de Har dware

39

Nos discos SCSI comum que o endereamento SCSI ID seja definido atravs de
jumpers no disco.
A maioria das controladoras SCSI possui sua prpria BIOS que pode ser configurada
no boot do computador. A BIOS destas placas pode permitir dentre outras coisas a
configurao do SCSI ID da controladora, efetuar formatao fsica dos discos, 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 enxergar os mltiplos dispositivos lgicos
com apenas um endereo.
Terminadores
Os dispositivos SCSI so conectados ao longo de um cabo que dispe de diversas
entradas. No final do cabo necessrio conectar um componente eltrico chamado
terminador. A funo deste componente condicionar o sinal enviado pelo cabo, 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.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

40

Certificao Linux

Configurando Dispositivos de Rede e


Outros Dispositivos
difcil conceber a ideia de um PC que no esteja conectado a uma rede ou 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)
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 / AIC-7871
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

XT-PIC timer

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Tpico 101: Ar quitetur a de Har dware

1:

230

XT-PIC keyboard

2:

XT-PIC cascade

5:

7085061

XT-PIC eth0

8:

XT-PIC rtc

9:

XT-PIC usb-ohci

10:

152038

XT-PIC aic7xxx

12:

411599

XT-PIC eth1

14:

XT-PIC ide0

41

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
0060-006f : keyboard
0070-007f : rtc
0080-008f : dma page reg
00a0-00bf : pic2
00c0-00df : dma2
00f0-00ff : fpu
01f0-01f7 : ide0
02f8-02ff : serial(auto)
03c0-03df : vesafb
03f6-03f6 : ide0
03f8-03ff : serial(auto)
0cf8-0cff : PCI conf1
5c20-5c3f : ALi Corporation. [ALi] M7101 PMU
b800-b80f : ALi Corporation. [ALi] M5229 IDE

w w w . e d i t o r a n o v a t e r r a . c o m . b r

42

Certificao Linux

b800-b807 : ide0
b808-b80f : ide1
d000-d0ff : Adaptec AHA-2940/2940W / AIC-7871
d000-d0ff : aic7xxx
d400-d4ff : Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (#2)
d400-d4ff : 8139too
d800-d8ff : Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+
d800-d8ff : 8139too

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

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
8139too
Alias eth1
ne
Options
ne
io=0x300

irq=5

w w w . e d i t o r a n o v a t e r r a . c o m . b r

43

Tpico 101: Ar quitetur a de Har dware

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.
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 que eles utilizam. Alguns modems suportam
ambas configuraes, mas no ao mesmo tempo.
Bridged/DHCP
Este tipo de mecanismo para estabelecer uma conexo de banda larga era utilizado
com frequncia pelas operadoras por sua simplicidade de operao.
Este tipo de conexo coloca o microcomputador cliente em uma grande sub-rede LAN,
com todos os outros microcomputadores de outros clientes, expondo todos a um trfego de pacotes ARP e broadcast.

Por que cometer erros antigos se h tantos erros


novos a escolher?
Bertrand Russel, filsofo ingls

w w w . e d i t o r a n o v a t e r r a . c o m . b r

44

Certificao Linux

A autenticao deste tipo de mecanismo utiliza o protocolo DHCP para obter um endereo IP vlido, mscara de sub-rede, gateway e servidores de resoluo de nomes.
PPPoX
O mecanismo PPPoX na verdade uma variao do protocolo PPP adaptado para trabalhar com modems sncronos como o DSL. Existem duas variaes utilizadas: PPPoE
(PPP sobre Ethernet) e o PPPoA (PPP sobre ATM).
Existem diversas implementaes do PPPoE para Linux que simulam uma conexo
discada, onde o usurio autenticado atravs de um servidor RADIUS atravs de sua
identificao e senha.
Note que a grande vantagem do padro PPPoE que ele possibilita a conexo atravs
de dispositivos no-Ethernet, como o USB.
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.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Tpico 101: Ar quitetur a de Har dware

45

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 sub-rede da placa ethernet que est conectada ao modem.
# ifconfig eth0 200.150.233.45 up netmask 255.255.255.0

J o default gateway dever ser configurado utilizando o comando route para adicionar a rota padro:
# route add default gw 200.150.233.1 dev eth0

Por fim, o endereo do servidor de nomes dever ser configurado no arquivo /etc/
resolv.conf:
# echo nameserver 8.8.8.8 >> /etc/resolv.conf

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 sub-rede, 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 sequncia 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.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

46

Certificao Linux

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

A configurao do PPPoE ir depender do cliente que voc escolher. A dica seguir as


instrues do arquivo INSTALL ou README includas no pacote escolhido.
Abaixo ser descrita a configurao do Roaring Penguin.
No site est disponvel a verso para compilar do RP-PPPoE: rp-pppoe-3.7.tar.gz.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Tpico 101: Ar quitetur a de Har dware

47

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 configurados, 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
RX packets:297581 errors:0 dropped:0 overruns:0 frame:0
TX packets:266104 errors:1 dropped:0 overruns:0 carrier:2
collisions:79 txqueuelen:100
Interrupt:10 Base address:0x1300
ppp0 Link encap:Point-to-Point Protocol

inet addr:208.61.124.28
P-t-P:208.61.124.1
Mask:255.255.255.255

UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1


RX packets:297579 errors:0 dropped:0 overruns:0 frame:0
TX packets:266102 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:10

E o comando route dever apresentar a rota padro para a interface ppp0:


# route n
Kernel IP routing table

w w w . e d i t o r a n o v a t e r r a . c o m . b r

48
Destination

Certificao Linux

Gateway

Genmask

Flags

Metric

Ref

Use Iface
208.61.124.1 *

255.255.255.255

UH

0 0

ppp0

default

208.61.124.1 0.0.0.0

UG

0 0

ppp0

Configurando IP Esttico Usando PPPoX


A configurao esttica do PPPoE dever ser feita durante a configurao pppoe-setup
ou alterando o arquivo /etc/ppp/pppoe.conf.

Configurando Dispositivos USB


USB a sigla de Universal Serial Bus. Esta tecnologia criou um novo mtodo de conectar perifricos ao computador.
Instalar um perifrico foi encarado como uma tarefa assustadora, digna apenas de
tcnicos ou pessoas com mais experincia. Isso exigia mais do usurio, pois ele tinha
que abrir o computador para instalar uma placa adicional, configurar jumpers, IRQs,
endereos de memria e de E/S.
Com a implementao do padro Plug and Play (PnP) para deteco automtica de
perifricos e dispositivos pela BIOS, essa tarefa se tornou mais fcil. O objetivo do
padro PnP foi tornar o usurio capaz de instalar um novo perifrico e us-lo imediatamente, sem muita dificuldade.
Um grupo de empresas criou em 1995 um consrcio para desenvolver uma especificao de hardware e promover a rpida adoo dessa nova tecnologia e o desenvolvimento de novos dispositivos compatveis e de alta qualidade. Nascia o USB (Universal
Serial Bus), um barramento com um nico tipo de combinao porta/conector, usado
para ligar facilmente ao computador vrias categorias de dispositivos como scanners,
cmeras, teclados, caixas de som, impressoras etc .
O barramento USB pode operar a baixa velocidade, 1,5 megabits por segundo (Mbps),
e a alta velocidade, 12 Mbps. O primeiro modo geralmente usado por dispositivos

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Tpico 101: Ar quitetur a de Har dware

49

como mouse, teclado e joysticks. As velocidades mais altas so usadas por equipamentos como scanners e impressoras.
Os perifricos que sero abordados como exemplo so o teclado, o mouse, impressoras
e a WebCam3 USB da Creative Labs.
O primeiro passo determinar qual xHCI (Host Controller Interface) sua placa-me
possui e carregar o mdulo correspondente ao chip.
O comando para determinar qual o chip utilizado em sua placa-me :
# lspci -vt
-[00]-+-00.0 VIA Technologies, Inc. VT82C693A/694x [Apollo PRO133x]
+-01.0-[01]00.0 ATI Technologies Inc Rage XL AGP 2X
+-07.0 VIA Technologies, Inc. VT82C686 [Apollo Super South]
+-07.1 VIA Technologies, Inc. VT82C586/B/686A/B PIPC Bus Master IDE
+-07.2 VIA Technologies, Inc. USB
+-07.3 VIA Technologies, Inc. USB
+-07.4 VIA Technologies, Inc. VT82C686 [Apollo Super ACPI]
+-07.5 VIA Technologies, Inc. VT82C686 AC97 Audio Controller
+-0b.0 Adaptec AIC-7892A U160/m
\-0d.0 Intel Corp. 82557/8/9 [Ethernet Pro 100]

Caso sua placa-me possua um Chipset da INTEL ou da VIA, ser necessrio subir o
mdulo usb-uhci. Se possuir um Chipset da OPTi, SiS, ALi, Compaq, Apple ser necessrio subir o mdulo usb-ohci.
Os comandos so:
# modprobe usb-uhci

Ou
# modprobe usb-ohci

Estes mdulos fornecero suporte aos dispositivos USB.


Agora vamos aos perifricos:

w w w . e d i t o r a n o v a t e r r a . c o m . b r

50

Certificao Linux

TECLADO
Para configurar corretamente o seu teclado USB, precisamos carregar dois mdulos adicionais:
# modprobe hid

E
$ modprobe keydev

MOUSE
O procedimento para instalarmos um dispositivo Mouse USB parecido com a ativao do teclado:
# modprobe hid

E
# modprobe mousedev

IMPRESSORA
No caso da impressora, ser necessrio carregar, aps o mdulo correto de seu Chipset, o seguinte mdulo:
# modprobe printer

WEBCAM
A WebCam USB da Creative Labs baseada no Chip OV511. Devemos carregar, aps
o mdulo do Chipset, o mdulo apropriado para a cmera:
# modprobe ov511

Outros Dispositivos
O Linux tem suporte a diversos dispositivos USB atravs dos mdulos do Kernel. Voc
poder consultar os Chipsets suportados no diretrio /lib/modules/verso-do-kernel/
kernel/drivers/usb.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

51

Tpico 101: Ar quitetur a de Har dware

Ferramentas Para Configurao de Dispositivos USB


Algumas distribuies possuem ferramentas interessantes para a configurao automtica de dispositivos USB, como o usbmgr e o hotplug.
O usbmgr uma ferramenta utilizada para carregar e descarregar os mdulos do Kernel para os dispositivos USB quando estes so conectados ou desconectados ao micro
e executar automaticamente os scripts de configurao destes.
O usbmgr possui o arquivo /etc/usbmgr.conf que contm uma vasta lista de dispositivos e fabricantes que so automaticamente reconhecidos e configurados. Voc no
precisa alterar este arquivo.
A ferramenta hotplug foi introduzida a partir do Kernel 2.4 para reconhecer e configurar automaticamente dispositivos USB, PCI Cardbus (PCMCIA), IEEE 1394 (Firewire)
e docking stations para laptops.
O hotplug entra em cena com a funo de detectar novos dispositivos. ele o responsvel por carregar os mdulos apropriados, ajustar permisses e executar tarefas
diversas sempre que um novo dispositivo conectado.
A partir do Kernel 2.6 o hotplug tornou-se o componente padro para deteco de
hardware USB, PCMCIA e Firewire. Ele faz parte dos servios do sistema e pode ser
carregado com o comando:
# /etc/init.d/hotplug start

Os arquivos de configurao do hotplug esto concentrados dentro da pasta /etc/hotplug.


O hotplug trabalha com cdigos de identificao dos dispositivos, carregando mdulos ou
executando scripts com funes diversas.
Na maioria das distribuies o arquivo /etc/hotplug/usb.distmap contm as regras prconfiguradas dos diversos dispositivos USB.

A simplicidade o ltimo degrau da sabedoria.


Gibran

w w w . e d i t o r a n o v a t e r r a . c o m . b r

52

Certificao Linux

Voc pode colocar regras adicionais usando o arquivo /etc/hotplug/usb.usermap possibilitando a execuo de scripts personalizados quando determinados dispositivos
so conectados, como tocar um som, abrir um determinado programa ou mesmo fazer
backup automtico.

101.2 Sistemas de Boot


Qualquer computador PC quando ligado inicia uma srie de aes complexas de teste
de hardware programada por uma memria especial chamada de BIOS. Esta memria
tem a funo de dar a partida na mquina, reconhecendo os dispositivos instalados e
realizando a carga do sistema operacional.
Durante o boot, o BIOS realiza uma srie de testes, cuja funo determinar com
exatido os componentes de hardware instalados no sistema. Este teste chamado de
POST (power-on self test). atravs do POST que o computador busca informaes
dos nmeros e dos tipos de placas, drives de disquete, HDs, portas seriais, paralelas e
USBs, monitor, mouse, teclado etc .
Logo depois dos testes de hardware, a BIOS procura nos dispositivos de discos rgidos,
disquetes e CD-ROM um endereo especial chamado de setor de boot.

Processo de Carga do Kernel


O setor de boot de um disquete est localizado no cilindro 0, cabea 0, setor 1. Este
setor criado por um programa de formatao de disquetes, como o FORMAT do DOS.
no setor de boot que os sistemas operacionais gravam o software responsvel por
iniciar a carga do sistema operacional.
Desta forma, a BIO procura no setor de boot do disco rgido o gerenciador de boot.
No Linux gerenciadores mais comuns so o LILO, GRUB e GRUB 2. Eles so responsveis pela carga do Kernel na memria. O LILO no mais abordado na prova 101,
uma vez que a grande maioria das distribuies j o abandonou. Em compensao, o
GRUB 2 passa a fazer parte dos requisitos da prova.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Tpico 101: Ar quitetur a de Har dware

53

Aps a carga do Kernel, este inicia um processo especial chamado init. Este processo
o pai de todos os processos e responsvel pelo restante da carga do boot do Linux.
Depois da carga do boot, o init chama outro programa especial chamado getty, que
responsvel pela autenticao dos usurios e pelo incio do processo de shell.
importante que voc entenda que cada programa pelo menos um processo e que
cada processo possui alguns atributos, tais como:

Process ID (PID) ou identificao do processo: Cada processo possui um nmero


de identificao nico. O primeiro processo init sempre ter o PID 1 e para o restante dos processos este nmero incrementado medida que novos processos
so executados;

User ID e Group ID (ID do usurio e ID do grupo): Os processos precisam ser executados com os privilgios de uma conta de usurio e do grupo associado a eles.
Isto importante porque assim o sistema pode determinar e gerenciar o acesso
aos recursos;

Processo Pai: No Linux nenhum processo executado de forma independente dos


outros. Todos os processos no sistema, com exceo do init, possuem um processo
pai, que responsvel pela sua execuo. O atributo ParentID grava o PID do processo pai. Caso o processo pai termine sua execuo antes do processo filho, o processo
filho apadrinhado pelo init, ganhando o Parent ID igual a 1;

Variveis de ambiente: Cada processo herda do processo pai algumas variveis


de ambiente que simplesmente guardam alguns valores que podem ou no ser importantes para o processo em execuo. possvel que durante sua execuo um
processo altere, incremente ou apague uma varivel de ambiente;

Diretrio de trabalho: Os processos tambm so associados a um diretrio de trabalho, onde podem fazer a leitura e a escrita do disco;

Temporizadores: O Kernel mantm registros da hora em que os processos so criados bem como o tempo de CPU que eles consomem durante a sua execuo.

Em um ambiente multiprogramado com apenas um processador, cada processo executado aos poucos de cada vez, de forma intercalada. O sistema operacional aloca a

w w w . e d i t o r a n o v a t e r r a . c o m . b r

54

Certificao Linux

CPU um pouco para cada processo. Um processo aps receber o controle do processador s o perder quando ocorrer uma interrupo ou quando requerer algum servio
do sistema operacional.
PID 1
init
fork()

fork()

fork()

PID 3

PID 2

PID 10

init

init

init

exec()

exec()

exec()

guetty

guetty

guetty

exec()
login
exec()

exit()

/bin/sh
fork()
PID 21

fork()

PID 22

fork()

fork()
PID 23

PID 23

/bin/sh

/bin/sh

/bin/sh

/bin/sh

exec()

exec()

exec()

exec()

PID 21
elm

PID 22

PID 23
vi

gdb

PID 23
gcc

FIGURA 6 - Carga do sistema Linux.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Tpico 101: Ar quitetur a de Har dware

55

Estas interrupes so transparentes aos processos, pois apenas interrompem temporariamente sua execuo, que depois continuar a ser executada como se nada tivesse
acontecido. Ao requerer um servio do sistema operacional, o processo bloqueado
at que o servio requerido ao sistema operacional seja satisfeito.

O Gerenciador de Boot
A maioria das distribuies Linux trabalha com um dos dois gerenciadores de boot,
o GRUB (Grand Unified Bootloader) verso 1 ou a verso 2. O gerenciador de boot
responsvel pela carga do Kernel do Linux e tambm para a carga de outros sistemas
operacionais.
Trataremos da instalao do gerenciador de boot mais adiante no livro.
O gerenciador permite que alguns parmetros sejam passados para o Kernel durante a sua
carga. Estes parmetros podem passar para o Kernel algumas informaes que ele pode
no ser capaz de buscar por conta prpria ou at mesmo mudar seu comportamento.
Estes parmetros podem estar escritos no arquivo de configurao dos gerenciadores
de boot ou passados atravs da linha de comando.
Dependendo do seu hardware e configuraes dos mdulos do Kernel, estes parmetros podem especificar configuraes de recursos como portas de entrada e sada (IO
Ports), IRQ etc.
O gerenciador de boot permite que as informaes sejam passadas para o Kernel, que
ir lidar com os mdulos do sistema, mas ele no lida diretamente com os mdulos
do sistema.
O Kernel do Linux modular. Ele permite que mdulos (tambm podem ser chamados
grosseiramente de drivers) possam ser compilados na imagem do Kernel ou carregados somente quando necessrio.
Para enviar parmetros para os mdulos do Kernel, voc precisar editar o arquivo
de configurao dos mdulos, que dependendo da distribuio podem ser /etc/conf.
modules ou /etc/modules.conf. Estas configuraes podem ser endereos de entrada e
sada (IO), DMA, IRQ e dispositivos PCMCIA.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

56

Certificao Linux

Veja um exemplo do arquivo /etc/modules.conf:


####################################
# Aliases - specify your hardware

####################################
alias eth0 8139too
alias eth1 8139too
alias tr0 off
alias scsi_hostadapter off
alias fb0 off

Enquanto o Kernel carregado na inicializao do sistema, ele exibe uma srie de


mensagens teis que iro informar a identificao do Kernel, informaes de CPU e
memria, dispositivos de hardware, discos, parties, servios de rede etc.
Durante o processo de boot o Linux executa diversos processos em uma ordem programada chamada de nvel de execuo, ou Runlevels. Este nvel de execuo vai
determinar quais os servios sero executados durante a carga.
Por exemplo, podemos definir que um determinado nvel vai chamar todos os servios
que um servidor precisa rodar, como SSH, servidor HTTP, servidor de ftp e servidor
de e-mail. Mas para uma situao de emergncia, onde o administrador precisa efetuar alguma manuteno, podemos determinar um nvel de execuo onde somente o
bsico seja executado.
Os problemas que podem ocorrer durante a carga do sistema como reconhecimento
de dispositivos, erro na leitura de mdulos do Kernel, erro na execuo de servios
podem ser analisados no principal arquivo de LOG do sistema /var/log/messages.
Existe tambm um utilitrio capaz de ler o buffer (pequena rea de memria)
das telas do processo de carga do sistema, chamado de dmesg. Aps o processo
de carga do sistema este utilitrio ir mostrar as mensagens de carga do sistema,
mas ele capaz de ler qualquer mensagem importante que o Kernel armazene em
seu buffer.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Tpico 101: Ar quitetur a de Har dware

57

101.3 Alterando runlevels, shutdown e reboot


O Linux possui trs grandes sistemas especiais de carga dos servios durante o processo de boot e tambm responsvel por iniciar todos os processos: System V Init
Daemon, Systemd e Upstream.

System V Init Daemon


O System V Init Daemon foi herdado do UNIX, que recebeu o nome de System V init
Daemon ou simplesmente init.
Sua funo bsica carregar os servios durante o processo de carga do sistema, tais
como o suporte a rede, multiusurios, apache, mysql, e demais servios da mquina.
Durante o processo de carga do Linux, o sistema de boot (GRUB) carrega a imagem do
kernel para a memria. Assim que o Kernel assume o controle da mquina, ele carrega
um programa especial chamado init e que sempre tem o PID 1.
A partir da, todos os outros processos executados na mquina so filhos do processo
init, que tem o PID 1.
Isso porque, quando o usurio executa um programa, o kernel faz uma cpia do init
atravs de um mtodo chamado FORK e carrega o cdigo de mquina do programa
desejado em cima do cdigo de mquina do clone do init que foi criado.
Voc pode ver essa relao com o comando pstree:
# pstree

Runlevels
No Linux existem sete nveis de execuo predefinidos de 0 a 6. Os servios que cada
runlevel pode executar vo depender da distribuio do Linux e da configurao que
o administrador do sistema efetuou.
TABELA 2 - Runlevels do Linux
Runlevel

Descrio

O nvel zero define um desligamento elegante e rpido do sistema.


continua

w w w . e d i t o r a n o v a t e r r a . c o m . b r

58

Certificao Linux

Runlevel

Descrio

1,s,single

O nvel um utilizado para manuteno do sistema, tambm chamado de monousurio (single user). Somente o essencial executado.

Modo multiusurio com compartilhamento de arquivos NFS desabilitado.

Modo multiusurio com todos os servios habilitados, mas sem interface grfica para o login no sistema.

No utilizado.

Modo multiusurio com todos os servios habilitados, interface grfica X11 e login em modo grfico.

O nvel seis parecido com o nvel zero, mas executa o reboot da mquina.

Por padro, as distribuies utilizam o nvel 0 para uma sequncia de desligamento


(shutdown) elegante e o nvel 6 para o reboot. E os runlevels 3 a 5 so utilizados para
carga normal do sistema.
O nvel 1 tambm conhecido como monousurio utilizado para manutenes do
sistema, como, por exemplo, recuperar uma partio de dados com problemas.
O administrador do sistema pode a qualquer momento alterar o nvel de execuo
atravs do comando init seguido do nmero do runlevel desejado.
# init 5

ou
# telinit 6

O comando telinit um link para o init.


importante saber que a troca de nvel de execuo pode alterar os processos em execuo e at desligar o sistema.

Definindo Quais Processos Sero


Executados por Cada runlevel
At agora aprendemos que o comando init pode alterar os processos em execuo
alterando os runlevels do sistema. Mas a definio de quais processos sero executados por cada nvel de execuo feita pela hierarquia de diretrios /etc/rc.d e
scripts de shell.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Tpico 101: Ar quitetur a de Har dware

59

Quando o Linux inicia, uma srie de scripts no diretrio /etc/rc.d executada para dar
a carga no sistema. Vejamos estes arquivos e diretrios com detalhe:

O arquivo rc.sysinit executado pelo processo init durante a carga do sistema e


habilita funes essenciais. Por exemplo montar as parties de disco;

O arquivo rc.local executado pelo script rc.sysinit. Ele utilizado pelos administradores para eles modificarem os servios na carga do sistema. Este arquivo tem
preferncia para esta tarefa uma vez que no alterado durante um processo de
atualizao (upgrade) do sistema;

O arquivo rc utilizado para transies entre os runlevels;

O diretrio /etc/rc.d/init.d contm os diversos scripts que fazem a carga de todos os


servios do sistema operacional. Por exemplo o servio de shell seguro SSH possui
um script para carga do servio com o nome sshd (Secure Shell Daemon). Este
script e outros scripts podem aceitar como parmetro comandos como start e stop.
Outros servios podem aceitar outros comandos como reload, restart, status etc.

Os nveis de servio so definidos atravs dos diretrios /etc/rc<n>.d, onde <n>


pode variar de 0 a 6, correspondendo aos runlevels.
Por exemplo /etc/rc0.d e /etc/rc1.d. Dentro da cada diretrio de runlevel existem links simblicos para os scripts dos servios nos arquivos em /etc/rc.d/init.d.
Estes link simblicos seguem o seguinte padro:
[K|S]nn[nomedoscript]

Onde:

A letra K, de kill, indica que o script para terminar um determinado servio;

A letra S, de start, indica que o script para carregar um determinado servio;

Os nmeros inteiros nn indicam a sequncia de execuo dos scripts, onde o menor nmero executado primeiro. Se existirem no mesmo runlevel servios com o
mesmo nmero de ordem de execuo, a ordem ser indeterminada. A sequncia
dos nmeros garante que um servio que dependa de outro somente seja executado
depois que a dependncia seja satisfeita;

w w w . e d i t o r a n o v a t e r r a . c o m . b r

60

Certificao Linux

O nome do script para o link simblico no necessrio para o funcionamento correto, mas para facilitar a leitura humana.

Por exemplo:
# /etc/rc.d/rc3.d/S23httpd -> /etc/rc.d/init.d/httpd

Para incluir um determinado servio em algum runlevel desejado, voc dever copiar
o script de carga para o diretrio /etc/rc.d/init.d e criar um link simblico para o script
no runlevel desejado seguindo a nomenclatura acima.
Veja o exemplo:
# cp /usr/local/mailman/mailman.sh /etc/rc.d/init.d
# ln s /etc/rc.d/init.d/mailman.sh /etc/rc.d/rc3.d/S25mailman

Definindo o Runlevel Padro


O arquivo que define qual o runlevel que o sistema assumir durante a carga o /etc/
inittab. Neste arquivo procure a linha:
id:n:initdefault

Onde o n definir o runlevel pelo seu nmero de 0 a 6. Nunca coloque neste arquivo
o runlevel 0 ou 6 seno o sistema nunca entrar em produo.
Voc poder determinar em qual runlevel o sistema est em execuo atravs do comando runlevel. Este comando retorna o nvel de execuo anterior e o nvel de execuo atual. Se o nvel de execuo permaneceu inalterado desde a carga do sistema,
o nvel anterior ser mostrado como a letra N.
MENU
NOTA
DICA
ATENO
CUIDADO
PRATIQUE

O comando runlevel no altera o nvel de execuo, mas somente informa.


Para alterar utilize o comando init.

O Linux ainda possibilita que o desligamento do sistema possa ser o mais elegante
possvel atravs do comando shutdown.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Tpico 101: Ar quitetur a de Har dware

61

Shutdown
Uso:
# shutdown [opes] horrio [mensagem]

O comando shutdown utilizado para desligar ou reiniciar o sistema com horrios


determinados. Durante este procedimento, ele desabilita o sistema de login para impedir que novos usurios entrem no sistema e envia mensagens personalizadas nos
terminais para todos os usurios conectados avisando que o sistema ser desligado.
As opes mais frequentes so:
-r

Reinicia (reboot) o sistema depois de terminada a sequncia de desligamento;

-h

Paralisa (halt) o sistema depois de terminada a sequncia de desligamento.


No reinicia a mquina;

-k

Manda a mensagem de desligamento, mas no inicia a sequncia de


desligamento;

-f

Faz a carga de sistema rpida sem a checagem de discos;

-F

Fora uma checagem dos discos quando for reiniciar o sistema.

Para reiniciar o sistema imediatamente:


# shutdown r now

Para reiniciar o sistema as 06h da manh e enviar mensagem no terminal dos usurios:
# shutdown r 06:00 Haver troca de hardware

Para desligar o sistema em 10 minutos:


# shutdown h 10

MENU
NOTA
DICA
ATENO
CUIDADO
PRATIQUE

A diferena entre trocar o runlevel para 0 ou 6 e o comando shutdown que


o comando shutdown administrativamente melhor, pois avisa os usurios
que haver uma parada no sistema. J para a troca de init no h nenhum
tipo de aviso.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

62

Certificao Linux

Desvantagens do System V init Daemon


Embora o System V init Daemon seja um sistema robusto e utilizado no Kernel 2.4, ele
tem srias desvantagens, tais como:

Monitoramento dos servios (darmons) em execuo limitado, gerando processos


zombies;

O reincio de servios que pararam de funcionar problemtico;

Paralelismo complicado.

Systemd
Devido a vrias limitaes do init, outro sistema especial de controle dos processos de
boot e gerncia da execuo dos programas foi criado e denominado systemd.
Este novo sistema j amplamente utilizado nas distribuies mais conhecidas, especialmente no Kernel 2.6. Sua principal vantagem a carga do sistema de forma mais
rpida, executando os servios e processos em paralelo. Isso foi possvel com a chegada dos novos processadores dotados de multiplos ncleos, que permitem a execuo
de diversas threads em paralelo.
Entre as novidades do systemd, esto:

Ativao via socket e bus (executa os servios sob demanda);

Melhor paralelizao dos processos;

Uso de cgroups (control groups grupos de controle) ao invs de PIDS;

Suporta criao de imagens de estado de memria para salvar e restaurar estados


de execuo.

O sistema de controle de grupos permite que o systemd supervisione os processos, de


forma a garantir que, quando um servio parado, todos os processos filhos, netos,
bisnetos etc. tambm sejam parados.
Com um gerenciamento mais robusto, mais ciclos de CPU so necessrios para a criao de novos processos. Mas devido ao alto desempenho dos processadores, isto no
parece ser um problema para o systemd.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Tpico 101: Ar quitetur a de Har dware

63

No systemd, a carga de processos, mudana de runlevel e scripts de carga so bem


diferentes do init.
Para verificar o status de um servio:
# systemctl status cron.service
cron.service - Command Scheduler

Loaded: loaded (/lib/systemd/system/cron.service; enabled)

Active: active (running) since Mon, 28 May 2012 18:09:57
-0300; 7min ago

Main PID: 673 (cron)

CGroup: name=systemd:/system/cron.service

+ 673 /usr/sbin/cron -n

Para parar um servio:


# systemctl stop cron.service

Veja o status do servio quando parado:


# systemctl status cron.service
cron.service - Command Scheduler

Loaded: loaded (/lib/systemd/system/cron.service; enabled)

Active: inactive (dead) since Mon, 28 May 2012 18:18:26 -0300;
27s ago

Main PID: 673 (code=exited, status=0/SUCCESS)

CGroup: name=systemd:/system/cron.service

Para iniciar um servio:


# systemctl start cron.service

Para reiniciar um servio:


# systemctl restart cron.service

Para habilitar um servio durante a carga do sistema:


# systemctl enable cron.service

Para desabilitar um servio durante a carga do sistema:


# systemctl disable cron.service

Para mudar o runlevel para o modo texto (runlevel 3)


# systemctl isolate multi-user.target

w w w . e d i t o r a n o v a t e r r a . c o m . b r

64

Certificao Linux

Para mudar o runlevel para o modo grfico (runlevel 5)


# systemctl isolate graphical.target

Alterar o runlevel padro:


1) Apagar o link simblico:
# rm /etc/systemd/system/default.target

2) Para colocar o runlevel3 como padro:


# ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/
default.target

Upstart
O Upstart o substituto do init criado pelo Ubuntu. Sua funo substituir o processo
de init durante a carga dos servios no boot e na execuo dos processos, assim como
o init e o systemd.
Foi criado usando a biblioteca NIH Utility Library que bem leve e rpida. Tem melhorias considerveis em relao ao init, mas no to robusto quanto o systemd.
Para iniciar um servio:
# start servio

Para parar o servio:


# stop servio

Para ver o status do servio:


# status servio
As diretivas start / stop / status so na verdade atalhos para o comando initctl.
Seu tempo limitado, ento no o desperdice vivendo a vida de outra pessoa. No
fique preso pelo dogma que viver pelos resultados do que outras pessoas pensam.
No deixe o rudo da opinio dos outros afogar a sua voz interior. E o mais importante,
tenha a coragem de seguir seu corao e sua intuio. Eles de alguma forma j sabem
o que voc realmente quer se tornar. Tudo o mais secundrio.
Discurso de iniciao em Stanford, 2005
Steve Jobs

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Tpico 101: Ar quitetur a de Har dware

65

Para iniciar um servio:


# initctl start servio

Para parar o servio:


# initctl stop servio

Para ver o status do servio:


# initctl status servio

Para listar os servios:


# initctl list
control-alt-delete stop/waiting
rc stop/waiting
rc-sysinit stop/waiting
rcS stop/waiting
tty1 start/running, process 4418
tty2 start/running, process 7367
tty3 start/running, process 7368

Para ver qual o runlevel em execuo:


$ runlevel
N 2

Para alterar o runlevel em execuo, o comando o mesmo do system v:


# telinit 3

O mesmo vale para os comandos reboot e shutdown.


Para mudar o runlevel padro no momento de carga do sistema, deve-se alterar o arquivo /etc/init/rc-sysinit.conf
DEFAULT_RUNLEVEL=3
MENU
NOTA
DICA
ATENO
CUIDADO
PRATIQUE

No Upstart o arquivo /etc/inittab no mais utilizado.

w w w . e d i t o r a n o v a t e r r a . c o m . b r

66

Certificao Linux

Os scripts de configurao dos servios do Upstart ficam no /etc/init e se baseam no


padro sysvinit do Debian.
O formato bsico :
script
# faz alguma coisa
if [ ... ]; then
...
fi
end script

A melhor cura para o amor ainda aquele


remdio eterno: amor retribudo.
Nietzsche

w w w . e d i t o r a n o v a t e r r a . c o m . b r

Você também pode gostar