160

Manual de Linux Para Iniciados

Embed Size (px)

DESCRIPTION

Copyright c 2001 Ricardo Silva e Rui Cabral. All rights reserved. Todo este documento foi escrito em LATEX e pode ser distribuido gratuitamente e/ou alterado.

Citation preview

Page 1: Manual de Linux Para Iniciados

Instituto Superior Polit�ecnico de ViseuEscola Superior de Tecnologia de Viseu

Manual de Linuxpara iniciados

Ricardo Jorge de Loureiro SilvaRui Jorge Martins Cabral

Page 2: Manual de Linux Para Iniciados

2

Copyright c 2001 Ricardo Silva e Rui Cabral.

All rights reserved.

Todo este documento foi escrito em LATEX

e pode ser distribu��do gratuitamente e/ou alterado.

Caso seja utilizada alguma das partes deste documento, os autores

agradecem que seja colocada uma referencia aos mesmos e tamb�em

que seja enviada uma informa�c~ao sobre a publica�c~ao e o autor da

mesma para [email protected] ou [email protected].

Page 3: Manual de Linux Para Iniciados

Acr�onimos

ARM Asynchronous Response Mode

AT&T American Telephone and Telegraph

AX.25 Amateur (Radio version of) X.25

BIOS Basic Input/Output SystemCPU Central Processing Unit

CSR Certi�cate Signing RequestDBM DataBase Management

DDP Datagram Delivery ProtocolDLL Dynamically Linked LibraryEISA Extended Industry Standard Architecture

FTP File Transfer ProtocolFSSTND Linux Filesystem StructureGE General Electrics

GIF Graphics Interchange Format

GNU GNU's Not Unix

GPL GNU General Public LicenseGUI Graphical User InterfaceIDE Integrated Drive Electronics

IEEE Institute of Electrical and Electronics EngineersIMP Interface Message Processor

IP Internet Protocol

IPV4 Internet Protocol Version 4

IPX Internetwork Packet Exchange [Novell]

ISA Industry Standard ArchitectureJPEG Joint Photographic Experts Grouplibnsl Name Services Library

libsocket Socket Services Library

LILO LInux LOader

MIPS Million of Instructions Per SecondMIT Massachusetts Institute of Technology

MTA Mail Transfer Agent

NetBEUI NetBIOS Extended User Interface [IBM]

NetBIOS Network Basic Iput/Output System

Page 4: Manual de Linux Para Iniciados

ii Acr�onimos

NFS Network File SystemNIS Network Information Service

NIS+ Network Information Service Plus

NYS Network Information Service Plus + Yellow Pages

PCI Peripheral Connection Interface

PID Process Identi�cation Number

PNG Portable Network GraphicsPPM Product Portfolio Management

POSIX Portable Operating System Interface eXchange

RAM Random Access Memory

RPC Remote Procedure Call

RPM RedHat Package ManagerRSA Rivest, Shamir, Adelman [public key encryption algorithm]

YP Yellow PagesTGZ Tarred and GZippedTCP/IP Transmission Control Protocol/Internet Protocol

TIFF Tagged Image File FormatUDP User Datagram Protocol

UUCP Unix-to-Unix Copy ProgramVLB VESA Local BusX.25 Packet Switch Control

XPM XPixMap

Page 5: Manual de Linux Para Iniciados

Conte�udo

Acr�onimos i

1 Hist�oria do Linux 1

1.1 O Unix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.2 O Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.2.1 Evolu�c~ao do Linux em n�umeros . . . . . . . . . . . . . . . . . . . . 8

1.2.2 Linux vs Sistemas Operativos Comerciais . . . . . . . . . . . . . . . 9

1.3 Distribui�c~oes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

1.3.1 Debian GNU/Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

1.3.2 Mandrake . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

1.3.3 Corel Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

1.3.4 Slackware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

1.3.5 Red Hat Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

1.3.6 SuSE Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

1.3.7 Caldera OpenLinux . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

1.3.8 GNUware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

1.3.9 WholeLinux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

1.3.10 Mini distribui�c~oes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

1.4 Ambientes Gr�a�cos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

1.4.1 KDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

1.4.2 Gnome . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

1.4.3 Window Maker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

1.4.4 AfterStep . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

2 Instala�c~ao do Red Hat Linux 7.1 25

2.1 Escolha da l��ngua . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

2.2 Con�gura�c~ao do teclado . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

2.3 Con�gura�c~ao do rato . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

2.4 Bem vindo ao Red Hat Linux . . . . . . . . . . . . . . . . . . . . . . . . . 27

2.5 Op�c~oes de instala�c~ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

2.6 Particionamento autom�atico . . . . . . . . . . . . . . . . . . . . . . . . . . 28

2.7 Particionando o disco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

2.7.1 Vari�aveis das parti�c~oes . . . . . . . . . . . . . . . . . . . . . . . . . 29

Page 6: Manual de Linux Para Iniciados

iv Conte�udo

2.7.2 Esquema recomendado de particionamento . . . . . . . . . . . . . . 30

2.7.3 Problemas a adicionar uma parti�c~ao . . . . . . . . . . . . . . . . . . 31

2.7.4 Caracter��sticas do disco . . . . . . . . . . . . . . . . . . . . . . . . 31

2.7.5 Op�c~oes do Disk Druid . . . . . . . . . . . . . . . . . . . . . . . . . 31

2.7.6 Adicionar parti�c~oes . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

2.7.7 Editar parti�c~oes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

2.7.8 Apagar uma parti�c~ao . . . . . . . . . . . . . . . . . . . . . . . . . . 33

2.8 Particionando com o Fdisk . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

2.9 Formatar parti�c~oes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

2.10 Instalar o LILO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

2.11 Con�gura�c~ao da rede . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

2.12 Con�gura�c~ao do �rewall . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

2.13 Con�gura�c~ao do fuso hor�ario . . . . . . . . . . . . . . . . . . . . . . . . . . 36

2.14 Selec�c~ao da(s) lingua(s) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

2.15 Con�gura�c~ao de contas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

2.15.1 De�nindo a password do root . . . . . . . . . . . . . . . . . . . . . 38

2.15.2 De�nir contas para utilizadores . . . . . . . . . . . . . . . . . . . . 39

2.16 Con�gura�c~ao de autentica�c~oes . . . . . . . . . . . . . . . . . . . . . . . . . 39

2.17 Escolha dos grupos de pacotes . . . . . . . . . . . . . . . . . . . . . . . . . 40

2.17.1 Seleccionar pacotes individuais . . . . . . . . . . . . . . . . . . . . . 41

2.17.2 Dependencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

2.18 Con�gura�c~ao da componente gr�a�ca . . . . . . . . . . . . . . . . . . . . . . 42

2.18.1 Con�gurar a placa de video . . . . . . . . . . . . . . . . . . . . . . 42

2.18.2 Con�gurar o monitor . . . . . . . . . . . . . . . . . . . . . . . . . . 43

2.18.3 Con�gura�c~ao pessoal . . . . . . . . . . . . . . . . . . . . . . . . . . 43

2.19 Prepara�c~ao para instalar . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

2.20 Instalando os pacotes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

2.21 Cria�c~ao de uma disquete de arranque . . . . . . . . . . . . . . . . . . . . . 44

2.22 Instala�c~ao terminada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

3 Estrutura dos direct�orios do Linux 47

3.1 O sistema de �cheiros raiz . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

3.2 O direct�orio /etc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

3.3 O direct�orio /dev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

3.4 O sistema de �cheiros /usr . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

3.5 O sistema de �cheiros /var . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

3.6 O sistema de �cheiros /proc . . . . . . . . . . . . . . . . . . . . . . . . . . 59

4 Conceitos b�asicos 63

4.1 A Shell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

4.2 Comandos b�asicos do Linux . . . . . . . . . . . . . . . . . . . . . . . . . . 65

4.2.1 Comandos e atalhos essenciais . . . . . . . . . . . . . . . . . . . . . 65

4.2.2 Comandos comuns de Informa�c~ao do Sistema . . . . . . . . . . . . 69

Page 7: Manual de Linux Para Iniciados

Conte�udo v

4.2.3 Opera�c~oes b�asicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

4.2.4 Controlo de processos . . . . . . . . . . . . . . . . . . . . . . . . . . 80

4.2.5 Comandos b�asicos de administra�c~ao . . . . . . . . . . . . . . . . . . 82

4.2.6 Detalhes sobre montagem (mounting) . . . . . . . . . . . . . . . . . 87

4.2.7 Ferramentas de gest~ao de rede . . . . . . . . . . . . . . . . . . . . . 87

4.3 Instalar o X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

4.4 Criar utilizadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

4.5 Con�gurar uma impressora . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

5 Kernel 95

5.1 Construir um Kernel modularizado . . . . . . . . . . . . . . . . . . . . . . 95

5.2 Criar uma imagem do initrd . . . . . . . . . . . . . . . . . . . . . . . . . . 100

5.3 Construir um Kernel monol��tico . . . . . . . . . . . . . . . . . . . . . . . . 100

6 Servi�cos 101

6.1 Automount . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101

6.1.1 Tipos de automontagem . . . . . . . . . . . . . . . . . . . . . . . . 101

6.1.2 Instala�c~ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

6.1.3 Con�gura�c~ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

6.2 NFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

6.2.1 Montar um Servidor de NFS . . . . . . . . . . . . . . . . . . . . . . 104

6.2.1.1 O portmapper . . . . . . . . . . . . . . . . . . . . . . . . 104

6.2.1.2 Mountd e o nfsd . . . . . . . . . . . . . . . . . . . . . . . 104

6.2.2 Montar o Cliente de NFS . . . . . . . . . . . . . . . . . . . . . . . . 105

6.2.2.1 Optimizar o NFS . . . . . . . . . . . . . . . . . . . . . . . 106

6.3 NIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107

6.3.1 NIS ou NIS+? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108

6.3.2 Como trabalhar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108

6.3.3 O que �e necess�ario para con�gurar o NIS? . . . . . . . . . . . . . . 109

6.3.3.1 O RPC Portmapper . . . . . . . . . . . . . . . . . . . . . 109

6.3.3.2 Determinar se se �e um Servidor, Escravo ou Cliente . . . . 109

6.3.3.3 O Software . . . . . . . . . . . . . . . . . . . . . . . . . . 110

6.3.3.4 Montar um Cliente de NIS que utiliza o NIS Tradicional . 110

6.3.4 O que �e preciso para montar o NYS? . . . . . . . . . . . . . . . . . 112

6.3.4.1 Determinar se se �e um Servidor, Escravo ou Cliente. . . . 112

6.3.5 O Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

6.3.6 Con�gurar um Cliente de NYS que usa o NYS . . . . . . . . . . . . 113

6.3.7 O Ficheiro nsswitch.conf . . . . . . . . . . . . . . . . . . . . . . . . 113

6.3.8 Con�gurar um Servidor de NIS . . . . . . . . . . . . . . . . . . . . 114

6.3.8.1 O Programa ypserv do Servidor . . . . . . . . . . . . . . . 114

6.3.8.2 O programa do Servidor yps . . . . . . . . . . . . . . . . . 115

6.3.8.3 O programa yppasswdd . . . . . . . . . . . . . . . . . . . 115

6.3.9 Veri�car a instala�c~ao do NIS/NYS . . . . . . . . . . . . . . . . . . 115

Page 8: Manual de Linux Para Iniciados

vi Conte�udo

6.4 Samba . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

6.4.1 Instala�c~ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117

6.4.2 Con�gura�c~ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117

6.5 Sendmail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

6.5.1 Principais vantagens . . . . . . . . . . . . . . . . . . . . . . . . . . 126

6.5.2 Exemplos de con�gura�c~ao do Servidor . . . . . . . . . . . . . . . . 127

6.5.3 Con�gura�c~ao do servi�co . . . . . . . . . . . . . . . . . . . . . . . . 128

6.5.4 Outros Servidores de Mail . . . . . . . . . . . . . . . . . . . . . . . 130

6.6 Apache+SSL+PHP4 com a Interface de Webmail IMP . . . . . . . . . . . 131

6.6.1 Instala�c~ao do Apache com PHP e Mod-SSL . . . . . . . . . . . . . 131

6.6.2 Criar certi�cado para o Servidor . . . . . . . . . . . . . . . . . . . . 136

6.6.3 Criar certi�cados manualmente . . . . . . . . . . . . . . . . . . . . 136

6.7 FTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138

6.7.1 Controlar o acesso aos servi�cos . . . . . . . . . . . . . . . . . . . . . 138

6.7.2 FTP An�onimo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138

6.8 DNS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139

6.8.1 Con�gura�c~ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140

6.8.2 Arrancar o named . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143

6.8.3 Resolvers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143

Page 9: Manual de Linux Para Iniciados

Lista de Tabelas

1.1 Comparativo das principais caracter��sticas . . . . . . . . . . . . . . . . . . 10

1.2 Filesystems suportados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

1.3 Aplica�c~oes suportadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

6.1 Vari�aveis dos parametros gerais do smb.conf . . . . . . . . . . . . . . . . . 125

Page 10: Manual de Linux Para Iniciados
Page 11: Manual de Linux Para Iniciados

Lista de Figuras

1.1 Linus Torvalds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

1.2 Linux Pinguim - TUX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

1.3 Logotipo do Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

1.4 Logotipo do Mandrake . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

1.5 Logotipo do Corel Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

1.6 Logotipo do Slackware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

1.7 Logotipo do Red Hat Linux . . . . . . . . . . . . . . . . . . . . . . . . . . 15

1.8 Logotipo do Suse Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

1.9 Logotipo do Caldera OpenLinux . . . . . . . . . . . . . . . . . . . . . . . . 16

1.10 Logotipo do GNUware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

1.11 Logotipo do WholeLinux . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

1.12 Screenshot do KDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

1.13 Screenshot do GNOME . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

1.14 Screenshot do Window Maker . . . . . . . . . . . . . . . . . . . . . . . . . 23

1.15 Screenshot do AfterStep . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

2.1 Escolha da l��ngua . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

2.2 Con�gura�c~ao do teclado . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

2.3 Con�gura�c~ao do rato . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

2.4 Op�c~oes de con�gura�c~ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

2.5 Particionamento autom�atico . . . . . . . . . . . . . . . . . . . . . . . . . . 29

2.6 Particionando o disco com o Disk Druid . . . . . . . . . . . . . . . . . . . 30

2.7 Escolher as parti�c~oes a formatar . . . . . . . . . . . . . . . . . . . . . . . . 34

2.8 Instalar o LILO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

2.9 Con�gura�c~ao da rede . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

2.10 Con�gura�c~ao do �rewall . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

2.11 Con�gura�c~ao do fuso hor�ario . . . . . . . . . . . . . . . . . . . . . . . . . . 37

2.12 Con�gura�c~ao da(s) lingua(s) . . . . . . . . . . . . . . . . . . . . . . . . . . 37

2.13 Con�gura�c~ao de contas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

2.14 Con�gura�c~ao de autentica�c~oes . . . . . . . . . . . . . . . . . . . . . . . . . 39

2.15 Escolha de grupos de pacotes . . . . . . . . . . . . . . . . . . . . . . . . . 40

2.16 Escolha de pacotes individuais . . . . . . . . . . . . . . . . . . . . . . . . . 41

2.17 Dependencias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

2.18 Con�gura�c~ao da placa gr�a�ca . . . . . . . . . . . . . . . . . . . . . . . . . 42

Page 12: Manual de Linux Para Iniciados

x Lista de Figuras

2.19 Con�gura�c~ao do monitor . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

2.20 Con�gura�c~ao do X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

2.21 Instala�c~ao dos pacotes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

2.22 Disquete de arranque . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

3.1 Partes da �arvore de direct�orios . . . . . . . . . . . . . . . . . . . . . . . . . 48

Page 13: Manual de Linux Para Iniciados

Cap��tulo 1

Hist�oria do Linux

O nome Linux surgiu da jun�c~ao de Linus com Unix. Linus vem de Linus Torvalds, criador do

embri~ao do Unix e uma das �guras mais importantes em termos de cria�c~ao e convergencia

dos esfor�cos do sistema, mas falaremos dele mais adiante. Para j�a fazemos uma descri�c~ao

do que �e o Unix e qual foi o seu desenvolvimento ao longo do tempo.

1.1 O Unix

A origem do Unix tem liga�c~ao com o Sistema Operativo Multics, projectado em meados

dos anos 60. Este projecto foi realizado pelo Massachusetts Institute of Technology (MIT),

pela General Eletric (GE), pelos Laborat�orios Bell (Bell Labs) e pela American Telephone

and Telegraph (AT&T). A ideia era que o Multics tivesse caracter��sticas de tempo parti-

lhado, sendo o sistema mais arrojado da �epoca. Em 1969, j�a existia uma vers~ao primitiva

de tal sistema a correr num computador GE645.

Ora tempo partilhado �e o mesmo que dizer que v�arios utilizadores podem partilhar os

mesmos recursos de uma mesma m�aquina. Antigamente, o que existia eram v�arios ter-

minais que davam acesso a m�aquinas poderosas que prestavam servi�cos a este, havia pois

uma grande centraliza�c~ao de opera�c~oes.

Ken Thompson era um pesquisador do Multics e trabalhava na Bell Labs. Mesmo quando

essa empresa se resolveu retirar do projecto, ele continuou os seus estudos no novo sis-

tema operativo, n~ao no sistema original em toda a sua plenitude, mas sim em criar algo

mais pequeno que conservasse as ideias b�asicas com dimens~ao proporcinal �a sua empresa.

Come�ca-se assim a saga do mundo Unix. Quem o baptizou foi Brian Kernighan, tamb�em

pesquisador da Bell Labs. O sistema foi lan�cado com a ideia inicial de proporcionar um

ambiente uni�cado de programa�c~ao e desenvolvimento.

Page 14: Manual de Linux Para Iniciados

2 Cap��tulo 1. Hist�oria do Linux

Em 1973, Dennis Ritchie, outro pesquisador da Bell Labs, reescreveu todo sistema para

uma linguagem de alto n��vel, chamada C (desenvolvida por ele), para um PDP-11 (com-

putador muito popular na �epoca). A situa�c~ao de ter um sistema escrito em linguagem de

alto n��vel foi ��mpar e pode ter sido um dos motivos da aceita�c~ao do sistema por parte dos

utilizadores externos �a Bell.

No per��odo de 1977 a 1981, a AT&T mexeu no sistema, fazendo algumas modi�ca�c~oes

particulares e lan�cou o System III. Em 1983, ap�os diversas modi�ca�c~oes, novidades e opti-

miza�c~oes do sistema, foi lan�cado o famoso Unix System V, comercial. Hoje, esse sistema �e

parte do padr~ao internacional no mercado Unix, sendo comercializado por diversas empre-

sas de grande porte que necessitam de tudo que um sistema operativo robusto como esse

pode oferecer.

O Unix �e comercializado por diversas empresas de renome internacional, tais como IBM,

AT&T, Hewlett-Packard, DEC, Data General, Cray Research, Philips, Sun, Olivetti etc.�E o sistema operativo com mais longevidade de todo o mundo da inform�atica e at�e hoje �e

o sistema operativo para quem precisa de fazer trabalho mais exigente e complexo.

N~ao �e utilizado por muitas empresas porque �e comercial e custa algumas dezenas de mi-

lhares de contos, al�em disso �e fechado, n~ao permitindo personaliza�c~oes ou altera�c~oes de

con�gura�c~ao. Logo, quem pode pagar por um sistema deste �e quem realmente precisa dele

tal como �e.

1.2 O Linux

Em Agosto de 1991, Linus Torvalds escrevia assim no newsgroup comp.os.minix:

Hello everybody out there using minix - i'm doing a (free) operating system (just

a hobby, won't be big and professional like gnu) for 386(486) AT clones.

Figura 1.1: Linus Torvalds

Page 15: Manual de Linux Para Iniciados

1.2. O Linux 3

O Minix �e um clone do Unix, gr�atis, cujo c�odigo fonte est�a dispon��vel. Foi feito com

o intuito estritamente educacional, para pessoas em geral que querem correr no seu com-

putador um sistema compat��vel com o Unix e aprender como �e que o sistema operativo

funciona por dentro. Vale a pena frisar que ele foi escrito do zero e apesar de ser um clone

do Unix n~ao cont�em nenhum c�odigo da AT&T e por isso pode ser distribuido gratuitamente.

Linus Torvalds interessou-se bastante pelo Minix e decidiu desenvolver um sistema mais

poderoso que as limita�c~oes e pretens~oes do Minix cujas caracter��sticas b�asicas s~ao:

� Ambiente de multiprograma�c~ao completo;

� Funciona em plataformas 386, 486 e Pentium;

� Suporte para mem�oria extendida acima dos 16Mb no 386 e 4GB nos sucessores;

� Suporte a portas s�erie RS232 com emula�c~ao de terminal, kermit, zmodem, etc.;

� Possibilidade de 3 utilizadores trabalharem simultaneamente na mesma m�aquina;

� C�odigo fonte completo escrito em C totalmente dispon��vel (sistema operativo, uti-

lit�arios, bibliotecas etc.);

� Compilador compat��vel ANSI C;

� Shell similar funcionalmente ao Bourne-Again Shell1;

� Suporte a redes TCP/IP;

� V�arios editores de texto (emacs, vi, ex, ed), utilit�arios (cat, cp, ed, grep, kermit,

ls, make, sort), bibliotecas (atoi, fork, malloc, read, stdio), dicion�arios e p�aginas de

manual online.

Aqui j�a se come�cam a de�nir as semelhan�cas com as potencialidades do Linux.

Contudo, o Linux al�em de ser completamente livre �e uma re-implementa�c~ao das especi-

�ca�c~oes POSIX (padroniza�c~ao do IEEE - Institute of Electrical and Electronics Engineers)

para sistemas operativos, com extens~oes System V e BSD.

Isto de modo pr�atico quer dizer que o Linux parece Unix, mas n~ao vem do sitio, uma

vez que foi escrito de uma outra fonte que n~ao a do Unix). Est�a dispon��vel tanto em

bin�arios (execut�aveis, j�a prontos para serem usados) como em c�odigo fonte (para quem

desejar compil�a-los).

1falado a seguir no ponto 4.1 na p�agina 63

Page 16: Manual de Linux Para Iniciados

4 Cap��tulo 1. Hist�oria do Linux

As caracter��sticas mais fortes s~ao:

� Multi-tarefa Real

V�arios programas podem ser executados ao mesmo tempo independente-

mente (ou n~ao), com �areas de mem�oria protegidas umas das outras. O que

isso implica �e que h�a uma redu�c~ao muito grande de bloqueios do sistema

pois caso um programa bloqueie n~ao afecta a execu�c~ao dos outros e al�em

disso n~ao compromete a estabilidade de todo o sistema.

� Multi-utilizador

A mesma m�aquina pode estar a ser utilizada por v�arios utilizadores ao

mesmo tempo, o que pode ser �util para m�aquinas em redes ou m�aquinas

que s~ao usadas por mais que uma pessoa.

� Multi-processamento

Pode-se usar mais de um processador na mesma m�aquina e consequente-

mente aumentar bastante a performance de maneira e�ciente e est�avel.

� Leitura de �cheiros s�o quando necess�ario

O sistema le do disco apenas o que est�a a ser utilizado pelo programa,

n~ao sobregarregando o processamento com outros programas e aplica�c~oes

f�uteis.

� Mem�oria Virtual (virtual memory)

Se um programa precisar de mais espa�co em mem�oria e o computador

estiver com os seus recursos saturados (utiliza�c~ao m�axima dos recursos da

m�aquina), o sistema operativo utilizar�a para o programa o espa�co livre

no disco r��gido como uma extens~ao da mem�oria RAM, emulando ser uma

continua�c~ao dela.

� Suporte a v�arios sistemas de �cheiros

Gra�cas a esta caracter��stica podemos ver e/ou gravar numa s�erie de siste-

mas de �cheiros de m�ultiplos sistemas operativos.

� Suporte avan�cado do protocolo TCP/IP e diversos protocolos (IPv4, IPv6,

AX.25, X.25, IPX, DDP (Appletalk), NetBEUI)

O TCP/IP e o IP (IPv4) s~ao alguns dos protocolos de rede utilizados na

Internet. O Linux suporta-os da forma mais e�ciente que os outros sistemas

operativos. O Linux pode ser um servidor de www, ftp, dns, base de dados

ou qualquer outro servi�co sem nenhuma di�culdade.

Page 17: Manual de Linux Para Iniciados

1.2. O Linux 5

� C�odigo fonte dispon��vel gratuitamente

No caso dos programadores ou somente nos interessados em estudar siste-

mas operativos �e s�o abrir o editor de textos preferido e come�car a estudar

o c�odigo fonte.

� Distribu��do sob a licen�ca GNU

Permite a instala�c~ao gratuita em quantas m�aquinas quisermos e tamb�em

garante a manuten�c~ao do c�odigo fonte.

� Multi-Plataforma

O Linux corre numa grande quantidade de plataformas, podemos citar

algumas nas quais j�a funciona ou est�a a ser implementado:

