Escolar Documentos
Profissional Documentos
Cultura Documentos
Curso Linux NTI
Curso Linux NTI
IBA
N
ECNICO-CIENT
IFICO
ADMINISTRAC
AO
DE SISTEMAS
GNU/LINUX
(Conectiva 10)
Prof. S ergio de Albuquerque Souza
JO
AO PESSOA - PARA
IBA
5 de dezembro de 2004
Sum ario
I Instalando e Usando o GNU/Linux 6
1 Introduc ao 7
1.1 Sistema Operacional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2 Ambiente Gr aco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.3 O GNU/Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.4 Linux e o Projeto GNU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2 Instalando o GNU/Linux 11
2.1 Requisitos do sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2 Nosso Caso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.3 Iniciando a Instalac ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3 Modo Texto no GNU/Linux 19
3.1 Shell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.2 O bash . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.3 Comandos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4 Criando Usu arios no GNU/Linux 23
4.1 Criando e Removendo Contas . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.2 Criando e Removendo Grupos . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.3 Outros Comandos para Contas e Grupos . . . . . . . . . . . . . . . . . . . . . . 23
4.4 Arquivo passwd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
4.5 Arquivo shadow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
4.6 Arquivo group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
4.7 Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
5 Acesso ` a Arquivos e Diret orios 26
5.1 Donos, Grupos e Outros Usu arios . . . . . . . . . . . . . . . . . . . . . . . . . 26
5.2 Comandos para Permiss oes de Arquivos . . . . . . . . . . . . . . . . . . . . . . 27
5.3 Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
II Instalando, Congurando e Executando Servicos 30
6 Ativar e Desativar Servicos 31
6.1 Denic ao ou Remoc ao de Processos Residentes . . . . . . . . . . . . . . . . . . 32
6.2 Utilit arios para Congurac ao dos Nveis de Execuc ao . . . . . . . . . . . . . . . 33
6.3 Procedimento de shutdown . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2
SUM
ARIO 3
7 Instalando Pacotes via APT 34
7.1 Congurando o APT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
7.2 Usando o apt-cdrom . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
7.3 Utilizando o apt-get . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
8 Congurando a Rede 36
8.1 Rede Externa - eth0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
8.2 Rede Interna - eth1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
8.3 Instalando a Segunda Placa de Rede . . . . . . . . . . . . . . . . . . . . . . . . 37
8.4 Ativando a Segunda Placa de Rede . . . . . . . . . . . . . . . . . . . . . . . . . 38
8.5 Congurando a rede do cliente Windows . . . . . . . . . . . . . . . . . . . . . . 38
8.6 Testando a conex ao entre o GNU/Linux e Windows . . . . . . . . . . . . . . . . 39
8.7 Outros Comandos de Rede . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
8.8 Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
9 Servidor de Acesso Remoto - SSH 40
9.1 Pr e-requisitos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
9.2 Instalac ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
9.3 Congurac ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
9.4 Ativando . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
9.5 Cliente SSH - GNU/Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
9.6 Cliente SSH - Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
9.7 Cliente SCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
9.8 Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
9.9 Criptograa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
10 Servidor de Nomes - DNS 43
10.1 Pr e-requisitos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
10.2 Instalac ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
10.3 Congurac ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
10.4 Criando Zonas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
10.5 Criando um Domnio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
10.6 Criando Reverso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
11 Servidor de Web - Apache 48
11.1 Pr e-requisitos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
11.2 Instalac ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
11.3 Congurando o Apache . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
11.4 O arquivo httpd.conf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
11.5 Inicializando . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
12 Servidor de Proxy - Squid 50
12.1 Pr e-requisitos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
12.2 Instalac ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
12.3 Congurado o SQUID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
12.4 Congurando o Cliente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
12.5 Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
13 Servidor de FTP - ProFTP 52
13.1 Pr e-requisitos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
13.2 Instalac ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
13.3 Inicializando . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
13.4 Dando acesso a usu ario an onimo . . . . . . . . . . . . . . . . . . . . . . . . . . 53
SUM
ARIO 4
14 Servidor de E-mail - Posx 54
14.1 Funcionamento do Correio Eletr onico . . . . . . . . . . . . . . . . . . . . . . . 54
14.2 O Postx . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
14.3 IMAP e POP3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
15 Servidor SAMBA 59
15.1 Pr e-requisitos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
15.2 Instalac ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
15.3 Congurac ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
15.4 A sec ao [global] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
15.5 A sec ao [homes] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
15.6 A sec ao [printers] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
15.7 A sec ao [netlogon] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
15.8 A sec ao [proles] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
15.9 Sec oes de compartilhamento. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
15.10Utilizando o SAMBA com PDC . . . . . . . . . . . . . . . . . . . . . . . . . . 67
15.11Criando um usu ario no SAMBA . . . . . . . . . . . . . . . . . . . . . . . . . . 68
15.12Clientes com Windows 2000/XP . . . . . . . . . . . . . . . . . . . . . . . . . . 68
15.13Utilizando um cliente SAMBA Linux . . . . . . . . . . . . . . . . . . . . . . . 69
15.14Vari aveis usadas pelo SAMBA . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
15.15Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
16 Servidor DHCP 72
16.1 Pr e-requisitos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
16.2 Instalac ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
16.3 Congurac ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
16.4 Congurando o cliente Windows . . . . . . . . . . . . . . . . . . . . . . . . . . 74
III Protegendo a Rede 75
17 Roteamento entre Redes 76
17.1 Rotas denidas Manualmente . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76
17.2 Rotas denidas Automaticamente . . . . . . . . . . . . . . . . . . . . . . . . . 77
18 NAT 78
18.1 Compreendendo o NAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
18.2 Opc oes mais utilizadas do iptables . . . . . . . . . . . . . . . . . . . . . . . . . 80
18.3 Source NAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
18.4 Destination NAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
18.5 Regras mais elaboradas de NAT . . . . . . . . . . . . . . . . . . . . . . . . . . 83
19 Firewall 85
19.1 Filtrando pacotes no GNU/Linux . . . . . . . . . . . . . . . . . . . . . . . . . . 85
19.2 Operac oes em uma unica regra . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
19.3 Operac oes em uma chain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
19.4 Especicac oes para ltragem . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
19.5 Escolhendo poltica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
19.6 Alguns exemplos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
A Ap endice 97
A.1 Conta no Terminal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
A.2 Editor de Texto vi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
A.3 VMware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
SUM
ARIO 5
A.4 Discos e Partic oes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
A.5 Estrutura dos Diret orios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
A.6 Instalac ao e Atualizac ao de Programas com RPM . . . . . . . . . . . . . . . . . 103
Refer encias Bibliogr acas 107
Parte I
Instalando e Usando o GNU/Linux
6
CAPITULO 1
Introduc ao
A administrac ao de sistemas GNU/Linux e do Unix em geral, sempre foi concebida como algo
que s o podia ser feita por pessoal altamente especializado, que dominava centenas de comandos
e procedimentos, tanto e que os administradores de rede/sistemas eram geralmente chamados de
magos (wizards) ou gurus, mas este panorama mudou bastante com o surgimento de ferramentas
de gerenciamento mais amig aveis, muitos delas baseadas em interfaces gr acas
1
, por em neste
curso ser a dada enfase ao modo texto, pois neste modo, tem-se uma melhor vis ao do que est a, de
fato, acontecendo com o sistema e n ao cando apenas a cargo de clicar aqui e/ou ali para ver se
algo ocorre.
Mesmo com todo esse avanco, a administrac ao de sistemas est a longe de ser uma atividade
trivial para qualquer que seja o sistema operacional, dada a quantidade de tarefas desempenhadas
pelo administrador, dentre as quais, podemos citar:
Instalac ao do sistema operacional.
Criac ao, remoc ao e gerenciamento das contas dos usu arios.
Fazer Backups/Restaurac oes.
Instalac ao e atualizac oes de programas e servicos.
Instalac ao de novos hardware no sistema (impressora, discos rgidos, etc).
Fazer manutenc ao do sistema como um todo.
Monitorar a seguranca do sistema.
Montar e administrar uma rede.
Portanto este texto visa dar uma brevssima introduc ao em cada um desse t opicos, tendo
sempre em vista, o fato de se destinar a pessoas iniciantes, ou seja, que tenham pelo menos uma
noc ao de como funciona um computador em rede, mesmo os que tiveram pouco ou nenhum con-
tato com os sistemas GNU/Linux.
Como ponto de partida, para este curso, utilizaremos o dentro de um GNU/Linux, no caso o
Debian, programa VMware (ver anexos A.1 na p agina 97 e A.3 na p agina 98) que ser a de grande
utilidade na criac ao e instalac ao do GNU/Linux, bemcomo da rede, tudo de maneira virtual, dando
a cada aluno a capacidade de instalar, modicar e gerenciar o seu pr oprio servidor e sua pr opria
rede com os seus pr oprios usu arios (clientes).
1
Aplicativos gr acos:Webmin, Swat, Linuxconf, Synaptic, etc
7
CAP
ITULO 1. INTRODUC
AO 8
Neste ambiente virtual podemos instalar qualquer Windows, bem como qualquer uma das
grandes distribuic oes
2
para o GNU/Linux, no qual destacamos o Conectiva, Red Hat/Fedora,
Kurumin, Debian, SuSE e Mandrake.
No curso, usaremos o Conectiva Linux 10 que tem quase a totalidade de seus aplicativos tra-
duzidos para o portugu es
3
, espanhol e ingl es, tendo o portugu es como sua base, facilitando a
integrac ao com o usu ario brasileiro. O que n ao quer dizer que outras distribuic oes n ao estejam
disponveis na lngua portuguesa.
A seguir daremos algumas noc oes b asicas, dos termos mais utilizados.
1.1 Sistema Operacional
O Sistema Operacional, ou simplesmente SO e o conjunto de programas que fazem o elo do
usu ario e seus programas com o computador.
ITULO 1. INTRODUC
AO 9
getty - prov e o servico respons avel pelo login dos usu arios em terminais textos (virtuais ou n ao).
E ele que l e o nome do usu ario e a senha e chama o programa login para valid a-los; caso
estejam corretos e lancado um shell, caso contr ario o processo todo e reiniciado.
syslog - e respons avel por capturar as mensagens de erro geradas pelo kernel ou por outras
aplicac oes de sistema, e por mostr a-las posteriormente quando o administrador do sistema
solicit a-las.
1.1.3 Aplicac oes do Usu ario
As aplicac oes do usu ario s ao todas aquelas utilizadas pelo usu ario para executar uma determi-
nada tarefa. Editores de texto, editores de imagens, navegadores e leitores de e-mail se encaixam
nessa categoria.
1.2 Ambiente Gr aco
No GNU/Linux a responsabilidade pelo ambiente gr aco n ao e do kernel e sim de um pro-
grama especial, o XFree86. No entanto, este programa prov e apenas as func oes de desenho de
elementos gr acos e interac ao com a placa de vdeo. A interac ao nal do usu ario com a interface
gr aca se d a atrav es de programas gerenciadores de janelas, como o KDE, o WindowMaker e o
GNOME dentre outros, e s ao eles os respons aveis pela apar encia gr aca do seu GNU/Linux.
A separac ao do ambiente gr aco do resto do sistema apresenta muitas vantagens. Como o
ambiente gr aco consome recursos do sistema, e possvel desativ a-lo, principalmente em servido-
res, resultando assim em um melhor desempenho de outras aplicac oes, uma vez que a quantidade
de processamento da CPU que seria utilizado para o XFree86, poder a ser utilizado para essas
aplicac oes. Al em do mais, o desenvolvimento do ambiente gr aco pode ocorrer de maneira inde-
pendente ao do kernel.
O GNU/Linux tamb em pode funcionar em modo texto (ver captulo 3 na p agina 19). Nesse
caso a interac ao com o usu ario se d a por meio de um shell, como o bash, que e capaz de interpretar
e executar comandos digitados pelo usu ario.
1.3 O GNU/Linux
O GNU/Linux e um sistema operacional criado em 1991 por Linus Torvalds na Universidade
de Helsinki na Finl andia.
E um sistema operacional de c odigo aberto distribudo gratuitamente
pela Internet. Seu c odigo fonte e liberado como Free Software (software livre).
Isto quer dizer que voc e n ao precisa pagar nada para usar o GNU/Linux, e n ao e crime fazer
c opias para instalar em outros computadores, e inclusive voc e deve fazer isto. Ser um sistema de
c odigo aberto pode explicar a performance, estabilidade e velocidade em que novos recursos s ao
adicionados ao sistema.
Para rodar o GNU/Linux voc e precisa, no mnimo, de um computador 386 SX com 2 MB de
mem oria e 40MB disponveis em seu disco rgido para uma instalac ao b asica e funcional ou um
disquete para as chamadas mini-distribuic oes, no qual destaco o Freesco.
O sistema segue o padr ao POSIX que e o mesmo usado por sistemas UNIX e suas variantes.
Assim, aprendendo o GNU/Linux voc e n ao encontrar a muita diculdade em operar um sistema
do tipo UNIX, FreeBSD, HPUX ou SunOS, bastando apenas aprender alguns detalhes encontrados
em cada sistema.
O c odigo fonte aberto permite que qualquer pessoa veja como o sistema funciona ( util para
aprendizado), corrija algum problema ou faca alguma sugest ao sobre sua melhoria, sendo esse
um dos motivos de seu r apido crescimento, do aumento da compatibilidade de perif ericos (como
novas placas sendo suportadas logo ap os seu lancamento) e de sua estabilidade.
CAP
ITULO 1. INTRODUC
AO 10
Outro ponto em que ele se destaca e o suporte que oferece a placas, CD-Roms e outros tipos
de dispositivos de ultima gerac ao e mais antigos (a maioria deles j a ultrapassados e sendo comple-
tamente suportados pelo sistema operacional). Este e um ponto forte para empresas que desejam
manter seus micros em pleno funcionamento e pretendem investir em novas tecnologias.
Hoje o GNU/Linux e desenvolvido por milhares de pessoas espalhadas pelo mundo, cada uma
dando sua contribuic ao ou mantendo alguma parte gratuitamente, como por exemplo do kernel.
Linus Torvalds ainda trabalha no desenvolvimento do kernel e tamb em ajuda na coordenac ao entre
os desenvolvedores.
O suporte ao sistema tamb em se destaca como sendo o mais eciente e r apido do que qual-
quer programa comercial disponvel no mercado. Existem centenas de consultores especializados
espalhados ao redor do mundo. Voc e pode se inscrever em uma lista de discuss ao e relatar sua
d uvida ou alguma falha, e sua mensagem ser a vista por centenas de usu arios na Internet e algum
ir a te ajudar ou avisar a as pessoas respons aveis sobre a falha encontrada para devida correc ao.
1.4 Linux e o Projeto GNU
A id eia do Richard Stallman, em 1984, para Projeto GNU (GNUs Not Unix, ou GNU n ao e
Unix) era desenvolver um sistema operacional livre similar ao Unix, pois todo usu ario de compu-
tadores necessita de um sistema operacional; se n ao existe um sistema operacional livre, voc e n ao
pode nem mesmo iniciar o uso de um computador sem recorrer a software propriet ario. Portanto,
o primeiro tem na agenda do software livre e um sistema operacional livre.
A palavra livre (free no original) est a relacionada com liberdade, em vez de preco. Voc e pode
ou n ao pagar um preco para obter software GNU. De qualquer modo, uma vez que voc e tenha o
software voc e tem quatro liberdades especcas na sua utilizac ao:
A liberdade de executar o programa, para qualquer prop osito.
A liberdade de estudar como o programa funciona, e adapt a-lo para as suas necessidades. O
aceso ao c odigo-fonte e um pr e-requisito para esta liberdade.
A liberdade de redistribuir c opias de modo que voc e possa ajudar ao seu pr oximo.
A liberdade de aperfeicoar o programa, e liberar os seus aperfeicoamentos, de modo que
toda a comunidade se benecie. O acesso ao c odigo-fonte e um pr e-requisito.
A maioria dos projetos de software livre tem por objetivo desenvolver um programa em par-
ticular para uma tarefa em particular. Por exemplo, Linus Torvalds escreveu um n ucleo similar
ao Unix (Linux); Donald Knuth escreveu um formatador de textos (Tex/LaTex)
5
; Bob Scheier
escreveu um sistema de janelas (X Windows).
E natural medir a contribuic ao deste tipo de projeto
pelos programas especcos que vieram daquele projeto.
`
A parte do GNU, um outro projeto desenvolveu um sistema livre similar ao UNIX, este sistema
e conhecido como BSD e foi desenvolvido na Universidade da Calif ornia em Berkeley. Os desen-
volvedores do BSD foram inspirados a fazer seu trabalho como software livre seguindo o exemplo
do Projeto GNU, e ocasionalmente encorajaram os ativistas do GNU. Um sistema operacional li-
vre que existe hoje e quase com certeza ou uma variante do sistema GNU ou um tipo de sistema
BSD.
Utilizamos sistemas GNU baseados em Linux hoje para a maioria dos nossos trabalhos. Mas
n ao utilize o nome Linux de forma ambgua. Linux e o n ucleo, um dos principais componentes
essenciais do sistema e o sistema como um todo e mais ou menos o sistema GNU.
Para enfatizar o que estamos utilizando, chamaremos de GNU/Linux, ou seja, um sistema
operacional livre com o n ucleo Linux.
5
Formatador de textos utilizado para a gerac ao deste material
CAPITULO 2
Instalando o GNU/Linux
Neste captulo daremos uma vis ao geral, passo a passo, da instalac ao de um sistema operaci-
onal GNU/Linux, que no caso ser a o Conectiva Linux 10 da Conectiva SA, que e uma empresa
brasileira, com sede em Curitiba - Paran a, fundada em 1995.
2.1 Requisitos do sistema
Os requisitos mnimos necess arios para instalac ao do Conectiva Linux - Desktop, recomenda-
dos pela pr opria Conectiva, s ao:
Processador 100 MHz
2GB de espaco em disco
64 de mem oria RAM, para instalac ao e utilizac ao do sistema
Adaptador de vdeo VGA
Estes requisitos permitem que voc e utilize a sua m aquina com o Conectiva Linux, por em com
certas restric oes quanto ` a interface gr aca e agilidade.
E importante frisar que estes requisitos s ao aplicados a uma instalac ao padr ao. Instalac oes
personalizadas e instalac ao de servidores podem requerer mais ou menos hardware, dependendo
de cada caso.
Daremos enfase a instalac ao no modo gr aco que e mais pr atico, mas caso voc e deseje instalar
via modo texto, perceber a que as opc oes de instalac ao s ao bastante similares, s o um pouco mais
trabalhosa.
O instalador foi programado com uma s erie de janelas que ir ao servir como guia. Cada
janela ir a congurar uma ou mais opc oes, que voc e deve selecionar. Os tens que estiverem sendo
congurados aparecem na area de selec ao. Voc e pode selecionar as caractersticas nessa area,
pressionando as teclas direcionais ou a tecla Tab, ou ainda, usar o mouse (caso seja detectado
automaticamente, o que ocorre na maioria dos casos).
Para prosseguir, ao nal de cada operac ao, basta clicar no bot ao Pr oximo , situado no canto
inferior direito da tela. Caso queira fazer algumas modicac oes nas congurac oes j a feitas, utilize
o bot ao Anterior .
Caso esteja com d uvidas sobre como proceder, voc e pode utilizar o bot ao de Ajuda . Para
visualiz a-lo, mova o mouse at e o lado esquerdo da sua tela ou tecle F1.
11
CAP
ITULO 5. ACESSO
`
A ARQUIVOS E DIRET
ORIOS 27
w Permiss ao de gravac ao para arquivos. Caso for um diret orio, permite a
gravac ao de arquivos ou outros diret orios dentro dele.
x Permite executar um arquivo (caso seja um programa execut avel). Caso
seja um diret orio, permite que seja acessado.
As permiss oes de acesso a um arquivo/diret orio podem ser visualizadas com o uso do simples
comando:
[root@curso root]# ls -l
total 8
-rw-r--r-- 1 root root 69 2004-09-08 14:10 inicial.txt
lrwxrwxrwx 1 root root 11 2004-09-08 22:49 teste.txt -> inicial.txt
drwx------ 3 root root 4096 2004-09-08 22:01 tmp
As 3 principais letras (rwx) s ao agrupadas da seguinte forma:
l r w x
dono
r w x
grupo
r w x
outros
A primeira letra ou smbolo diz qual e o tipo do arquivo. Caso tiver um d e um diret orio,
um l um link a um arquivo no sistema e um - quer dizer que e um arquivo comum.
Da segunda a quarta letra, dizem qual e a permiss ao de acesso ao dono do arquivo.
Da quinta a s etima letra, diz qual e a permiss ao de acesso ao grupo do arquivo.
Da oitava a d ecima letra, diz qual e a permiss ao de acesso para os outros usu arios.
5.2 Comandos para Permiss oes de Arquivos
Comando Descric ao
chmod Muda a permiss ao de acesso a um arquivo ou diret orio. Com este co-
mando voc e pode escolher se usu ario ou grupo ter a permiss oes para ler,
gravar, executar um arquivo ou arquivos
chgrp Muda o grupo de um arquivo/diret orio.
chown Muda dono de um arquivo/diret orio. Opcionalmente pode tamb em ser
usado para mudar o grupo.
mv Move ou renomeia arquivos e diret orios.
Exemplo 5.2.1 Para dar permiss ao a que outro usu ario do grupo possa modicar e que os demais
usu arios possam ler o arquivo, usaremos o comando:
[root@curso root]# chmod g+w o+r arquivo
Exemplo 5.2.2 Para retirar a permiss ao executar a para o grupo e os demais nada possam,
usaremos o comando:
[root@curso root]# chmod g-x a-rwr arquivo
Exemplo 5.2.3 Para modicar o grupo de um arquivo, usaremos o comando:
[root@curso root]# chgrp usuario arquivo
Exemplo 5.2.4 Para modicar o dono e o grupo de um diret orio e todos os seus arquivos, usare-
mos o comando:
[root@curso root]# chown -r usuario:grupo diretorio
CAP
ITULO 5. ACESSO
`
A ARQUIVOS E DIRET
ORIOS 28
5.2.1 Modo de permiss ao octal
Ao inv es de utilizar os modos de permiss ao g+r, u-rw, no comando chmod, pode ser usado o
modo octal para se alterar a permiss ao de acesso a um arquivo, que e um conjunto de oito n umeros
onde cada n umero dene um tipo de acesso diferente.
E mais exvel gerenciar permiss oes de acesso usando o modo octal ao inv es do comum,
pois voc e especica diretamente a permiss ao do dono, grupo, outros ao inv es de gerenciar as
permiss oes de cada um separadamente.
Abaixo a lista de permiss oes de acesso octal:
N umero Descric ao
0 Nenhuma permiss ao de acesso. Equivalente a -rwx.
1 Permiss ao de execuc ao (x).
2 Permiss ao de gravac ao (w).
4 Permiss ao de leitura (r).
1 + 2 = 3 Permiss ao de gravac ao e execuc ao (wx).
1 + 4 = 5 Permiss ao de leitura e execuc ao (rx).
2 + 4 = 6 Permiss ao de leitura e gravac ao (rw).
1+2+4 = 7 Permiss ao de leitura, gravac ao e execuc ao. Equivalente a +rwx.
O uso de 3 deste n umeros consecutivos, denem a permiss ao de acesso do dono, grupo ou
outros usu arios, respectivamente.
Exemplo 5.2.5 Para denir a permiss ao de acesso dos outros usu arios para somente execuc ao, o
acesso do grupo como leitura e execuc ao e o acesso do dono como leitura, gravac ao e execuc ao,
basta executar:
[root@curso root]# chmod 751 teste
Exemplo 5.2.6 Para as permiss oes de acesso especiais:
1000 = Salva imagem do texto no dispositivo de troca
2000 = Ajusta o bit setgid na execuc ao
4000 = Ajusta o bit setuid na execuc ao
5.3 Exerccios
Exerccio 5.3.1 Criar no diret orio /home os seguintes diret orios, com as seguintes caractersti-
cas:
Diret orio dono grupo permiss oes do grupo permiss oes dos outros
netlogon root root total apenas leitura
arquivos root chefe total nenhuma
secreto root diretores escrita e execuc ao nenhuma
lixo root outros total total
proles root root total total
prolesNT root root total nenhuma
CAP
ITULO 5. ACESSO
`
A ARQUIVOS E DIRET
ORIOS 29
5.3.1 Permiss oes de Acesso Especiais
Al em das tr es permiss oes b asicas (rwx), existem permiss oes de acesso especiais (stX) que
afetam arquivos execut aveis e diret orios, como descrito abaixo:
Tipo Descric ao
s Quando e usado na permiss ao de acesso do Dono, ajusta a identicac ao
efetiva do usu ario do processo durante a execuc ao de um programa,
tamb em chamado de bit setuid. N ao tem efeito em diret orios.
Quando s e usado na permiss ao de acesso do Grupo, ajusta a identi-
cac ao efetiva do grupo do processo durante a execuc ao de um programa,
chamado de bit setgid.
E identicado pela letra s no lugar da permiss ao
de execuc ao do grupo do arquivo ou diret orio.
Em diret orios, forca que os arquivos criados dentro dele pertencam ao
mesmo grupo do diret orio, ao inv es do grupo prim ario que o usu ario per-
tence.
Ambos setgid e setuid podem aparecer ao mesmo tempo no mesmo ar-
quivo ou diret orio. A permiss ao de acesso especial s somente pode
aparecer no campo Dono e Grupo.
S Id entico a s. Signica que n ao existe a permiss ao x (execuc ao ou
entrar no diret orio) naquele lugar.
t Salva a imagem do texto do programa no dispositivo swap, assim ele ser a
carregado mais rapidamente quando executado, tamb em chamado de stick
bit.
Em diret orios, impede que outros usu arios removam arquivos dos quais
n ao s ao donos. Isto e chamado de colocar o diret orio em modo append-
only.
Um exemplo de diret orio que se encaixa perfeitamente nesta condic ao e o
/tmp, todos os usu arios devemter acesso para que seus programas possam
criar os arquivos tempor arios l a, mas nenhum pode apagar arquivos dos
outros. Apermiss ao especial t, pode ser especicada somente no campo
outros usu arios das permiss oes de acesso.
T Id entico a t. Signica que n ao existe a permiss ao x naquela posic ao.
X Se voc e usar X ao inv es de x, a permiss ao de execuc ao somente e
afetada se o arquivo j a tiver permiss oes de execuc ao. Em diret orios ela
tem o mesmo efeito que a permiss ao de execuc ao x.
Parte II
Instalando, Congurando e Executando
Servicos
30
CAPITULO 6
Ativar e Desativar Servicos
Neste captulo daremos um breve entendimento dos procedimentos de ativar (startup) e desa-
tivar (shutdown), bem como dos arquivos de congurac ao envolvidos d ao uma id eia do que pode
estar errado caso o sistema n ao inicialize ou n ao desligue corretamente.
A inicializac ao do computador faz-se da seguinte maneira: primeiramente o BIOS, inicializa
todos os dispositivos do sistema, e l e o primeiro setor, chamado de setor de boot, de um disquete
ou do disco rgido
1
. Neste setor est a contido o carregador de boot, que se encarrega de colocar o
sistema operacional de algum lugar do disco (ou de outro dispositivo) na mem oria e execut a-lo.
E possvel ter v arias partic oes e com isso v arios sistemas operacionais no mesmo disco, cada
qual com o seu setor de boot, e por conseguinte o seu carregador de boot. Para isto e necess ario um
programa que nos permita escolher qual dos setores de boot queremos inicializar. Este programa e
chamado de gerenciador de boot, e em geral cada sistema operacional tem um gerenciador pr oprio,
sendo que no caso do GNU/Linux existem o GRUB (no nosso caso) e o LILO
2
.
Ap os o GNU/Linux ser carregado, ele inicializa o hardware e os device drivers e roda o pro-
grama init, que inicializa outros processos que fazem com que o sistema que pronto para ser
usado. O conjunto de processos que ser ao inicializado pelo programa init, denem o que cha-
mamos de nveis de execuc ao (runlevels). No arquivo /etc/inittab (mais especicamente na
linha id:n umero:initdefault:) denimos sob qual nvel ir a iniciar, em geral existem seis nveis. Na
tabela a seguir temos uma breve descric ao de cada um deles.
Nvel Descric ao
0 Faz com que init desligue o computador
1
E usado para colocar o sistema em modo monousu ario (single), que e
usado pelo administrador para fazer manutenc ao.
2 O sistema entra no modo multiusu ario com maior parte dos servicos ati-
vos, com excec ao dos processos de rede.
3
E o modo padr ao, onde todos os servicos est ao disponveis.
4 Este modo n ao e usado pela maioria das distribuic oes.
E reservado para
que possamos desenvolver o nosso pr oprio runlevel.
5 Semelhante ao nvel 3, com todos o processo ativos, por em com uma
interface gr aca de login.
6 Reinicializa o sistema.
Para saber em que nvel o seu sistema esta rodando, basta executar o comando:
[root@curso root]# /sbin/runlevel
1
No caso dos discos rgidos tem a denominac ao de MBR (Master Boot Record)
2
Linux Loader
31
CAP
_ _ _ _ _ _
acesso ` a
Internet
.
GNU/Linux
Conectiva 10
eth0
(150.165.251.XX)
HUB/Switch
eth1
(10.10.XX.1)
Cliente 01
.
l
l
l
l
l
l
l
l
l
l
l
l
l
l
Cliente 02
Cliente 03
R
R
R
R
R
R
R
R
R
R
R
R
R
R
Figura 8.1: Diagrama da nossa rede
onde eth0 e a primeira placa de rede (rede externa), eth1 e a segunda placa de rede (rede interna).
8.1 Rede Externa - eth0
A rede externa ter a todos os n umeros, dado pelo servidor de DHCP (ver captulo 16 na p agina
72) do NTI, ou seja:
N umero IP: 150.165.250.YYY fornecido pelo servidor DHCP.
Mascara: 255.255.255.0 fornecida pelo servidor DHCP.
Placa de rede: eth0
Para checar qual foi o n umero fornecido, usaremos o comando:
[root@curso root]# ifconfig
36
CAP
via putty
via ssh
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
Servidor Instrutor
via ssh
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
o
.
via ssh
Servidor Vizinho
Exerccio 9.8.2 Mudar a porta padr ao do SSH para 2004 e testar.
Exerccio 9.8.3 Entrar no servidor do instrutor com o login teste e trocar para o usu ario root,
com o comando su - root e criar sua conta pessoal neste servidor, pertencente ao grupo aluno.
Teste a sua nova conta, acessando remotamente.
9.9 Criptograa
A utilizac ao de criptograa em comunicac oes n ao e algo novo, e j a era utilizada antes mesmo
de se existirem computadores. Criptograa e um conjunto de t ecnicas que permitem tornar incom-
preensvel uma mensagem originalmente escrita com clareza, de forma a permitir que apenas o
destinat ario a decifre e compreenda, ou seja, na impossibilidade de manter informac oes de acessos
n ao autorizados, a criptograa visa tornar uma mensagem ininteligvel a quem n ao deveria v e-la.
E exatamente isso que o SSH faz ao se comunicar, ou seja, os pacotes contendo as informac oes
a serem transmitidas passam por um processo de criptograa que visa proteger a informac ao con-
tida neles, j a que n ao h a formas de conhecer os caminhos por onde esses pacotes trafegar ao (prin-
cipalmente em se tratando de Internet), nem o qu ao seguro ser a este caminho.
CAPITULO 10
Servidor de Nomes - DNS
O DNS e o Servidor de Nomes do Domnio, que converte os nomes das m aquinas para n umeros
IP, que s ao os enderecos das m aquinas, fazendo uma correspond encia de nome para endereco IP e
de endereco IP para nome, ou seja, e simplesmente uma associac ao entre duas informac oes, neste
caso um nome de m aquina, como ftp.linux.org, e o n umero IP da m aquina, como por exemplo
199.249.150.4. Portanto o DNS e um banco de dados distribudo por toda a rede.
O DNS e um banco de dados distribudo por toda a rede.
E necess ario ter-se extremo cuidado
com tudo o que for colocado nele. Ao se colocar dados sem signicado, outros utilizar ao estes da-
dos e certamente tudo car a um pouco estranho. O DNS deve estar sempre atualizado e arrumado,
evitando-se assim problemas desagrad aveis. Deve-se aprender a us a-lo, administr a-lo, depur a-lo
para tornar-se um bom administrador da rede, evitando sobrecargas geradas por problemas de
administrac ao.
Por em, nesse curso, ser a dada uma breve introduc ao aos principais arquivos e a id eia b asica
do seu funcionamento.
10.1 Pr e-requisitos
Para congurar um domnio, que no nosso caso, ser a o domnio cursoXX, voc e precisar a de:
Um servidor com uma placa de rede congurada.
E importante que voc e certique-se de
que o nome da m aquina e o domnio pertencam ao domnio que est a sendo congurado;
Um domnio registrado (opcional); quando o servidor DNS for usado somente para uma
rede interna, n ao h a necessidade de que o domnio (.com.br) seja registrado.
10.2 Instalac ao
Para congurar um domnio, voc e precisar a usar dos pacotes bind e bind-utils e para ins-
tal a-los usaremos o seguinte comando:
[root@curso root]# apt-get install bind bind-utils
10.3 Congurac ao
Nesta sec ao ser ao exibidos os arquivos e diret orios que devem trabalhados, com a breve
explicac ao para cada um:
Opc ao Descric ao
43
CAP
computador do
Destinat ario
(MUA)
.
Servidor R
(MTA)
SMTP
.
Servidor D
(MTA)
POP/IMAP
A ser
sempre especicado depois do client code page.
Ex.: valid chars = a:
A e:
E :
I o:
O u:
U a:
A e:
E o:
O a:
A o:
O `a:
`
A `o:
`
O
15.4.4 Restric oes de acesso/mapeamento de usu arios
guest account - dene a conta local de usu ario que ser a mapeada quando um usu ario se conectar
sem senha (usu ario guest).
Ex.: guest account = visitante
invalid users - dene uma lista de usu arios que n ao ter ao acesso aos recursos do servidor ou
compartilhamento.
E seguro restringir o acesso samba a usu arios com grande poder no
sistema (como o root).
Ex.: invalid users = root
valid users - semelhante a opc ao invalid users mas permite que somente os usu arios especicados
tenham acesso ao sistema.
Ex.: valid users = jose
username map - especica um arquivo que faz o mapeamento entre nomes fornecidos por clien-
tes e nomes de contas locais.
Ex.: username map = /home/lista
Exemplo 15.4.1 Arquivo de mapeamento:
chico = "chico da silva"
nobody = root adm
samba = @smb-users
!chico = "chico da silva"
!samba = @smb-users
nobody = *
15.4.5 Nveis de autenticac ao
Dene o nvel de seguranca do servidor. Os seguintes valores s ao v alidos para o par ametro
security:
share - usada principalmente quando apenas a senha e enviada por compartilhamento acessado
para o servidor, caso muito tpico em sistemas Lan Manager e Windows for Workgroups.
Ex.: security = share
user - este e o padr ao. O usu ario precisa ter uma conta de usu ario no GNU/Linux para acessar
seus compartilhamentos. A mesma conta de usu ario/senha dever a ser usada no Windows
para acessar seus recursos ou realizado um mapeamento de nomes de usu arios.
Ex.: security = user
CAP
E um compartilhamento procurado pelo cliente Windows no login de um usu ario, para utiliz a-
lo deve-se ter no smb.conf os seguintes par ametros na sec ao global e o compartilhamento abaixo:
CAP
E um compartilhamento utilizado pelo cliente Windows para manter o mesmo perl em qual-
quer m aquina que ele se autentique na rede, para utiliz a-lo deve-se ter no smb.conf os seguintes
par ametros na sec ao global e o compartilhamento abaixo:
[global]
security = user
encrypt passwords = yes
domain logons = yes
logon drive = U:
logon path = \\%L\profiles\%U
logon home = \\%N\%u
preserve case = yes
short preserve case = yes
case sensitive = no
[profiles]
comment = Profile de %u
path = /home/profiles
CAP
`
As vezes, nenhuma os computadores com Windows, n ao conseguem fazer login no domnio,
mas adicionar as entradas das m aquinas presentes na rede no /etc/hosts ajuda.
127.0.0.1 localhost.localdomain localhost
10.10.XX.1 server01 server01
10.10.XX.20 desktop20 desktop20
10.10.XX.30 desktop30 desktop30
Com estas congurac oes, voc e est a pronto para usar seu PDC Linux.
15.13 Utilizando um cliente SAMBA Linux
Anteriormente viu-se como congurar um servidor SAMBA, de maneira que outros computa-
dores, sejam eles Linux ou Windows, pudessem ter acesso ao arquivos e impressoras nele contido.
No entanto tamb em e possvel congur a-lo de modo que ele seja um cliente para um servidor
Windows NT ou 9x. Para essas situac oes, e necess ario utilizar as ferramentas do cliente SAMBA,
mas especicamente o smbclient e smbmount.
15.13.1 Utilizando o smbclient
O programa smbclient e um cliente de acesso ` a servidores Windows/SAMBA com uma in-
terface de cliente FTP. Um exemplo do uso do smbclient e mostrado a seguir, onde estamos
acessando um computador chamado curso, que tem o seu disco rgido compartilhado com o nome
de docs.
[root@curso root]# smbclient //servidorxx/arquivos
Added interface ip=10.10.XX.1 bcast=10.10.XX.255 nmask=255.255.255.0
Password:
Domain=[CURSOXX] OS=[Windows NT 4.0] Server=[NT LAN MANAGER]
smb : \> ls
. D 0 Sat Dec 10 10:22:22 2004
.. D 0 Sat Dec 10 10:22:22 2004
TEXTO.DOC A 147024 Sat Dec 10 10:22:22 2004
ARQUIVO.DOC A 147024 Sat Dec 10 10:22:22 2004
CAP
rede interna
10.10.YY.0
.
Servidor XX
(150.165.251.XX)
.
Internet
.
Servidor YY
(150.165.251.YY)
\
_ _ PREROUTING
DNAT
Decis ao de
roteamento
\
_ _ POSTROUTING
SNAT
Processamento
Local
\
_ _ OUTPUT
DNAT
E um caso especial de SNAT, que s o deve ser utilizado para enderecos IP din amicos, como por
exemplo, nas conex oes atrav es de provedores.
No mascaramento, n ao e necess ario explicitar o endereco de origem: ser a utilizado o endereco
de origemda interface de sada do pacote, por em, o mais importante e que se o link cair, o endereco
de origem que estava sendo utilizado e descartado, dando lugar ao novo endereco de origem da
interface quando o link for restabelecido.
Exemplo 18.3.5 Por enquanto sem muitos detalhes, do mascaramento da rede interna, via mo-
dem.
[root@curso root]# iptables -t nat -A POSTROUTING -o ppp0
-j MASQUERADE
Exemplo 18.3.6 Para mascarar a nossa rede 10.10.XX.0, ou seja, a partir da execuc ao do co-
mando:
[root@curso root]# iptables -t nat -A POSTROUTING -o eth0
-j MASQUERADE
os nossos computadores internos com IP 10.10.XX.yy, j a poder ao usar a internet.
Observac ao 18.3.1 Lembre-se de vericar o arquivo /etc/sysctl.conf (ver captulo 17 p agina
76).
CAP
' `
_ _
FORWARD
Sada
' `
_ _
INPUT
Processamento
Local
(servidor)
' `
_ _
OUTPUT
1. Quando o pacote chega, pela placa de rede por exemplo, o kernel analisa o destino do pacote,
o chamado roteamento (routing).
2. Se ele e destinado a pr opria m aquina, o pacote desce no diagrama, indo para a chain INPUT.
Se ele passar pela chain INPUT, ent ao a m aquina recebe o pacote.
3. Depois, se o kernel n ao tem suporte a forwarding, ou n ao sabe como repassar (forward), o
pacote e descartado.
4. Se h a suporte a forwarding e o pacote e destinado a outra interface de rede (se existir outra),
o pacote vai para a chain FORWARD. Se ele for aceito (ACCEPT), ele ser a enviado.
5. Finalmente, um programa rodando na m aquina rewall pode enviar pacotes. Esses paco-
tes passam pela chain OUTPUT imediatamente, se ela aceitar o pacote, ele continua seu
caminho, caso contr arios ele e descartado.
Para denir o que e como ser a ltrado, utilizaremos os seguintes par ametros do iptables:
INPUT: o que pode entrar
OUTPUT: o que pode sair
FORWARD: o que pode passar
H a v arias formas de manipular regras dentro de uma chain:
Adicionar uma nova regra na chain: -A
Inserir uma nova regra em alguma posic ao da chain: -I
Substituir uma regra em alguma posic ao da chain: -R
Apagar uma regra em alguma posic ao da chain: -D
Apagar a primeira regra que associa (com alguma condic ao) numa chain: -D
CAP
E t ao simples assim. Agora e possvel acrescentar regras conforme descrito em todo o docu-
mento.
19.3.2 Apagando uma chain
Apagar uma chain e t ao simples quanto cri a-la, utilizando as opc oes -X ou --delete-chain.
[root@curso root]# iptables -X teste
H a uma s erie de restric oes ao se apagar uma chain: ela deve estar vazia (veja em esvaziando
uma chain, logo abaixo) e ela n ao deve ser alvo de NENHUMA regra.
Se uma chain n ao for especicada, todas as chains denidas pelo usu ario ser ao apagadas,
desde que seja possvel.
19.3.3 Esvaziando uma chain
H a uma forma muito simples de retirar todas as regras de uma chain, utilizando as opc oes -F
ou --flush.
[root@curso root]# iptables -F FORWARD
Se uma chain n ao for especicada, todas as chains ser ao esvaziadas.
19.3.4 Listando uma chain
Pode-se listar todas as regras de uma chain utilizando as opc oes -L ou list.
O valor refcnt listado para cada chain denida por usu ario e o n umero de regras que t em tal
chain como alvo (target). Este valor deve ser zero (e a chain deve estar vazia) antes que essa chain
possa ser apagada. Se o nome da chain e omitido, todas as chains s ao listadas, at e as vazias.
H a tr es opc oes que podem acompanhar -L.
-n (num erico) e muito util uma vez que previne que o iptables tente resolver os enderecos
IP, o que (se voc e utiliza DNS assim como a maioria das pessoas) causaria grandes atrasos
se o DNS n ao est a congurado corretamente, ou voc e est a ltrando requisic oes DNS. Essa
opc ao tamb em faz as portas TCP e UDP serem impressas como n umeros em vez de nomes.
CAP
E util zerar os contadores. Isso pode ser feito com a opc ao -Z ou --zero.
Exemplo 19.3.1 Considere os seguintes comandos:
[root@curso root]# iptables -L FORWARD
[root@curso root]# iptables -Z FORWARD
alguns pacotes passariam pelos comandos -L e -Z. Por isso, voc e pode utilizar -L e -Z em con-
junto, para zerar os contadores enquanto estes s ao lidos.
19.4 Especicac oes para ltragem
Foi visto o uso do -p para especicar o protocolo, e -s para especicar o endereco de origem,
mas existem outras opc oes que podem ser utilizadas para especicar outras caractersticas dos
pacotes. O que segue e uma explicac ao exaustiva de cada especicac ao:
Enderecos IP de origem e destino - -s, --source ou --src para origem e -d, --destination
ou --dst para destino.
Enderecos IP podem ser especicados em quatro formas diferentes.
A mais comum e utilizar o nome completo, como localhost ou www.meudominio.net. A
segunda e dizer o IP, como 127.0.0.1.
A terceira e a quarta formas permitem a especicac ao de um grupo de enderecos IP, como
10.10.10.0/24 ou 10.10.10.0/255.255.255.0.
Ambas especicam qualquer endereco IP de 10.10.10.0 at e 10.10.10.255; os dgitos
depois da / dizem quais partes do endereco IP s ao signicantes
3
. Para especicar qualquer
endereco IP pode-se utilizar /0
4
, conforme descrito abaixo:
[root@curso root]# iptables -A INPUT -s 0/0 -j DROP
Isso raramente e utilizado, uma vez que o efeito da regra acima e o mesmo que se n ao fosse
especicada nenhuma origem.
Invers ao - ! (negac ao)
Muitas ags, incluindo -s (ou --source) e -d (ou --destination) podem ter seus ar-
gumentos precedidos de ! (negac ao) para associar-se com enderecos DIFERENTES aos
passados ` a opc ao.
Exemplo 19.4.1 O -s ! localhost associa-se com qualquer pacote que n ao venha de
localhost.
3
/32 ou /255.255.255.255 e o padr ao (associando o endereco IP inteiro)
4
NOTA: -s 0/0 e redundante.
CAP
ENDICE A. AP
ENDICE 98
pico: Um editor bastante simples de usar, pois os principais comandos est ao colocados na
parte inferior do editor.
Para instal a-lo, basta usar o seguinte comando:
[root@curso root]# apt-get install pico
joe: Outro editor bastante simp atico, principalmente para aqueles com um pouco mais de
idade, que j a utilizou o editor WordStar, onde os comando s ao baseados nas teclas Ctrl+K.
Para instal a-lo, basta usar o seguinte comando:
[root@curso root]# apt-get install joe
emacs: Editor tamb em muito utilizado.
Para instal a-lo, basta usar o seguinte comando:
[root@curso root]# apt-get install emacs
A.2.1 Comandos b asicos
Teclas Descric ao
:help Ajuda para o vi.
i Inserir um texto, deve-se teclar esc ao terminar a digitac ao
teclas Movimentac ao dentro do texto.
:q Sair do Vi (o arquivo deve estar salvo).
:q! Sair do vi forcado sem salvar.
:wq Sair do vi salvando o arquivo que est a sendo editado.
:e nome Abrir o arquivo nome.
:w Salvar o Arquivo.
:w nome Salvar o arquivo corrente com o nome escolhido.
dd Apaga a linha corrente colocando-a na mem oria.
p Cola a ultima entrada colocada na mem oria.
:r nome Insere o arquivo nome no ponto onde est a o cursor.
/padr ao Procura padr ao em todo o texto corrente.
:u Desfaz a ultima ac ao.
A.3 VMware
O VMware da VMware, Inc. e um software realmente fant astico, do tipo que realmente
vale ` a pena testar
1
e dependendo do caso, at e compr a-lo
2
. A p agina ocial na internet e a:
http://www.vmware.com
Roda em v arios sistemas e cria m aquinas virtuais que simulam um PC completo dentro de
uma janela (ou em tela cheia), permitindo instalar praticamente qualquer sistema operacional para
a plataforma x86.
E possvel abrir v arias m aquinas virtuais simultaneamente e rod a-los lado a
lado, com v arias vers oes do Linux e Windows, BeOS, DOS e o que mais voc e tiver em m aos.
Essa facilidade permite a criac ao de redes heterog eneas com diversos sistemas operacionais o
que possibilita fazer testes em rede, sistemas, protec ao, simulac oes e outras coisinhas mais.
1
Na p agina ocial pode-se baixar uma vers ao para teste, com validade de 30 dias, para tanto, basta fazer o cadastro
2
Preco na internet U$ 189,00
AP
ENDICE A. AP
ENDICE 99
No nosso curso, utilizaremos a vers ao VMware Workstation 4.5 em um sistema com proces-
sador Intel Celeron 500 MHz, com 160 MB de mem oria RAM, HD de 4.0 GB e com o sistema
Linux.
A.3.1 Usando o VMware
Cada computador virtual e composto por arquivos e que portanto, caso tenha dado errado basta
simplesmente apag a-los.
Para criar um novo computador virtual basta clicar em File/New Virtual Machine... ou sim-
plesmente Ctrl+N, donde aparecer a uma janela de ajuda, para a instalac ao, que poder a ser tpica
(Typical) ou otimizada (Custom) de acordo com o desejado que e dado na sec ao 2.2 na p agina 12.
As opc oes ser ao dadas por:
Sistema: Linux
Vers ao: Other Linux 2.6x Kernel
Nome do computador virtual: Conectiva
Localizac ao: /home/linux/conectiva
Mem oria: 48 MB
Rede: Use bridged network - d a o acesso direto ` a rede na qual o computador est a ligado.
Adaptador de entrada/sada: Buslogic
Disco: Create a new virtual disk - para a criac ao de um HD virtual.
Tipo do HD virtual: IDE - o mais comum e mais barato no mercado.
Capacidade do HD: 0.7 GB - 700 MB e o suciente.
Arquivo do HD: hd.vmdk - o HD ser a um arquivo cujo o nome o usu ario escolhe.
Feito isso o computador virtual foi criado, agora falta instalar o CD-ROM, do qual iniciaremos
(boot) para a instalac ao do Conectiva.
Isto e feito clicando no CD-ROM, onde colocaremos a opc ao Use ISO image localizado em
/mnt/cds/cl10 cd1.iso.
Agora e s o clicar em Start virtual machine e esperar que o computador virtual seja ligago, com
uma BIOS e dando boot pelo CD-ROM, comecando a instalac ao (ver 2.3 p agina 12).
A.4 Discos e Partic oes
O Linux como todos os sistemas operacionais modernos tem suporte aos discos, sejam eles
xos ou removveis, mas a forma como os discos s ao tratados difere um pouco dos utilizados nos
sistemas Windows (95/98/2000/NT). Para ilustrar tais diferencas de maneira pr atica, ao nal desse
captulo ser a feito um estudo de caso com a adic ao de um disco rgido no RedHat/Linux . Para
que um disco seja usado no Linux eles precisam antes passar por um processo que inclui: parti-
cionamento, formatac ao, criac ao de um sistema de arquivos e montagem do sistema de arquivos,
cada um desses passos ser a explicado com detalhes a seguir.
AP
ENDICE A. AP
ENDICE 100
A.4.1 Particionamento
Um disco rgido pode ser dividido em partes menores chamadas de partic oes, onde cada
partic ao funciona como se fosse um outro pequeno disco rgido. Com essa id eia cada uma das
partic oes s ao independentes, isto permite por exemplo que os arquivos essenciais ao sistema sejam
separados dos arquivos dos usu arios, ou ter v arios sistemas operacionais no mesmo disco rgido
e como as partic oes s ao independente qualquer problema numa delas n ao afetar a, a princpio, as
demais. Dito isso sempre vem a quest ao: Quantas partic oes devo ter no disco rgido? A res-
posta e no mnimo uma e o n umero m aximo ca por conta do administrador. No caso de servidor
recomenda-se uma partic ao para raiz (esta e a unica que e obrigat oria), outra para a area de troca
(swap), uma para o /var (a area onde cam os mails e arquivos de log) e outra para o /usr (onde -
car ao a maioria dos programas), podendo haver ainda uma area reservada ao arquivos dos usu arios
(/home).
Cada disco rgido e referenciado por um arquivo no Linux, por exemplo: o primeiro disco
rgido IDE est a associado ao arquivo /dev/hda, o segundo ser a o /dev/hdb e assim por diante,
acontecendo o mesmo para os discos SCSI, onde o primeiro seria o /dev/sda. Como foi dito antes,
cada partic ao e como se fosse um pequeno disco rgido, portanto e razo avel que cada partic ao
tamb em tenha um arquivo associado, por isso a primeira partic ao do primeiro disco IDE est a
associada ao arquivo /dev/hda1, a segunda partic ao seria o /dev/hda2.
A.4.2 Formatac ao e Criac ao do Sistema de Arquivos
Ap os o processo de particionamento, segue-se a formatac ao onde todos os dados, caso existam,
ser ao apagados do disco rgido . Note que cada uma das partic oes criadas deve ser formatada.
O pr oximo passo e a criac ao, no disco, de um sistema de arquivos, mas antes de aprender como
se cria um sistema de arquivo (lesystem) no Linux e importante denir um sistema de arquivo
como sendo a maneira como o Sistema Operacional organiza os arquivos no disco, ou seja o
sistema operacional escreve no disco uma s erie de informac oes que ele mesmo modicar a e usar a
para saber onde os arquivos se encontram, para saber quanto de espaco existe numa determinada
partic ao, etc.
A criac ao de um sistema de arquivo e a escrita de tais informac oes no disco, que estava vazio
devido ao processo de formatac ao.
O Linux tem seu pr oprio sistema de arquivo (ext2), mas ele suporta muitos outros sistema de
arquivos tais como: vfat (Win95), msdos, hpfs (OS/2), ntfs (NT), nfs, iso9660 (cd-rom), etc.
A.4.3 Montagem do Sistema de Arquivos
A criac ao de um sistema de arquivo lhe garante que o sistema operacional pode e sabe como
gravar e ler os arquivos do disco rgido, mas para que isso possa ser efetivamente feito e preciso as-
sociar o sistema de arquivo do disco a um diret orio, processo este que damos o nome de montagem
do sistema de arquivo. Na verdade o que acontece e que com a montagem o conte udo da mdia
(os arquivo e diret orios), cam disponveis (visveis) abaixo deste diret orio, que e comumente
chamado de ponto de montagem.
A.4.4 Estudo de Caso
No caso de ser necess ario adicionar um segundo disco rgido IDE de 3.0 GB, a um computa-
dor com GNU/Linux j a instalado no primeiro disco rgido IDE, que conter a os arquivos de dois
usu arios chamados Chico e Zefa em partic oes diferentes. Este disco rgido cont em uma partic ao
FAT32 que ser a destruda. Am de melhorar a compreens ao, seguiremos os passos abaixo
1. O primeiro passo e o particionamento do HD, para isso utilizaremos um programa chamado
fdisk, e com ele iremos destruir a partic ao FAT32, e dividir o HD em duas partic oes (ext2)
iguais de 1.5 GB, onde cada uma conter a o home de um dos usu arios.
AP
ENDICE A. AP
ENDICE 101
[root@curso root]# fdisk /dev/hda
Command (m for help): p (listaremos a particoes existentes no HD)
Disk /dev/hda: 128 heads, 63 sectors, 781 cylinders
Units = cylinders of 8064 * 512 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 782 30208+ 83 FAT32 Win95
Comand (m for help): d (apagaremos a particao FAT32)
Partition number: 1
Comand (m for help): n (Iniciaremos a criacao da primeira particao)
First cylinder (1-782, default 782): (Digite apenas Enter para usar o default)
Using default value 1
Last cylinders or +size or +sizeM or sizeK: +1500M
O mesmo processo dever a ser repetido para a segunda partic ao e em seguida gravar as altera-
c oes da seguinte maneira:
Comand (m for help): w
2. Acabado o processo de particionamento ser a feita a criac ao do sistema de arquivos, atrav es
do comando mkfs (make lesystem). A opc ao -c ser a usada para checar as partic oes, pro-
curando por blocos defeituosos.
[root@curso root]# mkfs -c /dev/hdb1 ; mkfs -c /dev/hdb2
3. Agora ser a criado o ponto de montagem do sistema de arquivo, que equivale a criar os
diret orios sob os quais estes sistemas de arquivos poder ao ser acessados:
[root@curso root]# mkdir /home/chico ; mkdir /home/zefa
4. E nalmente faremos a montagem dos sistemas de arquivos atrav es do comando mount:
[root@curso root]# mount -t ext2 /dev/hda1 /home/chico
[root@curso root]# mount -t ext2 /dev/hda2 /home/zefa
Pronto, j a podemos usar o novo disco, mas do jeito que zemos at e agora teramos que a todo
reboot do computador fazer novamente a montagem dessas partic oes. Para que isso seja feito de
modo autom atico devemos adicionar as seguinte linha no arquivo /etc/fstab:
/dev/hdb1 /home/chico ext2 defaults 1 2
/dev/hdb2 /home/zefa ext2 defaults 1 2
Onde o primeiro campo representa o arquivo de dispositivo associado ao dispositivo fsico. O
segundo campo corresponde ao ponto de montagem. O terceiro e o tipo do sistema de arquivos.
O quarto comeca especicar as opc oes de montagem associadas ao sistema de arquivos (lesys-
tem), podendo ser especicada v arias opc oes desde que separadas por vrgula. A opc ao padr ao
corresponde a uma abreviac ao para as opc oes exibida na tabela abaixo.
Tipo Descric ao
rw Pode-se ler e escrever no sistema de arquivos.
AP
ENDICE A. AP
ENDICE 102
suid Os arquivos execut aveis com atributos set-user-id e set-group-id ter ao es-
tes atributos interpretados corretamente.
dev Os arquivos especiais (bloco ou caracter) que estiverem denidos no sis-
tema de arquivos n ao podem ser ignorados.
nouser Probe-se que usu arios comuns monte o sistema de arquivos.
auto O sistema de arquivos e montado no boot.
exec Os programas contidos podem ser executados.
async A escrita e leitura ao sistema de arquivos e assncrona; ou seja, ao se
modicar um arquivo, a atualizac ao n ao e imediata.
O quinto e sexto campos cont em informac oes associadas com a checagem do sistema de ar-
quivo.
A.5 Estrutura dos Diret orios
A estrutura dos sistemas de arquivos do Linux prev e um agrupamento que permite maior
organizac ao de dados, o que aumenta a funcionalidade do sistema. Os comandos est ao todos em
uma determinada area, todos os arquivos de dados em uma outra, documentac ao em uma terceira,
e assim por diante. Al em disso, o diret orio raiz geralmente n ao cont em nenhum arquivo, exceto,
em algumas distribuic oes, pela imagem de inicializac ao do sistema. Todos os outros arquivos
est ao em subdiret orios do raiz.
Veja a estrutura b asica de diret orios abaixo:
Diret orio Descric ao
/ chamado de diret orio raiz e especco de cada m aquina. Pode car tanto
em um disco fsico quanto na mem oria da m aquina ou em uma unidade
de rede.
E o diret orio principal, que cont em todos os arquivos e diret orios
do sistema.
/bin cont em o mnimo necess ario para funcionar e poder ser manuseado pelo
administrador. Ser ao necess arias ferramentas que se encontram em outros
diret orios para que a m aquina que operacional. Amaioria dos programas
possui o seu arquivo execut avel neste diret orio.
/dev e o local onde cam armazenadas as refer encias aos dispositivos pre-
sentes na m aquina, para o controle destes dispositivos. Esse diret orio
cont em apontadores para, por exemplo, o drive de disquetes, os discos
da m aquina, terminais virtuais, portas de acesso seriais e paralelas, etc.
Os controladores s ao automaticamente criados durante a instalac ao do
sistema e posteriormente podem ser criados atrav es do comando MAKE-
DEV.
/home cont em os diret orios pessoais dos usu arios e suas congurac oes.
/proc fornece informac oes sobre o kernel e sobre os processos que est ao ro-
dando no momento, al em de informac oes sobre a utilizac ao de alguns
dispositivos. Esse diret orio n ao ocupa espaco nenhum em disco e as
informac oes ali presentes s ao geradas apenas quando solicitadas.
/usr cont em comandos, bibliotecas, programas, p aginas de manual e outros
arquivos que n ao mudam mas que se fazem necess arios para a operac ao
normal do sistema.
/boot cont em informac oes para o gerenciador de inicializac ao do sistema.
E
aqui que normalmente ca o arquivo contendo o kernel da m aquina e
informac oes para o carregador do sistema operacional.
AP
ENDICE A. AP
ENDICE 103
/etc e um dos mais importantes diret orios da m aquina. Nele cam a maioria
dos arquivos de congurac ao e manipulac ao dos servicos essenciais ao
sistema, a maioria dos arquivos de congurac ao de acesso a rede e de
comunicac ao, arquivos de congurac ao do sistema de janelas X, arquivos
de congurac ao do idioma do sistema, de atualizac oes, enm, de muitas
funcionalidades da m aquina.
/lib cam as bibliotecas b asicas do sistema. Elas s ao compartilhadas por di-
versos programas, principalmente os que se encontram no diret orio raiz.
/var cont em arquivos que possuem dados vari aveis. Neste diret orio est ao ar-
quivos e diret orios de spool, arquivos de log, arquivos de congurac ao de
correio eletr onico, entre outros.
/sbin cont em ferramentas de interesse do superusu ario e que geralmente s ao
usadas por servicos b asicos da m aquina. Ficam nesse diret orio progra-
mas como os respons aveis pela carga de m odulos do kernel, ativac ao e
interrupc ao das interfaces de rede, manutenc ao dos sistemas de arquivos
e outras atividades.
/mnt utilizado para o acesso a dispositivos de mdia, como disquetes e CD-
ROM. Ele e utilizado como ponto de montagem para a maioria destes
dispositivos.
/tmp serve como reposit orio para arquivos tempor arios, sendo utilizado para
programas que s ao executados ap os a ativac ao do sistema, ou seja, este
diret orio serve como espaco extra para v arios programas e aplicac oes.
/opt alguns programas s ao projetados para serem instalados sob este diret orio.
Apesar das diferentes partes acima serem chamadas de diret orios, n ao h a obrigatoriedade que
elas estejam separadas. Elas podem estar facilmente no mesmo sistema de arquivos em uma
pequena m aquina utilizada por um unico usu ario que deseje mant e-las de uma forma mais simpli-
cada.
Alguns destes diret orios podem ser montados em suas pr oprias partic oes. Suponha que, por
quest oes de espaco ou seguranca, e desej avel que o diret orio dos usu arios esteja em uma outra
partic ao. Ent ao, e criada uma outra partic ao que ser a montada no diret orio /home e que ter a, por
exemplo, o mesmo sistema de arquivos utilizado pelo sistema de arquivos raiz. Essa separac ao
em um sistema de arquivos ` a parte e interessante pois facilita determinadas tarefas administrativas
como gerenciamento da quantidade de espaco que cada usu ario pode utilizar e a manutenc ao de
c opias de seguranca[4].
Portanto, a arvore de diret orios pode estar dividida ainda em diferentes sistemas de arquivos,
dependendo do tamanho de cada disco e de quanto espaco ser a alocado para cada nalidade.
A.6 Instalac ao e Atualizac ao de Programas com RPM
A instalac ao e atualizac ao de programas e uma tarefa que foi bastante facilitada com a introdu-
c ao dos sistema de gerenciamento de pacotes, no caso do Conectiva (RedHat Linux) e o RPM
3
.
Com esse sistema, os administradores n ao precisam mais fazer o download dos fontes dos pro-
gramas, depois descompact a-los, compil a-los e nalmente instal a-los. Agora tem-se num unico
arquivo o programa j a compilado pronto para ser instalado e o que e melhor, o sistema de geren-
ciamento checa se as depend encias para este pacote est ao instaladas, mant em um banco de dado
de todos os pacotes instalados e facilitam as desinstalac oes. Enm, os sistemas gerenciadores de
pacotes facilitam a vida de um administrador de sistemas, ainda mais quando o n umero de hosts a
se administrar e grande. O rpm e o comando usado para gerenciar os pacotes: instalar, desinstalar,
3
RedHat Package Manager Gerenciador de Pacotes RedHat)
AP
ENDICE A. AP
ENDICE 104
atualizar, etc.
Entendendo os Pacotes
Na maioria dos casos, um aplicativo n ao e formado apenas por um unico arquivo execut avel,
mas sim por um grande n umero de arquivos, como arquivos de traduc ao (potles), arquivos au-
xiliares
4
, arquivos de documentac ao e arquivos de congurac ao. Assim, e bastante complexa a
tarefa de instalac ao de um aplicativo manualmente; ainda mais difcil e a manutenc ao de seus
arquivos. Muitas vezes, uma nova vers ao do aplicativo torna alguns de seus arquivos obsoletos
e ent ao, o administrador do sistema tem de apagar o arquivo antigo para evitar um ac umulo de
arquivos in uteis.
Um pacote e um arquivo que, al em de conter os arquivos necess arios para a instalac ao de um
determinado aplicativo, cont em tamb em as informac oes necess arias para que o gerenciador de
pacotes possa instalar, manter e remover programas.
Um arquivo tpico de pacote se parece com o seguinte:
emacs-21.3-37707cl i386.rpm
Estes nomes de arquivos seguem um padr ao. Os nomes dos arquivos de pacotes RPM cont em
informac oes sobre a vers ao e a arquitetura ` as quais se destinam. No caso acima, o arquivo diz que
se trata do pacote do Emacs, vers ao 21.3, release 37707 no Conectiva Linux (cl) e que ele foi cri-
ado para plataforma Intel 386. Todos os arquivos de pacotes RPM t em o formado pacote-versao-
release.arquitetura.rpm, para permitir reconhecer-se visualmente o arquivo. Voc e poder a encon-
trar tamb em pacotes com nomes no formato pacote-versao.src.rpm. Esses pacotes n ao cont em os
bin arios de um aplicativo para serem instalados, mas sim os seus arquivos fontes e s ao (na grande
maioria dos casos) independentes de arquitetura. Ser a mostrado mais adiante como utilizar esse
tipo de pacote.
Apesar de v arias distribuic oes de Linux utilizarem pacotes do tipo RPM, isso n ao signica que
eles sejam iguais e que um pacote feito originalmente para uma distribuic ao ir a funcionar perfei-
tamente em outra. Al em dos arquivos que comp oem um determinado aplicativo, o pacote RPM
cont em tamb em informac oes de como instalar, em que local copiar os arquivos, como congurar,
etc. Essas informac oes adicionais podem ser diferentes de uma distribuic ao para outra, ent ao, para
evitar problemas, o administrador deve procurar sempre utilizar pacotes feitos especicamente
para a sua distribuic ao.
A.6.1 Pacotes e Depend encias
Uma das caractersticas de um sistema Linux e a modularizac ao de seus componentes e o uso
intensivo de bibliotecas compartilhadas, e isso se aplica tamb em aos pacotes de aplicativos.
E
bastante comum que um programador ao escrever um aplicativo utilize bibliotecas de func oes j a
existentes, mas n ao as inclua no pacote do seu aplicativo uma vez que, se todos zessem isso, seria
um tremendo desperdcio de espaco e de banda de rede no caso de se disponibilizar esse pacote na
Internet.
Assim, ao se instalar um determinado pacote, pode ser necess ario primeiro instalar um outro
pacote que contenha os pr e-requisitospara a sua instalac ao. Pode-se dizer ent ao que o pri-
meiro pacote depende, ou tem como depend encia o segundo pacote. Os pacotes RPM cont em a
informac ao das depend encias de cada aplicativo, e essa informac ao e utilizada pelo gerenciador
de pacotes ao se instalar um novo pacote no sistema, ou remover um pacote instalado. Caso a
instalac ao de um novo pacote requeira um outro, ou se tente remover um pacote instalado do qual
outro depende, o gerenciador de pacotes alertar a o administrador sobre isso.
Outra caracterstica do uso de pacotes e que podem haver aplicativos que se encontram dis-
tribudos por v arios pacotes. O XFree86 e um exemplo disto. As bibliotecas se encontram em um
pacote, os bin arios em outro, e os m odulos especcos a cada grupo de placas de vdeo em outros.
A organizac ao de um aplicativo em v arios pacotes permite que o administrador instale somente
4
Arquivos diversos como imagens de cones ou arquivos de dados.
AP
ENDICE A. AP
ENDICE 105
aqueles pacotes que s ao realmente necess arios, evitando ter que instalar ou fazer o download de
componentes que n ao ser ao utilizados.
A.6.2 O Banco de Dados RPM
Quando o administrador instala um pacote RPM, o gerenciador de pacotes n ao se limita a
instalar os arquivos, ele tamb em mant em um banco de dados que armazena informac oes sobre
todos os arquivos instalados. O banco de dados registra onde est ao os arquivos e quais vers oes
est ao instaladas, assim, quando o usu ario precisar instalar um pacote que necessite de um arquivo
especco, ele saber a se esse pacote j a existe ou precisa ser instalado. Ao remover um pacote, o
gerenciador consultar a o banco de dados, e assim obter a uma lista de quais arquivos que podem
ser removidos.
Em algumas situac oes especiais, o banco de dados pode car corrompido. Para isso, o gerenci-
ador de pacotes conta com func oes especiais para recuperar a integridade deste banco, como ser a
mostrado mais adiante.
A.6.3 O Gerenciador de Pacotes RPM
O RPM e um poderoso gerenciador de pacotes que permite ao administrador instalar, remover
e obter informac oes sobre pacotes. Com o RPM e possvel tamb em reparar um banco de dados
danicado, construir pacotes a partir de arquivos fonte, vericar a assinatura digital de pacotes
RPM, simular uma instalac ao, entre outras coisas. O RPM oferece uma grande gama de funcio-
nalidades, no entanto, ser ao mostrados aqui apenas as mais utilizadas, devendo o administrador
consultar a documentac ao do aplicativo para obter mais detalhes.
Instalando e Atualizando Pacotes RPM
Instalar pacotes utilizando utilizando o comando rpm e bastante simples. Abra um terminal e,
estando no mesmo diret orio onde est a o pacote que se deseja instalar, digite:
[root@curso root]# rpm -i pacote-versao.i386.rpm
A opc ao -i informa ao comando que voc e deseja instalar um pacote.
E recomendado que
o administrador utilize tamb em as opc oes v (verbose - modo detalhado) e h (inclui linhas de
progresso) ao instalar um pacote, ou seja, rpm -ivh mostra mais informac oes sobre o andamento
do processo.
Caso o pacote a ser instalado necessite que outro pacote tenha sido previamente instalado, o
RPM apresentar a uma mensagem de erro mostrando quais depend encias n ao foram atendidas para
a instalac ao deste pacote. Ser a necess ario ent ao instalar os pacotes indicados para poder ent ao
instalar com sucesso o pacote que originalmente se queria instalar. Ser a mostrado mais adiante
um modo de fazer isso automaticamente.
Caso se deseje atualizar um pacote j a instalado no sistema por uma vers ao mais nova em vez
do -i utilize a opc ao -U, assim o pacote mais antigo ser a removido, o pacote novo ser a instalado e
as congurac oes ser ao mantidas.
Removendo Pacotes RPM
Para remover um pacote com o rpm abra um terminal e digite:
[root@curso root]# rpm -e nome do pacote
Ao remover um pacote n ao e necess ario utilizar o nome do pacote completo, isto e, n ao utilize
nome-vers ao-release.rpm, mas sim apenas o nome do pacote. Utilize a vers ao apenas se existirem
duas vers oes do pacote instalado e se desejar remover uma delas.
Caso algum pacote instalado no sistema dependa do pacote que se deseja remover, o RPM
n ao far a a desinstalac ao e emitir a uma mensagem de erro informando que depend encias seriam
AP
ENDICE A. AP
ENDICE 106
quebradas com isto. Caso seja realmente necess ario, o administrador poder a utilizar a opc ao
nodeps para evitar que o RPM faca essa vericac ao, mas isso n ao e recomendado, pois poder a
danicar o sistema. Obtendo Mais Informac oes Sobre os Pacotes
O RPM pode ser utilizado para obter mais informac oes sobre os pacotes, tanto os j a instalados
quanto os n ao instalados. A forma b asica para o modo de consulta e rpm -q[opc ao] pacote. Ser a
mostrado a seguir, algumas das consultas mais comuns utilizando-se o RPM:
Obtendo informac oes de um pacote:
[root@curso root]# rpm -qi bash
Name : bash Relocations: (not relocatable)
Version : 2.05b Vendor: Conectiva
Release : 42313cl Architecture: i386
Group : Base License: GPL
Size : 772573
Install Date: Qui 04 Mar 2004 11:26:13 BRT
Build Date : Sex 26 Dez 2003 01:52:22 BRT
Build Host : mapi8.distro.conectiva
Source RPM : bash-2.05b-42313cl.src.rpm
Signature : (none)
Packager : Conectiva S.A. <security at conectiva.com.br>
URL : http://www.gnu.org/software/bash
Summary : GNU Bourne Again Shell (bash)
Description :
Bash e um interpretador de comandos compatvel com sh,
que executa comandos lidos da entrada padrao ou de um arquivo.
Bash tambem incorpora caractersticas uteis das shells Korn e
C (ksh e csh). O Bash tem sido desenvolvido para ser uma
implementacao compatvel com a especificacao IEEE Posix para
shells e ferramentas (IEEE Working Group 1003.2).
Para obter informac oes de um pacote que n ao est a instalado, utilize a opc ao -p, seguida do
nome do arquivo do pacote.
O administrador poder a utilizar o rpm para obter informac oes sobre as depend encias de um
pacote. Poder a descobrir que outros pacotes dependem do pacote que se quer consultar, bem como
descobrir de que pacotes o pacote consultado necessita. Os dois exemplos abaixo mostram como
descobrir essas duas informac oes, respectivamente:
[root@curso root]# rpm -q --whatrequires glib
gtk+-1.2.10-45456cl
xmms-1.2.10-52293cl
bonobo-1.0.22-46388cl
[root@curso root]# rpm -q --requires glib
/sbin/ldconfig
/sbin/ldconfig
libc.so.6
libc.so.6(GLIBC_2.0)
libc.so.6(GLIBC_2.1.2)
libc.so.6(GLIBC_2.1.3)
libc.so.6(GLIBC_2.3)
libdl.so.2
libdl.so.2(GLIBC_2.0)
libdl.so.2(GLIBC_2.1)
libpthread.so.0
libpthread.so.0(GLIBC_2.0)
AP
ENDICE A. AP
ENDICE 107
libpthread.so.0(GLIBC_2.3.2)
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rpmlib(ScriptletInterpreterArgs) <= 4.0.3-1
Para descobrir a qual pacote pertence um arquivo do sistema utilize a opc ao -qf arquivo, como
no exemplo abaixo:
[root@curso root]# rpm -qf /bin/bash
bash-2.05b-42313cl
E como um ultimo exemplo, veja como listar todos os pacotes instalados no sistema:
[root@curso root]# rpm -qa
[root@curso root]# rpm -qa | grep xfree
Recuperando o Banco de Dados RPM
Se por um motivo ou outro o banco de dados de pacotes corromper-se, o rpm pode recuper a-lo.
Caso seja necess ario fazer isso, basta utilizar o comando abaixo:
[root@curso root]# rpm --rebuilddb
Utilizando Pacotes de Fontes
Usualmente, al em dos pacotes que cont em os bin arios dos aplicativos, encontram-se tamb em
pacotes contendo os arquivos fontes
5
dos aplicativos. O pacote fonte, ao ser instalado, copia seus
arquivos para a o diret orio /usr/src/rpm, permitindo assim que os usu arios do sistema possam
estudar como determinado programa e feito e at e mesmo alter a-lo de acordo com sua vontade.
E possvel utilizar um pacote fonte para construir um pacote RPM contendo os arquivos
bin arios adequados ` a arquitetura da m aquina em que ele ser a utilizado. Se voc e possui o arquivo
fonte e deseja construir um pacote contendo os bin arios para que o programa possa efetivamente
ser instalado, utilize o comando rpm --rebuild pacote.src.rpm. O pacote ser a construdo e
colocado no diret orio /usr/src/rpm/RPMS/arquitetura, onde arquitetura e o processador para o qual
o pacote foi compilado, normalmente i386. Proceda ent ao a instalac ao como faria normalmente.
5
Aqueles que cont em o c odigo que deve ser compilado para gerar o programa em si.
Refer encias Bibliogr acas
[1] Ian Soboroff, Mail Filtering with Procmail, 22/10/1997.
[2] Peter Norton e Arthur Grifth, Guia Completo do Linux, Ed. Berkley, 2000;
[3] Bill Ball, Usando Linux, Ed. Campus, 1999;
[4] Robert Eckstein, David Collier-Brown, Peter Kelly, Using Samba, Ed. OReilly, Novembro
de 1999.
[5] CIPISGA, Guia Foca GNU/Linux, focalinux.cipsga.org.br
[6] Conectiva S.A.,Guia do Servidor Conectiva Linux, www.conectiva.com.br
[7] Conectiva S.A.,Guia R apido de Instalac ao e Uso, www.conectiva.com.br
[8] Conectiva S.A.,Guia do Usu ario do Conectiva Linux, www.conectiva.com.br
[9] ZAGO,Tuturial com todos os passos pra instalar e congurar o servidor Samba no CL10,
http://www.zago.eti.br
[10] Andr e Assad, Clstenes In acio, Eric Mello, Laudemiro Neto e S ergio Souza, Administrac ao
de Sistemas Linux, NTI-UFPB, 2002.
[11] Andr e Assad, Clstenes In acio e S ergio Souza, Linux como Servidor de Intranet, NTI-UFPB,
2002.
[12] S ergio Souza, Linux - Firewall e Roteador, NTI-UFPB, 2003.
[13] Nicolai Langfeldt, COMO FAZER DNS, br.tldp.org/projetos/howto, 1999.
108