{ PCs 386/486/Pentium e superiores com suporte a ISA, EISA, PCI,

VLB (funciona em todas);

{ Motorola 680x0 (alguns Amigas, Ataris e VME);

{ DEC Alpha;

{ Sun Sparcs (funciona, Sun4c e Sun4m);

{ PowerPC;

{ MIPS and ARM.

Pensando em tudo o que foi dito anteriormente �camos com ideia de que o Linux �e um

sistema operativo di�cil de utilizar mas isso n~ao �e verdade pois muitas das coisas referidas

anteriormente podem ser ignoradas pois o seu objectivo era apenas de descrever o apareci-

mento do Linux e as suas caracteristicas t�ecnicas. Saber isso tudo �e �util a t��tulo de cultura

geral para aqueles que n~ao trabalham com a inform�atica. Agora, para o utilizador comum

que utiliza o computador para:

� Usar uma folha de c�alculo;

� Escrever alguns textos;

� Fazer alguns desenhos;

� Ver algumas imagens e modi�c�a-las;

� Navegar na Web;

� Gravar programas por ftp;

� Ouvir m�usica (mp3, cd);

� Ver v��deos em tempo real;

Page 18: Manual de Linux Para Iniciados

6 Cap��tulo 1. Hist�oria do Linux

� Usar um programa de chat (irc, icq).

Entre muitas outras tarefas comuns, pode e deve-se utilizar o Linux. Mas se essas opera�c~oes

podem ser feitas com o Windows e com as suas aplica�c~oes porque mudar para o Linux?

Por uma raz~ao muito simples, �e um sistema operativo:

� mais r�apido que qualquer outro dispon��vel no mercado;

� gratuito;

� tem diversos aplicativos gratuitos;

� suporte t�ecnico muito e�ciente;

� seguro;

� suporte a rede nativo;

� ambiente gr�a�co avan�cado.

Para comprovar a sua rapidez temos duas formas: ou utilizando-o, ou medindo. O Linux

foi um sistema projectado de tal forma que optou por requesitos como qualidade t�ecnica e

performance em rela�c~ao a outras caracter��sticas.

Ser totalmente gratuito parece algo estranho, mas n~ao �e. O objectivo do Linus quando

criou o sistema n~ao era ganhar dinheiro mas sim fazer para seu pr�oprio uso e satisfa�c~ao

pessoal um sistema que fosse bom e pudesse atender a todas suas necessidades. O estilo

de desenvolvimento que foi adoptado foi o de colabora�c~ao colectiva.

�E mais ou menos como um trabalho no caos, s�o que existe uma organiza�c~ao no meio

desse ambiente que parece confuso para quem est�a de fora. Milhares de pessoas contri-

buem gratuitamente com o desenvolvimento do Linux pelo prazer de ajudar a ter um

sistema melhor. Este modelo n~ao se tornou ine�ciente por uma nova forma de se lidar com

o desenvolvimento de software, juntando esfor�cos, fazendo da comunidade parte integrante

e imprescind��vel para sua realiza�c~ao.

Apesar da democracia no processo de desenvolvimento, em cada �area existe um elemento

aglutinador, respons�avel por coordenar e garantir que os esfor�cos est~ao a ir pelo caminho

desejado pela maioria. As decis~oes s~ao t�ecnicas. Por exemplo, na �area do Kernel, ou n�ucleo

do sistema, quem coordena �e o pr�oprio Linus, que analisa e o�cializa cada altera�c~ao pro-

posta.

Juridicamente falando, o Linux est�a sob uma licen�ca de uso chamada GPL. Este tipo de

licen�ca permite que qualquer um possa usar indeterminadamente os programas que est~ao

Page 19: Manual de Linux Para Iniciados

1.2. O Linux 7

sobre ela com o compromisso apenas de n~ao tornar os programas fechados e comercializados.

De forma pr�atica, para o utilizador dom�estico, o facto de ser livre signi�ca que n~ao precisa

se preocupar com a pirataria. Tudo que ele faz �e legal: pode usar, distribuir, copiar, mo-

di�car, fazer o que quiser que estar�a sempre dentro dos limites da lei. E se isto acontece

com o utilizador dom�estico, a n��vel empresarial as vantagens s~ao ainda maiores.

Existem hoje em dia diversos aplicativos gratuitos criados e j�a operacionais para Linux.

Praticamente todas as tarefas imagin�aveis j�a tem software para Linux, totalmente gratuito.

Existem pacotes de aplicativos similares ou superiores aos de outras plataformas, com

folhas de c�alculo, editor de textos, gerador de html, agenda electr�onica entre outras coisas

(podemos citar o StarOÆce, Word Perfect, KoÆce). Para fazer desenhos e modi�car ima-

gens tamb�em existem diversos aplicativos utilizados pelos maiores webmasters/designers

do mundo (alguns exemplos s~ao o GIMP, Blender, etc.). Para navegar na Web existem

v�arios browsers dispon��veis com muitos dos plugins mais divulgados (como o Netscape,

Opera, Lynx). Para gravar �cheiros por ftp, ouvir m�usica, etc, e tudo com o c�odigo fonte

testado e aprovado por milhares de pessoas.

O ambiente gr�a�co �e algo que tamb�em merece destaque. Um mito refere que o Linux

�e um ecr~a preto com um cursor a piscar. Realmente �e verdade mas s�o para quem desejar

utilizar a consola, pois al�em disso tamb�em tem ambientes gr�a�cos com janelas, bot~oes,

menus, cores, etc, mas os seus ambientes gr�a�cos ser~ao abordados mais adiante no ponto

1.4 na p�agina 19.

Figura 1.2: Linux Pinguim - TUX

O s��mbolo o�cial do Linux �e o pinguim, que foi escolhido por Linus Torvalds para

representar a imagem que se associa com o sistema operativo por si criado e por ser um

animal que ele gostava. Talvez as baixas temperaturas da Finlandia tenham ajudado na

escolha...

Page 20: Manual de Linux Para Iniciados

8 Cap��tulo 1. Hist�oria do Linux

1.2.1 Evolu�c~ao do Linux em n�umeros

Para terminar este capitulo da hist�oria do Linux deixamos aqui alguns dos n�umeros da

evolu�c~ao deste sistema operativo:

� 1991

Utilizadores: 1

Tamanho: 10 000 linhas de c�odigo

Vers~ao: 0.01

Linus Torvalds, 21 anos, consegue sozinho fazer um sistema operativo a que

chama Linux (Lyn - ucks). Depois de anunciar num f�orum de discuss~ao

da Internet ele p~oe o programa �a disposi�c~ao de quem o quiser copiar. Dez

pessoas fazem download do programa e cinco respondem com a repara�c~ao

de bugs, melhorias de c�odigo e novas aplica�c~oes. Em dezembro mais de 100

pessoas de todo o mundo juntam-se em mailing lists e newsgroups sobre

Linux.

� 1992

Utilizadores: 1 000

Vers~ao: 0.96

Tamanho: 40 000 linhas de c�odigo

O Linux funciona perfeitamente nos PC's de secret�aria (Desktop) e corre

em processadores Intel x86. O Interface gr�a�co GUI �e acrescentado.

� 1993

Utilizadores: 20 000

Vers~ao: 0.99

Tamanho: 100 000 linhas de c�odigo

Mais de cem programadores contribuem com partes de c�odigo. Linus Tor-

valds delega a revis~ao do c�odigo para um n�ucleo duro de cinco pessoas.

� 1994

Utilizadores: 100 000

Vers~ao: Linux 1.0

Tamanho: 170 000 linhas de c�odigo

� 1995

Utilizadores: 500 000

Vers~ao: Linux 1.2

Tamanho: 250 000 linhas de c�odigo

Page 21: Manual de Linux Para Iniciados

1.2. O Linux 9

�E modi�cado de modo a correr em processadores da Intel, da Digital e nos

SPARC da Sun.

A circula�c~ao do Linux Journal2 �e de 10 000 exemplares.

� 1996

Utilizadores: 1 500 000

Vers~ao: Linux 2.0

Tamanho: 400 000 de linhas de C�odigo

O Linux tem a capacidade de controlar v�arios processadores simultanea-

mente.

� 1997

Utilizadores: 3 500 000

Vers~ao: Linux 2.1

Tamanho: 800 000 linhas de C�odigo

Surgem revistas mensais sobre Linux no Jap~ao, Pol�onia, Alemanha, Iu-

gosl�avia, e no Reino Unido.

H�a uma nova vers~ao do Kernel todas as semanas.

� 1998

Utilizadores: 7 500 000

Vers~ao: Linux 2.1.131 (131 actualiza�c~ao de 2.1)

Tamanho: 1.5 milh~oes linhas de C�odigo

Cerca de 10 mil programadores envolvidos em newsgroups, testes e melho-

rias de c�odigo.

Actualmente estimam-se em aproximadamente 11 milh~oes de utilizadores do Linux segundo

o site The Linux Counter 3.

1.2.2 Linux vs Sistemas Operativos Comerciais

As caracter��sticas anteriormente mencionadas j�a apresentam algumas vis��veis vantagens

do Linux sobre outros sistemas comerciais, mas relembramos em especial: custo, dispo-

nibilidade de novas aplica�c~oes, independencia, sistema aberto, adequa�c~ao a actividades

corporativas, etc...

2http://www.linuxjournal.com3http://counter.li.org/linuxcounter eng.html

Page 22: Manual de Linux Para Iniciados

10 Cap��tulo 1. Hist�oria do Linux

Neste primeiro quadro podemos ver uma compara�c~ao entre as caracter��sticas e funcio-

nalidades entre o Linux, OS/2 e Windows NT:

[Fonte: Thompson, B., Linux Journal, No 1 Maio 1994]

Linux OS2/Warp Windows NT

4.0

Padr~oes POSIX OS/2 32 e 16 bits Win32

Disco (M��nimo) 15 MB 20 MB 50 MB

Disco (t��pica) 60 MB 32 MB 70 MB

Disco(completo) 90 MB 40 MB 100 MB

Mem�oria 1 MB - -

T��pico 16 MB 16 MB 24 MB

Carga 24 MB 32 MB 48 MB

Multitarefa Sim Sim Sim

Multithreading Sim Sim Sim

Multiprocessamento Sim Sim Sim

Multiutilizador Sim N~ao N~ao

Portabilidade simples Sim N~ao Sim

Cache dinamico Sim N~ao Sim

Mem�oria por process. 3 Gb 512 Mb 2 Gb

Protocolo de Rede TCP/IP, IPX TCP/IP, IPX e

NETBIOS

TCP/IP, IPX e

NETBEUI

Tabela 1.1: Comparativo das principais caracter��sticas

No quadro seguinte podem-se observar as compatibilidades de �lesystems suportados por

cada um deles.

[Fonte: Thompson, B., Linux Journal, No 1 Maio 1994]

Linux OS2/Warp Windows NT

4.0

FAT (DOS) Sim Sim Sim

HPFS (OS/2) Sim Sim Sim

NTFS (NT) Sim N~ao Sim

EXT2 (Linux) Sim N~ao N~ao

ISO9660 (CDROM) Sim Sim Sim

NFS Sim - -

SysV,Xenix Sim N~ao N~ao

Stacker Sim Sim N~ao

Tabela 1.2: Filesystems suportados

Page 23: Manual de Linux Para Iniciados

1.3. Distribui�c~oes 11

Neste �ultimo quadro comparativo podemos ver que tipo de aplica�c~oes poder~ao correr em

cada um deles:

[Fonte: Thompson, B., Linux Journal, No 1 Maio 1994]

Linux OS2/Warp Windows NT

4.0

DOS Sim Sim Sim

Win16 Sim Sim Sim

OS/2-16 N~ao Sim Sim

OS/2-32 N~ao Sim N~ao

Win32 N~ao N~ao Sim

POSIX Sim N~ao Sim

X-Windows Sim N~ao N~ao

Tabela 1.3: Aplica�c~oes suportadas

1.3 Distribui�c~oes

Como o Linux �e essencialmente um software livre, pode-se fazer o seu download da Internet

sem infringir os direitos de copyright de ningu�em. Em geral, os produtores de distribui�c~oes

em CD-ROM colocam o conte�udo das mesmas dispon��veis para download sem cobrar nada

por isto - mas claro que neste caso n~ao vamos ter direito a suporte, manual impresso e

outras comodidades oferecidas a quem paga um pouco mais pelo sistema.

Justamente por ser um software de livre altera�c~ao e distribui�c~ao, muitas pessoas e orga-

niza�c~oes dedicam-se a criar pacotes contendo o kernel do Linux e uma s�erie de aplicativos,

utilit�arios, manuais e programas de instala�c~ao. Estes pacotes s~ao as chamadas distribui�c~oes.

Existem distribui�c~oes min�usculas, que podem ser executadas a partir de disquetes, e exis-

tem distribui�c~oes que ocupam 6 CDs ou mais. Cada uma tem os seus pontos fortes e fracos.

Uma pergunta muito comum entre os utilizadores �e: "Qual a melhor distribui�c~ao de Li-

nux?". Esta pergunta n~ao tem uma resposta �unica - a melhor �e a que atende �as necessidades

de cada utilizador.

De seguida, vamos apresentar uma breve descri�c~ao de algumas distribui�c~oes, para que

se possa tirar algumas d�uvidas.

Page 24: Manual de Linux Para Iniciados

12 Cap��tulo 1. Hist�oria do Linux

1.3.1 Debian GNU/Linux

A mais livre das distribui�c~oes de Linux, o Debian leva o termo \free software" �a letra. �E

feito por uma equipa de programadores independentes, e distribu��do por v�arios distribui-

dores tamb�em independentes.

Figura 1.3: Logotipo do Debian

O Debian n~ao se destaca pela sua facilidade de uso, mas em compensa�c~ao tem um

grande volume de recursos, tanto de software como de documenta�c~ao, para oferecer como

recompensa aos que se dedicarem a dominar esta distribui�c~ao completamente sui-generis.

O Debian tem obtido maior projec�c~ao na imprensa ultimamente desde que a Corel divulgou

que estava a criar uma nova distribui�c~ao baseada no Debian e no KDE. Esta distribui�c~ao

j�a foi lan�cada, mas n~ao se espera que venha a tirar utilizadores do Debian original: o seu

p�ublico alvo �e outro.

1.3.2 Mandrake

H�a menos de dois anos uma distribui�c~ao pouco conhecida chegou ao mercado com grandes

esperan�cas. Dois anos depois, a MandrakeSoft faz uma das mais agrad�aveis distribui�c~oes

do Linux.

Figura 1.4: Logotipo do Mandrake

Aquela pouco conhecida distribui�c~ao do Linux �e o Mandrake. Na �ultima vers~ao lan�cada,

a 8.0, tentou-se melhorar algumas coisas que eram um pouco rudimentares na vers~ao 7.1 e

at�e mesmo adicionar muitas e novas caracter��sticas, tais como: Kernel 2.4.3-20mdk, Glibc

2.2.2, Gcc 2.96, Xfree86-4.0.3 optimizado para placa 3D, Cups - servidor de impress~ao

muito �util e com v�arios drivers para impressoras, Gnome 2.4, KDE 2.1.1.

O Mandrake combina o suave desktop do KDE e Gnome com muitas caracter��sticas

amig�aveis frequentemente chamadas de "O toque Mandrake". Este toque inclui uma su��te

inteira de administra�c~ao chamada DrakConf que inclui aplicativos como KPackage, RPM

Page 25: Manual de Linux Para Iniciados

1.3. Distribui�c~oes 13

Drake, Hard Drake, System Services, Linuxconf, Network Con�guration (via Linuxconf),

Drak Font e muitos outros. "O Toque"tamb�em inclui a habilidade de nos tornarmos super-

utilizadores com um mero clique do rato e uns toques no teclado.

O sistema de menus foi simpli�cado, para que possa ser muito f�acil e detalhado achar

aplicativos. Ao inv�es de se �car a procurar no meio de 100 aplicativos dentro do menu

utilit�arios, os gestores de �cheiros est~ao no seu pr�oprio grupo, dentro de aplicativos, ferra-

mentas de con�gura�c~ao est~ao em con�gura�c~ao e as consolas foram postos em shells.

Ga�el4 e companhia misturaram a olhos vistos o melhor de muitos sistemas operativos,

e at�e mesmo colocaram o tema "Aqua"(para o Gnome e o KDE) para os f~as do OS X.

Todos estes esfor�cos fazem do Linux Mandrake muito f�acil de usar, bem como poderoso ao

mesmo tempo.

1.3.3 Corel Linux

O Corel Linux foi lan�cado recentemente, e tem vindo a despertar muito interesse por ser

uma distribui�c~ao voltada para o utilizador iniciante em Linux.

Figura 1.5: Logotipo do Corel Linux

Alguns destaques:

� Muitos dos problemas identi�cados na vers~ao beta foram corrigidos a tempo da vers~ao

1.0 �nal, o que indica que a Corel realmente leva a s�erio seu processo de desenvolvi-

mento.

� O facto de ser baseada no Debian GNU/Linux e ao mesmo tempo voltada para o

"t��pico utilizador de Windows"�e uma aparente contradi�c~ao, mas a Corel realmente

conseguiu fazer a ponte entre os tecnicismos do Debian e a simplicidade excessiva do

Windows.

� O processo de instala�c~ao �e f�acil, descomplicado e autom�atico. Mas �e recomend�avel

que se leia atentamente a lista de hardware suportado antes de investir seu tempo...

� Toda a con�gura�c~ao de rede foi inclu��da no KDE Control Center. Os utilizadores do

Windows v~ao espantar-se ao ver que podem trocar o seu IP atrav�es de uma familiar

interface gr�a�ca, sem ter que reiniciar a m�aquina depois!

4Ga�el Duval - Vice-presidente e co-fundador da MandrakeSoft

Page 26: Manual de Linux Para Iniciados

14 Cap��tulo 1. Hist�oria do Linux

� Os utlizadores do Windows Explorer v~ao sentir-se plenamente em casa com o Corel

File Manager.

A desacelera�c~ao do mercado de inform�atica mundial tem gerado efeitos nas principais

distribui�c~oes comerciais internacionais. Segundo um artigo do ConsultingTimes5, a Corel

vai transferir a sua distribui�c~ao de Linux para uma empresa rec�em-fundada, chamada

Xandros. A inten�c~ao da Xandros �e atingir o p�ublico utilizador de desktop, nas empresas e

nos lares.

1.3.4 Slackware

Talvez a mais injusti�cada das distribui�c~oes, o Slackware criou uma fama de ser dif��cil de

instalar e manter, o que por um lado faria com que ele n~ao fosse uma boa escolha para

utilizadores iniciantes, e por outro daria aos seus utilizadores uma esp�ecie de 'atestado de

hacker'. Nada mais falso, entretanto.

Figura 1.6: Logotipo do Slackware

O Slackware �e uma das mais antigas distribui�c~oes que ainda se mant�em actualizada e

activa. Criado por Patrick Volkerding (que ainda cuida da distribui�c~ao) a partir do an-

tigo (e extinto) SLS Linux, o Slackware na sua vers~ao 8.0 inclui praticamente tudo que os

utilizadores se acostumaram a esperar das distribui�c~oes modernas: XFree86 4.1.0, Linux

kernels 2.2.19 e 2.4.5, KDE 2.1.2, Gnome 1.4, glibc 2.2.3, e demais utili�arios.

Parte da fama de 'dif��cil' do Slackware deve-se ao facto de ele n~ao aderir ao padr~ao de

pacotes RPM, ao inv�es disso baseando-se nos tradicional��ssimos pacotes tgz (ou .tar.gz).

Isto signi�ca que quando se instala ou retira pacotes de software do seu Slack, n~ao se vai

poder contar com o apoio das veri�ca�c~oes de dependencias do RPM, e muito provavelmente

vai-se ter que editar alguns arquivos manualmente para adaptar tudo em seus devidos lu-

gares. Esta pode n~ao ser a melhor maneira de aprender Linux, mas com certeza, se se for

bem sucedido, vai-se aprender muito sobre como funciona o sistema.

A �loso�a do Slackware �e ser o mais "UNIX-like"poss��vel. Isto �as vezes signi�ca ten-

der a ser mais complexo, e �as vezes signi�ca atender a padr~oes que as outras distribui�c~oes

de cunho mais comercial n~ao atendem.

5http://consultingtimes.com/Xandros.html

Page 27: Manual de Linux Para Iniciados

1.3. Distribui�c~oes 15

1.3.5 Red Hat Linux

O Red Hat Linux �e com certeza a distribui�c~ao mais popular (embora isso n~ao signi�que

necessariamente que ela seja a melhor). Conforme as suas vers~oes se sucedem, ele apresenta

maior n�umero de softwares �uteis e maior facilidade de instala�c~ao e con�gura�c~ao.

Figura 1.7: Logotipo do Red Hat Linux

O Red Hat �e sem d�uvida a distribui�c~ao comercial com maior penetra�c~ao no mercado,

a ponto de gerar preocupa�c~oes de utilizadores "tradicionais"preocupados com um poss��vel

monop�olio. Independente das preocupa�c~oes pol��ticas, o facto �e que a distribui�c~ao Red Hat

Linux tem excelente qualidade, e aplica-se muito bem tanto ao mercado de utilizadores

dom�esticos (como workstation) quanto ao corporativo (como servidor).

O RedHat 7.1 inclui o kernel 2.4, XFree 4.0.3 e os outros pacotes comuns a quase to-

das as distribui�c~oes de linux: Gimp, perl, apache, netscape, etc. Pela primeira vez o KDE

foi inclu��do na distribui�c~ao, mas o ambiente gr�a�co default continua a ser o Gnome +

Enlightenment. A distribui�c~ao o�cial vem acompanhada de um manual de 410 p�aginas. A

instala�c~ao �e relativamente simples, mas exige alguns cuidados, que o manual explica muito

bem.

O RedHat usa pacotes padr~ao RPM - de facto, a Red Hat foi a criadora do padr~ao RPM. A

administra�c~ao do sistema �ca por conta do Linuxconf, uma poderosa ferramenta que ajuda

principalmente os administradores Linux de primeira viagem, mas pode ser �util tamb�em

para os utilizadores experientes.

Ao lado do Caldera OpenLinux, o Red Hat 6.0 �e a prova de que o Linux j�a pode ser

usado por um utilizador comum. Embora a sequencia de instala�c~ao e con�gura�c~ao ainda

seja bastante complexa, ap�os superados estes est�agios o uso do sistema revela-se bastante

simples e atraente.

1.3.6 SuSE Linux

A mais recente distribui�c~ao alem~a SuSE Linux 7.2 re�une uma s�erie de qualidades que a

fazem �gurar entre as grandes distribui�c~oes comerciais. Talvez o maior destaque entre as

suas caracter��sticas seja o n�umero de pacotes de software que comp~oem a distribui�c~ao: o

Page 28: Manual de Linux Para Iniciados

16 Cap��tulo 1. Hist�oria do Linux

pacote �e composto por 7 CDs ou um DVD-ROM, a abrangencia do conte�udo �e impressio-

nante, come�cando pelo software: os 2000 pacotes em formato RPM que incluem o kernel

2.4.4 (com suporte a USB para impressoras, teclados e mouses, at�e 64 GB de mem�oria

RAM, suporte a ReiserFS, raw devices, Pentium 4, LFS e v�arias controladores RAID),

glibc 2.2.2, XFree 4.0.3 (com anti-aliasing de fontes TrueType, muito bom), KDE 2.1.2,

GNOME 1.4, StarOÆce 5.2, Samba 2.2, Kerberos 5, OpenLDAP 2, KDevelop 1.4, editores

HTML como o Blue�sh e o Quanta+ e muito mais.

Figura 1.8: Logotipo do Suse Linux

Ao contr�ario da tendencia de simpli�car ao m�aximo a instala�c~ao - que tem muito

m�erito, principalmente sob a �optica do novo utilizador - a instala�c~ao do SuSE conta com

um grande n�umero de op�c~oes e possibilidades. Capaz de confundir utilizadores iniciantes

(principalmente os que tentam fazer tudo sem ler o manual), esta instala�c~ao �e o sonho do

utilizador experiente: a simplicidade dos pacotes baseados em RPM (padr~ao criado pela

Red Hat e seguido pela maior parte das distribui�c~oes comerciais) aliada a uma quantidade

de op�c~oes e exibilidade dignas do Slackware!

1.3.7 Caldera OpenLinux

O OpenLinux 2.4 eDesktop �e a distribui�c~ao comercial mais recente e provavelmente a mais

f�acil de instalar. Com avan�cadas rotinas de detec�c~ao autom�atica de con�gura�c~ao de hard-

ware, a instala�c~ao �e t~ao tranquila que inclui at�e a op�c~ao de jogar Tetris enquanto se aguarda

a c�opia dos arquivos.

Figura 1.9: Logotipo do Caldera OpenLinux

Al�em de incluir os mesmos pacotes de sempre (KDE, Real Audio 5.0, StarOÆce 5.1a,

kernel 2.2.14, Glibc 2.1.2-3, libc 5-1.0-2, XFree 3.3.8, etc.), o OpenLinux inclui o Partition

Magic, que simpli�ca em muito a tarefa de instalar o Linux em m�aquinas que j�a tenham

outros sistemas operativos instalados. O manual n~ao se limita �a instala�c~ao, dando tamb�em

Page 29: Manual de Linux Para Iniciados

1.3. Distribui�c~oes 17

assistencia no uso do KDE, incluindo a con�gura�c~ao de acessos dial-up com o KPPP.

A enfase do OpenLinux �e a opera�c~ao 100% gr�a�ca, ent~ao desde a instala�c~ao tudo ocorre

em ambientes gr�a�cos, incluindo a�� a identi�ca�c~ao do hardware, con�gura�c~ao do rato, te-

clado, rede, impressoras, etc. Utilizadores acostumados com o Windows n~ao dever~ao ter

di�culdades para se ambientar no novo sistema.

A ferramenta de administra�c~ao embutida �e o COAS - Caldera's OpenLinux Administration

Software, 100% gr�a�co. O sistema de administra�c~ao de pacotes �e o RPM, e n~ao h�a grandes

di�culdades para quem j�a est�a acostumado a administrar m�aquinas utilizando o linuxconf

(que �e a ferramenta default do Red Hat) ou o Yast (ferramenta padr~ao do SuSE).

1.3.8 GNUware

O GNUware n~ao �e uma distribui�c~ao no sentido tradicional da palavra. Trata-se de um

CD-ROM com centenas de pacotes de software, incluindo n~ao apenas aqueles que se est�a

acostumado a encontrar nas distribui�c~oes correntes de Linux, como ainda muitos outros.�E uma boa maneira de economizar tempo de download, e de ter sempre �a m~ao todos os

programas de que se precisa com urgencia nos momentos em que n~ao temos possibilidade

para fazer um download.

Figura 1.10: Logotipo do GNUware

Os pacotes est~ao no formato preferido pelos utilizadores avan�cados e tradicionais de

sistemas Linux e Unix em geral: c�odigo fonte compactado em formato tar.gz. Isto signi�ca

que se precisar�a de um pouco mais de conhecimento para poder utilizar este CD, mas tem

v�arias vantagens, tais como:

� Podem-se utilizar os softwares em qualquer distribui�c~ao de Linux, e at�e mesmo nou-

tras vers~oes de Unix - se se administra uma rede com v�arias arquitecturas diferentes,

�e o CD ideal para deixar sempre montado em algum dos servidores...

� Podem-se compilar os softwares com as op�c~oes que preferir, e n~ao ter�a que se contentar

com compila�c~oes gen�ericas feitas por terceiros.

� Podem-se gerar pacotes optimizados para a arquitectura de hardware que utiliza, e

n~ao se contentar com os pacotes padronizados para 386 que s~ao a maioria.

Page 30: Manual de Linux Para Iniciados

18 Cap��tulo 1. Hist�oria do Linux

Em compensa�c~ao, ter�a que se passar pelo trabalho de con�gurar e compilar cada um dos

pacotes que se deseja usar. Administradores de sistemas experientes tendem a preferir pas-

sar por este trabalho, mas se ainda est�a a come�car a trilhar os caminhos do Unix, talvez

deva considerar a ideia de tentar primeiro os pacotes pr�e-compilados (formato RPM ou

DEB, por exemplo).

Os pacotes est~ao organizados e classi�cados entre os direct�orios do CD. O primeiro n��vel

divide-se em Console, Desktops (KDE e Gnome), Internet, Kernel e X11. Cada um dos n��veis

subdivide-se em v�arios subn��veis. Por exemplo, o n��vel console expande-se em: Adminis-

tration, Entertainment, Multimedia, Scienti�c, Communication, File Management, Network,

Servers, Development, Graphics, OÆce e System. Estes subn��veis ainda tem mais um n��vel

de subdivis~ao dentro de si, e dentro de cada uma delas, encontramos as aplica�c~oes, cujos

nomes dos arquivos exprimem claramente o nome original do pacote e a vers~ao.

1.3.9 WholeLinux

O WholeLinux n~ao �e propriamente uma distribui�c~ao de Linux, mas sim um conjunto de

aplica�c~oes de software capazes de instalar o Linux numa con�gura�c~ao pr�e-de�nida sem

necessidade de interac�c~ao com o utilizador. �E excelente para pessoas ou empresas que

estejam a pensar em criar aplica�c~oes dedicadas baseadas na plataforma Linux, pois o uti-

lizador �nal pode simplesmente abstrair o processo de instala�c~ao.

Figura 1.11: Logotipo do WholeLinux

O WholeLinux faz o seguinte: uma vez inserido o CD do WholeLinux numa m�aquina,

em pouco mais de 7 minutos temos uma instala�c~ao completa do RedHat 6.0, com o KDE em

todo o seu poder, al�em da placa de rede automaticamente reconhecida. A �unica intera�c~ao

com o programa de instala�c~ao �e a necessidade de con�rmar que realmente se deseja reali-

zar a instala�c~ao, sabendo que isto removeria todos os nossos dados em todas as parti�c~oes

existentes.

Page 31: Manual de Linux Para Iniciados

1.4. Ambientes Gr�a�cos 19

O WholeLinux actualmente n~ao �e um produto para utilizadores �nais - ele n~ao oferece

nem permite nenhuma con�gura�c~ao durante a instala�c~ao.

1.3.10 Mini distribui�c~oes

As mini distribui�c~oes s~ao pequenos pacotes baseados no kernel do Linux e voltados para

tarefas espec���cas. N~ao devem ser instaladas para "ter uma id�eia sobre o Linux", pois em

geral elas n~ao se parecem muito com as distribui�c~oes voltadas para o uso desktop.

Linux Router Project - O Linux Router �e uma distribui�c~ao que cabe numa �unica dis-

quete de 1,44MB e permite transformar um micro com duas interfaces de rede num router

de baixo custo e performance similar a de routers comerciais. Suporta uma s�erie de inter-

faces e protocolos.

LOAF (Linux on a oppy) - Distribui�c~ao numa �unica disquete, voltada para o uso

em rede. Inclui uma s�erie de clientes de rede (lynx, ssh, telnet...) e tem vers~oes espec���cas

para as placas de rede mais comuns.

Mulinux - Distribui�c~ao italiana que cabe numa disquete, e que vem com suporte a rede,

ppp, alguns servidores (http, at, fax...) e v�arios clientes, incluindo cliente de irc.

Pocket Linux - O Pocket Linux �e uma distribui�c~ao numa �unica disquete voltada para ser

um cliente de rede (ssh, telnet, ftp...). Aceita placas de rede e modems.

Tomsrbt - O Tomsrbt �e uma distribui�c~ao numa �unica disquete, que cont�em ferramen-

tas �uteis para recuperar um computador que n~ao esteja a conseguir fazer o boot pelas vias

normais.

Trinux - Distribui�c~ao voltada especi�camente para tarefas de seguran�ca, vem com fer-

ramentas para veri�car (e tentar quebrar) a seguran�ca de redes locais. Ela �e capaz de

transformar seu PC numa poderosa esta�c~ao de monitoriza�c~ao de rede, bastando para isso

reiniciar o computador com as suas duas (ou tres) disquetes.

1.4 Ambientes Gr�a�cos

No in��cio os utilizadores do Linux tinham que se contentar com as linhas de comando em

modo texto. Mas desde logo se pensou uma solu�c~ao gr�a�ca e surgiu o XFree tornou-se

dispon��vel, e come�caram a surgir os primeiros Window Managers para o Linux.

Page 32: Manual de Linux Para Iniciados

20 Cap��tulo 1. Hist�oria do Linux

Hoje os ambientes gr�a�cos como o KDE e o Gnome j�a s~ao capazes de colocar o Linux

at�e na mesa dos utilizadores com pouca pr�atica no manuseamento de computadores. Re-

cursos como clipboard integrada e drag drop deixaram de ser um sonho, e passaram a ser

realidade do dia a dia de todos.

De seguida apresentamos uma an�alise dos mais populares ambientes gr�a�cos para Linux.

1.4.1 KDE

O KDE �e um representante da nova gera�c~ao de ambientes gr�a�cos para Unix, que combina

facilidade de uso, funcionalidade capaz de rivalizar com qualquer ambiente contemporaneo

e fenomenal design gr�a�co. N~ao se limita a ser "apenas"um Window Manager, o KDE �e

um ambiente gr�a�co completo, capaz de acrescentar funcionalidades antes inimagin�aveis

no mundo dos Free Unix, tais como drag drop integrado, gestor de �cheiros integrado, e

uma s�erie de acess�orios (como por exemplo a calculadora, o bloco de notas e o marcador

de acesso telef�onico PPP) que rivalizam com os dispon��veis em ambientes comerciais como

por exemplo os da Microsoft.

O KDE foi constru��do sem se basear no c�odigo fonte de outros sistemas, embora a sua

aparencia e funcionalidade sejam muito semelhantes �as do CDE. E embora o KDE inclua

um gestor de janelas, gestor de �cheiros, barra de tarefas, painel de controle, help online e

tudo o mais que se espera de um Window Manager moderno, a sua verdadeira for�ca est�a

na interoperabilidade de todos os seus componentes.

Por oferecer uma interface t~ao elegante, intuitiva e familiar, marcada por facilidade de

uso semelhante �a do Windows, o KDE 1.1.1 coloca o poder do Linux ao alcance dos seus

utilizadores menos t�ecnicos. Em reconhecimento ao seu potencial, o KDE recebeu da PC

Magazine o t��tulo de "Inova�c~ao do ano 1998/1999"na categoria Software.

A vers~ao 1.1.1 do KDE apresenta algumas vantagens adicionais, como a integra�c~ao com o

Palm Pilot, maiores facilidades na liga�c~ao com �a Internet e maior estabilidade.

At�e recentemente, o Red Hat Linux n~ao distribu��a o KDE. Na vers~ao 6.0, entretanto,

esta pol��tica mudou, e agora virtualmente todas as distribui�c~oes comerciais de Linux in-

cluem este ambiente gr�a�co. Algumas, como o SuSE e o Open Linux, chegam a coloc�a-lo

como ambiente padr~ao.

O KDE j�a est�a numa fase bastante avan�cada de internacionaliza�c~ao, e pode-se optar por

colocar todos os seus menus e ��cones em portugues.

Page 33: Manual de Linux Para Iniciados

1.4. Ambientes Gr�a�cos 21

Figura 1.12: Screenshot do KDE

1.4.2 Gnome

O GNOME �e o ambiente gr�a�co que est�a a ser desenvolvido pelo projecto GNU. O objec-

tivo do Gnome �e construir um desktop completo e amig�avel baseado inteiramente em free

software. Este desktop consiste em utilit�arios e aplica�c~oes que compartilham aparencia e

caracter��sticas consistentes.

Segundo a documenta�c~ao o�cial, o Gnome �e tudo o que se espera de um ambiente gr�a�co

moderno, e neste sentido ele compara-se ao CDE, KDE, Mac OS e Windows. Mas o que o

diferencia de todos estes outros ambientes �e o facto de ser 100% free software, sem nenhum

componente propriet�ario.

Assim como no KDE, n~ao se �ca preso a nenhum window manager. Por exemplo, no Red

Hat 6.0 - que tem o Gnome como ambiente gr�a�co default - o window manager associado

ao gnome �e o Enlightenment.

O Gnome tamb�em tem suporte a drag and drop, ��cones na �area de trabalho, barra

de tarefas totalmente con�gur�avel, painel de aplica�c~oes, e muito mais. A sua aparencia

�e bastante agrad�avel e 100% con�gur�avel, inclusive atrav�es de temas. H�a uma s�erie de

aplicativos dispon��veis para o Gnome, e em geral n~ao se tem di�culdades na instala�c~ao

deles, j�a que todos atendem a um mesmo padr~ao.

A equipa que mant�em o Gnome �e numerosa. Segundo Miguel de Icaza, coordenador do

Page 34: Manual de Linux Para Iniciados

22 Cap��tulo 1. Hist�oria do Linux

Figura 1.13: Screenshot do GNOME

projecto, "no momento da libera�c~ao da vers~ao 1.0 t��nhamos 250 pessoas autorizadas a pro-mover mudan�cas no c�odigo-fonte. Esta equipa foi montada ao longo dos �ultimos 20 meses

e j�a h�a mais 38 desde o lan�camento do 1.0".

1.4.3 Window Maker

O Window Maker �e um gestor de janelas para o X11 projectado tendo em mente o suporte

a aplica�c~oes GNUstep. Ele apresenta a aparencia e as caracter��sticas elegantes do ambiente

do NeXTSTEP, �e bastante r�apido, tem recursos avan�cados e �e f�acil de con�gurar e usar.

Algumas das caracter��sticas t�ecnicas do Window Maker diferenciam-no de outros gesto-

res de janelas populares. Eis os destaques:

� Tratamento adequado a grupos de janelas pertencentes a uma mesma aplica�c~ao;

� Menus acess��veis tamb�em via teclado;

� Possibilidade de "�xar"no ecr~a os menus popup;

� Menus recon�guram-se automaticamente sempre que o arquivo de con�gura�c~oes �e

alterado (sem necessidade de reiniciar o ambiente);

� M�ultiplos ambientes de trabalho;

Page 35: Manual de Linux Para Iniciados

1.4. Ambientes Gr�a�cos 23

� Suporte nativo a temas;

� Suporte nativo a imagens XPM, PNG, JPEG, TIFF, GIF e PPM;

� Utilit�ario de con�gura�c~ao embutido e completo - n~ao se precisa de editar arquivos de

con�gura�c~ao;

� Integra�c~ao ao KDE e ao GNOME - pode-se usar o Window Maker em conjunto com

um destes ambientes.

Figura 1.14: Screenshot do Window Maker

1.4.4 AfterStep

O AfterStep �e um Window Manager constru��do originalmente para emular no X Win-

dow a aparencia e funcionalidade do NeXtStep, mas que posteriormente ganhou "vida

pr�opria"gra�cas �a popularidade que alcan�cou, pela sua qualidade visual e facilidade de uso.

Al�em das caracter��sticas visuais diferenciadas, incluindo a possibilidade de preencher as

barras de t��tulos das janelas com v�arias texturas, o AfterStep apresenta o Wharf, uma

barra de ��cones , e que d�a suporte a muitas aplica�c~oes, incluindo a possibilidade criar me-

nus de ��cones em cascata, e de executar aplica�c~oes directamente num��cone (possibilitando,

portanto, exibir a sa��da de aplica�c~oes simples - como rel�ogios, e-mail noti�ers, status de

modem - sem ter que criar uma janela espec���ca).

Page 36: Manual de Linux Para Iniciados

24 Cap��tulo 1. Hist�oria do Linux

Figura 1.15: Screenshot do AfterStep

Os �cheiros de con�gura�c~ao do AfterStep tem comandos semelhantes ao do tradicional

fvwm, al�em de uma s�erie de comandos e op�c~oes espec���cos.

Naturalmente, al�em do Wharf, o Afterstep d�a suporte aos tradicionais menus de cascata

caracter��sticos de quase todos os Window Managers - apenas com um toque especial na

aparencia.

Page 37: Manual de Linux Para Iniciados

Cap��tulo 2

Instala�c~ao do Red Hat Linux 7.1

Visto que a maioria dos comandos foram feitos no Red Hat Linux resolvemos optar por

explicar de um modo simples a instala�c~ao desta distribui�c~ao. Para isso recorremos ao

documento original "Red Hat Linux 7.1 Installation Guide".

2.1 Escolha da l��ngua

Utilizando o rato, escolha a l��ngua que prefere utilizar para a instala�c~ao e que ser�a tamb�em

a de�nida por defeito no sistema. A escolha da l��ngua vai ajudar o programa de instala�c~ao

Figura 2.1: Escolha da l��ngua

a determinar o seu fuso hor�ario num passo mais adiante da instala�c~ao.

Page 38: Manual de Linux Para Iniciados

26 Cap��tulo 2. Instala�c~ao do Red Hat Linux 7.1

2.2 Con�gura�c~ao do teclado

Escolha o modelo do teclado que melhor se adequa ao seu sistema. Se acontecer o caso de

nenhum dos listados corresponder ao seu escolha o Generic mais parecido.

De seguida, escolha o melhor layout para o teclado (por exemplo US English). A es-

crita de caracteres especiais, tais como C� , ~N, O e outros, �e feita com as "Dead Keys" que

por defeito est~ao activadas. Se n~ao se pretender escrever nenhum dos caracteres especiais

desactiva-se esta op�c~ao.

A �area no �nal do ecr~a serve para testar as con�gura�c~oes feitas anteriormente.

Nota: Para alterar a con�gura�c~ao do teclado depois de instalar o Red Hat Linux, comoroot utiliza-se o comando /usr/sbin/kdbconfig ou em alternativa executa-se o comando

setup na prompt do root.

Figura 2.2: Con�gura�c~ao do teclado

2.3 Con�gura�c~ao do rato

Escolha o tipo de rato que corresponde ao que tem no seu sistema. Se por acaso na lista

n~ao estiver o seu rato escolha um que seja compativel.

Para determinar qual o tipo de interface do seu rato basta seguir o �o at�e ao compu-

tador e veri�car onde �e que este liga. Se a �cha for rectangular tem um rato s�erie, caso

contr�ario �e PS/2.

Page 39: Manual de Linux Para Iniciados

2.4. Bem vindo ao Red Hat Linux 27

Se a instala�c~ao est�a a ser feita num computador port�atil, o tipo de rato �e normalmente

PS/2.

Caso n~ao encontre um tipo de rato que seja de certeza compat��vel com o seu sistema,

seleccione um dos Generic baseado no n�umero de bot~oes e interface. Se tiver um rato

Figura 2.3: Con�gura�c~ao do rato

PS/2 ou, no caso dos port�ateis incorporado, n~ao �e necess�ario escolher uma porta. Se o rato

for s�erie, �e necess�ario escolher a porta correcta onde ele est�a ligado.

A op�c~ao Emulate 3 Buttons permite-nos que tendo o nosso rato apenas 2 but~oes emu-

lar o terceiro premindo os dois ao mesmo tempo. O X-Window �e mais f�acil de utilizar com

um rato com 3 but~oes, por isso conv�em activar esta op�c~ao se for precisa.

Nota: Para alterar a con�gura�c~ao do rato depois de instalar o Red Hat Linux, comoroot utiliza-se o comando /usr/sbin/mouseconfig na prompt do root.

2.4 Bem vindo ao Red Hat Linux

O �ecra de boas vindas do Red Hat Linux n~ao tem nenhuma op�c~ao em especial. A �unica

de importancia tem a ver com o facto de se querer ou n~ao ver a ajuda �a instala�c~ao.

Para continuar a instala�c~ao clica no Next.

Page 40: Manual de Linux Para Iniciados

28 Cap��tulo 2. Instala�c~ao do Red Hat Linux 7.1

2.5 Op�c~oes de instala�c~ao

Neste �ecra vamos escolher o tipo de instala�c~ao que pretendemos fazer. O Red Hat Li-

nux permite-nos escolher o melhor tipo de instala�c~ao para o nosso caso. As op�c~oes s~ao

Workstation, Server, Laptop, Custom e Upgrade.

Figura 2.4: Op�c~oes de con�gura�c~ao

2.6 Particionamento autom�atico

O particionamento autom�atico do disco permite-nos fazer uma instala�c~ao na qual n~ao

temos de nos preocupar com a opera�c~ao de fazer parti�c~oes no nosso disco. Se n~ao nos

sentirmos �a vontade com o facto de termos de fazer manualmente o particionamento do

nosso disco, o melhor ser�a mesmo optar pelo partionamento autom�atico.

Nota: Se a op�c~ao de Automatic Partitioning n~ao aparece �e porque n~ao temos espa�cosu�ciente para podermos optar por esta op�c~ao. Temos ent~ao duas solu�c~oes: ou sairmos

da instala�c~ao e libertar mais espa�co no disco; ou ent~ao optar pelo particionamento manual.

Nesta �ecra podemos escolher ou o particionamento autom�atico, ou os particionamentos

manuais usando o Disk Druid ou o Fdisk. Temos ainda a op�c~ao de voltar atr�as e escolher

outro tipo de instala�c~ao.

Se n~ao quisermos perder dados a melhor op�c~ao ser�a fazer o particionamento manual.

Nota: Uma instala�c~ao Workstation, Custom ou Laptop usando particionamento autom�atico

Page 41: Manual de Linux Para Iniciados

2.7. Particionando o disco 29

Figura 2.5: Particionamento autom�atico

ir�a remover todos os dados das parti�c~oes Linux existentes. Por outro lado, uma instala�c~aoServer ir�a remover todos os dados de todas as parti�c~oes de todas as drives.

2.7 Particionando o disco

Se escolheu a op�c~ao de Automatic Partitioning anteriormente passe para o ponto se-

guinte, caso contr�ario continue a ler. Se por outro lado a op�c~ao escolhida foi Manually

partition with fdisk passe para o ponto 2.8.

Neste ponto �e necess�ario dizer ao programa de instala�c~ao onde �e que ele deve instalar

o Red Hat Linux. Isto �e feito de�nindo pontos de montagem (mount points) para uma ou

mais parti�c~oes do disco no qual o Red Hat Linux vai ser instalado. Pode ser preciso criar

ou apagar parti�c~oes. A ferramenta do Red Hat Linux para fazer o particionamento dos

discos �e o Disk Druid. Com algumas raras excep�c~oes, este programa pode tratar de todas

as opera�c~oes com parti�c~oes para a instala�c~ao padr~ao do Red Hat Linux.

2.7.1 Vari�aveis das parti�c~oes

Cada linha da sec�c~ao partitions representa uma parti�c~ao do disco. Cada linha nesta

sec�c~ao tem 5 vari�aveis diferentes:

� Mount Point - um mount point d�a-nos a localiza�c~ao contendo a hierarquia onde

um volume existe; o "volume" �e montado aqui. A vari�avel indica-nos onde �e que a

parti�c~ao vai ser montada. Se a parti�c~ao j�a existe mas ainda n~ao est�a con�gurada �e

Page 42: Manual de Linux Para Iniciados

30 Cap��tulo 2. Instala�c~ao do Red Hat Linux 7.1

Figura 2.6: Particionando o disco com o Disk Druid

preciso de�nir o ponto de montagem. Basta fazer duplo clique na parti�c~ao ou carregar

em Edit;

� Device - este campo indica-nos o nome do dispositivo da parti�c~ao;

� Request - este campo d�a-nos o tamanho original da parti�c~ao. Para rede�nir o tama-

nho de uma parti�c~ao �e preciso apagar a actual e cri�a-la de novo utilizando o Add;

� Actual - este campo indica-nos o espa�co alocado actualmente para a parti�c~ao;

� Type - indica-nos o tipo de parti�c~ao (Linux, DOS, etc).

2.7.2 Esquema recomendado de particionamento

A menos que se tenha outra ideia, recomendamos que se se criem as seguintes parti�c~oes:

� uma parti�c~ao swap (com pelo menos 32Mb, recomendamos 256Mb) - este tipo de

parti�c~oes servem para ajudar a mem�oria. Ou seja, quando n~ao existe mem�oria su-

�ciente para executar determinada opera�c~ao, os dados podem ser escritos para a

parti�c~ao swap e esta ser utilizada como mem�oria virtual.

� uma parti�c~ao /boot (com no m�aximo 32Mb) - esta parti�c~ao cont�em o kernel do

sistema operativo (que permite que o Red Hat Linux arranque) e ainda os �cheiros

utilizados durante o arranque.

� uma parti�c~ao root (1,2 a 2,4 Gb) - esta parti�c~ao �e onde se encontra o "/" (direct�orio

do root). Nesta con�gura�c~ao, todos os �cheiros se encontram nesta parti�c~ao excepto

Page 43: Manual de Linux Para Iniciados

2.7. Particionando o disco 31

aqueles que est~ao na /boot. Com 1,2Gb podemos fazer uma instala�c~ao workstation

apenas com alguns pacotes e com 2,4Gb temos hip�otese de instalar todos os pacotes.

2.7.3 Problemas a adicionar uma parti�c~ao

Se tentarmos adicionar uma parti�c~ao e o Disk Druid n~ao puder fazer essa opera�c~ao, o pro-

grama mostra-nos uma lista de todas as parti�c~oes que n~ao est~ao alocadas acompanhadas

da respectiva raz~ao porque n~ao puderam ser alocadas.

Para reparar esta situa�c~ao, a solu�c~ao �e mover a parti�c~ao para outro disco que tenha espa�co

disponivel e fazer um redimensionamento da parti�c~ao para o espa�co disponivel nesse disco,

ou apagar essa parti�c~ao.

2.7.4 Caracter��sticas do disco

Cada linha da sec�c~ao Drive Summaries representa um disco da nossa m�aquinas. Cada

linha tem as seguintes vari�aveis:

� Drive - d�a-nos o nome do dispostivo do disco;

� Geom [C/H/S] - d�a-nos o n�umero de cilindros, cabe�cas e sectores do disco;

� Total - indica-nos o espa�co total em disco em Mb;

� Free - indica-nos o espa�co em disco que ainda n~ao est�a alocado em Mb;

� Used - indica-nos o espa�co em disco que est�a alocado em parti�c~oes em Mb e em

percentagem.

A sec�c~ao Drive Summaries s�o �e mostrada como informa�c~ao ao utilizador sobre o seu disco

e sobre a forma como est�a particionado.

2.7.5 Op�c~oes do Disk Druid

O Disk Druid oferece-nos as seguintes op�c~oes:

� Add - utilizado para adicionar uma nova parti�c~ao. Quando esta op�c~ao �e seleccionada

aparece uma caixa de di�alogo com alguns campos que devem ser preenchidos (tais

como o ponto de montagem e o tamanho);

Page 44: Manual de Linux Para Iniciados

32 Cap��tulo 2. Instala�c~ao do Red Hat Linux 7.1

� Edit - utilizado para modi�car os atributos de determinada parti�c~ao seleccionada na

sec�c~ao Partitions. Ao escolher a op�c~ao Edit, vai aparecer uma caixa de di�alogo que

nos permite alterar alguns dos dados sobre a parti�c~ao dependendo se estes j�a foram

escritos ou n~ao no disco;

� Delete - utilizado para remover parti�c~oes. Por uma quest~ao de seguran�ca aparece

sempre uma caixa de di�alogo para con�rma�c~ao ou n~ao desta opera�c~ao;

� Reset - serve para recolocar o Disk Druid no seu estado inicial. Todas as altera�c~oes

feitas s~ao perdidas;

� Make RAID Device - serve para fornecer redundancia para uma ou para todas as

parti�c~oes do disco. S�o deve ser utilizado ser tivermos experiencia com o RAID (Re-

dundant Array of Independent Disks).

2.7.6 Adicionar parti�c~oes

Para adicionar uma parti�c~ao basta carregar em Add e logo uma caixa de di�alogo ir�a aparecer.

Nota: Deve haver pelo menos uma parti�c~ao dedicada para o Red Hat Linux, ou em op�c~ao

v�arias.

As op�c~oes da caixa de di�alogo s~ao:

� Mount Point - escolha e introduza o ponto de montagem da parti�c~ao. Por exemplo

para a parti�c~ao do root, introduz-se /;

� Size (Megs) - introduza o tamanho da parti�c~ao em Mb;

� Use remaining space - quando est�a op�c~ao �e seleccionada, a parti�c~ao �ca com todo

o tamanho dispon��vel e que ainda n~ao foi alocada para mais nada;

� Partition Type - este campo cont�em diversas op�c~oes tais como Linux Native ou

DOS. Escolha a que mais lhe convier;

� Allowable Drives - este campo cont�em todos os tipos de drives que temos na

m�aquina.

� Ok - clicamos aqui se j�a �zemos todas as modi�ca�c~oes que pretend��amos e queremos

agora criar a parti�c~ao;

� Cancel - clicamos aqui se queremos cancelar todas as modi�ca�c~oes.

Page 45: Manual de Linux Para Iniciados

2.8. Particionando com o Fdisk 33

2.7.7 Editar parti�c~oes

Para editar um parti�c~ao basta clicar em Edit ou dar duplo clique numa parti�c~ao existente.

Nota: Se a parti�c~ao j�a existir no disco, s�o poderemos mudar o seu ponto de montagem.

Se quiseremos alterar qualquer outro parametro da parti�c~ao s�o podemos faze-lo apagando-a

e criando-a novamente.

2.7.8 Apagar uma parti�c~ao

Para apagar uma parti�c~ao basta escolhe-la na sec�c~ao Partitions seguido do Delete. Por

uma quest~ao de seguran�ca �e sempre pedida a con�rma�c~ao da opera�c~ao.

2.8 Particionando com o Fdisk

Caso a escolha para fazer as parti�c~oes do disco recaia sobre o Fdisk o �ecra seguinte ir�a

pedir para indicarmos qual o disco a particionar. Depois de escolhermos o disco, aparecer�a

o �ecra de comandos do Fdisk.

Se n~ao soubermos quais os comandos a utilizar, podemos ver as alternativas com o co-

mando m no prompt. Depois de terminarmos de fazer as parti�c~oes, usamos o comando w

para gravar as altera�c~oes e sair. Feita esta opera�c~ao voltamos ao �ecra principal do Fdisk

onde podemos escolher outro disco ou continuar com a instala�c~ao.

Se continuarmos com a instala�c~ao temos de utilizar o Disk Druid para de�nir os pon-

tos de montagem para cada parti�c~ao.

2.9 Formatar parti�c~oes

Agora que temos as parti�c~oes criadas temos de as formatar. Para isso basta escolher quais

as que queremos formatar, tendo obrigatoriamente de formatar aquelas que foram criadas

agora no processo de instala�c~ao. Ter em aten�c~ao que as parti�c~oes que cont�em as pastas

/home e /usr/local n~ao devem ser formatadas se quisermos guardar os dados que l�a

temos. Se quisermos fazer a veri�ca�c~ao de erros aquando do processo de formata�c~ao de

cada parti�c~ao s�o temos de activar a caixa de Check for bad blocks while formatting.

Page 46: Manual de Linux Para Iniciados

34 Cap��tulo 2. Instala�c~ao do Red Hat Linux 7.1

Figura 2.7: Escolher as parti�c~oes a formatar

2.10 Instalar o LILO

Se estamos a fazer umaa instala�c~ao do tipo Workstation, Server ou Laptop podemos

passar j�a para o ponto 2.11.

Para que o Red Hat Linux possa arrancar �e necess�ario instalarmos o LILO (ou LInux

LOader). O LILO pode ser instalado em dois sitios:

� no Master Boot Record (MBR) - �e o sitio que recomendamos.

� no primeiro sector da parti�c~ao do root - s�o no caso de j�a usarmos outro programa de

boot tal como o OS/2 Boot Manager.

Se escolhermos instalar o LILO, temos de escolher o sitio onde �e que ele vai ser instalado

no nosso sistema. Se j�a tivermos outro sistema operativo, �e aconselh�avel escolher colocar

o LILO no MBR pois durante o processo de arranque temos hip�otese de escolher qual dos

sistemas operativos �e que queremos utilizar.

Se decidirmos n~ao instalar o LILO, temos de mais adiante fazer uma disquete de arranque

porque sen~ao �caremos sem acesso ao Red Hat Linux.

Podemos ainda neste �ecra de con�gura�c~ao do LILO indicar algumas op�c~oes, nomeada-

mente qual o sistema operativo que arrancar�a por defeito entre outras.

Page 47: Manual de Linux Para Iniciados

2.11. Con�gura�c~ao da rede 35

Figura 2.8: Instalar o LILO

2.11 Con�gura�c~ao da rede

Este �ecra s�o �e mostrado se tivermos uma placa de rede. A con�gura�c~ao serve para con-

�gurarmos o nosso endere�co IP para utilizar ou o DHCP (Dynamic Host Con�guration

Protocol) ou com os valores introduzidos manualmente nos campos IP Address, Netmask,

Network e Broadcast. Temos ainda a op�c~ao de activar a placa de rede no arranque do

Figura 2.9: Con�gura�c~ao da rede

Red Hat Linux na caixa Activate on boot.

Page 48: Manual de Linux Para Iniciados

36 Cap��tulo 2. Instala�c~ao do Red Hat Linux 7.1

2.12 Con�gura�c~ao do �rewall

O Red Hat Linux oferece a possibilidade de uma protec�c~ao com �rewall para uma melhor

seguran�ca do sistema. Um �rewall separa a nossa m�aquina da rede e determina a que re-

cursos do nosso computador �e que um utilizador pode aceder. Um �rewall bem con�gurado

Figura 2.10: Con�gura�c~ao do �rewall

pode aumentar e�cazmente a seguran�ca do nosso sistema. Existe 3 niveis de seguran�ca e

para que se possa optar pelo melhor para o nosso caso, a descri�c~ao de cada pode ser vista

a seguir.

� High - se escolhermos este n��vel de seguran�ca, o nosso sistema n~ao ir�a aceitar qualquer

liga�c~ao que n~ao seja explicitamente de�nida por n�os.

� Medium - neste caso, o �rewall vai impedir que m�aquinas remotas acedam a alguns

dos recursos do nosso sistema.

� No Firewall - esta op�c~ao fornece total acesso ao nosso sistema e n~ao faz qualquer

tipo de veri�ca�c~ao de seguran�ca.

2.13 Con�gura�c~ao do fuso hor�ario

A con�gura�c~ao do fuso hor�ario pode ser feita quer indicando ao programa a nossa lo-

caliza�c~ao f��sica quer especi�cando o nosso fuso hor�ario no Coordinated Universal Time

(UTC). Na imagem podemos ver que temos dois separadores. No primeiro, que �e o que

est�a v��sivel, especi�camos clicando no mapa o local onde estamos, ap�os o que aparece um

X vermelho.

Page 49: Manual de Linux Para Iniciados

2.14. Selec�c~ao da(s) lingua(s) 37

Figura 2.11: Con�gura�c~ao do fuso hor�ario

Nota: Para alterar a con�gura�c~ao do fuso hor�ario depois de instalar o Red Hat Linux,

como root utiliza-se o comando /usr/sbin/timeconfig na prompt do root.

2.14 Selec�c~ao da(s) lingua(s)

O Red Hat Linux permite-nos ter instalados suportes para v�arias l��nguas para o nosso

sistema. Devemos escolher uma para servir como l��ngua padr~ao. Contudo, mais tarde po-

demos alter�a-la para outra. Se s�o vamos utilizar uma l��ngua, basta escolhermos a desejada

Figura 2.12: Con�gura�c~ao da(s) lingua(s)

Page 50: Manual de Linux Para Iniciados

38 Cap��tulo 2. Instala�c~ao do Red Hat Linux 7.1

e avan�carmos com a instala�c~ao. No caso de queremos mais do que uma, isso ir�a re ectir-se

no espa�co ocupado pelo Red Hat Linux.

2.15 Con�gura�c~ao de contas

Este �ecra permite-nos con�gurar a password de root. Adicionalmente podemos acrescentar

mais contas de utilizadores que podem fazer o log in na m�aquina depois da instala�c~ao estar

conclu��da.

Figura 2.13: Con�gura�c~ao de contas

2.15.1 De�nindo a password do root

De�nir a password do root �e um dos mais importantes passos da instala�c~ao. A conta de

root �e similar �a conta de administrador do Windows NT. Esta conta �e utilizada para insta-

lar pacotes, fazer upgrade de RPMs e executar as tarefas de manuten�c~ao do sistema. Fazer

o login como root d�a-nos o controlo total da m�aquina.

Deve-se usar a conta de root apenas para administra�c~ao e n~ao para trabalho, para este �m

deve-se criar outra conta. A cria�c~ao de uma conta de trabalho evita que se �zermos algum

comando errado vamos provocar algum problema no sistema.

Neste passo deve-se de�nir uma password de root, caso contr�ario o programa de instala�c~ao

n~ao nos deixa avan�car.

Page 51: Manual de Linux Para Iniciados

2.16. Con�gura�c~ao de autentica�c~oes 39

2.15.2 De�nir contas para utilizadores

Se decidirmos criar uma conta de utilizador, ela ir�a �car disponivel logo que a instala�c~ao

seja conclu��da. Isto permite-nos fazer o log in no nosso sistema qem que tenhamos de ser

o root.

De�nir uma conta de utilizador �e bastante f�acil. Basta introduzir um username, depois

introduzir e con�rmar uma password para esse username. Depois introduz-se o nome com-

pleto do utilizador e clica-se em Add. Estas informa�c~ao v~ao ser acrescentadas na lista de

utilizadores e os campos v~ao �car limpos para o caso de querermos acrescentar mais utili-

zadores.

Pode-se ainda editar ou apagar utilizadores usando os bot~oes Edit e Delete respecti-

vamente.

2.16 Con�gura�c~ao de autentica�c~oes

Se estivermos a fazer uma instala�c~ao Workstation, server ou Laptop, passe para a sec�c~ao

2.17. Podemos passar esta con�gura�c~ao se n~ao quisermos de�nir passwords de rede. A me-

Figura 2.14: Con�gura�c~ao de autentica�c~oes

nos que estejamos a de�nir autentica�c~ao NIS, as caixas de di�alogo activadas s~ao as que se

referem a passwords MD5 e shadow. Recomendamos que sejam usadas ambas se quisermos

tornar a nossa m�aquina mais segura.

As passwords MD5 permitem-nos utilizar passwords longas com at�e 256 caracteres em vez

das normais oito letras ou menos. As passwords shadow fornecem-nos um m�etodo seguro

Page 52: Manual de Linux Para Iniciados

40 Cap��tulo 2. Instala�c~ao do Red Hat Linux 7.1

de guaradar as passwords. Estas s~ao guardadas em /etc/shadow direct�orio ao qual s�o o

root tem acesso.

Para activar a op�c~ao Enable NIS temos de estar ligados a uma rede NIS. Caso contr�ario

passa-se adiante. Relativamente �as outras op�c~oes pode-se consultar

http://www.europe.redhat.com/documentation/rhl7.1 ou ver no Manual.

2.17 Escolha dos grupos de pacotes

Depois de as parti�c~oes serem seleccionadas e con�guradas para serem formatadas, estamos

prontos para seleccionar quais os grupos de pacotes que ser~ao instalados.

O KDE e o GNOME s~ao ambientes gr�a�cos, dos quais j�a fal�amos anteriormente. Para

j�a basta escolher um deles ou os dois para serem instalados. S�o depois de utilizar cada um

deles �e que podemos dizer qual deles �e que preferimos. De seguida podemos escolher quais

Figura 2.15: Escolha de grupos de pacotes

os componentes a instalar, que podem ser desde grupos de pacotes, at�e pacotes individuais,

por exemplo C Development, Networked Workstation entre outros. Para escolher basta

clicar no caixa de selec�c~ao respectiva.

Para escolher pacotes individualmente clica-se em Select Individual Packages que apa-

rece no fundo do �ecra.

Page 53: Manual de Linux Para Iniciados

2.17. Escolha dos grupos de pacotes 41

2.17.1 Seleccionar pacotes individuais

Depois de escolher quais os componentes a instalar podemos seleccionar ou n~ao pacotes

individuais. No lado esquerdo do �ecra temos um direct�orio que mostra os v�arios grupos de

Figura 2.16: Escolha de pacotes individuais

pacotes organizados por temas. Quando se expande umramo do direct�orio vemos do lado

direito quais os pacotes que fazem parte desse ramo.

Ter em aten�c~ao que alguns dos pacotes s~ao indispens�aveis para o funcionamento do Red

Hat Linux.

2.17.2 Dependencias

Alguns dos pacotes de software, de modo a serem executados correctamente, depdendem

de outros pacotes que devem ser instalados. De modo a assegurar que o sistema tem

todos os pacotes que precisa, o Red Hat Linux veri�ca todas as dependencias dos pacotes

seleccionados que pretendemos instalar ou desinstalar. O �ecra Unresolved Dependencies

s�o ir�a aparecer no caso de faltarem alguns pacotes necess�arios para a execu�c~ao de outros

que foram seleccionados para instalar. No fundo do �ecra encontramos 3 op�c~oes. Em caso

de d�uvida escolhe-se Install packages to satisfy dependencies e o pr�oprio programa

resolve todas as dependencias.

Page 54: Manual de Linux Para Iniciados

42 Cap��tulo 2. Instala�c~ao do Red Hat Linux 7.1

Figura 2.17: Dependencias

2.18 Con�gura�c~ao da componente gr�a�ca

Se decidirmos instalar os pacotes do X-Window temos de con�gurar um servidor X no

nosso sistema.

2.18.1 Con�gurar a placa de video

O XConfigurator d�a-nos uma lista de todos as placas gr�a�cas suportadas pelo sistema.

No fundo do �ecra e depois de escolhida a placa gr�a�ca temos de escolher a quantida de

Figura 2.18: Con�gura�c~ao da placa gr�a�ca

Page 55: Manual de Linux Para Iniciados

2.18. Con�gura�c~ao da componente gr�a�ca 43

mem�oria respectiva.

2.18.2 Con�gurar o monitor

O programa de con�gura�c~ao d�a-nos uma lista de monitores suportados pelo Red Hat Linux.

O nosso monitor vai ser detectado pelo programa, e s�o no caso de n~ao corresponder �e que

fazemos a escolha manual.

Figura 2.19: Con�gura�c~ao do monitor

2.18.3 Con�gura�c~ao pessoal

Depois de feitas as escolhas da placa gr�a�ca e do monitor, temos agora de con�gurar por-

menores de visualiza�c~ao tais como a quantidade de cores, a resolu�c~ao e qual vai ser o nosso

ambiente de trabalho por defeito. Como podemos ver na �gura este processo �e bastante

simples, conv�em no entanto fazer Test Setting antes de prosseguir com a instala�c~ao para

veri�car se realmente as op�c~oes escolhidas conseguem ser suportadas pelo nosso sistema.

O Test Setting vai abrir um �ecra de teste das con�gura�c~oes, se por acaso n~ao conse-

guirmos ver as imagens que aparecem �e porque escolhemos uma resolu�c~ao ou quantidade

de cores muito grande. Assim sendo clicamos em No e escolhemos outros valores.

Temos ainda a hip�otese de indicar se queremos arrancar o Red Hat Linux em modo texto

ou gr�a�co depois de terminada a instala�c~ao. O arranque em modo gr�a�co �ca sempre

melhor que em modo texto mas cada utilizador �e que sabe.

Page 56: Manual de Linux Para Iniciados

44 Cap��tulo 2. Instala�c~ao do Red Hat Linux 7.1

Figura 2.20: Con�gura�c~ao do X

2.19 Prepara�c~ao para instalar

E estamos quase a come�car a instala�c~ao do Red Hat Linux. Depois de serem feitas todas

as con�gura�c~oes do nosso sistema temos agora a �ultima hip�otese de cancelar o processo de

instala�c~ao no caso de querermos ainda fazer algumas altera�c~oes nas con�gura�c~oes.

Clicando em Next o programa de instala�c~ao vai escrever as parti�c~oes e os pacotes come�cam

a ser instalados.

2.20 Instalando os pacotes

Neste ponto da instala�c~ao todos os procedimentos s~ao feitos pelo programa de instala�c~ao

e por isso o utilizador n~ao precisa de fazer nada. O tempo de instala�c~ao depende da quan-

tidade dos pacotes que foram seleccionados anteriormente e da velocidade do computador.

2.21 Cria�c~ao de uma disquete de arranque

Se na sec�c~ao ?? opt�amos por fazer um arranque do Red Hat Linux por disquete temos

obviamente de a criar agora. Para isso basta introduzir uma dsquete formatada na drive e

clicar em Next.

Qualquer que tenha sido o modo de arranque que escolhemos, uma disquete de arran-

Page 57: Manual de Linux Para Iniciados

2.22. Instala�c~ao terminada 45

Figura 2.21: Instala�c~ao dos pacotes

que �e sempre importante pois caso haja algum problema com a con�gura�c~ao do LILO

temos sempre a certeza que o sistema ir�a arrancar, quanto mais n~ao seja com a disquete.

Figura 2.22: Disquete de arranque

2.22 Instala�c~ao terminada

E cheg�amos ao �m do processo de instala�c~ao! O programa de instala�c~ao vai agora reiniciar

o sistema e por isso conv�em remover qualquer disquete ou CD dos respectivos dispositivos.

Page 58: Manual de Linux Para Iniciados

46 Cap��tulo 2. Instala�c~ao do Red Hat Linux 7.1

Se n~ao instal�amos o LILO temos de introduzir a disquete de arranque. Depois do compu-

tador arrancar vai aparecer qualquer coisa como

LILO boot:

linux windows98

na qual temos 3 op�c~oes:

� Carregar em Enter - arranca o sistema operativo que tiver sido de�nido como de-

fault;

� Escolher uma das op�c~oes seguido de Enter - faz o LILO arrancar com o sistema

operativo escolhido que est�a representado pelo label;

� N~ao fazer nada - o LILO depois de um certo tempo arranca para o sistema operativo

de�nido como default.

Aparece-nos ent~ao se tivermos de�nido um modo gr�a�co, um �ecra de login em modo gr�a�co.

Page 59: Manual de Linux Para Iniciados

Cap��tulo 3

Estrutura dos direct�orios do Linux

Este cap��tulo descreve a importancia dos componentes padr~ao da �arvore de direct�orios do

Linux, a qual tem por base o Sistema de Ficheiros Padr~ao do Linux 1. Ao mesmo tempo

�e descrita a forma habitual de dividir a �arvore de direct�orios em diferentes sistemas de

�cheiros com diferentes �nalidades, e atribuindo uma justi�ca�c~ao para a adop�c~ao de cada

divis~ao. S~ao descritas ainda algumas op�c~oes alternativas.

O padr~ao preconizado pelo FSSTND, tem por fun�c~ao facilitar o desenvolvimento para

o Linux, bem como a administra�c~ao de m�aquinas Linux, na medida em que tudo est�a lo-

calizado em lugares espec���cos.

N~ao existe a obrigatoriedade da adop�c~ao deste padr~ao, nem nada que obrigue quem quer

que seja a utiliz�a-lo, al�em do bom senso, uma vez que ele tem o apoio da maioria, sen~ao

da totalidade, das distribui�c~oes do Linux.

No entanto, n~ao �e aconselh�avel alterar o padr~ao da �arvore de direct�orios, a menos que

existam raz~oes que sejam muito fortes para serem realizadas essas altera�c~oes.

O FSSTND, tenta manter os padr~oes antigos do Unix, conciliando-os com as novas so-

licita�c~oes, fazendo com o que o Linux �que mais familiar para aqueles com alguma ex-

periencia noutros Unix e vice-versa.

Este cap��tulo, n~ao �e t~ao detalhado como o FSSTND. Qualquer administrador de siste-

mas, deveria ler cada especi�ca�c~ao para que o entendimento seja completo. Tamb�em foi

nossa op�c~ao, n~ao descrever a totalidade dos �cheiros com o m�aximo detalhe. A inten�c~ao,

�e apresentar uma vis~ao geral, sob um determinado ponto de vista do sistema de �cheiros.

Mais informa�c~oes sobre cada �cheiro, podem ser encontradas nas p�aginas de manual on-line

do Linux presentes na m�aquina.

1Linux Filesystem Structure ou FSSTND

Page 60: Manual de Linux Para Iniciados

48 Cap��tulo 3. Estrutura dos direct�orios do Linux

A �arvore de direct�orios deve ser dividida em partes mais pequenas, cada uma com o seu

pr�oprio disco ou parti�c~ao, facilitando dessa forma quest~oes como os limites do tamanho

de disco ou a cria�c~ao de c�opias de seguran�ca. Os sistemas de �cheiros maiores s~ao a raiz

(root), /usr, /var e /home (ver a �gura 3.1). Cada parte tem uma �nalidade diferente.

Figura 3.1: Partes da �arvore de direct�orios

O desenho da �arvore foi idealizado para funcionar tamb�em em rede, tanto em m�aquinas

que necessitem de compartilhar partes do sistema de �cheiros com autoriza�c~ao exclusiva-

mente de leitura (por exemplo um CD-ROM), bem como em m�aquinas com sistemas de

�cheiros de rede (NFS).

As regras para se obterem tais divis~oes, s~ao as seguintes:

� O sistema de �cheiros raiz �e espec���co de cada m�aquina (geralmente est�a armazenado

num disco local, apesar de poder estar presente num disco em mem�oria ou numa uni-

dade de rede). Cont�em os �cheiros necess�arios para o boot do sistema e para permitir

o acesso aos restantes sistemas de �cheiros. O conte�udo da raiz deve ser o su�ciente

ainda para que o sistema possa ser executado em modo mono-utilizador. Cont�em as

ferramentas para a resolu�c~ao de poss��veis problemas e para a recupera�c~ao de �cheiros

a partir das c�opias de seguran�ca.

� O sistema de �cheiros /usr cont�em: comandos, bibliotecas, p�aginas de manuais e

�cheiros imut�aveis, necess�arios para a normal opera�c~ao do sistema. Os �cheiros lo-

calizados em /usr n~ao devem ser espec���cos para uma determinada m�aquina e n~ao

devem ser alterados durante a utiliza�c~ao normal. Isso permite que estes �cheiros pos-

sam ser compartilhados atrav�es da rede, o que pode ser bastante interessante pela

economia prov�avel de espa�co em disco (o /usr pode conter algumas centenas de me-

gabytes muito facilmente) e ao mesmo tempo faz com que a administra�c~ao seja mais

simples (uma vez que s�o o /usr na m�aquina principal necessita de ser actualizado).

Mesmo que este sistema de �cheiros se encontre localizado no disco local, deve at�e

Page 61: Manual de Linux Para Iniciados

49

ser montado com permiss~ao exclusivamente de leitura, para diminuir a hip�otese da

corrup�c~ao de �cheiros durante um eventual acidente.

� O sistema de �cheiros /var cont�em os �cheiros mut�aveis, como os direct�orios dos

�cheiros tempor�arios (spool) para correio electr�onico, impress~oes, logs, p�aginas de

manual formatadas, etc... Tradicionalmente o conte�udo do /var deveria estar em

algum lugar sob o /usr, por�em isso torna imposs��vel montar o /usr com permiss~oes

s�o de leitura.

� O sistema de �cheiros /home cont�em os direct�orios pessoais dos utilizadores, ou

seja, todas as informa�c~oes armazenadas por estes no sistema. Separar os direct�orios

pessoais na sua pr�opria �arvore de direct�orios ou sistema de �cheiros, simpli�ca a

cria�c~ao de c�opias de seguran�ca, uma vez que outras partes do sistema normalmente

n~ao necessitam ser copiadas com a mesma frequencia. Uma /home muito grande,

pode ser dividida em v�arios sistemas de �cheiros que requerem um n��vel adicional na

sua denomina�c~ao, como por exemplo /home/GEL ou /home/admin.

Apesar das diferentes partes j�a descritas serem chamadas de sistemas de �cheiros, n~ao h�a

a obrigatoriedade de estas estarem assim separadas. Podem estar facilmente no mesmo

sistema, numa pequena m�aquina utilizada por um �unico utilizador que deseje mante-las de

uma forma mais simpli�cada.

A �arvore de direct�orios pode estar dividida ainda em diferentes sistemas de �cheiros, de-

pendendo do tamanho de cada disco e da quantidade de espa�co que for reservado para cada

�nalidade. O importante a reter �e que os nomes padr~oes devem ser mantidos e devem ser

utilizados de forma correcta.

A estrutura dos sistemas de �cheiros Unix, preve um agrupamento de acordo com a �-

nalidade. Ou seja, os comandos est~ao todos numa determinada �area, todos os �cheiros de

dados noutra, a documenta�c~ao numa terceira, e assim por diante. Uma alternativa seria

agrupar os �cheiros de acordo com os programas a que eles perten�cam, isto �e, os �cheiros

do Emacs estariam todos num �unico direct�orio, todos os �cheiros de TeX noutro, e assim

por diante.

O problema desta abordagem, reside no compartilhar de �cheiros (um �cheiro de pro-

gramas cont�em todos os tipos de �cheiros: est�aticos, dinamicos, compartilhados e n~ao

compartilhados,...) e algumas vezes em encontrar alguns desse �cheiros (por exemplo uma

man page a ser pesquisada num grande n�umero de direct�orios).

Page 62: Manual de Linux Para Iniciados

50 Cap��tulo 3. Estrutura dos direct�orios do Linux

3.1 O sistema de �cheiros raiz

O sistema de �cheiros raiz, deve ser pequeno, desde que contenha s�o os �cheiros fundamen-

tais para o boot (inicio) e funcionamento do sistema. Um sistema pequeno e com poucas

modi�ca�c~oes tem mais hip�oteses de nunca ter problemas.

Um sistema de �cheiros raiz corrompido, pode geralmente signi�car que o sistema n~ao

possa ser inicializado, excepto atrav�es de medidas especiais (como por exemplo, por uma

disquete).

O direct�orio raiz, geralmente n~ao cont�em qualquer tipo de �cheiro, excepto, talvez, a

imagem de inicializa�c~ao (boot) do sistema, normalmente chamada /vmlinuz. Todos os res-

tantes �cheiros est~ao em sub direct�orios da raiz.

/bin

Comandos necess�arios durante o boot do sistema (inicializa�c~ao) que podem ser utiliza-

dos pelos utilizadores (provavelmente ap�os a activa�c~ao do sistema).

/sbin

Identicos ao /bin, no entanto os comandos n~ao s~ao destinados aos utilizadores comuns,

apesar de poderem ser utilizados por estes se tal for necess�ario.

/etc

Ficheiros de con�gura�c~ao espec���cos da m�aquina.

/root

O direct�orio pessoal do administrador da m�aquina (root).

/lib

Bibliotecas partilhadas necess�arias aos programas residentes no sistema de �cheiros

Page 63: Manual de Linux Para Iniciados

3.1. O sistema de �cheiros raiz 51

raiz.

/lib/modules

M�odulos dinamicos e que s~ao carregados pelo kernel, especialmente aqueles necess�arios

ao arranque do sistema em caso de acidente (por exemplo, programas de controlo de siste-

mas de �cheiros de rede).

/dev

Ficheiros de controlo de dispositivos (devices).

/tmp

Ficheiros tempor�arios. Programas que s~ao executados ap�os a activa�c~ao do sistema, de-

vem usar o /var/tmp e n~ao o /tmp, na medida em que muito provavelmente v~ao encontrar

mais espa�co dispon��vel naquele sistema de �cheiros.

/boot

Ficheiros utilizados pelo carregador de boot (inicializa�c~ao) do sistema, por exemplo o

LILO2. As imagens do kernel, s~ao regra geral, aqui mantidas ao contr�ario de serem no

direct�orio raiz. No caso de existirem v�arias imagens, o direct�orio pode crescer muito facil-

mente, sendo aconselh�avel mante-lo num sistema de �cheiros �a parte. Outra raz~ao, �e ter

a plena certeza de que as imagens do kernel se encontrem localizadas nos primeiros 1024

cilindros de um disco IDE.

/mnt

Local para as montagens tempor�arias realizadas pelo administrador do sistema. Os

programas, regra geral, n~ao preveem a montagem autom�atica em /mnt. Este deve estar

dividido em sub direct�orios, como por exemplo /mnt/dosa (sendo uma unidade de disque-

tes utilizando um sistema de �cheiros MS-DOS) e /mnt/exta (pode ser a mesma unidade,

mas com uma extens~ao ext2).

2LILO - LInux LOader, analizado no ponto 5.1 na p�agina 97

Page 64: Manual de Linux Para Iniciados

52 Cap��tulo 3. Estrutura dos direct�orios do Linux

/proc, /usr, /var e /home

Locais de montagem para outros sistemas de �cheiros.

3.2 O direct�orio /etc

O direct�orio /etc cont�em v�arios �cheiros. Alguns deles s~ao descritos a seguir. Muitos �-

cheiros de con�gura�c~ao de programas de rede est~ao localizados em /etc, como se encontra

descrito no Linux Networking Administrators' Guide3

/etc/rc ou /etc/rc.d ou /etc/rc?.d

S~ao �cheiros de batch (scripts) ou os direct�orios de �cheiros de batch, os quais s~ao

executados no (boot) in��cio do sistema.

/etc/passwd

A base de dados dos utilizadores, cujos campos de�nem nome do utilizador, nome real,

direct�orio pessoal, password cifrada e outras informa�c~oes espec���cas de cada utilizador. O

formato est�a documentado na p�agina man passwd.

/etc/fdprm

A tabela de parametros de disquetes. Descreve os formatos diferentes dispon��veis. �E

utilizada pelo programa setfdprm. Para maiores informa�c~oes veja a p�agina man setfdprm.

/etc/fstab

Lista os sistemas de �cheiros montados automaticamente, durante a inicializa�c~ao do

sistema, pelo comando mount -a (no etc/rc ou �cheiro de inicializa�c~ao similar). Cont�em

ainda informa�c~oes sobre as �areas de swap usadas automaticamente pelo comando swapon

3Linux Networking Administrators Guide, Olaf Kirch, O' Reilly & Associates, January 1995

Page 65: Manual de Linux Para Iniciados

3.2. O direct�orio /etc 53

-a. Veja a p�agina man mount para maiores informa�c~oes.

/etc/group

Similar ao /etc/passwd, descreve grupos ao contr�ario de utilizadores. Veja a p�agina

man group, para mais informa�c~oes.

/etc/inittab

Ficheiro de con�gura�c~ao do init.

/etc/issue

Sa��da do programa getty antes do prompt de acesso ao sistema. Normalmente cont�em

uma descri�c~ao breve ou mensagens de boas vindas. O conte�udo �ca ao crit�erio do admi-

nistrador do sistema.

/etc/magic

O �cheiro de con�gura�c~ao para o comando �le. Cont�em as descri�c~oes de v�arios formatos

de �cheiros. Veja as p�aginas man magic e �le para maiores informa�c~oes.

/etc/motd

A mensagem do dia (message of the day), a qual �e automaticamente apresentada ap�os

um acesso bem sucedido. Os conte�udos s~ao ao crit�erio do administrador do sistema. Nor-

malmente s~ao usadas para enviar informa�c~oes para os utilizadores, como por exemplo avisos

de manuten�c~ao do sistema.

/etc/mtab

Listagem dos sistemas de �cheiros montados. Inicialmente con�gurado por programas

de batch e posteriormente actualizado pelo comando mount. Usado quando uma lista de

Page 66: Manual de Linux Para Iniciados

54 Cap��tulo 3. Estrutura dos direct�orios do Linux

sistemas de �cheiros �e necess�aria, como por exemplo, pelo comando df.

/etc/shadow

Ficheiros de seguran�ca de passwords em sistemas onde o software shadow password

esteja instalado. Esta op�c~ao move as passwords cifradas de /etc/passwd para o �cheiro

/etc/shadow, o qual s�o pode ser lido pelo administrador da m�aquina (root). Isso d�a uma

seguran�ca maior �as passwords dos utilizadores.

/etc/login.defs

Ficheiro de con�gura�c~ao do programa de acesso ao sistema (login).

/etc/printcap

Similar ao /etc/termcap, mas direccionado para as impressoras e com uma sintaxe di-

ferente.

etc/pro�le, /etc/csh.login, /etc/csh.cshrc

Ficheiros executados no acesso ou em tempo de boot do sistema pelos ambientes de

trabalho Bourne-Again Shell ou C Shell4. Permitem ao administrador utilizar padr~oes de

vari�aveis para todos os utilizadores. Veja as p�aginas de manual espec���cas.

/etc/securetty

Identi�ca quais os terminais seguros, ou seja, aqueles nos quais �e permitido que o ad-

ministrador da m�aquina tenha acesso ao sistema. Normalmente s�o as consolas virtuais s~ao

apresentadas, sendo muito dif��cil obter os privil�egios de administrador do sistema atrav�es

da rede ou de uma liga�c~ao via modem.

/etc/shells

Apresenta os ambientes de trabalho (shells) autorizados. O comando chsh permite que

os utilizadores mudem o ambiente padr~ao durante o acesso ao sistema, por�em s�o para aque-

les listados neste �cheiro. O ftpd, que �e o servidor de processos que administra os servi�cos

4Analizados no ponto 4.1 na p�agina 63

Page 67: Manual de Linux Para Iniciados

3.3. O direct�orio /dev 55

de transferencia de �cheiros numa m�aquina, ir�a veri�car se o ambiente do utilizador est�a

listado em /etc/shells e n~ao aceitar�a acessos que n~ao se encontrem l�a presentes.

/etc/termcap

Ficheiro de con�gura�c~ao do terminal. Descreve as diversas sequencias de "escape"para

os diversos terminais. Os programas ao contr�ario de escreverem directamente uma sequencia

que s�o iria funcionar em determinado tipo de terminal, devem buscar a sequencia correcta

para fazer o que quer que seja em /etc/termcap, resultando que devem funcionar na maio-

ria dos terminais suportados. Veja as p�aginas de manual termcap, curs termcap e terminfo

para informa�c~oes mais detalhadas.

3.3 O direct�orio /dev

O direct�orio /dev cont�em os �cheiros especiais (drivers) de controle de todos os dispositivos.

Estes �cheiros utilizam uma denomina�c~ao especial descrita na lista Device. Os �chei-

ros de controlo s~ao criados durante a instala�c~ao, e posteriormente atrav�es do programa

/dev/MAKEDEV. O /dev/MAKEDEV.local �e um programa de batch escrito pelo admi-

nistrador do sistema e que cria s�o os �cheiros de controle de dispositivos locais que n~ao

fa�cam parte do padr~ao do MAKEDEV (como �cheiros de controle para dispositivos espe-

ciais).

3.4 O sistema de �cheiros /usr

O sistema de �cheiros /usr normalmente tem um tamanho razo�avel, uma vez que todos os

programas s~ao aqui instalados.

Todos os �cheiros em /usr normalmente vem com a distribui�c~ao do Linux, sendo que

programas instalados localmente est~ao normalmente em /usr/local. Isso torna o processo

de actualiza�c~ao do sistema poss��vel para uma nova vers~ao da distribui�c~ao ou mesmo para

uma distribui�c~ao completamente nova, sem que seja necess�ario instalar todos os programas

novamente.

Alguns dos sub direct�orios de /usr s~ao apresentados a seguir (outros menos importan-

tes, podem ser encontrados no FSSTND para maiores informa�c~oes).

Page 68: Manual de Linux Para Iniciados

56 Cap��tulo 3. Estrutura dos direct�orios do Linux

/usr/X11R6

Os �cheiros do sistema X-Window. Para simpli�car o desenvolvimento e a instala�c~ao do

X, os seus �cheiros n~ao foram integrados no resto do sistema. H�a uma �arvore de direct�orios

sob /usr/X11R6 similar ao /usr.

/usr/X386

Similar ao /usr/X11R6 , mas destinado �a vers~ao 5 do X11.

/usr/bin

Praticamente todos os comandos dos utilizadores. Outros podem ser encontrados em

/bin ou /usr/local/bin.

/usr/sbin

Comandos de administra�c~ao do sistema que n~ao necessitem estar no sistema de �cheiros

raiz, como por exemplo programas de servidores.

/usr/man, /usr/info, /usr/doc

Man pages, documentos GNU Info e diversos outros documentos, respectivamente.

/usr/include

Ficheiros header para a linguagem de programa�c~ao C. Este direct�orio deveria estar sob

/usr/lib, no entanto por tradi�c~ao tem sido suportado neste formato.

/usr/lib

Ficheiros est�aticos de dados para programas e subsistemas, incluindo alguns �cheiros

de con�gura�c~ao da totalidade do site. O nome lib vem de library (biblioteca), j�a que ori-

Page 69: Manual de Linux Para Iniciados

3.5. O sistema de �cheiros /var 57

ginalmente as bibliotecas de programa�c~ao eram armazenadas neste sub direct�orio.

/usr/local

O local para o software instalado localmente e outros �cheiros.

3.5 O sistema de �cheiros /var

O sistema de �cheiros /var cont�em os dados que s~ao alterados quando o sistema est�a em

execu�c~ao. �E espec���co de cada sistema, ou seja, n~ao �e partilhado atrav�es da rede com

outros equipamentos.

/var/catman

Uma cache para p�aginas de manual que s~ao formatadas sempre que solicitadas. Os

fontes para as p�aginas s~ao armazenados em /usr/man/man, sendo que algumas p�aginas

podem vir pr�e-formatadas, estando armazenadas em /usr/man/cat*. Outras p�aginas ne-

cessitam ser formatadas quando acedidas, sendo que a vers~ao �nal �ca armazenada em

/var/man fazendo com que outro utilizador caso necessite de uma vers~ao formatada, te-

nha esta pronta e dispon��vel. O direct�orio /var/catman �e frequentemente esvaziado, da

mesma forma que os �cheiros tempor�arios.

/var/lib

Ficheiros que mudam enquanto o sistema �e executado normalmente.

/var/local

Dados vari�aveis para os programas que estejam instalados em /usr/local, por exemplo

programas que foram instalados pelo administrador do sistema. Note que, mesmo quando

instalados localmente, estes programas podem usar ainda outros direct�orios /var, como

por exemplo /var/lock.

Page 70: Manual de Linux Para Iniciados

58 Cap��tulo 3. Estrutura dos direct�orios do Linux

/var/lock

Ficheiros de controlo. Muitos programas seguem uma conven�c~ao de criarem �cheiros

em /var/lock para indicar que eles est~ao a utilizar um dispositivo em particular ou um

determinado �cheiro. Outros programas percebem a existencia do �cheiro de controlo e

n~ao tentar~ao utilizar o mesmo dispositivo ou �cheiro enquanto o �cheiro existir.

/var/log

Ficheiros de hist�oricos dos v�arios programas, especialmente o de acesso (login) (var/log/wtmp,o qual regista todas as entradas e sa��das do sistema) e syslog (var/log/messages, o qual

cont�em as mensagens do kernel e os programas do sistema). Os �cheiros em /var/log po-

dem crescer inde�nidamente com frequencia e podem requerer limpezas peri�odicas. Pode

ser utilizado o logrotate (rota�c~ao de logs).

/var/run

Ficheiros que contem informa�c~oes sobre o sistema e que s~ao v�alidas at�e �a pr�oxima

inicializa�c~ao. Por exemplo, /var/run/utmp cont�em as informa�c~oes sobre os utilizadores

actualmente ligados.

/var/spool

Direct�orios de mensagens, not��cias, �las de impress~ao e outros trabalhos em �la. Cada

funcionalidade tem o seu pr�oprio sub direct�orio sob /var/spool. Por exemplo, as mensagens

de correio electr�onico est~ao armazenadas em /var/spool/mail.

/var/tmp

Ficheiros tempor�arios que sejam muito grandes ou que necessitem existir por um per��odo

maior que o de�nido para /tmp. Note-se que o administrador do sistema pode n~ao permitir

�cheiros muitos antigos tamb�em em /var/tmp.

Page 71: Manual de Linux Para Iniciados

3.6. O sistema de �cheiros /proc 59

3.6 O sistema de �cheiros /proc

O sistema de �cheiros /proc cont�em um conjunto de �cheiros virtual. Na verdade, ele n~ao

existe num disco r��gido, mas ao contr�ario �e criado em mem�oria pelo kernel sendo utilizado

para fornecer informa�c~oes sobre o sistema (originalmente sobre os processos, da�� a origem

do seu nome). Alguns dos �cheiros mais importantes e direct�orios s~ao detalhados abaixo.

Este sistema de �cheiros �e descrito com mais detalhe na p�agina man proc.

/proc/1

Um direct�orio com as informa�c~oes do processo n�umero 1 (init). Cada processo tem um

direct�orio em baixo de /proc, cujo nome equivale ao seu n�umero de identi�ca�c~ao.

/proc/cpuinfo

Informa�c~oes sobre o processador, tais como tipo, fabricante, modelo, e performance.

/proc/devices

Lista de programas de controle de dispositivos con�gurados no kernel que se encontram,

de momento, em execu�c~ao.

/proc/dma

Mostra quais canais DMA est~ao a ser utilizados no momento.

/proc/�lesystems

Sistemas de �cheiros con�gurados no kernel.

/proc/interrupts

Mostra quais as interrup�c~oes que est~ao em uso e quantas existem.

Page 72: Manual de Linux Para Iniciados

60 Cap��tulo 3. Estrutura dos direct�orios do Linux

/proc/ioports

Apresenta quais as portas de entrada e sa��da que est~ao em uso num determinado mo-

mento.

/proc/kcore

Imagem da mem�oria f��sica do sistema. Tem exactamente o mesmo tamanho da mem�oria

f��sica, mas n~ao ocupa a totalidade dessa �area. �E criada de forma natural durante o acesso

por um determinado programa.

/proc/kmsg

Mensagens de sa��da do kernel. S~ao direccionadas tamb�em para o syslog.

/proc/ksyms

Tabela de s��mbolos para o kernel.

/proc/loadavg

A carga m�edia do sistema. Cont�em tres indicadores da quantidade de trabalho que o

sistema est�a a executar no momento.

/proc/meminfo

Informa�c~oes sobre o uso de mem�oria. Tanto f��sica como da mem�oria virtual de troca

(swap).

/proc/modules

Descreve quais os m�odulos que est~ao carregados nesse momento.

Page 73: Manual de Linux Para Iniciados

3.6. O sistema de �cheiros /proc 61

/proc/net

Informa�c~oes sobre a situa�c~ao dos protocolos de rede.

/proc/self

Uma liga�c~ao simb�olica para o direct�orio de processos (/proc). Quando dois processos

acedem /proc podem utilizar diferentes liga�c~oes, o que �e conveniente para programas que

utilizem este direct�orio como o seu direct�orio de processos.

/proc/stat

Diversas estat��sticas sobre o sistema, como o n�umero de pagina�c~oes desde o seu in��cio,

I/O, processos executados, etc...

/proc/uptime

Tempo que o sistema est�a activo.

/proc/version

Vers~ao do kernel do sistema.

Page 74: Manual de Linux Para Iniciados
Page 75: Manual de Linux Para Iniciados

Cap��tulo 4

Conceitos b�asicos

Neste cap��tulo iremos abordar o modo texto do Linux, que �e composto basicamente da

shell e dos aplicativos que executam sobre ela, os principais comandos, como con�gurar o

X e a impressora e �nalmente como criar utilizadores.

4.1 A Shell

Mas a�nal o que �e uma shell? �E um interpretador de comandos que analisa o texto intro-

duzido na linha de comandos e executa esses comandos produzindo algum resultado.

Existem v�arios shells mas de entre todos podemos destacar 4 que s~ao sem d�uvida os mais

utilizados:

� Bourne Shell (sh)

Desenvolvido por Stephen Bourne, da Bell Labs (da AT&T, onde tamb�em

foi desenvolvido o Unix), o sh foi durante muitos anos a Shell por defeito

do sistema operativo Unix. �E tamb�em chamada de Standard Shell por ter

sido durante muito tempo a �unica.

� Korn Shell (ksh)

Desenvolvido por David Korn, tamb�em da Bell Labs, �e um superset do sh,

isto �e, possui todas as facilidades do sh e a elas agregou muitas outras. A

compatibilidade total com o sh alicia muitos utilizadores e programadores

de Shell a mudar para este ambiente.

Page 76: Manual de Linux Para Iniciados

64 Cap��tulo 4. Conceitos b�asicos

� Bourne Again Shell (bash)

Este �e a Shell mais moderna e cujo n�umero de adeptos mais cresce em todo

o mundo, seja por ser a Shell default do Linux, o seu sistema operativo

hospedeiro, seja pela sua grande diversidade de comandos, que incorporam

inclusiv�e v�arios comandos caracter��sticos da C Shell.

� C Shell (csh)

Desenvolvido por Bill Joy, da Berkley University, �e a Shell mais utilizada em

ambientes BSD e Xenix. A estrutura�c~ao de seus comandos �e muito similar

�a da linguagem C. O seu grande problema foi ignorar a compatibilidade

com o sh, seguindo por um caminho pr�oprio.

A shell pode ser encarada como um ponto a partir do qual podemos iniciar todos os

comandos do Linux, inclusiv�e o modo gr�a�co. Podemos efectuar as mesmas classes de

aplica�c~oes do modo gr�a�co como, por exemplo, os editores de texto1, e tamb�em modi�-

car as con�gura�c~oes do sistema2. A maior parte das diferen�cas existentes entre as shells

mais conhecidas, e referidas anteriormente, envolve facilidade de opera�c~ao e tipos de con-

�gura�c~ao.

Mas para usar uma shell precisamos primeiro que tudo entrar no modo texto do Linux.

Caso se esteja a utilizar o Linux em modo gr�a�co dever�a pressionar-se 'Ctrl'+'Alt'+'F1'.

Onde est�a escrito nome da m�aquina login: introduza o nome de utilizador e a seguir

o sistema ir�a solicitar a password respectiva com Password:. Introduza a password e

pressione Enter.

Deve aparecer no ecr~a qualquer coisa semelhante a:

[utilizador@nome_da_m�aquina direct�orio_actual]#

Este �e o seu prompt de comandos.

O modo texto no qual entramos �e composto por terminais. O que s~ao terminais? Um

terminal, ou consola, �e o conjunto formado pelo teclado e o monitor, que constitui o dis-

positivo padr~ao de entrada e sa��da de dados. No Linux temos sete terminais virtuais nos

quais podemos estar a trabalhar ao mesmo tempo. Esses terminais s~ao muito �uteis, pois

podemos estar a escrever um texto num terminal e a ler uma p�agina do manual no outro.

1como o emacs, vi, joe2com o linuxconf em modo texto

Page 77: Manual de Linux Para Iniciados

4.2. Comandos b�asicos do Linux 65

4.2 Comandos b�asicos do Linux

O Linux �e um sistema operativo case-sensitive, ou seja, netscape, NETSCAPE e nEtS-

cApE s~ao tres comandos distintos. Pela mesma raz~ao, o meu �cheiro, O Meu Ficheiro e

o MEU FiChEiRo s~ao tres �cheiros distintos. Os usernames e respectivas passwords s~ao

tamb�em case-sensitive. Isto adv�em do facto do sistema operativo Unix e a linguagem de

programa�c~ao C serem case-sensitive.

Os nomes dos �cheiros podem ter um comprimento m�aximo de 256 caracteres e podem

conter letras, n�umeros, pontos ('.'), underscores (' '), h��fens ('-'), al�em de outros caracteres

n~ao recomend�aveis.

Nomes de �cheiros come�cados pelo caracter '.' n~ao s~ao normalmente listados atrav�es dos

comandos ls ou dir. Pensem nestes �cheiros como se fossem �cheiros escondidos. Para os

visualizar, deve usar-se o comando ls -a (com op�c~ao 'all').

A barra '/' �e usada para a separa�c~ao entre direct�orios num caminho. �E equivalente, em

DOS, �a barra 'n'.

Normalmente, num �cheiro em Linux (por exemplo, �cheiros de con�gura�c~ao), uma li-

nha com o caracter '#' no ��nicio �e um coment�ario.

4.2.1 Comandos e atalhos essenciais

'Ctrl' + 'Alt' + 'F1'

Muda para o primeiro terminal de texto. Em Linux podemos ter v�arios terminais aber-

tos ao mesmo tempo, como foi referido anteriormente.

'Ctrl' + 'Alt' + 'Fn'

(n=1..6). Muda para o n-�esimo terminal.

'Ctrl' + 'Alt' + 'F7'

Muda para o primeiro terminal GUI (se houver algum a correr nesse momento).

Page 78: Manual de Linux Para Iniciados

66 Cap��tulo 4. Conceitos b�asicos

'Ctrl' + 'Alt' + 'Fm'

(m=7..12). Muda para o m-�esimo terminal GUI (se houver um terminal GUI a correr

na sess~ao m-1).

'Tab'

Autocompleta o comando (num terminal). Este �e um dos melhores atalhos em Linux.

Trabalha inclusivamente na prompt LILO.

'Seta para Cima' ou 'Seta para Baixo'

Lista um por um e permite edi�c~ao do historial de comandos executados. Carregue em

'ENTER' para executar o comando escolhido.

'Shift' + 'PgUp'

Visualiza as janelas anteriores do terminal. Trabalha inclusivamente na prompt de lo-

gin, para podermos visualizar as mensagens de bootup.

'Shift' + 'PgDown'

Visualiza as janelas seguintes do terminal.

'Ctrl' + 'Alt' + '+'

(em X-window). Muda para a pr�oxima resolu�c~ao de X-server (se tivermos con�gurado

o X-server para mais do que uma resolu�c~ao).

'Ctrl' + 'Alt' + '-'

(em X-window). Muda para a resolu�c~ao anterior do X-server.

Page 79: Manual de Linux Para Iniciados

4.2. Comandos b�asicos do Linux 67

'Ctrl' + 'Alt' + 'BkSpc'

(em X-window). Mata (kill) o servidor X-window actual. Usa-se quando o X-window

bloqueia e n~ao podemos sair normalmente.

'Ctrl' + 'Alt' + 'Del'

Desliga o sistema e faz reboot. Executa o comando shutdown normal.

'Ctrl' + 'c'

Mata (kill) o processo corrente.

'Ctrl' + 'd'

Sai da sess~ao actual.

'Ctrl' + 'd'

Envia End-of-File para o processo corrente.

'Ctrl' + 'l'

Limpa o ecr~a. Igual ao comando clear da shell.

'Ctrl' + 's'

P�ara a transferencia para o terminal.

'Ctrl' + 'q'

Retoma a transferencia para o terminal. Tentar este atalho quando o terminal deixar

de responder misteriosamente...

Page 80: Manual de Linux Para Iniciados

68 Cap��tulo 4. Conceitos b�asicos

'Ctrl' + 'z'

Suspende a execu�c~ao interactiva do processo corrente. O comando da shell fg retoma

a execu�c~ao do processo em modo interactivo (em foreground). O comando bg retoma a

execu�c~ao do processo em modo n~ao-interactivo (em background).

reset

Restaura um terminal estragado (com caracteres esquisitos) para as de�ni�c~oes de de-

feito. Usa-se, por exemplo, quando se executa o comando cat num �cheiro bin�ario. Pode-

mos n~ao ver o comando enquanto o escrevemos.

Bot~ao do Meio do Rato

Cola (paste) o texto seleccionado noutro s��tio qualquer. Esta �e a opera�c~ao copy-paste

normal em Linux (n~ao funciona no Netscape ou no WordPerfect, porque estes programas

usam o copy-paste t��pico do Ms-Windows. Perfeito quando usado com um rato Linux-

compat��vel de 3 bot~oes (Logitech ou algo no g�enero).

(til). Muda para a home directory. Por exemplo, cd /minha dir muda para o direct�orio

minha dir situada abaixo da nossa home directory. Escrever apenas cd �e o equivalente ao

comando cd .

.

(ponto). Directoria actual. Por exemplo, ./meu programa executa o comandomeu programa

situado no direct�orio corrente.

..

(dois pontos). Directoria-pai do direct�orio corrente.

Page 81: Manual de Linux Para Iniciados

4.2. Comandos b�asicos do Linux 69

4.2.2 Comandos comuns de Informa�c~ao do Sistema

pwd

Exibe o nome do direct�orio corrente.

hostname

Exibe o nome da m�aquina onde estamos a trabalhar (hostname). Usa-se o comando

netconf para mudar o nome da m�aquina.

whoami

Exibe o nosso username (nome de login).

id username

Exibe o user id (uid), o group id (gid), id efectivo (se for diferente do uid) e todos os

grupos suplementares relacionados com o utilizador especi�cado na vari�avel username.

date

Exibe ou modi�ca a data e hora do sistema. Por exemplo, para mudar a data e hora

para 2000-12-31 23:57, usa-se o comando date com esta forma: date 123123572000 Para

modi�car o rel�ogio de hardware (hardware clock) a partir do rel�ogio do sistema, usa-se o

comando setclock.

time

Determina o tempo que demora a completar um determinado processo, al�em de outra

informa�c~ao. N~ao confundir com o comando date. Por exemplo, podemos saber quanto

tempo demora a exibir o conte�udo de um direct�orio, usando o comando time da seguinte

forma: time ls

who

Exibe uma lista com os utilizadores que est~ao \logados" (logged in) �a m�aquina.

Page 82: Manual de Linux Para Iniciados

70 Cap��tulo 4. Conceitos b�asicos

rwho -a

Exibe uma lista com todos os utilizadores que est~ao ligados �a nossa rede. O servi�co

rwho deve estar a correr de modo a este comando poder funcionar. Se n~ao estiver, corre-se

o comando setup como root para ligar o servi�co rwho.

�nger username

Exibe informa�c~ao detalhada sobre um determinado utilizador, especi�cado na vari�avel

username. Por exemplo, �nger root d�a-nos toda a informa�c~ao sobre o utilizador root.

last

Exibe uma lista com os �ultimos utilizadores que se ligaram (logged in) ao sistema. Se

usarmos o comando last em conjunto com less, podemos navegar nessa lista: last | less.

Se, por outro lado, usarmos o comando desta forma: last -n, obtemos uma lista com os

�ultimos n logins ao sistema.

uptime

Tempo que passou desde o �ultimo reboot.

ps

(= print status). Lista os processos que est~ao a correr neste momento pelo utilizador

corrente.

ps aux j more ou ps aux j less

Lista todos os processos que est~ao a correr na m�aquina neste momento, inclusivamente

aqueles que n~ao tem controlo no terminal, juntamente com a informa�c~ao sobre o utilizador

que iniciou cada um deles.

Page 83: Manual de Linux Para Iniciados

4.2. Comandos b�asicos do Linux 71

ps aux j grep exemplo

Lista todos os processos chamados exemplo. O comando grep �ltra o resultado do co-

mando ps aux (atrav�es da pipe '|'), aparecendo s�o as linhas que contem o texto exemplo.

top

Exibe uma lista com os processos que est~ao a correr na m�aquina neste momento, orde-

nados decrescentemente por tempo de CPU gasto.

uname -a

Informa�c~ao sobre o servidor.

free

Informa�c~ao de mem�oria (em kilobytes).

df -h

(= disk free). Exibe informa�c~ao sobre os discos de todos os sistemas de �cheiros (�-

lesystems), numa linguagem entendida pelos humanos...

du / -bh j more

(= disk usage). Exibe uma lista detalhada do uso do disco para cada subdirectoria,

come�cando pelo direct�orio /, em linguagem leg��vel.

cat /proc/cpuinfo

Informa�c~ao sobre o CPU. Note-se que os �cheiros no direct�orio /proc n~ao o s~ao na

realidade. Tratam-se somente de ganchos (hooks) para visualizar informa�c~ao dispon��vel no

Page 84: Manual de Linux Para Iniciados

72 Cap��tulo 4. Conceitos b�asicos

kernel.

cat /proc/interrupts

Exibe uma lista com os interrupts em uso.

cat /proc/version

Vers~ao do Linux e outra informa�c~ao.

cat /proc/�lesystems

Exibe uma lista com os sistemas de �cheiros (�lesystems) em uso neste momento.

cat /etc/printcap

Exibe o setup das impressoras ligadas ao sistema.

lsmod

(como root). Exibe uma lista com os m�odulos de kernel carregados neste momento.

set j more

Exibe o ambiente corrente do utilizador.

echo $PATH

Exibe o conte�udo da vari�avel de ambiente PATH. Este comando tamb�em pode ser usado

para visualizar outras vari�aveis de ambiente. Use o set para ver todo o ambiente.

dmesg

Exibe as mensagens de boot (boot messages). Na realidade, exibe o conte�udo do �cheiro

/var/log/dmesg.

Page 85: Manual de Linux Para Iniciados

4.2. Comandos b�asicos do Linux 73

4.2.3 Opera�c~oes b�asicas

comando {help j more ou comando {help j less

Exibe uma ajuda simples ao comando (aplica-se �a maior parte dos comandos Linux). {

help �e semelhante ao switch /h do DOS. As pipes more e less usam-se quando a informa�c~ao

ocupa mais do que um ecr~a, sendo que a op�c~ao more permite ver p�agina a p�agina, sem no

entanto podermos voltar atr�as, e a op�c~ao less, permite-nos navegar linha a linha, para a

frente e para tr�as.

ls

Exibe o conte�udo do direct�orio corrente. Em Linux, o comando dir �e um alias do co-

mando ls. Muitos utilizadores utilizam o comando ls como um alias do comando ls {color.

ls -al j more

Exibe o conte�udo do direct�orio corrente, todos os �cheiros (inclu��ndo aqueles que

come�cam por .), e num formato longo.

cd directoria

(= change directory). Muda para uma determinado direct�orio. Usar s�o o comando cd

signi�ca mudarmos directamente para a nossa home directory. O comando cd - leva-nos

para o direct�orio anterior �a corrente e �e um modo conveniente de navega�c~ao entre duas

directorias.

cp fonte destino

Copia �cheiros entre a fonte e o destino.

mcopy fonte destino

Copia um �cheiro de / para um sistema de �cheiros DOS (n~ao �e necess�ario usar

pr�eviamente o comando mount). Por exemplo, mcopy a:.bat /lixo. Usar o comando

man mtools para comandos relacionados, como por exemplo: mdir, mcd, mren, mmove,

Page 86: Manual de Linux Para Iniciados

74 Cap��tulo 4. Conceitos b�asicos

mdel, mmd, mrd, mformat,....

mv fonte destino

Move ou altera o nome de �cheiros. O mesmo comando �e usado para mover ou alterar

nomes de directorias ou �cheiros.

ln fonte destino

Cria um hard link chamado destino que aponta para o �cheiro chamado fonte. O link

aparenta ser uma c�opia do �cheiro original, mas na realidade, apenas uma c�opia do �cheiro

�e mantida, sendo que existem duas (ou mais) entradas para o �cheiro no direct�orio. Qual-

quer altera�c~ao ao �cheiro fonte �e imediatamente vis��vel no destino. Quando uma entrada

no direct�orio �e removida, as outras mantem-se. Limita�c~oes dos hard links: os �cheiros

tem de estar obrigatoriamente no mesmo �lesystem. �E imposs��vel criar hard links para

direct�orios ou �cheiros especiais.

ln -s fonte destino

Cria um link simb�olico (symbolic link) chamado destino a apontar para o �cheiro fonte.O link simb�olico apenas especi�ca o caminho (path) para o �cheiro fonte. Ao contr�ario dos

hard links, a fonte e o destino n~ao precisam de pertencer ao mesmo �lesystem. Limita�c~oes

dos symbolic links: Se o �cheiro original for removido, o link parte-se (broken link). Os

symbolic links podem tamb�em criar referencias circulares (como as de bases de dados e

folhas de c�alculo).

rm �cheiro

Remove (apaga) o �cheiro especi�cado na vari�avel �cheiro.

mkdir homedogel

Cria um direct�orio chamado homedogel.

rmdir directoria

Remove o direct�orio especi�cada na vari�avel directoria.

Page 87: Manual de Linux Para Iniciados

4.2. Comandos b�asicos do Linux 75

rm -r �cheiros

(recursive remove). Remove �cheiros, directorias e sub-directorias. Semelhante ao co-

mando DOS deltree. Cuidado ao usar este comando como root: podemos apagar todo o

nosso sistema, se usarmos este comando no direct�orio /, e n~ao existe (ainda) um comando

undelete em Linux.

cat �cheiro j more ou cat �cheiro j less

Exibe o conte�udo de um �cheiro de texto chamado �cheiro. Para �cheiros demasiada-

mente longos, �e conveniente usar os comandos head e tail , que exibem o princ��pio e o �m

do �cheiro em quest~ao. Se, por engano, tentarmos visualizar o conte�udo de um �cheiro

bin�ario, e s�o aparecerem caracteres esquisitos, usa-se o comando reset para voltar ao nor-

mal.

less �cheiro

Para navegar no conte�udo de um �cheiro de texto. Para terminar a nossa navega�c~ao,

carrega-se na tecla q.

pico �cheiro

Edita o �cheiro denominado �cheiro.

pico -w �cheiro

Edita um �cheiro chamado �cheiro, desactivando a op�c~ao long line wrap. �Util para

editar �cheiros de con�gura�c~ao, por exemplo, o �cheiro /etc/fstab.

lynx �cheiro.html

Exibe um �cheiro html ou navega na internet a partir do modo texto.

Page 88: Manual de Linux Para Iniciados

76 Cap��tulo 4. Conceitos b�asicos

tar -zxvf �cheiro.tar.gz

Descompacta (untar) um �cheiro (*.tar.gz ou *.tgz)3, habitualmente retirado da inter-

net.

tar -xvf �cheiro.tar

Descompacta um �cheiro (*.tar)4

gunzip �cheiro.gz

Descompacta um �cheiro zipado (*.gz ou *.z). Usa-se o gzip (ou o zip ou compress)

para compactar os �cheiros.

bunzip2 �cheiro.bz2

Descompacta um �cheiro (*.bz2) compactado com o utilit�ario bzip2. Normalmente �e

um m�etodo de compress~ao mais e�ciente do que o obtido com o gzip.

unzip �cheiro.zip

Descompacta um �cheiro (*.zip) compactado com um utilit�ario compat��vel com o pkzip

do DOS.

�nd / -name "maquinas"

Procura o �cheiro chamado maquinas a partir do direct�orio /. A vari�avel �lename pode

conter wildcards (*, ?).

locate �cheiro

Procura o �cheiro que cont�em o texto �cheiro. Mais f�acil de usar e mais r�apido que o

3*.tar.gz ou *.tgz - tarred and compressed tarball4*.tar - tarred but uncompressed tarball

Page 89: Manual de Linux Para Iniciados

4.2. Comandos b�asicos do Linux 77

comando �nd.

pine

Um bom cliente de mail em modo texto. Outro cliente de mail excelente �e o elm. Per-

mite ler as mensagens enviadas, por exemplo, por um processo cron.

talk username1

Fala com outro utilizador ligado neste momento �a nossa m�aquina (ou noutra m�aquina

atrav�es do comando talk username1@outramaquina). Para o outro utilizador aceitar o con-

vite, necessita digitar o comando talk username2. Para evitar que tentem falar connosco,

usa-se o comando mesg n para recusar os pedidos. Pode ser �util o uso dos comandos whoe rwho para ver quem est�a ligado ao sistema.

mc

Inicia o gestor de �cheiros Midnight Commander.

telnet servidor

Conecta-se a outra m�aquina usando o protocolo TELNET. Use o nome da m�aquina

remota ou o seu endere�co IP. O Telnet vai conectar-se �a outra m�aquina, pedindo-nos um

login e uma password, de modo que temos de ter uma conta nessa m�aquina. Este comando

n~ao �e muito seguro, uma vez que todas as transferencias de dados s~ao feitas em modo

texto, inclu��ndo a nossa password!

rlogin servidor

(= remote login). Conecta-se a outra m�aquina. O login name da sess~ao corrente �e usado

para entrar na m�aquina remota. Se se pretender entrar num outro username, adicona-se a

op�c~ao -l username.

rsh servidor

(= remote shell). Uma outra maneira de nos ligarmos a uma m�aquina remota. Tal

como o comando rlogin, �e usado o login name da sess~ao corrente, a menos que se use a

Page 90: Manual de Linux Para Iniciados

78 Cap��tulo 4. Conceitos b�asicos

op�c~ao -l.

ftp servidor

Acede a outra m�aquina via protocolo FTP. O FTP �e bom para copiar �cheiros para/de

um servidor. Deve-se tentar o utilizador anonymous (quando n~ao temos conta aberta no

sistema remoto). Os comandos principais s~ao: ls (exibir o conte�udo do direct�orio corrente

do sistema remoto), ascii, binary (para mudar o modo de transferencia de �cheiros para

texto ou bin�ario), get (copia um �cheiro do sistema remoto para o sistema local), mget

(copia v�arios �cheiros ao mesmo tempo, do sistema remoto para o sistema local), put (co-

pia um �cheiro do sistema local para o sistema remoto), mput (copia v�arios �cheiros, do

sistema local para o sistema remoto), bye (desconecta-se do sistema remoto).

minicom

Programa minicom (parecido com o Procomm for Linux).

./programa

Corre um execut�avel no direct�orio corrente, se esta n~ao estiver na vari�avel de ambiente

PATH.

xinit

Inicia um servidor barebone X-windows (sem o gestor de janelas).

startx

Inicia um servidor X-window, juntamente com o gestor de janelas por defeito.

startx �� :1

Inicia outra sess~ao de X-windows no ecr~a 1 (por defeito, inicia no ecr~a 0). Podemos

ter v�arios terminais GUI a correr concorrentemente. Salta-se entre eles com as teclas

Page 91: Manual de Linux Para Iniciados

4.2. Comandos b�asicos do Linux 79

'Ctrl'+Alt'+'F7', 'Ctrl'+'Alt'+'F8', etc.

xterm

(no terminal X). Corre um terminal X-window simples. Use o comando exit para sair.

xboing

(no terminal X). Jogo para correr no ambiente X. Provavelmente, muitos jogos e pro-

gramas parecidos est~ao instalados na nossa m�aquina.

gimp

(no terminal X). Editor de imagens poderoso. Demora algum tempo a aprender, mas

�e excelente para artistas. Use o bot~ao do rato do lado direito para obter menus.

netscape

(no terminal X). Corre o browser Netscape (necessita de ser instalado antes).

netscape -display host:0.0

(no terminal X). Corre uma sess~ao de Netscape na m�aquina remota host na sess~ao 0

ecr~a 0. A nossa m�aquina deve ter permiss~ao para executar o netscape na m�aquina re-

mota (podemos obter permiss~ao correndo o comando xhost maquina local no terminal X

da m�aquina remota).

shutdown -h now

(como root). Desliga o sistema e n~ao reinicializa.

shutdown -r now

(como root). Desliga e reinicializa o sistema. Pode, em alternativa, usar a combina�c~ao

de teclas 'Ctrl'+'Alt'+'Del' para executar o comando na m�aquina.

Page 92: Manual de Linux Para Iniciados

80 Cap��tulo 4. Conceitos b�asicos

halt ou reboot

(como root). Usado para desligar o sistema e n~ao reinicializar (halt) ou para fazer

um reboot ao sistema (reboot). Mais f�acil de usar (e decorar) do que os dois comandos

anteriores.

man topico

Exibe o conte�udo das p�aginas do manual do sistema sobre o assunto topico. Tente

usar o comando man man primeiro. Carregue na tecla q para cancelar a visualiza�c~ao.

O comando info topic funciona aproximadamente como o comando man e pode conter

informa�c~ao mais actualizada. As p�aginas do manual podem ser de di�cil leitura. Use o

comando topic {help para p�aginas de ajuda mais curtas e f�aceis de ler. Se necessitar de

mais ajuda, consulte o direct�orio /usr/doc.

apropos topico

Exibe uma lista de comandos que tenham alguma rela�c~ao com o topico.

4.2.4 Controlo de processos

ps

(= print status). Exibe uma lista com os processos activos no sistema com os respecti-

vos identi�cadores - PID (Process ID). Use ps -aux para exibir uma lista semelhante mas

com mais informa�c~ao - todos os processos e respectivos utilizadores. Use top para manter

a listagem vis��vel e online.

fg PID

Passa um processo que est�a a correr em background para foreground.

bg PID

Processo inverso ao anterior: passa um processo para background.

Page 93: Manual de Linux Para Iniciados

4.2. Comandos b�asicos do Linux 81

kill PID

For�ca o �nal do processo. Para saber qual o PID do processo que queremos matar,

usa-se o comando ps.

killall nome programa

Mata programas pelo nome.

xkill

Usado num terminal x. Mata um processo GUI com o rato - aponte o cursor do rato �a

janela com o processo que queremos matar e clique.

lpc

(como root). Veri�ca e controla a(s) impressora(s).

lpq

Exibe o conte�udo da �la de impress~ao (queue). Em KDE (X-Window), podemos usar

o Print Queue GUI dispon��vel nos utilit�arios.

lprm job

Remove um trabalho de impress~ao da queue.

nice nome programa

Corre o nome programa ajustando a sua prioridade. Como a prioridade n~ao �e especi�-

cada neste exemplo, ela �e ajustada com o valor 10 (o processo vai correr mais lentamente)

a partir do valor de defeito (usualmente o 0 - zero). Quanto mais baixo for o n�umero,

mais alta �e a prioridade. Este n�umero pode variar entre -20 e 19, sendo que s�o o utilizador

root pode de�nir prioridades com valores negativos. Use o comando top para exibir as

Page 94: Manual de Linux Para Iniciados

82 Cap��tulo 4. Conceitos b�asicos

prioridades dos processos activos.

renice -1 PID

(como root). Muda a prioridade de um processo activo para -1. Utilizadores normais

s�o podem mudar valores de prioridade para os seus processos, e s�o para valores superiores

ao actual (tornando-os mais lentos).

4.2.5 Comandos b�asicos de administra�c~ao

printtool

(como root num terminal X). Ferramenta de con�gura�c~ao de impressoras. As con�-

gura�c~oes �cam no �cheiro /etc/printcap.

setup

(como root). Con�gura o rato, placa de som, teclado, X-windows e servi�cos de sistema.

alias ls="ls {color"

Cria um alias para o comando ls. Ponha o alias no �cheiro /etc/bashrc se quiser que

esteja sempre dispon��vel para todos os utilizadores. O comando alias d�a-nos uma lista com

todos os aliases do nosso sistema.

adduser utilizador

(como root). Cria uma nova conta. Por exemplo, adduser barbara. N~ao esquecer de

de�nir uma password para o utilizador como passo seguinte. O home-directory do utiliza-

dor passa a ser /home/utilizador. Ir�a estar associado a cada utilizador um identi�cador -

UID (User ID).

useradd utilizador

(como root). Igual ao comando adduser.

Page 95: Manual de Linux Para Iniciados

4.2. Comandos b�asicos do Linux 83

userdel utilizador

(como root). Remove uma conta do sistema, n~ao apagando no entanto, o home-directory

e o mail n~ao entregue.

groupadd grupo

Cria um novo grupo de utilizadores do sistema. A este grupo, tal como a qualquer

utilizador, ir�a estar associado um identi�cador - GID (Group ID).

passwd

Muda a password na conta actual. O utilizador root pode alterar a password de qual-

quer utilizador, usando o comando passwd utilizador.

chmod perm �cheiro

(= change mode). Muda as permiss~oes de acesso a um �cheiro e/ou directoria do uti-

lizador actual (o root pode mudar permiss~oes de qualquer �cheiro no sistema). H�a tres

tipos de acesso: leitura (read - r), escrita (write - w) ou execu�c~ao (execute - x ) para tres

classes de utilizadores: dono (u), membros do grupo do dono (g), outros utilizadores no

sistema (o). Podemos ver quais as permiss~oes de determinado �cheiro usando o comando

ls -l �cheiro.

chown novo dono �cheiro ou chgrp novo grupo �cheiro

Muda o dono (chown = change owner) ou grupo (chgrp = change group) a que pertence

determinado �cheiro. Deve-se usar estes dois comandos sempre que copiamos um �cheiro

para ser usado por outra pessoa.

su

(= substitute user id). Assume a identidade do superuser root (pedindo-nos a respectivapassword). Escreva exit para voltar ao utilizador anterior. N~ao trabalhe habitualmente

como root numa m�aquina. Este utilizador serve para executar tarefas de administra�c~ao e

Page 96: Manual de Linux Para Iniciados

84 Cap��tulo 4. Conceitos b�asicos

o comando su serve para facilitar o acesso a este utilizador.

rpm -ivh �cheiro.rpm

(= Red Hat Package Manager, como root). Instala o conte�udo de um pacote rpm da

Red Hat e mostra informa�c~ao sobre o que foi feito.

rpm -qpi �cheiro.rpm

Le a informa�c~ao sobre o conte�udo de um pacote rpm que ainda n~ao tenha sido instalado

no sistema.

rpm -Uvh �cheiro.rpm

Faz o upgrade de um determinado pacote.

glint gnorpm kpackage

(num terminal X, como root). Frontend GUI para instalar pacotes rpm em ambiente

X-window.

kernelcfg

(como root num terminal X). Programa GUI para acrescentar/remover m�odulos de ker-

nel. Pode-se fazer o mesmo da linha de comandos usando o comando insmod.

lsmod

Exibe uma lista dos m�odulos de kernel correntemente instalados no sistema.

modprobe -l �more

Exibe uma lista com todos os m�odulos dispon��veis para o kernel.

Page 97: Manual de Linux Para Iniciados

4.2. Comandos b�asicos do Linux 85

insmod parport ou insmod ppa

(como root). Insere m�odulos no kernel (um m�odulo �e (mais ou menos) o equivalente aos

device drivers de DOS). Este exemplo demonstra como inserir os m�odulos para suportar

uma zip drive externa via porta paralela.

rmmod nome m�odulo

(como root). Remove o m�odulo nome m�odulo do kernel.

setserial /dev/cua0 port 0x03f8 irq 4

(como root). De�ne uma porta s�erie com valores n~ao standard. O exemplo mostra

o valor standard para a primeiro porta s�erie (cua0 ou ttyS0). Os valores standard para

a segunda porta s�erie (cua1 ou ttyS1) s~ao: port 0x02f8 irq 3. A terceira porta s�erie:

port 0x03e8 irq 4. A quarta porta s�erie: 0x02e8 irq 3. Acrescente os valores no �cheiro

/etc/rc.d/rc.local se quiser de�ni-los no boot. Veja man setserial para mais informa�c~oes.

fdisk

(como root). Utilit�ario para criar parti�c~oes de disco duro do Linux (o DOS tem um

utilit�ario com o mesmo nome para a mesma fun�c~ao, embora este s�o deixe criar parti�c~oes

para DOS).

depmod -a

(como root). Constr�oi a tabela de dependencias dos m�odulos de kernel. Pode ser �util,

por exemplo, depois de instalar um novo kernel. Use modprobe ou insmod para carregar

os m�odulos.

ldcon�g

(como root). Re-cria os bindings e a cache para o carregador (loader) de bibliotecas

dinamicas (dynamic libraries - ld). �Util, por exemplo, depois de instalar novas DLL5. Este

5DLL - dynamic linked libraries

Page 98: Manual de Linux Para Iniciados

86 Cap��tulo 4. Conceitos b�asicos

comando �e executado no boot do sistema.

touch �cheiro

Cria um �cheiro vazio se n~ao existir.

Fdformat /dev/fd0H1440 ou mkfs -c -t ext2 /dev/fd0H1440

(= oppy disk format, como root - dois comandos). Executa uma formata�c~ao em baixo

n��vel de uma disquete no primeiro drive de disquetes do sistema (/dev/fd0 ) de alta densi-dade (1440 KB). Depois cria um sistema de �cheiros Linux (-t ext2 ), veri�cando/marcando

os blocos defeituosos (-c). Criar o sistema de �cheiros �e o equivalente a uma formata�c~ao

de alto n��vel.

badblocks /dev/fd01440 1440

(como root). Veri�ca se uma disquete de alta densidade tem blocos defeituosos e exibe

os resultados no ecr~a. O parametro 1440 diz ao sistema para veri�car 1440 blocos na dis-

quete. Este comando n~ao modi�ca a disquete.

fsck -t ext2 /dev/hda2

(= �le system check, como root). Veri�ca e repara um sistema de �cheiros. O exem-

plo usa a parti�c~ao hda2 e o tipo ext2 de sistema de �cheiros. Importante: n~ao se deveveri�car/reparar um sistema de �cheiros que esteja montado. Deve-se sempre desmontar

previamente o sistema de �cheiros a ser veri�cado antes de se iniciar esta opera�c~ao.

dd if = /dev/fd0H1440 of = oppy image ou dd if = oppy image of = /dev/fd0H1440

(dois comandos). Cria uma imagem da disquete para um �cheiro chamado oppy image

no direct�orio corrente. Depois copia essa imagem para outra disquete. Tem a mesma fun�c~ao

do comandos diskcopy do DOS.

Page 99: Manual de Linux Para Iniciados

4.2. Comandos b�asicos do Linux 87

4.2.6 Detalhes sobre montagem (mounting)

mount -t auto /dev/fd0 /mnt/ oppy

(como root). Monta o drive de disquetes. o direct�orio /mnt/ oppy tem de existir, estar

vazia e n~ao ser o direct�orio corrente.

mount -t auto /dev/cdrom /mnt/cdrom

(como root). Monta o leitor de CDs. Pode ser necess�ario criar/alterar o �cheiro

/dev/cdrom dependendo da localiza�c~ao do leitor. o direct�orio /mnt/cdrom tem de existir,

estar vazia e n~ao ser o direct�orio corrente.

mount /mnt/ oppy

Monta um drive de disquetes como um utilizador normal. O �cheiro /etc/fstab tem

de estar preparado para aceitar este comando. o direct�orio /mnt/ oppy n~ao pode ser o

direct�orio corrente.

mount /mnt/cdrom

Monta um leitor de CDs como um utilizador normal. O �cheiro /etc/fstab tem de estar

preparado para aceitar este comando. o direct�orio /mnt/cdrom n~ao pode ser o direct�orio

corrente.

umount /mnt/ oppy

Desmonta (unmount) o drive de disquetes. o direct�orio /mnt/ oppy n~ao pode ser o

direct�orio corrente.

4.2.7 Ferramentas de gest~ao de rede

netconf

(como root). Um utilit�ario baseado em menus para a gest~ao (setup) da nossa rede.

Usado na distribui�c~ao Red Hat.

Page 100: Manual de Linux Para Iniciados

88 Cap��tulo 4. Conceitos b�asicos

linuxconf

(como root). Utilit�ario de con�gura�c~ao do nosso sistema linux. Usado na distribui�c~ao

Red Hat.

setup ou netcon�g

(como root). Ferramentas com a mesma fun�c~ao das duas mencionadas acima, mas estas

s~ao usadas na distribui�c~ao Slackware de linux.

ping m�aquina

Veri�ca a liga�c~ao a outra m�aquina, podendo a vari�avel m�aquina ser o nome da m�aquina

ou o endere�co IP. Para terminar, use o 'Ctrl'+'c'.

route -n

Exibe a tabela de routeamento (routing table).

ipfwadm -F -p m

Con�gura a pol��tica de reencaminhamentos de IPs da �rewall para passar a fazer mas-

querading. N~ao �e muito seguro mas �e simples. A partir da vers~ao 2.2 do linux, deve-se

usar o ipchains, sendo necess�ario ter o kernel con�gurado para suportar IP �rewalls e que

o routing de IP esteja activado.

ifcon�g

(como root). Exibe informa�c~ao sobre os interfaces de rede correntemente activos (ether-

net, ppp, etc). A primeira interface ethernet deve ser a eth0, a segunda a eth1, etc. A

primeira interface ppp (modems) �e a ppp0, a segunda a ppp1, etc. A interface lo �e a

loopback only com o endere�co 127.0.0.1 que deve estar sempre activa. Usa a op�c~ao ifcon�g

Page 101: Manual de Linux Para Iniciados

4.3. Instalar o X 89

{help para mais informa�c~oes sobre como con�gurar as interfaces.

ifup interface

Acciona uma interface de rede. Exemplo: ifup eth0 ou ifup ppp0. Utilizadores normais

s�o podem accionar ou desactivar uma interface de rede se tiverem permiss~oes para isso e

s�o as interfaces ppp (use o comando netconf ).

ifdown interface

Desactiva uma interface de rede.

netstat � more ou netstat � less

Exibe informa�c~ao sobre o estado da nossa rede.

4.3 Instalar o X

Antes de come�car a con�gurar o X �e necess�ario recolher todas as informa�c~oes sobre a placa

gr�a�ca, do monitor e do rato. Depois de termos estas informa�c~oes vamos ao direct�orio onde

est�a instalado o ambiente X Window. Normalmente, �ca em /usr/x11r6/bin. Executa-se

o comando

xf86config

que nos conduz a uma sequencia de perguntas:

1. Mouse. Enter a protocol number.

Normalmente os ratos podem ser de dois tipos ou s�erie (op�c~oes 1 ou 2) ou PS/2

(op�c~ao 4).

2. Do you want to enable ChordMiddle?

Caso o rato tenha 3 bot~oes podemos de�nir o comportamento do bot~ao do meio.

Page 102: Manual de Linux Para Iniciados

90 Cap��tulo 4. Conceitos b�asicos

3. Do you want to enable Emulate3Buttons?

Caso o rato s�o tenha 2 bot~oes e pretendemos emular o terceiro pressionando os dois

ao mesmo tempo respondemos yes.

4. Mouse device:

O rato j�a tem normalmente um link default para /dev/mouse. Por defeito basta

premir enter, a n~ao ser que seja um rato PS/2, pois neste caso �e preciso mudar para

/dev/psaux

5. Do you want to enable these bindings for the Alt keys?

Normalmente responde-se no.

6. hsync in kHz; monitor type with characteristic modes

1 - 31.5; Standard VGA, 640x480 @ 60 Hz

2 - 31.5 - 35.1; Super VGA, 800x600 @ 56 Hz

3 - 31.5, 35.5; 8514 Compatible, 1024x768 @ 87 Hz int. (no 800x600)

4 - 31.5, 35.15, 35.5; Super VGA, 1024x768 @ 87 Hz int., 800x600

5 - 31.5 - 37.9; Extended Super VGA, 800x600 @ 60 Hz, 640x480 @ 72 Hz

6 - 31.5 - 48.5; Non-Int. SVGA, 1024x768 @ 60 Hz, 800x600 @ 72 Hz

7 - 31.5 - 57.0; High Frequency SVGA, 1024x768 @ 70 Hz

8 - 31.5 - 64.3; Monitor that can do 1280x1024 @ 60 Hz

9 - 31.5 - 79.0; Monitor that can do 1280x1024 @ 74 Hz

10 - 31.5 - 82.0; Monitor that can do 1280x1024 @ 76 Hz

11 - Enter your own horizontal sync range

Procure no seu manual do monitor a frequencia que se melhor adapta ao seu monitor

ou introduza 11 para de�nir a frequencia vertical e horizontal.

1 - 50-70

2 - 50-90

3 - 50-100

4 - 40-150

5 - Enter your own vertical sync range

Identico para a vertical.

Page 103: Manual de Linux Para Iniciados

4.3. Instalar o X 91

7. Enter an identifier for your monitor definition:

Enter the vendor name of your monitor:

Enter the model name of your monitor:

Coloque a identi�ca�c~ao que mais lhe convier.

8. Do you want to look at the card database?

Introduza Yes, e procure a sua placa gr�a�ca no menu.

9. 1 - The XF86 Mono server. This a monochrome server that should work

VGA-compatible card, in 640x480 (more on some SVGA chipsets).

2 - The XF86 VGA16 server. This is a 16-color VGA server that should work

any VGA-compatible card.

3 - The XF86 SVGA server. This is a 256 color SVGA server that supports

a number of SVGA chipsets. It is accelerated on some Cirrus and WD chipsets;

it supports 16/32-bit color on certain Cirrus configuratio.

4 - The accelerated servers. These include XF86 S3, XF86 Mach32, XF86 Ma,

XF86 8514, XF86 P9000, XF86 AGX, XF86 W32 and XF86 Mach64.Which one of these

screen types do you intend to run by default (1-4)?

Pode optar por uma destas op�c~oes pr�e-de�nidas, ou se quiser �car com toda a sua

con�gura�c~ao feita anteriormente introduza 5

10. Do you want me to set the symbolic link?

Introduza yes para de�nir os links simb�olicos ao �cheiro de con�gura�c~ao XF tipo de acelerador

para o seu startx.

11. How much video memory do you have on your video card:

1 - 256K

2 - 512K

3 - 1024K

4 - 2048K

5 - 4096K

6 - Other

Basta dizer quanta mem�oria tem a sua placa gr�a�ca.

Page 104: Manual de Linux Para Iniciados

92 Cap��tulo 4. Conceitos b�asicos

12. Enter an identifier for your video card definition:

You can simply press enter here if you have a generic card, or want to

describe your card with one string.

Enter the vendor name of your video card:

Enter the model (board) name of your video card:

Coloque a identi�ca�c~ao que mais lhe convier.

13. 1 - Chrontel 8391 (uncertain at the time of writing)

2 - ICD2061A and compatibles (ICS9161A, DCS2824)

3 - ICS2595

4 - ICS5342 (similar to SDAC, but not completely compatible)

5 - S3 GenDAC (86C708) and ICS5300 (autodetected)

6 - S3 SDAC (86C716)

7 - STG 1703 (autodetected)

8 - Sierra SC11412

9 - TI 3025 (autodetected)

10 - TI 3026 (autodetected)

11 - IBM RGB 514 (autodetected)

12 - IBM RGB 524 (autodetected)

13 - IBM RGB 525 (autodetected)

14 - IBM RGB 528 (autodetected)

Just press enter if you don't want a Clockchip

Carregue em enter

E pronto, a con�gura�c~ao do X Window est�a conclu��da. Agora para come�car a utilizar o

ambiente x basta executar o comando

startx

4.4 Criar utilizadores

Para come�car a utilizar o sistema �e necess�ario antes de mais criar uma conta de utilizador

que n~ao a do root. Cada utilizador dever�a ter a sua conta por uma quest~ao de persona-

liza�c~oes e privacidade de cada um.

E porque n~ao utilizar a conta do root? Porque esta conta �e somente para admnistra�c~ao

do sistema e por isso mesmo tem todos os tipos de privil�egios e pode aceder a todos os

Page 105: Manual de Linux Para Iniciados

4.4. Criar utilizadores 93

�cheiros do sistema. Se formos iniciantes no Linux n~ao �e aconselh�avel utilizar a conta do

root pois poder-se-�a muito facilmente escrever incorrectamente um comando e apagar sem

querer �cheiros, dani�car o sistema de �cheiros, etc. Apenas se deve utilizar a conta do

root para con�gura�c~oes, adicionar hardware, instalar software, etc.

Para um uso normal, deve-se criar uma conta do utilizador padr~ao. Os sistemas Unix

tem uma seguranca pr�e-de�nida que impedem que os utilizadores apaguem os �cheiros

dos outros utilizadores, dani�cando recursos importantes como os �cheiros de con�gura�c~ao

do sistema e assim por diante. Isto acontece principalmente com os utilizadores sem ex-

periencia em administra�c~ao do sistema Unix.

Muitas distribui�c~oes Linux fornecem ferramentas para criar novas contas. Estes programas

s~ao chamados geralmente de useradd ou adduser. Como root, quando se executa um

destes comandos dever�a ver-se o resumo do uso do comando e criar uma nova conta dever�a

ser bastante simples.

Se tudo mais falhar, pode-se criar uma conta manualmente. Geralmente, tudo o que �e

necess�ario para criar uma conta �e:

1. Editar o �cheiro /etc/passwd para acrescentar o novo utilizador.

2. Editar, opcionalmente, o �cheiro /etc/shadow para especi�car os atributos da pas-

sword correspondente para o novo utilizador.

3. Criar o direct�orio pessoal do utilizador.

4. Copiar os �cheiros de con�gura�c~ao da estrutura (como o .baschrc) para o direct�orio

pessoal do novo utilizador. Eles podem ser encontrados, algumas vezes, no diretorio

/etc/skel.

Lembre-se de que para de�nir ou alterar a senha na conta do utilizador, usa-se o comando

passwd. Por exemplo: para alterar a password de um utilizador com o nome duck,

executa-se o seguinte comando:

# passwd duck

Isso ir�a de�nir ou alterar a senha duck. Se executar o comando passwd como root,

n~ao ser�a pedida a password original. Assim, se perdemos ou nos esquecemos da antiga

password, poderemos ligarmos como root, para rede�ni-la.

Page 106: Manual de Linux Para Iniciados

94 Cap��tulo 4. Conceitos b�asicos

4.5 Con�gurar uma impressora

Descrevemos de uma forma simples de con�gurar uma impressora em geral sem ser ne-

cess�ario usar utilit�arios de con�gura�c~ao como o LinuxConf, printtool ou o Yast. As im-

pressoras que precisam de drivers espec���cos precisam de detalhes adicionais n~ao descritos

aqui. Nota: se a distribui�c~ao que instalou disp~oe de utilit�arios de con�gura�c~ao, n~ao �e pre-

ciso passar por toda esta complexidade.

Para con�gurar a impressora basta seguir os passos seguintes:

1. ls /dev/lp* - Nessa listagem devem aparecer no minimo, normalmente, tres devices

de impressora ( /dev/lp0; /dev/lp1; /dev/lp2 ).

2. Fa�ca o reboot da m�aquina para veri�car se a distribui�c~ao instalada reconhece a porta

de impress~ao. Procure na inicializa�c~ao, algo do tipo lp* at 0x378 (N~ao �e realmente

necess�ario reinicializar a m�aquina, pode-se obter o mesmo resultado utilizando apenas

o comando

dmesg

3. Para criar uma impressora com o nome de impressora. Abra com qualquer editor de

texto o �cheiro /etc/printcap

4. Escreva o seguinte:

impressora:\

:sd=/var/spool/lpd/impressora:\

:mx#0:\

:lp=/dev/lp*:

5. Depois desta opera�c~ao basta gravar, sair do editor de texto e criar o direct�orio

/var/spool/lpd/impressora com o comando mkdir /var/spool/lpd/impressora

6. Muda-se o grupo e a permiss~ao do direct�orio criado, atrav�es dos comandos

chgrp lp /var/spool/lpd/impressora

chmod 755 /var/spool/lpd/impressora

7. Teste a impressora, usando o comando lpr.

lpr -Pimpressora qualquerdocumento.txt

Page 107: Manual de Linux Para Iniciados

Cap��tulo 5

Kernel

Com a introdu�c~ao do kernel(n�ucleo do sistema) modularizado no Linux 2.0.x surgiram

importantes mudan�cas na constru�c~ao de kernels personalizados. Antes era necess�ario com-

pilar o kernel caso se desejasse aceder a determinado hardware ou sistema de �cheiros em

particular.

Para alguns hardwares o tamanho do kernel poderia atingir um certo n��vel de criticidade.

O suporte j�a embutido no kernel poderia ser uma solu�c~ao ine�ciente sob o ponto de vista

de utiliza�c~ao de recursos do sistema.

Com as facilidades disponibilizadas no kernel 2.0.x, caso haja algum componente de hard-

ware ou do sistema de �cheiros pouco usado, os drivers e m�odulos s~ao carregados somente

quando necess�arios, melhorando a performance e optimizando a utiliza�c~ao de recursos do

sistema.

5.1 Construir um Kernel modularizado

Esta opera�c~ao assume que todos os headers do kernel e pacotes com os fontes est~ao loca-

lizados no direct�orio /usr/src/linux. �E importante come�car a constru�c~ao do kernel com a

�arvore de fontes em condi�c~oes bem conhecidas. Para isso pode-se utilizar o comando make

mrproper o qual remove todos os �cheiros de con�gura�c~ao de reconstru�c~oes anteriores que

estejam residentes nas �arvores de direct�orios.

Ap�os isto �e necess�ario criar o �cheiro de con�gura�c~ao que ir�a determinar quais os compo-

nentes que ser~ao inclu��dos no kernel. Dependendo do hardware e das preferencias pessoais

pode-se optar por um dos tres m�etodos dispon��veis:

1. make config Um programa texto interactivo, onde os componentes s~ao apresentados

Page 108: Manual de Linux Para Iniciados

96 Cap��tulo 5. Kernel

um a um. Basta pressionar Y (sim), N (n~ao) ou M (m�odulo).

2. make menuconfig Um programa gr�a�co, composto por menus, onde os componentes

s~ao apresentados em listas de categorias, sendo poss��vel seleccionar os componentes

desejados da mesma maneira que s~ao apresentados no programa de instala�c~ao do Red

Hat Linux. Basta seleccionar o elemento correspondente ao item desejado: Y (sim),

N (n~ao) ou M (m�odulo).

3. make xconfig Um programa X Windows, onde os componentes s~ao listados em dife-

rentes n��veis de menus e os componentes s~ao seleccionados utilizando-se o rato. Mais

uma vez as op�c~oes poss��veis s~ao Y (sim), N (n~ao) e M (m�odulo).

NOTA: Para poder utilizar Kerneld e m�odulos de kernel �e obrigat�orio responder Y

(sim) ao suporte do Kerneld e vers~ao modular (CONFIG MODVERSIONS) durante

a con�gura�c~ao do sistema.

Se se estiver a construir um kernel para m�aquinas com processadores clones do Intel (Cyrix,

AMD,...), �e recomendado escolher 386 como tipo de processador.

Se se desejar construir um kernel com um �cheiro de con�gura�c~ao /usr/src/linux/.con�gpreviamente criado com um dos m�etodos anteriores, pode-se omitir o comando mrproper

e make config utilizando somente o comando make dep seguido de make clean para pre-

parar os fontes para a reconstru�c~ao do kernel.

O pr�oximo passo consiste na compila�c~ao dos fontes seleccionados numa m�aquina que possa

ser utilizada para reinicializar-se com o novo kernel. O m�etodo aqui descrito �e o mais sim-

ples para recupera�c~ao em caso de algum problema ocorrer. Outras formas de recupera�c~ao

podem ser encontradas no Make�le em /usr/src/linux.

1. Reconstr�oi-se o kernel com make boot.

2. Constr�oi-se quaisquer m�odulos con�gurados com o comando make modules.

3. Move-se o antigo conjunto de m�odulos atrav�es dos seguintes comandos

rm -rf /lib/modules/2.0.29-old seguido de

mv /lib/modules/2.0.29 /lib/modules/2.0.29-old

Instalam-se os novos m�odulos (mesmo que n~ao tenha sido constru��do nenhum) atrav�es do

comando make modulos install.

Se o sistema possuir um driver modular para adaptador SCSI, constr�oi-se uma nova image

do initrd. Por�em h�a poucas raz~oes para se construir um driver de kernel modular para

adaptadores SCSI.

Page 109: Manual de Linux Para Iniciados

5.1. Construir um Kernel modularizado 97

Para ter dispon��vel o kernel anterior a �m de evitar problemas, caso o novo kernel tenha

algum tipo de erro, �e recomend�avel manter a con�gura�c~ao original. Adicionar um novo

kernel ao LILO �e muito simples. Basta seguir as seguintes opera�c~oes:

1. mv /boot/vmlinuz /boot/vmlinuz.old

2. cp /usr/src/linux/arch/i386/boot/zImage /boot/vmlinuz

3. editar /etc/lilo.conf

4. executar /sbin/lilo

Como con�gurar o LILO

O programa LILO (abreviatura de LInux LOader) �e o carregador padr~ao do Linux.

Este programa �e a mais ex��vel das rotinas de inicializa�c~ao do Linux.

O LILO pode ser con�gurado para residir no sector de inicializa�c~ao principal do disco

r��gido ou no sector de inicializa�c~ao de uma parti�c~ao do disco r��gido. O utilizador vai ter

de tomar essa decis~ao no momento de instalar o Linux; dependendo do seu sistema, uma

ou outra op�c~ao vai funcionar melhor.

As m�aquinas da actualidade inicializam quase da mesma forma que as m�aquinas de 1980.

Entretanto, o hardware mudou tanto que o processo de inicializa�c~ao requer que o sistema

operativo e a rotina de inicializa�c~ao para o sistema operativo estejam verdadeiramente

conscientes dos v�arios rodeios que foram implementados nos PCs para suportarem itens

tais como os grandes discos r��gidos da actualidade.

O procedimento de partida para cada PC �e relativamente directo quando visto �a distancia.

Ele funciona da seguinte forma:

� Quando a m�aquina �e ligada, o processador inicia a execu�c~ao do c�odigo na BIOS.

Esse c�odigo dimensiona a mem�oria, testa o processador e o hardware e inicializa o

hardware para um estado conhecido;

� A BIOS vai ent~ao �a procura da unidade de disco de inicializa�c~ao, regra geral uma

disquete ou disco r��gido. A BIOS le o sector de inicializa�c~ao principal e executa-o.

Esse sector de inicializa�c~ao principal, regra geral instalado pelo MS-DOS ou pelo

Windows9x, realiza a procura da primeira parti�c~ao activa e, depois, tenta carregar

esse sector de inicializa�c~ao;

� O sector de inicializa�c~ao da parti�c~ao cont�em as instru�c~oes sobre como carregar a

rotina de inicializa�c~ao. As limita�c~oes de tamanho imp~oem aqui as suas restri�c~oes,

obrigando a rotina de inicializa�c~ao a ser pequena. O MS-DOS em si mesmo �e pequeno

Page 110: Manual de Linux Para Iniciados

98 Cap��tulo 5. Kernel

o su�ciente para se poder encaixar a��. Assim, para um sistema MS-DOS, o processo

de inicializa�c~ao �e �nalizado. Outros sistemas v~ao ter a�� um programa que carrega o

kernel do sistema operativo e o inicializa, tal como o LILO que carrega o kernel do

Linux, descompacta-o e, depois, o inicializa. A mem�oria que a rotina de inicializa�c~ao

usa �e ent~ao, regra geral, reclamada pelo sistema operativo que foi inicializado.

� As op�c~oes do LILO s~ao de�nidas e con�guradas enquanto o Linux est�a em execu�c~ao,

o que signi�ca que se o LILO n~ao inicializa o Linux, o utilizador deve usar os seus

discos de inicializa�c~ao de emergencia para aceder ao disco r��gido do sistema e, depois,

con�gurar e instalar (executando o /sbin/lilo) o LILO. Talvez o utilizador tenha de

experimentar para determinar se o LILO funciona melhor no sector de inicializa�c~ao

principal do disco r��gido ou no sector de inicializa�c~ao da sua parti�c~ao de inicializa�c~ao

NOTA: Se o utilizador se encontra a utilizar o System Commander ou o Manager

Boot da IBM, ou at�e mesmo as �ultimas vers~oes do Partition Magic para inicializar

m�ultiplos sistemas operativos, estes tamb�em podem ser utilizados para inicializar oLinux e, depois, con�gure o boot de inicializa�c~ao para inicializar essa parti�c~ao como

sendo uma parti�c~ao DOS.

O LILO le a con�gura�c~ao a partir de um �cheiro que se encontra no direct�orio /etc do

sistema chamado lilo.conf. Esse �cheiro indica ao LILO o sistema operativo para o qual

ele se deve con�gurar e onde se deve instalar a si pr�oprio. A situa�c~ao mais simples �e um

�cheiro lilo.conf que indica ao LILO para inicializar somente um sistema operativo, como

�e mostrado a seguir

boot=/dev/hda4

map=/boot/map

install=/boot/boot.d

prompt

timeout=50

image=/boot/vmlinuz-2.0.36

label=linux

root=/dev/hda4

read-only

Este �cheiro informa ao LILO para se instalar no sector de inicializa�c~ao da parti�c~ao

/dev/hda4 (boot=/dev/hda4 ), para esperar cinco segundos pela entrada do utilizador no

prompt LILO: (timeout=50 ) e para inicializar o kernel vmlinuz-2.0.36 no direct�orio /boot

(image=/boot/vmlinuz-2.0.36 ) da parti�c~ao /dev/hda4 (root=/dev/hda4 ). O LILO exibe

um prompt e espera cerca de cinco segundos por uma entrada antes de iniciar a primeira

imagem no �cheiro lilo.conf. Repare que o valor do tempo de espera para cinco segundos

Page 111: Manual de Linux Para Iniciados

5.1. Construir um Kernel modularizado 99

�e 50 (d�ecimos de segundo) - o LILO mede o tempo em incrementos de 0,1 segundo.

Mas porque �e que o Kernel tem o nome de vmlinuz?

A letra "z"no �m, est�a ali para indicar que a imagem do kernel est�a comprimida para

reduzir a quantidade de espa�co de disco ocupado usando um m�etodo em tudo similar ao

gzip; a imagem �e descompactada durante a inicializa�c~ao. O nome tem sido a conven�c~ao por

algum tempo e o script de instala�c~ao para o kernel adopta este nome. Se o utilizador real-

mente quiser, pode alter�a-lo - basta ter a certeza de que o LILO aponta para o �cheiro certo!

Tamb�em �e poss��vel optar entre v�arios kernels do Linux com base nos quais pode inici-

alizar o sistema; isso �e bastante pr�atico se est�a a tentar o mais recente mas quer ter sempre

a op�c~ao de inicializar o mais antigo, s�o por precau�c~ao. Vale a pena o esfor�co em fazer essa

de�ni�c~ao, porque o utilizador pode evitar muita frustra�c~ao se um kernel novo apresentar

problemas.

Alterar o boot padr~ao?

A primeira entrada no �cheiro lilo.conf �e a con�gura�c~ao de boot padr~ao, a qual �e ini-

cializada pelo LILO quando o valor de tempo de espera for atingido. Alterar a ordem de

boot �e uma tarefa bastante simples, sendo uma quest~ao de copiar e colar, usando o seu

editor de textos preferido e, depois, executando novamente o /sbin/lilo para instalar o novo

sector de inicializa�c~ao. Se n~ao �e conveniente realizar estas altera�c~oes no �cheiro lilo.conf,

acrescente a directiva default = <label> (onde <label> �e o texto no "r�otulo"da imagem que

o LILO deve inicializar por defeito).

O LILO usa os labels para permitir a inicializa�c~ao de m�ultiplos sistemas operativos ou

diferentes kernels do Linux. De seguida altera-se o lilo.conf para v�arios sistemas operati-

vos:

boot=/dev/hda4

map=/boot/map

install=/boot/boot.d

prompt

timeout=50

image=/boot/vmlinuz-2.0.36

label=linux

append="ether=0,0,eth0 ether=0,0,eth1"

root=/dev/hda2

read-only

image=/vmlinuz.old

label=old

root=/dev/hda2

Page 112: Manual de Linux Para Iniciados

100 Cap��tulo 5. Kernel

read-only

other=/dev/hda1

label=dos

table=/dev/hda

Agora quando o sistema for inicializado, basta pressionar Tab e o prompt do LILO mostrar�a

duas op�c~oes:

LILO boot:

linux old dos

Para testar o novo kernel basta reinicializar o equipamento e veri�car as mensagens geradas

pelo sistema, assegurando-se de que o hardware foi detectado adequadamente.

5.2 Criar uma imagem do initrd

Uma imagem do initrd �e necess�aria para carregar m�odulos SCSI durante a inicializa�c~ao do

sistema. O shell script /sbin/mkinitrd pode gerar uma imagem do initrd adequada para

o sistema desde que as seguintes condi�c~oes sejam satisfeitas:

- dispositivo de loopback da unidade esteja dispon��vel;

- o �cheiro /etc/conf.modules tenha uma linha para o adaptador SCSI, como por exem-

plo alias scsi hostadapter BusLogic.

Para construir uma nova imagem do initrd, execute /sbin/mkinitrd /boot/novoinitrd-image

2.0.12 onde /boot/novoinitrd-image �e �cheiro utilizado para a nova imagem e 2.0.12 �e o

kernel cujos m�odulos (a partir de /lib/modules) devem ser usados na cria�c~ao da imagem

do initrd (n~ao �e necessariamente o mesmo da vers~ao actualmente em uso pelo kernel).

5.3 Construir um Kernel monol��tico

Para construir um kernel monol��tico observe os seguintes passos:

1. Durante a con�gura�c~ao do kernel responda Y (sim) ou N (n~ao) a todas as quest~oes

(sem utilizar a op�c~ao M - m�odulo).

2. N~ao executar os passos: make modules, make modules install. Finalmente editar

o �cheiro /etc/rc.d/rc.sysinit e comentar a linha depmod -a, inserindo um # no

in��cio da linha. endenumerate

Page 113: Manual de Linux Para Iniciados

Cap��tulo 6

Servi�cos

6.1 Automount

O automount (mount autom�atico) �e o processo onde a montagem (e desmontagem) de

certos sistemas de arquivos �e feita automaticamente por um programa residente. Se o sis-

tema de arquivos est�a desmontado, e um utilizador tentar aceder, ele ser�a automaticamente

(re)montado. Isto �e especialmente �util em grandes ambientes de rede e para montagens de

sistemas de arquivos entre v�arias m�aquinas (especialmente aquelas que nem sempre est~ao

ligadas). Isto tamb�em pode ser muito �util para dispositivos amov��veis por motivos �obvios.

6.1.1 Tipos de automontagem

H�a dois tipos de automontagem no Linux: AMD e autofs.

O AMD �e o programa residente que faz a automontagem, e supostamente funciona como o

AMD do SunOS. �E implementado no espa�co do utilizador, o que signi�ca que n~ao faz parte

do kernel. N~ao �e necess�ario para o kernel entender a automontagem se a sua montagem do

NFS para a m�aquina local passa pelo programa residente do AMD, que faz as rotas de to-

dos os tr�a�cos de sistemas de arquivos automaticamente montados atrav�es do sistema NFS.

O autofs �e um sistema auxiliado pelo kernel, o que signi�ca que o c�odigo do sistema

de arquivos do kernel sabe onde est~ao os pontos de montagem do automount, diferente de

um sistema de arquivos subjacente, e o programa de montagem autom�atica transfere isto

do kernel.

Page 114: Manual de Linux Para Iniciados

102 Cap��tulo 6. Servi�cos

6.1.2 Instala�c~ao

Devido ao facto de o autofs ser implementado no espa�co do kernel, o seu kernel deve ter

o suporte incorporado. Nos kernels 2.0.xx isto �e uma op�c~ao experimental, mas parece ser

est�avel. Nos 2.1.xx (e presupostamente nos 2.2.xx) n~ao �e experimental.

O programa de montagem autom�atica e os seus arquivos de con�gura�c~ao tamb�em s~ao

necess�arios; usar os RPMs (da RedHat, como parte da instala�c~ao) �e um bom m�etodo.

O programa de montagem autom�atica deve ser inicializado por um guia rc no diret�orio

/etc/rc.d/init.d. O RPM faz isto, mas deve-se ter a certeza que ele �e inicializado, fazendo

uma liga�c~ao do diret�orio rc?.d, usando o painel de controle da Red Hat, ou conseguindo

fazer a inicializa�c~ao de algum modo noutra distribui�c~ao.

6.1.3 Con�gura�c~ao

Depois de fazer a instala�c~ao dos RPMs com o comando rpm -i autofs-3.1.7-14.i386.rpm

sendo autofs-3.1.7-14.ie86.rpm o �cheiro que cont�em o autofs, como root �e necess�ario con-

�igurar os �cheiros no direct�orio /etc, um �e chamado de auto.master e outro de auto.misc.

De seguida apresentamos um exemplo do que poderia ser o �cheiro auto.master :

/auto /etc/auto.misc --timeout 60

A primeira entrada n~ao �e o ponto de montagem, e sim onde os pontos de montagem (in-

dicados na segunda entrada) �car~ao. A terceira op�c~ao diz que os sistemas de arquivos

montados podem-se tentar desmontar 60 segundos depois de usados. �E claro que eles n~ao

se podem desmontar se estiverem a ser usados.

O auto.misc �e um "arquivo mapa". Arquivos de mapas m�ultiplos podem ser de�nidos

no auto.master. De seguida temos um exemplo do auto.misc:

kernel -ro,soft,intr ftp.kernel.org:/pub/linux

cd -fstype=iso9660,ro :/dev/cdrom

zip -fstype=auto :/dev/hdd4

floppy -fstype=vfat :/dev/fd0

A primeira coluna (a "chave") �e o ponto de montagem. Neste caso ser�a /mnt/ oppy ou

outra coisa. No meio s~ao as op�c~oes; deve ler-se a p�agina do manual do mount para saber

mais detalhes a respeito destes parametros. E a �ultima coluna especi�ca de onde vem o

sistema de arquivos. A entrada do kernel supostamente deve ser uma montagem do NFS.

O ":"em todas as outras linhas signi�ca que s~ao dispositivos locais.

Page 115: Manual de Linux Para Iniciados

6.2. NFS 103

Uma quest~ao que se pode colocar �e: 60 segundos, �e bastante tempo de espera pelo ejectar

de uma disquete... Antes de mais, pode-se mudar o tempo de espera. Por�em isto pode

ser um pouco ine�ciente; dizer ao sistema para desmontar as coisas depois de 15 segundos

ou diferente. Actualmente h�a uma maneira de perguntar pela desmontagem ao programa

de montagem autom�atica. Se se mandar (com o programa kill) o sinal SIGUSR1 para o

processo de montagem autom�atica, ele ir�a desmontar tudo o que puder.

O processo de montagem autom�atica �e executado pelo admnistrador da m�aquina, e s�o

ir�a aceitar comandos seus. 50% do motivo pelo qual provavelmente se usa a montagem

autom�atica �e o facto de poder fazer montagens e desmontagens sem se ser o administrador

da m�aquina. Seria f�acil fazer um programa em C com transi�c~ao para administrador da

m�aquina, que �zesse isto. Todavia, usando o comando sudo �e poss��vel permitir que utili-

zadores possam mandar o pr�oprio sinal de kill. O �unico problema �e que o sudo n~ao nos

deixa usar "' "para processar subcomandos, o que se teria de fazer tendo em conta o PID

corrente. Deve-se ter um programa chamado killall, que ir�a permitir fazer isto:

ALL ALL=NOPASSWD:/usr/bin/killall -USR1 automount

Por outro lado, teria que se permitir aos utilizadores o envio do -SIGUSR1 para todos os

processos. O que poderia provocar v�arios efeitos em programas tais como: apenas fazer

um refresh nos gestores de janelas ou um kill ao xemacs.

Tent�amos fazer uma tradu�c~ao do manual da AMD, mas devido ao facto de este ter uma

linguagem bastante t�ecnica foi de todo impossivel fazer uma coisa facilmente compreensivel

e expl��cita sem ter de recorrer a esse tipo de linguagem. Mas para os interessados em saber

mais sobre isso deixamos os links para o Tutorial do Autofs1 e para o do AMD 2.

6.2 NFS

O NFS (Network File System) - Sistema de Ficheiros de Rede �e um meio de partilhar

�cheiros entre m�aquinas, como se estivessem num disco local. O Linux pode ser tanto um

servidor como um cliente NFS, o que signi�ca que se pode exportar sistemas de �chei-

ros para outros sistemas, assim como montar sistemas de �cheiros exportados de outras

m�aquinas.

1http://www.linuxhq.com/lg/issue24/nielsen.html2http://www.cs.columbia.edu/ ezk/am-utils

Page 116: Manual de Linux Para Iniciados

104 Cap��tulo 6. Servi�cos

6.2.1 Montar um Servidor de NFS

Para montar um servidor de NFS �e necess�ario antes de mais ter uma rede montada na qual

�e possivel efectuar uma liga�c~ao vis Telnet entre o servidor e a m�aquina cliente.

6.2.1.1 O portmapper

O portmapper em Linux �e chamado de portmap ou rpc.portmap. Este servi�co encontra-se

no diret�orio de /usr/sbin (em algumas m�aquinas �e chamado de rpcbind). Agora que j�a sa-

bemos onde se encontra temos de ter em aten�c~ao pois este servi�co precisa de ser recome�cado

de cada vez que se faz o boot m�aquina. Para que arranque de cada vez que se faz o boot

da m�aquina �e necess�ario editar o script de rc que pode normalmente ser encontrado em

/etc/rc.d, /etc/init.d ou /etc/rd.c/init.d.

Para veri�car se o portmap est�a a ser executado usa-se o seguinte comando:

ps -aux

6.2.1.2 Mountd e o nfsd

De seguida �e necess�ario executar mais dois programas: mountd e nfsd. Mas primeiro

precisamos de editar outro �cheiro. O /etc/exports. Por exemplo, se quisermos partilhar a

pasta /homesta� existente na m�aquina gel para estar dispon��vel na m�aquina viseu teriamos

que indicar ostp no /etc/exports do gel :

/homestaff viseu(rw)

A linha de comando acima d�a �a m�aquina viseu possibilidade de ler/escrever (read/write)

na m�aquina gel em /homesta�. Em vez de rw poderia dizer-se ro, ou seja s�o as permiss~oes

de leitura. H�a outras op�c~oes que se podem usar e que ser~ao indicadas mais �a frente no

ponto da seguran�ca.

Podem ser usados em vez de m�aquinas, grupos de utilizadores possibilidade dada se esti-

vermos a executar NIS (ou NYS). Agora pode-se come�car a con�gurar o mountd (ou talvez

chamar rpc.mountd e ent~ao o nfsd (que pode ser chamado em rpc.nfsd). Ambos ir~ao ler

o �cheiro de exporta�c~ao (exports). Se for editado o �cheiro /etc/exports temos que fazer

com que o nfsd e mountd saiba que os �cheiros foram mudados. Na maioria dos sistemas

baseados em Unix o comando �e exportfs. Se usarmos o exportfs-less podemos instalar este

script:

#!/bin/sh

Page 117: Manual de Linux Para Iniciados

6.2. NFS 105

killall -HUP /usr/sbin/rpc.mountd

killall -HUP /usr/sbin/rpc.nfsd

echo re-exported file systems

Gravamos em /usr/sbin/exportfs, e n~ao podemos esquecer de usar o chmod a+rx. Agora,sempre que se mudar o �cheiro de exporta�c~oes, temos de executar o exportfs como root.

Para con�rmar se aquele mountd e o nfsd est~ao a ser executados correctamente execu-

tamos primeiro o rpcinfo -p cujo resultado deve ser semelhante a:

program vers proto port

100000 2 tcp 111 portmapper

100000 2 udp 111 portmapper

100005 1 udp 745 mountd

100005 1 tcp 747 mountd

100003 2 udp 2049 nfs

100003 2 tcp 2049 nfs

Como se pode ver o portmapper indica que o mountd e o nfsd est~ao a ser executados, ou

seja, o servidor de NFS est�a activo.

6.2.2 Montar o Cliente de NFS

As vers~oes mais recentes do Linux j�a instalam os m�odulos necess�arios �a con�gura�c~ao do

cliente de NFS. Continuando o exemplo anterior onde pretendemos montar o /homesta�do gel executamos no prompt do root, o comando:

mount -o rsize=1024,wsize=1024 gel:/homestaff /mnt

Os dois parametros que aparecem rsize e wsize ser~ao descritos adiante.

Interessa agora veri�car que o sistema de �cheiro est�a dispon��vel debaixo do /mnt e pode-mos executar um cd, ou ls, e listar os �cheiros individualmente.

Este sistema n~ao �e t~ao r�apido como um sistema de �cheiro local, mas �e muito mais con-

veniente que o ftp. Se, em vez de montar o sistema de �cheiro, o mount produzir uma

mensagem de erro como:

gel:/homestaff failed

e a raz~ao dada pelo servidor for:

Page 118: Manual de Linux Para Iniciados

106 Cap��tulo 6. Servi�cos

Permission denied

ent~ao o �cheiro de exporta�c~oes est�a errado, ou ent~ao o exportfs n~ao est�a a ser executado

depois de ter sido editado o �cheiro de exporta�c~oes.

Para desligar o sistema de �cheiro podemos usar

umount /mnt

Para fazer o sistema montar um sistema de �cheiro de nfs no boot precisamos de editar o

�cheiro /etc/fstab da maneira normal. Para o nosso exemplo �e feito da seguinte forma:

# device mountpoint fs-type options dump fsckorder

gel:/homestaff /mnt nfs rsize=1024,wsize=1024 0 0

De seguida vamos ver como optimizar o NFS para obter um melhor desempenho do sistema.

6.2.2.1 Optimizar o NFS

Geralmente, se n~ao for especi�cado nenhum rsize ou wsize, o NFS le e escreve em blocos

muito grandes de 4096 ou 8192 bytes. Mas pode acontecer que quer o Kernel quer a pr�opria

placa de rede n~ao aguente determinado uxo de informa�c~ao e por isso torna-se necess�ario

que n�os experimentemos um valor para o rsize e para o wsize que funcione e seja t~ao r�apido

quanto o poss��vel.

Podemos testar a velocidade das op�c~oes com alguns comandos simples. Por exemplo:

time dd if=/dev/zero of=/mnt/testfile bs=16k count=4096

Isto cria um �cheiro de 64Mb de bytes contendo zeros. De seguida fazemos uma tabela

para registo dos tempos e calcular a m�edia. �E o chamado Elapsed ou Wall clock. Depois

podemos testar o desempenho de leitura lendo o �cheiro anterior com o comando:

time dd if=/mnt/testfile of=/dev/null bs=16k

fazemos este procedimento v�arias vezes e calculamos a m�edia.

Seguidamente fazemos o umount, e montamos novamente com um rsize maior e o wsize,

cujo valor deve ser m�ultiplo de 1024, e provavelmente n~ao superior a 16384 bytes, dado

que os blocos grandes reduzem a velocidade de acesso.

Page 119: Manual de Linux Para Iniciados

6.3. NIS 107

Se o valor de rsize/wsize �e muito grande os sintomas s~ao muito estranhos e n~ao s~ao 100%

�obvios. Um t��pico sintoma �e o facto de aparecerem listas de �cheiro incompletas quando

fazemmos ls sem mensagens de erro. Ou fazer a leitura de �cheiros que falham misterio-

samente sem surgirem mensagens de erro.

Depois de estabelecer os valores correctos para trabalhar com o rsize/wsize podemos fazer

o teste de velocidade novamente.

Sistemas diferentes tais como SunOS e Solaris �e supostamente muito mais r�apidos com

blocos de 4096 bytes que com qualquer outro.

NOTA: Devemos sempre editar o /etc/fstab para re etir o rsize/wsize que preten-

demos

Um truque para aumentar o desempenho de escrita do NFS �e incapacitar o s��ncronismo de

escrita do servidor. O que acontece normalmente com os estados de especi�ca�c~ao do NFS

�e que os pedidos n~ao s~ao considerados antes de serem totalmente escritos no disco. Isto

restringe bastante o desempenho de escrita, e a escrita ass��ncrona far�a o NFS funcionar

mais depressa.

6.3 NIS

As pr�oximas tres linhas s~ao cita�c~oes do Manual de administra�c~ao de System Network

Sun(tm)

"NIS era conhecido antigamente como P�aginas Amarelas da Sun (YP) mas

o nome P�aginas amarelas(tm) �e uma marca registrada no Reino Unido pela

Telecom plc britanica e n~ao podia ser usada sem permiss~ao".

NIS representa o Servi�co de Informa�c~ao de Network. Tem como objectivo fornecer in-

forma�c~ao que tem que ser conhecida ao longo da rede por todas as m�aquinas na rede. A

informa�c~ao prov�avel a ser distribu��da pelo NIS �e:

� login names/passwords/home direct�orios (/etc/passwd)

� informa�c~ao de grupos (/etc/group)

Por exemplo, se sua password �e registada na password do banco de dados do NIS, ser�a

capaz de fazer o login em todas as m�aquinas na rede em que tenha o programa cliente de

Page 120: Manual de Linux Para Iniciados

108 Cap��tulo 6. Servi�cos

NIS a funcionar.

Cada vez mais, s~ao instaladas m�aquinas Linux como parte de uma rede de computadores.

Simpli�car a administra�c~ao de rede, na maioria das redes (principalmente redes baseadas

em Sun) e correr o Servi�co de Informa�c~ao de Rede. As m�aquinas Linux podem tirar pro-

veito do NIS existente ou fornecer NIS completamente. As m�aquinas Linux tamb�em podem

(com a biblioteca do NYS) agir como clientes de NIS+ limitados.

6.3.1 NIS ou NIS+?

A escolha entre NIS e NIS+ �e f�acil - Usa-se NIS, se n~ao se tem usa-se o NIS+ ou se tem

necessidade de seguran�ca elevada. NIS+ �e muito mais problem�atico de administrar (�e f�acil

de usar no cliente, mas do lado do servidor �e horr��vel).

Outro problema �e que o apoio para o NIS+ dentro do Linux ainda est�a a ser criado

- um ponto principal �e a falta do apoio a encripta�c~ao/autenti�ca�c~ao de dados que �e um

ponto principal para qualquer utilizador que quiser usar o NIS+...

6.3.2 Como trabalhar

Dentro de uma rede deve-se ter uma m�aquina que funcione como um NIS pelo menos um

servidor. Pode-se ter v�arios servidores de NIS, cada servi�co NIS diferente de "dom��nios- ou

pode-se ter coopera�c~ao entre os servidores de NIS, onde a pessoa �e dita mestre do servi-

dor de NIS, e todos os outros s~ao escravos denominados servidores NIS (para um certo

"dom��nio"de NIS, que s~ao!) - ou pode-se ter uma mistura deles...

S�o os servidores escravos (slave) tem c�opias dos bancos de dados do NIS e recebem estas

c�opias do servidor mestre (master) do NIS sempre que as mudan�cas s~ao feitas no banco de

dados do mestre. Dependendo do n�umero de m�aquinas na sua rede e da con�abilidade da

sua rede, pode-se decidir instalar um ou mais servidores escravo. Sempre que um servidor

de NIS demora ou est�a muito lento para responder a pedidos, um cliente de NIS conecta

ao servidor e tenta achar um ou o mais rapidamente.

Bancos de dados de NIS est~ao em formato denominado DBM, derivado de bancos de

dados ASCII. Por exemplo, os �cheiros de /etc/passwd e /etc/group podem ser directa-

mente convertidos em formato DBM usando um software de tradu�c~ao ASCII-para-DBM

(makedbm, �e inclu��do com o software do servidor). O servidor mestre NIS deve ter ambos,

os bancos de dados em ASCII e os bancos de dados em DBM.

Ser~ao noti�cados os servidores escravo de qualquer mudan�ca para o mapa NIS, (atrav�es do

Page 121: Manual de Linux Para Iniciados

6.3. NIS 109

programa yppush), e automaticamente actualiza o necess�ario das mudan�cas para sincroni-

zar os bancos de dados. Os clientes de NIS n~ao fazem parte disto, eles encontram-se sempre

em conversa�c~ao com o servidor de NIS para ler a informa�c~ao armazenada nos bancos de

dados DBM.

O autor dos clientes de YP para linux informou-nos que o mais recente ypbind (em yp-

clients.tar.gz ) pode ser adquirido no �cheiro de con�gura�c~ao do servidor - assim n~ao �e

necess�ario usar o broadcast (que �e inseguro - devido ao facto que qualquer um pode insta-

lar um servidor de NIS e pode responder �as quest~oes de broadcast...)

6.3.3 O que �e necess�ario para con�gurar o NIS?

6.3.3.1 O RPC Portmapper

Para correr qualquer dos softwares abaixo mencionados precisa-se de executar o pro-

grama /usr/sbin/rpc.portmap. Algumas distribui�c~oes do Linux j�a o tem no c�odigo do

/etc/rc.d/rc.inet2 para come�car este daemon. Tudo o que se precisa fazer �e descomentar

e reiniciar a sua m�aquina de Linux para activa-lo.

O RPC portmapper (portmap(8c)) �e um servidor que converte programas de RPC em

n�umeros de TCP/IP (ou UDP/IP) n�umeros de protocolos para porta. Deve ser executado

para chamar o RPC (que �e o que o software cliente de NIS faz) para servidores de RPC

(como um servidor de NIS) naquela m�aquina.

Quando um servidor de RPC �e inicializado, diz ao portmap qual o n�umero da porta est�a a

escutar. Quando um cliente deseja fazer com que um RPC chame um determinado numero

de programa, contactar�a o portmap primeiro na m�aquina do servidor para determinar o

n�umero da porta onde deve ser enviados os pacotes de RPC. Normalmente, servidores de

RPC padr~ao s~ao come�cados por inetd(8C), assim o portmap deve ser iniciado antes do

inetd ser invocado.

6.3.3.2 Determinar se se �e um Servidor, Escravo ou Cliente

Para responder a esta pergunta �a que considerar dois casos:

1. A sua m�aquina vai ser parte de uma rede com servidores NIS existente

No primeiro caso, s�o se precisa do programa cliente (ypbind, ypwhich,ypcat, yppoll, ypmatch). O programa mais importante �e o ypbind. Este

programa tem que estar a correr a todo momento, isto �e, deve sempre apa-

recer na lista de processos. �E denominado processo daemon e precisa de

Page 122: Manual de Linux Para Iniciados

110 Cap��tulo 6. Servi�cos

ser come�cado atrav�es do startup do �cheiro do sistema (eg. /etc/rc.local).Logo como ypbind estiver a correr, o seu sistema torna-se um cliente de

NIS.

2. N~ao existe nenhum servidor de NIS na network

No segundo caso, se n~ao existe nenhum servidor de NIS, ent~ao tamb�em se

precisa de um programa servidor de NIS (normalmente chamado ypserv).

Tamb�em h�a outro servidor de NIS gr�atis dispon��vel, chamado yps, escrito, por Tobias Reber

na Alemanha que suporta o conceito mestre-escravo, mas tem outras limita�c~oes.

6.3.3.3 O Software

A biblioteca do sistema /usr/lib/libc.a (vers~ao 4.4.2 e ou melhor) ou a biblioteca de com-

partilhamento /usr/lib/libc.sa e sua DLL relacionada que contem todas as chamadas ne-

cess�arias ao sistema para o sucesso para compilar o cliente NIS e o software do servidor.

Algumas pessoas informaram que somente o NIS trabalha com o /usr/lib/libc.a vers~ao

4.5.21 e ou melhor, assim se se quiser utilizar n~ao se deve usar um libc mais antigo. O

software cliente NIS pode ser obtido em:

Local Diret�orio Nome do Ficheiro

ftp.uni-paderborn.de /linux/local/yp yp-clients-2.2.tar.gz

ftp.funet.fi /pub/Linux/BETA/NYS/clients yp-clients-?.?.tar.gz

ftp.lysator.liu.se /pub/NYS/clients yp-clients-?.?.tar.gz

Uma vez obtido o software, segue-se as instru�c~oes que vem com o software.

6.3.3.4 Montar um Cliente de NIS que utiliza o NIS Tradicional

Assumindo que se teve sucesso na compila�c~ao do software e que est�a-se pronto para ins-

talar o software. Um lugar satisfat�orio para o daemon de ypbind �e o diret�orio /usr/sbin.Precisa-se fazer isto obviamente como root. Os outros bin�arios (ypwhich, ypcat, yppoll,

ypmatch) devem estar num diret�orio acess��vel por todos os utilizadores, por exemplo

/usr/etc ou /usr/local/bin. Poderia ser uma boa ideia testar o ypbind antes de coloca-

lo no /etc/rc.d/rc.inet2. Para se testar o ypbind faz-se o seguinte:

1. Corre-se seguramente se se tem o seu conjunto de nome de dom��nio. Se n~ao �e,

con�gure para emitir o comando:

Page 123: Manual de Linux Para Iniciados

6.3. NIS 111

/bin/domainname-yp nis.domain

onde nis.domain deve ser alguma string, N~AO de�na com a associ�c~ao do nome de

dom��nio da sua m�aquina! A raz~ao para isto �e di�cultar um pouco mais a invas~ao da

m�aquina para obter o banco de dados de password do seu servidor de NIS. Se n~ao se

sabe por o nome de dom��nio de NIS em sua rede, pergunte ao seu administrador de

sistema/rede.

2. Inicialize o /usr/sbin/rpc.portmap se j�a n~ao estiver a correr.

3. Crie um diret�orio /var/yp se n~ao existir.

4. Inicialize o /usr/sbin/ypbind

5. Use o comando rpcinfo -p localhost para conferir se o ypbind foi capaz de de�nir o

seu servi�co no portmapper. O rpcinfo deve produzir algo como:

program vers proto port

100000 2 tcp 111 portmapper

100000 2 udp 111 portmapper

100007 2 udp 637 ypbind

100007 2 tcp 639 ypbind

300019 1 udp 660

6. Pode-se tamb�em executar rpcinfo -u localhost ypbind. Este comando deve produzir

algo como:

program 100007 version 2 ready and waiting

Finalmente, n~ao esquecer de colocar os lookups do host, que tem que ser con�gurados por

si nis para o lookup na linha order do seu �cheiro de /etc/host.conf. Para maiores detalhes

de ler-se o manpage resolv+.8 para maiores detalhes. Neste momento deve-se poder usar

os programas cliente NIS como ypcat, etc... Por exemplo, ypcat passwd que dar�a por inteiro

o banco de dados do NIS para passwd.

Importante: Se se saltou o procedimento de teste ent~ao tem de se ter a certeza que se

con�gurou o nome de dom��nio, e criou o diret�orio:

/var/yp

Este diret�orio tem que existir para que o ypbind possa come�car com sucesso.

Se o seu trabalho de teste acabou agora pode-se querer mudar os �cheiros /etc/rc.d/rc.Me /etc/rc.d/rc.inet2 que ser~ao executados no seu sistema de forma que o ypbind du-

rante o tempo de boot do seu sistema aja como um cliente de NIS. Edita-se o �cheiro

Page 124: Manual de Linux Para Iniciados

112 Cap��tulo 6. Servi�cos

/etc/rc.d/rc.M e procura-se os comandos que con�guram o nome de dom��nio. Muda-se o

nome de dom��nio no nome do seu dom��nio. Tamb�em, se edita o �cheiro /etc/rc.d/rc.inet2, e

comenta-se as linhas que come�cam o daemon de rpc.portmap, e soma-se as linhas seguintes

logo ap�os o lugar onde rpc.portmap �e inicializado:

#

# Start the ypbind daemon

#

if [ -f \${NET}/ypbind -a -d /var/yp ]; then

echo -n " ypbind"

\${NET}/ypbind

fi

6.3.4 O que �e preciso para montar o NYS?

6.3.4.1 Determinar se se �e um Servidor, Escravo ou Cliente.

Para respondendo a esta pergunta tem-se que considerar dois casos:

� Que a sua m�aquina vai ser parte de uma rede com servidores NIS

� Que n~ao se tem nenhum servidor de NIS na rede

No primeiro caso tem-se duas escolhas:

1. Pode-se voltar a ligar todo o cliente e programa daemon com a biblioteca NYS

libnsl.so. Isto seria acrescentrar a seguinte linha:

LIBS=-lnsl

no seu make�le signi�ca que se quer unir os Servi�cos de Biblioteca para Netowrk.

Basicamente todos os daemons da rede e o programa de login seria necess�ario ser

recompilado.

2. Ou pode-se recompilar a biblioteca C padr~ao libc para incluir a biblioteca NYS de

cliente para que a biblioteca libc normal funcione, e ent~ao voltar a ligar todos os links

estastisticos de programas (o link dinamico une programas automaticamente e pode

ser adquirido nas novas vers~ao de libc).

Semelhante ao caso do NIS tradicional, se n~ao se tem servidores NIS, ent~ao tamb�em se

precisa de um programa servidor de NIS (normalmente chamado de ypserv) e tem que se

designar um das m�aquinas em sua rede como servidor mestre de NIS. Novamente, pode-se

querer de�nir mais de um servidor escravo tamb�em.

Page 125: Manual de Linux Para Iniciados

6.3. NIS 113

6.3.5 O Software

Precisa-se de arranjar e compilar a biblioteca libnsl.so do NYS. Se n~ao se tem as ferramentas

de DLL instaladas pode-se obter uma pr�e-compilada, est�atica e sub biblioteca no mesmo

site mencionado abaixo. Por�em, note que a vers~ao pr�e-compilada pode ser (e provavelmente

�e) mais antiga que o c�odigo fonte mais recente lan�cado.

A biblioteca do NYS (fonte e vers~ao pr�e-compiladas) pode ser obtido em:

Site Diret�orio Nome do Ficheiro

ftp.lysator.liu.se /pub/NYS/libs nys-0.27.4.tar.gz

ftp.lysator.liu.se /pub/NYS/binaries/lib libnsl.so.1.0.a26

A pr�e-compila�c~ao do "login"e "su"tamb�em podem ser obtida em:

Site Diret�orio Nome do ficheiro

ftp.lysator.liu.se /pub/NYS/binaries/bin login

ftp.lysator.liu.se /pub/NYS/binaries/bin su

Semelhante aos �cheiros de con�gura�c~ao do exemplo podem ser obtidos em:

Site Diret�orio Nome do ficheiro

ftp.lysator.liu.se /pub/NYS/binaries/etc *conf

ftp.funet.fi /pub/Linux/BETA/NYS/etc *conf

Para a compila�c~ao da biblioteca nsl, segue-se as instru�c~oes que vem com o software. Se

se desejar compilar a biblioteca de partilha DLL tem que se ter as ferramentas de DLL

instaladas no lugar da padr~ao (standard) (/usr/dll). As ferramentas de DLL (o pacote

tools-2.11.tar.gz ou superior) podem-se encontrar em muitos sites.

6.3.6 Con�gurar um Cliente de NYS que usa o NYS

�E diferente do NIS tradicional, n~ao nenhuma requer nenhuma con�gura�c~ao para o cliente

NIS. Tudo o que �e necess�ario �e a con�gura�c~ao do �cheiro do NIS (/etc/yp.conf ) para o

serveridor(es) correcto para sua informa�c~ao. Tamb�em, a con�gura�c~ao do �cheiro Name

Server Switch (/etc/nsswitch.conf ) deve ser con�gurado corretamente.

6.3.7 O Ficheiro nsswitch.conf

O �cheiro do Servidor de Rede de Nomes /etc/nsswitch.conf determina em ordem de

lookups quanto �a execu�c~ao uma certa parte de informa�c~ao �e pedida, s�o com o �cheiro

Page 126: Manual de Linux Para Iniciados

114 Cap��tulo 6. Servi�cos

/etc/host.conf que determina o modo como ser~ao executados os lookups do host. Nova-

mente, observe-se o �cheiro de exemplo contido na distribui�c~ao de fonte. Por exemplo, a

linha

hosts: nis files dns

especi�ca as fun�c~oes de lookup do host que devem em primeiro lugar fazer um lookup ao

NIS, de seguida ao �cheiro local /etc/hosts e �nalmente o servi�co verdadeiro de dom��nio

(/etc/resolv.conf e o named) ao qual se n~ao for encontrado nada ser�a devolvido um erro.

6.3.8 Con�gurar um Servidor de NIS

6.3.8.1 O Programa ypserv do Servidor

Esta parte s�o descreve como con�gurar o ypserv do servidor de NIS. O yps do servidor

�e semelhante, mas n~ao exactamente o mesmo, logo tem que se ter cuidado se se tentar

aplicar estas instru�c~oes para o yps!

O software de servidor de NIS pode ser obtido em:

Site Diret�orio Nome do Ficheiro

ftp.lysator.liu.se /pub/NYS/servers ypserv-1.1.2.tar.gz

ftp.uni-paderborn.de /pub/linux/local/yp ypserv-1.1.2.tar.gz

A con�gura�c~ao do servidor �e a mesma para NIS tradicional e para o NYS. Compile o

software para gerar o ypserv e programas makedbm. Primeiramente, determina quais os

�cheiros que exigem para estar dispon��vel para o NIS e ent~ao adiciona-se ou remove as

entradas apropriadas para o ypMake�le. Instala-se o �cheiro ypMake�le em /var/yp como

o �cheiro Make�le. Constroi-se o �cheiro DBM com o comando:

\% cd /var/yp; make

Tem de se ter a certeza que o portmapper (rpc.portmap) est�a a correr, e inicializa-se o

servidor ypserv. O comando

\% rpcinfo -u localhost ypserv

deve produzir algo como

program 100004 version 2 ready and waiting

E �e isto, o seu servidor est�a a correr.

Page 127: Manual de Linux Para Iniciados

6.3. NIS 115

6.3.8.2 O programa do Servidor yps

Monta-se o servidor de NIS yps referente ao cap��tulo anterior. A con�gura�c~ao do servidor

yps �e semelhante, mas n~ao exactamente o mesmo, logo tem que se ter cuidado se se tentar

aplicar as instru�c~oes do ypserv para o yps!

O software de servidor de NIS yps pode ser obtido em:

Site Diret�orio Nome do Ficheiro

ftp.lysator.liu.se /pub/NYS/servers yps-0.21.tar.gz

ftp.funet.fi /pub/Linux/BETA/NYS/servers yps-0.21.tar.gz

6.3.8.3 O programa yppasswdd

Sempre que os utilizadores mudam as passwords deles, o banco de dados de passwords do

NIS e provavelmente outros bancos de dados do NIS que dependem de banco de dados de

password do NIS, devem ser actualizados. O programa yppasswdd �e um servidor que con-

trola as mudan�cas de password e tem a certeza que a informa�c~ao do NIS vai ser actualizado

adequadamente. O software para yppasswdd pode ser encontrado em:

Site Diret�orio Nome do Ficheiro

ftp.lysator.liu.se /pub/NYS yppasswdd-0.7.tar.gz

ftp.funet.fi /pub/Linux/BETA/NYS/servers yppasswdd-0.7.tar.gz

Uma vez obtido o software, segue-se as instru�c~oes que vem com o software.

6.3.9 Veri�car a instala�c~ao do NIS/NYS

Se tudo est�a bem (como deveria ser), pode-se veri�car a sua instala�c~ao com alguns coman-

dos simples. Por exemplo, assumindo que o seu �cheiro de password est�a a ser provido

pelo NIS, o comando,

\% ypcat passwd

deve dar-lhe os conte�udos do �cheiro de password do NIS. O comando

\% ypmatch userid passwd

Page 128: Manual de Linux Para Iniciados

116 Cap��tulo 6. Servi�cos

(onde userid �e o login de um utilizador arbitr�ario) deve dar a entrada do utilizador no

�cheiro de password do NIS. O ypcat e ypmatch devem ser inclu��dos nos programas da sua

distribui�c~ao de NIS tradicional ou NYS.

6.4 Samba

O SAMBA �e uma aplica�c~ao que utiliza o protocolo SMB (no Linux, os "server daemons"

SMBD e NMBD) permitindo compatibilidade com redes que utilizam este protocolo, prin-

cipalmente redes NetBios da Microsoft.

As mais recentes distribui�c~oes j�a trazem o SAMBA como padr~ao, mas o seu download

e actualiza�c~oes est~ao dispon��veis em http://us4.samba.org/samba/download.html.

Com o SAMBA �e poss��vel partilhar direct�orios, impressoras, ter acesso a �cheiros na rede,

exactamente como em redes Microsoft. Mas neste caso, o servidor �e com o sistema ope-

rativo Linux a correr uma aplica�c~ao espec���ca. O Windows NT e o 2000 (assim como o

NetWare 5 e outros presentes no mercado) s~ao reconhecidos mundialmente pela sua segu-

ran�ca e escalabilidade, mas o SAMBA possui muitas vantagens que se podem transformar

em solu�c~oes e economia para uma empresa. Por exemplo:

� Permite compatibilidade com esta�c~oes Windows (de Workstation a 2000) e servidores

WinNT 4.0 e 2000. Entre servidores e esta�c~oes Linux (com Interface Gr�a�ca, por

exemplo) a compatibilidade �e total.

� O SAMBA �e 100% con�gur�avel, com a grande vantagem de centralizar esta con-

�gura�c~ao num �unico �cheiro, o smb.conf. Sem d�uvida �e muito interessante ter a

possibilidade de restaurar toda a con�gura�c~ao que disponibiliza o seu Servidor de Fi-

cheiros (inclusiv�e as permiss~oes de acesso) atrav�es do backup de apenas um �cheiro,

em casos de desastre. Por�em isto n~ao quer dizer que n~ao seja necess�ario o backup de

outros �cheiros de con�gura�c~ao...

� Todo o servidor SAMBA pode ser con�gurado remotamente, al�em de receber por

email informa�c~oes do estado do servidor (bastando utilizar um script espec���co que

fa�ca a pesquisa de informa�c~oes nos �cheiros de log e crie um �cheiro que pode ser

enviado por email).

� Quanto �a economia n~ao h�a o que discutir: o Linux e o SAMBA est~ao dispon��veis

para download na Internet sem custos com licen�cas ou actualiza�c~oes para qualquer

utilizador comum ou empresa que se interesse em utiliz�a-lo.

� O suporte est�a dispon��vel 24h por dia, o ano todo: al�em de no pr�oprio site do SAMBA

existirem milhares de sites e listas de discuss~ao dedicadas ao assunto, entre outras

Page 129: Manual de Linux Para Iniciados

6.4. Samba 117

documenta�c~oes e artigos em sites de renome por Administradores e Engenheiros de

Redes Linux.

6.4.1 Instala�c~ao

Se a distribui�c~ao que deseja utilizar j�a traz o SAMBA, a instala�c~ao n~ao �e necess�aria. Se

deseja actualiz�a-lo ou iniciar a instala�c~ao, devem seguir-se os seguites passos:

1. Para instalar o SAMBA �e necess�ario antes de mais saber se o pacote est�a no formato

RPM ou .tar (.tgz ou .tar.gz).

� Se o pacote for um RPM, executa-se o seguinte comando

rpm -ivh samba-2.0.x-i386.rpm

Substituindo o x pelo n�umero relativo �a vers~ao do pacote ou o nome correcto

do pacote dependendo da sua distribui�c~ao. Para actualizar o SAMBA actual,

substitui-se a sintaxe -ivh por -Uvh.

� Se o pacote for no formato tar.gz, executa-se o comando

tar -zxvf samba-2.0.x-i386.tar.gz

Vai ser criado um direct�orio com o nome samba-2.0.x.

2. Entra-se neste direct�orio e em seguida no subdirect�orio source. Para iniciar a ins-

tala�c~ao executa-se ./configure seguido do comando make

Os bin�arios do SAMBA ser~ao criados. Quando terminar executa-se make install

Agora os bin�arios e p�aginas do manual ser~ao instalados. Aguarda-se o processo

e quando terminar pode consultar-se o direct�orio /usr/doc/samba-2.0.x/docs para

informa�c~oes sobre o SAMBA.

6.4.2 Con�gura�c~ao

Toda a con�gura�c~ao do SAMBA �e centralizada no �cheiro smb.conf, que deve ser guardadono direct�orio /etc. Nele s~ao descritos as partilhas, permiss~oes de acesso, impressoras, dentre

outras con�gura�c~oes dispon��veis. Quando instalado, o SAMBA disponibiliza os seguintes

componentes:

� smbd - O servidor SAMBA

� nmbd - O Servidor de nomes NetBios

Page 130: Manual de Linux Para Iniciados

118 Cap��tulo 6. Servi�cos

� smbclient - Cliente SMB para sistemas Unix

� smbpasswd - Alterar passwords de utlizadores smb

� smbprint - Cliente para envio de impress~ao a sistemas Linux

� smbstatus - Apresenta a situa�c~ao actual das liga�c~oes SMB no Host

� testparm - Veri�ca o �cheiro smb.conf (con�gura�c~ao do SAMBA)

� testprns - Veri�ca a comunica�c~ao via rede com as impressoras

O smb.conf �e dividido basicamente em tres partes:

� a con�gura�c~ao do servidor SAMBA (parametros na sec�c~ao [global]);

� a con�gura�c~ao dos direct�orios/pastas pessoais dos utilizadores (parametros na sec�c~ao

[homes];

� e as demais sec�c~oes que correspondem aos direct�orios partilhados.

Cada sec�c~ao �e representada entre parentesis rectos [teste], e os parametros s~ao seguidos

do sinal de igual = �e o valor ou termo correspondente. De seguida pode-se observar um

exemplo do smb.conf seguido da explica�c~ao de cada parametro presente nas sec�c~oes:

[global]

comment = Servidor SAMBA

workgroup = MCT

security = user

os level = 100

announce as = NT Server

domain logons = yes

logon script = \%U.bat

logon path =\%L\\Profiles\%U

domain master = yes

local master = yes

preferred master = yes

guest account = nobody

wins support = yes

keep alive = 20

debug level = 3

winpopup command = csh -c 'xedit \%s;rm \%s' &

log file = /var/log/samba_log.\%u

Page 131: Manual de Linux Para Iniciados

6.4. Samba 119

null passwords = no

unix password sync = yes

socket options = IPTOS_LOWDELAY TCP_NODELAY

printing = bsd

printcap name = /etc/printcap

load printers = yes

hosts allow = 192.168.2.

hosts deny = 192.168.0.3 192.168.0.4

[homes]

comment = Pastas dos Utilizadores

public = no

browseable = yes

writeable = yes

hosts deny = 192.168.0.250

[printers]

comment = Impressoras Linux

public = no

browseable = yes

printable = yes

read only = yes

create mode = 0700

path = /var/spool/samba

admin users = admin, utilizador1

[netlogon]

comment = Partilha de Scripts

path = /etc/scripts

public = no

browseable = yes

writeable = no

[users]

comment = Utilizadores comuns

path = /home/comuns

public = yes

browseable = yes

writeable = yes

write list = @comuns

read list = @comuns

force create mode = 0777

Page 132: Manual de Linux Para Iniciados

120 Cap��tulo 6. Servi�cos

force directory mode = 0775

max disk size = 200

[oculto\$]

comment = S�o para Admnistradores

path = /home/admin/oculto

copy = homes

max connections = 1

A sec�c~ao [global] de�ne as con�gura�c~oes globais do SAMBA. A tabela seguinte apresenta

a explica�c~ao dos parametros do exemplo:

comment

Coment�ario para este host na rede

workgroup

Especi�ca o dom��nio ou workgroup a que este host pertence na rede

security

Por padr~ao o SAMBA utiliza a seguran�ca a n��vel do utilizador (security = user), mas

existem outras op�c~oes:

� security = share - Ser~ao solicitadas passwords por cada recurso partilhado e n~ao por

utilizador, ou seja, cada direct�orio ou impressora poder�a ter uma password �unica

conhecida apenas pelos utlizadores autorizados.

� security = user - As permiss~oes s~ao dadas de acordo com o login do utilizador, ou

atrav�es dos grupos (@grupo).

� security = server - O SAMBA tentar�a validar a password do utilizador enviando

os dados para outro servidor SMB, como outro servidor SAMBA ou um servidor

Windows. Deve-se incluir o parametro .password server = x.x.x.x. na sec�c~ao [global]

do smb.conf.

� security = domain - Usado se o Host for adicionado a um dom��nio Windows atrav�es

do comando smbpasswd. Neste caso as informa�c~oes do utilizador e password ser~ao

enviadas para o PDC da rede, exactamente como o servidor NT faria. De notar

que �e necess�ario que a conta do utilizador exista tanto no Linux quanto no servidor

prim�ario

os level

Este parametro n~ao �e obrigat�orio se n~ao se possui um servidor Windows na rede, mas deve

ser usado caso se tenha um ou mais. A vari�avel �e um n�umero de 1 a 255, onde 65 �e a

Page 133: Manual de Linux Para Iniciados

6.4. Samba 121

mesma vari�avel utilizada pelo servidor Windows. Deve-se utilizar um n�umero maior que

este (como 100 por exemplo) para garantir que o servidor SAMBA seja eleito na escolha

de valida�c~ao do login das esta�c~oes

announce as

Permite especi�car o tipo de servidor NetBios (nmbd) que ser�a divulgado na rede. As

op�c~oes aceites pelo SAMBA: "NT Server", "NT Workstation", "Win95"ou "WfW"

domain logons

Usado para validar o login na rede, apenas para esta�c~oes Windows

logon script

Indica qual �cheiro de logon cujo script ser�a executado para os utilizadores. A vari�avel

%u corresponde ao utilizador na rede. Deve tamb�em ser criado uma partilha de nome

[netlogon] apontando para o direct�orio dos scripts

logon path

Indica o caminho do per�l remoto do utilizador. A vari�avel %L corresponde ao nome do

servidor NetBios (que pode ser o pr�oprio SAMBA). O logon path �e �util quando utilizadores

costumam efectuar logon em mais de um Host na rede, pois o seu per�l �e trazido com o

logon. No caso do exemplo, o direct�orio "Pro�les"deve conter os scripts (em formato Mi-

crosoft usando NET USE e etc) e os scripts devem ser criados com o notepad do Windows

por exemplo, a �m de conservar o formato do �cheiro

domain master

Indica se o Host ser�a o Domain Master Browser de toda a rede (WAN)

local master

Indica se o Host ser�a o Master Browser da rede local

preferred master

Este parametro for�ca a elei�c~ao do SAMBA como Master Browser para o workgroup. �E

recomend�avel utilizar este parametro em conjunto com o .domain master = yes. para ga-

rantir a elei�cao.

Nota: se se possuir uma rede com servidores Windows e SAMBA e tamb�em possuir um

servidor como Domain Master, n~ao se usa esta op�c~ao e deixa-se o parametro .os level =

65. para haver equil��brio

guest acount

O SAMBA trabalha melhor em redes Microsoft com a existencia de uma conta guest (vi-

sitante em ingles). Por padr~ao a conta usada �e nobody...

Page 134: Manual de Linux Para Iniciados

122 Cap��tulo 6. Servi�cos

wins server

Indica qual o servidor de Wins da rede. Se o pr�oprio Host for o servidor de Wins ent~ao

n~ao se utiliza este parametro, pois haver�a um loop e o sistema p�ara!

wins support

Permite ao SAMBA ser o servidor de Wins na rede. Isto signi�ca que o SAMBA ter�a uma

tabela com o ambiente completo da rede, garantindo que as esta�c~oes tenham acesso a estas

informa�c~oes e ganhem em velocidade para encontrar e aceder �as partilhas e impressoras.

O Wins Server deve ser especi�cado na con�gura�c~ao de rede (TCP/IP) das esta�c~oes, que

�e o endere�co IP do servidor

keep alive

Como as m�aquinas que correm Windows tendem a bloquear de tempos a tempos, este

parametro �e usado para veri�car o estado da liga�c~ao, evitando tr�afego desnecess�ario na

rede. Tamb�em pode ser usado para esta�c~oes Linux

debug level

Parametro usado para dar exibilidade �a con�gura�c~ao do sistema. Permite ao SAMBA

trabalhar correctamente com algumas situa�c~oes de erro, por exemplo

winpopup command

Especi�ca qual �e o comando que ser�a executado quando o servidor receber mensagens

Winpopup. Aqui, muitas op�c~oes podem ser usadas de acordo com a preferencia do Admi-

nistrador. Se a sua rede utiliza mensagens deste tipo, �e interessante de�nir um comando

para o parametro, evitando assim poss��veis mensagens de erro para quem enviou a mensa-

gem ao servidor

log �le

Indica o �cheiro de log do SAMBA. A vari�avel %u corresponde ao nome de logon do utili-

zador

null passwords

Indica se ser�a ou n~ao poss��vel que alguns utilizadores tenham password nula de logon (lo-

gon sem password)

unix password sync

Se este parametro for activado (= yes) ent~ao clientes SMB (como esta�c~oes Windows) po-

der~ao alterar a sua password de login

socket options

Este parametro permite con�gura�c~oes extras para o protocolo, possibilitando uma melhor

performance do servidor em lidar com os pacotes na rede

Page 135: Manual de Linux Para Iniciados

6.4. Samba 123

printing

Indica qual o sistema de impress~ao padr~ao utilizado pelo Linux

printcap name

Indica o �cheiro para procura das de�ni�c~oes das impressoras

load printers

Disponibiliza as impressoras para a rede

hosts allow

Indica quais as m�aquinas que tem acesso ao servidor SAMBA. Pode-se utilizar o endere�co

IP ou o nome da m�aquina. Para garantir acesso a toda uma rede por exemplo, escreva:

"hosts allow = 172.16.90."

hosts deny

Como em "hosts allow", mas para restringir o acesso ao servidor SAMBA

A sec�c~ao [homes] de�ne os parametros para as pastas pessoais dos utilizadores na rede

(home dir):

comment

Coment�ario para esta partilha

public

Tamb�em conhecido como .guest ok., permite ou n~ao acesso de outros utilizadores

browseable

De�ne se a partilha ser�a ou n~ao vis��vel para o Ambiente de Rede. Esta�c~oes Windows95

vers~ao 4.00.950-C n~ao aceitam esta op�c~ao, onde uma poss��vel solu�c~ao �e utilizar o nome da

partilha seguido de $ (teste$ por exemplo), como se faz no Windows

writeable

Indica se o utilizador poder�a ou n~ao escrever na sua pasta pessoal (home dir)

As demais sec�c~oes correspondem a partilhas presentes na rede. Os parametros seguin-

tes s~ao apenas alguns dos poss��veis:

comment

Coment�ario para esta partilha

Page 136: Manual de Linux Para Iniciados

124 Cap��tulo 6. Servi�cos

path

Caminho do direct�orio mpartilhado

writeable

Indica se ser�a ou n~ao poss��vel criar ou excluir �cheiros ou direct�orios da partilha

public / guest ok

Indica se ser�a ou n~ao permitido o acesso de outros utilizadores

browseable

De�ne se a partilha ser�a ou n~ao vis��vel para o Ambiente de Rede

write list

De�ne os utilizadores e/ou grupos com acesso de escrita na partilha. Para mais de um

utilizador, separa-se os nomes por v��rgula (user1, user2, etc) e para grupos utiliza-se @

antes do nome do grupo

read list

Como em \write list", mas de�ne quem ter�a permiss~ao de apenas leitura

force create mode

Diz ao SAMBA para for�car o tipo de permiss~ao dos �cheiros criados (o mesmo que usar o

chmod). Esta permiss~ao tem menor prioridade que os parametros write list e read list

force directory mode

O mesmo que .force create mode., mas para os direct�orios criados na partilha

admin users

Indica quais s~ao os utilizadores com permiss~ao completa para a partilha (permiss~ao de root)

copy

Permite copiar os parametros de outra sec�c~ao, como um template por exemplo, �util se se

utiliza partilhas semelhantes. Para alterar parametros basta inform�a-los na sec�c~ao actual

hosts allow

Indica quais as m�aquinas que podem aceder �a partilha. Pode-se utilizar o endere�co IP ou

o nome da m�aquina. Para garantir acesso a toda uma rede classe C por exemplo, escreva:

"hosts allow = 172.16.90."

hosts deny

Como em "hosts allow", mas para restringir o acesso �a partilha

Page 137: Manual de Linux Para Iniciados

6.4. Samba 125

max connections

Permite especi�car o n�umero m�aximo de liga�c~oes simultaneas �a partilha

max disk size

Permite especi�car qual o limite de espa�co em disco que a partilha pode utilizar. Este

valor �e de�nido em Mb (megabytes)

De seguida apresentam-se as vari�aveis que podem ser usadas em parametros e a respectiva

fun�c~ao:

Vari�aveis Fun�c~oes

%S Nome do Servi�co (partilha) actual

%u Nome do utilizador

%g Nome do grupo

%H Nome do direct�orio pessoal do utilizador

%m Nome da m�aquina cliente fornecido pelo NETBIOS

%L Nome do servidor NETBIOS, permite que a con�gura�c~ao desejada

seja alterada de acordo com o cliente que vai aceder ao sistema

%M Nome Internet da m�aquina cliente

%a Sistema operativo da m�aquina remota, onde os reconhecidos s~ao

WfW, WinNT e Win95

%I O endere�co IP da m�aquina cliente

%T Data e hor�ario

Tabela 6.1: Vari�aveis dos parametros gerais do smb.conf

Agora que o smb.conf est�a con�gurado o melhor �e fazer um teste para saber se est�a tudo

correcto, com o comando testparm > teste config samba

Ser�a criado o �cheiro teste con�g samba. Confere-se este �cheiro e caso exista alguma

mensagem de erro (ERROR...) volta-se e corrige-se o problema. Feitas as con�gura�c~oes,

deve-se activar o SAMBA com o comando /etc/rc.d/init.d/smb start

Se se quiser veri�car se o SAMBA est�a a funcionar, executa-se o comando anterior mas

substitui-se o "start"por "status". Para que o SAMBA seja iniciado sempre ap�os a inici-

aliza�c~ao do servidor, executa-se o ntsysv e marca-se o SMB. Tamb�em se pode escrever a

linha de "start"do smb no �cheiro /etc/rc.d/rc.local, da seguinte forma:

1. Executa-se vi /etc/rc.d/rc.local

2. Tecla-se i para editar e corre-se at�e ao �nal do �cheiro

Page 138: Manual de Linux Para Iniciados

126 Cap��tulo 6. Servi�cos

3. Escreve-se a seguinte linha: /etc/rc.d/init.d/./smb start

4. Tecla-se Esc e em seguida : e depois wq

A partir de agora, sempre que o computador for reinicializado o SAMBA ser�a activado

automaticamente.

6.5 Sendmail

A primeira vers~ao foi escrita em 1979, por Eric Allman e desde ent~ao tem sido inclu��do

em todas as distribui�c~oes Unix. Ficou um pouco "esquecido"pelo autor entre 1982 e 1990

e por este e outros motivos, os diversos fabricantes de Unix (IBM, HP, Sun) trataram de

expandir e melhorar o sendmail original. O resultado desse processo foi o aparecimento de

in�umeras vers~oes incompat��veis entre si.

Em 1994, Eric come�cou a trabalhar na vers~ao 8.7 do sendmail, que incorporou a maio-

ria das extens~oes apresentadas pelos UNIX's comerciais. Assim, o sendmail passou a ser

novamente um programa �unico. A vers~ao actual do sendmail �e a 8.9.2, que foi lan�cada no

�nal de 1998.

6.5.1 Principais vantagens

� Padr~ao da Internet

Mais de 70% dos servidores de e-mail utilizam o sendmail como MTA (Mail Transfer

Agent). O QMail ainda det�em um s�etimo lugar em utiliza�c~ao na Internet, atr�as do

Exchange Server da Microsoft e de outros.

� Documenta�c~ao

Existe uma quantidade razo�avel de documenta�c~ao sobre o sendmail na Internet; exis-

tem HOWTOs dedicados a certos aspectos da con�gura�c~ao do sendmail; e caso tudo

isto falhe, sempre h�a o livro Sendmail3, mais conhecido pelos ��ntimos como BatBook.

Ainda n~ao existe um livro para o QMail, e a documenta�c~ao sobre o mesmo na Inter-

net ainda �e pouca. A documenta�c~ao on-line �e su�ciente por�em esparsa, ainda pode

melhorar bastante.

� Con�gura�c~ao poderosa/ ex��vel

A exibilidade de con�gura�c~ao do sendmail �e impressionante, bem superior �a do

QMail. Essa exibilidade �e heran�ca de uma �epoca onde redes TCP/IP, UUCP e

outras tinham de conviver em harmonia. Hoje, com o monop�olio do TCP/IP e

3Sendmail, 2nd Edition, Brian Costales with Eric Allman, O' Reilly & Associates, January 1997

Page 139: Manual de Linux Para Iniciados

6.5. Sendmail 127

da uniformiza�c~ao da Rede, essa vantagem do sendmail j�a n~ao �e um diferencial tao

importante.

� Suporte comercial

A Sendmail Inc., empresa fundada pelo pr�oprio Eric Allman, vende vers~oes comer-

ciais do sendmail com front-end gr�a�co de con�gura�c~ao. Isto pode ser interessante

para aqueles que precisam de suporte comercial ou fazem quest~ao da con�gura�c~ao

facilitada em modo gr�a�co. No caso do QMail, o que existe s~ao empresas que d~ao

suporte comercial ao QMail, sem vincula�c~ao directa com o autor.

� Vers~ao para NT

Uma das vers~oes comerciais �e para a plataforma Windows NT. N~ao existe vers~ao do

QMail para Windows.

6.5.2 Exemplos de con�gura�c~ao do Servidor

A maioria de n�os tem m�aquinas ligadas a Internet por conex~ao dial-up. A princ��pio, isso

tira o m�erito de correr um servidor de e-mail. Mas n�os queremos um servidor de e-mail

s�o nosso. Os exemplos de con�gura�c~ao a seguir abordam esse caso, e est~ao a funcionar no

nosso servidor.

O nosso servidor de Internet: estv.ipv.pt

Demos �a nossa m�aquina o nome gel.estv.ipv.pt (o n�o �e gel, o dominio �e estv.ipv.pt).

Executamos o comando cat /etc/hosts e devemos ter um resultado parecido com

\# For loopbacking.

127.0.0.1 localhost

127.0.0.1 gel.estv.ipv.pt gel

de seguida fazemos cat /etc/HOSTNAME e obtemos algo como

gel.estv.ipv.pt

Este nome da m�aquina - gel - n~ao est�a registado no DNS do nosso servidor, portanto

ningu�em do mundo exterior chegar�a �a nossa m�aquina usando esse nome. Ele s�o �e reconhe-

cido localmente.

Utilizadores no sistema local: Ricardo Silva e Rui Cabral. Poderiam haver mais.

Caixa postal no servidor de e-mail do servidor de Internet: [email protected] (Os

Page 140: Manual de Linux Para Iniciados

128 Cap��tulo 6. Servi�cos

programas de envio de e-mail devem estar con�gurados com este nome de caixa postal,

para que os diversos campos do e-mail, como "Return-Path:"e outros estejam preenchidos

com um e-mail v�alido. A n~ao observancia deste facto fez com que o nosso servidor aceitasse

todos os nossos e-mails mas n~ao entregasse nenhum...)

Dever�a ser possivel mandar e-mails entre utilizadores locais sem que esses e-mails sejam

repassados ao servidor da ESTV. Obviamente, dever�a ser poss��vel mandar e-mails para

outras caixas postais da ESTV.

E-mails para sites remotos devem ser simplesmente passados adiante ao servidor de e-

mail da ESTV. Por que n~ao entregar directamente no site de destino ? Pois isto pode

tomar muito tempo se o site for distante e lento (imagine, mandar um arquivo enorme

para [email protected]). Queremos entregar rapidamente o e-mail para a ESTV e ela

que se encarregue de mand�a-lo adiante.

Como o nome gel.estv.ipv.pt n~ao �e conhecido na Internet queremos que os nossos cor-

respondentes remotos mandem replys para [email protected], e n~ao para ricardo-

[email protected]. Isto implica em que nosso servidor de e-mail modi�que o endereco

do remetente, tirando fora o "gel".

6.5.3 Con�gura�c~ao do servi�co

O primeiro passo �e instalar o sendmail. A maioria, se n~ao a totalidade das distribui�c~oes

Linux vem com o sendmail; basta instalar o respectivo TGZ ou RPM. A pr�opria instala�c~ao

j�a activa o servi�co na porta 25, basta reiniciar a m�aquina.

Con�gurar directamente o arquivo /etc/sendmail.cf seria uma aventura �a parte. Aqui,

utilizaremos um processador de macros (m4) para gerar o arquivo de con�gura�c~ao. Quem

quiser pode usar o di� para ver em que pontos o /etc/sendmail.cf padr~ao ser�a modi�cado.

cd /usr/src/sendmail/cf/cf

Crie um arquivo de con�gura�c~ao com este conte�udo:

include(` ../m4/cf.m4� )

VERSIONID(`versao EPX para workstations dial-up�)dnl

OSTYPE(linux)

FEATURE(nouucp)dnl

FEATURE(masquerade\_envelope)

FEATURE(genericstable, `hash -o genericstable�)

GENERICS\_DOMAIN\_FILE(`/etc/genericsdomain�)

Page 141: Manual de Linux Para Iniciados

6.5. Sendmail 129

define(`SMART\_HOST�,`estv.ipv.pt�)

define(`ALIAS\_FILE�,`/etc/aliases�)

MAILER(local)dnl

MAILER(smtp)dnl

A feature masquerade envelope indica que queremos mascarar o remetente. De facto, que-

remos que [email protected] saia como [email protected] para o mundo

externo.

A de�ni�c~ao SMART HOST permite-nos dizer para que servidor de e-mail devemos passar

adiante as mensagens n~ao locais. N~ao queremos entreg�a-las n�os mesmos, pois isto demora-

ria muito e ocuparia muito tempo de uma cara linha telef�onica. Se fossemos um servidor

Internet, n~ao usar��amos este recurso.

Depois executa-se o comando

m4 epx.mc > /etc/sendmail.cf

Agora, vamos ao direct�orio /etc, criar algumas tabelas.

cd /etc

echo "" > genericstable

echo "ricardosilva [email protected]" >> genericstable

echo "root [email protected]" >> genericstable

makemap -r hash genericstable.db < genericstable

A fun�c~ao desta tabela �e determinar que os endere�cos da primeira coluna - no caso, endere�cos

locais - ser~ao convertidos para os endere�cos �a direita. Quem eventualmente responder a

um de nossos e-mails, mandar�a a resposta para a caixa postal do servidor de Internet, que

atende 24h por dia e est�a registada no DNS.

echo "gel.estv.ipv.pt> genericsdomain

Os dom��nios constantes neste arquivo ser~ao considerados locais. Pelo menos no nosso

caso, basta inserir o nome da nossa pr�opria m�aquina.

echo "postmaster: ricardosilva> aliases

newaliases

A fun�c~ao desta tabela �e passar adiante os e-mails de certos utilizadores para outros. Todo

o servidor de e-mail deve aceitar mensagens para o utilizador postmaster, ent~ao no nosso

caso passaremos estas mensagens adiante para um utilizador real.

Page 142: Manual de Linux Para Iniciados

130 Cap��tulo 6. Servi�cos

killall -1 sendmail

Ordenamos ao sendmail que releia os nossos arquivos de con�gura�c~ao, e a�� temos o nosso

pr�oprio servidor de e-mail.

6.5.4 Outros Servidores de Mail

O QMail foi escrito por D. J. Bernstein. A primeira vers~ao p�ublica (beta, 0.7) foi lan�cada

em Janeiro de 1996.

Por ser um programa recente, levou em conta desde o in��cio quest~oes como seguran�ca,

que se tornaram cr��ticas ap�os a difus~ao explosiva da Internet. Tamb�em levou em conta os

problemas e complexidades do pr�oprio sendmail; e procurou mimi�car todos os seus recur-

sos. Disto resultou um programa que �e o principal concorrente free-software do sendmail.

A vers~ao atual do QMail �e a 1.03, lan�cada em Junho de 1998. O site do QMail �e

http://www.qmail.org.

As suas principais vantagens s~ao:

� Velocidade

Segundo o autor, o QMail �e at�e 100 vezes mais r�apido que o sendmail em determinadas

tarefas.

� Seguran�ca

O QMail foi projectado desde o in��cio para ser seguro. O autor chegou a oferecer

um pr�emio de US$ 1.000 para quem conseguisse invadir uma m�aquina por meio de

uma fraqueza do QMail. Ningu�em conseguiu, e o dinheiro acabou ser doado �a Free

Software Foundation.

Enquanto o sendmail �e um programa monol��tico (um �unico execut�avel que faz tudo)

corendo com permiss~oes de administrador da m�aquina, o QMail �e dividido em di-

versos execut�aveis, dos quais apenas um (o que faz a gest~ao da �la) tem permiss~ao

de administrador da m�aquina. Mesmo que um invasor remoto consiga tomar conta

de um dos programas de comunica�c~ao, n~ao ter�a permiss~ao para fazer muita coisa.

Por outro lado, se ele tomar conta do sendmail, ter�a permiss~oes de administrador da

m�aquina.

Outro aspecto interessante do QMail �e que ele usa uma biblioteca pr�opria, diferen-

ciada, para lidar com strings. Isto praticamente elimina as hip�oteses de ocorrer um

crash do bu�er, que �e o defeito mais comum explorado na invas~ao de um programa.

� Facilidade de con�gura�c~ao

A forma de armazenamento dos parametros de con�gura�c~ao �e directa, honesta, em

Page 143: Manual de Linux Para Iniciados

6.6. Apache+SSL+PHP4 com a Interface de Webmail IMP 131

arquivos claramente nominados, �e incrivelmente f�acil de entender e manter. A con-

�gura�c~ao via macros �e relativamente f�acil, mas depois que se tenha uma boa no�c~ao

do funcionamento geral do sendmail, e isso �e di�cil obter.

� Adop�c~ao bem-sucedida por grandes utilizadores de e-mail

Empresas como Red Hat e outras substitu��ram o sendmail pelo QMail com sucesso.

6.6 Apache+SSL+PHP4 com a Interface de Webmail

IMP

Muitos ISP (Internet Services Provider), faculdades e entidades ligadas a Internet necessi-

tam de um servi�co de Webmail para os seus utilizadores. Atrav�es de uma interface intuitiva

as pessoas tem acesso �a sua conta de e-mail, lendo e escrevendo novas mensagens, arma-

zenando contactos, entre outras utilidades. Devido �a grande facilidade e utiliza�c~ao, os

servi�cos de Webmail s~ao de grande popularidade na Internet. Grandes empresas oferecem

este servi�co de forma gratuita para os utilizadores da Internet, podemos citar o Hotmail,

Yahoo e Portugalmail como exemplos da grande procura e utiliza�c~ao deste servi�co.

No mundo Unix temos diversos aplicativos que oferecem um interface de Webmail para

os utilizadores. Desde solu�c~oes gratuitas e comercias. Uma das distribui�c~oes de Webmail

mais utilizadas �e o IMP da Horde (http://www.horde.org). Este pacote tem uma grande

aceita�c~ao devido ao seu interface amig�avel, facilidade de con�gura�c~ao e instala�c~ao.

De seguida vamos explicar como instalar um servidor Web com suporte a SSL, PHP e

a interface de Webmail IMP. Vamos utilizar a instala�c~ao padr~ao da maioria dos pacotes,

que pode ser ajustada de acordo com as necessidades desde que se tenha os requisitos

necess�arios para o servi�co de Webmail funcionar. Caso j�a se possua algum dos pacotes

envolvidos instalados, pode-se remove-los ou saltar a parte da instala�c~ao dos mesmos e

mudar as op�c~oes de instala�c~ao de acordo com as necessidades.

6.6.1 Instala�c~ao do Apache com PHP e Mod-SSL

No exemplo seguinte a instala�c~ao do PHP, como do MOD-ssl v~ao ser instaladas estatica-

mente junto com apache. Se tem um servidor de Apache instalado, com suporte a PHP4

(Suportando Mysql e IMAP) pode saltar esta parte e ir directo para a instala�c~ao do IMP.

Download dos seguintes pacotes:

� Apache - http://httpd.apache.org/dist/apache 1.3.14.tar.gz

Page 144: Manual de Linux Para Iniciados

132 Cap��tulo 6. Servi�cos

� PHP - http://www.php.net/do download.php?download �le=php-4.0.3.tar.gzsource

site=www.php.net

� IMAP - ftp://ftp.cac.washington.edu/imap/

� Mysql - http://www.mysql.com/Downloads/MySQL-3.22/mysql-3.22.32.tar.gz

� ModSSL - http://www.modssl.org/source/mod ssl-2.7.0-1.3.14.tar.gz

� OpenSLL - http://www.openssl.org/source/openssl-0.9.6.tar.gz

�E prov�avel que neste momento alguns dos pacotes anteriores j�a ter~ao vers~oes mais recentes.

Neste caso, pre�ra sempre a vers~ao mais recente, e leia a documenta�c~ao para ver se algo

mudou nos procedimentos de con�gura�c~ao.

Neste exemplo vamos utilizar o diret�orio /usr/src/web para descompactar os arquivos e

utilizar a con�gura�c~ao padr~ao de instala�c~ao dos aplicativos.

Descompactar o pacote openssl-0.9.6.tar.gz

tar xvfz openssl-0.9.6.tar.gz

Entrar no direct�orio do openssl

cd openssl-0.9.6

Con�gurar o openssl

./configure

Compilar o openssl

make

Instalar o openssl

make install

Adicionar o direct�orio /usr/local/ssl/lib no arquivo /etc/ld.so.conf

echo "/usr/local/ssl/lib>> /etc/ld.so.conf

Actualizar as libraries

ldconfig

Page 145: Manual de Linux Para Iniciados

6.6. Apache+SSL+PHP4 com a Interface de Webmail IMP 133

Voltar para o direct�orio /usr/src/web

cd /usr/src/web

Descompactar o pacote apache 1.3.14.tar.gz

tar xvfz apache 1.3.14.tar.gz

Entrar no direct�orio do apache

cd apache 1.3.14/

Executar o comando con�gure

./configure

Voltar para o diretorio /usr/src/web

cd ..

Descompactar o source do pacote mod ssl

tar xvfz mod ssl-2.7.0-1.3.14.tar.gz

Entrar no direct�orio do mod ssl

cd mod ssl-2.7.0-1.3.14

Con�gurar o mod ssl

./configure --with-apache=../apache 1.3.14 --with-ssl=../openssl-0.9.6

Voltar para o direct�orio /usr/src/web

cd ..

Descompactar as fontes do IMAP

tar xvfz imap-2000.RELEASE-CANDIDATE.7.tar.Z

Page 146: Manual de Linux Para Iniciados

134 Cap��tulo 6. Servi�cos

Entrar no direct�orio do IMP

cd imap-2000.RELEASE-CANDIDATE.7

A instala�c~ao e con�gura�c~ao do IMAP vai depender do sistema que se estiver a utilizar,

pode-se veri�car o arquivo Make�le e ver qual a op�c~ao que se enquadra melhor com o seu

sistema. Para os sistemas Linux, a op�c~ao slx funciona na maioria dos casos.

make slx

Copiar o imapd para o direct�orio /usr/sbin

cp imapd/imapd /usr/sbin

Adicionar a linha que chama o imapd no seu inetd

echo "imap stream tcp nowait root /usr/sbin/tcpd imapd>> /etc/inetd.conf

Nota: Pode ser que j�a tenha esta linha no seu inetd.conf, ent~ao basta descomenta-la.

Reiniciar o inetd

killall -1 inetd

Voltar para o direct�orio /usr/src/web

cd ..

Instalar e con�gurar o Mysql

Descompactar o pacote do Mysql

tar xvfz mysql-3.22.32.tar.gz

Entrar no Direct�orio do Mysql

cd mysql-3.22.32

Con�gurar o Mysql de acordo com o seu sistema

./configure

Compilar

make

Page 147: Manual de Linux Para Iniciados

6.6. Apache+SSL+PHP4 com a Interface de Webmail IMP 135

Instalar

make install

Instalar os databases do Mysql

./scripts/mysql install db

Inicializar o Mysql

/usr/local/mysql/bin/safe mysqld

Nota: �E interessante de�nir uma password para o utilizador root do Mysql atrav�es do co-mando: mysqladmin password PASSWORD

Descompactar os fontes do PHP4

tar xvfz php-4.0.3.tar.gz

Entrar no direct�orio do PHP4

cd php-4.0.3

Con�gurar o PHP4

./configure --with-mysql=/usr/local --with-apache=../apache 1.3.14

--with-imap=../imap-2000.RELEASE-CANDIDATE.7 --enable-track-vars

Neste caso estamos a utilizar o suporte da base de dados Mysql do PHP instalado no

direct�orio /usr/local, se o direct�orio de instala�c~ao for diferente tem de alterar o local onde

est�a instalada a base de dados Mysql. Muitas distribui�c~oes do Linux que j�a vem com o

Mysql pr�e-instalado esta instala�c~ao encontra-se no direct�orio /usr.

O suporte ao IMAP tamb�em est�a habilitado e as fontes neste exemplo est~ao no direct�orio

../imap-2000.RELEASE-CANDIDATE.7.

Compilar o PHP

make

Instalar o PHP

make install

Page 148: Manual de Linux Para Iniciados

136 Cap��tulo 6. Servi�cos

Voltar para o direct�orio do Apache

cd ../apache 1.3.14

Con�gurar o apache com os m�odulos PHP e Mod-ssl

./configure --enable-module=ssl --activate-module=src/modules/php4/libphp4.a

--enable-module=so

A op�c~ao -enable-module=so serve para utilizar do recurso Dynamic Shared Object, que

possibilita a op�c~ao do apache carregar m�odulos adicionais sem a necessidade de recompilar

o Apache. Esta op�c~ao funciona em determinados sistemas Unix, como o Linux.

Compilar o Apache

make

6.6.2 Criar certi�cado para o Servidor

Os certi�cados podem ser criados manualmente ou utilizar a op�c~ao make certi�cate. A

op�c~ao make certi�cate oferece a possibilidade de se criar tres tipos de certi�cados: dummy,

test, custom. Recomendamos a op�c~ao custom, onde se cria o certi�cado com os seus dados.

make certificate TYPE=custom

6.6.3 Criar certi�cados manualmente

1. Criar a Key RSA para seu Apache Server

� openssl genrsa -des3 -out server.key 1024

2. Criar Certi�cate Signing Request (CSR) com a Key RSA

� openssl req -new -key server.key -out server.csr

� Responder �as especi�ca�c~oes de acordo com os dados do administrador. O

parametro Common Name (eg, YOUR name) deve ser o nome do host que

se deseja criar o certi�cado.

3. Certi�car o seu certi�cado atrav�es de uma Autoridade Certi�cadora (Certi�cate

Authority (CA)) - Existem diversas entidades certi�cadoras na Web, como a verisign

e certsign. De seguida vamos explicar como criar uma Autoridade Certi�cadora.

Page 149: Manual de Linux Para Iniciados

6.6. Apache+SSL+PHP4 com a Interface de Webmail IMP 137

4. Criar a Key RSA para o seu CA

� openssl genrsa -des3 -out ca.key 1024

5. Criar uma assinatura para a Key RSA do seu CA

� openssl req -new -x509 -days 365 -key ca.key -out ca.crt

6. Assinar o seu certi�cado com a Autoridade Certi�cadora que criou. - O mod ssl

vem com um script (sign.sh) que automatiza este processo, ele est�a no direct�orio

pkg.contrib do pacote do mod ssl.

� ./sign.sh server.csr

Ap�os isto ele cria o arquivo server.crt que corresponde ao certi�cado assinado pela entidade

certi�cadora.

Como foi criado uma key do servidor com password, para utilizar este certi�cado quando

for iniciar o apache, vai ser necess�ario informar a password. Este processo acaba por im-

pedir a automatiza�c~ao da inicializa�c~ao do Apache. Para resolver este problema, pode ser

criado um certi�cado sem esta password.

openssl rsa -in server.key -out server.key.nopass

Utilizando esta key server.key.nopass n~ao vai ser necess�ario informar uma password para

inicializar o apache.

NOTA:Deve-se ter cuidado com a permiss~ao dos seus certi�cados, principalmentecom este certi�cado sem password. Recomenda-se a permiss~ao de leitura somente

para o owner.

chmod 400 server.key.nopass

Instalar o Apache

make install

O pr�oximo passo �e con�gurar o servidor Apache de acordo com as necessidades. O ar-

quivo de con�gura�c~ao vai estar no direct�orio /usr/local/apache/conf, o nome do arquivo

de con�gura�c~ao �e apache.conf.

Page 150: Manual de Linux Para Iniciados

138 Cap��tulo 6. Servi�cos

6.7 FTP

6.7.1 Controlar o acesso aos servi�cos

Como medida de seguran�ca, a maioria dos servi�cos de rede s~ao administrados por um pro-

grama protector chamadoTCP wrapper. Os servi�cos protegidos s~ao listados em /etc/inetd.conf

que especi�ca se /usr/sbin/tcpd.tcpd pode permitir ou negar acesso a um servi�co, e �a con-

�gura�c~ao em /etc/hosts.allow e /etc/hosts.deny. Por default do Red Hat Linux s~ao permiti-

dos todos os servi�cos solicitados. Para desactivar ou limitar servi�cos edita-se /etc/hosts.allow.

Considerando o �cheiro abaixo /etc/hosts.allow como exemplo:

ALL: ipv.pt .estv.ipv.pt

in.talkd: ALL

in.ntalkd: ALL

in.fingerd: ALL

in.ftpd: ALL

Esta con�gura�c~ao permite todas as liga�c~oes de m�aquinas ipv.pt e *.estv.ipv.pt. Tamb�em

permite talk, �nger e ftp entre todas m�aquinas. O tcpd permite um controle de acesso muito

mais so�sticado, usando uma combina�c~ao de /etc/hosts.allow e /etc/hosts.deny.

6.7.2 FTP An�onimo

A con�gura�c~ao do FTP an�onimo �e simples. Basta instalar o pacote rpm chamado anon-ftp

(que deve ser feito durante a instala�c~ao). Uma vez instalado, o FTP an�onimo �ca activo e

a funcionar.

H�a alguns �cheiros que podem ser con�gurados no servidor de FTP:

/etc/ftpaccess

De�ne a maior parte do controlo de acessos ao servidor ftp. Algumas coisas que podem

ser feitas: con�gurar grupos l�ogicos para controlar acessos de diversos sites, limitar o

n�umero de liga�c~oes simultaneas de FTP, con�gurar a transferencia de logging, e muito

mais.

/etc/ftphosts

O �cheiro de ftphosts �e usado para permitir ou restringir acesso a certas contas de

outros hosts.

Page 151: Manual de Linux Para Iniciados

6.8. DNS 139

/etc/ftpusers

Este �cheiro lista todos os utilizadores que n~ao tem permiss~ao de executar transmiss~oes

ftp. Por exemplo, root �e listado em /etc/ftpusers como padr~ao. Isso signi�ca que n~ao

pode ser executado ftp nesta m�aquina como super-utilizador. Isto �e uma boa medida de

seguran�ca.

6.8 DNS

O DNS (ou Domain Name Server), converte os nomes das m�aquinas nos seus endere�cos

IP que todas as m�aquinas ligadas �a rede devem ter. Este servi�co \traduz" (map) do nome

para o endere�co IP e vice-versa entre muitas outras coisas.

Um mapping �e simplesmente uma associa�c~ao entre duas coisas, neste caso o nome da

m�aquina, por exemplo gel.estv.ipv.pt, e o seu endere�co IP 172.16.90.1. O DNS tamb�em

cont�em mappings no sentido inverso, do IP para o nome da m�aquina; isto �e o chamado

\reverse mapping".

O DNS �e para aqueles que s�o agora come�cam a utilizar o Linux, uma das �areas mais

densas da administra�c~ao de redes. Felizmente n~ao �e muito dif��cil de entender. Nesta

sec�c~ao vamos tentar descrever como se con�gura um DNS Name Server.

Antes de come�car �e necess�ario veri�car algumas condi�c~oes essenciais:

� fazer telnet de e para a m�aquina;

� estabelecer todo o tipo de liga�c~oes �a Internet;

� e muito importante, fazer telnet a 127.0.0.1.

Al�em destas condi�c~oes �e preciso ainda ter os �cheiros /etc/nsswitch.conf, /etc/resolv.conf

e /etc/hosts bem con�gurados e cujas fun�c~oes j�a dever~ao ser conhecidas pois j�a foram fa-

ladas anteriormente.

O Name Serving no Linux �e feito por um programa chamado named. O Named �e um

programa que faz parte do pacote BIND, est�a inclu��do em quase todas as distribui�c~oes do

Linux e normalmente �e instalado em /usr/sbin/named.

Page 152: Manual de Linux Para Iniciados

140 Cap��tulo 6. Servi�cos

6.8.1 Con�gura�c~ao

Tal como tinhamos referido anteriormente, �e preciso o �cheiro /etc/named.conf. Esta in-

forma�c~ao �e lida quando o named arranca.

Vamos apresentar se seguida um exemplo do que este �cheiro cont�em depois da instala�c~ao

o �cheiro apenas cont�em:

// Config file for caching only name server

options {

directory "/var/named";

// Uncommenting this might help if you have to go through a

// firewall and things are not working out. But you probably

// need to talk to your firewall admin.

// query-source port 53;

};

zone "." {

type hint;

file "root.hints";

};

zone "0.0.127.in-addr.arpa" {

type master;

file "pz/127.0.0";

};

A linha com o parametro directory indica ao named aonde �e que ele deve procurar os

�cheiros. Assim, em todos os parametros �le as indica�c~oes s~ao sempre tendo como base

o direct�orio indicado acima. Um exemplo disto �e pz que deve ser entendido como um

direct�orio localizado em /var/named, isto �e, /var/named/pz.

O �cheiro /var/named/root.hints deve ter alguma coisa como:

; There might be opening comments here if you already have this file.

; If not don't worry.

;

. 6D IN NS M.ROOT-SERVERS.NET.

. 6D IN NS I.ROOT-SERVERS.NET.

Page 153: Manual de Linux Para Iniciados

6.8. DNS 141

. 6D IN NS E.ROOT-SERVERS.NET.

. 6D IN NS D.ROOT-SERVERS.NET.

. 6D IN NS A.ROOT-SERVERS.NET.

. 6D IN NS H.ROOT-SERVERS.NET.

. 6D IN NS C.ROOT-SERVERS.NET.

. 6D IN NS G.ROOT-SERVERS.NET.

. 6D IN NS F.ROOT-SERVERS.NET.

. 6D IN NS B.ROOT-SERVERS.NET.

. 6D IN NS J.ROOT-SERVERS.NET.

. 6D IN NS K.ROOT-SERVERS.NET.

. 6D IN NS L.ROOT-SERVERS.NET.

;

M.ROOT-SERVERS.NET. 6D IN A 202.12.27.33

I.ROOT-SERVERS.NET. 6D IN A 192.36.148.17

E.ROOT-SERVERS.NET. 6D IN A 192.203.230.10

D.ROOT-SERVERS.NET. 6D IN A 128.8.10.90

A.ROOT-SERVERS.NET. 6D IN A 198.41.0.4

H.ROOT-SERVERS.NET. 6D IN A 128.63.2.53

C.ROOT-SERVERS.NET. 6D IN A 192.33.4.12

G.ROOT-SERVERS.NET. 6D IN A 192.112.36.4

F.ROOT-SERVERS.NET. 6D IN A 192.5.5.241

B.ROOT-SERVERS.NET. 6D IN A 128.9.0.107

J.ROOT-SERVERS.NET. 6D IN A 198.41.0.10

K.ROOT-SERVERS.NET. 6D IN A 193.0.14.129

L.ROOT-SERVERS.NET. 6D IN A 198.32.64.12

A pr�oxima sec�c~ao no �cheiro named.conf �e �ultima zona. Esta parte vai ser explicada

mais adiante; por agora criamos um �cheiro chamado 127.0.0 no subdirect�orio pz com o

seguinte conte�udo:

$TTL 3D

@ IN SOA ns.linux.bogus. hostmaster.linux.bogus. (

1 ; Serial

8H ; Refresh

2H ; Retry

4W ; Expire

1D) ; Minimum TTL

NS ns.linux.bogus.

1 PTR localhost.

Page 154: Manual de Linux Para Iniciados

142 Cap��tulo 6. Servi�cos

De seguida �e preciso o �cheiro /etc/resolv.conf que deve ser qualquer coisa como:

search subdomain.your-domain.edu your-domain.edu

nameserver 127.0.0.1

A linha com o \search" especi�ca que dominios devem ser procurados para cada host

name ao qual nos queremos ligar. A linha \nameserver" especi�ca o endere�co do nosso

nameserver, neste caso a nossa pr�opria m�aquina uma vez que �e onde o named est�a a correr

(127.0.0.1 est�a correcto independentemente de a nossa m�aquina ter ou n~ao outro endere�co

IP).

Se quisermos listar v�arios name servers basta colocar uma linha \nameserver" para cada

um deles. Nota: O named nunca le este �cheiro, apenas o faz o resolver que usa o named.Em alguns �cheiros resolv.conf �e encontrada uma linha com a indica�c~ao \domain", isto

est�a correcto mas nunca se deve usar o \search" e \domain" pois s�o um deles ir�a funcio-nar'.

Para demonstrar o que este �cheiro faz, vamos apresentar um exemplo considerando o

resolv.conf apresentado em cima

Se um cliente tentar encontrar foo, ent~ao foo.sub-domain.your-domain.edu

�e o primeiro caminho a ser tentado, de seguida foo.your-domain.edu e �-

nalmente foo. Se colocarmos v�arios dom��nios na linha de procura \search",

logicamente ir�a demorar muito mais tempo a procurar em todos eles.

O exemplo assume que n�os pertencemos ao dom��nio subdomain.your-domain.edu; a nossa

m�aquina provavelmente �e etn~ao chamada your-machine.subdomain.your-domain.edu. A

linha de procura \search" n~ao deve conter o nosso TLD (Top Level Domain, neste caso

\edu") pelas raz~oes explicadas no par�agrafo anterior.

Se precisarmos de frequentemente ligar a m�aquinas de outro dom��nio �e possivel de acres-

centar esse dom��nio �a linha de pesquisa \search" da seguinte forma

search subdomain.your-domain.edu your-domain.edu other-domain.com

Obviamente �e preciso substituir os dom��nios de exemplo apresentados por nomes de dom��nios

reais.

Page 155: Manual de Linux Para Iniciados

6.8. DNS 143

6.8.2 Arrancar o named

Depois de tudo con�gurado �e tempo de arrancar com o servi�co named. �E muito simples,

basta executar o comando ndc start. Se por acaso n~ao funcionar pode-se tentar de outra

forma /usr/sbin/ndc start. Se n~ao obtivermos nenhuma mensagem de erro, ent~ao �e

porque o servi�co j�a est�a a funcionar.

De seguida �e aconselh�avel testar o nosso setup. Existe um programa chamado nslookup

que �e usado para isto. Actualmente h�a um programa mais apropriado chamado dig cuja

forma de uso �e algo como isto:

\# dig -x 127.0.0.1

e o seu resultado ser�a algo parecido a

; <<>> DiG 8.2 <<>> -x

;; res options: init recurs defnam dnsrch

;; got answer:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 4

;; flags: qr aa rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0

;; QUERY SECTION:

;; 1.0.0.127.in-addr.arpa, type = ANY, class = IN

;; ANSWER SECTION:

1.0.0.127.in-addr.arpa. 1D IN PTR localhost.

;; AUTHORITY SECTION:

0.0.127.in-addr.arpa. 1D IN NS ns.penguin.bv.

;; Total query time: 30 msec

;; FROM: lookfar to SERVER: default -- 127.0.0.1

;; WHEN: Sat Dec 16 00:16:12 2000

;; MSG SIZE sent: 40 rcvd: 110

Se foi isto que apareceu ent~ao est�a a funcionar correctamente. Caso contr�ario o melhor

ser�a voltar atr�as e rever as con�gura�c~oes. De cada vez que se alterar o named.conf �e

necess�ario fazer o restart do servi�co com o comando ndc restart.

6.8.3 Resolvers

Todos os sistemas operativos implementaram o padr~ao C API para as chamadas gethostby-

name e gethostbyaddr. Estas chamadas podem obter informa�c~oes de diversas fontes que

Page 156: Manual de Linux Para Iniciados

144 Cap��tulo 6. Servi�cos

podem ser con�guradas no /etc/nsswitch.conf.

Este �cheiro indica-nos de que �cheiro ou base de dados �e que se devem procurar de-

terminados tipos de dados. Usualmente cont�em alguns coment�arios muito �uteis no in��cio

do �cheiro que nos d~ao uma grande ajuda na sua con�gura�c~ao.

Na linha que come�ca por hosts devemos ter algo como

hosts: files dns

Esta linha indica-nos onde �e que esses programas devem procurar primeiro no �cheiro

/etc/hosts e de seguida veri�car o DNS de acordo com o estabelecido no resolv.conf.

Page 157: Manual de Linux Para Iniciados

6.8. DNS 145

[?] [?] [?] [?] [?] [?] [?] [?] [?] [?] [?] [?] [?]

Page 158: Manual de Linux Para Iniciados
Page 159: Manual de Linux Para Iniciados

Bibliogra�a

[1] Alvestad, M. Y., and Crosser, E. Linux Around the World - Linux Journal, No

2 (Junho 1994).

[2] Alvestrand, H. Linux Counter - Linux Journal, No 2 (Junho 1994).

[3] Brown, P. Introducing the Network Information Service for Linux - Linux Journal,

No 50 (Junho 1998).

[4] Corp., R. H. Red Hat Linux 7.1 Install Guide.

[5] Hughes, P. Book Review: "Linux Installation and Getting Started by Matt Welsh-Linux Journal, No 1 (Maio 1994).

[6] Komarinski, M. Linux System Administration - Linux Journal, No 14 (Junho 1995).

[7] Lars Wirzenius, J. O. Linux System Administrator's Guide. 1983.

[8] Olaf Kirch, T. D. Linux Network Administrator's Guide. 2000.

[9] Quinlan, D. The Linux FSSTD (File System Standard) - Linux Journal, No 2(Junho 1994).

[10] Ramey, C. What's GNU: BASH - The GNU Shell - Linux Journal, No 4 (Agosto

1994).

[11] Staff, T. L. J. Linux Distributions: A comparison of the popular ones - Linux

Journal, no 23 (Mar�co 1996).

[12] Thompson, B. Linux vs Windows NT and OS/2 - Linux Journal, No 1 (Maio 1994).

[13] Tridgell, A. Samba: Unix Talking with PCs - Linux Journal, No 7 (Novembro

1994).

Page 160: Manual de Linux Para Iniciados