Você está na página 1de 413

Guia Foca GNU/Linux

Gleydson Mazioli da Silva <gleydson@guiafoca.org>


Verso 5.65 - domingo, 05 de setembro de 2010
Resumo
Este documento tem por objetivo ser uma referncia ao aprendizado do usurio e um guia
de consulta, operao e congurao de sistemas Linux (e outros tipos de *ix). A ltima ver-
so deste guia pode ser encontrada na Pgina Ocial do Foca GNU/Linux (http://www.
guiafoca.org). Novas verses so lanadas com uma freqncia mensal e voc pode rece-
ber avisos de novos lanamentos deste guia preenchendo um formulrio na pgina Web.
Nota de Copyright
Copyright 1999-2010 - Gleydson Mazioli da Silva.
Permission is granted to copy, distribute and/or modify this document under the terms of the
GNU Free Documentation License, Version 1.2 published by the Free Software Foundation; A
copy of the license is included in the section entitled GNU Free Documentation License.
i
Sumrio
1 Introduo 1
1.1 Antes de comear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Pr-requisitos para a utilizao deste guia . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 Sistema Operacional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.4 O Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.4.1 Algumas Caractersticas do Linux . . . . . . . . . . . . . . . . . . . . . . . 6
1.5 Distribuies do Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.6 Software Livre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.7 Processamento de Dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.8 O Computador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.9 Conhecendo o Computador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.9.1 Tipos de Gabinete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.9.2 Painel Frontal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.9.3 Monitor de Vdeo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.10 Placa Me . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.10.1 Alguns componentes da placa me . . . . . . . . . . . . . . . . . . . . . . . 16
1.11 Memria do Computador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.11.1 Memria Principal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.11.2 Memria Auxiliar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.12 Discos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.12.1 Discos Flexveis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.12.2 Disco Rgido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.12.3 CD/DVD/BluRay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
SUMRIO ii
1.13 Cuidados Bsicos com o Computador . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.14 Dispositivos de Entrada e Sada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.15 Ligando o computador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.16 Desligando o computador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.17 Reiniciando o computador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2 Explicaes Bsicas 23
2.1 Hardware e Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.2 Arquivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.2.1 Extenso de arquivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.2.2 Tamanho de arquivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.2.3 Arquivo texto e binrio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.3 Diretrio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.3.1 Diretrio Raz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.3.2 Diretrio atual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.3.3 Diretrio home . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.3.4 Diretrio Superior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.3.5 Diretrio Anterior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.3.6 Caminho na estrutura de diretrios . . . . . . . . . . . . . . . . . . . . . . 27
2.3.7 Exemplo de diretrio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.3.8 Estrutura bsica de diretrios do Sistema Linux . . . . . . . . . . . . . . . 28
2.4 Nomeando Arquivos e Diretrios . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.5 Comandos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.5.1 Comandos Internos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.6 Comandos Externos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.7 Aviso de comando (Prompt) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.8 Interpretador de comandos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.9 Terminal Virtual (console) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.10 Login . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.11 Logout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.12 Curingas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
SUMRIO iii
3 Hardware 35
3.1 Placa de expanso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
3.2 Nomes de dispositivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.3 Congurao de Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.3.1 IRQ - Requisio de Interrupo . . . . . . . . . . . . . . . . . . . . . . . . 37
3.3.2 DMA - Acesso Direto a Memria . . . . . . . . . . . . . . . . . . . . . . . . 39
3.3.3 I/O - Porta de Entrada/Sada . . . . . . . . . . . . . . . . . . . . . . . . . . 40
3.4 Hardwares congurveis por jumpers, dip-switches, jumperless e Plug-and-Play. 41
3.4.1 Jumpers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.4.2 Dip-Switches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.4.3 Jumperless (sem jumper) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.4.4 Plug-and-Play . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.5 Listando as placas e outros hardwares em um computador . . . . . . . . . . . . . 43
3.6 Conitos de hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.7 Barramento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.8 Placas on-board / off-board . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3.9 Hardwares especcos ou For Windows . . . . . . . . . . . . . . . . . . . . . . . 46
3.10 Dispositivos especcos para GNU/Linux . . . . . . . . . . . . . . . . . . . . . . . 47
3.11 Conguraes de Dispositivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.11.1 Congurando uma placa de rede . . . . . . . . . . . . . . . . . . . . . . . . 47
3.11.2 Congurando uma placa de SOM no Linux . . . . . . . . . . . . . . . . . . 48
3.11.3 Congurando um gravador de CD/DVD no Linux . . . . . . . . . . . . . 49
3.11.4 Congurando o gerenciamento de energia usando o APM . . . . . . . . . 51
3.11.5 Congurando o gerenciamento de energia usando ACPI . . . . . . . . . . 52
3.11.6 Ativando WakeUP on Lan . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
4 Para quem esta migrando (ou pensando em migrar) do DOS/Windows para o Linux 55
4.1 Quais as diferenas iniciais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
4.2 Comandos equivalentes entre DOS/CMD do Windows e o Linux . . . . . . . . . 57
4.2.1 Arquivos de congurao . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.3 Usando a sintaxe de comandos DOS no Linux . . . . . . . . . . . . . . . . . . . . 59
4.4 Programas equivalentes entre Windows/DOS e o Linux . . . . . . . . . . . . . . . 60
SUMRIO iv
5 Discos e Parties 65
5.1 Parties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
5.2 Sistema de Arquivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
5.3 Partio EXT2 (Linux Native) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
5.3.1 Criando um sistema de arquivos EXT2 em uma partio . . . . . . . . . . 68
5.3.2 Criando um sistema de arquivos EXT2 em um arquivo . . . . . . . . . . . 68
5.4 Journaling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
5.5 Partio EXT3 (Linux Native) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
5.5.1 Criando um sistema de arquivos EXT3 em uma partio . . . . . . . . . . 70
5.5.2 Criando um sistema de arquivos EXT3 em um arquivo . . . . . . . . . . . 71
5.5.3 Fazendo a converso do sistema de arquivos EXT2 para EXT3 . . . . . . . 71
5.5.4 Convertendo de EXT3 para EXT2 . . . . . . . . . . . . . . . . . . . . . . . . 72
5.5.5 Nomeando uma partio de disco ext2/ext3 . . . . . . . . . . . . . . . . . 72
5.5.6 Criando o diretrio especial lost+found . . . . . . . . . . . . . . . . . . 72
5.5.7 dumpe2fs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
5.5.8 Partio EXT2 ou Arquivo? . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
5.6 Sistema de arquivos reiserfs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
5.6.1 Criando um sistema de arquivos reiserfs em uma partio . . . . . . . . . 74
5.6.2 Criando um sistema de arquivos reiserfs em um arquivo . . . . . . . . . . 74
5.7 Partio Linux Swap (Memria Virtual) . . . . . . . . . . . . . . . . . . . . . . . . 75
5.7.1 Criando sistema de arquivos Swap em uma partio . . . . . . . . . . . . 76
5.7.2 Criando um sistema de arquivos Swap em um arquivo . . . . . . . . . . . 76
5.7.3 Partio Swap ou Arquivo? . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
5.8 O sistema de arquivos /proc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
5.9 LVM - Logical Volume Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
5.9.1 Representao grca do LVM . . . . . . . . . . . . . . . . . . . . . . . . . 80
5.9.2 Performance do LVM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
5.9.3 Instalando LVM em seu sistema . . . . . . . . . . . . . . . . . . . . . . . . 81
5.9.4 Aumentando o tamanho de um volume lgico . . . . . . . . . . . . . . . . 82
5.9.5 Diminuindo um volume lgico . . . . . . . . . . . . . . . . . . . . . . . . . 82
5.10 Formatando Pen-drives/Disquetes . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
SUMRIO v
5.10.1 Formatando pen-drives para serem usados no Linux . . . . . . . . . . . . 83
5.10.2 Formatando pen-drives compatveis com o Windows . . . . . . . . . . . . 83
5.10.3 Programas de Formatao Grcos . . . . . . . . . . . . . . . . . . . . . . . 84
5.11 Pontos de Montagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
5.12 Identicao de discos e parties em sistemas Linux . . . . . . . . . . . . . . . . 85
5.13 Montando (acessando) uma partio de disco . . . . . . . . . . . . . . . . . . . . . 86
5.13.1 fstab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
5.14 Desmontando uma partio de disco . . . . . . . . . . . . . . . . . . . . . . . . . . 88
6 Gerenciadores de Partida (boot loaders) 89
6.1 LILO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
6.1.1 Criando o arquivo de congurao do LILO . . . . . . . . . . . . . . . . . 89
6.1.2 Opes usadas no LILO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
6.1.3 Um exemplo do arquivo de congurao lilo.conf . . . . . . . . . . . . . . 94
6.2 GRUB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
6.2.1 Como o GRUB trabalha com discos e parties . . . . . . . . . . . . . . . . 96
6.2.2 Instalando o GRUB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
6.2.3 No disco exvel (somente linha de comando) . . . . . . . . . . . . . . . . 97
6.2.4 No disco exvel (com interface de menu) . . . . . . . . . . . . . . . . . . . 97
6.2.5 Opes do arquivo de congurao . . . . . . . . . . . . . . . . . . . . . . 98
6.2.6 Um exemplo de arquivo de congurao . . . . . . . . . . . . . . . . . . . 100
6.2.7 Usando a linha de comandos do GRUB . . . . . . . . . . . . . . . . . . . . 102
6.2.8 Removendo o GRUB do MBR . . . . . . . . . . . . . . . . . . . . . . . . . . 103
6.2.9 Como obter informaes mais detalhadas . . . . . . . . . . . . . . . . . . . 103
6.3 Parmetros de inicializao passados ao kernel . . . . . . . . . . . . . . . . . . . . 104
6.4 LOADLIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
6.4.1 Opes do LOADLIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
6.4.2 Exemplo de inicializao com o LOADLIN . . . . . . . . . . . . . . . . . . 105
6.5 syslinux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
6.5.1 Criando um disquete de inicializao com o syslinux . . . . . . . . . . . . 106
6.5.2 O arquivo SYSLINUX.CFG . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
6.5.3 Formatao dos arquivos de tela do syslinux . . . . . . . . . . . . . . . . . 107
SUMRIO vi
7 Execuo de programas 109
7.1 Executando um comando/programa . . . . . . . . . . . . . . . . . . . . . . . . . . 109
7.2 path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
7.3 Tipos de Execuo de comandos/programas . . . . . . . . . . . . . . . . . . . . . 110
7.4 Executando programas em seqncia . . . . . . . . . . . . . . . . . . . . . . . . . 111
7.5 ps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
7.6 top . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
7.7 Controle de execuo de processos . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
7.7.1 Interrompendo a execuo de um processo . . . . . . . . . . . . . . . . . . 112
7.7.2 Parando momentaneamente a execuo de um processo . . . . . . . . . . 113
7.7.3 jobs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
7.7.4 fg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
7.7.5 bg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
7.7.6 kill . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
7.7.7 killall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
7.7.8 killall5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
7.7.9 Sinais do Sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
7.8 nohup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
7.9 nice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
7.10 fuser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
7.11 tload . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
7.12 vmstat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
7.13 pidof . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
7.14 pstree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
7.15 Fechando um programa quando no se sabe como sair . . . . . . . . . . . . . . . 119
7.16 Eliminando caracteres estranhos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
8 Comandos para manipulao de diretrio 123
8.1 ls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
8.2 cd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
8.3 pwd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
8.4 mkdir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
8.5 rmdir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
SUMRIO vii
9 Comandos para manipulao de Arquivos 127
9.1 cat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
9.2 tac . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
9.3 rm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
9.4 cp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
9.5 mv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
10 Comandos Diversos 131
10.1 clear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
10.2 date . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
10.3 df . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
10.4 ln . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
10.5 du . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
10.6 nd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
10.7 free . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
10.8 grep . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
10.9 head . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
10.10nl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
10.11more . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
10.12less . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
10.13sort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
10.14tail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
10.15time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
10.16touch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
10.17uptime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
10.18dmesg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
10.19mesg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
10.20echo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
10.21su . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
10.22sync . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
10.23uname . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
SUMRIO viii
10.24reboot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
10.25shutdown . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
10.26wc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
10.27seq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
10.28chattr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
10.29lsattr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
10.30cut . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
10.31cmp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
10.32dirname . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
10.33diff . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
10.34pr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
10.35patch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
10.36whereis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
10.37which . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
10.38zforce . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
10.39gzexe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
10.40znew . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
11 Comandos de rede 153
11.1 who . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
11.2 telnet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
11.3 nger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
11.4 ftp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
11.5 whoami . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
11.6 dnsdomainname . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
11.7 hostname . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
11.8 talk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
11.9 ping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
11.10rlogin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
11.11rsh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
11.12w . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
SUMRIO ix
11.13traceroute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
11.14netstat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
11.15wall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
12 Comandos para manipulao de contas 161
12.1 adduser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
12.2 addgroup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
12.3 passwd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
12.4 gpasswd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
12.5 newgrp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
12.6 userdel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
12.7 groupdel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
12.8 lastlog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
12.9 last . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
12.10sg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
12.11Adicionando o usurio a um grupo extra . . . . . . . . . . . . . . . . . . . . . . . 166
12.12chfn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
12.13id . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
12.14logname . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
12.15users . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
12.16groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
13 Permisses de acesso a arquivos e diretrios 169
13.1 Donos, Grupos e outros usurios . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
13.2 Tipos de Permisses de Acesso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
13.3 Etapas para acesso a um arquivo/diretrio . . . . . . . . . . . . . . . . . . . . . . 171
13.4 Exemplos prticos de permisses de acesso . . . . . . . . . . . . . . . . . . . . . . 171
13.4.1 Exemplo de acesso a um arquivo . . . . . . . . . . . . . . . . . . . . . . . . 172
13.4.2 Exemplo de acesso a um diretrio . . . . . . . . . . . . . . . . . . . . . . . 172
13.5 Permisses de Acesso Especiais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
13.6 A conta root . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
13.7 chmod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
SUMRIO x
13.8 chgrp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
13.9 chown . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
13.10Modo de permisso octal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
13.11umask . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
14 Redirecionamentos e Pipe 181
14.1 > . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
14.2 >> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
14.3 < . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
14.4 << . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
14.5 | (pipe) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
14.6 Diferena entre o | e o > . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
14.7 tee . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
15 Rede 185
15.1 O que uma rede . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
15.2 Protocolo de Rede . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
15.3 Endereo IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
15.3.1 Classes de Rede IP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187
15.3.2 Para instalar uma mquina usando o Linux em uma rede existente . . . . 187
15.3.3 Endereos reservados para uso em uma rede Privada . . . . . . . . . . . . 188
15.4 Interface de rede . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
15.4.1 A interface loopback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
15.4.2 Atribuindo um endereo de rede a uma interface (ifcong) . . . . . . . . . 189
15.5 Roteamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
15.5.1 Congurando uma rota no Linux . . . . . . . . . . . . . . . . . . . . . . . . 190
15.6 Resolvedor de nomes (DNS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
15.6.1 O que um nome? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
15.6.2 Arquivos de congurao usados na resoluo de nomes . . . . . . . . . . 193
15.6.3 Executando um servidor de nomes . . . . . . . . . . . . . . . . . . . . . . . 195
15.7 Servios de Rede . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
15.7.1 Servios iniciados como Daemons de rede . . . . . . . . . . . . . . . . . . 196
SUMRIO xi
15.7.2 Servios iniciados atravs do inetd . . . . . . . . . . . . . . . . . . . . . . . 196
15.8 Segurana da Rede e controle de Acesso . . . . . . . . . . . . . . . . . . . . . . . . 199
15.8.1 /etc/ftpusers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
15.8.2 /etc/securetty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
15.8.3 O mecanismo de controle de acessos tcpd . . . . . . . . . . . . . . . . . . . 200
15.8.4 Firewall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
15.9 Outros arquivos de congurao relacionados com a rede . . . . . . . . . . . . . . 204
15.9.1 /etc/services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
15.9.2 /etc/protocols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
16 Kernel e Mdulos 207
16.1 O Kernel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
16.2 Mdulos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
16.3 Como adicionar suporte a Hardwares e outros dispositivos no kernel . . . . . . . 208
16.4 kmod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
16.5 lsmod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
16.6 insmod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
16.7 rmmod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
16.8 modprobe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
16.9 depmod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
16.10modconf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
16.11Recompilando o Kernel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211
16.12Arquivos relacionados com o Kernel e Mdulos . . . . . . . . . . . . . . . . . . . 216
16.12.1 /etc/modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
16.12.2 modules.conf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
16.13Aplicando Patches no kernel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
17 Arquivos e daemons de Log 219
17.1 Formato do arquivo de log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219
17.2 Daemons de log do sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
17.2.1 syslogd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
17.2.2 klogd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
17.3 logger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
SUMRIO xii
18 Compactadores 225
18.1 O que fazem os compactadores/descompactadores? . . . . . . . . . . . . . . . . . 225
18.1.1 Tipos de compactao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226
18.2 Extenses de arquivos compactados . . . . . . . . . . . . . . . . . . . . . . . . . . 227
18.3 gzip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
18.4 zip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228
18.5 unzip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
18.6 tar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231
18.7 bzip2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
18.8 rar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
19 A distribuio Debian GNU/Linux 237
19.1 Porque usar a Debian? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
19.2 Pacotes existentes na Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
19.3 O que sid/testing/frozen/stable? . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
19.4 Como obter a Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
19.5 Programas de congurao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239
19.6 Arquivos de inicializao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
19.7 Nveis de Execuo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
19.7.1 Entendendo o funcionamento dos nveis de execuo do sistema (run-
levels) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
19.8 Rede no sistema Debian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
19.9 Bug tracking system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
19.10Onde encontrar a Debian para Download? . . . . . . . . . . . . . . . . . . . . . . 243
19.11Lista de pacotes para uma instalao rpida e manual . . . . . . . . . . . . . . . . 243
19.11.1 Pacotes Bsicos (Altamente Recomendado) . . . . . . . . . . . . . . . . . . 244
19.11.2 Compilao do Kernel e programas em linguagem C . . . . . . . . . . . . 244
19.11.3 X11 (bsico) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
19.11.4 Window Managers para o X . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
19.11.5 Impresso (texto e grco com sistema de spool) . . . . . . . . . . . . . . . 245
19.11.6 Som (mixer, mp3, Midi, wav, CD-Player) . . . . . . . . . . . . . . . . . . . 245
19.11.7 Programas de Internet (clientes) . . . . . . . . . . . . . . . . . . . . . . . . 245
SUMRIO xiii
19.11.8 Acessrios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
19.11.9 Rede . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
20 Sistema de gerenciamento de pacotes 247
20.1 dpkg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
20.1.1 Pacotes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
20.1.2 Instalar pacotes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
20.1.3 Dependncias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
20.1.4 Listar pacotes existentes no sistema . . . . . . . . . . . . . . . . . . . . . . 248
20.1.5 Removendo pacotes do sistema . . . . . . . . . . . . . . . . . . . . . . . . . 248
20.1.6 Removendo completamente um pacote . . . . . . . . . . . . . . . . . . . . 248
20.1.7 Mostrar descrio do pacote . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
20.1.8 Procura de pacotes atravs do nome de um arquivo . . . . . . . . . . . . . 249
20.1.9 Status do pacote . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
20.1.10 Procurando pacotes com problemas de instalao . . . . . . . . . . . . . . 249
20.1.11 Mostrando a lista de pacotes do sistema . . . . . . . . . . . . . . . . . . . . 249
20.1.12 Obtendo uma lista de pacotes para instalar no sistema . . . . . . . . . . . 250
20.1.13 Congurando pacotes descongurados . . . . . . . . . . . . . . . . . . . . 250
20.1.14 Listando arquivos de um pacote . . . . . . . . . . . . . . . . . . . . . . . . 250
20.2 apt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250
20.2.1 O arquivo /etc/apt/sources.list . . . . . . . . . . . . . . . . . . . . 251
20.2.2 O arquivo /etc/apt/apt.conf . . . . . . . . . . . . . . . . . . . . . . . 253
20.2.3 Copiando a lista de pacotes disponveis . . . . . . . . . . . . . . . . . . . . 253
20.2.4 Utilizando CDs ociais/no-ociais/terceiros com o apt . . . . . . . . . . 253
20.2.5 Instalando novos pacotes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
20.2.6 Removendo pacotes instalado . . . . . . . . . . . . . . . . . . . . . . . . . 254
20.2.7 Atualizando sua distribuio . . . . . . . . . . . . . . . . . . . . . . . . . . 254
20.2.8 Removendo pacotes baixados pelo apt . . . . . . . . . . . . . . . . . . . . 256
20.2.9 Procurando por pacotes atravs da descrio . . . . . . . . . . . . . . . . . 256
20.2.10 Procurando um pacote que contm determinado arquivo . . . . . . . . . . 256
20.2.11 Modos ecazes de compilao do cdigo fonte para a Debian . . . . . . . 257
20.2.12 Vericando pacotes corrompidos . . . . . . . . . . . . . . . . . . . . . . . . 257
20.2.13 Corrigindo problemas de dependncias e outros erros . . . . . . . . . . . 257
SUMRIO xiv
21 Personalizao do Sistema 259
21.1 Variveis de Ambientes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259
21.2 Modicando o Idioma usado em seu sistema . . . . . . . . . . . . . . . . . . . . . 259
21.3 alias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
21.4 Arquivo /etc/profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
21.5 Arquivo .bash_profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
21.6 Arquivo .bashrc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
21.7 Arquivo .hushlogin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
21.8 Arquivo /etc/environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
21.9 Diretrio /etc/skel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
22 Impresso 265
22.1 Portas de impressora . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
22.2 Imprimindo diretamente para a porta de impressora . . . . . . . . . . . . . . . . . 265
22.3 Imprimindo via spool . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
22.4 Impresso em modo grco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
22.4.1 Ghost Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
22.5 Magic Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
22.5.1 Instalao e congurao do Magic Filter . . . . . . . . . . . . . . . . . . . 269
22.5.2 Outros detalhes tcnicos sobre o Magic Filter . . . . . . . . . . . . . . . . . 270
23 Congurao do sistema 273
23.1 Acentuao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
23.1.1 Acentuao em modo Texto . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
23.1.2 Acentuao em modo grco . . . . . . . . . . . . . . . . . . . . . . . . . . 275
23.2 Nmero de Cores do ambiente grco . . . . . . . . . . . . . . . . . . . . . . . . . 275
23.2.1 Congurando o nmero de cores para quem inicia pelo prompt . . . . . . 276
23.2.2 Congurando o nmero de cores para quem inicia pelo XDM . . . . . . . 276
23.2.3 Ajustando o alinhamento da imagem no X e outras conguraes . . . . . 277
SUMRIO xv
24 Executando tarefas diversas no Linux 279
24.1 Gravando CDs e DVDs no Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
24.1.1 Gravando CDs / DVDs de dados . . . . . . . . . . . . . . . . . . . . . . . . 279
24.1.2 Gravando um CD de audio . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
24.1.3 Cpia de CD para CD no mesmo gravador . . . . . . . . . . . . . . . . . . 281
24.1.4 Gravao massiva de CDs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
24.1.5 Gravao de CDs diretamente atravs de arquivos mp3 ou Ogg . . . . . . 282
24.1.6 Backup de dados para 1 ou mais CDs . . . . . . . . . . . . . . . . . . . . . 282
24.1.7 Aplicaes grcas para gravao de CDs . . . . . . . . . . . . . . . . . . . 282
24.1.8 Criar a capa de frente e verso do CD/DVD . . . . . . . . . . . . . . . . . . 282
24.2 Executando vdeos DIVX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
24.3 Assistindo DVDs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
24.4 Convertendo msicas no formato wav para mp3 . . . . . . . . . . . . . . . . . . . 283
24.5 Convertendo msicas do formato mp3 para cdr . . . . . . . . . . . . . . . . . . . 283
25 Compilao 285
25.1 O que compilao? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285
25.2 Compilador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285
26 Manuteno do Sistema 287
26.1 Checagem dos sistemas de arquivos . . . . . . . . . . . . . . . . . . . . . . . . . . 287
26.1.1 fsck.ext2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287
26.2 reiserfsck . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
26.3 fsck.minix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
26.4 badblocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
26.5 defrag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
26.6 Vericando e marcando setores danicados em um HD . . . . . . . . . . . . . . . 291
26.7 Limpando arquivos de LOGS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
26.8 Recuperando parties apagadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293
26.9 Recuperando a senha de root perdida . . . . . . . . . . . . . . . . . . . . . . . . . 293
26.10Tarefas automticas de manuteno do sistema . . . . . . . . . . . . . . . . . . . . 294
26.11cron . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
26.11.1 O formato de um arquivo crontab . . . . . . . . . . . . . . . . . . . . . . . 295
26.12at . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 296
SUMRIO xvi
27 Principais arquivos de congurao do diretrio /etc 299
27.1 Diretrio /etc/alternatives . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
27.2 Arquivo /etc/default/devpts . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
27.3 Arquivo /etc/default/rcS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
27.4 Arquivo /etc/console-tools/config . . . . . . . . . . . . . . . . . . . . . . 300
27.5 Diretrio /etc/menu-methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
27.6 Arquivo /etc/menu-methods/translate_menus . . . . . . . . . . . . . . . . 300
27.7 Diretrio /etc/network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
27.8 Arquivo /etc/network/interfaces . . . . . . . . . . . . . . . . . . . . . . . . 300
27.9 Arquivo /etc/networks/options . . . . . . . . . . . . . . . . . . . . . . . . . 302
27.10Diretrio /etc/pam.d . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302
27.11Diretrio /etc/ppp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302
27.12Diretrio /etc/security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302
27.13Arquivo /etc/security/access.conf . . . . . . . . . . . . . . . . . . . . . . 303
27.14Arquivo /etc/security/limits.conf . . . . . . . . . . . . . . . . . . . . . . 303
27.15Arquivo /etc/crontab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
27.16Arquivo /etc/fstab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
27.17Arquivo /etc/group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
27.18Arquivo /etc/gshadow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
27.19Arquivo /etc/host.conf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
27.20Arquivo /etc/hostname . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
27.21Arquivo /etc/hosts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
27.22Arquivo /etc/hosts.allow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
27.23Arquivo /etc/hosts.deny . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
27.24Arquivo /etc/hosts.equiv . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
27.25Arquivo /etc/inetd.conf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
27.26Arquivo /etc/inittab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
27.27Arquivo /etc/inputrc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
27.28Arquivo /etc/issue . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
27.29Arquivo /etc/issue.net . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 306
27.30Arquivo /etc/lilo.conf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
SUMRIO xvii
27.31Arquivo /etc/login.defs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
27.32Arquivo /etc/modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
27.33Arquivo /etc/modules.conf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
27.34Arquivo /etc/motd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
27.35Arquivo /etc/mtab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
27.36Arquivo /etc/networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
27.37Arquivo /etc/passwd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
27.38Arquivo /etc/printcap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
27.39Arquivo /etc/protocols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
27.40Arquivo /etc/resolv.conf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
27.41Arquivo /etc/serial.conf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
27.42Arquivo /etc/services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
27.43Arquivo /etc/shadow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
27.44Arquivo /etc/shells . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
27.45Arquivo /etc/syslog.conf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
27.46Arquivo /etc/timezone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
28 Conectando seu computador a Internet 311
28.1 Conectando-se a Internet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311
28.1.1 Conectando atravs de ADSL . . . . . . . . . . . . . . . . . . . . . . . . . . 311
28.1.2 Conectando atravs de Internet Discada . . . . . . . . . . . . . . . . . . . . 311
28.2 Navegando na Internet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313
28.3 Recebimento de E-Mails atravs do fetchmail . . . . . . . . . . . . . . . . . . . 313
28.3.1 Processamento de mensagens atravs do procmail . . . . . . . . . . . . . . 315
29 X Window (ambiente grco) 317
29.1 O que X Window? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
29.2 A organizao do ambiente grco X Window . . . . . . . . . . . . . . . . . . . . 317
29.3 Iniciando o X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
29.4 Servidor X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
SUMRIO xviii
30 Aplicativos para Linux 319
30.1 Aplicativos Bsicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
30.1.1 Editores de Texto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
30.1.2 Aplicativos para Escritrio . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
30.1.3 Internet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
30.1.4 Emuladores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
30.1.5 Utilitrios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
30.1.6 Administrao do Sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
30.2 Listagem de Aplicativos para GNU/Linux . . . . . . . . . . . . . . . . . . . . . . . 324
30.2.1 Perifricos / Gerenciamento de Hardware . . . . . . . . . . . . . . . . . . 324
30.2.2 Internet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
30.2.3 Conferncia de audio/vdeo via Internet/Intranet . . . . . . . . . . . . . . 326
30.2.4 Gerenciamento de WebSites / Linguagem HTML . . . . . . . . . . . . . . 326
30.2.5 Multimdia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
30.2.6 Som . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
30.2.7 Comunicao/Fax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
30.2.8 X Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
30.2.9 Editorao Grca/Visualizadores . . . . . . . . . . . . . . . . . . . . . . . 332
30.2.10 Emuladores/Ferramentas p/ Interao com outros SO . . . . . . . . . . . 333
30.2.11 Programao / Bancos de Dados / Acesso a Dados . . . . . . . . . . . . . 333
30.2.12 Impresso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
30.2.13 Texto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
30.2.14 Kernel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337
30.2.15 Notebooks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337
30.2.16 Gravao de CD/DVD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337
30.2.17 Computao Paralela/Clusters . . . . . . . . . . . . . . . . . . . . . . . . . 337
30.2.18 PalmTop / Palm Pilot / Computadores de Mo . . . . . . . . . . . . . . . 337
30.2.19 Backup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
30.2.20 Utilitrios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
30.2.21 Compactadores/Descompactadores/Arquivadores . . . . . . . . . . . . . 340
30.2.22 Dispositivos X-10 (Controle de eletrodomsticos e aparelhos via PC) . . . 340
30.2.23 Outros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
SUMRIO xix
31 Como obter ajuda no sistema 343
31.1 Pginas de Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
31.2 Info Pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
31.3 Help on line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
31.4 help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
31.5 apropos/whatis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
31.6 locate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
31.7 which . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
31.8 Documentos HOWTOs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
31.8.1 Listagem de HOWTOs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
31.8.2 Listagem de Mini-HOWTOs . . . . . . . . . . . . . . . . . . . . . . . . . . 364
31.9 Documentao de Programas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
31.10FAQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
31.11RFCs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
31.12Internet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
31.12.1 Pginas Internet de Referncia . . . . . . . . . . . . . . . . . . . . . . . . . 378
31.12.2 Listas de discusso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 380
31.13Netiqueta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381
31.13.1 Recomendaes Gerais sobre a Comunicao Eletrnica . . . . . . . . . . 382
31.13.2 Email . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
31.13.3 ICQ/MSN/Gtalk/Skype . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
31.13.4 Talk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 384
31.13.5 Listas de Discusso via Email . . . . . . . . . . . . . . . . . . . . . . . . . . 384
32 Apndice 387
32.1 Sobre este guia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 387
32.2 Sobre o Autor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
32.3 Referncias de auxlio ao desenvolvimento do guia . . . . . . . . . . . . . . . . . 388
32.4 Onde encontrar a verso mais nova do guia? . . . . . . . . . . . . . . . . . . . . . 389
32.5 Colaboradores do Guia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
32.6 Marcas Registradas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
32.7 Futuras verses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
32.8 Chave Pblica PGP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
SUMRIO xx
1
Captulo 1
Introduo
Bem vindo ao guia Foca GNU/Linux. O nome FOCA signica FOnte de Consulta e
Aprendizado. Este guia dividido em 3 nveis de aprendizado e verso que esta lendo agora
contm:
Iniciante
Intermedirio
Entre o contedo do guia, voc encontrar:
Textos explicativos falando sobre o sistema Linux, seus comandos, como manusear ar-
quivos, diretrios, etc.
Explicaes iniciais sobre as partes bsicas do computador e perifricos
Comandos e Programas equivalentes entre o DOS/Windows e o GNU/Linux
Todos os materiais contidos na verso iniciante so ideais para quem est tendo o
primeiro contato com computadores e/ou com o Linux. A linguagem usada simples
com o objetivo de explicar claramente o funcionamento de cada comando e evitando,
sempre que possvel, termos tcnicos
Explicaes necessrias para conhecer, operar, congurar, desenvolver, personalizar seu
sistema Linux.
Uma lista de aplicativos clientes para serem usados em seu sistema GNU/Linux, com
suas caractersticas, equipamento mnimo requerido e espao em disco recomendado
para instalao.
Particionamento de disco
Criao de parties e arquivos contendo o sistema de arquivos ext2, ext3, reiserfs ou
xfs (para gravao de arquivos e diretrios) e swap (memria virtual) e as vanta-
gens/desvantagens de se utilizar um arquivo ou partio para armazenamento de da-
dos.
Captulo 1. Introduo 2
Compilao de programas/kernel, com explicaes sobre cada uma das opes
ajudando-o a decidir sobre a incluso ou no.
Manipulao de mdulos do kernel
Explicaes sobre hardwares (Interrupes, DMA, Jumpers, Jumperless, Plug-and-Play)
e como congura-los no Linux, valores padres e resoluo de conitos entre hardwares.
Dicas de como avaliar e comprar bons hardwares para que seu computador tenha o
melhor desempenho (tambm vlido para DOS, Windows e outras plataformas). Desta
maneira voc saber porque alguns dispositivos de boa qualidade, como placas de rede,
custam at 3 vezes mais caro que outras e o que a placa traz de especial para ter este
diferencial.
Como modicar facilmente o idioma usado em seu sistema (localizao) para o modo
texto e modo grco.
Utilizao de compactadores de arquivos
Mais opes para os comandos existentes na verso Iniciante do guia e novos comandos.
Conhecer os arquivos de congurao e arquivos bsicos de segurana, entendendo para
que eles servem e como usa-los.
Dicas de como saber escolher bons perifricos para uso no GNU/Linux e outros sistemas
operacionais
Manuteno bsica do computador (vericao do disco, desfragmentao) e
manuteno automtica feita atravs dos programas de e scripts congurados.
Introduo a rede no Linux (com a congurao de dispositivos de rede, etc.).
Conguraes bsicas de segurana de Rede
Gerenciadores de inicializao (boot), o que so e como funcionam e como criar um ar-
quivo de inicializao para inicializar o GNU/Linux pelo disco rgido ou mais de um
Sistema Operacional.
Criao de Memria virtual no disco rgido e em arquivo.
Os materiais contidos na verso intermedirio so ideais para quem j tem um conhec-
imento bsico do sistema GNU/Linux mas que deseja se aprofundar neste sistema con-
hecendo os arquivos necessrios para o funcionamento do GNU/Linux, como modica-
los e como estas modicaes afetam o funcionamento do sistema.
Para melhor organizao, dividi o guia em 3 verses: Iniciante, Intermedirio e Avanado.
Sendo que a verso Iniciante voltada para o usurio que no tem nenhuma experincia no
Captulo 1. Introduo 3
GNU/Linux. A ltima verso deste guia pode ser encontrada em: Pgina Ocial do guia Foca
GNU/Linux (http://www.guiafoca.org).
Caso tiver alguma sugesto, correo, crtica para a melhoria deste guia, envie um e-mail para
<gleydson@guiafoca.org>.
O Foca GNU/Linux atualizado freqentemente, por este motivo recomendo que preencha a
cha do aviso de atualizaes na pgina web em Pgina Ocial do guia Foca GNU/Linux
(http://www.guiafoca.org) no m da pgina principal. Aps preencher a cha do aviso
de atualizaes, voc receber um e-mail sobre o lanamento de novas verses do guia e o
que foi modicado, desta forma voc poder decidir em copia-la caso a nova verso contenha
modicaes que considera importantes.
Tenho recebido elegios de pessoas do Brasil (e de paises de fora tambm) elogiando o trabalho e
a qualidade da documentao. Agradeo a todos pelo apoio, tenham certeza que este trabalho
desenvolvido pensando em repassar um pouco do conhecimento que adquiri ao comear o
uso do Linux.
Tambm venho recebendo muitos e-mails de pessoas que passaram na prova LPI nvel 1 e 2
aps estudar usando o guia Foca GNU/Linux. Fico bastante feliz por saber disso, pois nunca
tive a inteno de tornar o guia uma referncia livre para estudo da LPI e hoje usado para
estudo desta difcil certicao que aborda comandos, servios, conguraes, segurana, em-
pacotamento, criptograa, etc.
1.1 Antes de comear
Os captulos Introduo e bsico contm explicaes tericas sobre o computador, GNU/Linux,
etc., voc pode pular este captulos caso j conhea estas explicaes ou se desejar partir para
a prtica e quiser v-los mais tarde, se lhe interessar.
Se voc j um usurio do DOS e Windows, recomendo ler Para quem esta migrando (ou
pensando em migrar) do DOS/Windows para o Linux on page 55. L voc vai encontrar
comparaes de comandos e programas DOS/Windows e GNU/Linux.
Para quem est comeando, muita teoria pode atrapalhar o aprendizado, mais produtivo ver
na prtica o que o computador faz e depois porque ele faz isto. Mesmo assim, recomendo ler
estes captulos pois seu contedo pode ser til. . .
Coloquei abaixo algumas dicas para um bom comeo:
Recomendo que faa a leitura deste guia e pratique imediatamente o que aprendeu. Isto
facilita o entendimento do programa/comando/congurao.
preciso ter interesse em aprender, se voc tiver vontade em aprender algo, voc ter
menos diculdade do que em algo que no gosta e est se obrigando a aprender.
Decorar no adianta, pelo contrrio, s atrapalha no aprendizado. Voc precisa entender
o que o comando faz, deste modo voc estar estimulando e desenvolvendo sua inter-
pretao, e entender melhor o assunto (talvez at me de uma fora para melhorar o guia
;-)
Captulo 1. Introduo 4
Curiosidade tambm importante. Voc talvez possa estar procurando um comando
que mostre os arquivos que contm um certo texto, e isto far voc chegar at o comando
grep, depois voc conhecer suas opes, etc.
No desanime vendo outras pessoas que sabem mais que voc, lembre-se que ningum
nasce sabendo :-). Uma pessoa pode ter mais experincia em um assunto no sistema
como compilao de programas, congurao, etc., e voc pode ter mais interesse em
redes.
Ningum pode saber tudo da noite para o dia, no procure saber TUDO sobre o sis-
tema de uma s vez, seno no entender NADA. Caso tenha dvidas sobre o sis-
tema, procure ler novamente a seo do guia, e caso ainda no tenha entendido pro-
cure ajuda nas pgina de manual (veja Pginas de Manual on page 343), ou nas lis-
tas de discusso (veja Listas de discusso on page 380) ou me envie uma mensagem
<gleydson@guiafoca.org>.
Certamente voc buscar documentos na Internet que falem sobre algum assunto que
este guia ainda no explica. Muito cuidado! O GNU/Linux um sistema que cresce
muito rapidamente, a cada semana uma nova verso lanada, novos recursos so adi-
cionados, seria maravilhoso se a documentao fosse atualizada com a mesma freqn-
cia. Infelizmente a atualizao da documentao no segue o mesmo ritmo (principal-
mente aqui no Brasil). comumvoc encontrar na Internet documentos da poca quando
o kernel estava na verso 2.2.30, 2.4.8, 2.6.28, etc. Estes documentos so teis para pes-
soas que por algum motivo necessitam operar com verses antigas do Kernel Linux, mas
pode trazer problemas ou causar m impresso do GNU/Linux em outras pessoas. Por
exemplo, voc pode esbarrar pela Internet com um documento que diz que o Kernel no
tem suporte aos nomes extensos da VFAT (Windows 95), isto verdade para kernels
anteriores ao 2.0.31, mas as verses mais novas que a 2.0.31 reconhecem sem problemas
os nomes extensos da partio Windows VFAT. Uma pessoa desavisada pode ter receio
de instalar o GNU/Linux em uma mesma mquina com Windows por causa de um doc-
umento como este. Para evitar problemas deste tipo, verique a data de atualizao do
documento, se vericar que o documento est obsoleto, contacte o autor original e pea
para que ele retire aquela seo na prxima verso que ser lanada.
OGNU/Linux considerado um sistema mais difcil do que os outros, mas isto porque
ele requer que a pessoa realmente aprenda e conhea computadores e seus perifricos
antes de fazer qualquer coisa (principalmente se voc um tcnico em manuteno, re-
des, instalaes, etc., e deseja oferecer suporte prossional a este sistema). Voc con-
hecer mais sobre computadores, redes, hardware, software, discos, saber avaliar os
problemas e a buscar a melhor soluo, enm as possibilidades de crescimento neste
sistema operacional depende do conhecimento, interesse e capacidade de cada um.
A interface grca existe, mas os melhores recursos e exibilidade esto na linha de co-
mando. Voc pode ter certeza que o aprendizado no GNU/Linux ajudar a ter sucesso e
menos diculdade em usar qualquer outro sistema operacional.
Pea ajuda a outros usurios do GNU/Linux quando estiver em dvida ou no souber
fazer alguma coisa no sistema. Voc pode entrar em contato diretamente com outros
usurios ou atravs de listas de discusso (veja Listas de discusso on page 380).
Boa Sorte e bem vindo ao GNU/Linux!
Gleydson (<gleydson@guiafoca.org>).
Captulo 1. Introduo 5
1.2 Pr-requisitos para a utilizao deste guia
assumido que voc j tenha seu GNU/Linux instalado e funcionando. assumido que voc
tenha entendido a funo de boa parte dos comandos que consta na verso iniciante do Foca
Linux, arquivos e permisses de acesso. Em resumo, que saiba decidir quando e qual(is) co-
mando(s) deve usar em cada situao.
Caso no entenda as explicaes da verso INTERMEDIRIO, recomendo que faa a leitura
da verso INICIANTE do Foca Linux que pode ser encontrada em http://www.guiafoca.
org.
Este guia no cobre a instalao do sistema. Para detalhes sobre instalao, consulte a docu-
mentao que acompanha sua distribuio GNU/Linux.
1.3 Sistema Operacional
O Sistema Operacional o conjunto de programas que fazem a interface do usurio e seus pro-
gramas com o computador. Ele responsvel pelo gerenciamento de recursos e perifricos
(como memria, discos, arquivos, impressoras, CD-ROMs, etc.), interpretao de mensagens e
a execuo de programas.
No Linux o Kernel mais o conjunto de ferramentas GNU compem o Sistema Operacional.
O kernel (que a base principal de um sistema operacional), poder ser construdo de acordo
com a congurao do seu computador e dos perifricos que possui.
1.4 O Linux
O Linux um sistema operacional criado em 1991 por Linus Torvalds na universidade de
Helsinki na Finlndia. um sistema Operacional de cdigo aberto distribudo gratuitamente
pela Internet. Seu cdigo fonte liberado como Free Software (software livre), sob licena GPL,
o aviso de copyright do kernel feito por Linus descreve detalhadamente isto e mesmo ele no
pode fechar o sistema para que seja usado apenas comercialmente.
Isto quer dizer que voc no precisa pagar nada para usar o Linux, e no crime fazer cpias
para instalar em outros computadores, ns inclusive incentivamos voc a fazer isto. Ser um
sistema de cdigo aberto pode explicar a performance, estabilidade e velocidade emque novos
recursos so adicionados ao sistema.
O requisito mnimo para rodar o Linux depende do kernel que ser usado:
2.2.x - Computador 386 SX com 2 MB de memria
2.4.x - Computador 386 SX com 4MB de memria
2.6.x - Computador 486 DX com no mnimo 8MB
Para espao em disco requerido 500MB para uma instalao bsica usando modo texto com
suporte a rede. Claro que no considerada a execuo de ambiente grco ou servios de
Captulo 1. Introduo 6
rede em produo, que neste caso exigido mais memria RAM e espao em disco para ar-
mazenamento de dados de programas e usurios.
O sistema segue o padro POSIX que o mesmo usado por sistemas UNIX e suas variantes.
Assim, aprendendo o Linux voc no encontrar muita diculdade em operar um sistema
do tipo UNIX, FreeBSD, HPUX, SunOS, etc., bastando apenas aprender alguns detalhes
encontrados em cada sistema.
O cdigo fonte aberto permite que qualquer pessoa veja como o sistema funciona (til para
aprendizado), corrigir algum problema ou fazer alguma sugesto sobre sua melhoria, esse
um dos motivos de seu rpido crescimento, do aumento da compatibilidade de perifricos
(como novas placas sendo suportadas logo aps seu lanamento) e de sua estabilidade.
Outro ponto em que ele se destaca o suporte que oferece a placas, CD/DVD-RWs, BluRay e
outros tipos de dispositivos de ltima gerao e mais antigos (a maioria deles j ultrapassados
e sendo completamente suportados pelo sistema operacional). Este um ponto forte para
empresas que desejammanter seus micros emfuncionamento e pretendeminvestir emavanos
tecnolgicos com as mquinas que possui.
O Linux desenvolvido por milhares de pessoas espalhadas pelo mundo, cada uma fazendo
sua contribuio ou mantendo alguma parte do kernel gratuitamente. Linus Torvalds ainda
trabalha em seu desenvolvimento e na coordenao dos grupos de trabalho do kernel.
Osuporte ao sistema tambmse destaca como sendo o mais eciente e rpido do que qualquer
programa comercial disponvel no mercado. Existemmilhares de consultores e empresas espe-
cializadas no suporte e treinamento espalhados ao redor do mundo. Outra opo de suporte
atravs da comunidade Linux; voc pode se inscrever em uma lista de discusso e relatar
sua dvida ou alguma falha, e sua mensagem ser vista por centenas de usurios na Internet
e algum ir te ajudar ou avisar as pessoas responsveis sobre a falha encontrada para devida
correo. Para detalhes, veja Listas de discusso on page 380.
1.4.1 Algumas Caractersticas do Linux
livre e desenvolvido voluntariamente por programadores experientes, hackers, e con-
tribuidores espalhados ao redor do mundo que tem como objetivo a contribuio para
a melhoria e crescimento deste sistema operacional. Muitos deles estavam cansados do
excesso de propaganda (Marketing) e baixa qualidade de sistemas comerciais existentes
Tambm recebe apoio de grandes empresas como IBM, Sun, HP, etc. para seu desen-
volvimento
Convivem sem nenhum tipo de conito com outros sistemas operacionais (com o DOS,
Windows, OS/2) no mesmo computador.
Multitarefa real
Multiusurio
Suporte a nomes extensos de arquivos e diretrios (255 caracteres)
Conectividade com outros tipos de plataformas como Apple, Sun, Macintosh, Sparc, Alpha,
PowerPc, ARM, Unix, Windows, DOS, etc.
Utiliza permisses de acesso a arquivos, diretrios e programas emexecuo na memria
RAM.
Captulo 1. Introduo 7
Proteo entre processos executados na memria RAM
Suporte a mais de 63 terminais virtuais (consoles)
Modularizao - O Linux somente carrega para a memria o que usado durante o
processamento, liberando totalmente a memria assim que o programa/dispositivo
nalizado
Devido a modularizao, os drivers dos perifricos e recursos do sistema podem ser car-
regados e removidos completamente da memria RAM a qualquer momento. Os drivers
(mdulos) ocupam pouco espao quando carregados na memria RAM (cerca de 6Kb
para a Placa de rede NE 2000, por exemplo)
Suporte nativo a rede e tecnologias avanadas como: balanceamento de carga, ips alias,
failover, vlans, bridge, trunking, OSPF, BGP.
No h a necessidade de se reiniciar o sistema aps a modicar a congurao de qual-
quer perifrico ou parmetros de rede. Somente necessrio reiniciar o sistema no caso
de uma instalao interna de um novo perifrico, falha em algum hardware (queima do
processador, placa me, etc.).
No precisa de um processador potente para funcionar. O sistema roda bem em com-
putadores 386Sx 25 com 4MB de memria RAM (sem rodar o sistema grco X, que
recomendado 32MB de RAM). J pensou no seu desempenho em um Pentium, Xeon, ou
Athlon? ;-)
Suporte nativo a mltiplas CPUs, assim processadores como Dual Core, Core Duo,
Athlon Duo, Quad Core tem seu poder de processamento integralmente aproveitado,
tanto em 32 ou 64 bits.
Suporte nativo a dispositivos SATA, PATA, Fiber Channel
Suporte nativo a virtualizao, onde o Linux se destaca como plataforma preferida para
execuo de mltiplos sistemas operacionais com performance e segurana.
O crescimento e novas verses do sistema no provocam lentido, pelo contrrio, a cada
nova verso os desenvolvedores procuram buscar maior compatibilidade, acrescentar
recursos teis e melhor desempenho do sistema (como o que aconteceu na passagem do
kernel 2.0.x para 2.2.x, da 2.2.x para a 2.4.x e da 2.4.x para a 2.6.x).
O GNU/Linux distribuido livremente e licenciado de acordo com os termos da GPL.
Acessa corretamente discos formatados pelo DOS, Windows, Novell, OS/2,
NTFS, SunOS, Amiga, Atari, Mac, etc.
O LINUX NO VULNERVEL A VRUS! Devido a separao de privilgios entre pro-
cessos e respeitadas as recomendaes padro de poltica de segurana e uso de contas
privilegiadas (como a de root, como veremos adiante), programas como vrus tornam-se
inteis pois tem sua ao limitada pelas restries de acesso do sistema de arquivos e
execuo. Qualquer programa (nocivo ou no) poder alterar partes do sistema que pos-
sui permisses (ser abordado como alterar permisses e tornar seu sistema mais restrito
no decorrer do guia). Frequentemente so criados exploits que tentam se aproveitar de
falhas existentes em sistemas desatualizados e usa-las para causar danos. Erroneamente
este tipo de ataque classicado como vrus por pessoas mal informadas e so resolvi-
das com sistemas bem mantidos. Em geral, usando uma boa distribuio que tenha um
eciente sistema de atualizao e bemcongurado, voc ter 99.9%de sua tranquilidade.
Rede TCP/IP mais rpida que no Windows e tem sua pilha constantemente melhorada.
O GNU/Linux tem suporte nativo a redes TCP/IP e no depende de uma camada inter-
mediria como o WinSock. Em acessos via modem a Internet, a velocidade de transmis-
Captulo 1. Introduo 8
so 10% maior.
Executa outros sistemas operacionais como Windows, MacOS, DOS ou outro sistema
Linux atravs de consagrados sistemas de virtualizao como Xen, vmware, ou emu-
lao como o DOSEMU, QEMU, WINE.
Suporte completo e nativo a diversos dispositivos de comunicao via infravermelho,
Bluetooth, Firewire, USB. Basta conectar e o seu dispositivo automaticamente recon-
hecido. Raramente so necessrios drivers externos, exceto no caso de dispositivos muito
novos que no tenham o suporte ainda adicionado no sistema.
Suporte a rede via rdio amador.
Suporte a dispositivos Plug-and-Play.
Suporte nativo a pen drivers, dispositivos de armazenamento e cartes de memria.
Suporte nativo a dispositivos I2C
Integrao com gerenciamento de energia ACPI e APM
Dispositivos de rede Wireless. Tanto com criptograa WEB e WPA PSK
Vrios tipos de rewalls avanados de alta qualidade na deteco de trfego indesejvel,
dando ao administrador uma excelente ferramenta de proteo e controle de sua rede.
Roteamento esttico e dinmico de pacotes.
Ponte entre Redes, proxy arp
Proxy Tradicional e Transparente.
Possui recursos para atender a mais de um endereo IP na mesma placa de rede, sendo
muito til para situaes de manuteno em servidores de redes ou para a emulao de
mltiplos computadores. O servidor WEB e FTP podem estar localizados no mesmo
computador, mas o usurio que se conecta tem a impresso que a rede possui servidores
diferentes.
Os sistemas de arquivos usados pelo GNU/Linux (Ext2, Ext3, reiserfs, xfs, jfs)
organiza os arquivos de forma inteligente evitando a fragmentao e fazendo-o um
poderoso sistema para aplicaes multi-usurias exigentes e gravaes intensivas.
Permite a montagem de um servidor de publicao Web, E-mail, News, etc. com um
baixo custo e alta performance. O melhor servidor Web do mercado, o Apache, dis-
tribudo gratuitamente junto com a maioria das distribuies Linux. O mesmo acontece
com o Sendmail.
Por ser um sistema operacional de cdigo aberto, voc pode ver o que o cdigo fonte
(instrues digitadadas pelo programador) faz e adapta-lo as suas necessidades ou de
sua empresa. Esta caracterstica uma segurana a mais para empresas srias e outros
que no querem ter seus dados roubados (voc no sabe o que um sistema sem cdigo
fonte faz na realidade enquanto esta processando o programa).
Suporte a diversos dispositivos e perifricos disponveis no mercado, tanto os novos
como obsoletos.
Pode ser executado em 16 arquiteturas diferentes (Intel, Macintosh, Alpha, Arm, etc.) e
diversas outras sub-arquiteturas.
Empresas especializadas e consultores especializados no suporte ao sistema espalhados
por todo o mundo.
Entre muitas outras caractersticas que voc descobrir durante o uso do sistema (alm
de poder criar outras, caso seja um administrador avanado ou desenvolvedor).
TODOS OS TENS DESCRITOS ACIMA SO VERDADEIROS E TESTADOS PARA QUE
TIVESSE PLENA CERTEZA DE SEU FUNCIONAMENTO.
Captulo 1. Introduo 9
1.5 Distribuies do Linux
S o kernel GNU/Linux no suciente para se ter uma sistema funcional, mas o principal.
Existem grupos de pessoas, empresas e organizaes que decidem distribuir o Linux
junto com outros aplicativos (como por exemplo editores grficos, planilhas,
bancos de dados, ambientes de programao, formatao de documentos,
firewalls, etc).
Este o signicado essencial de distribuio. Cada distribuio tem sua caracterstica prpria,
como o sistema de instalao, o objetivo, a localizao de programas, nomes de arquivos de
congurao, etc. A escolha de uma distribuio pessoal e depende das necessidades de
cada um.
Algumas distribuies bastante conhecidas so: Ubuntu, Debian, Slackware, Red Hat, Gentoo,
Suse todas usando o SO Linux como kernel principal (a Debian uma distribuio indepen-
dente de kernel e pode ser executada sob outros kernels, como o GNU hurd ou o kernel BSD).
A escolha de sua distribuio deve ser feita com muita ateno, no adianta muita coisa per-
guntar em canais de IRC sobre qual a melhor distribuio, ser levado pelas propagandas,
pelo vizinho, etc. O melhor caminho para a escolha da distribuio, acredito eu, seria pergun-
tar as caractersticas de cada uma e porque essa pessoa gosta dela ao invs de perguntar qual
a melhor, porque quem lhe responder isto estar usando uma distribuio que se encaixa
de acordo com suas necessidade e esta mesma distribuio pode no ser a melhor para lhe
atender.
Segue abaixo as caractersticas de algumas distribuies seguidas do site principal e endereo
para download:
Debian http://www.debian.org/ - Distribuio desenvolvida e atualizada atravs do es-
foro de voluntrios espalhados ao redor do mundo, seguindo o estilo de desenvolvi-
mento GNU/Linux. Por este motivo, foi adotada como a distribuio ocial do projeto
GNU. Possui suporte a lngua Portuguesa, a nica que tem suporte a 14 arquiteturas
diferentes (i386, IA64, AMD64, Alpha, Sparc, PowerPc, Macintosh, Arm, etc.) e aproxi-
madamente 15 sub-arquiteturas. A instalao da distribuio pode ser feita tanto atravs
de Disquetes, CD-ROM, Tftp, Ftp, NFS ou atravs da combinao de vrios destes em
cada etapa de instalao.
Acompanha mais de 25000 programas distribudos em forma de pacotes cada um destes
programas so mantidos e testados pela pessoa ou grupo responsvel por seu empacota-
mento. Os pacotes so divididos emdiretrios de acordo comsua categoria e gerenciados
atravs de umavanado sistema de gerenciamento de pacotes (o apt e o dpkg) facilitando
a instalao e atualizao de pacotes. Possui tanto ferramentas para administrao de
redes e servidores quanto para desktops, estaes multimdia, jogos, desenvolvimento,
web, etc.
A atualizao da distribuio ou de pacotes individuais pode ser feita facilmente atravs
de 2 comandos, no requerendo adquirir um novo CD para usar a ltima verso da dis-
tribuio. a nica distribuio no comercial onde todos podem contribuir usando seu
Captulo 1. Introduo 10
conhecimento para o desenvolvimento. Para gerenciar os voluntrios, conta com cente-
nas de listas de discusso envolvendo determinados desenvolvedores das mais diversas
partes do mundo.
So feitos extensivos testes antes do lanamento de cada verso para atingir um alto
grau de conabilidade. As falhas encontradas nos pacotes podem ser relatados atravs
de um sistema de tratamento de falhas que encaminha a falha encontrada diretamente ao
responsvel para avaliao e correo. Qualquer um pode receber a lista de falhas ou
sugestes sobre a distribuio cadastrando-se em uma das lista de discusso que tratam
especicamente da soluo de falhas encontradas na distribuio (disponvel na pgina
principal da distribuio).
Os pacotes podem ser instalados atravs de Tarefas contendo selees de pacotes de
acordo com a utilizao do computador (servidor Web, desenvolvimento, TeX, jogos,
desktop, etc.), Pers contendo selees de pacotes de acordo com o tipo de usurio (pro-
gramador, operador, etc.), ou atravs de uma seleo individual de pacotes, garantindo
que somente os pacotes selecionados sero instalados fazendo uma instalao enxuta.
Existe um time de desenvolvedores com a tarefa especca de monitorar atualizaes de
segurana em servios (apache, sendmail, e todos os outros 25000 pacotes) que possam
comprometer o servidor, deixando-o vulnervel a ataques. Assim que uma falha de-
scoberta, enviado uma alerta (DSA - Debian Security Alert) e disponibilizada uma atu-
alizao para correo das diversas verses da Debian. Isto geralmente feito emmenos
de 48 horas desde a descoberta da falha at a divulgao da correo. Como quase to-
das as falhas so descobertas nos programas, este mtodo tambm pode ser usado por
administradores de outras distribuies para manterem seu sistema seguro e atualizado.
O suporte ao usurio e desenvolvimento da distribuio so feitos atravs de listas de
discusses e canais IRC. Existem uma lista de consultores habilitados a dar suporte e
assistncia a sistemas Debian ao redor do mundo na rea consultores do site principal da
distribuio.
ftp://ftp.debian.org/ - Endereo para download.
Ubuntu http://www.ubuntu.com/ - Variante da distribuio Debian voltada a interao
mais amigvel com o usurio nal e facilidade de instalao. Atualmente a melhor
para usurios que tem o primeiro contato com o Linux. Conta tanto com a instalao do
sistema em HD e execuo atravs de Live CD.
http://www.ubuntu.com/getubuntu/download/ - Endereo para download do
Ubuntu.
Slackware http://www.slackware.com/ - Distribuio desenvolvida por Patrick
Volkerding, desenvolvida para alcanar facilidade de uso e estabilidade como priori-
dades principais. Foi a primeira distribuio a ser lanada no mundo e costuma trazer
o que h de mais novo enquanto mantm uma certa tradio, provendo simplicidade,
facilidade de uso e com isso exibilidade e poder.
Desde a primeira verso lanada em Abril de 1993, o Projeto Slackware Linux tem
buscado produzir a distribuio Linux mais UNIX-like, ou seja, mais parecida com
UNIX. O Slackware segue os padres Linux como o Linux File System Standard, que
um padro de organizao de diretrios e arquivos para as distribuies.
Captulo 1. Introduo 11
Enquanto as pessoas diziam que a Red Hat era a melhor distribuio para o usurio
iniciante, o Slackware o melhor para o usurio mais velho, ou seja programadores,
administradores, etc.
ftp://ftp.slackwarebrasil.org/linux/slackware/ - Ftp da distribuio
Slackware.
SuSE http://www.suse.com/ - Distribuio comercial Alem com a coordenao sendo
feita atravs dos processos administrativos dos desenvolvedores e de seu brao norte-
americano. O foco da Suse o usurio com conhecimento tcnico no Linux (progra-
mador, administrador de rede, etc.) e no o usurio iniciante no Linux. Preferencialmente
a administrao deve ser feita usando o Yast, mas tambm pode ser feita manualmente
atravs de alterao dos arquivos de congurao.
Possui suporte as arquiteturas Intel x86 e Alpha. Sua instalao pode ser feita via CD-
ROM ou CD-DVD ( a primeira distribuio com instalao atravs de DVD).
Uma mdia de 2000 programas acompanham a verso 10 distribudos em 6 CD-ROMs.
O sistema de gerenciamento de pacotes o RPM padronizado. A seleo de pacotes
durante a instalao pode ser feita atravs da seleo do perl de mquina (developer,
estao kde, grcos, estao gnome, servidor de rede, etc.) ou atravs da seleo indi-
vidual de pacotes.
A atualizao da distribuio pode ser feita atravs do CD-ROM de uma nova verso ou
baixando pacotes de ftp://ftp.suse.com/. Usurios registrados ganham direito a
suporte de instalao via e-mail. A base de dados de suporte tambm excelente e est
disponvel na web para qualquer usurio independente de registro.
ftp://ftp.suse.com/ - Ftp da distribuio SuSE.
Red Hat Enterprise Linux http://www.redhat.com/ - Distribuio comercial suportada
pela Red Hat e voltada a servidores de grandes e medias empresas. Tambm conta com
uma certicao chamada RHCE especca desta distro.
Ela no est disponvel para download, apenas vendida a custos a partir de 179 dlares
(a verso workstation) at 1499 dlares (advanced server).
Fedora http://fedora.redhat.com/ - O Fedora Linux a distribuio de desenvolvi-
mento aberto patrocinada pela RedHat e pela comunidade, originada em 2002 e baseada
em verso da antiga linha de produtos RedHat Linux. Esta distribuio no suportada
pela Red Hat como distribuio ocial (ela suporta apenas a linha Red Hat Enterprise
Linux), devendo obter suporte atravs da comunidade ou outros meios.
A distribuio Fedora d prioridade ao uso do computador como estao de trabalho.
Alm de contar com uma ampla gama de ferramentas de escritrio possui funes de
servidor e aplicativos para produtividade e desenvolvimento de softwares. Considerado
um dos sistemas mais fceis de instalar e utilizar, inclui traduo para portugs do Brasil
e suporte s plataformas Intel e 64 bits.
Por basear-se no RedHat. o Fedora conta com um o up2date, um software para man-
ter o sistema atualizado e utiliza pacotes de programas no formato RPM, um dos mais
comuns.
Captulo 1. Introduo 12
O Fedora no distribuido ocialmente atravs de mdias ou CDs, se voc quiser obte-lo
ter de procurar distribuidores independentes ou fazer o download dos 4 CDs atravs
do site ocial.
http://download.fedora.redhat.com/pub/fedora/linux/core/2/i386/
iso/ - Download da distribuio Fedora.
Mandriva http://www.mandriva.com/ - Fuso da distribuio francesa Mandrake com
a distribuio brasileira Conectiva contendo as caractersticas de instalao semi-
automtica atravs de DVD. Boa auto-deteco de perifricos, inclusive web-cams.
http://www.mandriva.com/ - Download da distribuio.
Para contato com os grupos de usurios que utilizam estas distribuies, veja Listas de dis-
cusso on page 380.
1.6 Software Livre
(traduo do texto Linux e o Sistema GNU de Richard Stallman obtido no site do
CIPSGA: http://www.cipsga.org.br/). O projeto GNU comeou em 1983 com o objetivo
de desenvolver um sistema operacional Unix-like totalmente livre. Livre se refere liber-
dade, e no ao preo; signica que voc est livre para executar, distribuir, estudar, mudar e
melhorar o software.
Um sistema Unix-like consiste de muitos programas diferentes. Ns achamos alguns com-
ponentes j disponveis como softwares livres por exemplo, X Window e TeX. Obtemos
outros componentes ajudando a convencer seus desenvolvedores a tornarem eles livres por
exemplo, o Berkeley network utilities. Outros componentes ns escrevemos especicamente
para o GNU por exemplo, GNU Emacs, o compilador GNU C, o GNU C library, Bash e
Ghostscript. Os componentes desta ltima categoria so software GNU. O sistema GNU
consiste de todas as trs categorias reunidas.
O projeto GNUno somente desenvolvimento e distribuio de alguns softwares livres teis.
O corao do projeto GNU uma idia: que software deve ser livre, e que a liberdade do
usurio vale a pena ser defendida. Se as pessoas tm liberdade mas no a apreciam conscien-
temente, no iro mant-la por muito tempo. Se queremos que a liberdade dure, precisamos
chamar a ateno das pessoas para a liberdade que elas tm em programas livres.
O mtodo do projeto GNU que programas livres e a idia da liberdade dos usurios ajudam-
se mutuamente. Ns desenvolvemos software GNU, e conforme as pessoas encontrem pro-
gramas GNU ou o sistema GNU e comecem a us-los, elas tambm pensam sobre a losoa
GNU. O software mostra que a idia funciona na prtica. Algumas destas pessoas acabam
concordando com a idia, e ento escrevem mais programas livres. Ento, o software carrega
a idia, dissemina a idia e cresce da idia.
Em 1992, ns encontramos ou criamos todos os componentes principais do sistema exceto o
kernel, que ns estvamos escrevendo. (Este kernel consiste do microkernel Mach mais o GNU
Captulo 1. Introduo 13
HURD. Atualmente ele est funcionando, mas no est preparado para os usurios. Uma
verso alfa dever estar pronta em breve.)
Ento o kernel do Linux tornou-se disponvel. Linux um kernel livre escrito por Linus Tor-
valds compatvel com o Unix. Ele no foi escrito para o projeto GNU, mas o Linux e o quase
completo sistema GNU zeram uma combinao til. Esta combinao disponibilizou todos
os principais componentes de um sistema operacional compatvel com o Unix, e, com algum
trabalho, as pessoas o tornaram um sistema funcional. Foi um sistema GNU variante, baseado
no kernel do Linux.
Ironicamente, a popularidade destes sistemas desmerece nosso mtodo de comunicar a idia
GNU para as pessoas que usam GNU. Estes sistemas so praticamente iguais ao sistema GNU
a principal diferena a escolha do kernel. Porm as pessoas normalmente os chamam de
sistemas Linux (Linux systems). A primeira impresso que se tem a de que um sistema
Linux soa como algo completamente diferente de sistema GNU, e isto que a maioria dos
usurios pensam que acontece.
A maioria das introdues para o sistema Linux reconhece o papel desempenhado pelos
componentes de software GNU. Mas elas no dizem que o sistema como um todo uma vari-
ante do sistema GNU que o projeto GNU vem compondo por uma dcada. Elas no dizem
que o objetivo de um sistema Unix-like livre como este veio do projeto GNU. Da a maioria
dos usurios no saber estas coisas.
Como os seres humanos tendema corrigir as suas primeiras impresses menos do que as infor-
maes subseqentes tentam dizer-lhes, estes usurios que depois aprendem sobre a relao
entre estes sistemas e o projeto GNU ainda geralmente o subestima.
Isto faz com que muitos usurios se identiquem como uma comunidade separada de
usurios de Linux, distinta da comunidade de usurios GNU. Eles usam todos os softwares
GNU; de fato, eles usam quase todo o sistema GNU; mas eles no pensam neles como usurios
GNU, e freqentemente no pensam que a losoa GNU est relacionada a eles.
Isto leva a outros problemas tambm mesmo dicultando cooperao com a manuteno de
programas. Normalmente quando usurios mudam um programa GNU para fazer ele fun-
cionar melhor em um sistema especco, eles mandam a mudana para o mantenedor do pro-
grama; ento eles trabalham com o mantenedor explicando a mudana, perguntando por ela, e
s vezes reescrevendo-a para manter a coerncia e mantenebilidade do pacote, para ter o patch
instalado.
Mas as pessoas que pensam nelas como usurios Linux tendem a lanar uma verso Linux-
only do programa GNU, e consideram o trabalho terminado. Ns queremos cada e todos os
programas GNU que funcionem out of the box em sistemas baseados em Linux; mas se os
usurios no ajudarem, este objetivo se torna muito mais difcil de atingir.
Como deve o projeto GNU lidar com este problema? O que ns devemos fazer agora para
disseminar a idia de que a liberdade para os usurios de computador importante?
Ns devemos continuar a falar sobre a liberdade de compartilhar e modicar software e
ensinar outros usurios o valor destas liberdades. Se ns nos beneciamos por ter um sistema
operacional livre, faz sentido para ns pensar em preservar estas liberdades por um longo
Captulo 1. Introduo 14
tempo. Se ns nos beneciamos por ter uma variedade de software livres, faz sentido pensar
sobre encorajar outras pessoas a escrever mais software livre, em vez de software proprietrio.
Ns no devemos aceitar a idia de duas comunidades separadas para GNU e Linux. Ao
contrrio, devemos disseminar o entendimento de que sistemas Linux so variantes do sis-
tema GNU, e que os usurios destes sistemas so tanto usurios GNU como usurios Linux
(usurios do kernel do Linux). Usurios que tm conhecimento disto iro naturalmente dar
uma olhada na losoa GNU que fez estes sistemas existirem.
Eu escrevi este artigo como um meio de fazer isto. Outra maneira usar os termos sistema
GNU baseado em Linux (Linux-based GNU system) ou sistema GNU/Linux (GNU/Linux
system), em vez de sistema Linux, quando voc escreve sobre ou menciona este sistema.
1.7 Processamento de Dados
Processamento de Dados o envio de dados ao computador que sero processados e tero um
resultado de sada til.
Veja tambm Dispositivos de Entrada e Sada on page 20.
1.8 O Computador
uma mquina eletrnica que processa e armazena os dados e pode executar diversos pro-
gramas para realizar uma srie de tarefas e assim atender a necessidade do seu utilizador. O
computador no uma mquina inteligente, ele apenas executa as instrues dos programas
que foram escritos pelo programador.
1.9 Conhecendo o Computador
Esta explica para que serve cada boto do painel do computador e monitor de vdeo. Se voc
j sabe para que cada um serve, recomendo pular esta parte, o BE-A-BA. :-)
Todo computador possuem funes que so usados em outros tipos e modelos. Voc pode ter
um modelo de computador e um amigo seu outro tipo e mesmo tendo aparncia diferente,
tero as mesmas funes.
1.9.1 Tipos de Gabinete
Quanto ao tipo, o gabinete pode ser Desktop, Mini-torre e Torre.
Desktop usado na posio Horizontal (como o vdeo cassete). Sua caracterstica que ocupa
pouco espao emuma mesa, pois pode ser colocado sob o monitor. A desvantagem que
normalmente possui pouco espao para a colocao de novas placas e perifricos. Outra
desvantagem a diculdade na manuteno deste tipo de equipamento (hardware).
Captulo 1. Introduo 15
Mini-Torre usado na posio Vertical (torre). o modelo mais usado. Sua caracterstica o
espao interno para expanso e manipulao de perifricos. A desvantagem o espao
ocupado em sua mesa :-).
Torre Possui as mesmas caractersticas do Mini-torre, mas tem uma altura maior e mais espao
para colocao de novos perifricos. Muito usado em servidores de rede e placas que
requerem uma melhor refrigerao.
1.9.2 Painel Frontal
O painel frontal do computador tem os botes que usamos para ligar, desligar, e acompanhar
o funcionamento do computador. Abaixo o signicado de cada um:
Boto POWER Liga/Desliga o computador.
Boto TURBO Se ligado, coloca a placa me em operao na velocidade mxima (o padro).
Desligado, faz o computador funcionar mais lentamente (depende de cada placa me).
Deixe sempre o TURBO ligado para seu computador trabalhar na velocidade mxima de
processamento.
Boto RESET Reinicia o computador. Quando o computador reiniciado, uma nova partida
feita ( como se ns ligssemos novamente o computador). Este boto um dos mais us-
ados por usurios Windows dentre os botes localizados no painel do microcomputador.
No GNU/Linux raramente usado (com menos freqncia que a tecla SCROLL LOCK).
recomendado se pressionar as teclas <CTRL> <ALT> <DEL> para reiniciar o computador
e o boto RESET somente em ltimo caso, pois o <CTRL> <ALT> <DEL> avisa ao Linux
que o usurio pediu para o sistema ser reiniciado assim ele poder salvar os arquivos,
fechar programas e tomar outras providncias antes de resetar o computador.
KEYLOCK Permite ligar/desligar o teclado. acionado por uma chave e somente na
posio Cadeado Aberto permite a pessoa usar o teclado (usar o computador). Alguns
computadores no possuem KEYLOCK.
LED POWER Led (normalmente verde) no painel do computador que quando aceso, indica
que o computador est ligado. O led um diodo emissor de luz (light emission diode)
que emite luz fria.
LED TURBO Led (normalmente amarelo) no painel do computador. Quando esta aceso, in-
dica que a chave turbo est ligada e o computador funcionando a toda velocidade. Rara-
mente as placas me Pentiume acima usama chave turbo. Mesmo que exista no gabinete
do micro, encontra-se desligada.
LED HDD Led (normalmente vermelho) no painel do computador. Acende quando o disco
rgido (ou discos) do computador esta sendo usado. Tambm acende quando uma
unidade de CD-ROM est conectada na placa me e for usado.
1.9.3 Monitor de Vdeo
O monitor de vdeo se divide em dois tipos:
Monocromtico - Mostra tons de cinza
Policromtico - A conhecida tela colorida
Quanto ao padro do monitor, existem diversos:
Captulo 1. Introduo 16
CGA - Color Graphics Adapter Capacidade de mostrar 4 cores simultneas em modo grco.
Uma das primeiras usadas em computadores PCs, com baixa qualidade de imagem,
poucos programas funcionavam em telas CGA, quase todos em modo texto. Ficou muito
conhecida como tela verde embora existem modelos CGA preto e branco.
Hrcules Semelhante ao CGA. Pode mostrar 2 cores simultneas emmodo grco. Adiferena
que apresenta uma melhor qualidade para a exibio de grcos mas por outro lado,
uma grande variedade de programas para monitores CGA no funcionam com moni-
tores Hrcules por causa de seu modo de vdeo. Tambm conhecido por sua imagem
amarela. Dependendo da placa de vdeo, voc pode congurar um monitor Hrcules
monocromtico para trabalhar como CGA.
EGA - Enhanced Graphics Adapter Capacidade de mostrar 16 cores simultneas em modo
grco. Razovel melhora da qualidade grca, mais programas rodavam neste tipo de
tela. Ficou mais conhecida aps o lanamento dos computadores 286, mas no Brasil cou
pouco conhecida pois logo em seguida foi lanada o padro VGA.
VGA - Video Graphics Array Capacidade de mostrar 256 cores simultneas. Boa qualidade
grca, este modelo se mostrava capaz de rodar tanto programas texto como grcos
com tima qualidade de imagem. Se tornou o padro mnimo para rodar programas em
modo grco.
SVGA - Super Video Graphics Array Atual padro de mercado, capaz de mostrar at 16 mil-
hes de cores simultneas. Excelente qualidade grca, tambm capaz de operar corre-
tamente em modo texto.
1.10 Placa Me
a placa principal do sistema onde esto localizados o Processador, Memria RAM, Memria
Cache, BIOS, CMOS, RTC, etc. A placa me possui encaixes onde so inseridas placas de ex-
tenso (para aumentar as funes do computador). Estes encaixes so chamados de SLOTS.
1.10.1 Alguns componentes da placa me
Abaixo a descrio de alguns tipos de componentes eletrnicos que esto presentes na placa
me. No se preocupe se no entender o que eles signicam agora:
RAM - Memria de Acesso Aleatrio (Randomic Access Memory). uma memria de
armazenamento temporrio dos programas e depende de uma fonte de energia para o
armazenamento dos programas. uma memria eletrnica muito rpida assim os pro-
gramas de computador so executados nesta memria. Seu tamanho medido em Kilo-
bytes, Megabytes ou Gigabytes.
Os chips de memria RAM podem ser independentes (usando circuitos integrados en-
caixados em soquetes na placa me) ou agrupados placas de 30 pinos, 72 pinos e 168
pinos.
Captulo 1. Introduo 17
Quanto maior o tamanho da memria, mais espao o programa ter ao ser executado. O
tamanho de memria RAM pedido por cada programa varia, o GNU/Linux precisa de
no mnimo 8 MB de memria RAM para ser executado pelo processador.
PROCESSADOR - a parte do computador responsvel pelo processamentos das in-
strues matemticas/lgicas e programas carregados na memria RAM.
CO-PROCESSADOR - Ajuda o Processador principal a processar as instrues matemti-
cas. normalmente embutido no Processador principal emcomputadores a partir do 486
DX2-66. Em processadores Pentium e superiores, o co-processador sempre embutido
no processador.
CACHE - Memria de Armazenamento Auxiliar do Processador. Possui alta velocidade
de funcionamento, normalmente a mesma que o processador. Serve para aumentar o
desempenho de processamento. A memria Cache pode ser embutida na placa me ou
encaixada externamente atravs de mdulos L2.
BIOS - a memria ROM que contm as instrues bsicas para a inicializao do com-
putador, reconhecimento e ativao dos perifricos conectados a placa me. As BIOS
mais modernas (a partir do 286) tambm trazem um programa que usado para cong-
urar o computador modicando os valores localizados na CMOS.
As placas controladoras SCSI possuem sua prpria BIOS que identicam automatica-
mente os perifricos conectados a ela. Os seguintes tipos de chips podem ser usados
para gravar a BIOS:
ROM - Memria Somente para Leitura (Read Only Memory). Somente pode ser lida.
programada de fbrica atravs de programao eltrica ou qumica.
PROM - Memria Somente para Leitura Programvel (Programable Read Only Mem-
ory) idntica a ROM mas que pode ser programada apenas uma vez por mquinas
Programadoras PROM. tambm chamada de MASK ROM.
EPROM - Memria semelhante a PROM, mas seu contedo pode ser apagado atravs
raios ultra-violeta.
EEPROM - Memria semelhante a PROM, mas seu contedo pode ser apagado e
regravado. Tambm chamada de Flash.
CMOS - uma memria temporria alimentada por uma Bateria onde so li-
das/armazenadas as conguraes do computador feitas pelo programa residente na
BIOS.
1.11 Memria do Computador
A memria a parte do computador que permitem o armazenamento de dados. A memria
dividida em dois tipos: Principal e Auxiliar. Normalmente quando algum fala em memria
de computador est se referindo a memria Principal. Veja abaixo as descries de Memria
Principal e Auxiliar.
Captulo 1. Introduo 18
1.11.1 Memria Principal
um tipo de memria eletrnica que depende de uma fonte de energia para manter os dados
armazenados e perde os dados quando a fonte de energia desligada. A memria RAM do
computador (Randomic Access Memory - Memria de Acesso aleatrio) o principal exemplo
de memria de armazenamento Principal.
Os dados so armazenados em circuitos integrados (chips) e enquanto voc est usando seu
computador, a RAM armazena e executa seus programas. Os programas so executados na
memria RAM porque a memria eletrnica muito rpida. As memrias EDO, DIMM, DDR,
DDR2, DDR3 so exemplos de memria RAM.
Se desligarmos o computador ou ocorrer uma queda de energia, voc perder os programas
que estiverem em execuo ou o trabalho que estiver fazendo. Por esse motivo necessrio o
uso de uma memria auxiliar (veja Memria Auxiliar on the current page).
1.11.2 Memria Auxiliar
So dispositivos que NO dependem de uma fonte de energia para manter os dados ar-
mazenados, os dados no so perdidos quando a fonte de energia desligada. As Memrias
Auxiliares so muito mais lentas que as Memrias Principais porque utilizam mecanismos
mecnicos e eltricos (motores e eletroms) para funcionar e fazer a leitura/gravao dos
dados. Existem tambm modelos chamados disco de estado slido (SSD), os dados so ar-
mazenados em chips eletrnicos ao invs de mecanismos mecnicos.
Um exemplo de dispositivos de armazenamento auxiliar so os pen drives, disquetes, cartes
SD, discos rgidos, unidades de ta, Zip Drives, DVD/CD/BluRay, etc.
A Memria Auxiliar resolve o problema da perda de dados causado pela Memria Principal
quando o computador desligado, desta forma podemos ler nossos arquivos e programas
da memria Auxiliar e copia-los para a Memria Principal (memria RAM) para que possam ser
novamente usados.
Um exemplo simples de quando estiver editando um texto e precisar salva-lo, o que voc
faz simplesmente salvar os dados da memria RAM que esto sendo editados para o disco
rgido, desta forma voc estar guardando seu documento na Memria Auxiliar.
Este tipo de memria mais lento que a memria principal, por este motivo que os programas
somente so carregados e executados na Memria Principal.
1.12 Discos
Os discos so memrias de armazenamento Auxiliares. Entre os vrios tipos de discos exis-
tentes, posso citar os Flexveis, Rgidos, Pen-drives, SSD e CDs. Veja as explicaes sobre cada
um deles abaixo.
Captulo 1. Introduo 19
1.12.1 Discos Flexveis
So discos usados para armazenar e transportar pequenas quantidades de dados. Este tipo
de disco normalmente encontrado no tamanho 3 1/2 (1.44MB) polegadas e 5 1/4 polegadas
(360Kb ou 1.2MB). Hoje os discos de 3 1/2 so os mais utilizados por terem uma melhor pro-
teo por causa de sua capa plstica rgida, maior capacidade e o menor tamanho o que facilita
seu transporte.
Os disquetes so inseridos em um compartimento chamado de Unidade de Disquetes
ou Drive que faz a leitura/gravao do disquete.
Sua caracterstica a baixa capacidade de armazenamento e baixa velocidade no acesso aos da-
dos mas podem ser usados para transportar os dados de um computador a outro com grande
facilidade. Os disquetes de computador comuns so discos exveis.
1.12.2 Disco Rgido
um disco localizado dentro do computador. fabricado com discos de metal recompos-
tos por material magntico onde os dados so gravados atravs de cabeas e revestido exter-
namente por uma proteo metlica que preso ao gabinete do computador por parafusos.
Tambm chamado de HD (Hard Disk) ou Winchester. nele que normalmente gravamos e
executamos nossos programas mais usados.
Existe tambm um tipo de disco rgido chamado SSD (disco de estado slido). A diferena
deste disco para o disco rgido comum, que no SSD os dados so armazenados em chips ao
invs de disco magntico.
A caracterstica deste tipo de disco a alta capacidade de armazenamento de dados e alta
velocidade no acesso aos dados.
1.12.3 CD/DVD/BluRay
um tipo de disco que permite o armazenamento de dados atravs de um compact disc e os
dados so lidos atravs de uma lente tica. A Unidade de CD localizada no gabinete do
computador e pode ler CDs de msicas, arquivos, interativos, etc. Existem diversos tipos de
CDs no mercado, entre eles:
CD-R - CD gravvel, pode ser gravado apenas uma vez. Possui sua capacidade de ar-
mazenamento entre 600MB e 740MB dependendo do formato de gravao usado. Usa
um formato lido por todas as unidades de CD-ROM disponveis no mercado.
CD-RW - CD regravvel, pode ser gravado vrias vezes, ter seus arquivos apagados, etc.
Seu uso semelhante ao de um disquete de alta capacidade. Possui capacidade de ar-
mazenamento de normalmente 640MB mas isto depende do fabricante. Usa um formato
que lido apenas por unidades leitoras e gravadoras multiseo.
DVD-ROM - Alta capacidade de armazenamento. Pode armazenar at 8GB de arquivos ou
programas quando usado em dual layer. BluRay - Alta capacidade de armazenamento.
Pode armazenar mais de 50GB de arquivos ou programas quando usado em dual layer.
Captulo 1. Introduo 20
um tipo de CD muito novo no mercado e ainda em desenvolvimento. lido somente
por unidades prprias para este tipo de disco.
1.13 Cuidados Bsicos com o Computador
Abaixo uma lista de cuidados bsicos para garantir uma melhor conservao e funcionamento
de seu computador.
No deixe seu computador em locais expostos a umidade ou sol. O mesmo se aplica a
mdias como pen-drives, gavetas de HD, cartes de memria etc.
Limpe o Gabinete e o Monitor com um pano levemente umedecido em gua com sabo
neutro ou soluo de limpeza apropriada para micros. No use lcool, querosene, acet-
ona ou qualquer outro tipo de produto abrasivo. O uso de um destes podem estragar o
gabinete de seu computador e se um destes produtos atingir a parte interna pode causar
problemas nas placas ou at um incndio!
No retire o Pino central da tomada do computador, ele no veio sobrando e tem util-
idade! Este pino ligado a carcaa do computador (chassis) e deve ser ligado ao terra
de sua rede eltrica. As descargas eltricas vindas da fonte e componentes do micro so
feitas no chassis e se este pino for retirado voc poder tomar choques ao tocar em al-
guma parte metlica do micro e queimar componentes sensveis como o disco rgido,
placa me, etc.
Se estiver em dvida consulte um eletricista de conana.
No instale seu computador muito prximo de campos magnticos comtelevisores, apar-
elhos de som, motores, etc. Estes aparelhos geram rudos eltricos e/ou magnticos que
podem prejudicar o bom funcionamento de seu micro. OBS: As caixas de som de kits
multimdia possuem os ms revestidos de metais em seus auto-falantes para no causar
nenhuma interferncia ao computador.
No use a bandeja da unidade de CD/DVD como porta copos!
No coloque objetos dentro da unidade de disquetes.
Antes de desligar seu computador, utilize o comando shutdown -h now (ou seus
sinonimos, como halt, poweroff) para desligar corretamente o computador. Este
comando naliza adequadamente os programas, salva os dados, desmontar os sistemas
de arquivos GNU/Linux. Para detalhes veja Desligando o computador on the facing
page.
1.14 Dispositivos de Entrada e Sada
Entrada - Permite a comunicao do usurio com o computador. So dispositivos que
enviam dados ao computador para processamento. Exemplos: Teclado, mouse, touch
screen, caneta tica, scanner.
Captulo 1. Introduo 21
O dispositivo de entrada padro (stdin) em sistemas GNU/Linux o teclado.
Sada - Permite a comunicao do computador com o usurio. So dispositivos que
permitem o usurio visualizar o resultado do processamento enviado ao computador.
Exemplos: Monitor, Impressora, Plotter, som.
O dispositivo de sada padro (stdout) em sistemas GNU/Linux o Monitor.
1.15 Ligando o computador
Para ligar o computador pressione o boto POWER ou I/O localizado em seu painel frontal do
micro.
Imediatamente entrar em funcionamento um programa residente na memria ROM (Read
Only Memory - memria somente para leitura) da placa me que far os testes iniciais para
vericar se os principais dispositivos esto funcionando em seu computador (memria RAM,
discos, processador, portas de impressora, memria cache, etc).
Quando o ROM termina os testes bsicos, ele inicia a procura do setor de boot nos discos do
computador que ser carregado na memria RAM do computador. Aps carregar o setor de
boot, o sistema operacional ser iniciado (veja Sistema Operacional on page 5). O setor de
boot contm a poro principal usada para iniciar o sistema operacional.
No GNU/Linux, o setor de boot normalmente criado por umgerenciador de inicializao (um
programa que permite escolher qual sistema operacional ser iniciado). Deste modo podemos
usar mais de um sistema operacional no mesmo computador (como o DOS e Linux). Os geren-
ciadores de inicializao mais usados em sistemas GNU/Linux na plataforma Intel X86 so o
GRUB e o LILO.
Caso o ROM no encontre o sistema operacional em nenhum dos discos, ele pedir que seja
inserido um disquete contendo o Sistema Operacional para partida.
1.16 Desligando o computador
Para desligar o computador primeiro digite (como root): shutdown -h now, halt ou
poweroff, o GNU/Linux nalizar os programas e gravar os dados em seu disco rgido,
quando for mostrada a mensagempower down, pressione o boto POWERemseu gabinete
para desligar a alimentao de energia do computador.
NUNCA desligue diretamente o computador sem usar o comando shutdown, halt ou
poweroff, pois podem ocorrer perda de dados ou falhas no sistema de arquivos de seu disco
rgido devido a programas abertos e dados ainda no gravados no disco.
Salve seus trabalhos para no correr o risco de perde-los durante o desligamento do computa-
dor.
Captulo 1. Introduo 22
1.17 Reiniciando o computador
Reiniciar quer dizer iniciar novamente o sistema. No recomendvel desligar e ligar con-
stantemente o computador pelo boto ON/OFF, por este motivo existe recursos para reiniciar
o sistema sem desligar o computador. No GNU/Linux voc pode usar o comando reboot,
shutdown -r now e tambm pressionar simultaneamente as teclas <CTRL> <ALT> <DEL>
para reiniciar de uma forma segura.
Observaes:
Salve seus trabalhos para no correr o risco de perde-los durante a reinicializao do
sistema.
O boto reset do painel frontal do computador tambm reinicia o computador, mas de
uma maneira mais forte pois est ligado diretamente aos circuitos da placa me e o
sistema ser reiniciado imediatamente, no tendo nenhuma chance de nalizar corre-
tamente os programas, gravar os dados da memria no disco e desmontar os sistemas de
arquivos. O uso indevido da tecla reset pode causar corrompimentos em seus arquivos e
perdas. Prera o mtodo de reinicializao explicado acima e use o boto reset somente
em ltimo caso.
23
Captulo 2
Explicaes Bsicas
Este captulo traz explicaes sobre os principais componentes existentes no computador e do
sistema operacional Linux.
2.1 Hardware e Software
Hardware - Signica parte fsica do computador (disquete, pen-drive, impressoras, monitores,
placa me, placa de fax, discos rgidos, etc).
Software - So os programas usados no computador (sistema operacional, processador de tex-
tos, planilha, banco de dados, scripts, comandos, etc).
2.2 Arquivos
onde gravamos nossos dados. Um arquivo pode conter um texto feito por ns, uma msica,
programa, planilha, etc.
Cada arquivo deve ser identicado por um nome, assim ele pode ser encontrado facilmente
quando desejar usa-lo. Se estiver fazendo um trabalho de histria, nada melhor que salva-lo
com o nome historia. Um arquivo pode ser binrio ou texto (para detalhes veja Arquivo
texto e binrio on page 25).
OGNU/Linux Case Sensitive ou seja, ele diferencia letras maisculas e minsculas nos arquivos.
O arquivo historia completamente diferente de Historia. Esta regra tambm vlido
para os comandos e diretrios. Prera, sempre que possvel, usar letras minsculas para identi-
car seus arquivos, pois quase todos os comandos do sistema esto em minsculas.
Um arquivo oculto no GNU/Linux identicado por um . no inicio do nome (por exemplo,
.bashrc). Arquivos ocultos no aparecem em listagens normais de diretrios, deve ser usado
o comando ls -a para tambm listar arquivos ocultos.
Captulo 2. Explicaes Bsicas 24
2.2.1 Extenso de arquivos
A extenso serve para identicar o tipo do arquivo. A extenso so as letras aps um . no
nome de um arquivo, explicando melhor:
relatrio.txt - O .txt indica que o contedo um arquivo texto.
script.sh - Arquivo de Script (interpretado por /bin/sh).
system.log - Registro de algum programa no sistema.
arquivo.gz - Arquivo compactado pelo utilitrio gzip.
index.html - Pgina de Internet (formato Hypertexto).
A extenso de um arquivo tambm ajuda a saber o que precisamos fazer para abri-lo. Por ex-
emplo, o arquivo relatrio.txt umtexto simples e podemos ver seu contedo atravs do
comando cat on page 127, j o arquivo index.html contm uma pgina de Internet e precis-
aremos de um navegador para poder visualiza-lo (como o lynx, Firefox ou o Konqueror).
A extenso (na maioria dos casos) no requerida pelo sistema operacional GNU/Linux, mas
conveniente o seu uso para determinarmos facilmente o tipo de arquivo e que programa
precisaremos usar para abri-lo.
2.2.2 Tamanho de arquivos
A unidade de medida padro nos computadores o bit. A um conjunto de 8 bits ns
chamamos de byte. Cada arquivo/diretrio possui um tamanho, que indica o espao que
ele ocupa no disco e isto medido em bytes. O byte representa uma letra. Assim, se voc
criar um arquivo vazio e escrever o nome Linux e salvar o arquivo, este ter o tamanho de 5
bytes. Espaos em branco e novas linhas tambm ocupam bytes.
Alm do byte existem as medidas Kbytes, Mbytes, Gbytes. Os prexos K (quilo), M (mega),
G (giga), T (tera) etc. vem da matemtica. O K signica multiplicar por 10^3, o M por
10^6, e assim por diante. Esta letras servem para facilitar a leitura em arquivos de grande
tamanho. Um arquivo de 1K a mesma coisa de um arquivo de 1024 bytes. Uma forma que
pode inicialmente lhe ajudar a lembrar: K vem de Kilo que igual a 1000 - 1Kilo igual a 1000
gramas certo?.
Da mesma forma 1Mb (ou 1M) igual a um arquivo de 1024K ou 1.048.576 bytes
1Gb (ou 1G) igual a umarquivo de 1024Mb ou 1048576Kb ou 1.073.741.824 bytes (1 Gb igual
a 1.073.741.824 bytes, so muitos nmeros!). Deu pra notar que mais fcil escrever e entender
como 1Gb do que 1.073.741.824 bytes :-)
A lista completa em ordem progressiva das unidades de medida a seguinte:
Captulo 2. Explicaes Bsicas 25
Smbolo 10^ 2^ Nome
K 3 10 Quilo
M 6 20 Mega
G 9 30 Giga
T 12 40 Tera
P 15 50 Peta
E 18 60 Eta
Z 21 70 Zetta
Y 24 80 Yotta
2.2.3 Arquivo texto e binrio
Quanto ao tipo, um arquivo pode ser de texto ou binrio:
texto Seu contedo compreendido pelas pessoas. Umarquivo texto pode ser uma carta, um
script, um programa de computador escrito pelo programador, arquivo de congurao,
etc.
binrio Seu contedo somente pode ser entendido por computadores. Contm caracteres
incompreensveis para pessoas normais. Um arquivo binrio gerado atravs de um
arquivo de programa (digitado pela pessoa que o criou, o programador) atravs de um
processo chamado de compilao. Compilao basicamente a converso de um pro-
grama em linguagem humana para a linguagem de mquina.
2.3 Diretrio
Diretrio o local utilizado para armazenar conjuntos arquivos para melhor organizao e
localizao. O diretrio, como o arquivo, tambm Case Sensitive (diretrio /teste com-
pletamente diferente do diretrio /Teste).
No podem existir dois arquivos com o mesmo nome em um diretrio, ou um sub-diretrio
com um mesmo nome de um arquivo em um mesmo diretrio.
Um diretrio nos sistemas Linux/UNIX so especicados por uma / e no uma \ como
feito no DOS. Para detalhes sobre como criar um diretrio, veja o comando mkdir (mkdir on
page 125).
2.3.1 Diretrio Raz
Este o diretrio principal do sistema. Dentro dele esto todos os diretrios do sistema. O
diretrio Raz representado por uma / , assim se voc digitar o comando cd / voc estar
acessando este diretrio.
Captulo 2. Explicaes Bsicas 26
Nele esto localizados outros diretrios como o /bin,/sbin,/usr,/usr/local,/mnt,
/tmp,/var,/home, etc. Estes so chamados de sub-diretrios pois esto dentro do diretrio
/. A estrutura de diretrios e sub-diretrios pode ser identicada da seguinte maneira:
/
/bin
/sbin
/usr
/usr/local
/mnt
/tmp
/var
/home
A estrutura de diretrios tambm chamada de rvore de Diretrios porque pare-
cida com uma rvore de cabea para baixo. Cada diretrio do sistema tem seus respectivos
arquivos que so armazenados conforme regras denidas pela FHS (FileSystem Hierarchy Stan-
dard - Hierarquia Padro do Sistema de Arquivos) verso 2.0, denindo que tipo de arquivo deve
ser armazenado em cada diretrio.
2.3.2 Diretrio atual
o diretrio em que nos encontramos no momento. Voc pode digitar pwd (veja pwd on
page 125) para vericar qual seu diretrio atual.
O diretrio atual tambm identicado por um . (ponto). O comando comando ls . pode
ser usado para listar seus arquivos ( claro que isto desnecessrio porque se no digitar
nenhum diretrio, o comando ls listar o contedo do diretrio atual).
2.3.3 Diretrio home
Tambm chamado de diretrio de usurio. Em sistemas GNU/Linux cada usurio (inclusive o
root) possui seu prprio diretrio onde poder armazenar seus programas e arquivos pessoais.
Este diretrio est localizado em /home/[login], neste caso se o seu login for joao o seu
diretrio home ser /home/joao. O diretrio home tambm identicado por um~(til), voc
pode digitar tanto o comando ls /home/joao como ls ~ para listar os arquivos de seu
diretrio home.
O diretrio home do usurio root (na maioria das distribuies GNU/Linux) est localizado
em /root.
Dependendo de sua congurao e do nmero de usurios em seu sistema, o diretrio de
usurio pode ter a seguinte forma: /home/[1letra_do_nome]/[login], neste caso se o
seu login for joao o seu diretrio home ser /home/j/joao.
Captulo 2. Explicaes Bsicas 27
2.3.4 Diretrio Superior
O diretrio superior (Upper Directory) identicado por .. (2 pontos).
Caso estiver no diretrio /usr/local e quiser listar os arquivos do diretrio /usr voc pode
digitar, ls .. Este recurso tambm pode ser usado para copiar, mover arquivos/diretrios,
etc.
2.3.5 Diretrio Anterior
O diretrio anterior identicado por -. til para retornar ao ltimo diretrio usado.
Se estive no diretrio /usr/local e digitar cd /lib, voc pode retornar facilmente para o
diretrio /usr/local usando cd -.
2.3.6 Caminho na estrutura de diretrios
So os diretrios que teremos que percorrer at chegar no arquivo ou diretrio que que procu-
ramos. Se desejar ver o arquivo /etc/hosts voc tem duas opes:
1 Mudar o diretrio padro para /etc com o comando cd /etc e usar o comando cat
hosts
2 Usar o comando cat especicando o caminho completo na estrutura de diretrios e o
nome de arquivo: cat /etc/hosts.
As duas solues acima permitem que voc veja o arquivo GPL. A diferena entre as duas a
seguinte:
Na primeira, voc muda o diretrio padro para /usr/doc/copyright (conra dig-
itando pwd) e depois o comando cat GPL. Voc pode ver os arquivos de /usr/doc
/copyright com o comando ls. /usr/doc/copyright o caminho de diretrio
que devemos percorrer para chegar at o arquivo GPL.
Na segunda, digitado o caminho completo para o cat localizar o arquivo GPL: cat
/usr/doc/copyright/GPL. Neste caso, voc continuar no diretrio padro (conra
digitando pwd). Digitando ls, os arquivos do diretrio atual sero listados.
O caminho de diretrios necessrio para dizer ao sistema operacional onde encontrar um ar-
quivo na rvore de diretrios.
2.3.7 Exemplo de diretrio
Umexemplo de diretrio o seu diretrio de usurio, todos seus arquivos essenciais devemser
colocadas neste diretrio. Um diretrio pode conter outro diretrio, isto til quando temos
muitos arquivos e queremos melhorar sua organizao. Abaixo um exemplo de uma empresa
que precisa controlar os arquivos de Pedidos que emite para as fbricas:
/pub/vendas - diretrio principal de vendas /pub/vendas/mes01-1999 - diretrio con-
tendo vendas do ms 01/1999 /pub/vendas/mes02-2009 - diretrio contendo vendas do ms
02/2009 /pub/vendas/mes01-2010 - diretrio contendo vendas do ms 03/2010
Captulo 2. Explicaes Bsicas 28
mes01-99,mes02-2009,mes01-2010 so diretrios usados para armazenar os arquivos de
pedidos do ms e ano correspondente. Isto essencial para organizao, pois se todos os pedi-
dos fossem colocados diretamente no diretrio vendas, seria muito difcil encontrar o arquivo
do cliente Joo do ms 01/2009.
Voc deve ter reparado que usei a palavra sub-diretrio para mes01-1999, mes02-2009 e mes01-
2010, porque que eles esto dentro do diretrio vendas. Da mesma forma, vendas um sub-
diretrio de pub.
2.3.8 Estrutura bsica de diretrios do Sistema Linux
O sistema GNU/Linux possui a seguinte estrutura bsica de diretrios organizados segundo o
FHS (Filesystem Hierarchy Standard):
/bin Contm arquivos programas do sistema que so usados com freqncia pelos usurios.
/boot Contm arquivos necessrios para a inicializao do sistema.
/cdrom Ponto de montagem da unidade de CD-ROM.
/media Ponto de montagem de dispositivos diversos do sistema (rede, pen-drives, CD-ROM
em distribuies mais novas).
/dev Contm arquivos usados para acessar dispositivos (perifricos) existentes no computa-
dor.
/etc Arquivos de congurao de seu computador local.
/floppy Ponto de montagem de unidade de disquetes
/home Diretrios contendo os arquivos dos usurios.
/lib Bibliotecas compartilhadas pelos programas do sistema e mdulos do kernel.
/lost+found Local para a gravao de arquivos/diretrios recuperados pelo utilitrio
fsck.ext2. Cada partio possui seu prprio diretrio lost+found.
/mnt Ponto de montagem temporrio.
/proc Sistema de arquivos do kernel. Este diretrio no existe em seu disco rgido, ele
colocado l pelo kernel e usado por diversos programas que fazem sua leitura, veri-
cam conguraes do sistema ou modicar o funcionamento de dispositivos do sistema
atravs da alterao em seus arquivos.
/sys Sistema de arquivos do kernel. Este diretrio no existe em seu disco rgido, ele colo-
cado l pelo kernel e usado por diversos programas que fazemsua leitura, vericamcon-
guraes do sistema ou modicar o funcionamento de dispositivos do sistema atravs
da alterao em seus arquivos.
/root Diretrio do usurio root.
Captulo 2. Explicaes Bsicas 29
/sbin Diretrio de programas usados pelo superusurio (root) para administrao e controle
do funcionamento do sistema.
/tmp Diretrio para armazenamento de arquivos temporrios criados por programas.
/usr Contm maior parte de seus programas. Normalmente acessvel somente como leitura.
/var Contm maior parte dos arquivos que so gravados com freqncia pelos programas do
sistema, e-mails, spool de impressora, cache, etc.
2.4 Nomeando Arquivos e Diretrios
No GNU/Linux, os arquivos e diretrios pode ter o tamanho de at 255 letras. Voc pode
identica-lo com uma extenso (um conjunto de letras separadas do nome do arquivo por um
.).
Os programas executveis do GNU/Linux, ao contrrio dos programas de DOS e Windows,
no so executados a partir de extenses .exe,.com ou .bat. O GNU/Linux (como todos os
sistemas POSIX) usa a permisso de execuo de arquivo para identicar se um arquivo pode ou
no ser executado.
No exemplo anterior, nosso trabalho de histria pode ser identicado mais facilmente caso
fosse gravado com o nome trabalho.text ou trabalho.txt. Tambm permitido gravar
o arquivo com o nome TrabalhodeHistoria.txt mas no recomendado gravar nomes
de arquivos e diretrios com espaos. Porque ser necessrio colocar o nome do arquivo entre
aspas para acessa-lo (por exemplo, cat Trabalho de Historia.txt). Ao invs de
usar espaos, prera capitalizar o arquivo (usar letras maisculas e minsculas para identica-
lo): TrabalhodeHistoria.txt.
2.5 Comandos
Comandos so ordens que passamos ao sistema operacional para executar uma determinada
tarefa.
Cada comando tem uma funo especca, devemos saber a funo de cada comando e escol-
her o mais adequado para fazer o que desejamos, por exemplo:
ls - Mostra arquivos de diretrios
cd - Para mudar de diretrio
Este guia tem uma lista de vrios comandos organizados por categoria com a explicao sobre
o seu funcionamento e as opes aceitas (incluindo alguns exemplos).
sempre usado um espao depois do comando para separ-lo de uma opo ou parmetro
que ser passado para o processamento. Um comando pode receber opes e parmetros:
opes As opes so usadas para controlar como o comando ser executado, por exemplo,
para fazer uma listagem mostrando o dono, grupo, tamanho dos arquivos voc deve digitar
ls -l. Opes podem ser passadas ao comando atravs de um - ou :
Captulo 2. Explicaes Bsicas 30
- Opo identicada por uma letra. Podemser usadas mais de uma opo comumnico
hfen. O comando ls -l -a a mesma coisa de ls -la
Opo identicada por um nome. Tambm chamado de opo extensa. O comando
ls --all equivalente a ls -a.
Pode ser usado tanto - como , mas h casos em que somente - ou esta
disponvel.
parmetros Um parmetro identica o caminho, origem, destino, entrada padro ou sada padro
que ser passada ao comando. Se voc digitar: ls /usr/share/doc/copyright,
/usr/share/doc/copyright ser o parmetro passado ao comando ls, neste caso
queremos que ele liste os arquivos do diretrio /usr/share/doc/copyright. normal errar o
nome de comandos, mas no se preocupe, quando isto acontecer o sistema mostrar a
mensagem command not found (comando no encontrado) e voltar ao aviso de co-
mando. As mensagens de erro no fazem nenhum mal ao seu sistema, somente dizem
que algo deu errado para que voc possa corrigir e entender o que aconteceu. No
GNU/Linux, voc tem a possibilidade de criar comandos personalizados usando out-
ros comandos mais simples (isto ser visto mais adiante). Os comandos se encaixam em
duas categorias: Comandos Internos e Comandos Externos.
Por exemplo: ls -la /usr/share/doc, ls o comando, -la a opo passada ao co-
mando, e /usr/share/doc o diretrio passado como parmetro ao comando ls.
2.5.1 Comandos Internos
So comandos que esto localizados dentro do interpretador de comandos (normalmente o
Bash) e no no disco. Eles so carregados na memria RAM do computador junto com o
interpretador de comandos.
Quando executa um comando, o interpretador de comandos verica primeiro se ele um Co-
mando Interno caso no seja vericado se um Comando Externo.
Exemplos de comandos internos so: cd, exit, echo, bg, fg, source, help
2.6 Comandos Externos
So comandos que esto localizados no disco. Os comandos so procurados no disco usando
o ordem do PATH e executados assim que encontrados.
Para detalhes veja path on page 109.
2.7 Aviso de comando (Prompt)
Aviso de comando (ou Prompt), a linha mostrada na tela para digitao de comandos que sero
passados ao interpretador de comandos para sua execuo.
Captulo 2. Explicaes Bsicas 31
A posio onde o comando ser digitado marcado um trao piscante na tela chamado de
cursor. Tanto em shells texto como em grcos necessrio o uso do cursor para sabermos
onde iniciar a digitao de textos e nos orientarmos quanto a posio na tela.
Oaviso de comando do usurio root identicado por uma # (tralha), e o aviso de comando
de usurios identicado pelo smbolo $. Isto padro em sistemas UNIX.
Voc pode retornar comandos j digitados pressionando as teclas Seta para cima / Seta
para baixo.
A tela pode ser rolada para baixo ou para cima segurando a tecla SHIFT e pressionando PGUP
ou PGDOWN. Isto til para ver textos que rolaram rapidamente para cima.
Abaixo algumas dicas sobre a edio da linha de comandos (no necessrio se preocupar em
decora-los):
Pressione a tecla Back Space (<) para apagar um caracter esquerda do cursor.
Pressione a tecla Del para apagar o caracter acima do cursor.
Pressione CTRL+A para mover o cursor para o inicio da linha de comandos.
Pressione CTRL+E para mover o cursor para o m da linha de comandos.
Pressione CTRL+U para apagar o que estiver esquerda do cursor. O contedo apagado
copiado para uso com CTRL+y.
Pressione CTRL+K para apagar o que estiver direita do cursor. O contedo apagado
copiado para uso com CTRL+y.
Pressione CTRL+L para limpar a tela e manter o texto que estiver sendo digitado na linha
de comando (parecido com o comando clear).
Pressione CTRL+Y para colocar o texto que foi apagado na posio atual do cursor.
2.8 Interpretador de comandos
Tambm conhecido como shell. o programa responsvel em interpretar as instrues en-
viadas pelo usurio e seus programas ao sistema operacional (o kernel). Ele que executa co-
mandos lidos do dispositivo de entrada padro (teclado) ou de um arquivo executvel. a
principal ligao entre o usurio, os programas e o kernel. OGNU/Linux possui diversos tipos
de interpretadores de comandos, entre eles posso destacar o bash, ash, csh, tcsh, sh,
etc. Entre eles o mais usado o bash. O interpretador de comandos do DOS, por exemplo, o
command.com.
Os comandos podem ser enviados de duas maneiras para o interpretador: interativa e
no-interativa:
Captulo 2. Explicaes Bsicas 32
Interativa Os comandos so digitados no aviso de comando e passados ao interpretador
de comandos um a um. Neste modo, o computador depende do usurio para executar
uma tarefa, ou prximo comando.
No-interativa So usados arquivos de comandos criados pelo usurio (scripts) para o
computador executar os comandos na ordem encontrada no arquivo. Neste modo, o
computador executa os comandos do arquivo um por um e dependendo do trmino do
comando, o script pode checar qual ser o prximo comando que ser executado e dar
continuidade ao processamento.
Este sistema til quando temos que digitar por vrias vezes seguidas um mesmo co-
mando ou para compilar algum programa complexo.
O shell Bash possui ainda outra caracterstica interessante: A completao dos nomes. Isto
feito pressionando-se a tecla TAB. Por exemplo, se digitar ls tes e pressionar <tab>, o Bash
localizar todos os arquivos que iniciam com tes e completar o restante do nome. Caso
a completao de nomes encontre mais do que uma expresso que satisfaa a pesquisa, ou
nenhuma, emitido um beep. Se voc apertar novamente a tecla TAB imediatamente depois
do beep, o interpretador de comandos ir listar as diversas possibilidades que satisfazem a
pesquisa, para que voc possa escolher a que lhe interessa. A completao de nomes funciona
sem problemas para comandos internos.
Exemplo: ech (pressione TAB). ls /vm(pressione TAB)
2.9 Terminal Virtual (console)
Terminal (ou console) o teclado e tela conectados em seu computador. OGNU/Linux faz uso
de sua caracterstica multi-usuria usando os terminais virtuais. Um terminal virtual uma
segunda seo de trabalho completamente independente de outras, que pode ser acessada no
computador local ou remotamente via telnet, rsh, rlogin, etc.
No GNU/Linux, em modo texto, voc pode acessar outros terminais virtuais segurando a tecla
ALT e pressionando F1 a F6. Cada tecla de funo corresponde a um nmero de terminal do
1 ao 6 (o stimo usado por padro pelo ambiente grco X). O GNU/Linux possui mais de
63 terminais virtuais, mas apenas 6 esto disponveis inicialmente por motivos de economia
de memria RAM (cada terminal virtual ocupa aproximadamente 350 Kb de memria RAM,
desative a quantidade que no estiver usando para liberar memria RAM para uso de outros
programas!) .
Se estiver usando o modo grco, voc deve segurar CTRL+ ALT enquanto pressiona uma tela
de <F1> a <F6>. Para voltar ao modo grco, pressione CTRL+ALT+ <F7>.
Um exemplo prtico: Se voc estiver usando o sistema no Terminal 1 com o nome joao
e desejar entrar como root para instalar algum programa, segure ALT enquanto pressiona
<F2> para abrir o segundo terminal virtual e faa o login como root. Ser aberta uma nova
seo para o usurio root e voc poder retornar a hora que quiser para o primeiro terminal
pressionando ALT+<F1>.
Captulo 2. Explicaes Bsicas 33
2.10 Login
Login a entrada no sistema quando voc digita seu nome e senha. Por enquanto vou manter o
seu suspense sobre o que o logout.
2.11 Logout
Logout a sada do sistema. A sada do sistema feita pelos comandos logout, exit,
CTRL+D, ou quando o sistema reiniciado ou desligado.
2.12 Curingas
Curingas (ou referncia global) um recurso usado para especicar um ou mais arquivos ou
diretrios do sistema de uma s vez. Este um recurso permite que voc faa a ltragem do
que ser listado, copiado, apagado, etc. So usados 4 tipos de curingas no GNU/Linux:
* - Faz referncia a um nome completo/restante de um arquivo/diretrio.
? - Faz referncia a uma letra naquela posio.
[padro] - Faz referncia a uma faixa de caracteres de um arquivo/diretrio. Padro
pode ser:
[a-z][0-9] - Faz referncia a caracteres de a at z seguido de um caracter de 0
at 9.
[a,z][1,0] - Faz a referncia aos caracteres a e z seguido de um caracter 1 ou 0
naquela posio.
[a-z,1,0] - Faz referncia a intervalo de caracteres de a at z ou 1 ou 0 naquela
posio.
A procura de caracteres Case Sensitive assim se voc deseja que sejam localizados
todos os caracteres alfabticos voc deve usar [a-zA-Z].
Caso a expresso seja precedida por um ^, faz referncia a qualquer caracter exceto o da
expresso. Por exemplo [^abc] faz referncia a qualquer caracter exceto a, b e c.
{padres} - Expande e gera strings para pesquisa de padres de um arquivo/diretrio.
X{ab,01} - Faz referncia a seqencia de caracteres Xab ou X01
X{a-z,10} Faz referencia a seqencia de caracteres Xa-z e X10.
O que diferencia este mtodo de expanso dos demais que a existncia do arquivo/diretrio
opcional para gerao do resultado. Isto til para a criao de diretrios. Lembrando que os
4 tipos de curingas (*, ?, [], {}) podem ser usados juntos. Para entender melhor vamos
a prtica:
Captulo 2. Explicaes Bsicas 34
Vamos dizer que tenha 5 arquivo no diretrio /usr/teste: teste1.txt,teste2.txt,
teste3.txt,teste4.new,teste5.new.
Caso deseje listar todos os arquivos do diretrio /usr/teste voc pode usar o coringa *
para especicar todos os arquivos do diretrio:
cd /usr/teste e ls
*
ou ls /usr/teste/
*
.
No tem muito sentido usar o comando ls com * porque todos os arquivos sero listados se
o ls for usado sem nenhum Coringa.
Agora para listar todos os arquivos teste1.txt,teste2.txt,teste3.txt com excesso
de teste4.new, teste5.new, podemos usar inicialmente 3 mtodos:
1 Usando o comando ls
*
.txt que pega todos os arquivos que comeam com qualquer
nome e terminam com .txt.
2 Usando o comando ls teste?.txt, que pega todos os arquivos que comeam com
o nome teste, tenham qualquer caracter no lugar do coringa ? e terminem com
.txt. Com o exemplo acima teste
*
.txt tambm faria a mesma coisa, mas se tam-
bm tivssemos um arquivo chamado teste10.txt este tambm seria listado.
3 Usando o comando ls teste[1-3].txt, que pega todos os arquivos que comeam
com o nome teste, tenham qualquer caracter entre o nmero 1-3 no lugar da 6a letra
e terminem com .txt. Neste caso se obtm uma ltragem mais exata, pois o coringa ?
especica qualquer caracter naquela posio e [] especica nmeros, letras ou intervalo
que ser usado.
Agora para listar somente teste4.new e teste5.new podemos usar os seguintes mtodos:
1 ls
*
.new que lista todos os arquivos que terminam com .new
2 ls teste?.new que lista todos os arquivos que comeamcomteste, contenhamqual-
quer caracter na posio do coringa ? e terminem com .new.
3 ls teste[4,5].
*
que lista todos os arquivos que comeam com teste contenham
nmeros de 4 e 5 naquela posio e terminem com qualquer extenso.
Existem muitas outras formas de se fazer a mesma coisa, isto depende do gosto de cada um. O
que pretendi fazer aqui foi mostrar como especicar mais de um arquivo de uma s vez. O uso
de curingas ser til ao copiar arquivos, apagar, mover, renomear, e nas mais diversas partes
do sistema. Alias esta uma caracterstica do GNU/Linux: permitir que a mesma coisa possa
ser feita com liberdade de vrias maneiras diferentes.
35
Captulo 3
Hardware
Hardware tudo que diz respeito a parte fsica do computador. Nesta seo sero abordados
assuntos relacionados com a congurao de hardwares, escolha de bons hardwares, disposi-
tivos for Windows, etc.
3.1 Placa de expanso
um circuito eletrnico encaixado na placa me que tem por objetivo adicionar novas fun-
cionalidades ao computador. Esta placa pode ser uma:
placa de som - para fazer o computador emitir sons, msicas, ligar um joystick, etc.
Placa de vdeo 3D - Para obter imagens mais rpidas para jogos e ambientes de
desktop 3 dimenses
Placa de captura - Para assistir televiso/rdio e gravar a programao de TV em
seu micro.
fax-modem - para enviar/receber fax, conectar-se a internet, acesso remoto, bina, etc.
rede - para permitir a comunicao com outros computadores em uma rede interna
controladora de perifricos - Para ligar discos rgidos, unidades de disquete,
impressora, mouse, joystick, etc.
SCSI - Para ligar unidades de disco rgidos e perifricos de alto desempenho.
Controladora de Scanner - Para ligar um Scanner externo ao micro computador.
O encaixe da placa me que recebe as placas de expanso so chamados de Slots.
Captulo 3. Hardware 36
3.2 Nomes de dispositivos
Seria terrvel se ao congurar CADAprograma que utilize o mouse ou o modemprecisssemos
nos se referir a ele pela IRQ, I/O, etc. . . para evitar isso so usados os nomes de dispositivos.
Os nomes de dispositivos no sistema GNU/Linux so acessados atravs do diretrio /dev. Aps
congurar corretamente o modem, com sua porta I/O 0x2F8 e IRQ 3, ele identicado auto-
maticamente por /dev/ttyS1 (equivalente a COM2 no DOS). Daqui para frente basta se referir
a /dev/ttyS1 para fazer alguma coisa com o modem.
Voc tambm pode fazer um link de /dev/ttyS1 para um arquivo chamado /dev/modem
usando: ln -s /dev/ttyS1 /dev/modem, faa a congurao dos seus programas usando
/dev/modem ao invs de /dev/ttyS1 e se precisar recongurar o seu modem e a porta serial
mudar para /dev/ttyS3, ser necessrio somente apagar o link /dev/modem antigo e criar
um novo apontando para a porta serial /dev/ttyS3.
No ser necessrio recongurar os programas que usam o modem pois eles esto usando
/dev/modem que est apontando para a localizao correta. Isto muito til para um bom
gerenciamento do sistema.
Abaixo uma tabela com o nome do dispositivo no GNU/Linux, portas I/O, IRQ, DMA e nome
do dispositivo no DOS (os nomes de dispositivos esto localizados no diretrio /dev):
Dispos. Dispos.
Linux DOS IRQ DMA I/O
ttyS0 COM1 4 - 0x3F8
ttyS1 COM2 3 - 0x2F8
ttyS2 COM3 4 - 0x3E8
ttyS3 COM4 3 - 0x2E8
lp0 LPT1 7 3(ECP) 0x378
lp1 LPT2 5 3(ECP) 0x278
/dev/hda1 C: 14 - 0x1F0,0x3F6
/dev/hda2 D:
*
14 - 0x1F0,0x3F6
/dev/hdb1 D:
*
15 - 0x170,0x376
* A designao de letras de unidade do DOS no segue o padro do GNU/Linux e depende da
existncia de outras unidades fsicas/lgicas no computador.
3.3 Congurao de Hardware
A congurao consiste em ajustar as opes de funcionamento dos dispositivos (perifricos)
para comunicao coma placa me bemcomo a congurao do software correspondente para
fazer acesso ao hardware. Um sistema bem congurado consiste em cada dispositivo funcio-
nando com suas portas I/O, IRQ, DMA bem denidas, no existindo conitos com outros
dispositivos. Isto tambm permitir a adio de novos dispositivos ao sistema sem problemas.
Captulo 3. Hardware 37
Dispositivos PCI, PCI Express, AMR, CNR possuem congurao automtica de recursos de
hardware, podendo apenas ser ligados na mquina para serem reconhecidos pela placa me.
Aps isso dever ser feita a congurao do mdulo do kernel para que o hardware funcione
corretamente.
Os parmetros dos mdulos do kernel usados para congurar dispositivos de hardware so
a IRQ, DMA e I/O. Para dispositivos plug and play, como hardwares PCI, basta carregar o
mdulo para ter o hardware funcionando.
3.3.1 IRQ - Requisio de Interrupo
Existem dois tipos bsicos de interrupes: as usadas por dispositivos (para a comunicao
coma placa me) e programas (para obter a ateno do processador). As interrupes de software
so mais usadas por programas, incluindo o sistema operacional e interrupes de hardware mais
usado por perifricos. Daqui para frente ser explicado somente detalhes sobre interrupes
de hardware.
Os antigos computadores 8086/8088 (XT) usavam somente 8 interrupes de hardware
operando a 8 bits. Com o surgimento do AT foram includas 8 novas interrupes, operando a
16 bits. Os computadores 286 e superiores tem 16 interrupes de hardware numeradas de 0
a 15. No kernel 2.4 e superiores do Linux, a funo APIC (Advanced Programmable Interruption
Controller) permite gerenciar de forma avanada mais de 15 interrupes no sistema opera-
cional. Estas interrupes oferecem ao dispositivo associado a capacidade de interromper o
que o processador estiver fazendo, pedindo ateno imediata.
As interrupes do sistema podem ser visualizadas no kernel com o comando cat
/proc/interrupts. Abaixo um resumo do uso mais comum das 16 interrupes de hard-
ware:
0 Timer do Sistema - Fixa
01 Teclado - Fixa
02 Controlador de Interrupo Programvel - Fixa.
Esta interrupo usada como ponte para a IRQ 9 e vem dos
antigos processadores 8086/8088 que somente tinham 8 IRQs.
Assim, pera tornar processadores 8088 e 80286 comunicveis,
a IRQ 2 usada como um redirecionador quando se utiliza uma
interrupo acima da 8.
03 Normalmente usado por /dev/ttyS1 mas seu uso depende dos
dispositivos instalados em seu sistema (como fax-modem,
placas de rede 8 bits, etc).
04 Normalmente usado por /dev/ttyS0 e quase sempre usada pelo mouse
serial a no ser que um mouse PS2 esteja instalado no sistema.
Captulo 3. Hardware 38
05 Normalmente a segunda porta paralela. Muitos micros no tem a segunda
porta paralela, assim comum encontrar placas de som e outros
dispositivos usando esta IRQ.
06 Controlador de Disquete - Esta interrupo pode ser compartilhada
com placas aceleradoras de disquete usadas em tapes (unidades de fita).
07 Primeira porta de impressora. Pessoas tiveram sucesso compartilhando
esta porta de impressora com a segunda porta de impressora.
Muitas impressoras no usam IRQs.
08 Relgio em tempo real do CMOS - No pode ser usado por nenhum
outro dispositivo.
09 Esta uma ponte para IRQ2 e deve ser a ltima IRQ a ser
utilizada. No entanto pode ser usada por dispositivos.
10 Interrupo normalmente livre para dispositivos. O controlador
USB utiliza essa interrupo quando presente, mas no regra.
11 Interrupo livre para dispositivos
12 Interrupo normalmente livre para dispositivos. O mouse PS/2,
quando presente, utiliza esta interrupo.
13 Processador de dados numricos - No pode ser usada ou compartilhada
14 Esta interrupo usada pela primeira controladora de discos
rgidos e no pode ser compartilhada.
15 Esta a interrupo usada pela segunda controladora de discos
e no pode ser compartilhada. Pode ser usada caso a segunda
controladora esteja desativada.
Dispositivos ISA, VESA, EISA, SCSI no permitem o compartilhamento de uma mesma IRQ,
talvez isto ainda seja possvel caso no haja outras opes disponveis e/ou os dois dispositivos
no acessem a IRQ ao mesmo tempo, mas isto uma soluo precria.
Conitos de IRQ ocorriam nesse tipo de hardware acima ocasionando a parada ou mal
funcionamento de um dispositivo e/ou de todo o sistema. Para resolver um conito de
IRQs, deve-se conhecer quais IRQs esto sendo usadas por quais dispositivos (usando cat
/proc/interrupts) e congurar as interrupes de forma que uma no entre em conito
com outra. Isto normalmente feito atravs dos jumpers de placas ou atravs de software (no
caso de dispositivos jumperless ou plug-and-play).
Dispositivos PCI, PCI Express so projetados para permitir o compartilhamento de inter-
Captulo 3. Hardware 39
rupes. Se for necessrio usar uma interrupo normal, o chipset (ou BIOS) mapear a in-
terrupo para uma interrupo normal do sistema (normalmente usando alguma interrupo
entre a IRQ 9 e IRQ 12) ou usando APIC (se estiver congurado).
Prioridade das Interrupes
Cada IRQ no sistema tem um nmero que identica a prioridade que ser atendida pelo pro-
cessador. Nos antigos sistemas XT as prioridades eram identicadas em seqncia de acordo
com as interrupes existentes:
IRQ 0 1 2 3 4 5 6 7 8
PRI 1 2 3 4 5 6 7 8 9
Com o surgimento do barramento AT (16 bits), as interrupes passaram a ser identicadas da
seguinte forma:
IRQ 0 1 2 (9 10 11 12 13 14 15) 3 4 5 6 7 8
PRI 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Note que a prioridade segue em seqncia atravs da ponte da IRQ 2 para IRQ 9. Os disposi-
tivos com prioridade mais baixa so atendidos primeiro, mas uma diferena de desempenho
praticamente imperceptvel de ser notada nos sistemas atuais.
3.3.2 DMA - Acesso Direto a Memria
A DMA usada para permitir a transferncia de dados entre dispositivos I/O e a memria
sem precisar do processador para faz-lo. Ele livra esta carga do processador e resulta em uma
rpida transferncia de dados.
O PC padro tem dois controladores de DMA. O primeiro controla os canais 0, 1, 2, 3 e
o segundo os canais 4, 5, 6, 7, assim temos 8 canais. No entanto, o canal 4 perdido
porque usado pelo controlador de acesso direto a memria. Os canais 0-3 so chamados de canais
baixos porque podem somente mover um byte (8 bits) por transferncia enquanto canais altos
movem 2 bytes (16 bits) por transferncia.
Os dados movidos usando a DMA no so movidos atravs do controlador de DMA. Isto ofer-
ece uma limitao porque a DMA somente podem mover dados entre os dispositivos (portas
I/O) e a memria. No possvel mover dados entre as portas ou entre a memria.
Existem dois controladores de DMA nos computadores AT e superiores. Ao contrrio do que
acontece com os dois controladores de IRQ, o primeiro controlador ligado ao segundo e no
o segundo ao primeiro. Os canais de DMA altos (5 ao 7) somente podem ser acessados por
dispositivos de 16 bits (aqueles que utilizam a segunda parte do slot AT). Como resultado
temos 8 canais de DMA, de 0 a 7, sendo que a DMA 4 usada como ligao entre eles.
Os canais de DMA em uso no sistema podem ser visualizados com cat /proc/dma. Abaixo
uma listagem de uso mais comum dos canais de DMA.
Captulo 3. Hardware 40
DMA Barram. Uso
0 - Usada pelo circuito de refresh da memria DRAM
1 8/16 bits Normalmente usado por placas de som (canal 8 bits),
porta paralela ECP, adaptadoras SCSI, placas de rede ou
controladora de scanner.
2 8/16 bits Normalmente usado pela controladora de disquetes ou
controladoras de tapes.
3 8/6 bits Usado pela porta paralela ECP, placa de som,
controladoras de tapes, controladoras SCSI ou
controladora de scanner antiga.
4 - Usada como ponte para a outra controladora de DMA (0-3)
5 16 bits Normalmente usada pela placa de som (canal 16 bits),
placas controladoras SCSI, placas de rede ou
controladora de scanner.
6 16 bits Placa de som (canal 16 bits), controladora de scanner
ou placa de rede.
7 16 bits Placa de som (canal 16 bits), controladora de scanner
ou placa de rede.
Somente dispositivos ISA e derivados dele, como o EISA e VESA, usam os canais de DMA
padro. Os atuais dispositivos de alta taxa de transferncia (normalmente PCI) possuem seu
prprio controlador de DMA embutido, muito mais rpido do que a DMA padro. Este con-
trolador de DMA chamado de Bus Mastering e muito usado nos discos rgidos atuais e pode
atingir taxas de 33,3MB/s (no modo 2) e 66MB/s (no modo 4 - requer um cabo IDE com ater-
ramento para evitar interferncias de rudos externos).
Conitos de DMA
Umcanal de DMAno pode ser compartilhado entre dispositivos. Ainda possvel congurar
dois dispositivos para usarem um mesmo canal de DMA, desde que ele no seja usado ao
mesmo tempo. Isto acontece comScanners paralelos que compartilhama mesma porta paralela
com a impressora. Se voc for uma pessoa que explora os recursos de multitarefa de seu Linux
e seu desempenho, evite estes tipos de dispositivos, prera aqueles que utilizam seus prprios
recursos.
Quando ocorre um conito de DMA, os dados podem ser misturados e ocorrerem coisas es-
tranhas at o travamento total do sistema. Este tipo de conito difcil de se diagnosticar, a no
ser que o tcnico seja experiente o bastante e tenha desconado do que o problema se trata. . .
3.3.3 I/O - Porta de Entrada/Sada
Cada dispositivo possui um endereo de porta. O endereo uma localizao da memria
usada pelo computador para enviar dados ao dispositivo e onde o dispositivo envia dados ao
computador. Ao contrrios da IRQ e DMA, o dispositivo pode usar mais de uma porta de
Captulo 3. Hardware 41
Entrada/Sada ou uma faixa de endereos. Por exemplo, uma placa de som padro usa as
portas 0x220, 0x330 e 0x388, respectivamente audio digital, midi e opl3.
As placas de rede normalmente transferemgrandes quantidades de dados, assimocupamuma
faixa de endereos. Uma NE2000, por exemplo, ocupa a faixa de endereos 0x260 a 0x27F
(0x260-0x27F). O tamanho da faixa de endereos varia de acordo com o tipo de dispositivo.
Os endereos de I/O em uso no sistema podem ser visualizados com o comando cat
/proc/ioports.
Endereos das portas de entrada/sada no podem ser compartilhados
3.4 Hardwares congurveis por jumpers, dip-switches, jumperless
e Plug-and-Play.
3.4.1 Jumpers
Hardwares congurveis por jumpers (pinos metlicos protegidos por uma capa plstica) tem
sua congurao alterada atravs da colocao, retirada ou mudana de posio fsica do pino.
Este tipo de hardware, antigamente presente em placas ISA e VESA, no mais usado atual-
mente devido a congurao Plug and Play de dispositivos PCI, PCI express, etc.
As disposio dos jumpers so normalmente denidas em fechado/aberto e multi-posio. Na
disposio fechado/aberto, o jumper pode ou no ser colocado, denindo a congurao do
dispositivo:
::|::
Esta disposio facilmente encontrada na seleo de IRQ e I/O em placas de fax-modem.
Na disposio multi-posio, os pinos de encaixe so numerados de 1 a 3 (ou 1 a 4, 1 a 5, etc) e os
pinos podem ou no ser colocados na placa e a posio que so colocados tambm inuencia
os valores escolhidos para o funcionamento do dispositivo (a posio 1-2 especicam um valor
enquanto 2-3 especicam outro). A associao entre a posio dos jumpers e a congurao
desejada feita consultando o mapa desenhado no circuito impresso da placa ou o manual de
instrues da placa.
A congurao de jumper atravs de multi-posio normalmente usada em placas me para
denir a freqncia de operao do barramento, a freqncia de multiplicao ou o tipo do processador.
Se no possuir o mapa de congurao de sua placa e/ou o manual de instrues, ser
necessrio fazer um mapeamento manual da placa, mas para isto voc precisar conhecer de-
talhadamente a congurao de portas I/O, DMA, IRQ usadas na mquina que ser usada
e anotar as diferenas obtidas atravs da modicao da pinagem do dispositivo. Isto no
fcil, mas tcnicos de informtica experientes conhecero as armadilhas encontradas pelo
mapeamento manual de placas e faro o esquema de congurao completo do dispositivo,
Captulo 3. Hardware 42
obtendo um excelente manual de instrues. Nesta hora a experincia conta mais que o uso de
programas de diagnstico.
Outra caracterstica de hardwares congurados atravs de jumpers que raramente apresen-
tam problemas de funcionamento, a no ser que seus parmetros como IRQ, DMA, ou I/O
estejam em conitos com outro dispositivo, mas isso no culpa do fabricante e nem mesmo
do dispositivo. . .
3.4.2 Dip-Switches
a mesma coisa que os hardwares congurveis por jumpers exceto que so usados dip-
switches no lugar de jumpers. O dip-switches um conjunto de chaves numeradas que po-
dem ser colocadas para cima ou para baixo (como um disjuntor ou vrios interruptores
LIGA/DESLIGA colocados um ao lado do outro) para se modicar a congurao do disposi-
tivo.
3.4.3 Jumperless (sem jumper)
Os hardwares jumperless no possuem jumpers e so congurados atravs de um programa
que acompanha a prpria placa. Neste programa escolhida a IRQ, DMA, I/Oe a congurao
salva na prpria placa ou restaurada aps cada inicializao por um programa carregado na
memria. Devido a congurao via software, se obtm uma congurao xa com muito
mais facilidade do que via jumpers (por no haver a necessidade de se retirar a placa).
A maioria das placas jumperless podem funcionar tambm como Plug-and-Play. Existem
muitas placas de rede, fax-modem, scanner jumperless no mercado.
3.4.4 Plug-and-Play
O Plug-and-Play um protocolo que l os valores de operao disponveis para a placa e per-
mitem que o usurio possa especicar facilmente qual ser sua IRQ, DMA, I/O. Hardwares
PCI possuem congurao Plug-and-Play nativa, registrando suas interrupes, portas e dma
na tabela de hardwares PCI do sistema.
A diferena em relao ao modo jumperless que toda a congurao do hardware (IRQ,
DMA e I/O) feita pelo kernel do Linux, onde ele passa a congurao detectada durante a
inicializao do sistema para os mdulos carregados, garantindo o perfeito funcionamento do
dispositivos e evitando conitos. Na poca de hardwares ISAe VESA, o programa isapnp era
a preferencia para a congurao de placas ISA Plug and Play.
Veja a prxima seo para entender como funciona o arquivo de congurao isapnp.conf
e assim poder ativar seu dispositivo Plug-and-Play.
Captulo 3. Hardware 43
3.5 Listando as placas e outros hardwares em um computador
Administradores e tcnicos ao congurar uma mquina precisaro saber quais os hardwares
ela possui, perifricos e at mesmo a reviso de dispositivos e clock para congurar as coisas e
ver a necessidade de atualizaes de dispositivos atuais.
Dispositivos PCI/AMR/CNR podem ser listados executando o comando cat /proc/pci.
Outra forma de listar tais dispositivos usando o lspci, se voc precisa de mais detalhes
como o mapeamento de memria, use lspci -vv.
O mapeamento de memria de dispositivos podem ser mostrados com o comando cat
/proc/ioports, ou usando o comando lsdev.
O barramento USB e dispositivos conectados a ele podem ser listados com o comando lsusb
ou com cat /proc/bus/usb/devices.
Hardwares disponveis na mquina, como placa me, clock multiplicador, discos, placas di-
versas, verses e nmeros seriais de dispositivos podem ser mostrados atravs do comando
lshw. Use lshw -html para produzir a listagem em formato HTML, bem interessante para
relatrios :-)
3.6 Conitos de hardware
Ocorre quando um ou mais dispositivos usam a mesma IRQ, I/O ou DMA. Um sistema com
conguraes de hardware em conito tem seu funcionamento instvel, travamentos con-
stantes, mal funcionamento de um ou mais dispositivos e at mesmo, em casos mais graves,
a perda de dados. Conitos geralmente ocorriam em placas ISA, VESA onde era necessrio
conhecer e usar uma tabela de valores padres para a congurao de perifricos (como a
mostrada no inicio desse captulo).
Para resolver conitos de hardware necessrio conhecer a congurao de cada dispos-
itivo em seu sistema. Os comandos cat /proc/interrupts, cat /proc/dma e cat
/proc/ioports podem ser teis para se vericar as conguraes usadas.
3.7 Barramento
O tipo de slot varia de acordo com o barramento usado no sistema, que pode ser um(s) do(s)
seguinte(s):
ISA 8 Bits Industry Standard Architecture - o padro mais antigo, encontrado em
computadores PC/XT.
ISA 16 Bits Evoluo do padro ISA 8 Bits, possui um conector maior e permite a conexo de
placas de 8 bits. Sua taxa de transferncia chega a 2MB/s.
VESA Video Electronics Standard Association - uma interface feita inicialmente
para placas de vdeo rpidas. O barramento VESA basicamente um ISA com um en-
caixe extra no nal. Sua taxa de transferncia pode chegar a 132MB/s.
Captulo 3. Hardware 44
EISA Enhanced Industry Standard Architecture - um barramento mais encon-
trado em servidores. Tem a capacidade de bus mastering, que possibilita a comunicao
das placas sem a interferncia da CPU.
MCA Micro Channel Architecture - Barramento 32 bits proprietrio da IBM. Voc no
pode usar placas ISA nele, possui a caracterstica de bus mastering, mas pode procurar
por dispositivos conectados a ele, procurando congurao automtica. Este barramento
estava presente no PS/1 e PS/2, hoje no mais usado.
PCI Peripheral Component Interconnect - outro barramento rpido produzido pela
Intel com a mesma velocidade que o VESA. O barramento possui um chipset de controle
que faz a comunicao entre os slots PCI e o processador. O barramento se congura
automaticamente (atravs do Plug-and-Play). O PCI o barramento mais usado por
Pentiums e est se tornando uma padro no PC.
PCI Express Peripheral Component Interconnect Express - Identico ao barra-
mento PCI, funcionando nativamente no clock de 64 bits.
AGP Accelerated Graphics Port - um novo barramento criado exclusivamente para
a ligao de placas de video. um slot marrom (em sua maioria) que ca mais separado
do ponto de xao das placas no chassis (comparado ao PCI). Estas placas permitem
obter um desempenho elevado de vdeo se comparado as placas onboards com memria
compartilhada e mesmo PCI externas. O consumo de potncia em placas AGP x4 podem
chegar at a 100W, portanto importante dimensionar bem o sistema e ter certeza que a
fonte de alimentao pode trabalhar com folga.
PCMCIA Personal Computer Memory Card International Association - um
slot especial usado para conexes de placas externas (normalmente revestivas de pls-
tico) e chamadas de cartes PCMCIA. Estes cartes podem adicionar mais memria ao
sistema, conter um fax-modem, placa de rede, disco rgido, etc. Os cartes PCMCIA so
divididos em 3 tipos:
Tipo 1 Tem a espessura de 3.3 milmetros, e podem conter mais memria RAM ou
memria Flash.
Tipo 2 Tem a espessura de 5 milmetros e capacidade de operaes I/O. um tipo
usado para placas de fax-modem, rede, som. Computadores que aceitam cartes
PCMCIA do tipo 2, mantm a compatibilidade com o tipo 1.
Tipo 3 Tem a espessura de 10.5 milmetros e normalmente usado para discos rgidos
PCMCIA. Slots PCMCIA do tipo 3 mantm a compatibilidade com o tipo 2 e 1.
AMR Audio Modem Raise - Pequeno barramento criado pela Intel para a conexo de placas
de some modem. Placas de some modemAMR usamo HSP (host signal processor) e so
como as Placas on-board e todo o processamento feito pela CPU do computador (veja
detalhes em Placas on-board / off-board on the next page e Hardwares especcos ou
For Windows on page 46. Sua vantagem o preo: um modem ou placa de som AMR
custa em torno de R$ 25,00.
CNR Communication and Networking Rise - Pequeno barramento criado pela Intel
para a conexo de placas de som, modens e placas de rede. Este um pequenino slot
marrom que localizado no ponto de xao das placas no chassis do gabinete. Elas so
como as Placas on-board e todo o processamento feito pela CPU do computador (veja
detalhes em Placas on-board / off-board on the next page e Hardwares especcos ou
For Windows on page 46.
Captulo 3. Hardware 45
3.8 Placas on-board / off-board
Placas on-board so embutidas na placa me (motherboard). Placas off-board so placas externas
encaixadas nos slots de expanso da placa me.
No inicio da era do PC/XT todos as placas eram embutidas na placa me (na poca eram
somente a placa de vdeo e controladora). Com o surgimento do padro AT, diversas empresas
de informtica desenvolveram dispositivos concorrentes e assim o usurio tinha a liberdade
de escolha de qual dispositivo colocar em sua placa me (ou o mais barato ou o de melhor
qualidade e desempenho), isto permitiu a adio de perifricos de qualidade sem romper com
seu oramento pessoal (comprando uma placa de som, depois uma de fax-modem, placa de
vdeo melhor, etc).
Atualmente parece que voltamos ao ponto de partida e tudo vem embutido na placa me
(on-board) e o usurio no tem como escolher qual dispositivo usar em seu computador.
muito difcil (praticamente impossvel) encontrar uma placa me que satisfaa completamente
as necessidades do usurio ou recomendaes de um bom tcnico de informtica (a no ser
que seja um tcnico experiente e encontre alguma alternativa).
Certamente o nico dispositivo que funciona melhor se embutido na placa me a placa con-
troladora de perifricos. Esta placa usada para se conectar unidades de disquete, discos rgidos,
CD-ROM, portas seriais, paralelas, joystick ao computador. Os HDs conectados em uma con-
troladora embutida conseguem ter um desempenho muito maior do que em placas conectadas
externamente, sem causar nenhum tipo de problema.
Hardwares embutidos na placa me (como fax-modem, vdeo, som) so em mdia 30% mais
baratos que os vendidos separadamente mas quase sempre so usados dispositivos de baixo
desempenho e qualidade para reduzir o preo da placa me e quase sempre usados hardwares
For Windows.
Hoje em dia por causa do preo da placa me, comum encontrar pessoas que vericam so-
mente o preo e sequer procuram saber ou conhecem a qualidade das placas embutidas na
placa me. Pior ainda encontrar vendedores despreparados que sequer sabem explicar o
porque que uma placa de som Sound Blaster 128 mais cara que uma de modelo genrico. . .
Geralmente dispositivos on-board trazem problemas caso tal dispositivo queime e geralmente
colocado um hardware de baixa qualidade para baratear o custo de placas me, que na maio-
ria das vezes tambm oferece grande diculdade para ser congurada no Linux.
Outro perifrico que traz problemas e carga para o processador o fax-modem for Windows,
HSP, AMR, micromodem, etc. utilizando o processador do sistema para realizar seu trabalho
e algumas vezes no trazem nem mesmo o chip UART. Isso resulta em perda de qualidade na
conexo e maior consumo telefnico.
Se voc estiver em uma situao destas, certamente os computadores de menor potncia e com
hardwares inteligentes (que possuem seus prprios chips de controle e processamento) no
tero o desempenho comprometido. O preo pode ser maior mas voc estar pagando por um
dispositivo de melhor qualidade e que certamente trar benefcios a voc e ao seu sistema.
Consulte um tcnico em informtica experiente para te indicar uma placa me de bom preo e
de qualidade. muito comum encontrar falta de prossionalismo em pessoas que no sabem
Captulo 3. Hardware 46
distinguir as caractersticas, funes e vantagens entre uma placa de boa qualidade e um hard-
ware for Windows a no ser o preo mais barato.
3.9 Hardwares especcos ou For Windows
Esta seo foi retirada do manual de instalao da Debian GNU/Linux. Uma tendncia que
perturba a proliferao de Modens e impressoras especcos para Windows. Em muitos
casos estes so especialmente fabricados para operar com o Sistema Operacional Microsoft
Windows e costumam ter a legenda WinModem, for Windows, ou Feito especialmente
para computadores baseados no Windows.
Geralmente estes dispositivos so feitos retirando os processadores embutidos daquele hard-
ware e o trabalho deles so feitos por drivers do Windows que so executados pelo processador
principal do computador. Esta estratgia torna o hardware menos caro, mas o que poupado
no passado para o usurio e este hardware pode at mesmo ser mais caro quanto disposi-
tivos equivalentes que possuem inteligncia embutida.
Voc deve evitar o hardware baseado no Windows por duas razes:
1 O primeiro que aqueles fabricantes no tornam os recursos disponveis para criar um
driver para Linux. Geralmente, o hardware e a interface de software para o dispositivo
proprietria, e a documentao no disponvel sem o acordo de no revelao, se ele
estiver disponvel. Isto impede seu uso como software livre, desde que os escritores de
software grtis descubram o cdigo fonte destes programas.
2 A segunda razo que quando estes dispositivos tem os processadores embutidos re-
movidos, o sistema operacional deve fazer o trabalho dos processadores embutidos, fre-
qentemente em prioridade de tempo real, e assim a CPU no esta disponvel para exe-
cutar programas enquanto ela esta controlando estes dispositivos.
Assim o usurio tpico do Windows no obtm um multi-processamento to intensivo
como um usurio do Linux, o fabricante espera que aquele usurio do Windows sim-
plesmente no note a carga de trabalho que este hardware pe naquela CPU. No entanto,
qualquer sistema operacional de multi-processamento, at mesmo Windows 9X, XP e
Vista, so prejudicados quando fabricantes de perifricos retiram o processador embu-
tido de suas placas e colocam o processamento do hardware na CPU.
Voc pode ajudar a reverter esta situao encorajando estes fabricantes a lanarem a documen-
tao e outros recursos necessrios para ns desenvolvermos drivers para estes hardwares,
mas a melhor estratgia simplesmente evitar estes tipos de hardwares at que ele esteja lis-
tado no HOWTO de hardwares compatveis com Linux.
Note que hoje j existem muitos drivers para WinModems e outros hardwares for Windows
para o Linux. Veja a lista de hardwares compatveis no HARDWARE-HOWTO ou procure o
driver no site do fabricante de seu dispositivo. Mesmo assim a dica evitar hardwares for
Windows e comprar hardwares inteligentes onde cada um faz sua funo sem carregar a CPU.
Captulo 3. Hardware 47
3.10 Dispositivos especcos para GNU/Linux
Esta seo foi retirada do manual de instalao da Debian GNU/Linux. Existem diversos
vendedores, agora, que vendem sistemas com a Debian ou outra distribuio do GNU/Linux
pr-instaladas. Voc pode pagar mais para ter este privilgio, mas compra um nvel de
paz de mente, desde ento voc pode ter certeza que seu hardware bem compatvel com
GNU/Linux. Praticamente todas as placas que possuem processadores prprios funcionam
sem nenhum problema no Linux (algumas placas da Turtle Beach e mwave tem suporte de
som limitado).
Se voc tiver que comprar uma mquina com Windows instalado, leia cuidadosamente a li-
cena que acompanha o Windows; voc pode rejeitar a licena e obter um desconto de seu
vendedor.
Se no estiver comprando umcomputador comGNU/Linux instalado, ou at mesmo umcom-
putador usado, importante vericar se os hardwares existentes so suportados pelo kernel
do GNU/Linux. Verique se seu hardware listado no Hardware Compatibility HOWTO, na
documentao do cdigo fonte do kernel no diretrio Documentation/sound ou consulte
um tcnico de GNU/Linux experiente.
Deixe seu vendedor (se conhecer) saber que o que est comprando para um sistema
GNU/Linux. Desta forma isto servir de experincia para que ele poder recomendar o mesmo
dispositivo a outras pessoas que procurambons dispositivos para sistemas GNU/Linux. Apie
vendedores de hardwares amigos do GNU/Linux.
3.11 Conguraes de Dispositivos
As sees abaixo explicam como fazer conguraes em dispositivos diversos no sistema
Linux como placas de rede, som, gravador de CD entre outras.
3.11.1 Congurando uma placa de rede
Para congurar sua placa de rede no Linux siga os passos a seguir:
1 Identique se sua placa de rede ISA ou PCI. Caso seja ISA, pode ser preciso alterar a
congurao de jumpers ou plug-and-play, evitando conitos de hardware ou o no fun-
cionamento da placa (veja como congura-la em Hardwares congurveis por jumpers,
dip-switches, jumperless e Plug-and-Play. on page 41.
2 Identique a marca/modelo de sua placa. O programa lshw til para isto. Caso sua
placa seja PCI ou CNR, execute o comando lspci e veja a linha Ethernet. Em ltimo
caso, abra a mquina e procure a marca na prpria placa. Quase todos os fabricantes
colocam a marca da placa no prprio circuito impresso ou no CI principal da placa (nor-
malmente o maior).
3 Depois de identicar a placa, ser preciso carregar o mdulo correspondente para ser
usada no Linux. Em algumas instalaes padres o suporte j pode estar embutido no
Captulo 3. Hardware 48
kernel, neste caso, voc poder pular este passo. Para carregar um mdulo, digite o co-
mando modprobe modulo (Veja modprobe on page 210) . Em placas ISA, geralmente
preciso passar a IRQ e porta de I/O como argumentos para alocar os recursos correta-
mente. O modprobe tentar auto-detectar a congurao em placas ISA, mas ela poder
falhar por algum motivo. Por exemplo, para uma NE 2000: modprobe ne io=0x300
irq=10. Para evitar a digitao destes parmetros toda vez que a mquina for iniciada
recomendvel coloca-lo no arquivo /etc/modules.conf da seguinte forma:
options ne io=0x300 irq=10
A partir de agora, voc pode carregar o mdulo de sua placa NE 2000 apenas com o
comando modprobe ne. O parmetro io=0x300 irq=10 ser automaticamente adi-
cionado. Emsistemas Debian, o local correto para colocar as opes de ummdulo em
arquivos separados localizados dentro de /etc/modutils. Crie um arquivo chamado
/etc/modutils/ne e coloque a linha:
options ne io=0x300 irq=10
Depois disso, execute o comando update-modules para o sistema gerar um novo ar-
quivo /etc/modules.conf com todos os mdulos de /etc/modutils e substituir o
anterior.
4 Aps carregar o mdulo de sua placa de rede, resta apenas congurar seus parmetros
de rede para coloca-la em rede. Veja Atribuindo um endereo de rede a uma interface
(ifcong) on page 189.
3.11.2 Congurando uma placa de SOM no Linux
A congurao de dispositivos de audio no Linux simples, bastando carregar o mdulo da
placa e ajustar o mixer. Atualmente existem 2 padres de som no sistema Linux: OSS (Open
Sound System) e ALSA (Advanced Linux Sound Architecture).
O OSS foi o primeiro padro adotado em sistemas Linux, que tinha como grande limitao a
diculdade em usar diversas placas e a impossibilidade dos programas utilizaram ao mesmo
tempo a placa de som. O ALSA mais novo, suporta full duplex e outros recursos adicionais,
alm de manter a compatibilidade com OSS. O ALSA um padro mais moderno e garante
mais performance para a CPU da mquina, principalmente para a exibio de vdeos, etc.
Congurando uma placa de som usando o padro OSS
OSS o presente por padro desde que o suporte a som foi includo no kernel. Para congurar
uma placa de sompara usar este sistema de som, primeiro compile seu kernel como suporte ao
mdulo de sua placa de som. Caso seja uma placa ISA, voc provavelmente ter que habilitar
a seo Open Sound System para ver as opes disponveis (entre elas, a Sound Blaster e
compatveis). Uma olhada na ajuda de cada mdulo deve ajuda-lo a identicar quais placas
cada opo do kernel suporta.
Caso seu kernel seja o padro de uma distribuio Linux, provavelmente ter o suporte a
todas as placas de som possveis. Siga o passo a passo abaixo para congurar sua placa de som
no sistema:
Captulo 3. Hardware 49
1 Primeiro descubra se sua placa de som ISA. Caso seja, verique se os seus recursos
esto alocados corretamente (veja Conitos de hardware on page 43). Caso seja PCI,
AMR, execute o comando lspci, procure pela linha Multimedia e veja o nome da
placa. Voc tambm poder executar o comando lshw para descobrir qual placa voc
possui (veja Listando as placas e outros hardwares em um computador on page 43)
para detalhes.
2 Carregue o mdulo da placa de som com o comando modprobe mdulo (veja mod-
probe on page 210). Na Debian, voc pode executar o comando modconf para navegar
visualmente entre os mdulos disponveis e carregar os mdulos necessrios. Algumas
placas (principalmente ISA) requerem que seja especicado o recurso de hardware sejam
passados para seu mdulo, ou simplesmente voc quer especicar isto para manter o uso
de hardware sobre seu controle. Alguns dos parmetros mais usados em placas Sound
Blaster so os seguintes:
modprobe sb io=0x220 irq=5 dma=1 dma16=5 mpu_io=0x330
Para evitar ter que passar estes parmetros todas as vezes para o mdulo, voc poder
coloca-los no arquivo /etc/modules.conf da seguinte forma:
options sb io=0x220 irq=5 dma=1 dma16=5 mpu_io=0x330
Assim, quando der o comando modprobe sb ele ser carregado com as opes acima.
Na distribuio Debian, voc dever criar um arquivo chamado /etc/modutils/sb
contendo a linha acima, depois execute o update-modules para juntar todos os ar-
quivos do /etc/modutils e criar o /etc/modules.conf.
3 Aps carregar o mdulo correto de sua placa de som, seu sistema de som dever estar
funcionando. Se voc utiliza uma distribuio Linux, os dispositivos de somcomo /dev
/audio, /dev/dsp, /dev/mixer estaro criados e ento poder passar para o prximo
passo. Caso no existam, entre no diretrio /dev e execute o comando MAKEDEV audio.
4 O prximo passo consiste em instalar um programa para controle de volume, tonali-
dade e outros recursos de sua placa de som. O recomendado o aumix por ser simples,
pequeno e funcional, e permitindo restaurar os valores dos nveis de volumes na inicial-
izao (isso evita que tenha que ajustar o volume toda vez que iniciar o sistema). Caso o
aumix aparea na tela, sua placa de somj est funcionando! Caso acesse o sistema como
usurio, no se esquea de adicionar seu usurio ao grupo audio para ter permisso de
usar os dispositivos de som: adduser usuario audio .
3.11.3 Congurando um gravador de CD/DVD no Linux
Caso seu gravador seja IDE, veja Congurando o suporte a um gravador IDE on the current
page caso seja um autntico gravador com barramento SCSI, v at Congurando o suporte a
um gravador SCSI on the following page.
Congurando o suporte a um gravador IDE
Caso tenha um gravador IDE e use um kernel 2.6 ou superior, no necessrio fazer qual-
quer congurao, pois seu gravador j est pronto para ser usado, sendo acessado atravs
de seu dispositivo tradicional (/dev/hdc, /dev/hdd, etc). De qualquer forma, voc poder
Captulo 3. Hardware 50
realizar a congurao da unidade IDE com emulao SCSI, assim como utilizava no kernel
2.4 e inferiores seguindo as instrues abaixo.
Para congurar seu gravador de CD/DVD IDE para ser usado no Linux usando o mtodo
para o kernel 2.4 e inferiores, siga os seguintes passos:
1 Tenha certeza que compilou o suporte as seguintes caractersticas no kernel:
Em "ATA/IDE/MFM/RLL support" marque as opes:
*
Include IDE/ATAPI CDROM support
*
SCSI emulation support
Depois em "SCSI support" marque as opes:
*
SCSI support
M SCSI CD-ROM Support
M SCSI Generic Support
As opes marcadas como * sero embutidas no kernel e as M como mdulos. Note
que ambas as opes IDE/ATAPI CDROM e SCSI Emulation foram marcadas como
embutidas. Isto faz com que o driver ATAPI tenha prioridade em cima do SCSI, mas vou
explicar mais adiante como dizer para o kernel para carregar o suporte a SCSI para de-
terminada unidade. Isto til quando temos mais de 1 unidade de CD IDE no sistema e
queremos congurar somente o gravador para SCSI, pois alguns aplicativos antigos no
se comunicam direito tanto com gravadores SCSI como emulados. Voc tambm pode
marcar somente a opo SCSI Emulation para que sua(s) unidade(s) seja(m) automati-
camente emulada(s) como SCSI. Caso tenha usado esta tcnica, v at a seo Testando
o funcionamento on the next page.
2 O prximo passo identicar o dispositivo de CD/DVD. Isto feito atravs do comando
dmesg. Supondo que sua unidade de CD hdc (primeiro disco na segunda contro-
ladora IDE) e que compilou ambos o suporte a IDE ATAPI e SCSI emulation no
kernel, adicione o argumento hdc=ide-scsi no /etc/lilo.conf ou no grub:
# Lilo
vmlinuz=/vmlinuz
append="hdc=ide-scsi"
Isto diz para o kernel que a unidade hdc usar emulao ide-scsi. Caso tenha outras
unidades de CD no sistema, estas ainda utilizao ATAPI como protocolo de comunicao
padro. Execute o lilo para gerar novamente o setor de inicializao com as modicaes e
reinicie o computador.
OBS: Cuidado ao colocar um disco rgido IDE como hdc! A linha hdc=ide-scsi dever ser
retirada, caso contrrio, seu disco rgido no ser detectado.
Agora, siga at Testando o funcionamento on the facing page.
Congurando o suporte a um gravador SCSI
Caso tenha um autentico gravador SCSI, no ser preciso fazer qualquer congurao de em-
ulao, a unidade estar pronta para ser usada, desde que seu suporte esteja no kernel. As
seguintes opes do kernel so necessrias para funcionamento de gravadores SCSI:
Captulo 3. Hardware 51
Depois em "SCSI support" marque as opes:
*
SCSI support
M SCSI CD-ROM Support
M SCSI Generic Support
Alm disso, deve ser adicionado o suporte EMBUTIDO no kernel a sua controladora SCSI. Se
o seu disco rgido tambm SCSI, e seu CD est ligado na mesma controladora SCSI, ela j
est funcionando e voc poder seguir para o passo Testando o funcionamento on the current
page. Caso contrrio carregue o suporte da sua placa adaptadora SCSI antes de seguir para
este passo.
Testando o funcionamento
Para testar se o seu gravador, instale o pacote wodim e execute o comando: wodim -scanbus
para vericar se sua unidade de CD-ROM detectada.
Voc dever ver uma linha como:
scsibus0:
0,0,0 0) CREATIVE CD-RW RWXXXX 1.00 Removable CD-ROM
0,1,0 1)
*
0,2,0 2)
*
Oque signica que sua unidade foi reconhecida perfeitamente pelo sistema e j pode ser usada
para gravao. V at a seo Gravando CDs e DVDs no Linux on page 279 para aprender
como gravar CDs no Linux. Note que gravadores IDE nativos, no so listados com esse
comando.
3.11.4 Congurando o gerenciamento de energia usando o APM
OAPM(Advanced Power Management - Gerenciamento Avanado de Energia) permite que sistemas
gerenciem caractersticas relacionadas com o uso e consumo de energia do computador. Ele
opera a nvel de BIOS e tenta reduzir o consumo de energia de vrias formas quando o sistema
no estiver em uso (como reduzindo o clock da CPU, desligar o HD, desligar o monitor, etc.).
O uso de advanced power management tambm permite que computadores com fonte de
alimentao ATX sejam desligados automaticamente quando voc executa o comando halt.
Caso sua mquina tenha suporte a ACPI, este dever ser usado como preferncia ao invs
do APM por ter recursos mais sosticados (veja Congurando o gerenciamento de energia
usando ACPI on the next page).
Para ativar o suporte a APM no Linux, compile seu kernel com o suporte embutido a APM
e tambm a Advanced Power Management (seno sua mquina no desligar sozinha no
halt). Caso deseje compilar como mdulo, basta depois carregar o mdulo apm adicionando no
Captulo 3. Hardware 52
arquivo /etc/modules. Depois disso instale o daemon apmd para gerenciar as caractersticas
deste recurso no sistema.
Voc pode desativar o uso de APM de 3 formas: removendo seu suporte do kernel, passando
o argumento apm=off (quando compilado estaticamente no kernel) ou removendo o nome do
mdulo do arquivo /etc/modules (quando compilado como mdulo). Depois disso remova
o daemon apmd.
3.11.5 Congurando o gerenciamento de energia usando ACPI
O ACPI (Advanced Conguration and Power Interface - Interface de Congurao e Gerenciamento
de Energia Avanado) uma camada de gerenciamento de energia que opera a nvel de sistema
operacional. Apresenta os mesmos recursos que o APM, e outros como o desligamento da
mquina por teclas especiais de teclado, controle de brilho e contraste de notebooks, suspend
para RAM, suspend para disco, reduo de velocidade de CPU manualmente, monitoramento
de perifricos, temperatura, hardwares, etc.
Desta forma, o ACPI varia de sistema para sistema em questes relacionadas com suporte a
recursos especiais, estes dados so armazenados em tabelas chamadas DSDT. O Linux inclui
suporte a recursos ACPI genricos entre placas me, recursos especcos devem ser extrados
diretamente da BIOS e disassemblados manualmente para a construo de um kernel com
suporte especco a tabela DSDT do hardware (no falarei das formas de se fazer disso aqui,
somente do suporte genrico).
Quanto mais nova a verso do kernel, maiores as chances do seu hardware ser suportado
plenamente pelo ACPI, principalmente no caso de notebooks. Para compilar estaticamente,
marque com Y a opo ACPI, depois marque os mdulos que voc quer que ele monitore:
button (boto power), fan (ventoinhas), etc. Se compilou como mdulo, adicione o nome do
mdulo acpi no arquivo /etc/modules. No h problema em compilar tambm o suporte
a APM, pois no causar problemas com um kernel com ACPI tambm compilado.
Caso no saiba quais mdulos ACPI seu sistema aceita, marque o suporte a todos e carregue-
os. Aps isto, entre no diretrio /proc/acpi e de um ls entrando nos diretrios e vendo
se existem arquivos dentro deles. Remova o mdulo correspondente daqueles que no tiver
contedo.
Aps isto, instale o daemon acpid e congure-o para monitorar algumas caractersticas do
seu sistema. Por padro o acpid monitora o boto POWER, assim se voc pressionar o power,
seu sistema entrar automaticamente emrun-level 0, fechando todos os processos e desligando
sua mquina.
O suporte a ACPI pode ser desativado de 3 formas: Removendo seu suporte do kernel, pas-
sando o argumento acpi=off ao kernel (caso esteja compilado estaticamente) ou removendo
o mdulo de /etc/modules (caso tenha compilado como mdulo. Aps isto, remova o dae-
mon acpid do seu sistema.
Captulo 3. Hardware 53
3.11.6 Ativando WakeUP on Lan
Algumas placas me ATX possuem suporte a este interessante recurso, que permite sua
mquina ser ligada atravs de uma rede. Isto feito enviando-se uma seqncia especial de
pacotes diretamente para o MAC (endereo fsico) da placa de rede usando um programa es-
pecial.
Para usar este recurso, seu sistema dever ter as seguintes caractersticas:
Placa me ATX
Fonte de alimentao ATX compatvel com o padro 2.0, com fornecimento de pelo
menos 720ma de corrente na sada +3v.
Placa de rede com suporte a WakeUP-on-Lan (WOL), voc poder conrmar isto vendo
um conector branco de 3 terminais instalado na placa que o local onde o cabo wake-up
conectado.
Suporte na BIOS tambm dever ter a opo para WakeUP-on-Lan.
Com todos esses tens existentes, instale em uma mquina da rede o pacote etherwake. De-
pois disso, pegue o MAC address a placa de rede da mquina que tem o wakeup on lan e na
mquina da rede onde instalou o pacote execute o seguinte comando:
ether-wake AA:BB:CC:DD:EE:FF
Onde AA:BB:CC:DD:EE:FF o endereo MAC da placa de rede. A mquina dever ligar e
realizar o procedimento padro de POST normalmente.
Algumas das situaes onde o WOL no funciona quando sua rede controlada por Switches
(devido a natureza de funcionamento deste equipamentos) ou caso esteja atrs de um roteador
que no faz proxy arp.
Captulo 3. Hardware 54
55
Captulo 4
Para quem esta migrando (ou pensando
em migrar) do DOS/Windows para o
Linux
Este captulo explica as diferenas e particularidades do sistema GNU/Linux comparado ao
Windows, DOS e uma lista de equivalncia entre comandos e programas executados no CMD do
Windows/DOS e GNU/Linux, que pode servir de comparao para que o usurio possa con-
hecer e utilizar os comandos/programas GNU/Linux que tem a mesma funo no ambiente
DOS/Windows.
4.1 Quais as diferenas iniciais
Quando entrar pela primeira vez no GNU/Linux (ou qualquer outro UNIX, a primeira
coisa que ver ser a palavra login: escrita na tela.
A sua aventura comea aqui, voc deve ser uma pessoa cadastrada no sistema (ter uma
conta) para que poder entrar. No login voc digita seu nome (por exemplo, gleydson)
e pressiona Enter. Agora ser lhe pedida a senha, repare que a senha no mostrada
enquanto digitada, isto serve de segurana e para enganar pessoas que esto prximas
de voc tocando algumas teclas a mais enquanto digita a senha e fazendo-as pensar
que voc usa uma grande senha ;-) (com os asteriscos aparecendo isto no seria possvel).
Caso cometa erros durante a digitao da senha, basta pressionar a tecla Back Space
para apagar o ltimo caracter digitado e terminar a entrada da senha.
Pressione Enter, se tudo ocorrer bem voc estar dentro do sistema e ser presenteado
com o smbolo # (caso tenha entrado como usurio root) ou $ (caso tenha entrado como
um usurio normal).
Existe um mecanismo de segurana que te alerta sobre eventuais tentativas de entrada
no sistema por intrusos usando seu login, faa um teste: entre com seu login e digite a
senha errada, na segunda vez entre com a senha correta no sistema. Na penltima linha
Captulo 4. Para quem esta migrando (ou pensando em migrar) do DOS/Windows para o
Linux 56
das mensagens aparece uma mensagem 1 failure since last login, o que quer dizer 1
falha desde o ltimo login. Isto signica que algum tentou entrar 1 vez com seu nome
e senha no sistema, sem sucesso.
A conta root no tem restries de acesso ao sistema e pode fazer tudo o que quiser,
equivalente ao usurio normal do DOS e Windows. Use a conta root somente para
manutenes no sistema e instalao de programas, qualquer movimento errado pode
comprometer todo o sistema. Para detalhes veja A conta root on page 174.
No GNU/Linux os diretrio so identicados por uma / e no por uma \ como acontece
no DOS. Para entrar no diretrio /bin, voc deve usar cd /bin.
Os comandos so case-sensitive, o que signica que ele diferencia as letras mais-
culas de minsculas em arquivos e diretrios. O comando ls e LS so completamente
diferentes.
A multitarefa lhe permite usar vrios programas simultaneamente (no pense que mul-
titarefa somente funciona em ambientes grcos, pois isto errado!). Para detalhes veja
Execuo de programas on page 109.
Os dispositivos tambm so identicados e uma forma diferente que no DOS por exem-
plo:
DOS/Windows Linux
------------- ---------------
A: /dev/fd0
B: /dev/fd1
C: /dev/hda1 ou /dev/sda1
LPT1 /dev/lp0
LPT2 /dev/lp1
LPT3 /dev/lp2
COM1 /dev/ttyS0
COM2 /dev/ttyS1
COM3 /dev/ttyS2
COM4 /dev/ttyS3
Os recursos multiusurio lhe permite acessar o sistema de qualquer lugar sem instalar
nenhum driver, ou programa gigante, apenas atravs de conexes TCP/IP, como a In-
ternet. Tambm possvel acessar o sistema localmente com vrios usurios (cada um
executando tarefas completamente independente dos outros) atravs dos Terminais Vir-
tuais. Faa um teste: pressione ao mesmo tempo a tecla ALT e F2 e voc ser levado para
o segundo Terminal Virtual, pressione novamente ALT e F1 para retornar ao anterior.
Para reiniciar o computador, voc pode pressionar CTRL+ALT+DEL (como usurio
root) ou digitar shutdown -r now. Veja Reiniciando o computador on page 22 para
detalhes .
Captulo 4. Para quem esta migrando (ou pensando em migrar) do DOS/Windows para o
Linux 57
Para desligar o computador, digite shutdown -h now e espere o aparecimento da men-
sagem Power Down para apertar o boto LIGA/DESLIGA do computador. Veja Desli-
gando o computador on page 21 para detalhes.
4.2 Comandos equivalentes entre DOS/CMD do Windows e o Linux
Esta seo contm os comandos equivalentes entre estes dois sistemas e a avaliao entre am-
bos. Grande parte dos comandos podem ser usados da mesma forma que no DOS, mas os
comandos Linux possuem avanos para utilizao neste ambiente multiusurio/multitarefa.
O objetivo desta seo permitir as pessoas com experincia em DOS fazer rapidamente no
GNU/Linux as tarefas que fazem no DOS. A primeira coluna tem o nome do comando no
DOS, a segunda o comando que possui a mesma funo no GNU/Linux e na terceira coluna as
diferenas.
DOS Linux Diferenas
-------- ------------ --------------------------------------------------
cls clear Sem diferenas.
dir ls -la A listagem no Linux possui mais campos (as
permisses de acesso) e o total de espao ocupado
no diretrio e livre no disco deve ser visto
separadamente usando o comando du e df.
Permite tambm listar o contedo de diversos
diretrios com um s comando (ls /bin /sbin /...).
dir/s ls -lR Sem diferenas.
dir/od ls -tr Sem diferenas.
cd cd Poucas diferenas. cd sem parmetros retorna ao
diretrio de usurio e tambm permite o uso
de "cd -" para retornar ao diretrio anteriormente
acessado.
del rm Poucas diferenas. O rm do Linux permite
especificar diversos arquivos que sero apagados
(rm arquivo1 arquivo2 arquivo3). Para ser mostrados
os arquivos apagados, deve-se especificar o
parmetro "-v" ao comando, e "-i" para pedir
a confirmao ao apagar arquivos.
md mkdir Uma s diferena: No Linux permite que vrios
diretrios sejam criados de uma s vez
(mkdir /tmp/a /tmp/b...).
copy cp Poucas diferenas. Para ser mostrados os arquivos
enquanto esto sendo copiados, deve-se usar a
opo "-v", e para que ele pergunte se deseja
substituir um arquivo j existente, deve-se usar
a opo "-i".
echo echo Sem diferenas.
Captulo 4. Para quem esta migrando (ou pensando em migrar) do DOS/Windows para o
Linux 58
path path No Linux deve ser usado ":" para separar os
diretrios e usar o comando
"export PATH=caminho1:/caminho2:/caminho3:"
para definir a varivel de ambiente PATH.
O path atual pode ser visualizado atravs
do comando "echo $PATH".
ren mv Poucas diferenas. No Linux no possvel
renomear vrios arquivos de uma s vez
(como "ren
*
.txt
*
.bak"). necessrio usar
um shell script para fazer isto.
type cat Sem diferenas.
ver uname -a Poucas diferenas (o uname tem algumas opes
a mais).
date date No Linux mostra/modifica a Data e Hora do sistema.
time date No Linux mostra/modifica a Data e Hora do sistema.
attrib chmod O chmod possui mais opes por tratar as permisses
de acesso de leitura, gravao e execuo para
donos, grupos e outros usurios.
chkdsk fsck O fack mais rpido e a checagem mais abrangente.
scandisk fsck O fsck mais rpido e a checagem mais abrangente.
doskey ----- A memorizao de comandos feita automaticamente pelo
bash.
edit vi, ae, O edit mais fcil de usar, mas usurio
emacs, mcedit experientes apreciaro os recursos do vi ou
o emacs (programado em lisp).
fdisk fdisk, cfdisk Os particionadores do Linux trabalham com
praticamente todos os tipos de parties de
diversos sistemas de arquivos diferentes.
format mkfs.ext3 Poucas diferenas, precisa apenas que seja
especificado o dispositivo a ser formatado
como "/dev/fd0" ou "/dev/hda10" (o
tipo de identificao usada no Linux), ao
invs de "A:" ou "C:".
help man, info Sem diferenas.
interlnk plip O plip do Linux permite que sejam montadas
redes reais a partir de uma conexo via Cabo
Paralelo ou Serial. A mquina pode fazer tudo
o que poderia fazer conectada em uma rede
(na realidade uma rede e usa o TCP/IP como
protocolo) inclusive navegar na Internet, enviar
e-mails, irc, etc.
intersvr plip Mesmo que o acima.
keyb loadkeys Sem diferenas (somente que a posio das
teclas do teclado pode ser editada.
Desnecessrio para a maioria dos usurios).
label e2label necessrio especificar a partio que ter
Captulo 4. Para quem esta migrando (ou pensando em migrar) do DOS/Windows para o
Linux 59
o nome modificado.
mem cat /proc/meminfo Mostra detalhes sobre a quantidade de dados
top em buffers, cache e memria virtual (disco).
more more, less O more equivalente a ambos os sistemas, mas
o less permite que sejam usadas as setas para
cima e para baixo, o que torna a leitura do
texto muito mais agradvel.
move mv Poucas diferenas. Para ser mostrados os arquivos
enquanto esto sendo movidos, deve-se usar a
opo "-v", e para que ele pergunte se deseja
substituir um arquivo j existente deve-se usar
a opo "-i".
scan clamav Os principais fabricantes disponibilizam anti-virus
para Linux, na maioria das vezes para integrar a
servidores de arquivos, e-mails, protegendo estaes
Windows. Infeces por vrus so raras no Linux devido
as restries do usurio durante execuo de
programas (quando corretamente utilizadas).
backup tar O tar permite o uso de compactao (atravs do
parmetro -z) e tem um melhor esquema de
recuperao de arquivos corrompidos que j
segue evoluindo h 30 anos em sistemas UNIX.
print lpr O lpr mais rpido e permite at mesmo
impresses de grficos ou arquivos compactados
diretamente caso seja usado o programa
magicfilter. o programa de Spool de
impressoras usados no sistema Linux/Unix.
vol e2label Sem diferenas.
xcopy cp -R Pouca diferena, requer que seja usado a
opo "-v" para mostrar os arquivos que
esto sendo copiados e "-i" para pedir
confirmao de substituio de arquivos.
4.2.1 Arquivos de congurao
Os arquivos config.sys e autoexec.bat so equivalentes aos arquivos do diretrio /etc
especialmente o /etc/inittab e arquivos dentro do diretrio /etc/init.d .
4.3 Usando a sintaxe de comandos DOS no Linux
Voc pode usar os comandos do pacote mtools para simular os comandos usados pelo DOS
no GNU/Linux, a diferena bsica que eles tero a letra m no inicio do nome. Os seguintes
comandos so suportados:
mattrib - Ajusta modica atributos de arquivos
Captulo 4. Para quem esta migrando (ou pensando em migrar) do DOS/Windows para o
Linux 60
mcat - Mostra os dados da unidade de disquete em formato RAW
mcd - Entra em diretrios
mcopy - Copia arquivos/diretrios
mdel - Exclui arquivos
mdeltree - Exclui arquivos, diretrios e sub-diretrios
mdir - Lista arquivos e diretrios
mdu - Mostra o espao ocupado pelo diretrio do DOS
mformat - Formatador de discos
minfo - Mostra detalhes sobre a unidade de disquetes
mlabel - Cria um volume para unidades DOS
mmd - Cria diretrios
mmount - Monta discos DOS
mmove - Move ou renomeia arquivos/subdiretrios
mpartition - Particiona um disco para ser usado no DOS
mrd - Remove um diretrio
mren - Renomeia arquivos
mtype - Visualiza o contedo de arquivos (equivalente ao cat)
mtoolstest - Exibe a congurao atual do mtools
mshowfat - Mostra a FAT da unidade
mbadblocks - Procura por setores defeituosos na unidade
mzip - Altera modo de proteo e ejeta discos em unidades Jaz/ZIP
mkmanifest - Cria um shell script para restaurar nomes extensos usados no UNIX
mcheck - Verica arquivos na unidade
4.4 Programas equivalentes entre Windows/DOS e o Linux
Esta seo contmprogramas equivalentes para quemest vindo do DOS e Windows e no sabe
o que usar no GNU/Linux. Esta seo tambm tem por objetivo permitir ao usurio que ainda
no usa GNU/Linux decidir se a passagem vale a pena vendo se o sistema tem os programas
que precisa.
Note que esta listagem mostra os programas equivalentes entre o DOS/Windows e o
GNU/Linux cabendo a voc a deciso nal de migrar ou no. Lembrando que possvel
usar o Windows, OS/2, DOS, OS/2 e GNU/Linux no mesmo disco rgido sem qualquer tipo
de conito. A listagem abaixo pode estar incompleta, se encontrar algum programa que no
esteja listado aqui, por favor entre emcontato pelo E-Mail <gleydson@guiafoca.org> para
inclui-lo na listagem.
DOS/Windows Linux Diferenas
----------- ---------- -------------------------------
MS Word Open Office, O Open Office possui todos os
recursos do Word alm de ter
a interface grfica igual, menus
e teclas de atalho idnticas ao
Word, o que facilita a migrao.
Captulo 4. Para quem esta migrando (ou pensando em migrar) do DOS/Windows para o
Linux 61
Tambm trabalha com arquivos
no formato Word97/2000 e no
vulnervel a vrus de macro.
distribudo gratuitamente e
no requer pagamento de licena
podendo ser instalado em quantos
computadores voc quiser (tanto
domsticos como de empresas).
MS Excel Open Office Mesmos pontos do acima e tambm
abre arquivos Excel97/2000.
MS PowerPoint Open Office Mesmos pontos do acima.
MS Access MySQL, PostgreSQL Existem diversas ferramentas de
Oracle conceito para bancos de dados
corporativos no Linux. Todos
produtos compatveis com outras
plataformas.
MS Outlook Pine, evolution Centenas de programas de E-Mail
mutt, sylpheed, tanto em modo texto como em
icedove modo grfico. Instale, avalie
e escolha.
MS Internet Explorer Firefox, Opera, Os trs primeiros para modo
Mozilla, lynx. grfico e o lynx opera em
modo texto.
ICQ LICQ, PIDGIM, SIM Muito prtico e fcil de
operar. Possibilita a mudana
completa da aparncia do programa
atravs de Skins. A organizao
dos menus deste programa outro
ponto de destaque.
MSN AMSN, PIDGIM Permite conversar diretamente com
usurios do Microsoft MSN.
Photo Shop The Gimp Fcil de usar, possui
muitos scripts que permitem
a criao rpida e fcil de
qualquer tipo de efeito
profissional pelo usurio
mais leigo. Acompanha centenas
de efeitos especiais e um
belo manual em html com muitas
fotos (aproximadamente 20MB) que
mostra o que possvel se fazer
com ele.
Corel Photo Paint GIMP Corel Photo-Paint para
Corel Draw Inkscape, Sodipodi Programas equivalentes
Autocad Qcad Programa com funes genricas
Visio dia Possui funcionalidades identicas
Captulo 4. Para quem esta migrando (ou pensando em migrar) do DOS/Windows para o
Linux 62
e timo conjunto de cones
winamp xmms Possui todos os recursos do
programa para Windows alm
de filtros que permite acrescentar
efeitos digitais da msica (em
tempo real), eco, etc.
media player mplayer,playmidi Programas para execuo de
xwave, arquivos de msica e videos
multimdia. Existem outras
alternativas, a escolha
depende de seu gosto e da
sofisticao do programa.
Agente de Sistema cron Pouca diferena. O cron
da mais liberdade na programao
de tarefas a serem executadas
pelo Linux.
Mixer aumix, cam Sem diferenas.
Bate-Papo talk, ytalk O talk e o ytalk permite a
conversa de dois usurios no
s atravs de uma rede local,
mas de qualquer parte do
planeta, pois usa o protocolo
tcp/ip para comunicao. Muito
til e fcil de usar.
MIRC Bitchx, xchat Clientes IRC para Linux
IIS, Pers. Web Server Apache O apache o servidor WEB mais
usado no mundo (algo em torno
de 75% das empresas), muito
rpido e flexvel de se
configurar.
Exchange, NT Mail Postfix, Sendmail 72% da base de servidores de
Exim, Qmail emails no mundo atualmente roda
em software livre. Os mais recomendados
so o Postfix e o qmail, devido a
segurana, velocidade e integridade
de mensagem
Wingate, MS Proxy Squid, Apache, A migrao de um servidor proxy
ip masquerade, para Linux requer o uso de
nat, diald, vrios programas separados para
exim, que se tenha um resultado
profissional. Isto pode parecer
incomodo no comeo, mas voc logo
perceber que a diviso de servios
entre programas mais produtivo.
Quando desejar substituir um
deles, o funcionamento dos
Captulo 4. Para quem esta migrando (ou pensando em migrar) do DOS/Windows para o
Linux 63
outros no sero afetados.
No vou entrar em detalhes sobre os
programas citados ao lado, mas o squid
um servidor proxy Web (HTTP e
HTTPS) completo e tambm apresenta um
excelente servio FTP.
Possui outros mdulos como dns, ping,
restries de acesso, limites de
tamanho de arquivos, cache, etc.
MS Frontpage Mozilla Sem comentrios... todas so
e muitas outras ferramentas para a gerao
ferramentas para de grandes Web Sites. O wdm,
gerao de contedo por exemplo, usado na gerao
WEB (como zope, do site da distribuio Debian
php3, php4, wdm, (http://www.debian.org) em 30
htdig) idiomas diferentes.
MS Winsock Sem equivalente O Linux tem suporte nativo a
tcp/ip desde o comeo de sua
existncia e no precisa de
nenhuma camada de comunicao
entre ele e a Internet. A
performance aproximadamente
10% maior em conexes Internet
via fax-modem e outras redes tcp/ip.
AVG, Viruscan, Clamavis, AVG Os maiores fabricantes de anti-virus
norton, F-PROT, CPAV. F-Prot, ViruScan disponibilizam verses para Linux,
com o objetivo principal de remoo
de vrus em servidores de E-mail ou
servidores de arquivos, com o objetivo
de no contaminar os vulnerveis
sistemas Windows, servindo como uma
efetiva barreira de defesa na rede.
Captulo 4. Para quem esta migrando (ou pensando em migrar) do DOS/Windows para o
Linux 64
65
Captulo 5
Discos e Parties
Este captulo traz explicaes de como manipular discos rgidos e parties no sis-
tema GNU/Linux e como acessar seus discos de CD-ROM e parties DOS, Windows
9X/XP/Vista/Seven no GNU/Linux.
Tambm ser ensinado como formatar uma partio ou arquivo em formato EXT2, EXT3,
reiserfs, xfs e usar a ferramenta mkswap (para criar uma partio ou arquivo de memria
virtual).
5.1 Parties
So divises existentes no disco rgido que marcam onde comea onde termina um sistema de
arquivos. As parties nos permitem usar mais de um sistema operacional no mesmo com-
putador (como o GNU/Linux, Windows e DOS), ou dividir o disco rgido em uma ou mais
partes para ser usado por um nico sistema operacional ou at mesmo por diferentes arquite-
turas (32 e 64 bits).
Para gravar os dados, o disco rgido deve ser primeiro particionado (usando o cfdisk,
parted, diskdruid, fdisk), escolher o tipo da partio (Linux Native, Linux Swap, etc) e
depois aquela partio deve ser formatada com o mkfs.ext3 (veja Partio EXT3 (Linux Na-
tive) on page 70).
Aps criada e formatada, a partio ser automaticamente identicada como um dispositivo
no diretrio /dev (veja Identicao de discos e parties em sistemas Linux on page 85) . e
dever ser montada (Montando (acessando) uma partio de disco on page 86) para permitir
seu uso no sistema.
Uma partio de disco no interfere em outras parties existentes, por este motivo possvel
usar o Windows, GNU/Linux e qualquer outro sistema operacional no mesmo disco. Para
escolher qual deles ser inicializado, veja Gerenciadores de Partida (boot loaders) on page 89.
Para particionar (dividir) o disco rgido em uma ou mais partes necessrio o uso de um
programa de particionamento. Os programas mais conhecidos para particionamento de discos
no GNU/Linux so fdisk, cfdisk e o Disk Druid.
Captulo 5. Discos e Parties 66
Lembre-se:
Quando se apaga uma partio, voc estar apagando TODOS os arquivos existentes
nela!
A partio do tipo Linux Native (Tipo 83) a usada para armazenar arquivos no
GNU/Linux, tanto ext2, ext3, ext4, reiserfs, xfs, etc. Para detalhes veja Partio EXT2
(Linux Native) on the facing page.
A partio do tipo Linux Swap (Tipo 82) usada como memria virtual. Para detalhes
veja Partio Linux Swap (Memria Virtual) on page 75.
Em sistemas novos, comum encontrar o Windows instalado em uma partio que
consome TODO o espao do disco rgido. Uma soluo para instalar o GNU/Linux
apagar a partio Windows e criar trs com tamanhos menores (uma para o Windows,
uma para o GNU/Linux e outra para a Memria Virtual do Linux (SWAP). Ou criar ape-
nas 2 se voc no quiser mais saber mais do Windows ;-) A outra soluo usar o
parted (e gparted sua verso grca), que trabalha com FAT16, FAT32, NTFS. Esta
tcnica tambm chamada de Reparticionamento no destrutivo (e o outro ob-
viamente Reparticionamento destrutivo). Para sistemas que foram formatados
em Windows XP e superiores, possvel que o parted no consiga redimensionar o
sistema, neste caso voc pode reparticionar usando ferramentas como o ntfsresize ou
Partition Magic (para Windows).
Para mais detalhes sobre discos, parties ou como particionar seu disco, veja algum bom doc-
umento sobre particionamento (como a pgina de manual e documentao do fdisk, cfdisk,
parted ou Disk Druid).
5.2 Sistema de Arquivos
criado durante a formatao da partio de disco (quando se usa o comando mkfs.ext3).
Aps a formatao toda a estrutura para leitura/gravao/permisses de arquivos e diretrios
pelo sistema operacional estar pronta para ser usada. Normalmente este passo feito durante
a instalao de sua distribuio GNU/Linux.
Cada sistema de arquivos tem uma caracterstica em particular mas seu propsito o mesmo:
Oferecer ao sistema operacional a estrutura necessria para ler/gravar os arquivos/diretrios.
Entre os sistemas de arquivos existentes posso citar:
Ext2 - Usado em parties Linux Nativas para o armazenamento de arquivos. identi-
cado pelo cdigo 83. Seu tamanho deve ser o suciente para acomodar todo os arquivos
e programas que deseja instalar no GNU/Linux (voc encontra isto no manual de sua dis-
tribuio). Voc dever usar preferencialmente o ext3 para a instalao de seu sistema
operacional. Para detalhes veja Partio EXT2 (Linux Native) on the facing page.
Ext3 - Este sistema de arquivos possui melhorias em relao ao ext2, como destaque o
recurso de jornaling e suporte a arquivos de at 16Gb. Ele tambm identicado pelo
tipo 83 e totalmente compatvel com o ext2 em estrutura. O journal mantm um log de
todas as operaes no sistema de arquivos, caso acontea uma queda de energia eltrica
(ou qualquer outra anormalidade que interrompa o funcionamento do sistema), o fsck
verica o sistema de arquivos no ponto em que estava quando houve a interrupo, evi-
Captulo 5. Discos e Parties 67
tando a demora para checar todo um sistema de arquivos (que pode levar minutos em
sistemas de arquivos muito grandes). Para detalhes veja Partio EXT3 (Linux Native)
on page 70.
Reiserfs - Possui os mesmos recursos do ext3, mas seu design bastante diferente.
Bastante recomendavel para sistemas que possuem muitos arquivos pequenos (servidor
web, etc). Possui o tempo de recuperao em caso de queda de energia menor que o ext3.
Para detalhes veja Sistema de arquivos reiserfs on page 73.
Swap - Usado em parties Linux Swap para oferecer memria virtual ao sistema. Note
que altamente recomendado o uso de uma partio Swap no sistema (principalmente
se voc tiver menos que 16MB de memria RAM). Este tipo de partio identicado
pelo cdigo 82. Para detalhes veja Partio Linux Swap (Memria Virtual) on page 75.
proc - Sistema de arquivos do kernel (veja O sistema de arquivos /proc on page 78).
FAT12 - Usado em disquetes no DOS. No possui suporte a permisses, journaling.
FAT16 - Usado no DOS e oferece suporte at discos de 2GB. No possui suporte a per-
misses e journaling.
FAT32 - Tambm usado no DOS e oferece suporte a discos de at 2 Terabytes. No possui
suporte a permisses e journaling. NTFS - Formato nativo de discos de sistemas opera-
cionais Windows XP e superiores. Possui suporte a permisses de acesso e compactao
nativa.
5.3 Partio EXT2 (Linux Native)
A partio EXT2 o tipo usado para criar o sistema de arquivos Linux Native usado para
armazenar o sistema de arquivos EXT2 (aps a formatao) e permitir o armazenamento de
dados. Para detalhes de como criar uma partio EXT2 veja Criando um sistema de arquivos
EXT2 em uma partio on the next page.
Este tipo de partio normalmente identicado pelo cdigo 83 nos programas de particiona-
mento de disco. Note que tambm possvel criar um sistema de arquivos EXT2 em um
arquivo (ao invs de uma partio) que poder ser montado e acessado normalmente pelo
sistema de arquivos (veja Criando um sistema de arquivos EXT2 em um arquivo on the fol-
lowing page.
Logo que foi inventado, o GNU/Linux utilizava o sistema de arquivos Minix (e consequente-
mente uma partio Minix) para o armazenamento de arquivos. Com a evoluo do desen-
volvimento, foi criado o padro EXT (Extended Filesystem) e logo evoluiu para o EXT2 (Second
Extended Filesystem). O padro mais usado nos dias de hoje o EXT3 devido ao Journaling
(ser abordado no prximo captulo).
Entre as vantagens do EXT2 para armazenamento de arquivos esto: o mais rpido devido ao
no uso de journaling (principalmente para Netbooks e dispositivos ash), no se fragmenta
to facilmente pois permite a localizao do melhor lugar onde o arquivo se encaixa no disco,
etc. Isto til para grandes ambientes multiusurio onde vrias pessoas gravam/apagam
arquivos o tempo todo.
Captulo 5. Discos e Parties 68
5.3.1 Criando um sistema de arquivos EXT2 em uma partio
Outilitrio usado para formatar uma partio EXT2 o mkfs.ext2. Aps terminar este passo,
seu sistema de arquivos EXT2 estar pronto para ser usado.
Aps particionar seu disco rgido e criar uma (ou vrias) parties EXT2, use o comando:
mkfs.ext2 /dev/sda?
Onde a ? em sda? signica o nmero da partio que ser formatada. A identicao da
partio mostrada durante o particionamento do disco, anote se for o caso. sda normalmente
o primeiro disco rgido SATA, sdb o segundo disco rgido SATA. Discos IDE normalmente
so identicados por hda?, hdb?, etc. Para detalhes sobre a identicao de discos, veja Iden-
ticao de discos e parties em sistemas Linux on page 85.
Algumas opes so teis ao mkfs.ext2:
-c Procura blocos danicados na partio antes de criar o sistema de arquivos.
-L NOME Coloca um nome (label) no sistema de arquivos.
-b NUM Dene o tamanho do bloco, em bytes.
-m NUM Dene a porcentagem de espao em disco reservada para manuteno (por
padro reservado para o root, mas isto altervel).
Agora para acessar a partio dever ser usado o comando: mount /dev/sda? /mnt -t
ext2
Para mais detalhes veja Montando (acessando) uma partio de disco on page 86.
Note que possvel criar um sistema de arquivos no disco rgido sem criar uma partio us-
ando /dev/sda, /dev/sdb, etc. EVITE FAZER ISSO! Como no estar criando uma par-
tio, o disco estar divido de maneira incorreta, voc no poder apagar o sistema de arquivos
completamente do disco caso precise (lembre-se que voc no criou uma partio), e a partio
possui uma assinatura apropriada que identica o sistema de arquivos.
Oespao padro reservado na partio para o usurio root de 5%. Emsistemas comparties
maiores que 10Gb, isso pode representar uma grande quantidade de espao em disco no
utilizada por outros usurios. Veja a opo -m sobre como fazer esta modicao. Caso j
tenha criado a partio, isto pode ser feito no tune2fs com a opo -m.
5.3.2 Criando um sistema de arquivos EXT2 em um arquivo
possvel criar um sistema de arquivos EXT2 em um arquivo que poder ser montado e aces-
sado normalmente como se fosse uma partio normal. Isto possvel por causa do recurso
loop oferecido pelo kernel do GNU/Linux. Os dispositivos de loop esto disponveis no
diretrio /dev com o nome loop? (normalmente esto disponveis 8 dispositivos de loop).
Isto possvel usando o comando dd e o mkfs.ext2. Veja passo a passo como criar o sistema
de arquivos EXT2 em um arquivo:
Captulo 5. Discos e Parties 69
1 Use o comando dd if=/dev/zero of=/tmp/arquivo-ext2 bs=1024
count=10000 para criar um arquivo arquivo-ext2 vazio de 10Mb de tamanho
em /tmp. Voc pode modicar os parmetros de of para escolher onde o arquivo ser
criado, o tamanho do arquivo poder ser modicado atravs de count
2 Formate o arquivo com mkfs.ext2 /tmp/arquivo-ext2. Ele primeiro dir que o
arquivo arquivo-ext2 no um dispositivo de bloco especial (uma partio de disco)
e perguntar se deve continuar, responda com y.
O sistema de arquivos EXT2 ser criado em /tmp/arquivo-ext2 e estar pronto para
ser usado.
3 Monte o arquivo arquivo-ext2 com o comando: mount /tmp/arquivo-ext2
/mnt -o loop=/dev/loop1. Note que foi usado o parmetro -o loop para dizer
ao comando mount para usar os recursos de loop do kernel para montar o sistema
de arquivos.
4 Conra se o sistema de arquivos EXT2 em arquivo-ext2 foi realmente montado no
sistema de arquivos digitando df -T. Para detalhes, veja df on page 132.
Pronto! o que voc gravar para /mnt ser gravado dentro do arquivo /tmp/arquivo-ext2.
Como foi criado um sistema de arquivos EXT2 emarquivo-ext2, voc poder usar todos os
recursos da partio EXT2 normal, como permisses de arquivos e diretrios, links simblicos,
etc.
O uso da opo loop=/dev/loop1 permite que o dispositivo /dev/loop1 seja associado ao
arquivo /arquivo-ext2 e assim permitir sua montagem e uso no sistema.
Voc poder usar apenas -o loop com o comando mount, assim o kernel gerenciar
automaticamente os dispositivos de loop.
Caso faa isto manualmente, lembre-se de usar dispositivos /dev/loop? diferentes
para cada arquivo que montar no sistema. Pois cada um faz referncia a um nico ar-
quivo.
5.4 Journaling
O sistema de journaling grava qualquer operao que ser feita no disco em uma rea especial
chamada journal, assim se acontecer algum problema durante alteraes no disco, ele pode
voltar ao estado anterior do arquivo, ou nalizar a operao.
Desta forma, o journal acrescenta ao sistema de arquivos o suporte a alta disponibilidade e
maior tolerncia a falhas. Aps uma falha de energia, por exemplo, o journal analisado
durante a montagem do sistema de arquivos e todas as operaes que estavam sendo feitas
no disco so vericadas. Dependendo do estado da operao, elas podem ser desfeitas ou
nalizadas. O retorno do servidor praticamente imediato (sem precisar a enorme espera da
execuo do fsck em parties maiores que 10Gb), garantindo o rpido retorno dos servios da
mquina.
Captulo 5. Discos e Parties 70
Outra situao que pode ser evitada com inconsistncias no sistema de arquivos do servi-
dor aps a situao acima, fazendo o servidor car em estado single user e esperando pela
interveno do administrador. Este captulo do guia explica a utilizao de journaling usando
o sistema de arquivos ext3 e reiserfs (veja Partio EXT3 (Linux Native) on this page para
detalhes).
5.5 Partio EXT3 (Linux Native)
O sistema de arquivos ext3 faz parte da nova gerao extended le system do Linux, sendo o
padro atual e temcomo seu maior benefcio o suporte a journaling e armazenamento eciente
de arquivos com at 16Gb de tamanho.
O uso deste sistema de arquivos comparado ao ext2, na maioria dos casos, melhora o desem-
penho do sistema de arquivos atravs da gravao seqencial dos dados na rea de metadados
e acesso mhash a sua rvore de diretrios. Mas pode trazer impactos na performance no caso
de dispositivos de memria ash e quando utiliza arquivos para armazenar o sistema de ar-
quivos.
A estrutura da partio ext3 semelhante a ext2, o journaling feito em um arquivo
chamado .journal que ca oculto pelo cdigo ext3 na raiz da partio (desta forma ele no
poder ser apagado, comprometendo o funcionamento do sistema). A estrutura idntica da
partio ext3 com a ext2 torna mais fcil a manuteno do sistema, j que todas as ferramentas
para recuperao ext2 funcionaro sem problemas.
5.5.1 Criando um sistema de arquivos EXT3 em uma partio
Para criar uma partio ext3, utilize o comando mkfs.ext3 ou o mkfs.ext2 junto com a
opo -j. As opes usadas pelo mkfs.ext3 so idnticas a do mkfs.ext2 (documentado em
Criando umsistema de arquivos EXT2 emuma partio on page 68). Anica vantagemdesta
ferramenta comparada ao mkfs.ext2 que a opo -j automaticamente adicionada a linha
de comando para criar umsistema de arquivos comjournal. Se voc daqueles que queremter
um controle maior sobre o tamanho do arquivo de journal, use a opo -J [tam] (onde tamanho
o tamanho em Megabytes).
Quando uma partio ext3 criada, o arquivo .journal criado no raz da partio, sendo
usado para gravar os metadados das transaes de journaling. A estrutura da partio ext2
no difere em nada da ext3, a no ser este arquivo e a opo has_journal que passada a
partio.
Por exemplo, para criar uma partio ext3 em /dev/sda1:
mkfs.ext3 /dev/sda1
ou
mkfs.ext2 -j /dev/sda1
Captulo 5. Discos e Parties 71
Basta agora montar a partio com o comando mount /dev/sda1 /teste -t ext3 (para
montar a partio em /teste. Aps isto, modique o /etc/fstab para montar a partio
como ext3 quando o Linux for iniciado. Para mais detalhes veja Montando (acessando) uma
partio de disco on page 86. ). Caso o suporte a ext3 tenha sido compilado no kernel, ele
tentar detectar e montar a partio como ext3, caso contrrio, ele usar ext2.
Sua partio agora est montada como ext3, para conferir digite: df -T.
OBS: Quando criar um sistema de arquivos ext3 em uma partio raz (/), tenha certeza de
incluir o suporte a ext3 embutido no kernel, caso contrrio a partio ser montada como ext2.
5.5.2 Criando um sistema de arquivos EXT3 em um arquivo
As instrues para criar um sistema de arquivos ext3 em um arquivo no difere muito das
instrues de Criando um sistema de arquivos EXT2 em um arquivo on page 68, apenas
utilize a opo -j ou -J [tamanho_em_mb] (como explicado em Criando um sistema de arquivos
EXT3 em uma partio on the facing page).
5.5.3 Fazendo a converso do sistema de arquivos EXT2 para EXT3
Se voc j possui um uma partio ext2 e deseja converte-la para ext3 isto poder ser feito
facilmente, de forma segura (sem qualquer risco de perda de dados) e voc poder voltar para
o sistema ext2 caso deseje (veja Convertendo de EXT3 para EXT2 on the next page).
Primeiro, execute o comando tune2fs na partio que deseja converter com a opo -j ou -J
[tamanho_journal] para adicionar o suporte a Journaling na partio. Este comando poder ser
executado com segurana em uma partio ext2 montada, aps converter remontar a partio
usando os comandos umount /particao e mount /particao.
Aps a converso para ext3 desnecessria a checagem peridica do sistema de arquivos (que
por padro aps 20 montagens e a cada 30 dias). Voc pode desativar a checagem aps o
nmero mximo de montagens com a opo -c [num_vezes], e o nmero de dias mximos antes
de vericar novamente com a opo -i [num_dias] (o uso de 0 desativa). Por exemplo:
tune2fs -c 0 -i 90 /dev/sda2
Desativa a checagem aps nmero mximo de montagens (-c 0) e diz para a partio ser
vericada a cada 90 dias (-i 90).
O ltimo passo modicar o /etc/fstab para que a partio seja montada como ext3 na
inicializao e depois desmontar (umount /dev/sda2 e remonta-la (mount /dev/sda2) para
usar o suporte ext3. Conra se ela est usando ext3 usando o comando df -T.
OBS: Caso a partio convertida para ext3 seja a raz (/), tenha certeza de incluir o suporte a
ext3 embutido no kernel, caso contrrio, a partio ser montada como ext2.
Captulo 5. Discos e Parties 72
5.5.4 Convertendo de EXT3 para EXT2
Remover o suporte a ext3 de uma partio simples, rpido e seguro. Execute os seguintes
passos:
1 Execute o comando tune2fs -O^has_journal /dev/sdxx na partio que deseja
remover o Journal. Este comando poder ser executado em uma partio montada.
2 Modique o /etc/fstab e altere a partio para ext2.
3 Desmonte e monte novamente a partio com os comandos: umount /dev/hdxx e
mount /dev/sdxx.
4 Pronto! a partio agora novamente uma partio ext2 normal, conra digitando df
-T.
Pronto, o suporte a ext3 foi removido do seu sistema e agora poder usar a partio como ext2
normalmente (conra digitando df -T).
5.5.5 Nomeando uma partio de disco ext2/ext3
O comando e2label usado para esta funo.
e2label [dispositivo] [nome]
Onde:
dispositivo Partio que ter o nome modicado
nome Nome que ser dado a partio (mximo de 16 caracteres). Caso seja usado um nome
de volume com espaos, ele dever ser colocado entre aspas.
Se no for especicado um nome, o nome atual da partio ser mostrado. O nome da partio
tambm pode ser visualizado atravs do comando dumpe2fs (veja dumpe2fs on the facing
page).
Exemplo: e2label /dev/sda1 FocaLinux, e2label /dev/sda1 Foca Linux
5.5.6 Criando o diretrio especial lost+found
O utilitrio mklost+found cria o diretrio especial lost+found no diretrio atual. O
diretrio lost+found criado automaticamente aps a formatao da partio com o
mkfs.ext2, a funo deste diretrio pr-alocar os blocos de arquivos/diretrio durante a ex-
ecuo do programa fsck.ext2 na recuperao de um sistema de arquivos (veja Checagem
dos sistemas de arquivos on page 287). Isto garante que os blocos de disco no precisaro ser
diretamente alocados durante a checagem.
mklost+found
OBS: Este comando s funciona em sistemas de arquivos ext2/3/4
Exemplo: cd /tmp;mklost+found;ls -a
5.5.7 dumpe2fs
Mostra detalhes sobre uma partio Linux.
Captulo 5. Discos e Parties 73
dumpe2fs [opes] [partio]
Onde:
partio Identicao da partio que ser usada.
opes
-b Mostra somente os blocos marcado como defeituosos no sistema de arquivos especicado.
Este comando lista diversas opes teis do sistema de arquivos como o tipo do sistema de ar-
quivos, caractersticas especiais, nmero de inodos, blocos livres, tamanho do bloco, intervalo
entre checagens automticas, etc.
Exemplo: dumpe2fs /dev/sda1, dumpe2fs -b /dev/sda1
5.5.8 Partio EXT2 ou Arquivo?
Criar uma partio EXT2 ou umarquivo usando o loop? Abaixo esto algumas consideraes:
A partio EXT2 o mtodo recomendado para a instalao do GNU/Linux.
O desempenho da partio EXT2 bem melhor se comparado ao arquivo porque aces-
sada diretamente pelo Kernel (SO).
O arquivo EXT2 til para guardarmos dados condenciais em disquetes ou em
qualquer outro lugar no sistema. Voc pode perfeitamente gravar seus arquivos
condenciais em um arquivo chamado libBlaBlaBla-2.0 no diretrio /lib e
ningum nunca suspeitar deste arquivo (acho que no. . . ). Tambm possvel
criptografa-lo para que mesmo algum descobrindo que aquilo no uma lib,
no poder abri-lo a no ser que tenha a senha (isto coberto no documento
Loopback-encripted-filesystem.HOWTO).
O uso do arquivo EXT2 til quando voc est perdendo espao na sua partio EXT2
e no quer re-particionar seu disco pois teria que ser feita uma re-instalao completa e
tem muito espao em um partio de outro SO (como o Windows). Voc poderia facil-
mente copiar o contedo de /var, por exemplo, para o arquivo EXT2 ext2-l criado
no diretrio Raz do Windows, apagar o contedo de /var (liberando muito espao em
disco) e ento montar ext2-l como /var. A partir de agora, tudo o que for gravado em
/var ser na realidade gravado no arquivo ext2-l. Para o sistema acessar o arquivo,
deve passar pelo sistema de arquivos loop e FAT32, isto causa um desempenho menor.
5.6 Sistema de arquivos reiserfs
Este um sistema de arquivos alternativo ao ext2/3/4 que tambm possui suporte a journaling.
Entre suas principais caractersticas, esto que ele possui tamanho de blocos variveis, suporte
a arquivos maiores que 2 Gigabytes e o acesso mhash a rvore de diretrios um pouco mais
rpida que o ext3.
Para utilizar reiserfs, tenha certeza que seu kernel possui o suporta habilitado (na seo
File Systems) e instale o pacote reiserfsprogs que contmutilitrios para formatar, ver-
icar este tipo de partio.
Captulo 5. Discos e Parties 74
5.6.1 Criando um sistema de arquivos reiserfs em uma partio
Para criar uma partio reiserfs, primeiro instale o pacote reiserfsprogs (apt-get
install reiserfsprogs).
Para criar uma partio reiserfs, primeiro crie uma partio ext2 normal, e ento use o comando:
mkreiserfs /dev/sda?
Onde a ? em sda? signica o nmero da partio que ser formatada com o sistema de
arquivos reiserfs. A identicao da partio mostrada durante o particionamento do disco,
anote se for o caso. sda o primeiro disco rgido SATA, sdb o segundo disco rgido SATA.
Discos IDE so identicados por hda?, hdb?, etc. Para detalhes sobre a identicao de discos,
veja Identicao de discos e parties em sistemas Linux on page 85.
Algumas opes so teis ao mkreiserfs:
-s [num] - Especica o tamanho do arquivo de journal em blocos. O valor mnimo
513 e o mximo 32749 Kb. O valor padro 8193.
-l [NOME] - Coloca um nome (label) no sistema de arquivos.
-f - Fora a execuo do mkreiserfs.
-d - Ativa a depurao durante a execuo do mkreiserfs.
Agora para acessar a partio dever ser usado o comando: mount /dev/sda? /mnt -t
reiserfs
Para mais detalhes veja Montando (acessando) uma partio de disco on page 86.
Note que possvel criar um sistema de arquivos no disco rgido sem criar uma partio us-
ando /dev/sda, /dev/sdb, etc. usando a opo -f EVITE FAZER ISSO! Como no estar
criando uma partio, o disco estar preparado para uso de maneira incorreta, voc no poder
apagar o sistema de arquivos completamente do disco caso precise (lembre-se que voc no
criou uma partio), e a partio possui uma assinatura apropriada que identica o sistema de
arquivos.
5.6.2 Criando um sistema de arquivos reiserfs em um arquivo
O sistema de arquivos reiserfs tambm poder ser criado em um arquivo, usando os
mesmos benefcios descritos em Criando um sistema de arquivos EXT2 em um arquivo on
page 68. Para fazer isso execute os seguintes passos em seqncia:
1 Use o comando dd if=/dev/zero of=/tmp/arquivo-reiserfs bs=1024
count=33000 para criar um arquivo arquivo-reiserfs vazio de 33Mb de tamanho
em /tmp. Voc pode modicar os parmetros de of para escolher onde o arquivo
ser criado, o tamanho do arquivo poder ser modicado atravs de count. Note
que o tamanho mnimo do arquivo deve ser de 32Mb, devido aos requerimentos do
reiserfs.
Captulo 5. Discos e Parties 75
2 Formate o arquivo com mkreiserfs -f /tmp/arquivo-reiserfs. Ele primeiro
dir que o arquivo arquivo-reiserfs no um dispositivo de bloco especial (uma
partio de disco) e perguntar se deve continuar, responda com y.
O sistema de arquivos ReiserFS ser criado em /tmp/arquivo-reiserfs e estar
pronto para ser usado.
3 Monte o arquivo arquivo-reiserfs com o comando: mount
/tmp/arquivo-reiserfs /mnt -t reiserfs -o loop=/dev/loop1. Note
que foi usado o parmetro -o loop para dizer ao comando mount para usar os
recursos de loop do kernel para montar o sistema de arquivos. O parmetro -t
reiserfs poder ser omitido, se desejar.
4 Conra se o sistema de arquivos ReiserFS emarquivo-reiserfs foi realmente mon-
tado no sistema de arquivos digitando df -T. Para detalhes, veja df on page 132.
Pronto! o que voc gravar para /mnt ser gravado dentro do arquivo /tmp
/arquivo-reiserfs. Voc poder usar todos os recursos de um sistema de arquivos
reiserfs como permisses de arquivos e diretrios, links simblicos, etc.
O uso da opo loop=/dev/loop1 permite que o dispositivo /dev/loop1 seja associado ao
arquivo /arquivo-reiserfs e assim permitir sua montagem e uso no sistema.
Voc poder usar apenas -o loop com o comando mount, assim o kernel gerenciar
automaticamente os dispositivos de loop.
Caso faa isto manualmente, lembre-se de usar dispositivos /dev/loop? diferentes
para cada arquivo que montar no sistema. Pois cada um faz referncia a um nico ar-
quivo.
5.7 Partio Linux Swap (Memria Virtual)
Este tipo de partio usado para oferecer o suporte a memria virtual ao GNU/Linux em
adio a memria RAMinstalada no sistema. Este tipo de partio identicado pelo tipo 82 nos
programas de particionamento de disco para Linux. Para detalhes de como criar uma partio
Linux Swap veja Criando sistema de arquivos Swap emuma partio on the following page.
Somente os dados na memria RAM so processados pelo processador, por ser mais rpida.
Desta forma quando voc est executando um programa e a memria RAM comea a encher,
o GNU/Linux move automaticamente os dados que no esto sendo usados para a partio
Swap e libera a memria RAMpara a continuar carregando os dados necessrios pelo. Quando
os dados movidos para a partio Swap so solicitados, o GNU/Linux move os dados da par-
tio Swap para a Memria. Por este motivo a partio Swap tambm chamada de Troca
ou memria virtual.
A partio swap otimizada para permitir alta velocidade para mover dados da memria
RAM para ela e vice versa. Note tambm que possvel criar o sistema de arquivos Swap em
um arquivo ao invs de uma partio (veja Criando um sistema de arquivos Swap em um
arquivo on the current page).
Captulo 5. Discos e Parties 76
5.7.1 Criando sistema de arquivos Swap em uma partio
O programa usado para formatar uma partio Swap o mkswap. Seu uso simples:
mkswap /dev/sda?
Novamente veja Identicao de discos e parties em sistemas Linux on page 85 caso no
souber identicar seus discos e parties. Onome do dispositivo da partio Swap pode ser vi-
sualizado atravs de seu programa de particionamento, voc pode usar o comando fdisk -l
/dev/sda para listar as parties no primeiro disco rgido e assim vericar qual dispositivo
corresponde a partio Swap.
A opo -c tambm pode ser usada com o mkswap para checar se existem agrupamentos
danicados na partio. A opo -v1 permite a criao da swap usando mais de 128Mb (esta
opo a padro).
Com a partio Swap formatada, use o comando: swapon /dev/sda? para ativar a partio
Swap (lembre-se de substituir ? pelo nmero de sua partio Swap).
Observaes:
Verses antigas do kernel do GNU/Linux 2.0.xx e anteriores somente suportavam parties
Swap de at 128MB. Nos novos kernels foi introduzida uma nova verso da swap. Para con-
verter a swap antiga para uma nova verso reformate-a usando mkswap -v1 /dev/sda?
(onde /dev/sda? especica sua partio swap, obtida com o fdisk -l /dev/sda).
Se utilizar mais que 1 partio Swap, pode ser til o uso da opo -p NUM que especica
a prioridade em que a partio Swap ser usada. Pode ser usado um valor de prioridade
entre 0 e 32767, parties com nmero maior sero usadas primeiro, sendo que na montagem
automtica atravs de mount -a podem ser designados nmeros negativos.
Procure usar o nmero maior para parties mais rpidas (elas sero acessadas primeiro) e
nmeros maiores para parties mais lentas. Caso precise desativar a partio Swap, use o
comando: swapoff /dev/sda?.
5.7.2 Criando um sistema de arquivos Swap em um arquivo
Tambm possvel criar um arquivo que poder ser usado como memria virtual. Veja passo
a passo como fazer isso:
1 Use o comando dd if=/dev/zero of=/tmp/troca bs=1024 count=64000 para
criar umarquivo chamado troca vazio de 64Mb de tamanho em/tmp. Voc pode modi-
car os parmetros de of para escolher onde o arquivo ser criado, o tamanho do arquivo
poder ser modicado atravs de count.
2 Execute mkswap /tmp/troca para formatar o arquivo. Aps concluir este passo, o
sistema de arquivos Swap estar criado e pronto para ser usado.
3 Digite sync para sincronizar os buffers para o disco, assim voc no ter problemas em
um servidor com muito I/O.
Captulo 5. Discos e Parties 77
4 Ative o arquivo de troca com o comando swapon /tmp/troca.
5 Conra se o tamanho da memria virtual foi modicado digitando cat
/proc/meminfo ou free.
Observaes:
Podem ser usadas parties de troca e arquivos de troca juntos, sem problemas.
Caso seu sistema j tenha uma partio de Swap, recomendvel deixar o acesso ao
arquivo Swap com uma prioridade menor (usando a opo -p NUM com o comando
swapon).
5.7.3 Partio Swap ou Arquivo?
Criar uma partio de Troca ou um arquivo de troca? Abaixo algumas vantagens e desvanta-
gens:
Apartio Swap mais rpida que o arquivo Swap pois acessada diretamente pelo Ker-
nel. Se o seu computador tem pouca memria (menos que 512Mb) ou voc tem certeza
que o sistema recorre freqentemente a memria virtual para executar seus programas,
recomendvel usar uma partio Swap.
O arquivo de troca permite que voc crie somente uma partio Linux Native e crie o
arquivo de troca na partio EXT2.
Voc pode alterar o tamanho do arquivo de troca facilmente apagando e criando umnovo
arquivo como descrito emCriando umsistema de arquivos Swap emumarquivo on the
preceding page.
possvel criar um arquivo de troca em outros tipos de parties como FAT16, FAT32,
NTFS, etc.
Oarquivo de troca estar disponvel somente aps o sistema de arquivos que o armazena
(ext2, fat32, etc) estar montado. Isto umproblema para sistemas compouca memria
que dependem do arquivo de troca desde sua inicializao.
5.8 O sistema de arquivos /proc
o sistema de arquivos do Kernel do GNU/Linux. Ele oferece um mtodo de ler, gravar e
modicar dinamicamente os parmetros do kernel, muito til para pessoas que gostam de
entender como as coisas funcionam (como eu) e programas de congurao. A modicao
dos arquivos do diretrio /proc o mtodo mais usado para modicar a congurao do
sistema e muitos programas tambm dependem deste diretrio para funcionar.
Nele voc tem todo o controle do que o seus sistema operacional est fazendo, a congurao
dos hardwares, interrupes, sistema de arquivos montado, execuo de programas, memria
do sistema, rede, etc.
Captulo 5. Discos e Parties 78
Agora entre no diretrio /proc digite ls e veja a quantidade de arquivos e diretrios que
ele possui, d uma passeada por eles. Abaixo a descrio de alguns deles (todos podem ser
visualizados pelo comando cat):
Diretrios com nmeros - Estes identicam os parmetros de um processo em ex-
ecuo. Por exemplo, se o PID (identicao do processo) do inetd for 115, voc
pode entrar no diretrio 115 e vericar as opes usadas para execuo deste programa
atravs de cada arquivos existente dentro do diretrio. Alguns so:
cmdline - Oque foi digitado para iniciar o processo (pode tambmter sido iniciado
atravs de um programa ou pelo kernel).
environ - Variveis de Ambiente existentes no momento da execuo do processo.
status - Dados sobre a execuo do Processo (PID, status da execuo do pro-
grama, memria consumida, memria executvel, UID, GID, etc).
apm - Dados sobre o gerenciamento de energia
cmdline - Linha de comando usada para inicializar o Kernel GNU/Linux. Os parmet-
ros so passados atravs do programa de inicializao, como o LILO, LOADLIN,
SYSLINUX.
cpuinfo - Detalhes sobre a CPU do sistema
devices - Dispositivos usados no sistema
dma - Canais de DMA usados por dispositivos
filesystems - Sistemas de arquivos em uso atualmente
interrupts - Interrupes usadas por dispositivos
ioports - Portas de Entrada e Sada usadas pelos dispositivos do sistema
kcore - Este arquivo corresponde a toda a memria RAM em seu sistema. Seu tamanho
correspondente a memria RAM do micro
kmsg - Permite visualizar mensagens do Kernel (use o comando cat < kmsg para
visualiza-lo e pressione CTRL+C para cancelar
loadavg - Mdia de Carga do sistema
meminfo - Dados de utilizao da memria do sistema
misc - Outras conguraes
modules - Mdulos atualmente carregados no kernel
mounts - Sistemas de Arquivos atualmente montados
pci - Detalhes sobre dispositivos PCI do sistema
rtc - Relgio em Tempo real do sistema
uptime - Tempo de execuo do sistema
version - Verso atual do Kernel, programa usado na compilao, etc
Diretrio net - Dados sobre a rede do sistema
Diretrio sys - Dados sobre outras reas do sistema
Diretrio scsi - Detalhes sobre dispositivos SCSI do sistema
Note que o diretrio proc e os arquivos existentes dentro dele esto localizados no diretrio
raiz (/), mas no ocupa nenhum espao no disco rgido.
Captulo 5. Discos e Parties 79
5.9 LVM - Logical Volume Manager
Olvm (Logical Volume Manager) faz a associao entre dispositivos/parties fsicas (incluindo
discos RAID, MO, mass storages diversos, MD, e loop) e dispositivos lgicos. O mtodo tradi-
cional faz a alocao de todo espao fsico ao tamanho da partio do disco (o mtodo tradi-
cional), o que traz muito trabalho quando o espao esgota, cpia de dados ou planejamento
de uso de mquina (que pode mudar com o passar do tempo). O sistema de lvm soluciona os
seguintes problemas:
Uso ecaz de disco, principalmente quando h pouco espao para criao de parties
independentes.
Permite aumentar/diminuir dinamicamente o tamanho das parties sem reparticiona-
mento do disco rgido usando o espao livre em outras parties ou utilizando o espao
livre reservado para o uso do LVM.
Uma partio de disco identicada por um nome de volume e no pelo dispositivo.
Voc pode ento se referir aos volumes como: usurios, vendas, diretoria, etc.
Sua diviso em 3 camadas possibilita a adio/remoo de mais discos de um conjunto
caso seja necessrio mais espao em volumes, etc.
Permite selecionar o tamanho do cluster de armazenamento e a forma que eles so aces-
sados entre os discos, possibilitando garantir a escolha da melhor opo dependendo da
forma que os dados sero manipulados pelo servidor.
Permite snapshots dos volumes do disco rgido.
As 3 camadas do LVM so agrupadas da seguinte forma:
PV (Phisical Volume) - Corresponde a todo o disco rgido/partio ou dispositivo
de bloco que ser adicionado ao LVM. Os aplicativos que manipulam o volume fsico,
comeam com as letras pv
*
. O espao disponvel no PV dividido em PE (Phisical
Extends, ou extenses fsicas). O valor padro do PE de 4MB, possibilitando a criao
de um VG de 256Gb. Por exemplo: /dev/hda1
VG (Volume Group) - Corresponde ao grupo de volumes fsicos que fazem parte do
LVM. Do grupo de volume so alocados os espaos para criao dos volumes lgicos.
Os aplicativos que manipulam o o grupo de volume, comeam com as letras vg
*
. Por
exemplo: /dev/lvmdisk0 LV (Logical Volume) - Corresponde a partio lgica
criada pelo LVM para gravao de dados. ao invs de ser identicada por nomes de
dispositivos, podem ser usados nomes comuns para se referir as parties (tmp,usr,etc.).
O Volume lgico a rea onde o sistema de arquivo criado para gravao de dados,
seria equivalente a partio em um sistema SEM LVM s que lgica ao invs de fsica. O
volume lgico temseu espao dividido emLE (Logical Extends, ou extenses lgicas) que
correspondem aos PEs alocados. Exemplos: /dev/lvmdisk/usr, /dev/lvmdisk
/tmp, etc.
5.9.1 Representao grca do LVM
Desenvolvi este desenho para representar a idia de organizao de um sistema LVM para o
guia Foca GNU/Linux e apresentar a descrio prtica da coisa:
+------[ Grupo de Volume (VG) - lvmdsk ]------+
Captulo 5. Discos e Parties 80
| +--[ PV - hda1 ]---+ +--[ PV - hdb1 ]--+ |
| | PE PE PE PE PE PE| | PE PE PE PE PE | |
| +------------------+ +-----------------+ |
| | | | | |
| | | +-----------------+ | |
| | +----------------+ | |
| | | | | |
| +-[ LV - var ]-+ +-[ LV - home ]-+ |
| | LE LE LE LE | | LE LE LE LE | |
| +--------------+ +---------------+ |
+---------------------------------------------+
O grco acima representa a seguinte situao:
1 Ns temos dois volumes fsicos representados por hda1 e hdb1. Cada um desses vol-
umes fsicos tem um Phisical Extend (PE) de 4M (o padro).
2 Estes dois volumes fsicos acima representam o espao total do grupo de volume lvmdisk
em /dev/lvmdisk.
3 Do grupo de volume lvmdisk so criados dois volumes lgicos chamados var e home,
estando disponveis para particionamento atravs de /dev/lvmdisk/var e /var
/lvmdisk/home.
Na prtica, o espao do volume lgico denido alocando-se alguns Phisical Extends (PE) dos
volumes fsicos como logical extends (LE) dos volumes lgicos. Desta forma, o tamanho de
todos os PEs e LEs existentes dentro de um mesmo grupo de volume devem ser iguais.
5.9.2 Performance do LVM
Um sistema com LVM tem sua performance um pouco reduzida quanto ao acesso a disco,
devido as camadas adicionais de acesso aos dados, sendo afetadas operaes em caracteres e
inteligentes de acesso a dados.
Entretanto, a performance de leitura/gravao de blocos melhorada consideravelmente aps
a adoo do LVM. O LVM tambm garante que o sistema no mostre sintomas de paradas
durante o esvaziamento de cache de disco, mantendo sempre uma certa constncia na trans-
ferncia de dados mesmo em operaes pesadas de I/O no disco. Depende de voc avaliar
estes pontos e considerar sua adoo.
5.9.3 Instalando LVM em seu sistema
Nesta seo no tenho a inteno de cobrir todos os detalhes tcnicos da implantao do LVM,
a idia aqui fornecer uma referncia bsica e prtica para uso em qualquer sistema normal
(desconsiderando usos crticos). A idia aqui mostrar de forma prtica como implantar LVM
em sua mquina e preparar seu uso nos discos.
Antes de comear, retire QUALQUER CD que estiver inserido na unidade de CD-ROM, pois
eles podem causar erro no pvscan, pvdisplay, etc.
Captulo 5. Discos e Parties 81
1 No particionamento, dena as parties do tipo 8E (Linux LVM). A partio Linux LVM
exatamente igual a Linux Native (82), a nica vantagem que o LVM utilizar auto
deteco para saber quais parties ele deve utilizar no pvscan.
2 Instale o pacote lvm2 e uma imagem de kernel 2.4 ou 2.6 que tenha suporte a LVM, ou
compile seu prprio kernel (caso goste de mquinas turbinadas :-)
3 Execute o pvscan para detectar as parties marcadas como LVM e criar sua congu-
rao em/etc/lvmtab.d. OBS: normal o sistema procurar dispositivos de CD-ROM
durante a execuo do pvscan, apenas no deixe umCDna unidade para evitar grandes
sustos se estiver desatento com os passos :-)
4 Rode o pvcreate no disco ou partio para dizer que ela ser umvolume fsico do LVM:
pvcreate /dev/sda1 ou pvcreate /dev/sda Em caso de dvida sobre qual a
partio LVM, digite: fdisk -l /dev/sda (supondo que /dev/sda o disco rgido
que est congurando o LVM).
5 Rode o pvdisplay /dev/hda1 para vericar se o volume fsico foi criado. Recomendo
que deixe a partio raz (/) de fora do LVM para no ter futuros problemas com a
manuteno do seu sistema, a menos que tenha muitas opes de inicializao com su-
porte a LVM em mos :-)
6 Crie o grupo de volume na partio vgcreate lvmdisk /dev/sda1 /dev/sdb7.
Note que parties de discos diferentes podem fazer parte de um mesmo grupo de
volume (VG) do LVM. Caso use o devfs ou em algumas verses do udev, ser pre-
ciso usar o caminho completo do dispositivo ao invs do link: vgcreate lvmdisk
/dev/ide/host0/bus0/target0/lun0/part1 Ovalor padro do Phisical Extend
de 4MB mas pode ser alterado pelo parmetro -s tamanho, assim o tamanho mximo
do grupo de volume ser de 256GB (4MB * 64.000 extends que so suportados por vol-
ume lgico). Os valores do Phisical Extend (PE) pode ser de 8k a 16GB. No possvel
modicar o tamanho do PE aps ele ser denido.
7 Verique o grupo de volume (VG) recm criado com o comando: vgdisplay ou
vgdisplay /dev/sda7. Atente para a linha Free PE / tamanho, que indica o es-
pao livre restante para criar os volumes lgicos (LV).
8 Crie o volume lgico (LV) com o comando: lvcreate -L1500 -ntmp lvmdisk Que
vai criar uma partio LVM de 1500MB (1,5GB) com o nome tmp (acessvel por /var
/lvmdisk/tmp) dentro do grupo lvmdisk. Voc dever fazer isso com as outra parties.
9 Agora resta criar um sistema de arquivos (ext3, reiserfs, xfs, jfs, etc) como faria com qual-
quer partio fsica normal: mkfs.ext3 /dev/lvmdisk/tmp ou mkfs.reiserfs
/dev/lvmdisk/tmp
OBS: Caso deseje montar automaticamente o volume LVM, coloque o caminho completo do
LVM ao invs do volume fsico no /etc/fstab: /dev/lvmdisk/tmp.
5.9.4 Aumentando o tamanho de um volume lgico
O processo para aumentar o tamanho do volume lgico consiste em primeiro aumentar o
tamanho do VG com o lvextend e depois ajustar o tamanho do sistema de arquivos:
# Aumenta o espao do volume lgico tmp para 1G
Captulo 5. Discos e Parties 82
lvextend -L1G /dev/lvmdisk/tmp
# Aumenta em 200MB o espao no volume lgico tmp
lvextend -L+200M /dev/lvmdisk/tmp
As unidades Kk,Mm,Gg,Tt podem ser usadas para especicar o espao. Aps modicar o
volume lgico, ser preciso aumentar o tamanho do sistema de arquivos para ser exatamente
igual ao tamanho do LV. Isto depende do seu sistema de arquivos:
ext2/3 resize2fs /dev/lvmdisk/tmp O ext2/3 ainda vem com o utilitrio e2fsadm que exe-
cuta os dois comandos (lvextend e resize2fs) de uma s vez: e2fsadm -L+1G
/dev/lvmdisk/tmp OBS: Voc dever desmontar o sistema de arquivos antes de al-
terar o tamanho de um sistema de arquivos ext2 ou ext3. Em kernels da serie 2.6.17 e
superiores, a alterao pode ser feita on-line (devido ao patch ext2online incorporado ao
kernel).
reiserfs resize_reiserfs -f /dev/lvmdisk/tmp O tamanho do sistema de arquivos reiserfs
poder ser modicado on-line, assim no precisa parar seu servidor para esta operao.
xfs xfs_growfs /tmp Note que deve ser especicado o ponto de montagem ao invs do dis-
positivo. O sistema de arquivos dever ser montado antes de ser modicado e incluido
no /etc/fstab.
5.9.5 Diminuindo um volume lgico
Para diminuir o tamanho de um volume lgico, certique-se de ter calculado o espao correta-
mente para acomodar todos os dados que j existem na partio. A diferena para o processo
de aumentar o LV que primeiramente o sistema de arquivos reduzido primeiro e depois o
LV (pois o LV que acomoda o sistema de arquivos):
ext2/3/4 resize2fs /dev/lvmdisk/tmp 4G e depois lvreduce -L-1G
/dev/lvmdisk/tmp Podem ser usados K, M ou G para especicar o novo tamanho.
Caso esteja usando um kernel 2.6.17 ou superior, o tamanho poder ser ajustado com o
sistema de arquivos on-line (sem desmontar).
reiserfs resize_reiserfs -s-1G /dev/lvmdisk/tmp e depois lvreduce -L-1G
/dev/lvmdisk/tmp O tamanho do sistema de arquivos reiserfs poder ser
modicado on-line, assim no precisa parar seu servidor para a modicao.
xfs No possvel diminuir o tamanho de um sistema de arquivos XFS em sua verso atual
(12/2006).
5.10 Formatando Pen-drives/Disquetes
As subsees seguintes explicaro maneiras de formatar seu pen-drive, memria ash, e outras
tecnologias (incluindo disquetes) para serem usados no GNU/Linux e DOS/Windows.
Captulo 5. Discos e Parties 83
5.10.1 Formatando pen-drives para serem usados no Linux
Para formatar pen-drives para serem usados no GNU/Linux use o comando:
mkfs.ext2 [-c] [/dev/sde1]
Em alguns sistemas voc deve usar mke2fs no lugar de mkfs.ext2. A opo -c faz com que
o mkfs.ext2 procure por blocos danicados no pen-drive. Caso deseje formatar umdisquete,
especique o dispositivo /dev/fd0 ao inves de /dev/sdb1.
Note que o nome de dispositivo que conectado varia de acordo com o sistema e quanti-
dade de discos rgidos que sua mquina possui portanto tenha ATENCO para no formatar
o dispositivo incorreto (que pode ser justamente seu disco disco rgido principal). Para maior
segurana, ao identicar o pen-drive, digite dmesg ao conectar o pen-drive para visualizar o
dispositivo correto ou que atento as mensagens do console que mostrar o dispositivo que
foi associado ao pen-drive.
OBS: Este comando cria umsistema de arquivos ext2 no pen-drive e permite usar caractersticas
como permisses de acesso e outras. Isto tambm faz com que o pen-drive NO possa ser lido
pelo DOS/Windows. Para formatar um pen-drive no GNU/Linux usando o FAT16 ou FAT32
(compatvel com o DOS/Windows) veja prxima seo.
Exemplo: mkfs.ext2 -c /dev/sde1
5.10.2 Formatando pen-drives compatveis com o Windows
A formatao de pen-drives para serem usados no Windows feita usando o comando
mkfs.msdos que geralmente includo no pacote dosfstools. O mkfs.msdos permite
tanto a criao de sistemas de arquivos FAT16 ou FAT32.
mkfs.msdos [opes] [dispositivo]
dispositivo Pen-drive que ser formatado. Normalmente /dev/sdb1 (dependendo do dis-
positivo detectado via comando dmesg).
opes
-F [num ] Especica o tipo de FAT que ser usado na formatao. Podemser usados os valores
12 (para formatao usando FAT12, limitado a 12MB), 16 (para formatao usando FAT16,
limitado a 2Gb) e 32 (para formatao FAT32, limitado a 128Gb).
-n [nome ] Atribui o [nome] de volume ao dispositivo.
-c Faz uma pesquisa por bad blocks antes da criao do sistema de arquivos no dispositivo.
Os setores defeituosos encontrados sero automaticamente marcados para no serem
utilizadas.
-m [arquivo_mensagem ] Especica o arquivo que contm a mensagem que ser exibida ao
usurio caso o disco no seja inicializvel. A mensagem no pode exceder 418 bytes.
Note que no se deve montar o pen-driv / disquete para formata-lo.
Segue abaixo exemplos de como formatar seu pen-drive mkfs.msdos:
mkfs.msdos /dev/sdc1 - Formata o pen-drive no terceiro dispositivo SCSI Genrico,
como FAT32 e usando os valores padres.
Captulo 5. Discos e Parties 84
mkfs.msdos -F 16 /dev/sdc1 - Faz a mesma coisa que o acima, mas formata o pen-
drive como FAT16.
mkfs.msdos -n teste -F 16 /dev/sdc1 - Formata o pen-drive no terceiro dis-
positivo SCSI genrico, como FAT16 e cria o nome de volume teste.
5.10.3 Programas de Formatao Grcos
Alm de programas de formatao em modo texto, existem outros para ambiente grco (X11)
que permitem fazer a mesma tarefa.
Entre os diversos programas destaco o gfloppy que alm de permitir selecionar se o disquete
ser formatado para o GNU/Linux (ext2), DOS (FAT12) e permite selecionar a capacidade e
formatao rpida do disco.
5.11 Pontos de Montagem
O GNU/Linux acessa as parties existente em seus discos rgidos e disquetes atravs de di-
retrios. Os diretrios que so usados para acessar (montar) parties so chamados de Pontos
de Montagem. Para detalhes sobre montagem de parties, veja Montando (acessando) uma
partio de disco on page 86.
No DOS cada letra de unidade (C:, D:, E:) identica uma partio de disco, no GNU/Linux os
pontos de montagem fazem parte da grande estrutura do sistema de arquivos raiz.
Existem muitas vantagens de se usar pontos de montagem ao invs de unidade de disco para
identicar parties (mtodo usado no Windows):
Voc pode montar a partio no diretrio que quiser.
Em caso de um sistema de arquivos cheio, voc pode copiar o contedo de um grande
diretrio para outro sistema de arquivos, apagar o contedo do diretrio original e mon-
tar o disco onde foram copiados os arquivos naquele local (caso no use um sistema de
LVM).
Reduz riscos de corrompimento do sistema operacional. Caso isto acontea, ser
necessrio apenas restaurar o backup do sistema de arquivos afetado.
Tempo de boot reduzido quando um sistema de arquivos for vericado por ferramentas
como o fsck.
O uso de pontos de montagem torna o gerenciamento mais exvel.
A adio de novas parties ou substituio de discos rgidos no afeta a ordem de iden-
ticao dos discos e pontos de montagem (como no acontece no DOS).
5.12 Identicao de discos e parties em sistemas Linux
No GNU/Linux, os dispositivos existentes em seu computador (como discos rgidos, pen-
drives, ash, disquetes tela, portas de impressora, modem, etc) so identicados por um
arquivo referente a este dispositivo no diretrio /dev.
Captulo 5. Discos e Parties 85
A identicao de discos rgidos no GNU/Linux feita da seguinte forma:
/dev/sda1
| | ||
| | ||_Nmero que identifica o nmero da partio no disco rgido.
| | |
| | |_Letra que identifica o disco rgido (a=primeiro, b=segundo, etc...).
| |
| |_Sigla que identifica o tipo do disco rgido (sd=SATA/SCSI, sd=IDE, xt=MFM).
|
|_Diretrio onde so armazenados os dispositivos existentes no sistema.
Abaixo algumas identicaes de discos e parties em sistemas Linux:
/dev/fd0 - Primeira unidade de disquetes.
/dev/fd1 - Segunda unidade de disquetes.
/dev/sda - Primeiro disco rgido na primeira controladora SATA ou
SCSI.
/dev/sda1 - Primeira partio do primeiro disco rgido SATA ou.
/dev/sdb - Segundo disco rgido na primeira controladora SATA ou
SCSI.
/dev/sdb1 - Primeira partio do segundo disco rgido SATA ou SCSI.
/dev/sr0 - Primeiro CD-ROM SATA ou SCSI.
/dev/sr1 - Segundo CD-ROM SATA ou SCSI.
/dev/hda - Primeiro disco rgido na primeira controladora IDE do
micro (primary master).
/dev/hda1 - Primeira partio do primeiro disco rgido IDE.
/dev/hdb - Segundo disco rgido na primeira controladora IDE do
micro (primary slave).
/dev/hdb1 - Primeira partio do segundo disco rgido IDE.
/dev/xda - Primeiro disco rgido XT.
/dev/xdb - Segundo disco rgido XT.
As letras de identicao de discos rgidos podem ir alm de sdb, por exemplo, caso utilize
pen-drives, memria ash, as unidades sero detectadas como sdc, sdd e assim por diante.
importante entender como os discos e parties so identicados no sistema, pois ser
necessrio usar os parmetros corretos para monta-los.
Captulo 5. Discos e Parties 86
5.13 Montando (acessando) uma partio de disco
Voc pode acessar uma partio de disco usando o comando mount.
mount [dispositivo] [ponto de montagem] [opes]
Onde:
dispositivo Identicao da unidade de disco/partio que deseja acessar (como /dev/hda1
(disco rgido) ou /dev/fd0 (primeira unidade de disquetes).
ponto de montagem Diretrio de onde a unidade de disco/partio ser acessado. O diretrio
deve estar vazio para montagem de um sistema de arquivo. Normalmente usado o
diretrio /mnt para armazenamento de pontos de montagem temporrios.
-t [tipo ] Tipo do sistema de arquivos usado pelo dispositivo. So aceitos os sistemas de ar-
quivos:
ext2 - Para parties GNU/Linux usando o Extended File System verso 2 (a mais
comum).
ext3 - Para parties GNU/Linux usando o Extended File System verso 3, com su-
porte a journaling.
ext4 - Para parties GNU/Linux usando o Extended File System verso 4, com su-
porte a journaling.
reiserfs - Para parties reiserfs, com suporte a journaling.
xfs - Para parties xfs, com suporte a journaling.
vfat - Para parties Windows 95 que utilizam nomes extensos de arquivos e di-
retrios.
msdos - Para parties DOS normais.
iso9660 - Para montar unidades de CD-ROM. o padro.
Na maioria das vezes, caso o sistema de arquivos no seja especicado, o mount utilizar
a auto-deteco e montar a partio usando o sistema de arquivos correto. Para mais
detalhes sobre opes usadas com cada sistema de arquivos, veja a pgina de manual
mount.
-r Caso for especicada, monta a partio somente para leitura.
-w Caso for especicada, monta a partio como leitura/gravao. o padro.
Existem muitas outras opes que podem ser usadas com o comando mount, mas aqui pro-
curei somente mostrar o bsico para montar seus discos e parties no GNU/Linux (para
mais opes, veja a pgina de manual do mount). Caso voc digitar mount sem parmet-
ros, sero mostrados os sistemas de arquivos atualmente montados no sistema. Esta mesma
listagem pode ser vista em /etc/mtab. A remontagem de partio tambm muito til, es-
pecialmente aps reparos nos sistema de arquivos do disco rgido. Veja alguns exemplos de
remontagem abaixo.
necessrio permisses de root para montar parties, a no ser que tenha especicado a
opo user no arquivo /etc/fstab (veja fstab on the current page).
Exemplo de Montagem:
Montar uma partio Windows (vfat) de /dev/sda1 em /mnt somente para leitura:
mount /dev/sda1 /mnt -r -t vfat
Montar um pen-drive detectado em /dev/sdc1 em /mnt: mount /dev/sdc1 /mnt
-t vfat
Captulo 5. Discos e Parties 87
Montar uma partio DOS localizada emumsegundo disco rgido /dev/hdb1 em/mnt:
mount /dev/hdb1 /mnt -t msdos.
Remontar a partio raz como somente leitura: mount -o remount,ro /
Remontar a partio raz como leitura/gravao (a opo -n usada porque o mount no
conseguir atualizar o arquivo /etc/mtab devido ao sistema de arquivos / estar mon-
tado como somente leitura atualmente: mount -n -o remount,rw /.
5.13.1 fstab
O arquivo /etc/fstab permite que as parties do sistema sejam montadas facilmente es-
pecicando somente o dispositivo ou o ponto de montagem. Este arquivo contm parmetros
sobre as parties que so lidos pelo comando mount. Cada linha deste arquivo contm a par-
tio que desejamos montar, o ponto de montagem, o sistema de arquivos usado pela partio
e outras opes. fstab tem a seguinte forma:
Sistema_de_arquivos Ponto_de_Montagem Tipo Opes dump ordem
/dev/sda1 / ext3 defaults 0 1
/dev/sda2 /boot ext3 defaults 0 2
/dev/sda3 /dos msdos defaults,noauto,rw 0 0
/dev/hdg /cdrom iso9660 defaults,noauto 0 0
Onde:
Sistema de Arquivos Partio que deseja montar.
Ponto de montagem Diretrio do GNU/Linux onde a partio montada ser acessada.
Tipo Tipo de sistema de arquivos usado na partio que ser montada. Para parties
GNU/Linux use ext3, reiserfs, xfs (de acordo com o tipo de partio selecionada durante a
formatao), para parties DOS (sem nomes extensos de arquivos) use msdos, para par-
ties Win 95 (com suporte a nomes extensos de arquivos) use vfat, para unidades de
CD-ROM use iso9660.
Opes Especica as opes usadas com o sistema de arquivos. Abaixo, algumas opes de
montagem para ext2/3/4 (a lista completa pode ser encontrada na pgina de manual do
mount):
defaults - Utiliza valores padres de montagem.
noauto - No monta os sistemas de arquivos durante a inicializao (til para CD-
ROMS e disquetes).
ro - Monta como somente leitura.
user - Permite que usurios montem o sistema de arquivos (no recomendado por
motivos de segurana).
sync recomendado para uso com discos removveis (disquetes, zip drives, nfs,
etc) para que os dados sejam gravados imediatamente na unidade (caso no seja
usada, voc deve usar o comando sync on page 141 antes de retirar o disquete da
unidade.
dump Especica a frequncia de backup feita com o programa dump no sistema de arquivos.
0 desativa o backup.
Captulo 5. Discos e Parties 88
Ordem Dene a ordem que os sistemas de arquivos sero vericados na inicializao do sis-
tema. Se usar 0, o sistema de arquivos no vericado. O sistema de arquivos raz que
dever ser vericado primeiro o raz / (a no ser que voc tenha um sistema de ar-
quivos de outro tipo que no montado dentro do diretrio raz e possui seu suporte
embutido no kernel) .
Aps congurar o /etc/fstab, basta digitar o comando mount /dev/hdg ou mount
/cdrom para que a unidade de CD-ROM seja montada. Voc deve ter notado que no
necessrio especicar o sistema de arquivos da partio pois o mount vericar se ele j ex-
iste no /etc/fstab e caso existir, usar as opes especicadas neste arquivo. Para maiores
detalhes veja as pginas de manual fstab e mount.
5.14 Desmontando uma partio de disco
Utilize o comando umount para desmontar um sistema de arquivos que foi montado com o
mount. Voc deve ter permisses de root para desmontar uma partio.
umount [dispositivo/ponto de montagem]
Voc pode tanto usar umount /dev/sda1 como umount /mnt para desmontar um sistema
de arquivos /dev/sda1 montado em /mnt.
Observao: O comando umount executa o sync automaticamente no momento da desmon-
tagem, para garantir que todos os dados ainda em memria RAM sejam salvos.
89
Captulo 6
Gerenciadores de Partida (boot loaders)
Gerenciadores de Partida so programas que carregam um sistema operacional e/ou permitem
escolher qual ser iniciado. Normalmente este programas so gravados no setor de boot (inicial-
izao) da partio ativa ou no master boot record (MBR) do disco rgido.
Este capitulo explica o funcionamento de cada um dos principais gerenciadores de partida
usados no GNU/Linux, em que situaes recomendado seu uso, as caractersticas, como
congura-lo e alguns exemplos de congurao.
6.1 LILO
O LILO (Linux Loader) sem dvida o gerenciador de partida padro para quem deseja iniciar
o GNU/Linux atravs do disco rgido. Ele permite selecionar qual sistema operacional ser
iniciado (caso voc possua mais de um) e funciona tanto em discos rgidos IDE como SCSI.
A seleo de qual sistema operacional e a passagem de parmetros ao kernel pode ser feita
automaticamente ou usando o aviso de boot: do LILO.
6.1.1 Criando o arquivo de congurao do LILO
Os dados para a criao do novo setor de boot que armazenar o gerenciador de partida so
lidos do arquivo /etc/lilo.conf Este arquivo pode ser criado em qualquer editor de tex-
tos (como o ae ou vi). Normalmente ele criado durante a instalao de sua distribuio
GNU/Linux mas por algummotivo pode ser preciso modica-lo ou personaliza-lo (para incluir
novos sistemas operacionais, mensagens, alterar o tempo de espera para a partida automtica,
etc).
O arquivo /etc/lilo.conf dividido em duas sees: Geral e Imagens. A seo Geral vem
no inicio do arquivo e contm opes que sero usadas na inicializao do Lilo e parmetros
que sero passados ao kernel. A seo Imagens contm opes especicas identicando qual
a partio que contm o sistema operacional, como ser montado inicialmente o sistema de
Captulo 6. Gerenciadores de Partida (boot loaders) 90
arquivos, tabela de partio, o arquivo que ser carregado na memria para inicializar o sis-
tema, etc. Abaixo um modelo do arquivo /etc/lilo.conf para sistemas que s possuem o
GNU/Linux instalado:
boot=/dev/hda1
compact
install=text
map=/boot/map
vga=normal
delay=20
lba32
image=/vmlinuz
root=/dev/hda1
label=Linux
read-only
Para criar um novo gerenciador de partida atravs do arquivo /etc/lilo.conf , execute o
comando lilo.
No exemplo acima, o gerenciador de partida ser instalado em/dev/hda1 (veja Identicao
de discos e parties em sistemas Linux on page 85) , utilizar um setor de boot compacto
(compact), modo de vdeo VGA normal (80x25), esperar 2 segundos antes de processar auto-
maticamente a primeira seo image= e carregar o kernel /vmlinux de /dev/hda1. Para
detalhes sobre opes que podem ser usadas neste arquivo veja Opes usadas no LILO on
page 92.
Para mostrar o aviso de boot:, voc dever ligar as teclas Caps Lock ou Scrool lock na partida
ou pressionar a tecla Shift durante os dois segundos de pausa. Outro mtodo incluir a
opo prompt na seo global para que o aviso de boot: seja mostrado automaticamente
aps carregar o Lilo.
Abaixo uma congurao para computadores com mais de um sistema operacional (Usando
GNU/Linux e DOS):
boot=/dev/hda1
compact
lba32
install=menu
map=/boot/map
vga=normal
delay=20
prompt
image=/vmlinuz
root=/dev/hda1
Captulo 6. Gerenciadores de Partida (boot loaders) 91
label=linux
read-only
other=/dev/hda2
table=/dev/hda
label=dos
O exemplo acima idntico ao anterior, o que foi acrescentado foi a opo prompt na seo
geral (para que seja mostrado imediatamente o aviso de boot: no momento emque o LILO for
carregado), e includa uma imagem de disco DOS localizado em /dev/hda2. No momento da
inicializao mostrada a mensagem boot: e caso seja digitado DOS e pressionado ENTER, o
sistema iniciar o DOS. Caso a tecla Enter seja pressionada semespecicar a imagem, a primeira
ser carregada (neste caso o GNU/Linux).
Voc pode substituir a palavra GNU/Linux da opo label por o nmero 1 e DOS por 2, desta
forma o nmero pode ser digitado para iniciar o sistema operacional. Isto muito til para
construir um menu usando a opo message. Para detalhes veja Opes usadas no LILO on
the next page.
A seo Geral vem do inicio do arquivo at a palavra delay=20. A partir do primeiro aparec-
imento da palavra image, other ou range, tudo o que vier abaixo ser interpretado como
imagens de inicializao.
Por padro, a imagem carregada a especicada por default= ou a primeira que aparece no
arquivo (caso default= no seja especicado). Para carregar o outro sistema (o DOS), digite
o nome da imagem de disco no aviso de boot: (especicada em label=) que ser carregada.
Voc tambm pode passar parmetros manualmente ao kernel digitando o nome da imagem
de disco e uma opo do kernel ou atravs do arquivo /etc/lilo.conf (veja Opes usadas
no LILO on the following page).
O LILO pode inicializar o seguintes tipos de imagens:
Imagens do kernel de um arquivo. Normalmente usado para iniciar o GNU/Linux pelo
disco rgido e especicado pelo parmetro image=.
Imagens do kernel de um dispositivo de bloco (como um disquete). Neste caso o
nmero de setores a serem lidos devem ser especicados na forma PRIMEIRO-LTIMO
ou PRIMEIRO+NMERO de setores a serem lidos. necessrio especicar o parmetro
image= e range=, por exemplo:
image=/dev/fd0
range=1+512
Todas as opes do kernel podem ser usadas na inicializao por dispositivo.
O setor de boot de outro sistema operacional (como o DOS, OS/2, etc). O setor de par-
tida armazenado junto com a tabela de partio no arquivo /boot/map. necessrio
especicar o parmetro OTHER=dispositivo ou OTHER=arquivo e a inicializao
atravs de umsetor de partida possui algumas opes especiais como o TABLE= (para es-
pecicar a tabela de partio) e o MAP-DRIVE= (identicao da unidade de discos pelo
sistema operacional). Veja o exemplo desta congurao abaixo:
other=/dev/hda2
table=/dev/hda
Captulo 6. Gerenciadores de Partida (boot loaders) 92
label=DOS
map-drive=0x80
to = 0x81
map-drive=0x81
to = 0x80
Observaes:
Caso o gerenciador de partida seja instalado no MBR do disco rgido (boot=/dev/hda),
o setor de boot do antigo sistema operacional ser substitudo, retire uma cpia do se-
tor de boot para um disquete usando o comando dd if=/dev/hda of=/floppy/mbr
bs=512 count=1 no GNU/Linux para salvar o setor de boot em um disquete e dd
if=/floppy/mbr of=/dev/hda bs=446 count=1 para restaura-lo. No DOS voc
pode usar o comando fdisk /mbr para criar um novo Master Boot Record.
Aps qualquer modicao no arquivo /etc/lilo.conf , o comando lilo dever ser
novamente executado para atualizar o setor de partida do disco rgido. Isto tambm
vlido caso o kernel seja atualizado ou a partio que contm a imagem do kernel
desfragmentada.
A limitao de 1024 cilindros do Lilo no existe mais a partir da verso 21.4.3 (recomen-
dada, por conter muitas correes) e superiores.
A reinstalao, formatao de sistemas DOS e Windows pode substituir o setor de par-
tida do HD e assim o gerenciador de partida, tornando impossvel a inicializao do
GNU/Linux. Antes de reinstalar o DOS ou Windows, verique se possui um disquete
de partida do GNU/Linux. Para gerar um novo boot loader, coloque o disquete na
unidade e aps o aviso boot: ser mostrado, digite linux root=/dev/hda1 (no lugar
de /dev/hda1 voc coloca a partio raiz do GNU/Linux), o sistema iniciar. Dentro do
GNU/Linux, digite o comando lilo para gerar umnovo setor de partida. Agora reinicie
o computador, tudo voltar ao normal.
6.1.2 Opes usadas no LILO
Esta seo traz opes teis usadas no arquivo lilo.conf com explicaes sobre o que cada
uma faz. As opes esto divididas em duas partes: As usadas na seo Global e as da seo
Imagens do arquivo lilo.conf.
Global
backup=[arquivo/dispositivo] - Copia o setor de partida original para o arquivo
ou dispositivo especicado.
boot=dispositivo - Dene o nome do dispositivo onde ser gravado o setor de par-
tida do LILO (normalmente usada a partio ativa ou o Master Boot Record - MBR).
Caso no seja especicado, o dispositivo montado como a partio raiz ser usado.
compact - Tenta agrupar requisies de leitura para setores seguintes ao sendo lido. Isto
reduz o tempo de inicializao e deixa o mapa menor. normalmente recomendado em
disquetes.
Captulo 6. Gerenciadores de Partida (boot loaders) 93
default=imagem - Usa a imagem especicada como padro ao invs da primeira en-
contrada no arquivo lilo.conf.
delay=[num] - Permite ajustar o nmero de segundos (em dcimos de segundos) que
o gerenciador de partida deve aguardar para carregar a primeira imagem de disco (ou a
especicada por default=). Esta pausa lhe permite selecionar que sistema operacional
ser carregado.
install=interface - Especica que interface ser usada para exibio de menu com
as opes de inicializao ao usurio. As seguintes opes so permitidas:
text - Exibe uma mensagem de texto (exibida atravs do parmetro message=) na
tela. Esta a recomendada para terminais.
menu - Exibe ummenu que lhe permite selecionar atravs de uma interface de menu
a opo de inicializao. Esta a padro.
bmp - Exibe um bitmap grco com a resoluo de 640x480 com 16 ou 256 cores.
lba32 - Permite que o LILO quebre o limite de 1024 cilindros do disco rgido, inicial-
izando o GNU/Linux em um cilindro acima deste atravs do acesso . Note que isto re-
quer compatibilidade com o BIOS, mais especicamente que tenha suporte a chamadas
int 0x13 e AH=0x42. recomendado o seu uso.
map=arquivo-mapa - Especica a localizao do arquivo de mapa (.map). Se no for
especicado, /boot/map usado.
message=arquivo - Especica um arquivo que contm uma mensagem que ser
mostrada antes do aviso de boot:. Nenhuma mensagem mostrada at que seja pres-
sionada a tecla Shift aps mostrar a palavra LILO. O tamanho da mensagem deve ser
no mximo 65535 bytes. Oarquivo de mapa deve ser novamente criado caso a mensagem
seja retirada ou modicada. Na mensagem, o caracter FF (CTRL+L) limpa a tela.
nowarn - No mostra mensagens de alerta.
password=senha - Permite proteger todas as imagens de disco com uma nica senha.
Caso a senha esteja incorreta, o LILO novamente carregado.
prompt - Mostra imediatamente o aviso de boot: ao invs de mostrar somente quando
a tecla Shift pressionada.
verbose=[num] - Ativa mensagens sobre o processamento do LILO. Os nmeros po-
dem ser especicados de 1 a 5, quanto maior o nmero, maior a quantidade de detalhes
mostrados.
timeout=[num] - Ajusta o tempo mximo de espera (em dcimos de segundos) de dig-
itao no teclado. Se nenhuma tecla pressionada no tempo especicado, a primeira
imagem automaticamente carregada. Igualmente a digitao de senha interrompida
se o usurio estiver inativo por este perodo.
Captulo 6. Gerenciadores de Partida (boot loaders) 94
Adicionalmente as opes de imagem do kernel append, ramdisk, read-only,
read-write, root e vga podem ser especicadas na seo global. Opes por Imagem
As opes por imagem iniciam com uma das seguintes opes: image=, other= ou range=.
Opes usadas por cada imagem:
table=dispositivo - Indica o dispositivo que contma tabela de partio para aquele
dispositivo. Necessrio apenas para imagens especicadas por other=.
unsafe - No acessa o setor de boot no momento da criao do mapa. Isto desativa
algumas checagens, como a checagem da tabela de partio. unsafe e table= so in-
compatveis.
label=[nome] - Permite especicar um nome para a imagem. Este nome ser usado na
linha boot: para inicializar o sistema.
alias=[nome] - Apelido para a imagem de disco. como um segundo label.
optional - Ignora a imagem caso no estiver disponvel no momento da criao do
mapa. til para especicar kernels que no esto sempre presentes no sistema.
password=senha - Protege a imagem atual com a senha. Caso a senha esteja incorreta,
o setor de partida do Lilo novamente carregado.
restricted - A senha somente pedida para iniciar a imagem se o sistema for iniciado
no modo single.
Tambm podem ser usados parmetros de inicializao do kernel no arquivo /etc
/lilo.conf, veja a seo Parmetros de inicializao passados ao kernel on page 104 para
maiores detalhes.
6.1.3 Um exemplo do arquivo de congurao lilo.conf
Abaixo um exemplo do arquivo /etc/lilo.conf que poder ser usado em instalaes
GNU/Linux com o DOS.
boot=/dev/hda1 #Instala o LILO em /dev/hda1
compact
install=menu
map=/boot/map
message=/etc/lilo.message #mensagem que ser mostrada na tela
default=1 #Carrega a Imagem especificada por label=1 como padro
vga=normal #usa o modo de video 80x25 ao iniciar o Linux
delay=20 #aguarda 2 segundos antes de iniciar a imagem padro
lba32 #permite quebrar o limite de 1024 cilindros na inicializao
prompt #mostra o aviso de "boot:" logo que o LILO carregado
Captulo 6. Gerenciadores de Partida (boot loaders) 95
image=/vmlinuz #especifica o arquivo que contm a primeira imagem
root=/dev/hda1 #partio onde a imagem acima esta localizada
label=1 #identificao da imagem de disco
read-only #monta inicialmente como somente leitura
password=12345 #Usa a senha 12345
restricted #somente quando iniciar com o parmetro single
other=/dev/hda2 #especifica outro sistema que ser carregado
table=/dev/hda #a tabela de partio dele est em /dev/hda
label=2 #identificao desta imagem de disco
password=12345 #pede a senha antes de iniciar este sistema
Voc pode usar o exemplo acima como base para construir sua prpria congurao personal-
izada do /etc/lilo.conf mas no se esquea de modicar as tabelas de parties para seu
sistema. Se voc usa o Windows NT 4.0, Windows NT 5.0 (Windows 2000) ou o OS/2,
recomendo ler o DOS+Windows+OS/2-HOWTO.
Aps criar seu arquivo /etc/lilo.conf , execute o comando lilo e se tudo ocorrer bem, o
LILO ser instalado.
6.2 GRUB
(Os detalhes contidos na seo sobre o GRUB, foram integralmente desenvolvidos por Alexan-
dre Costa <alebyte@bol.com.br> como contribuio ao guia FOCA GNU/Linux.)
O GRUB (Grand Unied Boot Loader) mais uma alternativa como gerenciador de boot e apre-
senta alguns recursos extras com relao as outras opes disponveis. Ele exvel, funcional
e poderoso, podendo inicializar sistemas operacionais como o Windows (9x, ME, NT, 2000 e
XP), Dos, Linux, GNU Hurd,
*
BSD, OS/2 e etc. Podemos destacar tambm o suporte aos
sistemas de arquivos ext2 (Linux), ext3 e reiserfs (novos sistemas de arquivos journaling do
Linux), FAT16 e FAT32 (Win 9x/ME), FFS (Fast File System usado no *BSD), minix (MINIX OS)
e etc.
Por utilizar o padro Multiboot ele capaz de carregar diversas imagens de boot e mdulos.
Por esse motivo ele o nico gerenciador de inicializao capaz de carregar o conjunto de
servidores do GNU Hurd. O GRUB tambm permite buscar imagens do kernel pela rede, por
cabo seriais, suporta discos rgidos IDE e SCSI, detecta toda a memria RAM disponvel no
sistema, tem interface voltada para linha de comandos ou menus de escolha, alm de suportar
sistemas sem discos e terminais remotos.
Como possui inmeros recursos, ser apresentada sua utilizao bsica, cando como sugesto
ao leitor procurar se aprofundar mais em suas possibilidades de uso e congurao.
Captulo 6. Gerenciadores de Partida (boot loaders) 96
6.2.1 Como o GRUB trabalha com discos e parties
O GRUB trabalha com uma notao diferente para apontar discos e parties sendo necessrio
algumas explicaes antes de prosseguir. Veja a tabela comparativa:
No Linux No GRUB
/dev/hda (hd0)
/dev/hda1 (hd0,0)
/dev/hda2 (hd0,1)
/dev/hdb (hd1)
/dev/hdb1 (hd1,0)
/dev/hdb2 (hd1,1)
/dev/sda (hd0) # Disco SCSI ID 0
/dev/sda1 (hd0,0) # Disco SCSI ID 0, partio 1
/dev/sda2 (hd0,1) # Disco SCSI ID 0, partio 2
/dev/sdb (hd1) # Disco SCSI ID 1
/dev/sdb1 (hd1,0) # Disco SCSI ID 1, partio 1
/dev/sdb2 (hd1,1) # Disco SCSI ID 1, partio 2
/dev/fd0 (fd0)
OBS: Os discos IDE e SCSI so referenciados ambos como (hd?) pelo GRUB. No h distino
entre os discos e de modo geral a identicao de unidades IDE menor do que qualquer tipo
de drive SCSI, salvo se voc alterar a seqncia de inicializao (boot) na BIOS.
Para saber como o Linux trabalha com parties veja Identicao de discos e parties em
sistemas Linux on page 85.
6.2.2 Instalando o GRUB
A instalao do GRUB ao contrrio da instalao do LILO (LILO on page 89), s precisa ser
executada uma nica vez. Caso seja necessria alguma mudana como por exemplo adicionar
uma nova imagem, esta pode ser feita apenas editando o arquivo de congurao menu.lst.
No MBR
Um mtodo simples de adicionar o GRUB para gerenciar seu MBR (Master Boot Record) ro-
dando o seguinte comando (como superusurio):
# /sbin/grub-install /dev/hda
Captulo 6. Gerenciadores de Partida (boot loaders) 97
Este comando grava o GRUB no MBR do primeiro disco e cria o diretrio /boot/grub onde
estaro os arquivos necessrios para o seu funcionamento. Neste ponto o GRUB j est instalado
e quando voc reiniciar seu computador ir se deparar com uma linha de comandos, onde ter
que carregar a imagem do kernel manualmente. Mais adiante ser explorada a utilizao desta
linha de comando que muito eciente.
Provavelmente voc achar mais interessante copiar o arquivo de congurao de exemplos
do GRUB e otimiz-lo s suas necessidades. Note que isto no exclui a possibilidade de utilizar
a linha de comando, apenas cria uma interface de menus onde voc pode congurar vrias
opes de boot de uma forma organizada, automatizada e funcional. Copie este arquivo para
o diretrio /boot/grub com o seguinte comando:
# cp /usr/share/doc/grub/examples/menu.lst /boot/grub
Por ser um arquivo de exemplos ser necessrio otimiz-lo de acordo com suas necessidades,
o que ser abordado mais a frente.
6.2.3 No disco exvel (somente linha de comando)
Quando criamos um disquete de partida, este funcionar em um sistema qualquer, podendo
utilizar este disquete em vrias mquinas diferentes ou em uma mquina em que tenha tido
algum problema com o GRUB no MBR. Coloque um disquete virgem e digite os seguintes co-
mandos:
# dd if=/usr/lib/grub/i386-pc/stage1 of=/dev/fd0 count=1
# dd if=/usr/lib/grub/i386-pc/stage2 of=/dev/fd0 seek=1
Estes comandos permitemque seja apresentada a linha de comando do grub quando este disco
for utilizado para boot.
6.2.4 No disco exvel (com interface de menu)
Quando foi criado o disquete de partida anteriormente, este s nos permitia utilizar a linha de
comando sendo necessrio carregar o menu.lst pelo disco rgido (o qual deve estar presente).
Em alguns casos este disco satisfaz as necessidades bsicas mas pode haver um momento em
que voc deseje ter um disquete que funcione com vrios sistema e no dependa de um disco
xo.
Digite os seguintes comandos:
# mke2fs /dev/fd0
# mount /dev/fd0 /floppy -t ext2
# mkdir /floppy/grub
# cp /usr/lib/grub/i386-pc/stage[12] /floppy/grub
Captulo 6. Gerenciadores de Partida (boot loaders) 98
# cp /usr/share/doc/grub/examples/menu.lst /floppy/grub
# umount /floppy
# /sbin/grub
Este ltimo comando disponibiliza a linha de comando do GRUB. Digite os seguintes coman-
dos:
grub> install (fd0)/grub/stage1 d (fd0) (fd0)/grub/stage2 p (fd0)/grub/menu.lst
grub> quit
Neste momento o disquete est pronto. Note que o menu.lst que foi copiado para ele um
arquivo de exemplo, sendo necessrio que voc o congure de acordo com suas necessidades.
6.2.5 Opes do arquivo de congurao
Esta seo descreve o arquivo menu.lst com explicaes sobre as opes mais usadas. Este
arquivo dividido emparmetros Globais, que afetamo arquivo todo e parmetros que s tem
efeito para as imagens do sistema que ser carregado. Algumas opes podem ser passadas
para o kernel do Linux no momento do boot, algumas delas tambm sero detalhadas.
Parmetros Globais timeout = Dene umtempo (emsegundos) de espera. Se nenhuma
tecla for pressionada, carrega a imagem padro.
default = Dene qual ser a opo padro que deve ser automaticamente sele-
cionada quando nenhuma outra for especicada em um tempo denido por time-
out.
fallback = Caso ocorra algum erro inesperado e a opo padro no possa ser
carregada, este parmetro dene qual a outra opo deve ser utilizada.
color = Permite que voc escolha as cores usadas no menu de boot.
password = Permite que voc especique uma senha. Est ser solicitada sempre
que houver necessidade de realizar uma funo que no seja carregar as imagens
disponveis, como por exemplo acessar a linha de comandos do GRUB. Voc pode
utilizar tambm o parmetro password para esconder um arquivo que contenha
outras conguraes, como ummenu.lst secreto. Oarquivo pode ter umnome qual-
quer.
Ex.: password = senha (hd0,0)/boot/grub/secret.conf
Voc pode ter vrias entradas do parmetro password em um mesmo arquivo
sendo que uma delas usada para bloquear o acesso as imagens/linha de comandos
e as outras usadas para carregar arquivos de opes do GRUB. Quando voc digitar
p para entrar com a senha, voc pode digitar a senha que protege as imagens/linha
de comandos ou a que utilizada para carregar os arquivos de opes.
hiddenmenu = Est opo faz com que o menu de opes no seja mostrado e de
boot na imagem especicada por default depois de expirado o tempo denido
em timeout. O usurio pode requisitar o menu com as opes pressionando a
tecla <ESC> antes que o tempo denido em timeout expire.
Captulo 6. Gerenciadores de Partida (boot loaders) 99
Parmetros que afetam apenas as imagens title = Dene um texto que ser apresen-
tado no menu de boot para identicar o sistema a ser inicializado.
root = Determina qual a partio raiz do sistema a ser inicializada.
rootnoverify = Idntica a opo root, mas no tenta montar a partio-alvo, o
que necessrio para alguns sistemas como Dos e Windows.
kernel = Nesta opo voc informa qual o kernel vai ser inicializado. Voc pode
passar parmetros diretamente para o kernel tambm.
Ex.: kernel (hd0,0)/boot/vmlinuz-2.4.16 vga=6
module = Faz com que algum mdulo necessrio para o boot seja carregado.
Lembre-se que estes no so mdulos do kernel (mdulos de som, rede, etc.) e sim
mdulos necessrios ao boot de alguns sistemas, como por exemplo o GNU Hurd.
lock = Quando voc quiser controlar se uma pessoa pode iniciar um sistema que
esteja listado nas opes do menu de boot, voc pode utilizar esta opo que faz com
que a senha especicada com o comando password seja solicitada no momento
em que se tentar carregar a imagem em questo.
pause = Emite uma mensagem na tela e espera uma tecla ser pressionada.
makeactive = Torna a partio ativa. Este comando est limitado a parties
primrias dos discos.
chainloader = Alguns sistemas como o Windows ou Dos armazenamseu prprio
gerenciador de boot no incio da partio em que ele est instalado. Para efetuar o
boot destes sistemas atravs do GRUB, voc precisa pedir para que o gerenciador
de boot de tal sistema seja carregado e faa seu trabalho, dando o boot.
hide e unhide = Esconde e mostra partio respectivamente. Estas duas opes
so necessrias quando houver mais de uma verso do Dos ou Windows na
mquina em parties diferentes, j que estes sistemas detectam automaticamente a
partio e quase sempre o fazem de modo errado. Suponha o Windows na primeira
partio primria (hd0,0) e o Dos na segunda partio primria (hd0,1). Quando
quisermos carregar estes sistemas devemos proceder da seguinte maneira:
title Windows
hide (hd0,1)
unhide (hd0,0)
rootnoverify (hd0,0)
chainloader +1
makeactive
title Dos
hide (hd0,0)
unhide (hd0,1)
rootnoverify (hd0,1)
chainloader +1
makeactive
map = Alguns sistemas no permitem ser inicializados quando no esto no
primeiro disco (Dos, Win 9x, etc.). Para resolver esta e outras situaes o GRUB
tem um comando que permite enganar tal sistema mapeando as unidades de disco
do modo como lhe for mais conveniente. Imagine que voc tenha o primeiro disco
(hd0) com o GNU/Linux instalado e em um outro disco (hd1) com o Windows/Dos
Captulo 6. Gerenciadores de Partida (boot loaders) 100
instalado. O Windows/Dos no permitem serem inicializados desta forma e como
soluo voc poderia usar a seguinte entrada no arquivo de conguraes do GRUB:
title Windows
unhide (hd1,0)
rootnoverify (hd1,0)
chainloader +1
map (hd1) (hd0)
makeactive
Isso faz com que o disco (hd1), onde esta o Windows/Dos, seja apresentado a este
sistema como (hd0) enganado o mesmo e possibilitando o boot.
Parmetros enviados diretamente ao kernel Pode ser necessrio passar alguns parmetros
para o kernel no momento do boot. Para maiores informaes ver a seo Parmet-
ros de inicializao passados ao kernel on page 104. Voc pode passar os parmetros da
seguinte maneira:
# Exemplo de entrada no menu.lst.
title Linux 2.4.16
root (hd0,0)
kernel (hd0,0)/boot/vmlinuz-2.4.16 vga=6 mem=512M ramdisk=0
Neste exemplo, a linha com o comando kernel usada para indicar qual imagem deve
ser carregada. As opes que seguem (vga, mem e ramdisk) so parmetros que devem
ser passados diretamente ao kernel do sistema a ser carregado.
6.2.6 Um exemplo de arquivo de congurao
# Exemplo de arquivo de configurao do GRUB.
# Note que voc pode usar o caracter # para fazer comentrios.
# Se aps 30 segundos nenhuma tecla for pressionada, carrega a imagem padro.
timeout 30
# Define a primeira imagem como padro.
default 0
# Caso a imagem padro no funcione carrega a imagem definida aqui.
fallback 1
# Define as cores que sero usadas no menu.
color light-cyan/black white/blue
# Permite utilizar uma senha.
password minha-senha-secreta
password minha-senha (hd0,0)/boot/grub/secret.conf
Captulo 6. Gerenciadores de Partida (boot loaders) 101
# Para boot com o GNU/Hurd
title GNU/Hurd
root (hd0,0)
kernel /boot/gnumach.gz root=hd0s1
module /boot/serverboot.gz
# Para boot com o GNU/Linux
title Linux 2.4.16
# Pede a senha configurada em "password" antes de carregar esta imagem.
lock
root (hd0,0)
# Atente as opes passadas diretamente para o kernel (vga, mem, etc.).
kernel (hd0,0)/boot/vmlinuz-2.4.16 vga=6 mem=512M ramdisk=0
# Para boot com o Mach (obtendo o kernel de um disquete)
title Utah Mach4 multiboot
root (hd0,2)
pause Insira o disquete agora!!!
kernel (fd0)/boot/kernel root=hd0s3
module (fd0)/boot/bootstrap
# Para boot com FreeBSD
title FreeBSD 3.4
root (hd0,2,a)
kernel /boot/loader
# Para boot com OS/2
title OS/2
root (hd0,1)
makeactive
chainloader +1
chainloader /boot/chain.os2
# Para boot com Windows 9x, ME, NT, 2000, XP.
title Windows 9x, ME, NT, 2000, XP
unhide (hd0,0)
rootnoverify (hd0,0)
chainloader +1
makeactive
# Para instalar o GRUB no disco rgido.
title = Instala o GRUB no disco rgido
root = (hd0,0)
setup = (hd0)
Captulo 6. Gerenciadores de Partida (boot loaders) 102
# Muda as cores.
title Mudar as cores
color light-green/brown blink-red/blue
6.2.7 Usando a linha de comandos do GRUB
O GRUB possui inmeros recursos, mas com certeza um dos mais importantes e que merece
destaque sua linha de comandos. A maioria dos comandos usados no arquivo de congu-
rao menu.lst so vlidos aqui e muitos outros esto disponveis. Uma breve apresentao
da linha de comandos ser dada, cando por conta do leitor se aprofundar o quanto achar
necessrio em sua exibilidade.
Quando o GRUB inicializado voc pode se deparar com sua linha de comandos ou se possuir
o arquivo menu.lst congurado, um menu de escolha. Mesmo usando os menus de escolha
voc pode utilizar a linha de comandos, bastando para isso seguir as instrues no rodap da
tela onde o GRUB nos informa que podemos digitar e para editar as entradas de boot ou c para
ter acesso a linha de comandos (lembre-se que pressionar <ESC> faz com que voc volte aos
menus de escolha).
Caso a opo password tenha sido especicada no arquivo menu.lst, ser necessrio antes
de acessar as outras opes (que estaro desabilitadas) pressionar p e entrar com a senha cor-
reta.
Agora, com acesso a linha de comandos, voc pode vericar os comandos disponveis pressio-
nando duas vezes a tecla <TAB>. Note que voc tambm pode utilizar esta tecla para comple-
tar nomes de comandos bem como parmetros de alguns comandos.
Alguns comandos disponveis:
cat = Este comando permite vericar o contedo de um arquivo qualquer, o qual deve
estar gravado em um dispositivo ligado a sua mquina. Embora seja um recurso til,
nenhuma permisso de acesso vericada e qualquer pessoa que tenha acesso a linha
de comandos do GRUB pode listar o contedo de arquivos importantes. Para contornar
este problema o parmetro password utilizado no arquivo menu.lst e faz com que
uma senha seja solicitada antes de liberar o acesso a linha de comandos. No esquea
que ainda possvel utilizar um disquete com o GRUB para dar boot na mquina o que
permite usar a linha de comandos pelo disquete.
Ex.: grub> cat (hd0,0)/etc/passwd
cmp = Este comando utilizado para comparar dois arquivos.
Ex.: grub> cmp (hd0,0)/arquivo1 (hd0,0)/arquivo2
configfile = Carrega um arquivo de congurao do GRUB.
Ex.: grub> configfile (hd0,0)/boot/grub/menu.lst
displayapm = Mostra informaes sobre APM.
displaymem = Mostra informaes sobre a memria RAM.
find = Permite encontrar um arquivo. A sada deste comando disponibiliza o nome
completo do caminho para o arquivo e a partio onde o mesmo est localizado.
Ex.: grub> find stage1
Captulo 6. Gerenciadores de Partida (boot loaders) 103
geometry = Mostra informaes sobre a geometria reconhecida de seu drive e permite
que voc escolha a geometria desejada caso esta esteja sendo reconhecida erroneamente.
help = help comando para ver a ajuda.
Ex.: help color
install = Instala o GRUB, embora no seja recomendado o uso deste comando dire-
tamente, pois possvel esquecer ou trocar facilmente um parmetro e sobrescrever a
tabela de parties de seu disco.
Ex.: install (fd0)/grub/stage1 d (fd0) (fd0)/grub/stage2 p (fd0)/grub/menu.lst
setup = Voc pode usar este comando para instalar o GRUB. Note que sua sintaxe
menos complexa do que a usada em install.
Ex.:
grub> root = (hd0,0)
grub> setup = (hd0)
quit = Abandona a linha de comandos do GRUB.
reboot = Reinicia o computador.
boot = Efetua o boot. Suponha o Linux instalado em (hd0,0), podemos passar os
seguintes comandos na linha de comandos para efetuar o boot de uma imagem do
GNU/Linux:
grub> root (hd0,0)
grub> kernel (hd0,0)/boot/vmlinuz-2.4.16 vga=6
grub> boot
Muitos outros comandos esto disponveis tanto na linha de comandos do GRUB quanto no
arquivo de congurao menu.lst. Estes comandos adicionais podem ser necessrios apenas
para algumas pessoas e por isso no sero explicados.
6.2.8 Removendo o GRUB do MBR
No existe a necessidade de se remover o GRUB do MBR pois no h utilizao para o mesmo
vazio. Para substituir o GRUB do MBR necessrio apenas que outro gerenciador de boot
escreva algo nele. Voc pode seguir o procedimento de instalao do LILO para escrever algo
no MBR ou usar o comando fdisk /mbr do DOS.
6.2.9 Como obter informaes mais detalhadas
Para obter informaes mais detalhadas sobre o GRUB recomendado o site ocial do mesmo, o
qual est disponvel apenas na lngua inglesa. Os seguintes sites foram utilizados na pesquisa:
Site ocial do GRUB: http://www.gnu.org/software/grub/
Site Debian-br (http://www.debianbrasil.org/), na parte de suporte, documen-
tao, Como usar o GRUB: Um guia rpido para usar o GRUB, feito por Vitor Silva
Souza e Gustavo Noronha Silva.
Captulo 6. Gerenciadores de Partida (boot loaders) 104
6.3 Parmetros de inicializao passados ao kernel
Abaixo algumas das opes mais usadas para passar parmetros de inicializao de hard-
ware/caractersticas ao kernel.
append=string - Passa os parmetros especicados ao kernel. extremamente til
para passar parmetros de hardwares que podem ter problemas na hora da deteco ou
para parmetros que precisam ser passados constantemente ao kernel atravs do aviso
boot:.
Exemplo: append=mem=32m
ramdisk=tamanho - Especica o tamanho do disco RAMque ser criado. Caso for igual
a zero, nenhumdisco RAMser criado. Se no for especicado, o tamanho do disco RAM
usado na imagem de inicializao do kernel ser usada.
read-only - Especica que o sistema de arquivos raiz dever ser montado como so-
mente leitura. Normalmente o sistema de inicializao remonta o sistema de arquivos
como leitura/gravao.
read-write - Especica que o sistema de arquivos raiz dever ser montado como
leitura e gravao.
root=dispositivo - Especica o dispositivo que ser montado como raiz. Se a palavra
current usada, o dispositivo atual ser montado como raiz.
vga=modo - Especica o mode de video texto que ser usado durante a inicializao.
normal - Usa o modo 80x25 (80 colunas por 25 linhas)
extended (ou ext) - Usa o modo de texto 80x50
ask - Pergunta que modo de video usar na inicializao. Os modos de vdeo podem
ser obtidos pressionando-se enter quando o sistema perguntar o modo de vdeo.
Uma lista mais detalhada de parmetros de inicializao pode ser obtida no documento
Boot-prompt-howto (veja Documentos HOWTOs on page 346).
6.4 LOADLIN
umgerenciador de partida que permite iniciar o GNU/Linux a partir do DOS. Avantagemdo
uso do Loadlin no ser preciso reiniciar o computador para se entrar no GNU/Linux. Ele
funciona carregando o kernel (copiado para a partio DOS) para a memria e inicializando
o GNU/Linux.
Outro motivo pelo qual muito usado quando o GNU/Linux no tem suporte a um certo
tipo de dispositivo, mas este tem seu suporte no DOS ou Windows e funciona corretamente
com eles.
Captulo 6. Gerenciadores de Partida (boot loaders) 105
O truque o seguinte: Voc inicia normalmente pelo DOS e aps seu dispositivo ser congu-
rado corretamente pelo driver do DOS e funcionando corretamente, voc executa o Loadlin
e o GNU/Linux assim poder usa-lo. Muitos usam o comando Loadlin dentro do arquivo
autoexec.bat para iniciar o GNU/Linux automaticamente aps o dispositivo ser congu-
rado pelo DOS.
ATENO!!! No execute o Loadlin dentro do Windows.
6.4.1 Opes do LOADLIN
Abaixo a lista de opes que podem ser usadas com o programa LOADLIN (note que todas so
usadas no DOS):
loadlin [imagem_kernel] [argumentos] [opes]
imagem_kernel - Arquivo que contm o kernel.
root=dispositivo - Especica o dispositivo que contm o sistema de arquivos raiz.
especicado de acordo com a identicao de dispositivos no GNU/Linux (/dev/hda1,
/dev/hdb1, etc).
ro - Diz ao kernel para montar inicialmente o sistema de arquivos raiz como somente
leitura. Os scripts de inicializao normalmente modicam o sistema de arquivos para
leitura e gravao aps sua checagem.
rw - Diz ao kernel para montar inicialmente o sistema de arquivos raiz como leitura e
gravao.
initrd=[NUM] - Dene o tamanho do disco RAM usado no sistema.
-v - Mostra detalhes sobre mensagens e congurao
-t - Modo de teste, tudo feito menos a inicializao do GNU/Linux.
-d arquivo - Mesma funo de -t, mas envia a sada para o arquivo
-txmode - Altera o modo de vdeo para 80x25 antes de inicializar o kernel.
-dskreset - Aps carregar a imagem do kernel, reseta todos os discos rgidos antes de
inicializar o GNU/Linux.
6.4.2 Exemplo de inicializao com o LOADLIN
Abaixo voc encontra um exemplo do comando loadlin que poder ser usado em sua insta-
lao GNU/Linux (precisando apenas ajustar a localizao da partio raiz do GNU/Linux de
acordo com seu sistema).
C:\> LOADLIN vmlinuz root=/dev/hda1 ro
| | |
| | +- Montar como somente leitura
| |
| +- Partio raiz
|
+- Nome do kernel copiado para o DOS
Captulo 6. Gerenciadores de Partida (boot loaders) 106
6.5 syslinux
Outro gerenciador de partida que funciona somente comsistemas de arquivos DOS. Aprincipal
diferena do syslinux em relao ao LOADLIN que foi feito especialmente para funcionar
em disquetes formatados no DOS, facilitando a instalao do GNU/Linux e para a criao de
disquetes de recuperao ou de inicializao. Um disquete gerado pelo syslinux lido sem
problemas pelo DOS/Windows.
syslinux [-s] [dispositivo]
A opo -s instala no disquete uma verso segura, lenta e estpida do syslinux. Isto
necessrio para algumas BIOS problemticas.
6.5.1 Criando um disquete de inicializao com o syslinux
Siga os passos abaixo para criar um disquete de inicializao com o syslinux:
1 Formate o disquete no DOS ou comalguma ferramenta GNU/Linux que faa a formatao
de disquetes para serem usados no DOS.
2 Copie um ou mais arquivos de kernel para o disquete
3 Digite syslinux /dev/fd0 (lembre-se de usar a opo -s se tiver problemas de inicial-
izao). Este comando modicar o setor de partida do disquete e gravar um arquivo
chamado LDLINUX.SYS no diretrio raiz do disquete.
Lembre-se: O disquete deve estar desmontado antes de usar o comando syslinux, caso
o disquete estiver montado uma mensagem ser mostrada e o syslinux abortado.
Por padro carregado o kernel de nome GNU/Linux. Este padro pode ser modicado
atravs do arquivo de congurao SYSLINUX.CFG que tambm gravado no diretrio raiz
do disquete. Veja O arquivo SYSLINUX.CFG on this page para detalhes.
Se as teclas Caps Lock ou Scrool Lock estiverem ligadas ou Shift, Alt forem pressionadas du-
rante o carregamento do syslinux, o syslinux mostrar um aviso de boot: no estilo do
LILO. O usurio pode ento digitar o nome do kernel seguido de qualquer parmetro para
inicializar o GNU/Linux.
6.5.2 O arquivo SYSLINUX.CFG
Este arquivo criado no diretrio raiz da unidade de disquete e contmas opes que sero us-
adas para modicar o funcionamento do syslinux. Abaixo a listagem de opes que podem
ser especicadas neste arquivo:
default [kernel [opes]] Indica o nome do kernel e as opes dele que sero usadas na ini-
cializao, caso syslinux seja iniciado automaticamente. Caso no for especicada, o
valor assumido ser linux auto sem nenhuma opo de inicializao.
Captulo 6. Gerenciadores de Partida (boot loaders) 107
append [opes ] Passa uma ou mais opes ao kernel na inicializao. Elas sero adicionadas
automaticamente para inicializaes automticas e manuais do syslinux.
label [nome ]
kernel [kernel ]
append [opes ] Nome que identicar o kernel no aviso de boot: (idntica a opo label=
do LILO). Se a imagem especicada por nome for selecionada, o kernel usado ser o
especicado pelo parmetro kernel e as opes usadas por append. Caso seja passado
um hfen - ao parmetro append, os parmetros passados pelo append global sero
anulados.
implicit [valor ] Se o [valor] for igual a 0, no carrega a imagem at que seja explicitamente
especicada na opo label.
timeout [tempo ] Indica quanto tempo o syslinux aguardar antes de inicializar automati-
camente (medido em1/10 de segundos). Caso alguma tecla seja pressionada, a inicializa-
o automtica interrompida. Para desativar esta caracterstica, use 0 como timeout.
O valor mximo de 35996.
font [nome ] Especica uma fonte (em formato .psf) que ser usada para mostrar as men-
sagens do syslinux (aps o aviso de copyright do programa). Ele carrega a fonte para a
placa de vdeo, se a fonte conter uma tabela unicode, ela ser ignorada. Somente funciona
em placas EGA e VGA.
kbdmap [mapa ] Instala um simples mapa de teclado. O mapa de teclados usado muito
simples: somente remapeia cdigos conhecidos pela BIOS, o que signica que somente
teclas usadas no teclado padro EUA sero usadas. O utilitrio keytab-lilo.pl da
distribuio do lilo pode ser usado para criar tais mapas de teclado.
prompt [valor ] Se [valor] for igual a 1, mostra automaticamente o aviso de boot: assim que
o syslinux for iniciado. Caso seja igual a 0, mostra o aviso de boot: somente se as
teclas Shift ou Alt forem pressionadas ou Caps Lock e Scrool Lock estiverem ativadas.
display [arquivo ] Mostra o contedo do [arquivo] durante a inicializao do syslinux.
F1 [arquivo ]
F2 [arquivo ]
. . .
F0 [arquivo ] Especica que arquivos sero mostrados quando as teclas de F1 at F10 forem
pressionadas. Para detalhes, veja Formatao dos arquivos de tela do syslinux on the
current page.
6.5.3 Formatao dos arquivos de tela do syslinux
Os arquivos de texto que so mostrados na tela pelo syslinux podem ter suas cores modi-
cadas usando parmetros simples, isto causa um bom efeito de apresentao. Abaixo esto os
cdigos que podem ser usados para criar um arquivo texto que ser exibido pelo syslinux:
CTRL+L - Limpa a tela (semelhante ao que o clear faz).
CTRL+O[frente][fundo] - Define a cor de frente e fundo, se somente
uma cor for especificada, esta ser assumida como frente.
Veja os valores para [frente] e [fundo] abaixo:
00 - preto 08 - cinza escuro
Captulo 6. Gerenciadores de Partida (boot loaders) 108
01 - azul escuro 09 - azul claro
02 - verde escuro 0a - verde claro
03 - ciano escuro 0b - ciano claro
04 - vermelho escuro 0c - vermelho claro
05 - purple escuro 0d - purple claro
06 - marrom 0e - amarelo
07 - cinza claro 0f - branco
CTRL+Z - Equivalente ao fim de arquivo no DOS
O cdigo padro usado o 07. Escolhendo uma cor clara para o fundo (08-0f) resultar em
uma cor piscante correspondente para a texto (00-07).
109
Captulo 7
Execuo de programas
Este captulo explica como executar programas no GNU/Linux e o uso das ferramentas de
controle de execuo dos programas.
7.1 Executando um comando/programa
Para executar um comando, necessrio que ele tenha permisses de execuo (veja Tipos de
Permisses de Acesso on page 170 e ls on page 123) e que esteja no caminho de procura de
arquivos (veja path on this page).
No aviso de comando #(root) ou $(usurio), digite o nome do comando e tecle Enter. O pro-
grama/comando executado e receber um nmero de identicao (chamado de PID - Pro-
cess Identication), este nmero til para identicar o processo no sistema e assim ter um
controle sobre sua execuo (ser visto mais adiante neste captulo).
Todo o programa recebe uma identicao de usurio (UID) quando executado o que deter-
mina quais sero suas permisses de acesso durante sua execuo. O programa normalmente
usa o UIDdo usurio que o executou ou o usurio congurado pelo bit de permisso de acesso
SUID caso estiver denido. Existem tambm programas que so executados como root e mod-
icam sua identicao de usurio para algum que tenha menos privilgios no sistema (como
o Apache, por exemplo). Para maiores detalhes veja Permisses de acesso a arquivos e di-
retrios on page 169.
Todo o programa executado no GNU/Linux roda sob o controle das permisses de acesso.
Recomendo ver mais tarde o Permisses de acesso a arquivos e diretrios on page 169.
Exemplos de comandos: ls, df, pwd.
7.2 path
Path o caminho de procura dos arquivos/comandos executveis. O path (caminho) ar-
mazenado na varivel de ambiente PATH. Voc pode ver o contedo desta varivel com o
Captulo 7. Execuo de programas 110
comando echo $PATH.
Por exemplo, o caminho /usr/local/bin:/usr/bin:/bin:/usr/bin/X11 signica que
se voc digitar o comando ls, o interpretador de comandos iniciar a procura do programa ls
no diretrio /usr/local/bin, caso no encontre o arquivo no diretrio /usr/local/bin
ele inicia a procura em /usr/bin, at que encontre o arquivo procurado.
Caso o interpretador de comandos chegue at o ltimo diretrio do path e no encontre o
arquivo/comando digitado, mostrada a seguinte mensagem:
bash: ls: command not found (comando no encontrado).
O caminho de diretrios vem congurado na instalao do Linux, mas pode ser alterado no
arquivo /etc/profile. Caso deseje alterar o caminho para todos os usurios, este arquivo
o melhor lugar, pois ele lido por todos os usurios no momento do login.
Caso um arquivo/comando no esteja localizado em nenhum dos diretrios do path, voc
deve executa-lo usando um ./ na frente do comando.
Se deseja alterar o path para um nico usurio, modique o arquivo .bash_profile em seu
diretrio de usurio (home).
OBSERVAO: Por motivos de segurana, no inclua o diretrio atual $PWD no path.
7.3 Tipos de Execuo de comandos/programas
Um programa pode ser executado de duas formas:
1 Primeiro Plano - Tambm chamado de foreground. Quando voc deve esperar o
trmino da execuo de um programa para executar um novo comando. Somente
mostrado o aviso de comando aps o trmino de execuo do comando/programa.
2 Segundo Plano - Tambm chamado de background. Quando voc no precisa esperar
o trmino da execuo de um programa para executar um novo comando. Aps iniciar
um programa em background, mostrado um nmero PID (identicao do Processo) e
o aviso de comando novamente mostrado, permitindo o uso normal do sistema. O
programa executado em background continua sendo executado internamente. Aps ser
concludo, o sistema retorna uma mensagemde pronto acompanhado do nmero PIDdo
processo que terminou.
Para iniciar um programa em primeiro plano, basta digitar seu nome normalmente. Para
iniciar um programa emsegundo plano, acrescente o caracter & aps o nal do comando.
OBS: Mesmo que um usurio execute um programa em segundo plano e saia do sistema, o
programa continuar sendo executado at que seja concludo ou nalizado pelo usurio que
iniciou a execuo (ou pelo usurio root).
Exemplo: find / -name boot.b &
O comando ser executado em segundo plano e deixar o sistema livre para outras tarefas.
Aps o comando find terminar, ser mostrada uma mensagem.
Captulo 7. Execuo de programas 111
7.4 Executando programas em seqncia
Os comandos podem ser executados em seqncia (um aps o trmino do outro) se os sepa-
rarmos com ;. Por exemplo: echo primeiro;echo segundo;echo terceiro
7.5 ps
Algumas vezes til ver quais processos esto sendo executados no computador. O comando
ps faz isto, e tambm nos mostra qual usurio executou o programa, hora que o processo foi
iniciado, etc.
ps [opes]
Onde:
opes
a Mostra os processos criados por voc e de outros usurios do sistema.
x Mostra processos que no so controlados pelo terminal.
u Mostra o nome de usurio que iniciou o processo e hora em que o processo foi iniciado.
m Mostra a memria ocupada por cada processo em execuo.
f Mostra a rvore de execuo de comandos (comandos que so chamados por outros coman-
dos).
e Mostra variveis de ambiente no momento da inicializao do processo.
w Mostra a continuao da linha atual na prxima linha ao invs de cortar o restante que no
couber na tela.
sort:[coluna] Organiza a sada do comando ps de acordo com a coluna escolhida. Voc pode
usar as colunas pid, utime, ppid, rss, size, user, priority. Pode ser es-
pecicada uma listagem em ordem inversa especicando --sort:[-coluna]. Para
mais detalhes e outras opes, veja a pgina de manual.
As opes acima podem ser combinadas para resultar em uma listagem mais completa. Voc
tambm pode usar pipes | para filtrar a sada do comando ps. Para detalhes, veja |
(pipe) on page 182.
Ao contrrio de outros comandos, o comando ps no precisa do hfen - para especicar os
comandos. Isto porque ele no utiliza opes longas e no usa parmetros.
Exemplos: ps, ps ax|grep inetd, ps auxf, ps auxw.
7.6 top
Mostra os programas em execuo ativos, parados, tempo usado na CPU, detalhes sobre o uso
da memria RAM, Swap, disponibilidade para execuo de programas no sistema, etc.
top um programa que continua em execuo mostrando continuamente os processos que
esto rodando emseu computador e os recursos utilizados por eles. Para sair do top, pressione
a tecla q.
Captulo 7. Execuo de programas 112
top [opes]
Onde:
-d [tempo ] Atualiza a tela aps o [tempo] (em segundos).
-s Diz ao top para ser executado em modo seguro.
-i Inicia o top ignorando o tempo de processos zumbis.
-c Mostra a linha de comando ao invs do nome do programa.
Aajuda sobre o top pode ser obtida dentro do programa pressionando a tecla h ou pela pgina
de manual (man top).
Abaixo algumas teclas teis:
espao - Atualiza imediatamente a tela.
CTRL+L - Apaga e atualiza a tela.
h - Mostra a tela de ajuda do programa. mostrado todas as teclas que podemser usadas
com o top.
i - Ignora o tempo ocioso de processos zumbis.
q - Sai do programa.
k - Finaliza um processo - semelhante ao comando kill. Voc ser perguntado pelo
nmero de identicao do processo (PID). Este comando no estar disponvel caso
esteja usando o top com a opo -s.
n - Muda o nmero de linhas mostradas na tela. Se 0 for especicado, ser usada toda a
tela para listagem de processos.
7.7 Controle de execuo de processos
Abaixo algumas comandos e mtodos teis para o controle da execuo de processos no
GNU/Linux.
7.7.1 Interrompendo a execuo de um processo
Para cancelar a execuo de algum processo rodando em primeiro plano, basta pres-
sionar as teclas CTRL+C. A execuo do programa ser cancelada e ser mostrado o aviso de
comando. Voc tambmpode usar o comando kill on page 114 para interromper umprocesso
sendo executado.
Captulo 7. Execuo de programas 113
7.7.2 Parando momentaneamente a execuo de um processo
Para parar a execuo de um processo rodando em primeiro plano, basta pressionar as teclas
CTRL+Z. Oprograma emexecuo ser pausado e ser mostrado o nmero de seu job e o aviso
de comando.
Para retornar a execuo de um comando pausado, use fg on the current page ou bg on this
page.
O programa permanece na memria no ponto de processamento em que parou quando ele
interrompido. Voc pode usar outros comandos ou rodar outros programas enquanto o pro-
grama atual est interrompido.
7.7.3 jobs
O comando jobs mostra os processos que esto parados ou rodando em segundo plano. Pro-
cessos em segundo plano so iniciados usando o smbolo & no nal da linha de comando
(veja Tipos de Execuo de comandos/programas on page 110) ou atravs do comando bg.
jobs
O nmero de identicao de cada processo parado ou em segundo plano (job), usado com
os comandos fg on this page e bg on the current page. Um processo interrompido pode ser
nalizado usando-se o comando kill %[num], onde [num] o nmero do processo obtido
pelo comando jobs.
7.7.4 fg
Permite fazer um programa rodando em segundo plano ou parado, rodar em primeiro plano.
Voc deve usar o comando jobs para pegar o nmero do processo rodando emsegundo plano
ou interrompida, este nmero ser passado ao comando fg para ativa-lo em primeiro plano.
fg [nmero]
Onde nmero o nmero obtido atravs do comando jobs.
Caso seja usado sem parmetros, o fg utilizar o ltimo programa interrompido (o maior
nmero obtido com o comando jobs).
Exemplo: fg 1.
7.7.5 bg
Permite fazer um programa rodando em primeiro plano ou parado, rodar em segundo plano.
Para fazer um programa em primeiro plano rodar em segundo, necessrio primeiro inter-
romper a execuo do comando comCTRL+ Z, ser mostrado o nmero da tarefa interrompida,
use este nmero com o comando bg para iniciar a execuo do comando em segundo plano.
Captulo 7. Execuo de programas 114
bg [nmero]
Onde: nmero nmero do programa obtido com o pressionamento das teclas CTRL+Z ou
atravs do comando jobs.
7.7.6 kill
Permite enviar um sinal a um comando/programa. Caso seja usado sem parmetros, o kill
enviar um sinal de trmino ao processo sendo executado.
kill [opes] [sinal] [nmero]
Onde:
nmero o nmero de identicao do processo obtido com o comando ps on page 111.
Tambm pode ser o nmero aps o sinal de % obtido pelo comando jobs para matar
uma tarefa interrompida. Veja jobs on the previous page.
sinal Sinal que ser enviado ao processo. Se omitido usa -15 como padro.
opes
-9 Envia um sinal de destruio ao processo ou programa. Ele terminado imediatamente
sem chances de salvar os dados ou apagar os arquivos temporrios criados por ele.
Voc precisa ser o dono do processo ou o usurio root para termina-lo ou destru-lo. Voc pode
vericar se o processo foi nalizado atravs do comando ps. Os tipos de sinais aceitos pelo
GNU/Linux so explicados em detalhes em Sinais do Sistema on the facing page.
Exemplo: kill 500, kill -9 500, kill %1.
7.7.7 killall
Permite nalizar processos atravs do nome.
killall [opes] [sinal] [processo]
Onde:
processo Nome do processo que deseja nalizar
sinal Sinal que ser enviado ao processo (pode ser obtido usando a opo -i).
opes
-i Pede conrmao sobre a nalizao do processo.
-l Lista o nome de todos os sinais conhecidos.
-q Ignora a existncia do processo.
-v Retorna se o sinal foi enviado com sucesso ao processo.
-w Finaliza a execuo do killall somente aps nalizar todos os processos.
Os tipos de sinais aceitos pelo GNU/Linux so explicados em detalhes na Sinais do Sistema
on the next page.
Exemplo: killall -HUP inetd
Captulo 7. Execuo de programas 115
7.7.8 killall5
Envia um sinal de nalizao para todos os processos sendo executados.
killall5 [sinal]
7.7.9 Sinais do Sistema
Retirado da pgina de manual signal. O GNU/Linux suporta os sinais listados abaixo. Al-
guns nmeros de sinais so dependentes de arquitetura.
Primeiro, os sinais descritos no POSIX 1:
Sinal Valor Ao Comentrio
---------------------------------------------------------------------------
HUP 1 A Travamento detectado no terminal de controle ou
finalizao do processo controlado
INT 2 A Interrupo atravs do teclado
QUIT 3 C Sair atravs do teclado
ILL 4 C Instruo Ilegal
ABRT 6 C Sinal de abortar enviado pela funo abort
FPE 8 C Exceo de ponto Flutuante
KILL 9 AEF Sinal de destruio do processo
SEGV 11 C Referncia Invlida de memria
PIPE 13 A Pipe Quebrado: escreveu para o pipe sem leitores
ALRM 14 A Sinal do Temporizador da chamada do sistema alarm
TERM 15 A Sinal de Trmino
USR1 30,10,16 A Sinal definido pelo usurio 1
USR2 31,12,17 A Sinal definido pelo usurio 2
CHLD 20,17,18 B Processo filho parado ou terminado
CONT 19,18,25 Continuar a execuo, se interrompido
STOP 17,19,23 DEF Interromper processo
TSTP 18,20,24 D Interromper digitao no terminal
TTIN 21,21,26 D Entrada do terminal para o processo em segundo plano
TTOU 22,22,27 D Sada do terminal para o processo em segundo plano
As letras da coluna Ao tem o seguinte signicado:
A - A ao padro terminar o processo.
B - A ao padro ignorar o sinal.
C - A ao padro terminar o processo e mostrar o core.
D - A ao padro parar o processo.
E - O sinal no pode ser pego.
F - O sinal no pode ser ignorado.
Sinais no descritos no POSIX 1 mas descritos na SUSv2:
Captulo 7. Execuo de programas 116
Sinal Valor Ao Comentrio
-------------------------------------------------------------------------
BUS 10,7,10 C Erro no Barramento (acesso incorreto da memria)
POLL A Evento executado em Pool (Sys V). Sinnimo de IO
PROF 27,27,29 A Tempo expirado do Profiling
SYS 12,-,12 C Argumento invlido para a rotina (SVID)
TRAP 5 C Captura do trao/ponto de interrupo
URG 16,23,21 B Condio Urgente no soquete (4.2 BSD)
VTALRM 26,26,28 A Alarme virtual do relgio (4.2 BSD)
XCPU 24,24,30 C Tempo limite da CPU excedido (4.2 BSD)
XFSZ 25,25,31 C Limite do tamanho de arquivo excedido (4.2 BSD)
(Para os casos SIGSYS, SIGXCPU, SIGXFSZ, e em algumas arquiteturas tambm o SIGGUS, a
ao padro do Linux para kernels 2.3.27 e superiores A(terminar), enquanto SYSv2 descreve
C (terminar e mostrar dump core).) Seguem vrios outros sinais:
Sinal Valor Ao Comentrio
--------------------------------------------------------------------
IOT 6 C Trao IOT. Um sinnimo para ABRT
EMT 7,-,7
STKFLT -,16,- A Falha na pilha do processador
IO 23,29,22 A I/O agora possvel (4.2 BSD)
CLD -,-,18 Um sinnimo para CHLD
PWR 29,30,19 A Falha de fora (System V)
INFO 29,-,- Um sinnimo para SIGPWR
LOST -,-,- A Perda do bloqueio do arquivo
WINCH 28,28,20 B Sinal de redimensionamento da Janela (4.3 BSD, Sun)
UNUSED -,31,- A Sinal no usado (ser SYS)
O - signica que o sinal no est presente. Onde trs valores so listados, o primeiro
normalmente vlido para o Alpha e Sparc, o do meio para i386, PowerPc e sh, o ltimo para o
Mips. O sinal 29 SIGINFO/SIGPWR em um Alpha mas SIGLOST em um Sparc.
7.8 nohup
Executa um comando ignorando os sinais de interrupo. O comando poder ser executado
at mesmo em segundo plano caso seja feito o logout do sistema.
nohup [comando que ser executado]
As mensagens de sada do nohup so direcionadas para o arquivo $HOME/nohup.out.
Exemplo: nohup find / -uid 0 >/tmp/rootfiles.txt &.
Captulo 7. Execuo de programas 117
7.9 nice
Congura a prioridade da execuo de um comando/programa.
nice [opes] [comando/programa]
Onde:
comando/programa Comando/programa que ter sua prioridade ajustada.
opes
-n [numero ] Congura a prioridade que o programa ser executado. Se um programa for
executado com maior prioridade, ele usar mais recursos do sistema para seu proces-
samento, caso tenha uma prioridade baixa, ele permitir que outros programas tenham
preferncia. A prioridade de execuo de um programa/comando pode ser ajustada de -20
(a mais alta) at 19 (a mais baixa).
Exemplo: nice -n -19 find / -name apropos.
7.10 fuser
Permite identicar e fechar os processos que esto utilizando arquivos e soquetes no sistema.
fuser [opes] [nome]
Onde:
nome Especica um nome de processo, diretrio, arquivo, etc.
opes
-k Finaliza os processos acessando o arquivo especicado. O sinal desejado deve ser especi-
cado com a opo -signal [num], ou o sinal -9 ser enviado como padro. No
possvel matar o prprio processo fuser.
-i Pergunta antes de destruir um processo. Ser ignorada caso a opo -k no seja especi-
cada.
-l Lista todos os nomes de sinais conhecidos.
-m [nome ] Especica um arquivo em um sistema de arquivos montado ou dispositivo de
bloco que est montado. Todos os processos acessando aquele sistema de arquivos sero
listados. Diretrios so mostrados seguidos de uma /
-signal [nmero ] Usa o sinal especicado ao invs de -9 (SIGKILL) quando nalizar proces-
sos.
-u Acrescenta o nome do dono de cada processo ao PID.
-v Os processos so mostrados em um estilo idntico ao ps.
7.11 tload
Representa de forma grca a carga do sistema.
tload [opes]
Onde:
Captulo 7. Execuo de programas 118
opes
-s [nmero ] Mostra uma escala vertical com espaamento especicado por [nmero]. re-
comendvel o uso de nmeros entre 1 e 10 para melhor visualizao da escala.
-d [nmero ] Especica o intervalo entre atualizaes, em segundos.
7.12 vmstat
Mostra estatsticas sobre o uso da memria virtual do sistema.
vmstat [intervalo] [contagem]
Onde:
intervalo Nmero especicado em segundos entre atualizaes.
contagem Nmero de vezes que ser mostrado.
Se no for especicado nenhum parmetro, o vmstat mostra o status da memria virtual e
volta imediatamente para a linha de comando. A descrio dos campos do vmstat so as
seguintes:
Processos
r Nmero de processos aguardando execuo.
b Nmero de processos em espera no interrompveis.
w Nmero de processos extrados do arquivo de troca ou caso contrrio em execuo.
Memria
swpd A quantidade de memria virtual usada em Kb.
free Quantidade de memria livre em Kb.
buff Quantidade de memria usada como buffer em Kb.
Memria Virtual
si Quantidade de memria gravada para o disco Kb/s.
so Quantidade de memria retirada do disco em Kb/s.
Entrada/Sada
bi Blocos enviados para um dispositivo de bloco (medido em blocos por segundo).
bo Blocos recebidos de um dispositivo de bloco (em blocos por segundo).
Sistema
in Nmero de interrupes por segundo, incluindo o clock.
cs Nmero de mudanas de contexto por segundo.
Porcentagem do total de tempo da CPU
us Tempo do usurio
sy Tempo do sistema
id Tempo ocioso
Captulo 7. Execuo de programas 119
7.13 pidof
Retorna o PID do processo especicado
pidof [opes] [nome]
Onde:
nome Nome do processo que seja obter o nmero PID
opes
-s Retorna somente o primeiro PID encontrado.
-x Retorna o PID do do shell que est executando o script
-o [PID ] Ignora o processo com aquele PID. O PID especial %PPID pode ser usado para
nomear o processo pai do programa pidof, em outras palavras
OBS: O programa pidof um link simblico ao programa killall5. Cuidado ao executar
o killall5 as funes e opes so completamente diferentes dependendo da forma como
chamado na linha de comando! (veja killall5 on page 115 para detalhes.)
Exemplo: pidof -s init
7.14 pstree
Mostra a estrutura de processos em execuo no sistema em forma de rvore.
pstree [opes] [pid]
Onde:
pid Nmero do processo que ter sua rvore listada. Se omitido, lista todos os processos.
opes
-a Mostra opes passadas na linha de comando.
-c Mostra toda a estrutura (inclusive sub-processos do processo pai).
-G Usa caracteres grcos no desenho da rvore de processos.
-h Destaca o processo atual e seus antecessores.
-H [pid ] Destaca o processo especicado.
-l No faz quebra de linha
-n Classica pelo nmero PID ao invs do nome.
-p Mostra o nmero PID entre parnteses aps o nome do processo.
-u Mostra tambm o dono do processo.
-U Usa o conjunto de caracteres Unicode para o desenho da rvore.
7.15 Fechando um programa quando no se sabe como sair
Muitas vezes quando se esta iniciando no GNU/Linux voc pode executar um programa e
talvez no saber como fecha-lo. Este captulo do guia pretende ajuda-lo a resolver este tipo de
problema.
Captulo 7. Execuo de programas 120
Isto pode tambm ocorrer com programadores que esto construindo seus programas e por
algum motivo no implementam uma opo de sada, ou ela no funciona!
Emnosso exemplo vou supor que executamos umprograma emdesenvolvimento como nome
contagem que conta o tempo em segundos a partir do momento que executado, mas que o
programador esqueceu de colocar uma opo de sada. Siga estas dicas para naliza-lo:
1 Normalmente todos os programas UNIX (o GNU/Linux tambm um Sistema Opera-
cional baseado no UNIX) podem ser interrompidos com o pressionamento das teclas
<CTRL> e <C>. Tente isto primeiro para nalizar um programa. Isto provavelmente no
vai funcionar se estiver usando um Editor de Texto (ele vai entender como um comando
de menu). Isto normalmente funciona para comandos que so executados e terminados
sem a interveno do usurio.
Caso isto no der certo, vamos partir para a fora! ;-)
2 Mude para um novo console (pressionando <ALT> e <F2>), e faa o login como usurio
root.
3 Localize o PID (nmero de identicao do processo) usando o comando: ps ax, apare-
cero vrias linhas cada uma com o nmero do processo na primeira coluna, e a linha de
comando do programa na ltima coluna. Caso aparecerem vrios processos voc pode
usar ps ax|grep contagem, neste caso o grep far uma ltragem da sada do co-
mando ps ax mostrando somente as linhas que tema palavra contagem. Para maiores
detalhes, veja o comando grep on page 136.
4 Feche o processo usando o comando kill PID, lembre-se de substituir PID pelo
nmero encontrado pelo comando ps ax acima.
O comando acima envia um sinal de trmino de execuo para o processo (neste caso
o programa contagem). O sinal de trmino mantm a chance do programa salvar seus
dados ou apagar os arquivos temporrios que criou e ento ser nalizado, isto depende
do programa.
5 Alterne para o console onde estava executando o programa contagem e verique se
ele ainda est em execuo. Se ele estiver parado mas o aviso de comando no est
disponvel, pressione a tecla <ENTER>. Freqentemente acontece isto com o comando
kill, voc naliza um programa mas o aviso de comando no mostrado at que se
pressione <ENTER>.
6 Caso o programa ainda no foi nalizado, repita o comando kill usando a opo -9:
kill -9 PID. Este comando envia um sinal de DESTRUIO do processo, fazendo
ele terminar na marra!
Uma ltima dica: todos os programas estveis (todos que acompanham as boas distribuies
GNU/Linux) tem sua opo de sada. Lembre-se que quando naliza um processo todos os
dados do programa em execuo podem ser perdidos (principalmente se estiver em um editor
de textos), mesmo usando o kill sem o parmetro -9.
Captulo 7. Execuo de programas 121
Procure a opo de sada de um programa consultando o help on line, as pginas de manual,
a documentao que acompanha o programa, info pages. Para detalhes de como encontrar a
ajuda dos programas, veja o Como obter ajuda no sistema on page 343
7.16 Eliminando caracteres estranhos
As vezes quando um programa mal comportado nalizado ou quando voc visualiza um
arquivo binrio atravs do comando cat, possvel que o aviso de comando (prompt) volte
com caracteres estranhos.
Para fazer tudo voltar ao normal, basta digitar reset e teclar ENTER. No se preocupe, o
comando reset no reiniciar seu computador (como o boto reset do seu computador faz),
ele apenas far tudo voltar ao normal.
Note que enquanto voc digitar reset aparecero caracteres estranhos ao invs das letras.
No se preocupe! Basta digitar corretamente e bater ENTER e o aviso de comando voltar ao
normal.
Captulo 7. Execuo de programas 122
123
Captulo 8
Comandos para manipulao de
diretrio
Abaixo comandos teis para a manipulao de diretrios.
8.1 ls
Lista os arquivos de um diretrio.
ls [opes] [caminho/arquivo] [caminho1/arquivo1] ...
onde:
caminho/arquivo Diretrio/arquivo que ser listado.
caminho1/arquivo1 Outro Diretrio/arquivo que ser listado. Podem ser feitas vrias lista-
gens de uma s vez.
opes
-a, all Lista todos os arquivos (inclusive os ocultos) de um diretrio.
-A, almost-all Lista todos os arquivos (inclusive os ocultos) de um diretrio, exceto o di-
retrio atual e o de nvel anterior.
-B, ignore-backups No lista arquivos que terminam com ~ (Backup).
color=PARAM Mostra os arquivos em cores diferentes, conforme o tipo de arquivo. PARAM
pode ser:
never - Nunca lista em cores (mesma coisa de no usar o parmetro color).
always - Sempre lista em cores conforme o tipo de arquivo.
auto - Somente colore a listagem se estiver em um terminal.
-d, directory Lista os nomes dos diretrios ao invs do contedo.
-f No classica a listagem.
-F Insere um caracter aps arquivos executveis (*), diretrios (/), soquete (=), link sim-
blico (@) e pipe (|). Seu uso til para identicar de forma fcil tipos de arquivos
nas listagens de diretrios.
-G, no-group Oculta a coluna de grupo do arquivo.
-h, human-readable Mostra o tamanho dos arquivos em Kbytes, Mbytes, Gbytes.
Captulo 8. Comandos para manipulao de diretrio 124
-H Faz o mesmo que -h, mas usa unidades de 1000 ao invs de 1024 para especicar Kbytes,
Mbytes, Gbytes.
-l Usa o formato longo para listagem de arquivos. Lista as permisses, data de modicao,
donos, grupos, etc.
-n Usa a identicao de usurio e grupo numrica ao invs dos nomes.
-L, dereference Lista o arquivo original e no o link referente ao arquivo.
-o Usa a listagem longa sem os donos dos arquivos (mesma coisa que -lG).
-p Mesma coisa que -F, mas no inclui o smbolo * em arquivos executveis. Esta opo
tpica de sistemas Linux.
-R Lista diretrios e sub-diretrios recursivamente.
full-time Lista data e hora completa.
Classicao da listagem A listagem pode ser classicada usando-se as seguintes opes:
-f No classica, e usa -au para listar os arquivos.
-r Inverte a ordem de classicao.
-c Classica pela data de alterao.
-X Classica pela extenso.
-U No classica, lista os arquivos na ordem do diretrio.
-Z Exibe o contexto SELinux de cada arquivo.
Uma listagem feita com o comando ls -la normalmente mostrada da seguinte maneira:
-rwxr-xr-- 1 gleydson user 8192 nov 4 16:00 teste
Abaixo as explicaes de cada parte:
-rwxr-xr-- So as permisses de acesso ao arquivo teste. A primeira letra (da esquerda)
identica o tipo do arquivo, se tiver um d um diretrio, se tiver um - um arquivo
normal. As permisses de acesso explicada em detalhes em Permisses de acesso a
arquivos e diretrios on page 169.
1 Se for um diretrio, mostra a quantidade de sub-diretrios existentes dentro dele. Caso for
um arquivo, ser 1.
gleydson Nome do dono do arquivo teste.
user Nome do grupo que o arquivo teste pertence.
8192 Tamanho do arquivo (em bytes).
nov Ms da criao/ ltima modicao do arquivo.
4 Dia que o arquivo foi criado.
16:00 Hora em que o arquivo foi criado/modicado. Se o arquivo foi criado h mais de um
ano, em seu lugar mostrado o ano da criao do arquivo.
teste Nome do arquivo.
Exemplos do uso do comando ls:
ls - Lista os arquivos do diretrio atual.
ls /bin /sbin - Lista os arquivos do diretrio /bin e /sbin
ls -la /bin - Listagem completa (vertical) dos arquivos do diretrio /bin inclusive os
ocultos.
Captulo 8. Comandos para manipulao de diretrio 125
8.2 cd
Entra em um diretrio. Voc precisa ter a permisso de execuo para entrar no diretrio.
cd [diretrio]
onde:
diretrio - diretrio que deseja entrar.
Exemplos:
Usando cd sem parmetros ou cd ~, voc retornar ao seu diretrio de usurio (di-
retrio home).
cd /, retornar ao diretrio raz.
cd -, retornar ao diretrio anteriormente acessado.
cd .., sobe um diretrio.
cd ../[diretrio], sobe um diretrio e entra imediatamente no prximo (por exem-
plo, quando voc est em /usr/sbin, voc digita cd ../bin, o comando cd retorna
um diretrio (/usr) e entra imediatamente no diretrio bin (/usr/bin).
8.3 pwd
Mostra o nome e caminho do diretrio atual.
Voc pode usar o comando pwd para vericar em qual diretrio se encontra (caso seu aviso de
comandos no mostre isso).
8.4 mkdir
Cria um diretrio no sistema. Um diretrio usado para armazenar arquivos de um deter-
minado tipo. O diretrio pode ser entendido como uma pasta onde voc guarda seus papeis
(arquivos). Como uma pessoa organizada, voc utilizar uma pasta para guardar cada tipo de
documento, da mesma forma voc pode criar umdiretrio vendas para guardar seus arquivos
relacionados com vendas naquele local.
mkdir [opes] [caminho/diretrio] [caminho1/diretrio1]
onde:
caminho Caminho onde o diretrio ser criado.
diretrio Nome do diretrio que ser criado.
opes:
-p Caso os diretrios dos nveis acima no existam, eles tambm sero criados.
verbose Mostra uma mensagem para cada diretrio criado. As mensagens de erro sero
mostradas mesmo que esta opo no seja usada.
Para criar um novo diretrio, voc deve ter permisso de gravao. Por exemplo, para criar
um diretrio em /tmp com o nome de teste que ser usado para gravar arquivos de teste,
voc deve usar o comando "mkdir/tmp/teste".
Captulo 8. Comandos para manipulao de diretrio 126
Podem ser criados mais de um diretrio com um nico comando (mkdir /tmp/teste
/tmp/teste1 /tmp/teste2).
8.5 rmdir
Remove um diretrio do sistema. Este comando faz exatamente o contrrio do mkdir. O
diretrio a ser removido deve estar vazio e voc deve ter permisso de gravao para remove-
lo.
rmdir [caminho/diretrio] [caminho1/diretrio1]
onde:
caminho Caminho do diretrio que ser removido.
diretrio Nome do diretrio que ser removido.
necessrio que esteja um nvel acima do diretrio(s) que ser(o) removido(s). Para remover
diretrios que contenham arquivos, use o comando rm com a opo -r (para maiores detalhes,
veja rm on page 128).
Por exemplo, para remover o diretrio /tmp/teste voc deve estar no diretrio tmp e execu-
tar o comando rmdir teste.
127
Captulo 9
Comandos para manipulao de
Arquivos
Abaixo, comandos utilizados para manipulao de arquivos.
9.1 cat
Mostra o contedo de um arquivo binrio ou texto.
cat [opes] [diretrio/arquivo] [diretrio1/arquivo1]
diretrio/arquivo Localizao do arquivo que deseja visualizar o contedo.
opes
-n, number Mostra o nmero das linhas enquanto o contedo do arquivo mostrado.
-s, squeeze-blank No mostra mais que uma linha em branco entre um pargrafo e outro.
- L a entrada padro.
O comando cat trabalha com arquivos texto. Use o comando zcat para ver diretamente
arquivos compactados com gzip.
Exemplo: cat /usr/doc/copyright/GPL
9.2 tac
Mostra o contedo de um arquivo binrio ou texto (como o cat) s que em ordem inversa.
tac [opes] [diretrio/arquivo] [diretrio1/arquivo1]
diretrio/arquivo Localizao do arquivo que deseja visualizar o contedo
opes
-s [string ] Usa o [string] como separador de registros.
- L a entrada padro.
Exemplo: tac /usr/doc/copyright/GPL.
Captulo 9. Comandos para manipulao de Arquivos 128
9.3 rm
Apaga arquivos. Tambm pode ser usado para apagar diretrios e sub-diretrios vazios ou
que contenham arquivos.
rm [opes][caminho][arquivo/diretrio] [caminho1][arquivo1/diretrio1]
onde:
caminho Localizao do arquivo que deseja apagar. Se omitido, assume que o arquivo esteja
no diretrio atual.
arquivo/diretrio Arquivo que ser apagado.
opes
-i, interactive Pergunta antes de remover, esta ativada por padro.
-v, verbose Mostra os arquivos na medida que so removidos.
-r, recursive Usado para remover arquivos em sub-diretrios. Esta opo tambm pode ser
usada para remover sub-diretrios.
-f, force Remove os arquivos sem perguntar.
arquivo Remove arquivos/diretrios que contm caracteres especiais. O separador fun-
ciona com todos os comandos do shell e permite que os caracteres especiais como *,
?, -, etc. sejam interpretados como caracteres comuns.
Use com ateno o comando rm, uma vez que os arquivos e diretrios forem apagados, eles
no podero ser mais recuperados.
Exemplos:
rm teste.txt - Apaga o arquivo teste.txt no diretrio atual.
rm
*
.txt - Apaga todos os arquivos do diretrio atual que terminam com .txt.
rm
*
.txt teste.novo - Apaga todos os arquivos do diretrio atual que terminam
com .txt e tambm o arquivo teste.novo.
rm -rf /tmp/teste/
*
- Apaga todos os arquivos e sub-diretrios do diretrio /tmp
/teste mas mantm o sub-diretrio /tmp/teste.
rm -rf /tmp/teste - Apaga todos os arquivos e sub-diretrios do diretrio /tmp
/teste, inclusive /tmp/teste.
rm -f -- --arquivo-- - Remove o arquivo de nome -arquivo-.
9.4 cp
Copia arquivos.
cp [opes] [origem] [destino]
onde:
origem Arquivo que ser copiado. Podem ser especicados mais de um arquivo para ser copi-
ado usando Curingas (veja Curingas on page 33).
destino O caminho ou nome de arquivo onde ser copiado. Se o destino for um diretrio, os
arquivos de origem sero copiados para dentro do diretrio.
opes
i, interactive Pergunta antes de substituir um arquivo existente.
Captulo 9. Comandos para manipulao de Arquivos 129
-f, force No pergunta, substitui todos os arquivos caso j exista.
-r Copia arquivos dos diretrios e subdiretrios da origem para o destino. recomendvel
usar -R ao invs de -r.
-R, recursive Copia arquivos e sub-diretrios (como a opo -r) e tambm os arquivos espe-
ciais FIFO e dispositivos.
-v, verbose Mostra os arquivos enquanto esto sendo copiados.
-s, simbolic-link Cria link simblico ao invs de copiar.
-l, link Faz o link no destino ao invs de copiar os arquivos.
-p, preserve Preserva atributos do arquivo, se for possvel.
-u, update Copia somente se o arquivo de origem mais novo que o arquivo de destino ou
quando o arquivo de destino no existe.
-x No copia arquivos que esto localizados em um sistema de arquivos diferente de onde a
cpia iniciou.
O comando cp copia arquivos da ORIGEM para o DESTINO. Ambos origem e destino tero o
mesmo contedo aps a cpia.
Exemplos:
cp teste.txt teste1.txt Copia o arquivo teste.txt para teste1.txt.
cp teste.txt /tmp Copia o arquivo teste.txt para dentro do diretrio /tmp.
cp
*
/tmp Copia todos os arquivos do diretrio atual para /tmp.
cp /bin/
*
. Copia todos os arquivos do diretrio /bin para o diretrio em que nos encon-
tramos no momento.
cp -R /bin /tmp Copia o diretrio /bin e todos os arquivos/sub-diretrios existentes
para o diretrio /tmp.
cp -R /bin/
*
/tmp Copia todos os arquivos do diretrio /bin (exceto o diretrio /bin) e
todos os arquivos/sub-diretrios existentes dentro dele para /tmp.
cp -R /bin /tmp Copia todos os arquivos e o diretrio /bin para /tmp.
9.5 mv
Move ou renomeia arquivos e diretrios. O processo semelhante ao do comando cp mas o
arquivo de origem apagado aps o trmino da cpia.
mv [opes] [origem] [destino]
Onde:
origem Arquivo/diretrio de origem.
destino Local onde ser movido ou novo nome do arquivo/diretrio.
opes
-f, force Substitui o arquivo de destino sem perguntar.
-i, interactive Pergunta antes de substituir. o padro.
-v, verbose Mostra os arquivos que esto sendo movidos.
-u, update Move somente arquivos antigos, ou novos arquivos.
O comando mv copia um arquivo da ORIGEM para o DESTINO (semelhante ao cp), mas aps
a cpia, o arquivo de ORIGEM apagado.
Exemplos:
Captulo 9. Comandos para manipulao de Arquivos 130
mv teste.txt teste1.txt Muda o nome do arquivo teste.txt para teste1.txt.
mv teste.txt /tmp Move o arquivo teste.txt para /tmp. Lembre-se que o arquivo de
origem apagado aps ser movido.
mv teste.txt teste.new (supondo que teste.new j exista) Copia o arquivo
teste.txt por cima de teste.new e apaga teste.txt aps terminar a cpia.
131
Captulo 10
Comandos Diversos
Comandos de uso diversos no sistema.
10.1 clear
Limpa a tela e posiciona o cursor no canto superior esquerdo do vdeo.
clear
10.2 date
Permite ver/modicar a Data e Hora do Sistema. Voc precisa estar como usurio root para
modicar a data e hora. Muitos programas do sistema, arquivos de registro (log) e tarefas agen-
dadas funcionam com base na data e hora fornecidas pelo sistema, assim esteja consciente das
modicaes que a data/hora pode trazer a estes programas (principalmente em se tratando
de uma rede com muitos usurios) .
date MesDiaHoraMinuto[AnoSegundos]
Onde:
MesDiaHoraMinuto[AnoSegundos ] So respectivamente os nmeros do ms, dia, hora e
minutos sem espaos. Opcionalmente voc pode especicar o Ano (com 2 ou 4 dgitos) e
os Segundos.
+[FORMATO ] Dene o formato da listagem que ser usada pelo comando date. Os
seguintes formatos so os mais usados:
%d - Dia do Ms (00-31).
%m - Ms do Ano (00-12).
%y - Ano (dois dgitos).
%Y - Ano (quatro dgitos).
%H - Hora (00-24).
%I - Hora (00-12).
Captulo 10. Comandos Diversos 132
%M - Minuto (00-59).
%j - Dia do ano (1-366).
%p - AM/PM (til se utilizado com %d).
%r - Formato de 12 horas completo (hh:mm:ss AM/PM).
%T - Formato de 24 horas completo (hh:mm:ss).
%w - Dia da semana (0-6).
Outros formatos podem ser obtidos atravs da pgina de manual do date.
Para maiores detalhes, veja a pgina de manual do comando date.
Para ver a data atual digite: date
Se quiser mudar a Data para 25/12 e a hora para 08:15 digite: date 12250815
Para mostrar somente a data no formato dia/ms/ano: date +%d/%m/%Y
10.3 df
Mostra o espao livre/ocupado de cada partio.
df [opes]
onde:
opes
-a Inclui sistemas de arquivos com 0 blocos.
-h, human-readable Mostra o espao livre/ocupado em MB, KB, GB ao invs de blocos.
-H Idntico a -h mas usa 1000 ao invs de 1024 como unidade de clculo.
-k Lista em Kbytes.
-l Somente lista sistema de arquivos locais.
-m Lista em Mbytes (equivalente a block-size=1048576).
sync Executa o sync antes de mostrar os dados.
-T Lista o tipo de sistema de arquivos de cada partio
-t tipo Lista somente sistema de arquivos do tipo tipo.
-x tipo No lista sistemas de arquivos do tipo tipo.
Exemplos: df, df -h, df -t vfat.
10.4 ln
Cria links para arquivos e diretrios no sistema. O link um mecanismo que faz referncia a
outro arquivo ou diretrio em outra localizao. O link em sistemas GNU/Linux faz referncia
reais ao arquivo/diretrio podendo ser feita cpia do link (ser copiado o arquivo alvo), entrar
no diretrio (caso o link faa referncia a um diretrio), etc.
ln [opes] [origem] [link]
Onde:
origem Diretrio ou arquivo de onde ser feito o link.
Captulo 10. Comandos Diversos 133
link Nome do link que ser criado.
opes
-s Cria um link simblico. Usado para criar ligaes com o arquivo/diretrio de destino.
-v Mostra o nome de cada arquivo antes de fazer o link.
-d Cria um hard link para diretrios. Somente o root pode usar esta opo.
Existem 2 tipos de links: simblicos e hardlinks.
O link simblico cria um arquivo especial no disco (do tipo link) que tem como contedo
o caminho para chegar at o arquivo alvo (isto pode ser vericado pelo tamanho do
arquivo do link). Use a opo -s para criar links simblicos.
O hardlink faz referncia ao mesmo inodo do arquivo original, desta forma ele ser per-
feitamente idntico, inclusive nas permisses de acesso, ao arquivo original. Ao contrrio
dos links simblicos, no possvel fazer um hardlink para um diretrio ou fazer refer-
ncia a arquivos que estejam em parties diferentes.
Observaes:
Se for usado o comando rm com um link, somente o link ser removido.
Se for usado o comando cp com um link, o arquivo original ser copiado ao invs do
link.
Se for usado o comando mv com um link, a modicao ser feita no link.
Se for usado um comando de visualizao (como o cat), o arquivo original ser visual-
izado.
Exemplos:
ln -s /dev/ttyS1 /dev/modem - Cria o link /dev/modem para o arquivo /dev
/ttyS1.
ln -s /tmp ~/tmp - Cria um link ~/tmp para o diretrio /tmp.
10.5 du
Mostra o espao ocupado por arquivos e sub-diretrios do diretrio atual.
du [opes]
onde:
opes
-a, all Mostra o espao ocupado por todos os arquivos.
-b, bytes Mostra o espao ocupado em bytes.
-c, total Faz uma totalizao de todo espao listado.
-D No conta links simblicos.
-h, human Mostra o espao ocupado em formato legvel por humanos (Kb, Mb) ao invs de
usar blocos.
-H Como o anterior mas usa 1000 e no 1024 como unidade de clculo.
-k Mostra o espao ocupado em Kbytes.
-m Mostra o espao ocupado em Mbytes.
-S, separate-dirs No calcula o espao ocupado por sub-diretrios.
-x No faz a contagem de diretrios em sistemas de arquivos diferentes do atual.
Captulo 10. Comandos Diversos 134
Exemplo: du -h, du -hc.
10.6 nd
Procura por arquivos/diretrios no disco. find pode procurar arquivos atravs de sua data de
modicao, tamanho, etc atravs do uso de opes. find, ao contrrio de outros programas,
usa opes longas atravs de um -.
find [diretrio] [opes/expresso]
Onde:
diretrio Inicia a procura neste diretrio, percorrendo seu sub-diretrios.
opes/expresso
-name [expresso ] Procura pelo nome [expresso] nos nomes de arquivos e diretrios proces-
sados.
-depth Processa os sub-diretrios primeiro antes de processar os arquivos do diretrio princi-
pal.
-maxdepth [num ] Faz a procura at [num] sub-diretrios dentro do diretrio que est sendo
pesquisado.
-mindepth [num ] No faz nenhuma procura em diretrios menores que [num] nveis.
-mount, -xdev No faz a pesquisa em sistemas de arquivos diferentes daquele de onde o co-
mando find foi executado.
-amin [num ] Procura por arquivos que foram acessados [num] minutos atrs. Caso for ante-
cedido por -, procura por arquivos que foram acessados entre [num] minutos atrs at
agora.
-atime [num ] Procura por arquivos que foram acessados [num] dias atrs. Caso for ante-
cedido por -, procura por arquivos que foram acessados entre [num] dias atrs e a data
atual.
-gid [num ] Procura por arquivos que possuam a identicao numrica do grupo igual a
[num].
-group [nome ] Procura por arquivos que possuam a identicao de nome do grupo igual a
[nome].
-uid [num ] Procura por arquivos que possuam a identicao numrica do usurio igual a
[num].
-user [nome ] Procura por arquivos que possuam a identicao de nome do usurio igual a
[nome].
-inum [num ] Procura por arquivos que esto localizados no inodo [num].
-links [num ] Procura por arquivos que possuem [num] links como referncia.
-mmin [num ] Procura por arquivos que tiveram seu contedo modicado h [num] minutos.
Caso for antecedido por -, procura por arquivos que tiveram seu contedo modicado
entre [num] minutos atrs at agora.
-mtime [num ] Procura por arquivos que tiveram seu contedo modicado h [num] dias.
Caso for antecedido por -, procura por arquivos que tiveram seu contedo modicado
entre [num] dias atrs at agora.
-ctime [num ] Procura por arquivos que teve seu status modicado h [num] dias. Caso for
Captulo 10. Comandos Diversos 135
antecedido por -, procura por arquivos que tiveram seu contedo modicado entre
[num] dias atrs at agora.
-nouser Procura por arquivos que no correspondam a identicao do usurio atual.
-nogroup Procura por arquivos que no correspondam a identicao do grupo do usurio
atual.
-perm [modo ] Procura por arquivos que possuamos modos de permisso [modo]. Os [modo]
de permisso pode ser numrico (octal) ou literal.
-used [num ] O arquivo foi acessado [num] vezes antes de ter seu status modicado.
-size [num ] Procura por arquivos que tiverem o tamanho [num]. [num] pode ser antecedido
de + ou - para especicar um arquivo maior ou menor que [num]. A opo -size
pode ser seguida de:
b - Especica o tamanho em blocos de 512 bytes. o padro caso [num] no seja
acompanhado de nenhuma letra.
c - Especica o tamanho em bytes.
k - Especica o tamanho em Kbytes.
-type [tipo ] Procura por arquivos do [tipo] especicado. Os seguintes tipos so aceitos:
b - bloco
c - caracter
d - diretrio
p - pipe
f - arquivo regular
l - link simblico
s - sockete
A maior parte dos argumentos numricos podem ser precedidos por + ou -. Para detalhes
sobre outras opes e argumentos, consulte a pgina de manual.
Exemplo:
find / -name grep - Procura no diretrio raz e sub-diretrios um arquivo/diretrio
chamado grep.
find / -name grep -maxdepth 3 - Procura no diretrio raz e sub-diretrios at o
3o. nvel, um arquivo/diretrio chamado grep.
find . -size +1000k - Procura no diretrio atual e sub-diretrios um arquivo com
tamanho maior que 1000 kbytes (1Mbyte).
find / -mmin 10 - Procura no diretrio raz e sub-diretrios um arquivo que foi mod-
icado h 10 minutos atrs.
find / -links 4 - Procura no diretrio raz e sub-diretrios, todos os arquivos que
possuem 4 links como referncia.
10.7 free
Mostra detalhes sobre a utilizao da memria RAM do sistema.
free [opes]
Onde:
opes
Captulo 10. Comandos Diversos 136
-b Mostra o resultado em bytes.
-k Mostra o resultado em Kbytes.
-m Mostra o resultado em Mbytes.
-o Oculta a linha de buffers.
-t Mostra uma linha contendo o total.
-s [num ] Mostra a utilizao da memria a cada [num] segundos.
O free uma interface ao arquivo /proc/meminfo.
10.8 grep
Procura por um texto dentro de um arquivo(s) ou no dispositivo de entrada padro.
grep [expresso] [arquivo] [opes]
Onde:
expresso palavra ou frase que ser procurada no texto. Se tiver mais de 2 palavras voc deve
identica-la com aspas caso contrrio o grep assumir que a segunda palavra o
arquivo!
arquivo Arquivo onde ser feita a procura.
opes
-A [nmero ] Mostra o [nmero] de linhas aps a linha encontrada pelo grep.
-B [nmero ] Mostra o [nmero] de linhas antes da linha encontrada pelo grep.
-f [arquivo ] Especica que o texto que ser localizado, esta no arquivo [arquivo].
-h, no-lename No mostra os nomes dos arquivos durante a procura.
-i, ignore-case Ignora diferena entre maisculas e minsculas no texto procurado e arquivo.
-n, line-number Mostra o nome de cada linha encontrada pelo grep.
-E Ativa o uso de expresses regulares.
-U, binary Trata o arquivo que ser procurado como binrio.
Se no for especicado o nome de um arquivo ou se for usado um hfen -, grep procurar a
string no dispositivo de entrada padro. Ogrep faz sua pesquisa em arquivos texto. Use o co-
mando zgrep para pesquisar diretamente em arquivos compactados comgzip, os comandos
e opes so as mesmas.
Exemplos: grep capitulo texto.txt, ps ax|grep inetd, grep capitulo
texto.txt -A 2 -B 2.
10.9 head
Mostra as linhas iniciais de um arquivo texto.
head [opes]
Onde:
-c [numero ] Mostra o [numero] de bytes do inicio do arquivo.
-n [numero ] Mostra o [numero] de linhas do inicio do arquivo. Caso no for especicado, o
head mostra as 10 primeiras linhas.
Captulo 10. Comandos Diversos 137
Exemplos: head teste.txt, head -n 20 teste.txt.
10.10 nl
Mostra o nmero de linhas junto com o contedo de um arquivo.
nl [opes] [arquivo]
Onde:
opes
-f [opc ] Faz a ltragem de sada de acordo com [opc]:
a Numera todas as linhas.
t No numera linhas vazias.
n Numera linhas vazias.
texto Numera somente linhas que contm o [texto].
-v [num ] Nmero inicial (o padro 1).
-i [num ] Nmero de linhas adicionadas a cada linha do arquivo (o padro 1).
Exemplos: nl /etc/passwd, nl -i 2 /etc/passwd.
10.11 more
Permite fazer a paginao de arquivos ou da entrada padro. O comando more pode ser
usado como comando para leitura de arquivos que ocupem mais de uma tela. Quando toda
a tela ocupada, o more efetua uma pausa e permite que voc pressione Enter ou espao
para continuar avanando no arquivo sendo visualizado. Para sair do more pressione q.
more [arquivo]
Onde: arquivo o arquivo que ser paginado.
Para visualizar diretamente arquivos texto compactados pelo gzip .gz use o comando zmore.
Exemplos: more /etc/passwd, cat /etc/passwd|more.
10.12 less
Permite fazer a paginao de arquivos ou da entrada padro. Ocomando less pode ser usado
como comando para leitura de arquivos que ocupem mais de uma tela. Quando toda a tela
ocupada, o less efetua uma pausa (semelhante ao more) e permite que voc pressione Seta
para Cima e Seta para Baixo ou PgUP/PgDown para fazer o rolamento da pgina. Para sair
do less pressione q.
less [arquivo]
Onde: arquivo o arquivo que ser paginado.
Captulo 10. Comandos Diversos 138
Para visualizar diretamente arquivos texto compactados pelo utilitrio gzip (arquivos .gz),
use o comando zless.
Exemplos: less /etc/passwd, cat /etc/passwd|less
10.13 sort
Organiza as linhas de um arquivo texto ou da entrada padro. A organizao feita por linhas
e as linhas so divididas emcampos que a ordemque as palavras aparecemna linha separadas
por um delimitador (normalmente um espao).
sort [opes] [arquivo]
Onde:
arquivo o nome do arquivo que ser organizado. Caso no for especicado, ser usado o
dispositivo de entrada padro (normalmente o teclado ou um |).
opes
-b Ignora linhas em branco.
-d Somente usa letras, dgitos e espaos durante a organizao.
-f Ignora a diferena entre maisculas e minsculas.
-r Inverte o resultado da comparao.
-n Caso estiver organizando um campo que contm nmeros, os nmeros sero organizados
na ordem aritmtica. Por exemplo, se voc tiver um arquivo com os nmeros
100
10
50
Usando a opo -n, o arquivo ser organizado desta maneira:
10
50
100
Caso esta opo no for usada com o sort, ele organizar como uma listagem alfabtica
(que comeam de a at z e do 0 at 9)
10
100
50
-c Verica se o arquivo j esta organizado. Caso no estiver, retorna a mensagem disorder on
arquivo.
-o arquivo Grava a sada do comando sort no arquivo.
-m arquivo1 arquivo2 Combina o contedo de arquivo1 e arquivo2 gerando um nico arquivo.
Os dois arquivos precisam estar ordenados antes de se utilizar esta opo.
-i Ignora os caracteres fora da faixa octal ASCII 040-0176 durante a organizao.
-t caracter Usa caracter como delimitador durante a organizao de linhas. Por padro usado
um espao em branco como delimitador de caracteres.
+num1 -num2 Especica qual o campo dentro na linha que ser usado na organizao. O(s)
campo(s) usado(s) para organizao estar entre +num1 e +num2. O delimitador padro
utilizado um espao em branco (use a opo -t para especicar outro). A contagem
Captulo 10. Comandos Diversos 139
iniciada em 0. Caso no for especicada, a organizao feita no primeiro campo.
Caso -num2 no seja especicado, a organizao ser feita usando a coluna +num1 at o
m da linha.
-k num1, num2 Esta uma alternativa ao mtodo acima para especicar as chaves de organi-
zao. O uso idntico, mas o delimitador iniciado em 1.
Abaixo, exemplos de uso do comando sort:
sort texto.txt - Organiza o arquivo texto.txt em ordem crescente.
sort texto.txt -r - Organiza o contedo do arquivo texto.txt em ordem decres-
cente.
cat texto.txt|sort - Faz a mesma coisa que o primeiro exemplo, s que neste caso
a sada do comando cat redirecionado a entrada padro do comando sort.
sort -f texto.txt - Ignora diferenas entre letras maisculas e minsculas durante
a organizao.
sort +1 -3 texto.txt - Organiza o arquivo texto.txt usando como referncia a
segunda at a quarta palavra (segundo ao quarto campo) que constam naquela linha.
sort -t : +2 -3 passwd - Organiza o arquivo passwd usando como referncia a
terceira at a quarta palavra (terceiro ao quarto campo). Note que a opo -t especica
o caracter : como delimitador de campos ao invs do espao. Neste caso, o que estiver
aps : ser considerado o prximo campo.
10.14 tail
Mostra as linhas nais de um arquivo texto.
tail [opes]
Onde:
-c [numero ] Mostra o [numero] de bytes do nal do arquivo.
-n [numero ] Mostra o [numero] de linhas do nal do arquivo.
-f Mostra continuamente linhas adicionadas no nal do arquivo.
Exemplos: tail teste.txt, tail -n 20 teste.txt.
10.15 time
Mede o tempo gasto para executar um processo (programa).
time [comando]
Onde: comando o comando/programa que deseja medir o tempo gasto para ser concludo.
Exemplo: time ls, time find / -name crontab.
Captulo 10. Comandos Diversos 140
10.16 touch
Muda a data e hora que um arquivo foi criado. Tambm pode ser usado para criar arquivos
vazios. Caso o touch seja usado com arquivos que no existam, por padro ele criar estes
arquivos.
touch [opes] [arquivos]
Onde:
arquivos Arquivos que tero sua data/hora modicados.
opes
-t MMDDhhmm[ANO.segundos ] Usa Ms (MM), Dias (DD), Horas (hh), minutos (mm) e
opcionalmente o ANO e segundos para modicao do(s) arquivos ao invs da data e
hora atual.
-a, time=atime Faz o touch mudar somente a data e hora do acesso ao arquivo.
-c, no-create No cria arquivos vazios, caso os arquivos no existam.
-m, time=mtime Faz o touch mudar somente a data e hora da modicao.
-r [arquivo ] Usa as horas no [arquivo] como referncia ao invs da hora atual.
Exemplos:
touch teste - Cria o arquivo teste caso ele no existir.
touch -t 10011230 teste - Altera da data e hora do arquivo para 01/10 e 12:30.
touch -t 120112301999.30 teste - Altera da data, hora ano, e segundos do ar-
quivo para 01/12/1999 e 12:30:30.
touch -t 12011200
*
- Altera a data e hora do arquivo para 01/12 e 12:00.
10.17 uptime
Mostra o tempo de execuo do sistema desde que o computador foi ligado.
uptime
10.18 dmesg
Mostra as mensagens de inicializao do kernel. So mostradas as mensagens da ltima ini-
cializao do sistema.
dmesg | less
Captulo 10. Comandos Diversos 141
10.19 mesg
Permite ou no o recebimentos de requisies de talk de outros usurios.
mesg [y/n]
Onde: y permite que voc receba talks de outros usurios.
Digite mesg para saber se voc pode ou no receber talks de outros usurios. Caso a resposta
seja n voc poder enviar umtalk para algummas o seu sistema se recusar emreceber talks
de outras pessoas.
interessante colocar o comando mesg y em seu arquivo de inicializao .bash_profile
para permitir o recebimento de talks toda vez que entrar no sistema.
Para detalhes sobre como se comunicar comoutros usurios, veja o comando talk on page 155.
10.20 echo
Mostra mensagens. Este comando til na construo de scripts para mostrar mensagens na
tela para o usurio acompanhar sua execuo.
echo [mensagem]
Aopo -n pode ser usada para que no ocorra o salto de linha aps a mensagemser mostrada.
10.21 su
Permite o usurio mudar sua identidade para outro usurio sem fazer o logout. til para
executar um programa ou comando como root sem ter que abandonar a seo atual.
su [usurio] [-c comando]
Onde: usurio o nome do usurio que deseja usar para acessar o sistema. Se no digitado,
assumido o usurio root. Caso seja especicado -c comando, executa o comando sob o usurio
especicado.
Ser pedida a senha do superusurio para autenticao. Digite exit quando desejar retornar
a identicao de usurio anterior.
10.22 sync
Grava os dados do cache de disco na memria RAM para todos os discos rgidos e exveis
do sistema. O cache um mecanismo de acelerao que permite que um arquivo seja ar-
mazenado na memria ao invs de ser imediatamente gravado no disco, quando o sistema
Captulo 10. Comandos Diversos 142
estiver ocioso, o arquivo gravado para o disco. OGNU/Linux procura utilizar toda memria
RAM disponvel para o cache de programas acelerando seu desempenho de leitura/gravao.
sync
O uso do sync til em disquetes quando gravamos um programa e precisamos que os dados
sejam gravados imediatamente para retirar o disquete da unidade. Mas o mtodo recomen-
dado especicar a opo sync durante a montagem da unidade de disquetes (para detalhes
veja fstab on page 87.
10.23 uname
Retorna o nome e verso do kernel atual.
uname
10.24 reboot
Reinicia o computador.
10.25 shutdown
Desliga/reinicia o computador imediatamente ou aps determinado tempo (programvel) de
forma segura. Todos os usurios do sistema so avisados que o computador ser desligado
. Este comando somente pode ser executado pelo usurio root ou quando usada a opo
-a pelos usurios cadastrados no arquivo /etc/shutdown.allow que estejam logados no
console virtual do sistema.
shutdown [opes] [hora] [mensagem]
hora Momento que o computador ser desligado. Voc pode usar HH:MM para denir a hora e
minuto, MM para denir minutos, +SS para denir aps quantos segundos, ou now para
imediatamente (equivalente a +0). O shutdown criar o arquivo /etc/nologin para
no permitir que novos usurios faam login no sistema (com excesso do root). Este
arquivo removido caso a execuo do shutdown seja cancelada (opo -c) ou aps o
sistema ser reiniciado.
mensagem Mensagem que ser mostrada a todos os usurios alertando sobre o reini-
cio/desligamento do sistema.
opes
-h Inicia o processo para desligamento do computador.
-r Reinicia o sistema
-c Cancela a execuo do shutdown. Voc pode acrescentar uma mensagem avisando aos
usurios sobre o fato.
Captulo 10. Comandos Diversos 143
-a Permite que os nomes de usurios contidos no arquivo /etc/shutdown.allow possam
utilizar o shutdown para reinicializar/desligar o sistema. Deve ser colocado um nome
de usurio por linha. O limite mximo de usurios neste arquivo de 32. Este ar-
quivo til quando o shutdown usado para controlar o pressionamento das teclas
CTRL+ALT+DEL no /etc/inittab.
-k Simula o desligamento/reinicio do sistema, enviando mensagem aos usurios.
-f No executa a checagem do sistema de arquivos durante a inicializao do sistema. Este
processo feito gravando-se um arquivo /fastboot que interpretado pelos scripts
responsveis pela execuo do fsck durante a inicializao do sistema.
-F Fora a checagem do sistema de arquivos durante a inicializao. gravado um arquivo
chamado /forcefsck que interpretado pelos scripts responsveis pela execuo do
fsck durante a inicializao do sistema.
-n Faz com que o shutdown ignore a execuo do init fechando todos os processos.
-t [num ] Faz com que o shutdown envie um sinal de trmino aos processos e aguarde [num]
segundos antes de enviar o sinal KILL.
O shutdown envia uma mensagem a todos os usurios do sistema alertando sobre o desliga-
mento durante os 15 minutos restantes e assim permite que nalizem suas tarefas. Aps isto,
o shutdown muda o nvel de execuo atravs do comando init para 0 (desligamento), 1
(modo monousurio), 6 (reinicializao). recomendado utilizar o smbolo & no nal da
linha de comando para que o shutdown seja executado em segundo plano.
Quando restarem apenas 5 minutos para o reinicio/desligamento do sistema, o programa
login ser desativado, impedindo a entrada de novos usurios no sistema.
O programa shutdown pode ser chamado pelo init atravs do pressionamento da combi-
nao das teclas de reinicializao CTRL+ALT+DEL alterando-se o arquivo /etc/inittab.
Isto permite que somente os usurios autorizados (ou o root) possam reinicializar o sistema.
Exemplos:
shutdown -h now - Desligar o computador imediatamente.
shutdown -r now - Reinicia o computador imediatamente.
shutdown 19:00 A manuteno do servidor ser iniciada s 19:00 -
Faz o computador entrar em modo monousurio (init 1) s 19:00 enviando a mensagem
A manuteno do servidor ser iniciada s 19:00 a todos os usurios conectados ao sistema.
shutdown -r 15:00 O sistema ser reiniciado s 15:00 horas - Faz
o computador ser reiniciado (init 6) s 15:00 horas enviando a mensagem O sistema ser
reiniciado s 15:00 horas a todos os usurios conectados ao sistema.
shutdown -r 20 - Faz o sistema ser reiniciado aps 20 minutos.
shutdown -c - Cancela a execuo do shutdown.
shutdown -t 30 -r 20 - Reinicia o sistema aps 20 minutos, espera 30 segundos
aps o sinal de trmino para enviar o sinal KILL a todos os programas abertos.
10.26 wc
Conta o nmero de palavras, bytes e linhas em um arquivo ou entrada padro. Se as opes
forem omitidas, o wc mostra a quantidade de linhas, palavras, e bytes.
Captulo 10. Comandos Diversos 144
wc [opes] [arquivo]
Onde:
arquivo Arquivo que ser vericado pelo comando wc.
opes
-c, bytes Mostra os bytes do arquivo.
-w, words Mostra a quantidade de palavras do arquivo.
-l, lines Mostra a quantidade de linhas do arquivo.
Aordemda listagemdos parmetros nica, e modicando a posio das opes no modica
a ordem que os parmetros so listados.
Exemplo:
wc /etc/passwd - Mostra a quantidade de linhas, palavras e letras (bytes) no arquivo
/etc/passwd.
wc -w /etc/passwd - Mostra a quantidade de palavras.
wc -l /etc/passwd - Mostra a quantidade de linhas.
wc -l -w /etc/passwd - Mostra a quantidade de linhas e palavras no arquivo /etc
/passwd.
10.27 seq
Imprime uma seqncia de nmeros comeando em [primeiro] e terminando em [ltimo], uti-
lizando [incremento] para avanar.
seq [opes] [primeiro] [incremento] [ltimo]
Onde:
primeiro Nmero inicial da seqncia.
incremento Nmero utilizado para avanar na seqncia.
ltimo Nmero nal da seqncia.
opes
-f, format=[formato ] Formato de sada dos nmeros da seqncia. Utilize o estilo do printf
para ponto utuante (valor padro: %g).
-s, separator=[string ] Usa [string] para separar a seqncia de nmeros (valor padro: \n).
-w, equal-width Insere zeros na frente dos nmeros mantendo a seqncia alinhada.
Observaes:
Se [primeiro] ou [incremento] forem omitidos, o valor padro 1 ser utilizado.
Os nmeros recebidos so interpretados como nmeros em ponto utuante.
incremento deve ser positivo se [primeiro] for menor do que o ltimo, e negativo caso con-
trrio.
Quando utilizarmos a opo format, o argumento deve ser exatamente %e, %f ou %g.
Exemplos: seq 0 2 10, seq -w 0 10, seq -f%f 0 10, seq -s, 0 10
Captulo 10. Comandos Diversos 145
10.28 chattr
Modica atributos de arquivos/diretrios. No confunda atributos de arquivo com permis-
ses de acesso (Permisses de acesso a arquivos e diretrios on page 169), os atributos so
diferentes e denem outras caractersticas especiais para os arquivos/diretrios especicados.
chattr [opes] [atributos] [arquivos/diretrios]
Onde:
arquivos/diretrios Arquivos/Diretrios que tero os atributos modicados. Podem ser usa-
dos curingas
opes
-R Modica atributos em subdiretrios
-V Mostra detalhes sobre a modicao de atributos.
atributos Os atributos de arquivos/diretrios podem ser especicados da seguinte maneira:
+ - Adiciona o atributo
- - Remove o atributo
= - Dene o atributo exatamente como especicado
Os atributos so os seguintes:
A - No modica a hora de acesso de arquivos. Poder aumentar consideravelmente
a performance em Notebooks devido a diminuio de I/O no disco rgido. Quando
especicada em diretrios, faz com que todos os arquivos e subdiretrios residentes
nele no tenham a hora de acesso modicada. Este atributo funciona apenas em
kernels 2.2 e superiores
a - Append-Only - Arquivos com este atributo podem somente ser gravados em
modo incrementais (o contedo poder somente ser adicionado ao nal do arquivo).
Eles no podero ser removidos, renomeados e novos links no podero ser criados
para estes arquivos. Em diretrios faz com que os arquivos sejam apenas adiciona-
dos. Somente o root pode especicar ou retirar este atributo.
c - Permite compactao nos arquivos especicados de forma transparente para o
usurio. Durante a leitura, o kernel retorna dados descompactados e durante a
gravao os dados so compactados e gravados no disco. Este atributo ainda no
foi totalmente implementado no cdigo atual do kernel.
d - Este atributo no usado pelo kernel, mas faz com que o programa dump evitar
backup dos arquivos marcados com este atributo.
i - Imutvel - Arquivos imutveis no podem ser modicados, os dados tambm
no podem ser gravados para estes arquivos, no podem ser removidos, renomea-
dos. At mesmo o usurio root no poder modicar estes arquivos. Em diretrios,
faz com que arquivos no possam ser adicionados ou apagados. Somente o usurio
root pode especicar ou retirar este atributo.
s - O arquivo especicado marcado como apagamento seguro; quando o ar-
quivo apagado, seus blocos so zerados e gravados de volta no disco (eliminando
qualquer possibilidade de recuperao).
S - Faz a gravao imediatamente para o arquivo especicado. como especicar
a opo sync na montagem do sistema de arquivos ext2, mas afeta somente os
arquivos especicados. No tem efeito em diretrios.
Captulo 10. Comandos Diversos 146
u - O arquivo especicado marcado como recupervel. Quando o arquivo apa-
gado, seu contedo salvo para permitir futura recuperao. Este atributo ainda
no foi implementado totalmente no cdigo atual do kernel.
Os atributos de arquivos/diretrios so visualizados atravs do utilitrio lsattr. Existem
patches para os kernels da srie 2.2 que adicionam o suporte experimental aos atributos c e
u.
Exemplos:
chattr +AacdiSsu teste.txt - Adiciona todos os atributos
chattr =ASs teste.txt - Dene os atributos para ASs
chattr +i -A teste.txt - Retira o atributo A e adiciona i
chattr = teste.txt - Retira todos os atributos
10.29 lsattr
Lista atributos de um arquivo/diretrio. Os atributos podem ser modicados atravs do co-
mando chattr.
lsattr [opes] [arquivos/diretrios]
Onde:
arquivos/diretrios Arquivos/diretrios que deseja listar os atributos. Podem ser usados
curingas.
opes
-a Lista todos os arquivos, incluindo ocultos (iniciando com um .).
-d Lista os atributos de diretrios ao invs de listar os arquivos que ele contm.
-R Faz a listagem em diretrios e subdiretrios.
-v Mostra verses dos arquivos.
Caso seja especicado sem parmetros, o lsattr listar os atributos de todos os arquivos e
diretrios do diretrio atual. O lsattr mostrar mensagens de erro caso seja usado em um
diretrio de pontos de montagem ou arquivos que no sejam ext2.
Exemplo: lsattr -d, lsattr -R, lsattr -R
*
.txt
10.30 cut
Mostra sees de cada linha do arquivo dependendo das opes passadas ao programa.
cut [opes] [arquivo]
Onde:
arquivo Arquivo que ser vericado pelo comando cut.
opes
-b, bytes [bytes ] Mostra somente a lista de [bytes] do arquivo.
-c, characters [numero ] Mostra somente o [nmero] de caracteres no arquivo. semelhante
a opo -b mas tabs e espaos so tratados como qualquer caracter.
Captulo 10. Comandos Diversos 147
-f, eld [campos ] Mostra somente a lista de [campos].
-d, delimite [delimitador ] Para uso com a opo -f, os campos so separados pelo primeiro
caracter em [delimitador] ao invs de tabulaes.
-s Para uso coma opo -f, somente mostra linhas que contmo caracter separador de campos.
Devem ser especicadas opes para o funcionamento deste comando. Os bytes, campos e
delimitadores podemser especicados atravs de intervalos de caracteres (usando a-z), atravs
de vrgulas (a,b,d) ou da combinao entre eles.
cut -b 1,3 /etc/passwd - Pega a primeira e terceira letra (byte) de cada linha do
arquivo /etc/passwd
cut -b 1,3-10 /etc/passwd - Pega a primeira letra (byte) e terceira a dcima letra
de cada linha do arquivo /etc/passwd.
cut -c 1,3-10 /etc/passwd - Pega o primeiro caracter e terceiro ao dcimo caracter
de cada linha do arquivo /etc/passwd.
10.31 cmp
Compara dois arquivos de qualquer tipo (binrio ou texto). Os dois arquivos especicados
sero comparado e caso exista diferena entre eles, mostrado o nmero da linha e byte onde
ocorreu a primeira diferena na sada padro (tela) e o programa retorna o cdigo de sada 1.
cmp [arquivo1] [arquivo2] [opes]
Opes:
arquivo1/arquivo2 Arquivos que sero comparados.
opes
-l Mostra o nmero do byte (hexadecimal) e valores diferentes de bytes (octal) para cada difer-
ena.
-s No mostra nenhuma diferena, s retorna o cdigo de sada do programa.
Use o comando zcmp para comparar diretamente arquivos binrios/texto compactados com
gzip.
Exemplo: cmp teste.txt teste1.txt.
10.32 dirname
Obtm o nome do diretrio atravs do caminho passado ao programa.
dirname [diretrio/arquivo]
dirname /usr/bin/dirname, dirname /tmp/
*
.
Captulo 10. Comandos Diversos 148
10.33 diff
Compara dois arquivos e mostra as diferenas entre eles. O comando diff usado somente
para a comparao de arquivos em formato texto. As diferenas encontradas podem ser redi-
recionadas para um arquivo que poder ser usado pelo comando patch para aplicar as al-
teraes em um arquivo que no contm as diferenas. Isto til para grandes textos porque
possvel copiar somente as modicaes (geradas atravs do diff, que so muito pequenas)
e aplicar no arquivo para atualiza-lo (atravs do patch) ao invs de copiar a nova verso.
Este um sistema de atualizao muito usado na atualizao dos cdigo fonte do kernel do
GNU/Linux.
diff [diretrio1/arquivo1] [diretrio2/arquivo2] [opes]
Opes:
diretrio1/arquivo1 diretrio2/arquivo2 Arquivos /diretrios que sero comparados. Nor-
malmente usado como primeiro arquivo/diretrio o mais antigo e o mais novo como
segundo.
opes
-lines [num ] Gera a diferena com [num] linhas de contexto. Por padro o diff gera um
arquivo com2 linhas que o mnimo necessrio para o correto funcionamento do patch.
-a Compara os dois arquivos como arquivos texto.
-b Ignora espaos em branco como diferenas.
-B Ignora linhas em branco inseridas ou apagadas nos arquivos.
-i Ignora diferenas entre maisculas e minsculas nos arquivos.
-H Usa anlise heurstica para vericar os arquivos.
-N Em uma comparao de diretrios, se o arquivo apenas existe em um diretrio, trata-o
como presente mas vazio no outro diretrio.
-P Emuma comparao de diretrios, se o arquivos apenas existe no segundo diretrio, trata-o
como presente mas vazio no primeiro diretrio.
-q Mostra somente se os dois arquivos possuem diferenas. No mostra as diferenas entre
eles.
-r Compara diretrios e sub-diretrios existentes.
-S [nome ] Inicia a comparao de diretrios pelo arquivo [nome]. til quando cancelamos
uma comparao.
-t Aumenta a tabulao das diferenas encontradas.
-u Usa o formato de comparao unicado.
Use o comando zdiff para comparar diretamente arquivos compactados pelo utilitrio gzip
Use o comando sdiff para visualizar as linhas diferentes entre os dois arquivos em formato
texto simples.
Exemplo:
diff texto.txt texto1.txt - Compara o arquivo texto.txt com texto1.txt
e exibe suas diferenas na tela.
diff -Bu texto.txt texto1.txt - Compara o arquivo texto.txt com
Captulo 10. Comandos Diversos 149
texto1.txt ignorando linhas em branco diferentes entre os dois arquivos e us-
ando o formato unicado.
diff texto.txt texto1.txt >texto.diff - Compara o arquivo texto.txt
com texto1.txt e gera um arquivo chamado texto.diff contendo a diferena entre
eles. Este arquivo poder ser usado pelo patch para aplicar as diferenas existente entre
os dois no arquivo texto.txt.
diff -r /usr/src/linux-2.2.13 /usr/src/linux-2.2.14
>patch-2.2.14.diff - Compara o diretrio e sub-diretrios linux-2.2.13 e
linux-2.2.14 e grava as diferenas entre eles no arquivo patch-2.2.14.diff.
10.34 pr
Pgina arquivos texto ou a entrada padro para impresso. Este comando faz a paginao de
um arquivo texto e opcionalmente ajusta o nmero de colunas e mostra o resultado na sada
padro.
pr [opes] [arquivo]
Onde:
arquivo Arquivo que ser paginado para impresso.
opes
+[NUM ] Inicia a numerao de pginas na pgina [PAGINA]
-[NUM ] Mostra a sada com [NUM] colunas.
-c Imprime o caracter CTRL como ^ na sada padro.
-F, -f Usa avano de pgina ao invs de linhas em branco para separar pginas.
-e[caracter [tamanho]] Usa o caracter [caracter] como tabulao (o padro tab) e o espao da
tabulao [tamanho].
-h [nome ] Mostra [nome] ao invs do nome do arquivo no cabealho.
-l [num ] Dene o nmero mximo de linhas por pgina para [num].
-m Imprime vrios arquivos em paralelo, um por coluna.
-r Oculta mensagens de erro de abertura de arquivos.
-w [num ] Ajusta a largura da pgina para [num] colunas (o padro 72).
Exemplo: pr -l 50 -h Teste do comando pr teste.txt.
10.35 patch
Atualiza arquivos texto atravs das diferenas geradas pelo comando diff.
patch [opes] [arquivo.diff] ou patch [opes] < [arquivo.diff]
Onde:
arquivo.diff Arquivo contendo as diferenas geradas pelo comando diff.
opes
Captulo 10. Comandos Diversos 150
-p [num ] Nvel do diretrio onde o patch ser aplicado, se igual a 0, o patch assume que
os arquivos que sero atualizados esto no diretrio atual, se 1, assume que os arquivos
que sero atualizado esto no diretrio acima (..), se 2, 2 diretrios acima . . .
-b Cria cpias de segurana dos arquivos originais ao aplica o patch.
-binary L e grava arquivo usando modo binrio.
-d [dir ] Muda para o diretrio [dir] antes de aplica o patch.
-E Remove arquivos vazios aps a aplicao do patch.
-n Interpreta o arquivo de patch como um .diff normal.
-N No desfaz patches j aplicados.
-s No mostra mensagens de erro.
-u Interpreta o patch em formato unicado.
As diferenas so aplicadas em arquivos originais gerados pelo comando diff. importante
entender os comandos patch e diff pois so comandos muito utilizados para desenvolvi-
mento feito por equipes de pessoas.
Exemplo:
patch -p0<texto.diff - Aplica as diferenas contidas no arquivo texto.diff nos
arquivos originais.
patch -p0 texto.txt texto.diff - Aplica as diferenas contidas no arquivo
texto.diff nos arquivos originais. Faz a mesma coisa que o comando anterior.
10.36 whereis
Localiza o arquivo que contm uma pgina de manual. A pesquisa feita usando-se os
caminhos de pginas de manuais conguradas no sistema (normalmente o arquivo /etc
/manpath.config).
whereis [comando]
Exemplo: whereis ls, whereis cd.
10.37 which
Mostra a localizao de umarquivo executvel no sistema. Apesquisa de arquivos executveis
feita atravs do path do sistema. Para maiores detalhes, veja path on page 109.
which [comando]
Exemplos: which ls, which shutdown, which which.
Captulo 10. Comandos Diversos 151
10.38 zforce
Renomeia extenso de arquivos para .gz. Este comando til quando fazemos downloads de
arquivos compactados pelo gzip mas que no esto identicados pela extenso .gz.
zforce [arquivos]
Quando usado o zforce verica se o arquivo um arquivo compactado pelo gzip, caso
seja, vericado se j tem a extenso .gz, caso no tiver, acrescenta a extenso.
10.39 gzexe
Cria arquivos compactados gzip auto-extrcteis. Este comando usado para compactar ar-
quivos executveis que se auto-descompactam assim que so solicitados. til para sistemas
ou unidades de disco que possuem pouco espao disponvel. Este comando deve somente ser
usado para arquivos executveis.
gzexe [arquivo]
Onde: arquivo o arquivo executvel que ser compactado.
Quando gzexe executado, uma cpia do arquivo original gravada com o formato
nome_do_arquivo~.
Exemplo: gzexe /tmp/teste.
10.40 znew
Recompacta arquivos do formato compress (.Z) para o formato gzip (.gz). Aps a re-
compactao, os arquivos de origem .Z so apagados.
znew [opes] [arquivo]
Onde:
arquivo.Z Arquivo compactado pelo compress que ser re-compactado para o gzip.
opes
-f Substitui o arquivo .gz caso j exista.
-t Teste os novos arquivos criados antes de apagar os arquivos .Z.
-v Mostra o nome e porcentagem de compactao para cada arquivo processado.
-9 Usa a mxima compactao.
-P Usa pipes durante a converso para reduzir o espao ocupado no disco. A data e hora do
arquivo no mantida caso esta opo seja usada.
-K Mantm o arquivo .Z caso seja menor que o arquivo .gz.
Captulo 10. Comandos Diversos 152
153
Captulo 11
Comandos de rede
Este captulo traz alguns comandos teis para uso em rede e ambientes multiusurio.
11.1 who
Mostra quem est atualmente conectado no computador. Este comando lista os nomes de
usurios que esto conectados em seu computador, o terminal e data da conexo.
who [opes]
onde:
opes
-H, heading Mostra o cabealho das colunas.
-b, boot Mostra o horrio do ltimo boot do sistema.
-d, dead Mostra processos mortos no sistema.
-i, -u, idle Mostra o tempo que o usurio est parado em Horas:Minutos.
-m, i am Mostra o nome do computador e usurio associado ao nome. equivalente a digitar
who i am ou who am i.
-q, count Mostra o total de usurios conectados aos terminais.
-r, runlevel Mostra o nvel de execuo atual do sistema e desde quando ele est ativo.
-T, -w, mesg Mostra se o usurio pode receber mensagens via talk (conversao).
+ O usurio recebe mensagens via talk
- O usurio no recebe mensagens via talk.
? No foi possvel determinar o dispositivo de terminal onde o usurio est conec-
tado.
11.2 telnet
Permite acesso a um computador remoto. mostrada uma tela de acesso correspondente
ao computador local onde deve ser feita a autenticao do usurio para entrar no sistema.
Captulo 11. Comandos de rede 154
Muito til, mas deve ser tomado cuidados ao disponibilizar este servio para evitar riscos
de segurana e usado o ssh sempre que possvel por ser um protocolo criptografado e com
recursos avanados de segurana.
telnet [opes] [ip/dns] [porta]
onde:
ip/dns Endereo IP do computador de destino ou nome DNS.
porta Porta onde ser feita a conexo. Por padro, a conexo feita na porta 23.
opes -8 Requisita uma operao binria de 8 bits. Isto fora a operao em modo binrio
para envio e recebimento. Por padro, telnet no usa 8 bits.
-a Tenta um login automtico, enviando o nome do usurio lido da varivel de ambiente
USER.
-d Ativa o modo de debug.
-r Ativa a emulao de rlogin.
-l [usurio ] Faz a conexo usando [usurio] como nome de usurio.
Exemplo: telnet 192.168.1.1, telnet 192.168.1.1 23.
11.3 nger
Mostra detalhes sobre os usurios de um sistema. Algumas verses do finger possuem bugs
e podemsignicar umrisco para a segurana do sistema. recomendado desativar este servio
na mquina local.
finger [usurio] [usurio@host]
Onde:
usurio Nome do usurio que deseja obter detalhes do sistema. Se no for digitado o nome
de usurio, o sistema mostra detalhes de todos os usurios conectados no momento.
usurio@host Nome do usurio e endereo do computador que deseja obter detalhes.
-l Mostra os detalhes de todos os usurios conectados no momento. Entre os detalhes, esto
includos o nome do interpretador de comandos (shell) do usurio, diretrio home, nome do
usurio, endereo, etc. Estes dados so lidos de /etc/passwd.
-p No exibe o contedo dos arquivos .plan e .project
Se for usado sem parmetros, mostra os dados de todos os usurios conectados atualmente ao
seu sistema.
Exemplo: finger, finger root.
11.4 ftp
Permite a transferncia de arquivos do computador remoto/local e vice versa. O le transfer
protocol o sistema de transmisso de arquivos mais usado na Internet. requerida a auten-
ticao do usurio para que seja permitida a conexo. Muitos servidores ftp disponibilizam
acesso annimo aos usurios, com acesso restrito.
Captulo 11. Comandos de rede 155
Uma vez conectado a um servidor ftp, voc pode usar a maioria dos comandos do
GNU/Linux para oper-lo.
ftp [ip/dns]
Abaixo alguns dos comandos mais usados no FTP:
ls Lista arquivos do diretrio atual.
cd [diretrio ] Entra em um diretrio.
get [arquivo ] Copia um arquivo do servidor ftp para o computador local. O arquivo
gravado, por padro, no diretrio onde o programa ftp foi executado.
hash [on/off ] Por padro esta opo est desligada. Quando ligada, faz com que o caracter
# seja impresso na tela indicando o progresso do download.
mget [arquivos ] Semelhante ao get, mas pode copiar diversos arquivos e permite o uso de
curingas.
send [arquivo ] Envia umarquivo para o diretrio atual do servidor FTP (voc precisa de uma
conta com acesso a gravao para fazer isto).
prompt [on/off ] Ativa ou desativa a pergunta para a cpia de arquivo. Se estiver como off
assume sim para qualquer pergunta.
Exemplo: ftp ftp.debian.org.
11.5 whoami
Mostra o nome que usou para se conectar ao sistema. til quando voc usa vrias contas e
no sabe com qual nome entrou no sistema :-)
whoami
11.6 dnsdomainname
Mostra o nome do domnio de seu sistema.
11.7 hostname
Mostra ou muda o nome de seu computador na rede.
11.8 talk
Inicia conversa com outro usurio de sistema em uma rede local ou Internet. Talk um pro-
grama de conversao em tempo real onde uma pessoa v o que a outra escreve.
talk [usurio] [tty]
Captulo 11. Comandos de rede 156
ou
talk [usurio@host]
Onde:
usurio Nome de login do usurio que deseja iniciar a conversao. Este nome pode ser obtido
com o comando who (veja who on page 153).
tty O nome de terminal onde o usurio est conectado, para iniciar uma conexo local.
usurio@host Se o usurio que deseja conversar estiver conectado em um computador re-
moto, voc deve usar o nome do usurio@hosname do computador.
Aps o talk ser iniciado, ele vericar se o usurio pode receber mensagens, emcaso positivo,
ele enviar uma mensagem ao usurio dizendo como responder ao seu pedido de conversa.
Veja who on page 153.
Para poder fazer a rolagem para cima e para baixo no talk, pressione CTRL+P(Previous - Tela
anterior) e CTRL+N (Next - Prxima tela). Voc deve ter o daemon do talk instalado (talkd)
para receber requisies de conversa.
Voc deve autorizar o recebimento de talks de outros usurios para que eles possam se comu-
nicar com voc , para detalhes veja o comando mesg on page 141.
11.9 ping
Verica se umcomputador est disponvel na rede. Este comando muito utilizado por alguns
programas de conexo e administradores para vericar se uma determinada mquina est
conectada na rede e tambm para vericar o tempo de resposta de cada mquina da rede.
O ping envia pacotes ICMS ECHO_REQUEST para um computador, este quando recebe o
pacote envia uma resposta ao endereo de origem avisando que est disponvel na rede.
ping [opes][IP/DNS]
onde:
IP/dns Endereo IP ou nome DNS do endereo.
opes
-c [num ] Envia num pacotes ao computador de destino.
-f Flood ping. Envia novos pacotes antes de receber a resposta do pacote anterior. Para
cada requisio enviada, um . mostrado na tela e para cada resposta recebida, um
backspace mostrado. Somente o usurio root pode utilizar esta opo e pode te auxiliar
muito na deteco de erros de transmisso de pacotes em interfaces das mquinas em
sua rede.
-i [seg ] Aguarda [seg] segundos antes de enviar cada pacote.
-q No mostra as requisies enquanto so enviadas, somente mostra as linhas de sumrio no
inicio e trmino do programa.
-s [tamanho ] Especica o tamanho do pacote que ser enviado.
-v, verbose Sada detalhada, tanto os pacotes enviados como recebidos so listados.
Exemplo: ping 192.168.1.1, ping www.debian.org.
Captulo 11. Comandos de rede 157
11.10 rlogin
Executa um login em uma mquina local ou remota.
rlogin [opes] [IP/DNS]
onde:
IP/DNS Endereo IP ou DNS do computador que ser acessado.
opes
-l [nome ] Entra com o user id [nome] no sistema.
rlogin usado para executar comandos interativamente no computador de destino (como se
voc estivesse sentado diante dele, muito semelhante ao telnet). Para executar comandos no
interativamente veja rsh on the current page.
11.11 rsh
Executa um comando em um computador local ou remoto.
rsh [opes] [IP/DNS] [comando]
Onde:
IP/DNS Endereo IP ou nome DNS do computador.
comando Comando que ser executado no computador local/remoto.
opes
-l [nome ] Entra no sistema usando o login [nome].
rsh usado somente para executar comandos. Para usar um shell interativo veja telnet on
page 153 e rlogin on the current page.
11.12 w
Mostra quem est conectado no sistema e o que cada um est fazendo.
w [opes][usurio]
onde:
usurio Nome do usurio que deseja ver os detalhes. Se o usurio no for digitado, o comando
w mostra detalhes de todos os usurios conectados no sistema.
opes
-h No mostra o cabealho
-u Ignora os nomes de usurios enquanto verica os processo atuais e tempos de CPU.
-f Mostra ou oculta o campo FROM na listagem.
Captulo 11. Comandos de rede 158
11.13 traceroute
Mostra o caminho percorrido por um pacote para chegar ao seu destino. Este comando mostra
na tela o caminho percorrido entre os Gateways da rede e o tempo gasto de retransmisso.
Este comando til para encontrar computadores defeituosos na rede caso o pacote no esteja
chegando ao seu destino.
traceroute [opes] [host/IP de destino]
Onde:
host/IP destino o endereo para onde o pacote ser enviado (por exemplo,
www.debian.org). Caso o tamanho do pacote no seja especicado, enviado um
pacote de 38 bytes.
opes
-l Mostra o tempo de vida do pacote (ttl)
-m [num ] Ajusta a quantidade mximas de ttl dos pacotes. O padro 30.
-n Mostra os endereos numericamente ao invs de usar resoluo DNS.
-p [porta ] Ajusta a porta que ser usada para o teste. A porta padro 33434.
-r Pula as tabelas de roteamento e envia o pacote diretamente ao computador conectado a
rede.
-s [end ] Usa o endereo IP/DNS [end] como endereo de origem para computadores com
mltiplos endereos IPs ou nomes.
-v Mostra mais detalhes sobre o resultado do traceroute.
-w [num ] Congura o tempo mximo que aguardar por uma resposta. O padro 3 segun-
dos.
Exemplos: traceroute www.debian.org, traceroute www.guiafoca.org.
11.14 netstat
Mostra conexes de rede, tabela de roteamento, estatsticas de interfaces, conexes masquer-
ade, e mensagens.
netstat [opes]
Onde:
opes
-i [interface ] Mostra estatsticas da interface [interface].
-M, masquerade Se especicado, tambm lista conexes masquerade.
-n, numeric Usa endereos numricos ao invs de tentar resolver nomes de hosts, usurios e
portas.
-c, continuous Mostra a listagem a cada segundo at que a CTRL+C seja pressionado.
-l Lista sockets aguardando por conexo.
-t, tcp Lista conexes TCP.
-u, udp Lista conexes UDP.
Se no for especicada nenhuma opo, os detalhes das conexes atuais sero mostrados.
Exemplos: netstat -n, netstat -lt, netstat -M.
Captulo 11. Comandos de rede 159
11.15 wall
Envia uma mensagem a todos os usurios do sistema. Este comando faz a leitura de um ar-
quivo ou entrada padro e escreve o resultado em todos os terminais onde existem usurios
conectados. Somente o usurio root pode utilizar este comando.
wall [arquivo]
Exemplos: wall /tmp/mensagem.txt, echo Teste de mensagem enviada a todos
os usurios conectados ao sistema|wall.
Captulo 11. Comandos de rede 160
161
Captulo 12
Comandos para manipulao de contas
Este captulo traz comandos usados para manipulao de conta de usurios e grupos em sis-
temas GNU/Linux. Entre os assuntos descritos aqui esto adicionar usurios ao sistema, adi-
cionar grupos, incluir usurios em grupos existentes, etc.
12.1 adduser
Adiciona umusurio ou grupo no sistema. Por padro, quando umnovo usurio adicionado,
criado um grupo com o mesmo nome do usurio. Opcionalmente o adduser tambm pode
ser usado para adicionar um usurio a um grupo (veja Adicionando o usurio a um grupo ex-
tra on page 166). Ser criado um diretrio home com o nome do usurio (a no ser que o novo
usurio criado seja um usurio do sistema) e este receber uma identicao. A identicao
do usurio (UID) escolhida ser a primeira disponvel no sistema especicada de acordo com
a faixa de UIDS de usurios permitidas no arquivo de congurao /etc/adduser.conf.
Este o arquivo que contm os padres para a criao de novos usurios no sistema.
adduser [opes] [usurio/grupo]
Onde:
usurio/grupo Nome do novo usurio que ser adicionado ao sistema.
opes
-disable-passwd No executa o programa passwd para escolher a senha e somente permite o
uso da conta aps o usurio escolher uma senha.
force-badname Desativa a checagem de senhas ruins durante a adio do novo usurio. Por
padro o adduser checa se a senha pode ser facilmente adivinhada.
group Cria um novo grupo ao invs de um novo usurio. A criao de grupos tambm pode
ser feita pelo comando addgroup.
-uid [num ] Cria um novo usurio com a identicao [num] ao invs de procurar o prximo
UID disponvel.
-gid [num ] Faz com que o usurio seja parte do grupo [gid] ao invs de pertencer a um novo
grupo que ser criado com seu nome. Isto til caso deseje permitir que grupos de
Captulo 12. Comandos para manipulao de contas 162
usurios possam ter acesso a arquivos comuns. Caso estiver criando um novo grupo
com adduser, a identicao do novo grupo ser [num].
home [dir ] Usa o diretrio [dir] para a criao do diretrio home do usurio ao invs de usar
o especicado no arquivo de congurao /etc/adduser.conf.
ingroup [nome ] Quando adicionar um novo usurio no sistema, coloca o usurio no grupo
[nome] ao invs de criar um novo grupo.
quiet No mostra mensagens durante a operao.
system Cria um usurio de sistema ao invs de um usurio normal.
Os dados do usurio so colocados no arquivo /etc/passwd aps sua criao e os dados do
grupo so colocados no arquivo /etc/group.
OBSERVAO: Caso esteja usando senhas ocultas (shadow passwords), as senhas dos
usurios sero colocadas no arquivo /etc/shadow e as senhas dos grupos no arquivo /etc
/gshadow. Isto aumenta mais a segurana do sistema porque somente o usurio root pode
ter acesso a estes arquivos, ao contrrio do arquivo /etc/passwd que possui os dados de
usurios e devem ser lidos por todos.
12.2 addgroup
Adiciona um novo grupo de usurios no sistema. As opes usadas so as mesmas do ad-
duser on the previous page.
addgroup [usurio/grupo] [opes]
12.3 passwd
Modica a parametros e senha de usurio. Um usurio somente pode alterar a senha de sua
conta, mas o superusurio (root) pode alterar a senha de qualquer conta de usurio, inclusive
a data de validade da conta, etc. Os donos de grupos tambm podem alterar a senha do grupo
com este comando.
Os dados da conta do usurio como nome, endereo, telefone, tambm podem ser alterados
com este comando.
passwd [usurio] [opes]
Onde:
usurio Nome do usurio que ter sua senha alterada.
opes
-e Fora a expirao de senha para a conta especicada.
-k Somente altera a senha se a conta estiver expirada.
-x [dias ] Especica o nmero mximo de dias que a senha poder ser usada. Aps terminar
o prazo, a senha dever ser modicada.
-i Desativa a conta caso o usurio no tenha alterado sua senha aps o tempo especicado por
-x.
Captulo 12. Comandos para manipulao de contas 163
-n [dias ] Especica o nmero mnimo de dias para a senha ser alterada. Ousurio no poder
mudar sua senha at que [dias] sejam atingidos desde a ltima alterao de senha.
-w [num ] Nmero de dias antecedentes que o usurio receber o alerta para mudar sua senha.
Oalerta ocorre [num] dias antes do limite da opo -x, avisando ao usurios quantos dias
restam para a troca de sua senha.
-l [nome ] Bloqueia a conta do usurio [nome]. Deve ser usada pelo root. O bloqueio da conta
feito acrescentando um caracter a senha para que no conra com a senha original.
-u [nome ] Desbloqueia a conta de um usurio bloqueada com a opo -l.
-S [nome ] Mostra o status da conta do usurio [nome]. A primeira parte o nome do usurio
seguido de L(conta bloqueada), NP(sem senha), ou P (com senha), a terceira parte a
data da ltima modicao da senha, a quarta parte a perodo mnimo, mximo, alerta
e o perodo de inatividade para a senha.
Procure sempre combinar letras maisculas, minsculas, e nmeros ao escolher suas senhas.
No recomendado escolher palavras normais como sua senha pois podem ser vulnerveis
a ataques de dicionrios cracker. Outra recomendao utilizar senhas ocultas em seu sistema
(shadow password).
Voc deve ser o dono da conta para poder modicar a senhas. O usurio root pode modi-
car/apagar a senha de qualquer usurio.
Exemplo: passwd root.
12.4 gpasswd
Modica parametros e senha de grupo. Um usurio somente pode alterar a senha de seu
grupo, mas o superusurio (root) pode alterar a senha de qualquer grupo de usurio, inclu-
sive denir o administrador do grupo.
gpasswd [opes] [usuario] [grupo]
Onde:
usurio Nome do usurio/grupo que ter sua senha alterada.
opes
-r usuario grupo Remove a senha de grupo.
-R usuario grupo Desativa o acesso do grupo usando o comando newgrp.
-a usuario grupo Adiciona o usurio no grupo especicado.
-d usuario grupo Apaga o usurio do gurpo especicado.
-A [usuario [grupo]] Dene que o [usuario] ser o administrador do [grupo].
-M [usuario [grupo]] Dene os usurios que fazem parte do grupo e suas permisses.
Quando o grupo no possui senha, somente quem faz parte do grupo pode utilizar o comando
new-grp.
Voc deve ser o dono da conta para poder modicar a senhas. O usurio root pode modi-
car/apagar a senha de qualquer usurio.
Exemplo: gpasswd grupo, gpasswd -a gleydson grupo.
Captulo 12. Comandos para manipulao de contas 164
12.5 newgrp
Altera a identicao de grupo do usurio. Para retornar a identicao anterior, digite exit
e tecle Enter. Para executar um comando com outra identicao de grupo de usurio, use o
comando sg on page 166.
newgrp - [grupo]
Onde:
- Se usado, inicia um novo ambiente aps o uso do comando newgrp (semelhante a um novo
login no sistema), caso contrrio, o ambiente atual do usurio mantido.
grupo Nome do grupo ou nmero do grupo que ser includo.
Quando este comando usado, pedida a senha do grupo que deseja acessar. Caso a senha
do grupo esteja incorreta ou no exista senha denida, a execuo do comando negada.
A listagem dos grupos que pertence atualmente pode ser feita usando o comando id on
page 167.
12.6 userdel
Apaga um usurio do sistema. Quando usado, este comando apaga todos os dados da conta
especicado dos arquivos de contas do sistema.
userdel [-r] [usurio]
Onde:
-r Apaga tambm o diretrio HOME do usurio.
OBS: Note que uma conta de usurio no poder ser removida caso ele estiver no sistema, pois
os programas podem precisar ter acesso aos dados dele (como UID, GID) no /etc/passwd.
12.7 groupdel
Apaga um grupo do sistema. Quando usado, este comando apaga todos os dados do grupo
especicado dos arquivos de contas do sistema.
groupdel [grupo]
Tenha certeza que no existem arquivos/diretrios criados com o grupo apagado atravs do
comando find.
OBS: Voc no pode remover o grupo primrio de um usurio. Remova o usurio primeiro.
12.8 lastlog
Mostra o ltimo login dos usurios cadastrados no sistema. mostrado o nome usado no
login, o terminal onde ocorreu a conexo e a hora da ltima conexo. Estes dados so obtidos
Captulo 12. Comandos para manipulao de contas 165
atravs da pesquisa e formatao do arquivo /var/log/lastlog. Caso o usurio no tenha
feito login, mostrada a mensagem
**
Never logged in
**
lastlog [opes]
Onde:
opes
-t [dias ] Mostra somente os usurios que se conectaram ao sistema nos ltimos [dias].
-b [dias ] Mostra somente os usurios que se conectaram antes de [dias].
-u [nome ] Mostra somente detalhes sobre o usurio [nome].
A opo -t substitui a opo -u caso sejam usadas.
12.9 last
Mostra uma listagem de entrada e sada de usurios no sistema. So mostrados os seguintes
campos na listagem:
Nome do usurio
Terminal onde ocorreu a conexo/desconexo
O hostname (caso a conexo tenha ocorrido remotamente) ou console (caso tenha ocor-
rido localmente).
A data do login/logout, a hora do login/down se estiver fora do sistema/ still logged in
se ainda estiver usando o sistema
Tempo (em Horas:Minutos) que esteve conectado ao sistema.
A listagem mostrada em ordem inversa, ou seja, da data mais atual para a mais antiga. A
listagem feita pelo last obtida de /var/log/wtmp.
last [opes]
Onde:
opes
-n [num ] Mostra [num] linhas. Caso no seja usada, todas as linhas so mostradas.
-R No mostra o campo HostName.
-a Mostra o hostname na ltima coluna. Ser muito til se combinada com a opo -d.
-d Usa o DNS para resolver o IP de sistemas remotos para nomes DNS.
-x Mostra as entradas de desligamento do sistema e alteraes do nvel de execuo do sis-
tema.
O comando last pode ser seguido de um argumento que ser pesquisado como uma ex-
presso regular durante a listagem.
O comando last usa o arquivo /var/log/wtmp para gerar sua listagem, mas alguns
sistemas podem no possuir este arquivo. O arquivo /var/log/wtmp somente usado
caso existir. Voc pode cria-lo com o comando echo -n >/var/log/wtmp ou touch
/var/log/wtmp.
Captulo 12. Comandos para manipulao de contas 166
last - Mostra a listagem geral
last -a - Mostra a listagem geral incluindo o nome da mquina
last gleydson - Mostra somente atividades do usurio gleydson
last reboot - Mostra as reinicializaes do sistema
last tty1 - Mostra todas as atividades no tty1
12.10 sg
Executa um comando com outra identicao de grupo. A identicao do grupo de usurio
modicada somente durante a execuo do comando. Para alterar a identicao de grupo
durante sua seo shell, use o comando newgrp on page 164.
sg [-] [grupo] [comando]
Onde:
- Se usado, inicia um novo ambiente durante o uso do comando (semelhante a um novo login
e execuo do comando), caso contrrio, o ambiente atual do usurio mantido.
grupo Nome do grupo que o comando ser executado.
comando Comando que ser executado. O comando ser executado pelo bash.
Quando este comando usado, pedida a senha do grupo que deseja acessar. Caso a senha do
grupo esteja incorreta ou no exista senha denida, a execuo do comando negada.
Exemplo: sg root ls /root
12.11 Adicionando o usurio a um grupo extra
Para adicionar um usurio em um novo grupo e assim permitir que ele acesse os ar-
quivos/diretrios que pertencem quele grupo, voc deve estar como root e editar o arquivo
/etc/group com o comando vigr. Este arquivo possui o seguinte formato:
NomedoGrupo:senha:GID:usurios
Onde:
NomedoGrupo o nome daquele grupo de usurios.
senha Senha para ter acesso ao grupo. Caso esteja utilizando senhas ocultas para grupos, as
senhas estaro em /etc/gshadow.
GID Identicao numrica do grupo de usurio.
usuarios Lista de usurios que tambm fazem parte daquele grupo. Caso exista mais de um
nome de usurio, eles devem estar separados por vrgula.
Deste modo para acrescentar o usurio joao ao grupo audio para ter acesso aos dispositivos
de som do Linux, acrescente o nome no nal da linha: audio:x:100:joao. Pronto, basta digitar
Captulo 12. Comandos para manipulao de contas 167
logout e entrar novamente comseu nome e senha, voc estar fazendo parte do grupo audio
(conra digitando groups ou id).
Outros nomes de usurios podem ser acrescentados ao grupo audio bastando separar os
nomes com vrgula. Voc tambm pode usar o comando adduser da seguinte forma para
adicionar automaticamente um usurio a um grupo:
adduser joao audio
Isto adicionaria o usurio joao ao grupo audio da mesma forma que fazendo-se a edio
manualmente.
12.12 chfn
Muda os dados usados pelo comando nger on page 154.
chfn [usurio] [opes]
Onde:
usurio Nome do usurio.
opes
-f [nome ] Adiciona/altera o nome completo do usurio.
-r [nome ] Adiciona/altera o nmero da sala do usurio.
-w [tel ] Adiciona/altera o telefone de trabalho do usurio.
-h [tel ] Adiciona/altera o telefone residencial do usurio.
-o [outros ] Adiciona/altera outros dados do usurio.
Caso o nome que acompanha as opes (como o nome completo) contenha espaos, use
para identica-lo.
Exemplo: chfn -f Nome do Usurio root root
12.13 id
Mostra a identicao atual do usurio, grupo primrio e outros grupos que pertence.
id [opes] [usurio]
Onde:
usurio o usurio que desejamos ver a identicao, grupos primrios e complementares.
opes
-g, group Mostra somente a identicao do grupo primrio.
-G, groups Mostra a identicao de outros grupos que pertence.
-n, name Mostra o nome do usurio e grupo ao invs da identicao numrica.
-u, user Mostra somente a identicao do usurio (user ID).
-r, real Mostra a identicao real de usurio e grupo, ao invs da efetiva. Esta opo deve
ser usada junto com uma das opes: -u, -g, ou -G.
Captulo 12. Comandos para manipulao de contas 168
Caso no sejam especicadas opes, id mostrar todos os dados do usurio.
Exemplo: id, id --user, id -r -u.
12.14 logname
Mostra seu login (username).
logname
12.15 users
Mostra os nomes de usurios usando atualmente o sistema. Os nomes de usurios so mostra-
dos atravs de espaos sem detalhes adicionais, para ver maiores detalhes sobre os usurios,
veja os comandos id on the preceding page e who on page 153.
users
Os nomes de usurios atualmente conectados ao sistema so obtidos do arquivo /var/log
/wtmp.
12.16 groups
Mostra os grupos que o usurio pertence.
groups [usurio]
Exemplo: groups, groups root
169
Captulo 13
Permisses de acesso a arquivos e
diretrios
As permisses de acesso protegem o sistema de arquivos Linux do acesso indevido de pessoas
ou programas no autorizados.
A permisso de acesso do GNU/Linux tambm impede que um programa mal intencionado,
por exemplo, apague um arquivo que no deve, envie arquivos especiais para outra pessoa ou
fornea acesso da rede para que outros usurios invadam o sistema. O sistema GNU/Linux
muito seguro e como qualquer outro sistema seguro e convel impede que usurios mal
intencionados (ou iniciantes que foram enganados) instalem programas enviados por terceiros
sem saber para que eles realmente servem e causem danos irreversveis em seus arquivos, seu
micro ou sua empresa.
Esta seo do guia, de inicio, pode ser umpouco dicil de se entender, ento recomendo ler e ao
mesmo tempo prtica-la para uma tima compreenso. No se preocupe, tambmcoloquei ex-
emplos para ajuda-lo a entender o sistema de permisses de acesso do ambiente GNU/Linux.
13.1 Donos, Grupos e outros usurios
A idia bsica da segurana no sistema GNU/Linux denir o acesso aos arquivos por donos,
grupos e outros usurios:
dono a pessoa que criou o arquivo ou o diretrio. O nome do dono do arquivo/diretrio
o mesmo do usurio usado para entrar no sistema GNU/Linux. Somente o dono pode
modicar as permisses de acesso do arquivo. As permisses de acesso do dono de um
arquivo somente se aplicam ao dono do arquivo/diretrio. A identicao do dono tam-
bm chamada de user id (UID). Aidenticao de usurio ao qual o arquivo pertence
armazenada no arquivo /etc/passwd e do grupo no arquivo /etc/group. Estes so
arquivos textos comuns e podem ser editados em qualquer editor de texto, mas utilize
preferencialmente os comandos vipw e vigr que executa procedimentos adicionais de
checagem de uids e grupos aps a alterao. Tenha cuidado para no modicar o campo
Captulo 13. Permisses de acesso a arquivos e diretrios 170
que contm a senha do usurio encriptada (que pode estar armazenada no arquivo /etc
/passwd caso no estiver usando senhas ocultas).
grupo Permite que vrios usurios diferentes tenham acesso a um mesmo arquivo (j que so-
mente o dono poderia ter acesso ao arquivo). Cada usurio pode fazer parte de um ou
mais grupos e ento acessar arquivos que pertenam ao mesmo grupo que o seu (mesmo
que estes arquivos tenham outro dono). Por padro, quando um novo usurio criado
e no especicar nenhum grupo, ele pertencer ao grupo de mesmo nome do seu grupo
primrio (este comportamento controlado pelo parametro USERGROUPS=yes do ar-
quivo /etc/adduser.conf, veja id on page 167). Aidenticao do grupo chamada
de GID (group id). Um usurio pode pertencer a um ou mais grupos. Para detalhes
de como incluir o usurio emmais grupos veja Adicionando o usurio a umgrupo extra
on page 166.
outros a categoria de usurios que no so donos ou no pertencem ao grupo do arquivo.
Cada um dos tipos acima possuem trs tipos bsicos de permisses de acesso que sero vistas
na prxima seo.
13.2 Tipos de Permisses de Acesso
Quanto aos tipos de permisses que se aplicam ao dono, grupo e outros usurios, temos 3 per-
misses bsicas:
r - Permisso de leitura para arquivos. Caso for umdiretrio, permite listar seu contedo
(atravs do comando ls, por exemplo).
w - Permisso de gravao para arquivos. Caso for um diretrio, permite a gravao
de arquivos ou outros diretrios dentro dele. Para que um arquivo/diretrio possa ser
apagado, necessrio o acesso a gravao.
x - Permite executar um arquivo (caso seja um programa executvel). Caso seja um di-
retrio, permite que seja acessado atravs do comando cd (veja cd on page 125 para
detalhes).
As permisses de acesso a um arquivo/diretrio podem ser visualizadas com o uso do co-
mando ls -la. Para maiores detalhes veja ls on page 123. As 3 letras (rwx) so agrupadas
da seguinte forma:
-rwxr-xr-- gleydson users teste
Virou uma baguna no? Vou explicar cada parte para entender o que quer dizer as 10 letras
acima (da esquerda para a direita):
A primeira letra diz qual o tipo do arquivo. Caso tiver um d um diretrio, um l
um link a um arquivo no sistema (veja ln on page 132 para detalhes) , um - quer dizer
que um arquivo comum, etc.
Da segunda a quarta letra (rwx) dizem qual a permisso de acesso ao dono do arquivo.
Neste caso gleydson ele tem a permisso de ler (r - read), gravar (w - write) e executar (x -
execute) o arquivo teste.
Captulo 13. Permisses de acesso a arquivos e diretrios 171
Da quinta a stima letra (r-x) diz qual a permisso de acesso ao grupo do arquivo. Neste
caso todos os usurios que pertencemao grupo users tema permisso de ler (r), e tambm
executar (x) o arquivo teste.
Da oitava a dcima letra (r) diz qual a permisso de acesso para os outros usurios.
Neste caso todos os usurios que no so donos do arquivo teste tem a permisso
somente para ler o programa.
Veja o comando chmod on page 175 para detalhes sobre a mudana das permisses de acesso
de arquivos/diretrios.
13.3 Etapas para acesso a um arquivo/diretrio
O acesso a um arquivo/diretrio feito vericando primeiro se o usurio que acessar o ar-
quivo o seu dono, caso seja, as permisses de dono do arquivo so aplicadas. Caso no
seja o dono do arquivo/diretrio, vericado se ele pertence ao grupo correspondente, caso
pertena, as permisses do grupo so aplicadas. Caso no pertena ao grupo, so vericadas
as permisses de acesso para os outros usurios que no so donos e no pertencem ao grupo
correspondente ao arquivo/diretrio.
Aps vericar aonde o usurio se encaixa nas permisses de acesso do arquivo (se ele o dono,
pertence ao grupo, ou outros usurios), vericado se ele ter permisso acesso para o que deseja
fazer (ler, gravar ou executar o arquivo), caso no tenha, o acesso negado, mostrando uma
mensagem do tipo: Permission denied (permisso negada).
O que isto que dizer que mesmo que voc seja o dono do arquivo e denir o acesso do
dono (atravs do comando chmod) como somente leitura (r) mas o acesso dos outros usurios
como leitura e gravao, voc somente poder ler este arquivo mas os outros usurios podero
ler/grava-lo.
As permisses de acesso (leitura, gravao, execuo) para donos, grupos e outros usurios
so independentes, permitindo assim um nvel de acesso diferenciado. Para maiores detalhes
veja Tipos de Permisses de Acesso on the facing page.
Lembre-se: Somente o dono pode modicar as permisses de um arquivo/diretrio!
Para mais detalhes veja os comandos chown on page 176 e chgrp on page 176.
13.4 Exemplos prticos de permisses de acesso
Abaixo dois exemplos prticos de permisso de acesso: Exemplo de acesso a um arquivo on
the next page e a Exemplo de acesso a um diretrio on the following page. Os dois exemplos
so explicados passo a passo para uma perfeita compreenso do assunto. Vamos a prtica!
Captulo 13. Permisses de acesso a arquivos e diretrios 172
13.4.1 Exemplo de acesso a um arquivo
Abaixo um exemplo e explicao das permisses de acesso a um arquivo no GNU/Linux
(obtido com o comando ls -la, explicarei passo a passo cada parte:
-rwxr-xr 1 gleydson user 8192 nov 4 16:00 teste
-rwxr-xr-- Estas so as permisses de acesso ao arquivo teste. Um conjunto de 10 letras
que especicam o tipo do arquivo, permisso do dono do arquivo, grupo do arquivo e
outros usurios. Veja a explicao detalhada sobre cada uma abaixo:
-rwxr-xr A primeira letra (do conjunto das 10 letras) determina o tipo do arquivos. Se
a letra for um d um diretrio, e voc poder acessa-lo usando o comando cd.
Caso for um l um link simblico para algum arquivo ou diretrio no sistema (para
detalhes veja o comando ln on page 132 . Um - signica que um arquivo normal.
-rwxr-xr Estas 3 letras (da segunda a quarta do conjunto das 10 letras) so as permisses
de acesso do dono do arquivo teste. O dono (neste caso gleydson) tem a permisso
para ler (r), gravar (w) e executar (x) o arquivo teste.
-rwxr-xr Estes 3 simbolos (do quinto ao stimo do conjunto de 10) so as permisses de
acesso dos usurios que pertencem ao grupo user do arquivo teste. Os usurios
que pertencem ao grupo user tem a permisso somente para ler (r) e executar (x) o
arquivo teste no podendo modica-lo ou apaga-lo.
-rwxr-xr Estes 3 simbolos (do oitavo ao dcimo) so as permisses de acesso para
usurios que no so donos do arquivo teste e que no pertencem ao grupo user.
Neste caso, estas pessoas somente tero a permisso para ver o contedo do arquivo
teste.
gleydson Nome do dono do arquivo teste.
user Nome do grupo que o arquivo teste pertence.
teste Nome do arquivo.
13.4.2 Exemplo de acesso a um diretrio
Abaixo um exemplo com explicaes das permisses de acesso a um diretrio no GNU/Linux:
drwxr-x 2 gleydson user 1024 nov 4 17:55 exemplo
drwxr-x--- Permisses de acesso ao diretrio exemplo. um conjunto de 10 letras que
especicam o tipo de arquivo, permisso do dono do diretrio, grupo que o diretrio
pertence e permisso de acesso a outros usurios. Veja as explicaes abaixo:
drwxr-x Aprimeira letra (do conjunto das 10) determina o tipo do arquivo. Neste caso
um diretrio porque tem a letra d.
drwxr-x Estas 3 letras (da segunda a quarta) so as permisses de acesso do dono do
diretrio exemplo. O dono do diretrio (neste caso gleydson) tem a permisso para
listar arquivos do diretrio (r), gravar arquivos no diretrio (w) e entrar no diretrio
(x).
drwxr-x Estas 3 letras (da quinta a stima) so as permisses de acesso dos usurios
que pertencem ao grupo user. Os usurios que pertencem ao grupo user tem a
permisso somente para listar arquivos do diretrio (r) e entrar no diretrio (x)
exemplo.
Captulo 13. Permisses de acesso a arquivos e diretrios 173
drwxr-x Estes 3 simbolos (do oitavo ao dcimo) so as permisses de acesso para
usurios que no so donos do diretrio exemplo e que no pertencem ao grupo
user. Com as permisses acima, nenhum usurio que se encaixe nas condies de
dono e grupo do diretrio tem a permisso de acessa-lo.
gleydson Nome do dono do diretrio exemplo.
user Nome do grupo que diretrio exemplo pertence.
exemplo Nome do diretrio.
Para detalhes de como alterar o dono/grupo de um arquivo/diretrio, veja os comandos
chmod on page 175, chgrp on page 176 e chown on page 176.
OBSERVAES:
O usurio root no tem nenhuma restrio de acesso ao sistema.
Se voc tem permisses de gravao no diretrio e tentar apagar um arquivo que voc
no tem permisso de gravao, o sistema perguntar se voc conrma a excluso do
arquivo apesar do modo leitura. Caso voc tenha permisses de gravao no arquivo,
o arquivo ser apagado por padro sem mostrar nenhuma mensagem de erro (a no ser
que seja especicada a opo -i com o comando rm).
Por outro lado, mesmo que voc tenha permisses de gravao em um arquivo mas no
tenha permisses de gravao em um diretrio, a excluso do arquivo ser negada.
Isto mostra que levado mais em considerao a permisso de acesso do diretrio do que
as permisses dos arquivos e sub-diretrios que ele contm. Este ponto muitas vezes igno-
rado por muitas pessoas e expem seu sistema a riscos de segurana. Imagine o problema
que algum usurio que no tenha permisso de gravao em um arquivo mas que a tenha no
diretrio pode causar em um sistema mal administrado.
13.5 Permisses de Acesso Especiais
Em adio as trs permisses bsicas (rwx), existem permisses de acesso especiais (stX) que
afetam os arquivos e diretrios:
s - Quando usado na permisso de acesso do Dono, ajusta a identicao efetiva do
usurio do processo durante a execuo de um programa, tambm chamado de bit se-
tuid. No tem efeito em diretrios. Quando s usado na permisso de acesso do
Grupo, ajusta a identicao efetiva do grupo do processo durante a execuo de um
programa, chamado de bit setgid. identicado pela letra s no lugar da permisso de
execuo do grupo do arquivo/diretrio. Em diretrios, fora que os arquivos criados
dentro dele pertenam ao mesmo grupo do diretrio, ao invs do grupo primrio que
o usurio pertence. Ambos setgid e setuid podem aparecer ao mesmo tempo no mesmo
arquivo/diretrio. A permisso de acesso especial s somente pode aparecer no campo
Dono e Grupo.
S - Idntico a s. Signica que no existe a permisso x (execuo ou entrar no di-
retrio) naquela posio. Um exemplo o chmod 2760 em um diretrio.
t - Salva a imagem do texto do programa no dispositivo swap, assim ele ser carregado
mais rapidamente quando executado, tambm chamado de stick bit. Em diretrios, im-
pede que outros usurios removam arquivos dos quais no so donos. Isto chamado
de colocar o diretrio em modo append-only. Um exemplo de diretrio que se en-
Captulo 13. Permisses de acesso a arquivos e diretrios 174
caixa perfeitamente nesta condio o /tmp, todos os usurios devem ter acesso para
que seus programas possam criar os arquivos temporrios l, mas nenhum pode apagar
arquivos dos outros. A permisso especial t, pode ser especicada somente no campo
outros usurios das permisses de acesso.
T - Idntico a t. Signica que no existe a permisso x naquela posio (por exemplo,
em um chmod 1776 em um diretrio).
X - Se voc usar X ao invs de x, a permisso de execuo somente aplicada se o arquivo
j tiver permisses de execuo. Em diretrios ela tem o mesmo efeito que a permisso
de execuo x.
Exemplo da permisso de acesso especial X:
1 Crie um arquivo teste (digitando touch teste) e dena sua permisso para
rw-rw-r-- (chmod ug=rw,o=r teste ou chmod 664 teste).
2 Agora use o comando chmod a+X teste
3 digite ls -l
4 Veja que as permisses do arquivo no foram afetadas.
5 agora digite chmod o+x teste
6 digite ls -l, voc colocou a permisso de execuo para os outros usurios.
7 Agora use novamente o comando chmod a+X teste
8 digite ls -l
9 Veja que agora a permisso de execuo foi concedida a todos os usurios, pois foi
vericado que o arquivo era executvel (tinha permisso de execuo para outros
usurios).
10 Agora use o comando chmod a-X teste
11 Ele tambm funcionar e remover as permisses de execuo de todos os usurios,
porque o arquivo teste tem permisso de execuo (conra digitando ls -l).
12 Agora tente novamente o chmod a+X teste
13 Voc deve ter reparado que a permisso de acesso especial X semelhante a x, mas
somente faz efeito quanto o arquivo j tem permisso de execuo para o dono,
grupo ou outros usurios.
Em diretrios, a permisso de acesso especial X funciona da mesma forma que x, at
mesmo se o diretrio no tiver nenhuma permisso de acesso (x).
13.6 A conta root
Esta seo foi retirada do Manual de Instalao da Debian.
A conta root tambm chamada de super usurio, este um login que no possui restries
de segurana. A conta root somente deve ser usada para fazer a administrao do sistema, e
usada o menor tempo possvel.
Qualquer senha que criar dever conter de 6 a 8 caracteres (em sistemas usando crypto) ou
at frases inteiras (caso esteja usando MD5, que garante maior segurana), e tambm poder
conter letras maisculas e minsculas, e tambm caracteres de pontuao. Tenha um cuidado
especial quando escolher sua senha root, porque ela a conta mais poderosa. Evite palavras
de dicionrio ou o uso de qualquer outros dados pessoais que podem ser adivinhados.
Captulo 13. Permisses de acesso a arquivos e diretrios 175
Se qualquer um lhe pedir senha root, seja extremamente cuidadoso. Voc normalmente nunca
deve distribuir sua conta root, a no ser que esteja administrando um computador com mais
de um administrador do sistema.
Utilize uma conta de usurio normal ao invs da conta root para operar seu sistema. Porque
no usar a conta root? Bem, uma razo para evitar usar privilgios root por causa da facili-
dade de se cometer danos irreparveis como root. Outra razo que voc pode ser enganado
e rodar um programa Cavalo de Tria que um programa que obtm poderes do super usurio
para comprometer a segurana do seu sistema sem que voc saiba.
13.7 chmod
Muda a permisso de acesso a umarquivo ou diretrio. Comeste comando voc pode escolher
se usurio ou grupo ter permisses para ler, gravar, executar umarquivo ou arquivos. Sempre
que um arquivo criado, seu dono o usurio que o criou e seu grupo o grupo do usurio
(exceto para diretrios congurados com a permisso de grupo s, ser visto adiante).
chmod [opes] [permisses] [diretrio/arquivo]
Onde:
diretrio/arquivo Diretrio ou arquivo que ter sua permisso mudada.
opes
-v, verbose Mostra todos os arquivos que esto sendo processados.
-f, silent No mostra a maior parte das mensagens de erro.
-c, change Semelhante a opo -v, mas s mostra os arquivos que tiveram as permisses al-
teradas.
-R, recursive Muda permisses de acesso do diretrio/arquivo no diretrio atual e sub-
diretrios.
ugoa+-=rwxXst ugoa - Controla que nvel de acesso ser mudado. Especicam, em or-
dem, usurio (u), grupo (g), outros (o), todos (a).
+-= - + coloca a permisso, - retira a permisso do arquivo e = dene a permisso
exatamente como especicado.
rwx - r permisso de leitura do arquivo. w permisso de gravao. x permisso de
execuo (ou acesso a diretrios).
chmod no muda permisses de links simblicos, as permisses devem ser mudadas no ar-
quivo alvo do link. Tambm podem ser usados cdigos numricos octais para a mudana das
permisses de acesso a arquivos/diretrios. Para detalhes veja Modo de permisso octal on
page 177.
DICA: possvel copiar permisses de acesso do arquivo/diretrio, por exemplo, se o arquivo
teste.txt tiver a permisso de acesso r-xr----- e voc digitar chmod o=u, as permisses
de acesso dos outros usurios (o) sero idnticas ao do dono (u). Ento a nova permisso de
acesso do arquivo teste.txt ser r-xr--r-x
Exemplos de permisses de acesso:
chmod g+r
*
Permite que todos os usurios que pertenam ao grupo dos arquivos (g) ten-
ham (+) permisses de leitura (r) em todos os arquivos do diretrio atual.
Captulo 13. Permisses de acesso a arquivos e diretrios 176
chmod o-r teste.txt Retira (-) a permisso de leitura (r) do arquivo teste.txt para
os outros usurios (usurios que no so donos e no pertencem ao grupo do arquivo
teste.txt).
chmod uo+x teste.txt Inclui (+) a permisso de execuo do arquivo teste.txt para o
dono e outros usurios do arquivo.
chmod a+x teste.txt Inclui (+) a permisso de execuo do arquivo teste.txt para o
dono, grupo e outros usurios.
chmod a=rw teste.txt Dene a permisso de todos os usurios exatamente (=) para
leitura e gravao do arquivo teste.txt.
13.8 chgrp
Muda o grupo de um arquivo/diretrio.
chgrp [opes] [grupo] [arquivo/diretrio]
Onde:
grupo Novo grupo do arquivo/diretrio.
arquivo/diretrio Arquivo/diretrio que ter o grupo alterado.
opes
-c, changes Somente mostra os arquivos/grupos que forem alterados.
-f, silent No mostra mensagens de erro para arquivos/diretrios que no puderam ser al-
terados.
-v, verbose Mostra todas as mensagens e arquivos sendo modicados.
-R, recursive Altera os grupos de arquivos/sub-diretrios do diretrio atual.
13.9 chown
Muda dono de um arquivo/diretrio. Opcionalmente pode tambm ser usado para mudar o
grupo.
chown [opes] [dono.grupo] [diretrio/arquivo]
onde:
dono.grupo Nome do dono.grupo que ser atribudo ao diretrio/arquivo. O grupo opcional.
diretrio/arquivo Diretrio/arquivo que o dono.grupo ser modicado.
opes
-v, verbose Mostra os arquivos enquanto so alterados.
-f, supress No mostra mensagens de erro durante a execuo do programa.
-c, changes Mostra somente arquivos que forem alterados.
-R, recursive Altera dono e grupo de arquivos no diretrio atual e sub-diretrios.
O dono.grupo pode ser especicado usando o nome de grupo ou o cdigo numrico correspon-
dente ao grupo (GID).
Voc deve ter permisses de gravao no diretrio/arquivo para alterar seu dono/grupo.
Captulo 13. Permisses de acesso a arquivos e diretrios 177
chown gleydson teste.txt - Muda o dono do arquivo teste.txt para
gleydson.
chown gleydson.foca teste.txt - Muda o dono do arquivo teste.txt para
gleydson e seu grupo para foca.
chown -R gleydson.focalinux
*
- Muda o dono/grupo dos arquivos do diretrio
atual e sub-diretrios para gleydson/focalinux (desde que voc tenha permisses de
gravao no diretrios e sub-diretrios).
13.10 Modo de permisso octal
Ao invs de utilizar os modos de permisso +r, -r, etc, pode ser usado o modo octal para se
alterar a permisso de acesso a umarquivo. Omodo octal umconjunto de oito nmeros onde
cada nmero dene um tipo de acesso diferente.
mais exvel gerenciar permisses de acesso usando o modo octal ao invs do comum, pois
voc especica diretamente a permisso do dono, grupo, outros ao invs de gerenciar as per-
misses de cada um separadamente. Abaixo a lista de permisses de acesso octal:
0 - Nenhuma permisso de acesso. Equivalente a -rwx.
1 - Permisso de execuo (x).
2 - Permisso de gravao (w).
3 - Permisso de gravao e execuo (wx). Equivalente a permisso 2+1
4 - Permisso de leitura (r).
5 - Permisso de leitura e execuo (rx). Equivalente a permisso 4+1
6 - Permisso de leitura e gravao (rw). Equivalente a permisso 4+2
7 - Permisso de leitura, gravao e execuo. Equivalente a +rwx (4+2+1).
Ouso de umdeste nmeros dene a permisso de acesso do dono, grupo ou outros usurios. Um
modo fcil de entender como as permisses de acesso octais funcionam, atravs da seguinte
tabela:
1 = Executar
2 = Gravar
4 = Ler
*
Para Dono e Grupo, multiplique as permisses acima por x100 e x10.
e para as permisses de acesso especiais:
1000 = Salva imagem do texto no dispositivo de troca
2000 = Ajusta o bit setgid na execuo
4000 = Ajusta o bit setuid na execuo
Basta agora fazer o seguinte:
Somente permisso de execuo, use 1.
Somente a permisso de leitura, use 4.
Captulo 13. Permisses de acesso a arquivos e diretrios 178
Somente permisso de gravao, use 2.
Permisso de leitura/gravao, use 6 (equivale a 2+4 / Gravar+Ler).
Permisso de leitura/execuo, use 5 (equivale a 1+4 / Executar+Ler).
Permisso de execuo/gravao, use 3 (equivale a 1+2 / Executar+Gravar).
Permisso de leitura/gravao/execuo, use 7 (equivale a 1+2+4 / Execu-
tar+Gravar+Ler).
Salvar texto no dispositivo de troca, use 1000.
Ajustar bit setgid, use 2000.
Ajustar bip setuid, use 4000.
Salvar texto e ajustar bit setuid, use 5000 (equivale a 1000+4000 / Salvar texto + bit se-
tuid).
Ajustar bit setuid e setgid, use 6000 (equivale a 4000+2000 / setuid + setgid).
Vamos a prtica com alguns exemplos:
"chmod 764 teste"
Os nmeros so interpretados da direita para a esquerda como permisso de acesso aos outros
usurios (4), grupo (6), e dono (7). O exemplo acima faz os outros usurios (4) terem acesso so-
mente leitura (r) ao arquivo teste, o grupo (6) ter a permisso de leitura e gravao (w), e o
dono (7) ter permisso de leitura, gravao e execuo (rwx) ao arquivo teste.
Outro exemplo:
"chmod 40 teste"
O exemplo acima dene a permisso de acesso dos outros usurios (0) como nenhuma, e dene
a permisso de acesso do grupo (4) como somente leitura (r). Note usei somente dois nmeros e
ento a permisso de acesso do dono do arquivo no modicada (leia as permisses de acesso
da direita para a esquerda!). Para detalhes veja a lista de permisses de acesso em modo octal
no inicio desta seo.
"chmod 751 teste"
O exemplo acima dene a permisso de acesso dos outros usurios (1) para somente execuo
(x), o acesso do grupo (5) como leitura e execuo (rx) e o acesso do dono (7) como leitura,
gravao e execuo (rwx).
"chmod 4751 teste"
O exemplo acima dene a permisso de acesso dos outros usurios (1) para somente execuo
(x), acesso do grupo (5) como leitura e execuo (rx), o acesso do dono (7) como leitura, gravao
e execuo (rwx) e ajusta o bit setgid (4) para o arquivo teste.
Captulo 13. Permisses de acesso a arquivos e diretrios 179
13.11 umask
A umask (user mask) so 3 nmeros que denem as permisses iniciais do dono, grupo e
outros usurios que o arquivo/diretrio receber quando for criado ou copiado para um
novo local. Digite umask sem parmetros para retornar o valor de sua umask atual.
A umask tem efeitos diferentes caso o arquivo que estiver sendo criado for binrio (um pro-
grama executvel) ou texto (Arquivo texto e binrio on page 25) . Veja a tabela a seguir para
ver qual a mais adequada a sua situao:
---------------------------------------------
| | ARQUIVO | DIRETRIO |
| UMASK |----------------------| |
| | Binrio | Texto | |
|------------------------------|------------|
| 0 | r-x | rw- | rwx |
| 1 | r-- | rw- | rw- |
| 2 | r-x | r-- | r-x |
| 3 | r-- | r-- | r-- |
| 4 | --x | -w- | -wx |
| 5 | --- | -w- | -w- |
| 6 | --x | --- | --x |
| 7 | --- | --- | --- |
---------------------------------------------
Um arquivo texto criado com o comando umask 012;touch texto.txt receber as per-
misses -rw-rw-r--, pois 0 (dono) ter permisses rw-, 1 (grupo), ter permisses rw-
e 2 (outros usurios) tero permisses r--. Um arquivo binrio copiado com o comando
umask 012;cp /bin/ls /tmp/ls receber as permisses -r-xr--r-x (conra com a
tabela acima).
Por este motivo preciso ateno antes de escolher a umask, um valor mal escolhido poderia
causar problemas de acesso a arquivos, diretrios ou programas no sendo executados. O
valor padro da umask na maioria das distribuies atuais 022. A umask padro no sistema
Debian a 022 .
A umask de grande utilidade para programas que criam arquivos/diretrios temporrios,
desta forma pode-se bloquear o acesso de outros usurios desde a criao do arquivo, evitando
recorrer ao chmod.
Captulo 13. Permisses de acesso a arquivos e diretrios 180
181
Captulo 14
Redirecionamentos e Pipe
Esta seo explica o funcionamento dos recursos de direcionamento de entrada e sada do
sistema GNU/Linux.
14.1 >
Redireciona a sada padro de um programa/comando/script para algum dispositivo ou ar-
quivo ao invs do dispositivo de sada padro (tela). Quando usado com arquivos, este
redirecionamento cria ou substitui o contedo do arquivo.
Por exemplo, voc pode usar o comando ls para listar arquivos e usar ls >listagem para
enviar a sada do comando para o arquivo listagem. Use o comando cat para visualizar o
contedo do arquivo listagem.
O mesmo comando pode ser redirecionado para o segundo console /dev/tty2 usando: ls
>/dev/tty2, o resultado do comando ls ser mostrado no segundo console (pressione ALT
e F2 para mudar para o segundo console e ALT e F1 para retornar ao primeiro). O mesmo
resultado pode ser obtido com o comando ls 1>/dev/tty2, sendo que o nmero 1 indica
que ser capturada a sada padro do comando.
Para redirecionar somente a sada de erros do comando ls, use a sintaxe: ls
2>/tmp/erros-do-ls
14.2 >>
Redireciona a sada padro de um programa/comando/script para algum dispositivo ou adi-
ciona as linhas ao nal de arquivo ao invs do dispositivo de sada padro (tela). A diferena
entre este redirecionamento duplo e o simples, se caso for usado com arquivos, adiciona a
sada do comando ao nal do arquivo existente ao invs de substituir seu contedo. .
Captulo 14. Redirecionamentos e Pipe 182
Por exemplo, voc pode acrescentar a sada do comando ls ao arquivo listagem do cap-
tulo anterior usando ls / >>listagem. Use o comando cat para visualizar o contedo do
arquivo listagem.
14.3 <
Direciona a entrada padro de arquivo/dispositivo para um comando. Este comando faz o
contrrio do anterior, ele envia dados ao comando.
Voc pode usar o comando cat <teste.txt para enviar o contedo do arquivo teste.txt
ao comando cat que mostrar seu contedo ( claro que o mesmo resultado pode ser obtido
com cat teste.txt mas este exemplo serviu para mostrar a funcionalidade do <).
14.4 <<
Este redirecionamento serve principalmente para marcar o m de exibio de um bloco. Este
especialmente usado em conjunto com o comando cat, mas tambm tem outras aplicaes.
Por exemplo:
cat << final
este arquivo
ser mostrado
at que a palavra final seja
localizada no inicio da linha
final
14.5 | (pipe)
Envia a sada de um comando para a entrada do prximo comando para continuidade do
processamento. Os dados enviados so processados pelo prximo comando que mostrar o
resultado do processamento.
Por exemplo: ls -la | more, este comando faz a listagem longa de arquivos que enviado
ao comando more (que tem a funo de efetuar uma pausa a cada 25 linhas do arquivo).
Outro exemplo o comando locate find | grep bin/, neste comando todos os cam-
inhos/arquivos que contm nd na listagem sero mostrados (inclusive man pages, bibliote-
cas, etc.), ento enviamos a sada deste comando para grep bin/ para mostrar somente
os diretrios que contm binrios. Mesmo assim a listagem ocupe mais de uma tela, podemos
acrescentar o more: locate find | grep bin/ | more.
Podem ser usados mais de um comando de redirecionamento (<, >, |) em um mesmo co-
mando.
Captulo 14. Redirecionamentos e Pipe 183
14.6 Diferena entre o | e o >
Aprincipal diferena entre o | e o >, que o Pipe envolve processamento entre comandos,
ou seja, a sada de um comando enviado a entrada do prximo e o > redireciona a sada de
um comando para um arquivo/dispositivo.
Voc pode notar pelo exemplo acima (ls -la | more) que ambos ls e more so comandos
porque esto separados por um |. Se um deles no existir ou estiver digitado incorreta-
mente, ser mostrada uma mensagem de erro.
Um resultado diferente seria obtido usando um > no lugar do |; A sada do comando ls
-la > more seria gravada em um arquivo chamado more.
14.7 tee
Envia ao mesmo tempo o resultado do programa para a sada padro (tela) e para um arquivo.
Este comando deve ser usado com o pipe |.
comando |tee [arquivo]
Exemplo: ls -la | tee listagem.txt, a sada do comando ser mostrada normalmente
na tela e ao mesmo tempo gravada no arquivo listagem.txt.
Captulo 14. Redirecionamentos e Pipe 184
185
Captulo 15
Rede
Este captulo descreve o que uma rede, os principais dispositivos de rede no GNU/Linux,
a identicao de cada um, como congurar os dispositivos, escolha de endereos IP, rotea-
mento.
Parte deste captulo, uns 70% pelo menos, baseado no documento NET3-4-HOWTO. (seria
perda de tempo reescrever este assunto pois existe um material desta qualidade j disponvel).
15.1 O que uma rede
Rede a conexo de duas ou mais mquinas com o objetivo de compartilhar recursos entre
uma mquina e outra. Os recursos podem ser:
Compartilhamento do contedo de seu disco rgido (ou parte dele) com outros usurios.
Os outros usurios podero acessar o disco como se estivesse instalado na prpria
mquina). Tambm chamado de servidor de arquivos.
Compartilhamento de uma impressora com outros usurios. Os outros usurios podero
enviar seus trabalhos para uma impressora da rede. Tambm chamado de servidor de
impresso.
Compartilhamento de acesso a Internet. Outros usurios podero navegar na Internet,
pegar seus e-mails, ler noticias, bate-papo no IRC, ICQ atravs do servidor de acesso
Internet. Tambm chamado de servidor Proxy.
Servidor de Internet/Intranet. Outros usurios podero navegar nas pginas Internet
localizadas em seu computador, pegar e-mails, usar um servidor de IRC para chat na
rede, servidor de ICQ, etc
Comos tens acima funcionando possvel criar permisses de acesso da rede, denindo quem
ter ou no permisso para acessar cada compartilhamento ou servio existente na mquina
(www, ftp, irc, icq, etc), e registrando/avisando sobre eventuais tentativas de violar a segu-
rana do sistema, rewalls, pontes, etc.
Entre outras ilimitadas possibilidades que dependem do conhecimento do indivduo no am-
biente GNU/Linux, j que ele permite muita exibilidade para fazer qualquer coisa funcionar
em rede.
Captulo 15. Rede 186
A comunicao entre computadores em uma rede feita atravs do Protocolo de Rede.
15.2 Protocolo de Rede
O protocolo de rede a linguagem usada para a comunicao entre um computador e outro.
Existemvrios tipos de protocolos usados para a comunicao de dados, alguns so projetados
para pequenas redes (como o caso do NetBios) outros para redes mundiais (TCP/IP que
possui caractersticas de roteamento).
Dentre os protocolos, o que mais se destaca atualmente o TCP/IP devido ao seu projeto,
velocidade e capacidade de roteamento.
15.3 Endereo IP
O endereo IP so nmeros que identicam seu computador em uma rede. Inicialmente voc
pode imaginar o IP como um nmero de telefone. O IP compostos por quatro bytes e a
conveno de escrita dos nmeros chamada de notao decimal pontuada. Por conveno,
cada interface (placa usada p/ rede) do computador ou roteador tem um endereo IP. Tambm
permitido que o mesmo endereo IP seja usado em mais de uma interface de uma mesma
mquina mas normalmente cada interface tem seu prprio endereo IP.
As Redes do Protocolo Internet so seqncias contnuas de endereos IPs. Todos os endereos
dentro da rede tem um nmero de dgitos dentro dos endereos em comum. A poro dos en-
dereos que so comuns entre todos os endereos de uma rede so chamados de poro da rede.
Os dgitos restantes so chamados de poro dos hosts. Onmero de bits que so compartilhados
por todos os endereos dentro da rede so chamados de netmask (mscara da rede) e o papel
da netmask determinar quais endereos pertencem ou no a rede. Por exemplo, considere o
seguinte:
----------------- ---------------
Endereo do Host 192.168.110.23
Mscara da Rede 255.255.255.0
Poro da Rede 192.168.110.
Poro do Host .23
----------------- ---------------
Endereo da Rede 192.168.110.0
Endereo Broadcast 192.168.110.255
----------------- ---------------
Qualquer endereo que nalizado em zero em sua netmask, revelar o endereo da rede que
pertence. O endereo e rede ento sempre o menor endereo numrico dentro da escalas de
endereos da rede e sempre possui a poro host dos endereos codicada como zeros.
Captulo 15. Rede 187
O endereo de broadcast um endereo especial que cada computador em uma rede escuta
em adio a seu prprio endereo. Este um endereo onde os datagramas enviados so
recebidos por todos os computadores da rede. Certos tipos de dados como informaes de
roteamento e mensagens de alerta so transmitidos para o endereo broadcast, assim todo com-
putador na rede pode recebe-las simultaneamente.
Existe dois padres normalmente usados para especicar o endereo de broadcast. O mais am-
plamente aceito para usar o endereo mais alto da rede como endereo broadcast. No
exemplo acima este seria 192.168.110.255. Por algumas razes outros sites tem adotado a con-
veno de usar o endereo de rede como o endereo broadcast. Na prtica no importa
muito se usar este endereo, mas voc deve ter certeza que todo computador na rede esteja
congurado para escutar o mesmo endereo broadcast.
15.3.1 Classes de Rede IP
Por razes administrativas aps algum pouco tempo no desenvolvimento do protocolo IP al-
guns grupos arbitrrios de endereos foram formados em redes e estas redes foram agrupadas
no que foram chamadas de classes. Estas classes armazenam um tamanho padro de redes que
podem ser usadas. As faixas alocadas so:
+--------------------------------------------------------+
| Classe | Mscara de | Endereo da Rede |
| | Rede | |
+--------------------------------------------------------+
| A | 255.0.0.0 | 0.0.0.0 - 127.255.255.255 |
| B | 255.255.0.0 | 128.0.0.0 - 191.255.255.255 |
| C | 255.255.255.0 | 192.0.0.0 - 223.255.255.255 |
|Multicast| 240.0.0.0 | 224.0.0.0 - 239.255.255.255 |
+--------------------------------------------------------+
O tipo de endereo que voc deve utilizar depende exatamente do que estiver fazendo.
15.3.2 Para instalar uma mquina usando o Linux em uma rede existente
Se voc quiser instalar uma mquina GNU/Linux em uma rede TCP/IP existente ento voc
deve contactar qualquer um dos administradores da sua rede e perguntar o seguinte:
Endereo IP de sua mquina
Endereo IP da rede
Endereo IP de broadcast
Mscara da Rede IP
Endereo do Roteador
Endereo do Servidor de Nomes (DNS)
Voc deve ento congurar seu dispositivo de rede GNU/Linux com estes detalhes. Voc no
pode simplesmente escolhe-los e esperar que sua congurao funcione.
Captulo 15. Rede 188
15.3.3 Endereos reservados para uso em uma rede Privada
Se voc estiver construindo uma rede privada que nunca ser conectada a Internet, ento voc
pode escolher qualquer endereo que quiser. No entanto, para sua segurana e padronizao,
existem alguns endereos IPs que foram reservados especicamente para este propsito. Eles
esto especicados no RFC1597 e so os seguintes:
+---------------------------------------------------------+
| ENDEREOS RESERVADOS PARA REDES PRIVADAS |
+---------------------------------------------------------+
| Classe | Mscara de | Endereo da Rede |
| de Rede | Rede | |
+---------+---------------+-------------------------------+
| A | 255.0.0.0 | 10.0.0.0 - 10.255.255.255 |
| B | 255.255.0.0 | 172.16.0.0 - 172.31.255.255 |
| C | 255.255.255.0 | 192.168.0.0 - 192.168.255.255 |
+---------------------------------------------------------+
Voc deve decidir primeiro qual ser a largura de sua rede e ento escolher a classe de rede
que ser usada.
15.4 Interface de rede
As interfaces de rede no GNU/Linux esto localizadas no diretrio /dev e a maioria criada
dinamicamente pelos softwares quando so requisitadas. Este o caso das interfaces ppp e
plip que so criadas dinamicamente pelos softwares.
Abaixo a identicao de algumas interfaces de rede no Linux (a ? signica um nmero que
identica as interfaces seqencialmente, iniciando em 0):
eth? - Placa de rede Ethernet e WaveLan.
ppp? - Interface de rede PPP (protocolo ponto a ponto).
slip? - Interface de rede serial
eql - Balanceador de trfego para mltiplas linhas
plip? - Interface de porta paralela
arc?e,arc?s - Interfaces Arcnet
sl?,ax? - Interfaces de rede AX25 (respectivamente para kernels 2.0.xx e 2.2.xx.
fddi? - Interfaces de rede FDDI.
dlci??,sdla? - Interfaces Frame Relay, respectivamente para para dispositivos de
encapsulamento DLCI e FRAD.
nr? - Interface Net Rom
rs? - Interfaces Rose
st? - Interfaces Strip (Starmode Radio IP)
tr? - Token Ring
Para maiores detalhes sobre as interfaces acima, consulte o documento NET3-4-HOWTO.
Captulo 15. Rede 189
15.4.1 A interface loopback
A interface loopback um tipo especial de interface que permite fazer conexes com voc
mesmo. Todos os computadores que usam o protocolo TCP/IP utilizam esta interface e ex-
istem vrias razes porque precisa fazer isto, por exemplo, voc pode testar vrios programas
de rede sem interferir com ningum em sua rede. Por conveno, o endereo IP 127.0.0.1 foi
escolhido especicamente para a loopback, assim se abrir uma conexo telnet para 127.0.0.1,
abrir uma conexo para o prprio computador local.
A congurao da interface loopback simples e voc deve ter certeza que fez isto (mas note
que esta tarefa normalmente feita pelos scripts padres de inicializao existentes em sua
distribuio).
ifconfig lo 127.0.0.1
Caso a interface loopback no esteja congurada, voc poder ter problemas quando tentar
qualquer tipo de conexo comas interfaces locais, tendo problemas at mesmo como comando
ping.
15.4.2 Atribuindo um endereo de rede a uma interface (ifcong)
Aps congurada sicamente, a interface precisa receber um endereo IP para ser identicada
na rede e se comunicar comoutros computadores, almde outros parmetros como o endereo
de broadcast e a mscara de rede. O comando usado para fazer isso o ifconfig (interface
congure).
Para congurar a interface de rede Ethernet (eth0) com o endereo 192.168.1.1, mscara de
rede 255.255.255.0, podemos usar o comando:
ifconfig eth0 192.168.1.1 netmask 255.255.255.0 up
O comando acima ativa a interface de rede. A palavra up pode ser omitida, pois a ativao
da interface de rede o padro. Para desativar a mesma interface de rede, basta usar usar o
comando:
ifconfig eth0 down
Digitando ifconfig so mostradas todas as interfaces ativas no momento, pacotes enviados,
recebidos e colises de datagramas. Para mostrar a congurao somente da interface eth0,
use o comando: ifconfig eth0 Em sistemas Debian, o arquivo correto para especicar
os dados das interfaces o /etc/network/interfaces (veja Arquivo /etc/network
/interfaces on page 300).
Para mais detalhes, veja a pgina de manual do ifconfig ou o NET3-4-HOWTO.
Captulo 15. Rede 190
15.5 Roteamento
Roteamento quando uma mquina com mltiplas conexes de rede decide onde entregar os
pacotes IP que recebeu, para que cheguem ao seu destino.
Pode ser til ilustrar isto com um exemplo. Imagine um simples roteador de escritrio, ele
pode ter um link intermitente com a Internet, um nmero de segmentos ethernet alimen-
tando as estaes de trabalho e outro link PPP intermitente fora de outro escritrio. Quando
o roteador recebe um datagrama de qualquer de suas conexes de rede, o mecanismo que usa
determina qual a prxima interface deve enviar o datagrama. Computadores simples tambm
precisam rotear, todos os computadores na Internet tem dois dispositivos de rede, um a in-
terface loopback (explicada acima) o outro um usado para falar com o resto da rede, talvez
uma ethernet, talvez uma interface serial PPP ou SLIP.
OK, viu como o roteamento funciona? cada computador mantm uma lista de regras especiais
de roteamento, chamada tabela de roteamento. Esta tabela contm colunas que tipicamente con-
tm no mnimo trs campos, o primeiro o endereo de destino, o segundo o nome da interface
que o datagrama deve ser roteado e o terceiro opcionalmente o endereo IP da outra mquina
que levar o datagrama em seu prximo passo atravs da rede. No GNU/Linux voc pode ver
a tabela de roteamento usando um dos seguintes comandos:
cat /proc/net/route
route -n
netstat -r
Oprocesso de roteamento muito simples: umdatagrama (pacote IP) recebido, o endereo de
destino (para quem ele ) examinado e comparado com cada item da tabela de roteamento.
O item que mais corresponder com o endereo selecionado e o datagrama direcionado a
interface especicada.
Se o campo gateway estiver preenchido, ento o datagrama direcionado para aquele com-
putador pela interface especicada, caso contrrio o endereo de destino assumido sendo
uma rede suportada pela interface.
15.5.1 Congurando uma rota no Linux
A congurao da rota feita atravs da ferramenta route. Para adicionar uma rota para a
rede 192.168.1.0 acessvel atravs da interface eth0 basta digitar o comando:
route add -net 192.168.1.0 eth0
Para apagar a rota acima da tabela de roteamento, basta substituir a palavra add por del. A
palavra net quer dizer que 192.168.1.0 um endereo de rede (lembra-se das explicaes em
Endereo IP on page 186?)) para especicar uma mquina de destino, basta usar a palavra
-host. Endereos de mquina de destino so muito usadas em conexes de rede apenas entre
Captulo 15. Rede 191
dois pontos (como ppp, plip, slip). Por padro, a interface especicada como ltimo argu-
mento. Caso a interface precise especica-la em outro lugar, ela dever ser precedida da opo
-dev.
Para adicionar uma rota padro para um endereo que no se encontre na tabela de rotea-
mento, utiliza-se o gateway padro da rede. Atravs do gateway padro possvel especicar um
computador (normalmente outro gateway) que os pacotes de rede sero enviados caso o en-
dereo no conra com os da tabela de roteamento. Para especicar o computador 192.168.1.1
como gateway padro usamos:
route add default gw 192.168.1.1 eth0
O gateway padro pode ser visualizado atravs do comando route -n e vericando o campo
gateway. A opo gw acima, especica que o prximo argumento um endereo IP (de uma
rede j acessvel atravs das tabelas de roteamento).
O computador gateway est conectado a duas ou mais redes ao mesmo tempo. Quando seus
dados precisam ser enviados para computadores fora da rede, eles so enviados atravs do
computador gateway e o gateway os encaminham ao endereo de destino. Desta forma, a re-
sposta do servidor tambm enviada atravs do gateway para seu computador ( o caso de
uma tpica conexo com a Internet).
A nossa congurao caria assim:
route add -net 192.168.1.0 eth0
route add default gw 192.168.1.1 eth0
Para mais detalhes, veja a pgina de manual do route ou o NET3-4-HOWTO.
15.6 Resolvedor de nomes (DNS)
DNS signica Domain Name System (sistema de nomes de domnio). O DNS converte os
nomes de mquinas para endereos IPs que todas as mquinas da Internet possuem. Ele faz
o mapeamento do nome para o endereo e do endereo para o nome e algumas outras coisas.
Um mapeamento simplesmente uma associao entre duas coisas, neste caso um nome de
computador, como www.cipsga.org.br, e o endereo IP desta mquina (ou endereos) como
200.245.157.9.
O DNS foi criado com o objetivo de tornar as coisas mais fceis para o usurio, permitindo
assim, a identicao de computadores na Internet ou redes locais atravs de nomes ( como
se tivssemos apenas que decorar o nome da pessoa ao invs de um nmero de telefone).
A parte responsvel por traduzir os nomes como www.nome.com.br em um endereo IP
chamada de resolvedor de nomes.
O resolvedor de nomes pode ser um banco de dados local (controlador por um arquivo ou pro-
grama) que converte automaticamente os nomes em endereos IP ou atravs de servidores DNS
Captulo 15. Rede 192
que fazema busca emumbanco de dados na Internet e retornamo endereo IP do computador
desejado. Um servidor DNS mais difundido na Internet o bind.
Atravs do DNS necessrio apenas decorar o endereo sem precisar se preocupar com o
endereo IP (alguns usurios simplesmente no sabem que isto existe. . . ). Se desejar mais
detalhes sobre DNS, veja o documento DNS-HOWTO.
15.6.1 O que um nome?
Voc deve estar acostumado com o uso dos nomes de computadores na Internet, mas pode
no entender como eles so organizados. Os nomes de domnio na Internet so uma estrutura
hierrquica, ou seja, eles tem uma estrutura semelhante aos diretrios de seu sistema.
Um domnio uma famlia ou grupo de nomes. Um domnio pode ser colocado em um sub-
domnio. Um domnio principal um domnio que no um sub-domnio. Os domnios princi-
pais so especicados na RFC-920. Alguns exemplos de domnios principais comuns so:
COM - Organizaes Comerciais
EDU - Organizaes Educacionais
GOV - Organizaes Governamentais
MIL - Organizaes Militares
ORG - Outras Organizaes
NET - Organizaes relacionadas com a Internet
Identificador do Pas - So duas letras que representam um pas em particular.
Cada um dos domnios principais tem sub-domnios. Os domnios principais baseados no
nome do pas so freqentemente divididos em sub-domnios baseado nos domnios .com,
.edu, .gov, .mil e .org. Assim, por exemplo, voc pode naliza-lo com: com.au e gov.au
para organizaes comerciais e governamentais na Austrlia; note que isto no uma re-
gra geral, as organizaes de domnio atuais dependem da autoridade na escolha de nomes
de cada domnio. Quando o endereo no especica o domnio principal, como o endereo
www.unicamp.br, isto quer dizer que uma organizao acadmica.
O prximo nvel da diviso representa o nome da organizao. Subdomnios futuros variam
em natureza, freqentemente o prximo nvel do sub-domnio baseado na estrutura depar-
tamental da organizao mas ela pode ser baseada em qualquer critrio considerado razovel
e signicantes pelos administradores de rede para a organizao.
A poro mais a esquerda do nome sempre o nome nico da mquina chamado hostname,
a poro do nome a direita do hostname chamado nome de domnio e o nome completo
chamado nome do domnio completamente qualicado (Fully Qualied Domain Name).
Usando o computador www.debian.org.br como exemplo:
br - Pas onde o computador se encontra
org - Domnio principal
debian - Nome de Domnio
www - Nome do computador
A localizao do computador www.debian.org.br atravs de servidores DNS na Inter-
net obedece exatamente a seqncia de procura acima. Os administradores do domnio
Captulo 15. Rede 193
debian.org.br podem cadastrar quantos sub-domnios e computadores quiserem (como
www.non-us.debian.org.br ou cvs.debian.org.br).
15.6.2 Arquivos de congurao usados na resoluo de nomes
Abaixo a descrio dos arquivos usados no processo de resolver um nome no sistema
GNU/Linux.
/etc/resolv.conf
O /etc/resolv.conf o arquivo de congurao principal do cdigo do resolvedor de
nomes. Seu formato um arquivo texto simples com um parmetro por linha e o endereo
de servidores DNS externos so especicados nele. Existem trs palavras chaves normalmente
usadas que so:
domain Especica o nome do domnio local.
search Especica uma lista de nomes de domnio alternativos ao procurar por um computa-
dor, separados por espaos. A linha search pode conter no mximo 6 domnios ou 256
caracteres.
nameserver Especica o endereo IP de um servidor de nomes de domnio para resoluo de
nomes. Pode ser usado vrias vezes.
Como exemplo, o /etc/resolv.conf se parece com isto:
domain maths.wu.edu.au
search maths.wu.edu.au wu.edu.au
nameserver 192.168.10.1
nameserver 192.168.12.1
Este exemplo especica que o nome de domnio a adicionar ao nome no qualicado (i.e.
hostnames sem o domnio) maths.wu.edu.au e que se o computador no for encontrado
naquele domnio ento a procura segue para o domnio wu.edu.au diretamente. Duas linhas
de nomes de servidores foram especicadas, cada uma pode ser chamada pelo cdigo resolve-
dor de nomes para resolver o nome.
/etc/host.conf
O arquivo /etc/host.conf o local onde possvel congurar alguns tens que gerenciam
o cdigo do resolvedor de nomes. O formato deste arquivo descrito em detalhes na pgina
de manual resolv+. Em quase todas as situaes, o exemplo seguinte funcionar:
order hosts,bind
multi on
Captulo 15. Rede 194
Este arquivo de congurao diz ao resolvedor de nomes para checar o arquivo /etc/hosts
(parmetro hosts) antes de tentar vericar um servidor de nomes (parmetro bind) e retornar
um endereo IP vlido para o computador procurado e multi on retornar todos os endereos
IP resolvidos no arquivo /etc/hosts ao invs do primeiro.
Os seguintes parmetros podem ser adicionados para evitar ataques de IP spoong:
nospoof on
spoofalert on
O parmetro nospoof on ativa a resoluo reversa do nome da biblioteca resolv (para checar se
o endereo pertence realmente quele nome) e o spoofalert on registra falhas desta operao no
syslog.
/etc/hosts
O arquivo /etc/hosts faz o relacionamento entre um nome de computador e endereo IP lo-
cal. Recomendado para IPs constantemente acessados e para colocao de endereos de virtual
hosts (quando deseja referir pelo nome ao invs de IP). A incluso de um computador neste
arquivo dispenda a consulta de umservidor de nomes para obter umendereo IP, sendo muito
til para mquinas que so acessadas frequentemente. A desvantagem de fazer isto que voc
mesmo precisar manter este arquivo atualizado e se o endereo IP de algum computador for
modicado, esta alterao dever ser feita em cada um dos arquivos hosts das mquinas da
rede. Em um sistema bem gerenciado, os nicos endereos de computadores que aparecero
neste arquivo sero da interface loopback e os nomes de computadores.
# /etc/hosts
127.0.0.1 localhost loopback
192.168.0.1 maquina.dominio.com.br
Voc pode especicar mais que um nome de computador por linha como demonstrada pela
primeira linha, a que identica a interface loopback. Certique-se de que a entrada do nome
de domnio neste arquivo aponta para a interface de rede e no para a interface loopback, ou
ter problema com o comportamento de alguns servios.
OBS: Caso encontre problemas de lentido para resolver nomes e at para executar os aplica-
tivos (como o mc, etc), verique se existem erros neste arquivo de congurao.
Estes sintomas se confundem com erros de memria ou outro erro qualquer de congurao
de hardware, e somem quando a interface de rede desativada (a com o IP no loopback). Isto
causados somente pela m congurao do arquivo /etc/hosts. O bom funcionamento
do Unix depende da boa ateno do administrador de sistemas para congurar os detalhes de
seu servidor.
Captulo 15. Rede 195
/etc/networks
O arquivo /etc/networks tem uma funo similar ao arquivo /etc/hosts. Ele contm um
banco de dados simples de nomes de redes contra endereos de redes. Seu formato se difere
por dois campos por linha e seus campos so identicados como:
Nome_da_Rede Endereo_da_Rede
Abaixo um exemplo de como se parece este arquivo:
loopnet 127.0.0.0
localnet 192.168.1.0
amprnet 44.0.0.0
Quando usar comandos como route, se um destino uma rede e esta rede se encontra no
arquivo /etc/networks, ento o comando route mostrar o nome da rede ao invs de seu
endereo.
15.6.3 Executando um servidor de nomes
Se voc planeja executar um servidor de nomes, voc pode fazer isto facilmente. Por favor veja
o documento DNS-HOWTO e quaisquer documentos includos emsua verso do BIND(Berkeley
Internet Name Domain).
15.7 Servios de Rede
Servios de rede o que est disponvel para ser acessado pelo usurio. No TCP/IP, cada servio
associado a um nmero chamado porta que onde o servidor espera pelas conexes dos
computadores clientes. Uma porta de rede pode se referenciada tanto pelo nmero como pelo
nome do servio.
Abaixo, alguns exemplos de portas padres usadas em servios TCP/IP:
21 - FTP (transferncia de arquivos)
23 - Telnet (terminal virtual remoto)
25 - Smtp (envio de e-mails)
53 - DNS (resolvedor de nomes)
79 - Finger (detalhes sobre usurios do sistema)
80 - http (protocolo www - transferncia de pginas Internet)
110 - Pop-3 (recebimento de mensagens)
119 - NNTP (usado por programas de noticias)
O arquivo padro responsvel pelo mapeamento do nome dos servios e das portas mais uti-
lizadas o /etc/services (para detalhes sobre o seu formato, veja a /etc/services on
page 204).
Captulo 15. Rede 196
15.7.1 Servios iniciados como Daemons de rede
Servios de rede iniciados como daemons camresidente o tempo todo na memria esperando
que algum se conecte (tambm chamado de modo standalone). Um exemplo de daemon o
servidor proxy squid e o servidor web Apache operando no modo daemon.
Alguns programas servidores oferecem a opo de serem executados como daemons ou atravs
do inetd. recomendvel escolher daemon se o servio for solicitado freqentemente (como o
caso dos servidores web ou proxy).
Para vericar se um programa est rodando como daemon, basta digitar ps ax e procurar o
nome do programa, em caso positivo ele um daemon.
Normalmente os programas que so iniciados como daemons possuem seus prprios recursos
de segurana/autenticao para decidir quem tem ou no permisso de se conectar.
15.7.2 Servios iniciados atravs do inetd
Servios iniciados pelo inetd so carregados para a memria somente quando so solicitados.
O controle de quais servios podem ser carregados e seus parmetros, so feitos atravs do
arquivo /etc/inetd.conf.
Um daemon chamado inetd l as conguraes deste arquivo e permanece residente na
memria, esperando pela conexo dos clientes. Quando uma conexo solicitada, o
daemon inetd verica as permisses de acesso nos arquivos /etc/hosts.allow e /etc
/hosts.deny e carrega o programa servidor correspondente no arquivo /etc/inetd.conf.
Um arquivo tambm importante neste processo o /etc/services que faz o mapeamento
das portas e nomes dos servios.
Alguns programas servidores oferecem a opo de serem executados como daemons ou atravs
do inetd. recomendvel escolher inetd se o servio no for solicitado freqentemente (como
o caso de servidores ftp, telnet, talk, etc).
/etc/inetd.conf
O arquivo /etc/inetd.conf um arquivo de congurao para o daemon servidor inetd.
Sua funo dizer ao inetd o que fazer quando receber uma requisio de conexo para um
servio emparticular. Para cada servio que deseja aceitar conexes, voc precisa dizer ao inetd
qual daemon servidor executar e como executa-lo.
Seu formato tambm muito simples. um arquivo texto com cada linha descrevendo um
servio que deseja oferecer. Qualquer texto em uma linha seguindo uma # ignorada e
considerada um comentrio. Cada linha contm sete campos separados por qualquer nmero
de espaos em branco (tab ou espaos). O formato geral o seguinte:
servio tipo_soquete proto opes.num usurio caminho_serv. opes_serv.
Captulo 15. Rede 197
servio o servio relevante a este arquivo de congurao pego do arquivo /etc
/services.
tipo_soquete Este campo descreve o tipo do soquete que este item utilizar, valores permiti-
dos so: stream, dgram, raw, rdm, ou seqpacket. Isto umpouco tcnico de natureza,
mas como uma regra geral, todos os servios baseados em tcp usam stream e todos os
protocolos baseados em udp usam dgram. Somente alguns tipos de daemons especiais
de servidores usam os outros valores.
protocolo O protocolo considerado vlido para esta item. Isto deve bater com um item apro-
priado no arquivo /etc/services e tipicamente ser tcp ou udp. Servidores baseados
no Sun RPC (Remote Procedure Call), utilizam rpc/tcp ou rpc/udp.
opes Existem somente duas conguraes para este campo. A congurao deste campo
diz ao inetd se o programa servidor de rede libera o soquete aps ele ser iniciado e ento
se inetd pode iniciar outra cpia na prxima requisio de conexo, ou se o inetd deve
aguardar e assumir que qualquer servidor j em execuo pegar a nova requisio de
conexo. Este um pequeno truque de trabalho, mas como uma regra, todos os servi-
dores tcp devem ter este parmetro ajustado para nowait e a maior parte dos servidores
udp deve t-lo ajustado para wait. Foi alertado que existem algumas excesses a isto,
assim deixo isto como exemplo se no estiver seguro. O nmero especicado aps o
. opcional e dene a quantidade mxima de vezes que o servio poder ser execu-
tado durante 1 minuto. Se o servio for executado mais vezes do que este valor, ele ser
automaticamente desativado pelo inetd e uma mensagem ser mostrada no log do sis-
tema avisando sobre o fato. Para reativar o servio interrompido, reinicie o inetd com:
killall -HUP inetd. O valor padro 40.
usurio Este campo descreve que conta de usurio usurio no arquivo /etc/passwd ser
escolhida como dono do daemon de rede quando este for iniciado. Isto muito til se
voc deseja diminuir os riscos de segurana. Voc pode ajustar o usurio de qualquer
item para o usurio nobody, assim se a segurana do servidor de redes quebrada, a
possibilidade de problemas minimizada. Normalmente este campo ajustado para
root, porque muitos servidores requerem privilgios de usurio root para funcionarem
corretamente.
caminho_servidor Este campo o caminho para o programa servidor atual que ser execu-
tado.
argumentos_servidor Este campo inclui o resto da linha e opcional. Voc pode colocar neste
campo qualquer argumento da linha de comando que deseje passar para o daemon servi-
dor quando for iniciado.
Uma dica que pode aumentar signicativamente a segurana de seu sistema comentar (colo-
car uma #no inicio da linha) os servios que no sero utilizados.
Abaixo um modelo de arquivo /etc/inetd.conf usado em sistemas Debian:
# /etc/inetd.conf: veja inetd(8) para mais detalhes.
#
# Banco de Dados de configuraes do servidor Internet
#
#
# Linhas iniciando com "#:LABEL:" ou "#<off>#" no devem
Captulo 15. Rede 198
# ser alteradas a no ser que saiba o que est fazendo!
#
#
# Os pacotes devem modificar este arquivo usando update-inetd(8)
#
# <nome_servio> <tipo_soquete> <proto> <opes> <usurio> <caminho_servidor> <args>
#
#:INTERNO: Servios internos
#echo stream tcp nowait root internal
#echo dgram udp wait root internal
#chargen stream tcp nowait root internal
#chargen dgram udp wait root internal
#discard stream tcp nowait root internal
#discard dgram udp wait root internal
#daytime stream tcp nowait root internal
#daytime dgram udp wait root internal
time stream tcp nowait root internal
#time dgram udp wait root internal
#:PADRES: Estes so servios padres.
#:BSD: Shell, login, exec e talk so protocolos BSD.
#shell stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.rshd
#login stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.rlogind
#exec stream tcp nowait root /usr/sbin/tcpd /usr/sbin/in.rexecd
talk dgram udp wait.10 nobody.tty /usr/sbin/tcpd /usr/sbin/in.talkd
ntalk dgram udp wait.10 nobody.tty /usr/sbin/tcpd /usr/sbin/in.ntalkd
#:MAIL: Mail, news e servios uucp.
smtp stream tcp nowait.60 mail /usr/sbin/exim exim -bs
#:INFO: Servios informativos
#:BOOT: O servio Tftp oferecido primariamente para a inicializao. Alguns sites
# o executam somente em mquinas atuando como "servidores de inicializao".
#:RPC: Servios baseados em RPC
#:HAM-RADIO: servios de rdio amador
#:OTHER: Outros servios
Captulo 15. Rede 199
15.8 Segurana da Rede e controle de Acesso
Deixe-me iniciar esta seo lhe alertando que a segurana da rede em sua mquina e ataques
maliciosos so uma arte complexa. Uma regra importante : No oferea servios de rede que
no deseja utilizar.
Muitas distribuies vem conguradas com vrios tipos de servios que so iniciados auto-
maticamente. Para melhorar, mesmo que insignicantemente, o nvel de segurana em seu
sistema voc deve editar se arquivo /etc/inetd.conf e comentar (colocar uma #) as lin-
has que contm servios que no utiliza.
Bons candidatos so servios tais como: shell, login, exec, uucp, ftp e servios de infor-
mao tais como finger, netstat e sysstat.
Existem todos os tipos de mecanismos de segurana e controle de acesso, eu descreverei os
mais importantes deles.
15.8.1 /etc/ftpusers
O arquivo /etc/ftpusers um mecanismo simples que lhe permite bloquear a conexo de
certos usurios via ftp. O arquivo /etc/ftpusers lido pelo programa daemon ftp (ftpd)
quando um pedido de conexo recebido. O arquivo uma lista simples de usurios que no
tem permisso de se conectar. Ele se parece com:
# /etc/ftpusers - login de usurios bloqueados via ftp
root
uucp
bin
mail
15.8.2 /etc/securetty
O arquivo /etc/securetty lhe permite especicar que dispositivos tty que o usurio root
pode se conectar. O arquivo /etc/securetty lido pelo programa login (normalmente /bin
/login). Seu formato uma lista de dispositivos tty onde a conexo permitida, em todos
os outros, a entrada do usurio root bloqueada.
# /etc/securetty - terminais que o usurio root pode se conectar
tty1
tty2
tty3
tty4
Captulo 15. Rede 200
15.8.3 O mecanismo de controle de acessos tcpd
O programa tcpd que voc deve ter visto listado no mesmo arquivo /etc/inetd.conf,
oferece mecanismos de registro e controle de acesso para os servios que esta congurado
para proteger. Ele um tipo de rewall simples e fcil de congurar que pode evitar tipos
indesejados de ataques e registrar possveis tentativas de invaso.
Quando executado pelo programa inetd, ele l dos arquivos contendo regras de acesso e
permite ou bloqueia o acesso ao servidor protegendo adequadamente.
Ele procura nos arquivos de regras at que uma regra conra. Se nenhuma regra conferir, ento
ele assume que o acesso deve ser permitido a qualquer um. Os arquivos que ele procura em
seqncia so: /etc/hosts.allow e /etc/hosts.deny. Eu descreverei cada um destes
arquivos separadamente.
Para uma descrio completa desta facilidade, voc deve vericar a pgina de manual apro-
priada (hosts_access (5) um bom ponto de partida).
/etc/hosts.allow
O arquivo /etc/hosts.allow um arquivo de congurao do programa /usr/sbin
/tcpd. O arquivo hosts.allow contm regras descrevendo que hosts tem permisso de
acessar um servio em sua mquina.
O formato do arquivo muito simples:
# /etc/hosts.allow
#
# lista de servios: lista de hosts : comando
lista de servios uma lista de nomes de servios separados por vrgula que esta regra se
aplica. Exemplos de nomes de servios so: ftpd, telnetd e fingerd.
lista de hosts uma lista de nomes de hosts separada por vrgula. Voc tambm pode usar
endereos IPs aqui. Adicionalmente, voc pode especicar nomes de computadores
ou endereo IP usando caracteres coringas para atingir grupos de hosts. Exemplos
incluem: gw.vk2ktj.ampr.org para conferir com um endereo de computador es-
pecco, .uts.edu.au para atingir qualquer endereo de computador nalizando com
aquele string. Use 200.200.200. para conferir com qualquer endereo IP iniciando com
estes dgitos. Existem alguns parmetros especiais para simplicar a congurao, al-
guns destes so: ALL atinge todos endereos, LOCAL atinge qualquer computador que
no contm um . (ie. est no mesmo domnio de sua mquina) e PARANOID atinge
qualquer computador que o nome no confere com seu endereo (falsicao de nome).
Existe tambm um ltimo parmetro que tambm til: o parmetro EXCEPT lhe per-
mite fazer uma lista de excees. Isto ser coberto em um exemplo adiante.
comando um parmetro opcional. Este parmetro o caminho completo de um comando
que dever ser executado toda a vez que esta regra conferir. Ele pode executar um co-
mando para tentar identicar quem esta conectado pelo host remoto, ou gerar uma men-
sagem via E-Mail ou algum outro alerta para um administrador de rede que algum est
Captulo 15. Rede 201
tentando se conectar. Existem um nmero de expanses que podem ser includas, alguns
exemplos comuns so: %h expande o endereo do computador que est conectado ou
endereo se ele no possuir um nome, %d o nome do daemon sendo chamado.
Se o computador tiver permisso de acessar umservio atravs do /etc/hosts.allow, ento
o /etc/hosts.deny no ser consultado e o acesso ser permitido.
Como exemplo:
# /etc/hosts.allow
#
# Permite que qualquer um envie e-mails
in.smtpd: ALL
# Permitir telnet e ftp somente para hosts locais e myhost.athome.org.au
in.telnetd, in.ftpd: LOCAL, myhost.athome.org.au
# Permitir finger para qualquer um mas manter um registro de quem
in.fingerd: ALL: (finger @%h | mail -s "finger from %h" root)
Qualquer modicao no arquivo /etc/hosts.allow entrar em ao aps reiniciar o dae-
mon inetd. Isto pode ser feito com o comando kill -HUP [pid do inetd], o pid do inetd
pode ser obtido com o comando ps ax|grep inetd.
/etc/hosts.deny
O arquivo /etc/hosts.deny um arquivo de congurao das regras descrevendo quais
computadores no tem a permisso de acessar um servio em sua mquina.
Um modelo simples deste arquivo se parece com isto:
# /etc/hosts.deny
#
# Bloqueia o acesso de computadores com endereos suspeitos
ALL: PARANOID
#
# Bloqueia todos os computadores
ALL: ALL
A entrada PARANOID realmente redundante porque a outra entrada nega tudo. Qualquer
uma destas linhas pode fazer uma segurana padro dependendo de seu requerimento em
particular.
Tendo um padro ALL: ALL no arquivo /etc/hosts.deny e ento ativando especicamente os
servios e permitindo computadores que voc deseja no arquivo /etc/hosts.allow a con-
gurao mais segura.
Qualquer modicao no arquivo /etc/hosts.deny entrar em ao aps reiniciar o dae-
mon inetd. Isto pode ser feito com o comando kill -HUP [pid do inetd], o pid do inetd
pode ser obtido com o comando ps ax|grep inetd.
Captulo 15. Rede 202
/etc/hosts.equiv e /etc/shosts.equiv
O arquivo /etc/hosts.equiv usado para garantir/bloquear certos computadores e
usurios o direito de acesso aos servios r* (rsh, rexec, rcp, etc) sem precisar fornecer uma
senha. O /etc/shosts.equiv equivalente mas lido somente pelo servio ssh. Esta
funo til em um ambiente seguro onde voc controla todas as mquinas, mesmo assim
isto um perigo de segurana (veja nas observaes). O formato deste arquivo o seguinte:
#Acesso Mquina Usurio
- maquina2.dominio.com.br usuario2
- maquina4.dominio.com.br usuario2
+ maquina1.dominio.com.br +@usuarios
O primeiro campo especica se o acesso ser permitido ou negado caso o segundo e terceiro
campo conram. Por razes de segurana deve ser especicado o FQDN no caso de nomes de
mquinas. Grupos de rede podem ser especicados usando a sintaxe +@grupo.
Para aumentar a segurana, no use este mecanismo e encoraje seus usurios a tambm no
usar o arquivo .rhosts.
ATENO O uso do sinal + sozinho signica permitir acesso livre a qualquer pessoa de
qualquer lugar. Se este mecanismo for mesmo necessrio, tenha muita ateno na especicao
de seus campos.
Evita tambm A TODO CUSTO uso de nomes de usurios (a no ser para negar o acesso),
pois fcil forjar o login, entrar no sistema tomar conta de processos (como por exemplo do
servidor Apache rodando sob o usurio www-data ou at mesmo o root), causando enormes
estragos.
Vericando a segurana do TCPD e a sintaxe dos arquivos
O utilitrio tcpdchk til para vericar problemas nos arquivos hosts.allow e
hosts.deny. Quando executado ele verica a sintaxe destes arquivos e relata problemas,
caso eles existam.
Outro utilitrio til o tcpdmatch, o que ele faz permitir que voc simule a tentativa
de conexes ao seu sistema e observar ser ela ser permitida ou bloqueada pelos arquivos
hosts.allow e hosts.deny.
importante mostrar na prtica como o tcpdmatch funciona atravs de um exemplo simu-
lando um teste simples em um sistema com a congurao padro de acesso restrito:
O arquivo hosts.allow contm as seguintes linhas:
ALL: 127.0.0.1
in.talkd, in.ntalkd: ALL
in.fingerd: 192.168.1. EXCEPT 192.168.1.30
Captulo 15. Rede 203
A primeira linha permite o loopback (127.0.0.1) acessar qualquer servio TCP/UDP em
nosso computador, a segunda linha permite qualquer um acessar os servidor TALK (ns
desejamos que o sistema nos avise quando algumdesejar conversar) e a terceira somente
permite enviar dados do finger para computadores dentro de nossa rede privada (ex-
ceto para 192.168.1.30).
O arquivo hosts.deny contm a seguinte linha:
ALL: ALL
Qualquer outra conexo ser explicitamente derrubada.
Vamos aos testes, digitando: tcpdmatch in.ngerd 127.0.0.1 (vericar se o endereo 127.0.0.1
tem acesso ao nger):
client: address 127.0.0.1
server: process in.fingerd
matched: /etc/hosts.allow line 1
access: granted
Ok, temos acesso garantido com especicado pela linha 1 do hosts.allow (a primeira linha
que confere usada). Agora tcpdmatch in.ngerd 192.168.1.29:
client: address 192.168.1.29
server: process in.fingerd
matched: /etc/hosts.allow line 3
access: granted
O acesso foi permitido atravs da linha 3 do hosts.allow. Agora tcpdmatch in.ngerd
192.168.1.29:
client: address 192.168.1.30
server: process in.fingerd
matched: /etc/hosts.deny line 1
access: denied
O que aconteceu? como a linha 2 do hosts.allow permite o acesso a todos os computa-
dores 192.168.1.* exceto 192.168.1.30, ela no bateu, ento o processamento partiu para o
hosts.deny que nega todos os servios para qualquer endereo. Agora um ltimo exem-
plo: tcpdmatch in.talkd www.debian.org
client: address www.debian.org
server: process in.talkd
matched: /etc/hosts.allow line 2
access: granted
Captulo 15. Rede 204
Ok, na linha 2 qualquer computador pode te chamar para conversar via talk na rede, mas
para o endereo DNS conferir com um IP especicado, o GNU/Linux faz a resoluo DNS,
convertendo o endereo para IP e vericando se ele possui acesso.
No lugar do endereo tambm pode ser usado a forma daemon@computador ou
cliente@computador para vericar respectivamente o acesso de daemons e cliente de de-
terminados computadores aos servios da rede.
Como pode ver o TCPD ajuda a aumentar a segurana do seu sistema, mas no cone nele
alm do uso em um sistema simples, necessrio o uso de um rewall verdadeiro para contro-
lar minuciosamente a segurana do seu sistema e dos pacotes que atravessam os protocolos,
roteamento e as interfaces de rede. Se este for o caso aprenda a trabalhar a fundo com rewalls
e implemente a segurana da sua rede da forma que melhor planejar.
15.8.4 Firewall
Dentre todos os mtodos de segurana, o Firewall o mais seguro. A funo do Firewall
bloquear determinados tipos de trfego de um endereo ou para uma porta local ou permitir
o acesso de determinados usurios mas bloquear outros, bloquear a falsicao de endereos,
redirecionar trfego da rede, ping da morte, etc.
A implementao de um bom rewall depender da experincia, conhecimentos de rede (pro-
tocolos, roteamento, interfaces, endereamento, masquerade, etc), da rede local, e sistema em
geral do Administrador de redes, a segurana de sua rede e seus dados dependem da escolha
do prossional correto, que entenda a fundo o TCP/IP, roteamento, protocolos, servios e out-
ros assuntos ligados a rede.
Freqentemente tem se ouvido falar de empresas que tiveram seus sistemas invadidos, em
parte isto devido a escolha do sistema operacional indevido mas na maioria das vezes o
motivo a falta de investimento da empresa em polticas de segurana, que algumas simples-
mente consideram a segurana de seus dados e sigilo interno como uma despesa a mais.
Um bom rewall que recomendo o ipchains, Sinus e o TIS. Particularmente gosto muito
de usar o ipchains e o Sinus e possvel fazer coisas inimaginveis programando scripts
para interagirem com estes programas. . .
15.9 Outros arquivos de congurao relacionados com a rede
15.9.1 /etc/services
O arquivo /etc/services um banco de dados simples que associa um nome amigvel a
humanos a uma porta de servio amigvel a mquinas. um arquivo texto de formato muito
simples, cada linha representa um item no banco de dados. Cada item dividido em trs
campos separados por qualquer nmero de espaos em branco (tab ou espaos). Os campos
so:
Captulo 15. Rede 205
nome porta/protocolo apelido # comentrio
name Uma palavra simples que representa o nome do servio sendo descrito.
porta/protocolo Este campo dividido em dois sub-campos.
porta - Um nmero que especica o nmero da porta em que o servio estar
disponvel. Muitos dos servios comuns tem designados um nmero de servio.
Estes esto descritos no RFC-1340.
protocolo - Este sub-campo pode ser ajustado para tcp ou udp. importante notar
que o item 18/tcp muito diferente do item 18/udp e que no existe razo tcnica
porque o mesmo servio precisa existir em ambos. Normalmente o senso comum
prevalece e que somente se um servio esta disponvel em ambos os protocolos tcp
e udp, voc precisar especicar ambos.
apelidos Outros nomes podem ser usados para se referir a entrada deste servio.
comentrio Qualquer texto aparecendo em uma linha aps um caracter # ignorado e
tratado como comentrio.
15.9.2 /etc/protocols
O arquivo /etc/protocols um banco de dados que mapeia nmeros de identicao de
protocolos novamente em nomes de protocolos. Isto usado por programadores para permiti-
los especicar protocolos por nomes em seus programas e tambm por alguns programas tal
como tcpdump permitindo-os mostrar nomes ao invs de nmeros em sua sada. A sintaxe geral
deste arquivo :
nomeprotocolo nmero apelidos
Captulo 15. Rede 206
207
Captulo 16
Kernel e Mdulos
Este captulo descreve em detalhes o que o kernel, mdulos, sua congurao e programas
relacionados.
16.1 O Kernel
a pea central do sistema operacional (o Linux), ele que controla os dispositivos e demais
perifricos do sistema (como memria, placas de som, vdeo, discos rgidos, disquetes, sis-
temas de arquivos, redes e outros recursos disponveis). Muitos confundem isto e chamam a
distribuio de sistema operacional. Isto errado!
O kernel faz o controle dos perifricos do sistema e para isto ele deve ter o seu suporte in-
cludo. Para fazer uma placa de som Sound Blaster funcionar, por exemplo, necessrio que o
kernel oferea suporte a este placa e voc deve congurar seus parmetros (como interrupo,
I/O e DMA) com comandos especcos para ativar a placa e faze-la funcionar corretamente.
Existe um documento que contm quais so os perifricos suportados/ no suportados pelo
GNU/Linux, ele se chama Hardware-HOWTO.
Suas verses so identicadas por nmeros como 2.2.30, 2.4.33, 2.6.23.6, as verses que contm
um nmero par entre o primeiro e segundo ponto so verses estveis e que contm nmeros
mpares neste mesmo local so verses instveis (emdesenvolvimento). Usar verses instveis
no quer dizer que ocorrer travamentos ou coisas do tipo, mas algumas partes do kernel
podem no estar testadas o suciente ou alguns controladores podem ainda estar incompletos
para obter pleno funcionamento. Se opera sua mquina em um ambiente crtico, prera pegar
verses estveis do kernel.
Aps inicializar o sistema, o kernel e seus arquivos podem ser acessados ou modicados
atravs do ponto de montagem /proc. Para detalhes veja O sistema de arquivos /proc
on page 78.
Caso voc tenha um dispositivo (como uma placa de som) que tem suporte no GNU/Linux
mas no funciona veja Como adicionar suporte a Hardwares e outros dispositivos no kernel
on the next page.
Captulo 16. Kernel e Mdulos 208
16.2 Mdulos
So partes do kernel que so carregadas somente quando so solicitadas por algum aplicativo
ou dispositivo e descarregadas da memria quando no so mais usadas. Este recurso til
por 2 motivos: Evita a construo de um kernel grande (esttico) que ocupe grande parte da
memria com todos os drivers compilados e permite que partes do kernel ocupem a memria
somente quando forem necessrios.
Os mdulos do kernel esto localizados no diretrio /lib/modules/verso_do_kernel
/
*
(onde verso_do_kernel a verso atual do kernel em seu sistema, caso seja 2.6.23.6
o diretrio que contm seus mdulos ser /lib/modules/2.6.23.6.
Os mdulos so carregados automaticamente quando solicitados atravs do programa kmod
ou manualmente atravs do arquivo /etc/modules , insmod ou modprobe. Ateno: No
compile o suporte ao seu sistema de arquivos raz como mdulo, isto o tornar inacessvel, a
no ser que esteja usando initrd.
16.3 Como adicionar suporte a Hardwares e outros dispositivos no
kernel
Quando seu hardware no funciona mas voc tem certeza que suportado pelo GNU/Linux,
preciso seguir alguns passos para faze-lo funcionar corretamente:
Verique se o kernel atual foi compilado com suporte ao seu dispositivo. Tambm
possvel que o suporte ao dispositivo esteja compilado como mdulo. D o comando
dmesg para ver as mensagens do kernel durante a inicializao e verique se aparece
alguma coisa referente ao dispositivo que deseja instalar (alguma mensagem de erro,
etc). Caso no aparecer nada possvel que o driver esteja compilado como mdulo, para
vericar isto entre no diretrio /lib/modules/versao_do_kernel e veja se encontra
o mdulo correspondente ao seu dispositivo (o mdulo da placa NE 2000 tem o nome de
ne.ko e o da placa Sound Blaster de sb.ko, por exemplo).
OBS: Nos kernel 2.4 e anteriores, a extenso dos mdulos era .o.
Caso o kernel no tiver o suporte ao seu dispositivo, voc precisar recompilar seu kernel
ativando seu suporte. Veja Recompilando o Kernel on page 211.
Caso seu hardware esteja compilado no kernel, verique se o mdulo correspondente
est carregado (com o comando lsmod). Caso no estiver, carregue-o com o modprobe
(por exemplo, modprobe sb io=0x220 irq=5 dma=1 dma16=5 mpuio=0x330),
para detalhes veja modprobe on page 210.
O uso deste comando dever ativar seu hardware imediatamente, neste caso congure
o mdulo para ser carregado automaticamente atravs do programa modconf ou edite
os arquivos relacionados com os mdulos (veja Arquivos relacionados com o Kernel e
Mdulos on page 216). Caso no tenha sucesso, ser retornada uma mensagem de erro.
Captulo 16. Kernel e Mdulos 209
16.4 kmod
Este o programa usado para carregar os mdulos automaticamente quando so requeridos
pelo sistema. Ele um daemon que funciona constantemente fazendo a monitorao, quando
verica que algum dispositivo ou programa est solicitando o suporte a algum dispositivo, ele
carrega o mdulo correspondente.
Ele pode ser desativado atravs da recompilao do kernel, dando um kill no processo ou
atravs do arquivo /etc/modules (veja /etc/modules on page 216. Caso seja desativado,
preciso carregar manualmente os mdulos atravs do modprobe ou insmod.
16.5 lsmod
Lista quais mdulos esto carregados atualmente pelo kernel. O nome lsmod uma contrao
de ls+mdulos - Listar Mdulos. A listagem feita pelo lsmod uma alternativa ao uso do
comando cat /proc/modules.
A sada deste comando tem a seguinte forma:
Module Size Pages Used by
nls_iso8859_1 8000 1 1 (autoclean)
nls_cp437 3744 1 1 (autoclean)
ne 6156 2 1
8390 8390 2 [ne] 0
A coluna Module indica o nome do mdulo que est carregado, a coluna Used mostra qual
mdulos est usando aquele recurso. O parmetro (autoclean) no nal da coluna indica que o
mdulo foi carregado manualmente (pelo insmod ou modprobe) ou atravs do kmod e ser
automaticamente removido da memria quando no for mais usado.
No exemplo acima os mdulos ne e 8390 no tem o parmetro (autoclean) porque foram car-
regados pelo arquivo /etc/modules (veja /etc/modules on page 216). Isto signica que
no sero removidos da memria caso estiverem sem uso.
Qualquer mdulo carregado pode ser removido manualmente atravs do comandos rmmod.
16.6 insmod
Carrega um mdulo manualmente. Para carregar mdulos que dependem de outros mdu-
los para que funcionem, voc duas opes: Carregar os mdulos manualmente ou usar o
modprobe que verica e carrega as dependncias correspondentes.
A sintaxe do comando : insmod [mdulo] [opes_mdulo]
Onde:
Captulo 16. Kernel e Mdulos 210
mdulo o nome do mdulo que ser carregado.
opes_mdulo Opes que sero usadas pelo mdulo. Variam de mdulo para mdulo,
alguns precisam de opes outros no, tente primeiro carregar sem opes, caso seja
mostrada uma mensagem de erro verique as opes usadas por ele. Para detalhes sobre
que opes so suportadas por cada mdulo, veja a sua documentao no cdigo fonte
do kernel em /usr/src/linux/Documentation
Exemplo: insmod ne io=0x300 irq=10
16.7 rmmod
Remove mdulos carregados no kernel. Para ver os nomes dos mdulos atualmente carrega-
dos no kernel digite lsmod e verique na primeira coluna o nome do mdulo. Caso um m-
dulo tenha dependncias e voc tentar remover suas dependncias, uma mensagem de erro
ser mostrada alertando que o mdulo est em uso.
Exemplo: rmmod ne
16.8 modprobe
Carrega um mdulo e suas dependncias manualmente. Este comando permite carregar di-
versos mdulos e dependncias de uma s vez. O comportamento do modprobe modicado
pelo arquivo /etc/modules.conf .
A sintaxe deste comando : modprobe [mdulo] [opes_mdulo]
Onde:
mdulo o nome do mdulo que ser carregado.
opes_mdulo Opes que sero usadas pelo mdulo. Variam de mdulo para mdulo,
alguns precisam de opes outros no, tente primeiro carregar sem opes, caso seja
mostrada uma mensagem de erro verique as opes usadas por ele. Para detalhes sobre
que opes so suportadas por cada mdulo, veja a sua documentao no cdigo fonte
do kernel em /usr/src/linux/Documentation
Nem todos os mdulos so carregados corretamente pelo modprobe, o plip, por exemplo,
mostra uma mensagem sobre porta I/O invlida mas no caso seja carregado pelo insmod.
Exemplo: modprobe ne io=0x300 irq=10, modprobe sb io=0x220 irq=5 dma=1
dma16=5 mpuio=0x330
16.9 depmod
Verica a dependncia de mdulos. As dependncias dos mdulos so vericadas pelos scripts
em /etc/init.d usando o comando depmod -a e o resultado gravado no arquivo /lib
Captulo 16. Kernel e Mdulos 211
/modules/versao_do_kernel/modules.dep. Esta checagem serve para que todas as de-
pendncias de mdulos estejam corretamente disponveis na inicializao do sistema. O com-
portamento do depmod pode ser modicado atravs do arquivo /etc/modules.conf .
possvel criar a dependncia de mdulos imediatamente aps a compilao do kernel digi-
tando depmod -a [verso_do_kernel].
Exemplo: depmod -a
16.10 modconf
Este programa permite um meio mais fcil de congurar a ativao de mdulos e opes
atravs de uma interface atravs de menus. Selecione a categoria de mdulos atravs das
setas acima e abaixo e pressione enter para selecionar os mdulos existentes. Sero pedidas
as opes do mdulo (como DMA, IRQ, I/O) para que sua inicializao seja possvel, estes
parmetros so especcos de cada mdulo e devem ser vistos na documentao do cdigo
fonte do kernel no diretrio /usr/src/linux/Documentation. Note que tambm existem
mdulos com auto-deteco mas isto deixa o sistema um pouco mais lento, porque ele far
uma varredura na faixa de endereos especicados pelo mdulo para achar o dispositivo. As
opes so desnecessrias em alguns tipos de mdulos.
As modicaes feitas por este programa so gravadas no diretrio /etc/modutils em
arquivos separados como /etc/modutils/alias - alias de mdulos, /etc/modutils
/modconf - opes usadas por mdulos, /etc/modutils/paths - Caminho onde os m-
dulos do sistema so encontrados. Dentro de /etc/modutils ainda encontrado um sub-
diretrio chamado arch que contm opes especcas por arquiteturas.
A sincronizao dos arquivos gerados pelo modconf com o /etc/modules.conf feita
atravs do utilitrio update-modules. Ele normalmente executado aps modicaes nos
mdulos feitas pelo modconf.
16.11 Recompilando o Kernel
Ser que vou precisar recompilar o meu kernel? voc deve estar se perguntando agora. Abaixo
alguns motivos para esclarecer suas dvidas:
Melhora o desempenho do kernel. O kernel padro que acompanha as distribuies
GNU/Linux foi feito para funcionar emqualquer tipo de sistema e garantir seu funciona-
mento e inclui suporte a praticamente tudo. Isto pode gerar desde instabilidade at uma
grade pausa do kernel na inicializao quando estiver procurando pelos dispositivos que
simplesmente no existem em seu computador!
A compilao permite escolher somente o suporte aos dispositivos existentes em seu
computador e assim diminuir o tamanho do kernel, desocupar a memria RAM com
dispositivos que nunca usar e assim voc ter um desempenho bem melhor do que
teria com um kernel pesado.
Captulo 16. Kernel e Mdulos 212
Incluir suporte a alguns hardwares que esto desativados no kernel padro (SMP, APM,
ACPI, Virtualizao, Firewall, Bridge, memory cards, drivers experimentais, etc).
Se aventurar emcompilar umkernel (sistema operacional) personalizado emseu sistema.
Tornar seu sistema mais seguro
Impressionar os seus amigos, tentando coisas novas.
Sero necessrios uns 300Mb de espao em disco disponvel para copiar e descompactar o
cdigo fonte do kernel e alguns pacotes de desenvolvimento como o gcc, cpp, binutils,
gcc-i386-gnu, bin86, make, dpkg-dev, perl, kernel-package (os trs ltimos somente
para a distribuio Debian).
Na distribuio Debian, o melhor mtodo atravs do kernel-package que faz tudo para
voc (menos escolher o que ter o no o suporte no kernel) e gera um pacote .deb que poder
ser usado para instalar o kernel emseu sistema ou emqualquer outro que execute a Debian ou
distribuies baseadas (Ubuntu, etc). Devido a sua facilidade, a compilao do kernel atravs
do kernel-package muito recomendado para usurios iniciantes e para aqueles que usam
somente um kernel no sistema ( possvel usar mais de dois ao mesmo tempo, veja o processo
de compilao manual adiante neste captulo). Siga este passos para recompilar seu kernel
atravs do kernel-package:
1 Descompacte o cdigo fonte do kernel (atravs do arquivo linux-2.6.XX.XX.tar.bz2)
para o diretrio /usr/src. Caso use os pacotes da Debian eles tero o nome de
kernel-source-2.6.XX.XX, para detalhes de como instalar um pacote, veja Insta-
lar pacotes on page 247.
2 Aps isto, entre no diretrio onde o cdigo fonte do kernel foi instalado com cd
/usr/src/linux (este ser assumido o lugar onde o cdigo fonte do kernel se encon-
tra).
3 Como usurio root, digite make config. Voc tambmpode usar make menuconfig
(congurao atravs de menus) ou make xconfig (congurao em modo grco)
mas precisar de pacotes adicionais para que estes dois funcionem corretamente.
Sero feitas perguntas sobre se deseja suporte a tal dispositivo, etc. Pressione Y para
incluir o suporte diretamente no kernel, M para incluir o suporte como mdulo ou N
para no incluir o suporte. Note que nem todos os drivers podem ser compilados como
mdulos.
Escolha as opes que se encaixamemseu sistema. se estiver emdvida sobre a pergunta
digite ? e tecle Enter para ter uma explicao sobre o que aquela opo faz. Se no souber
do que se trata, recomendo incluir a opo (pressionando Y ou M. Este passo pode levar
entre 5 minutos e 1 Hora (usurios que esto fazendo isto pela primeira vez tendem a
levar mais tempo lendo e conhecendo os recursos que o GNU/Linux possui, antes de
tomar qualquer deciso). No se preocupe se esquecer de incluir o suporte a alguma
coisa, voc pode repetir o passo make config (todas as suas escolhas so gravadas no
arquivo .config), recompilar o kernel e instalar em cima do antigo a qualquer hora que
quiser.
Captulo 16. Kernel e Mdulos 213
4 Aps o make config chegar ao nal, digite make-kpkg clean para limpar con-
strues anteriores do kernel.
5 Agora compile o kernel digitando make-kpkg --revision=teste.1.0
kernel-image. A palavra teste pode ser substituda por qualquer outra que
voc quiser e nmero da verso 1.0 serve apenas como controle de suas compilaes
(pode ser qualquer nmero).
Observao: No inclua hfens (-) no parmetro revision, use somente pontos.
6 Agora aps compilar, o kernel ser gravado no diretrio superior (..) com um nome
do tipo linux-image-2.6.23.6-i386_teste.1.0.deb. Basta voc digitar dpkg
-i kernel-image-2.6.23.6-i386_teste.1.0.deb e o dpkg far o resto da in-
stalao do kernel para voc e perguntar se deseja criar um disquete de inicializao
(recomendvel).
7 Reinicie seu computador, seu novo kernel iniciar e voc j perceber a primeira difer-
ena pela velocidade que o GNU/Linux iniciado (voc inclui somente suporte a dispos-
itivos em seu sistema). O desempenho dos programas tambm melhorar pois cortou o
suporte a dispositivos/funes que seu computador no precisa.
Caso alguma coisa sair errada, coloque o disquete que gravou no passo anterior e reinicie
o computador para fazer as correes.
Para recompilar o kernel usando o mtodo manual, siga os seguintes passos:
1 Descompacte o cdigo fonte do kernel (atravs do arquivo linux-2.6.XX.XX.tar.bz2) para
o diretrio /usr/src. O cdigo fonte do kernel pode ser encontrado em ftp://ftp.
kernel.org/.
2 Aps isto, entre no diretrio onde o cdigo fonte do kernel foi instalado com cd
/usr/src/linux (este ser assumido o lugar onde o cdigo fonte do kernel se encon-
tra).
3 Como usurio root, digite make config. Voc tambmpode usar make menuconfig
(congurao atravs de menus) ou make xconfig (congurao em modo grco)
mas precisar de pacotes adicionais. Sero feitas perguntas sobre se deseja suporte a
tal dispositivo, etc. Pressione Y para incluir o suporte diretamente no kernel, M para
incluir o suporte como mdulo ou N para no incluir o suporte. Note que nem todos os
drivers podem ser compilados como mdulos. Escolha as opes que se encaixam em
seu sistema. se estiver em dvida sobre a pergunta digite ? e tecle Enter para ter uma
explicao sobre o que aquela opo faz. Se no souber do que se trata, recomendo incluir
a opo (pressionando Y ou M. Este passo pode levar entre 5 minutos e 1 Hora (usurios
que esto fazendo isto pela primeira vez tendem a levar mais tempo lendo e conhecendo
os recursos que o GNU/Linux possui antes de tomar qualquer deciso). No se preocupe
se esquecer de incluir o suporte a alguma coisa, voc pode repetir o passo make config,
recompilar o kernel e instalar em cima do antigo a qualquer hora que quiser.
4 Caso esteja compilando um kernel 2.4 ou inferior, Digite o comando make dep para
vericar as dependncias dos mdulos. Se estiver compilando umkernel 2.6 ou superior,
pule esse comando.
5 Digite o comando make clean para limpar construes anteriores do kernel.
Captulo 16. Kernel e Mdulos 214
6 Digite o comando make para iniciar a compilao do kernel e seus mdulos. Aguarde
a compilao, o tempo pode variar dependendo da quantidade de recursos que adi-
cionou ao kernel, a velocidade de seu computador e a quantidade de memria RAM
disponvel. Caso tenha acrescentado muitos tens no Kernel, possvel que o comando
make zImage falhe no nal (especialmente se o tamanho do kernel esttico for maior
que 505Kb). Neste caso use make bzImage. A diferena entre zImage e bzImage que
o primeiro possui um limite de tamanho porque descompactado na memria bsica
(recomendado para alguns Notebooks), j a bzImage, descompactada na memria es-
tendida e no possui as limitaes da zImage.
7 A compilao neste ponto est completa, voc agora tem duas opes para instalar o
kernel: Substituir o kernel anterior pelo recm compilado ou usar os dois. A segunda
questo recomendvel se voc no tem certeza se o kernel funcionar corretamente e
deseja iniciar pelo antigo no caso de alguma coisa dar errado. Se voc optar por substituir
o kernel anterior:
1 recomendvel renomear o diretrio /lib/modules/verso_do_kernel para
/lib/modules/verso_do_kernel.old, isto ser til para restaurao com-
pleta dos mdulos antigos caso alguma coisa der errado.
2 Execute o comando make modules_install para instalar os mdulos do kernel
recm compilado em /lib/modules/verso_do_kernel.
3 Copie o arquivo zImage que contm o kernel de /usr/src/linux/arch/i386
/boot/zImage para /boot/vmlinuz-2.XX.XX (2.XX.XX a verso do kernel
anterior)
4 Verique se o link simblico /vmlinuz aponta para a verso do kernel que com-
pilou atualmente (com ls -la /). Caso contrrio, apague o arquivo /vmlinuz
do diretrio raz e crie um novo link com ln -s /boot/vmlinuz-2.XX.Xx
/vmlinuz apontando para o kernel correto.
5 Execute o comando lilo para gerar um novo setor de partida no disco rgido. Para
detalhes veja LILO on page 89.
6 Reinicie o sistema (shutdown -r now).
7 Caso tudo esteja funcionando normalmente, apague o diretrio antigo de mdulos
que salvou e o kernel antigo de /boot. Caso algo tenha dado errado e seu sistema
no inicializa, inicie a partir de umdisquete, apague o novo kernel, apague os novos
mdulos, renomeie o diretrio de mdulos antigos para o nome original, ajuste o
link simblico /vmlinuz para apontar para o antigo kernel e execute o lilo. Aps
reiniciar seu computador voltar como estava antes.
Se voc optar por manter o kernel anterior e selecionar qual ser usado na partida do
sistema (til para um kernel em testes):
1 Execute o comando make modules_install para instalar os mdulos recm
compilados do kernel em /lib/modules/versao_do_kernel.
2 Copie o arquivo zImage que contm o kernel de /usr/src/linux/arch/i386
/boot/zImage para /boot/vmlinuz-2.XX.XX (2.XX.XX a verso do kernel
anterior)
3 Crie um link simblico no diretrio raz (/) apontando para o novo kernel. Como
exemplos ser usado /vmlinuz-novo.
4 Modique o arquivo /etc/lilo.conf para incluir a nova imagem de kernel. Por
exemplo:
Captulo 16. Kernel e Mdulos 215
Antes da modificao:
boot=/dev/hda
prompt
timeout=200
delay=200
map=/boot/map
install=menu
image = /vmlinuz
root = /dev/hda1
label = 1
read-only
Depois da modificao:
boot=/dev/hda
prompt
timeout=200
delay=200
map=/boot/map
install=menu
image = /vmlinuz
root = /dev/hda1
label = 1
read-only
image = /vmlinuz-new
root = /dev/hda1
label = 2
read-only
Se voc digitar 1 no aviso de boot: do Lilo, o kernel antigo ser carregado, caso
digitar 2 o novo kernel ser carregado. Para detalhes veja Criando o arquivo de con-
gurao do LILO on page 89 e Um exemplo do arquivo de congurao lilo.conf
on page 94.
5 Execute o comando lilo para gravar o novo setor de boot para o disco rgido.
6 Reinicie o computador
7 Carregue o novo kernel escolhendo a opo 2 no aviso de boot: do Lilo. Caso
tiver problemas, escolha a opo 1 para iniciar com o kernel antigo e verique os
passos de congurao (o arquivo lilo.conf foi modicado corretamente?.
Em alguns casos (como nos kernels empacotados em distribuies GNU/Linux) o cdigo fonte
do kernel gravado emumdiretrio chamado kernel-source-xx.xx.xx. recomendvel
fazer umlink comumdiretrio GNU/Linux, pois o padro usado pelas atualizao do cdigo
fonte atravs de patches (veja Aplicando Patches no kernel on page 217).
Captulo 16. Kernel e Mdulos 216
Para criar o link simblico, entre em/usr/src e digite: ln -s kernel-source-xx.xx.xx
linux.
Se quiser mais detalhes sobre a compilao do kernel, consulte o documento kernel-howto.
16.12 Arquivos relacionados com o Kernel e Mdulos
Esta seo descreve os arquivos usados pelo kernel e mdulos, a funo de cada umno sistema,
a sintaxe, etc.
16.12.1 /etc/modules
A funo deste arquivo carregar mdulos especicados na inicializao do sistema e mant-
los carregado todo o tempo. til para mdulos de placas de rede que precisamser carregados
antes da congurao de rede feita pela distribuio e no podem ser removidos quando a
placa de rede estiver sem uso (isto retiraria seu computador da rede).
Seu contedo uma lista de mdulos (um por linha) que sero carregados na inicializao
do sistema. Os mdulos carregados pelo arquivo /etc/modules pode ser listados usando o
comando lsmod (veja lsmod on page 209.
Se o parmetro auto estiver especicado como um mdulo, o kmod ser ativado e carregar
os mdulos somente em demanda, caso seja especicado noauto o programa kmod ser de-
sativado. O kmod ativado por padro nos nveis de execuo 2 ao 5.
Ele pode ser editado em qualquer editor de textos comum ou modicado automaticamente
atravs do utilitrio modconf.
16.12.2 modules.conf
O arquivo /etc/modules.conf permite controlar as opes de todos os mdulos do sis-
tema. Ele consultado pelos programas modprobe e depmod. As opes especicadas neste
arquivo facilita o gerenciamento de mdulos, evitando a digitao de opes atravs da linha
de comando.
Note que recomendado o uso do utilitrio modconf para congurar quaisquer mdulos
em seu sistema e o utilitrio update-modules para sincronizao dos arquivos gerados pelo
modconf em /etc/modutils com o /etc/modules.conf (geralmente isto feito auto-
maticamente aps o uso do modconf). Por este motivo no recomendvel modica-lo man-
ualmente, a no ser que seja um usurio experiente e saiba o que est fazendo. Veja modconf
on page 211
Por exemplo: adicionando as linhas:
alias sound sb
options sb io=0x220 irq=5 dma=1 dma16=5 mpuio=0x330
Captulo 16. Kernel e Mdulos 217
permitir que seja usado somente o comando modprobe sb para ativar a placa de som.
16.13 Aplicando Patches no kernel
Patches so modicaes geradas pelo programa diff em que servem para atualizar um pro-
grama ou texto. Este recurso muito til para os desenvolvedores, pois podem gerar um ar-
quivo contendo as diferenas entre um programa antigo e um novo (usando o comando diff)
e enviar o arquivo contendo as diferenas para outras pessoas.
As pessoas interessadas ematualizar o programa antigo, podemsimplesmente pegar o arquivo
contendo as diferenas e atualizar o programa usando o patch.
Isto muito usado no desenvolvimento do kernel do GNU/Linux em que novas verses so
lanadas freqentemente e o tamanho kernel completo compactado ocupa cerca de 18MB. Voc
pode atualizar seu kernel pegando um patch seguinte a verso que possui em ftp://ftp.
kernel.org/.
Para aplicar um patch que atualizar seu kernel 2.6.23 para a verso 2.6.24 voc deve proceder
da seguinte forma:
Descompacte o cdigo fonte do kernel 2.6.23 em /usr/src/linux ou certique-se que
existe um link simblico do cdigo fonte do kernel para /usr/src/linux.
Copie o arquivo patch-2.6.24.gz de ftp://ftp.kernel.org/ para /usr/src.
Use o comando gzip -dc patch-2.6.24|patch -p0 -N -E para atualizar o
cdigo fonte em /usr/src/linux para a verso 2.6.24. Alternativamente voc pode
primeiro descompactar o arquivo patch-2.6.24.gz com o gzip e usar o comando
patch -p0 -N -E <patch-2.6.24 para atualizar o cdigo fonte do kernel. O
GNU/Linux permite que voc obtenha o mesmo resultado atravs de diferentes mto-
dos, a escolha somente sua.
Caso deseja atualizar o kernel 2.6.20 para 2.6.24, como no exemplo acima, voc dever aplicar
os patches em seqncia (do patch 2.6.20 ao 2.6.24). Vale a pena observar se o tamanho total
dos patches ultrapassa ou chega perto o tamanho do kernel completo, pois dependendo da
quantidade de alteraes pode ser mais vivel baixar diretamente a nova verso.
Captulo 16. Kernel e Mdulos 218
219
Captulo 17
Arquivos e daemons de Log
A atividade dos programas so registradas em arquivos localizados em /var/log . Estes ar-
quivos de registros so chamados de logs e contm a data, hora e a mensagem emitida pelo
programa (violaes do sistema, mensagens de erro, alerta e outros eventos) entre outros cam-
pos. Enm, muitos detalhes teis ao administrador tanto para acompanhar o funcionamento
do seu sistema, comportamento dos programas ou ajudar na soluo e preveno de proble-
mas.
Alguns programas como o Apache, exim, ircd e squid criam diversos arquivos de log e por
este motivo estes so organizados em sub-diretrios (a mesma tcnica usada nos arquivos de
congurao em /etc, conforme a padro FHS atual).
17.1 Formato do arquivo de log
Um arquivo de log normalmente composto pelos seguintes campos:
Data|Hora|Mquina|daemon|mensagem
O campo mquina o nome do computador que registrou a mensagem (a mquina pode atuar
como um servidor de logs registrando mensagens de diversos computadores em sua rede). O
campo daemon indica qual programa gravou a mensagem.
O uso dos utilitrios do console pode ajudar muito na pesquisa e monitorao dos logs, por
exemplo, para obter todas as mensagens do daemon kernel da estao de trabalho wrk1,
eliminando os campos wrk1 e kernel:
cat /var/log/
*
|grep wrk1|grep kernel|awk {print $1 $2 $3 $6 $7 $8 $9 $10 $11 $12}
Os parmetros $1, $2 do comando awk indica que campos sero listados, (omitimos $4 e
$5 que so respectivamente wrk1 e kernel).
Captulo 17. Arquivos e daemons de Log 220
17.2 Daemons de log do sistema
Os daemons de log do sistema registram as mensagens de sada do kernel (klogd) e sistema
(syslogd) nos arquivos em /var/log .
A classicao de qual arquivo em /var/log receber qual tipo de mensagem controlado
pelo arquivo de congurao /etc/syslog.conf atravs de facilidades e nveis (veja Arquivo
de congurao syslog.conf on this page para detalhes).
17.2.1 syslogd
Este daemon controla o registro de logs do sistema.
syslogd [opes]
opes
-f Especica um arquivo de congurao alternativo ao /etc/syslog.conf.
-h Permite redirecionar mensagens recebidas a outros servidores de logs especicados.
-l [computadores ] Especica um ou mais computadores (separados por :) que devero ser
registrados somente com o nome de mquina ao invs do FQDN (nome completo, in-
cluindo domnio).
-m [minutos ] Intervalo em minutos que o syslog mostrar a mensagem --MARK--. O valor
padro padro 20 minutos, 0 desativa.
-n Evita que o processo caia automaticamente em background. Necessrio principalmente se
o syslogd for controlado pelo init.
-p [soquete ] Especica um soquete UNIX alternativo ao invs de usar o padro /dev/log.
-r Permite o recebimento de mensagens atravs da rede atravs da porta UDP 514. Esta opo
til para criar umservidor de logs centralizado na rede. Por padro, o servidor syslog
rejeitar conexes externas.
-s [domnios ] Especica a lista de domnios (separados por :) que devero ser retirados
antes de enviados ao log.
Na distribuio Debian, o daemon syslogd iniciado atravs do script /etc/init.d
/sysklogd.
Arquivo de congurao syslog.conf
O arquivo de congurao /etc/syslog.conf possui o seguinte formato:
facilidade.nvel destino
A facilidade e nvel so separadas por um . e contm parmetros que denem o que ser
registrado nos arquivos de log do sistema:
facilidade - usada para especicar que tipo de programa est enviando a men-
sagem. Os seguintes nveis so permitidos (em ordem alfabtica):
auth - Mensagens de segurana/autorizao ( recomendvel usar authpriv ao in-
vs deste).
Captulo 17. Arquivos e daemons de Log 221
authpriv - Mensagens de segurana/autorizao (privativas).
cron - Daemons de agendamento (cron e at).
daemon - Outros daemons do sistema que no possuem facilidades especcas.
ftp - Daemon de ftp do sistema.
kern - Mensagens do kernel.
lpr - Subsistema de impresso.
local0 a local7 - Reservados para uso local.
mail - Subsistema de e-mail.
news - Subsistema de notcias da USENET.
security - Sinnimo para a facilidade auth (evite usa-la).
syslog - Mensagens internas geradas pelo syslogd.
user - Mensagens genricas de nvel do usurio.
uucp - Subsistema de UUCP.

*
- Confere com todas as facilidades.
Mais de uma facilidade pode ser especicada na mesma linha do syslog.conf
separando-as com ,.
nvel - Especica a importncia da mensagem. Os seguintes nveis so permitidos (em
ordem de importncia invertida; da mais para a menos importante):
emerg - O sistema est inutilizvel.
alert - Uma ao deve ser tomada imediatamente para resolver o problema.
crit - Condies crticas.
err - Condies de erro.
warning - Condies de alerta.
notice - Condio normal, mas signicante.
info - Mensagens informativas.
debug - Mensagens de depurao.

*
- Confere com todos os nveis.
none - Nenhuma prioridade.
Alm destes nveis os seguintes sinnimos esto disponveis:
error - Sinnimo para o nvel err.
panic - Sinnimo para o nvel emerg.
warn - Sinnimo para o nvel warning.
destino - O destino das mensagens pode ser um arquivo, um pipe (se iniciado por um
|), um computador remoto (se iniciado por uma @), determinados usurios do sis-
tema (especicando os logins separados por vrgula) ou para todos os usurios logados
via wall (usando *).
Todas as mensagens com o nvel especicado e superiores a esta especicadas no
syslog.conf sero registradas, de acordo com as opes usadas. Conjuntos de facilidades
e nveis podem ser agrupadas separando-as por ;.
OBS1: Sempre use TABS ao invs de espaos para separar os parmetros do syslog.conf.
OBS2: Algumas facilidades como security, emitem um beep de alerta no sistema e enviam
uma mensagem para o console, como forma de alerta ao administrador e usurios logados no
sistema.
Existem ainda 4 caracteres que garantes funes especiais: *, =, ! e -:
Captulo 17. Arquivos e daemons de Log 222
* - Todas as mensagens da facilidade especicada sero redirecionadas.
= - Somente o nvel especicado ser registrado.
! - Todos os nveis especicados e maiores NO sero registrados.
- - Pode ser usado para desativar o sync imediato do arquivo aps sua gravao.
Os caracteres especiais = e ! podem ser combinados em uma mesma regra.
Exemplo: Veja abaixo um exemplo de um arquivo /etc/syslog.conf padro de sistemas
Debian
#
# Primeiro alguns arquivos de log padres. Registrados por facilidade
#
auth,authpriv.
*
/var/log/auth.log
*
.
*
;auth,authpriv.none -/var/log/syslog
cron.
*
/var/log/cron.log
daemon.
*
-/var/log/daemon.log
kern.
*
-/var/log/kern.log
lpr.
*
-/var/log/lpr.log
mail.
*
/var/log/mail.log
user.
*
-/var/log/user.log
uucp.
*
-/var/log/uucp.log
#
# Registro de logs do sistema de mensagens. Divididos para facilitar
# a criao de scripts para manipular estes arquivos.
#
mail.info -/var/log/mail.info
mail.warn -/var/log/mail.warn
mail.err /var/log/mail.err
# Registro para o sistema de news INN
#
news.crit /var/log/news/news.crit
news.err /var/log/news/news.err
news.notice -/var/log/news/news.notice
#
# Alguns arquivos de registro "pega-tudo".
# So usadas "," para especificar mais de uma prioridade (por
# exemplo, "auth,authpriv.none") e ";" para especificar mais de uma
# facilidade.nvel que ser gravada naquele arquivo.
# Isto permite deixar as regras consideravelmente menores e mais legveis
#
*
.=debug;\
auth,authpriv.none;\
Captulo 17. Arquivos e daemons de Log 223
news.none;mail.none -/var/log/debug
*
.=info;
*
.=notice;
*
.=warn;\
auth,authpriv.none;\
cron,daemon.none;\
mail,news.none -/var/log/messages
#
# Emergncias so enviadas para qualquer um que estiver logado no sistema. Isto
# feito atravs da especificao do "
*
" como destino das mensagens e so
# enviadas atravs do comando wall.
#
*
.emerg
*
#
# Eu gosto de ter mensagens mostradas no console, mas somente em consoles que
# no utilizo.
#
#daemon,mail.
*
;\
# news.=crit;news.=err;news.=notice;\
#
*
.=debug;
*
.=info;\
#
*
.=notice;
*
.=warn /dev/tty8
# O pipe /dev/xconsole usado pelo utilitrio "xconsole". Para usa-lo,
# voc deve executar o "xconsole" com a opo "-file":
#
# $ xconsole -file /dev/xconsole [...]
#
# NOTA: ajuste as regras abaixo, ou ficar maluco se tiver um um site
# muito movimentado...
#
daemon.
*
;mail.
*
;\
news.crit;news.err;news.notice;\
*
.=debug;
*
.=info;\
*
.=notice;
*
.=warn |/dev/xconsole
# A linha baixo envia mensagens importantes para o console em que
# estamos trabalhando logados (principalmente para quem gosta de ter
# controle total sobre o que est acontecendo com seu sistema).
*
.err;kern.debug;auth.notice;mail.crit /dev/console
17.2.2 klogd
Este daemon controla o registro de mensagens do kernel. Ele monitora as mensagens do kernel
e as envia para o daemon de monitoramento syslogd, por padro.
klogd [opes]
Captulo 17. Arquivos e daemons de Log 224
opes
-d Ativa o modo de depurao do daemon
-f [arquivo ] Envia as mensagens do kernel para o arquivo especicado ao invs de enviar ao
daemon do syslog
-i Envia um sinal para o daemon recarregar os smbolos de mdulos do kernel.
-I Envia um sinal para o daemon recarregar os smbolos estticos e de mdulos do kernel.
-n Evita a operao em segundo plano. til se iniciado pelo init
-k [arquivo ] Especica o arquivo que contm os smbolos do kernel. Exemplos deste arquivo
esto localizados em /boot/System.map-xx.xx.xx.
A especicao de um arquivo com a opo -k necessria se desejar que sejam mostradas a
tabela de smbolos ao invs de endereos numricos do kernel.
17.3 logger
Este comando permite enviar uma mensagem nos log do sistema. A mensagem enviada aos
logs via daemon syslogd ou via soquete do sistema, possvel especicar a prioridade, nvel,
um nome identicando o processo, etc. Seu uso muito til em shell scripts ou em outros
eventos do sistema.
logger [opes] [mensagem]
Onde:
mensagem Mensagem que ser enviada ao daemon syslog
opes
-i Registra o PID do processo
-s Envia a mensagem ambos para a sada padro (STDOUT) e syslog.
-f [arquivo ] Envia o contedo do arquivo especicado como mensagem ao syslog.
-t [nome ] Especica o nome do processo responsvel pelo log que ser exibido antes do PID
na mensagem do syslog.
-p [prioridade ] Especica a prioridade da mensagem do syslog, especicada como
facilidade.nvel. Veja os tipos de prioridade/nveis em Arquivo de congurao
syslog.conf on page 220. O valor padro prioridade.nvel user.notice
Mais detalhes sobre o funcionamento sobre o daemon de log do sistema syslogd, pode ser
encontrado em syslogd on page 220
Exemplos: logger -i -t focalinux Teste teste teste, logger -i -f
/tmp/mensagem -p security.emerg
225
Captulo 18
Compactadores
Esta seo explica o que so e como usar programas compactadores no GNU/Linux, as car-
actersticas de cada um, como identicar um arquivo compactado e como descompactar um
arquivo compactado usando o programa correspondente.
A utilizao de arquivos compactados mtodo til principalmente para reduzir o consumo
de espao em disco ou permitir grandes quantidades de texto serem transferidas para outro
computador atravs de disquetes.
18.1 O que fazem os compactadores/descompactadores?
Compactadores so programas que diminuemo tamanho de umarquivo (ou arquivos) atravs
da substituio de caracteres repetidos. Para entender melhor como eles funcionam, veja o
prximo exemplo:
compactadores compactam e deixam arquivos compactados.
-- aps a compactao da frase --
%dores %m e deixam arquivos %dos
O que aconteceu realmente foi que a palavra compacta se encontrava 3 vezes na frase acima,
e foi substituda por um sinal de %. Para descompactar o processo seria o contrrio: Ele substi-
tuiria % por compacta e ns temos a frase novamente restaurada.
Voc deve ter notado que o tamanho da frase compactada caiu quase pela metade. A quan-
tidade de compactao de um arquivo chamada de taxa de compactao. Assim se o tamanho
do arquivo for diminudo a metade aps a compactao, dizemos que conseguiu uma taxa de
compactao de 2:1 (l-se dois para um), se o arquivo diminuiu 4 vezes, dizemos que conseguiu
uma compactao de 4:1 (quatro para um) e assim por diante.
Captulo 18. Compactadores 226
Para controle dos caracteres que so usados nas substituies, os programas de compactao
mantm cabealhos com todas as substituies usadas durante a compactao. O tamanho
do cabealho pode ser xo ou denido pelo usurio, depende do programa usado na com-
pactao.
Este um exemplo bem simples para entender o que acontece durante a compactao, os pro-
gramas de compactao executam instrues muito avanadas e cdigos complexos para atin-
gir um alta taxa de compactao.
Observaes:
No possvel trabalhar diretamente com arquivos compactados! necessrio descom-
pactar o arquivo para usa-lo. Note que alguns programas atualmente suportam a aber-
tura de arquivos compactados, mas na realidade eles apenas simplicama tarefa descom-
pactando o arquivo, abrindo e o recompactando assim que o trabalho estiver concludo.
Arquivos de texto tem uma taxa de compactao muito melhor que arquivos binrios,
porque possuem mais caracteres repetidos. normal atingir taxas de compactao de 10
para 1 ou mais quando se compacta um arquivo texto. Arquivos binrios, como progra-
mas, possuem uma taxa de compactao mdia de 2:1.
Note que tambm existem programas compactadores especialmente desenvolvidos para
compactao de msicas, arquivos binrios, imagens, textos.
18.1.1 Tipos de compactao
Existem basicamente dois tipos de compactao, a compactao sem perdas e a compactao
com perdas.
Os exemplos a seguir tentam explicar de forma simples os conceitos envolvidos.
A compactao sem perdas, como o prprio nome diz no causa nenhuma perda nas infor-
maes contidas no arquivo. Quando voc compacta e descompacta um arquivo, o contedo
o mesmo do original.
A compactao com perdas um tipo especco de compactao desenvolvido para atingir
altas taxas, porm com perdas parciais dos dados. aplicada a tipos de arquivos especiais,
como msicas e imagens ou arquivos que envolvam a percepo humana.
Sabe-se que o ouvido humano no to sensvel a determinados sons e freqncias, ento a
compactao de um arquivo de msica poderia deixar de gravar os sons que seriam pouco
percebidos, resultando em um arquivo menor. Uma compactao do tipo ogg ou mp3 utiliza-
se destes recursos. O arquivo resultante muito menor que o original, porm alguns dados
sonoros so perdidos. Voc s notaria se estivesse reproduzindo a msica emumequipamento
de alta qualidade e se tivesse umouvido bemaguado. Para efeitos prticos, voc est ouvindo
a mesma msica e economizando muito espao em disco.
Outro exemplo de compactao com perdas so as imagens jpg. Imagine que voc tem uma
imagem com 60000 tons de cor diferentes, mas alguns tons so muito prximos de outros,
ento o compactador resume para 20000 tons de cor e a imagemter 1/3 do tamanho original e
o nosso olho conseguir entender a imagem sem problemas e quase no perceber a diferena.
Exemplos de extenses utilizadas em imagens compactadas so jpg, png, gif.
Captulo 18. Compactadores 227
Apesar das vantagens da grande taxa de compactao conseguida nos processos com perdas,
nem sempre podemos utiliz-lo. Quando compactamos um texto ou um programa, no pode-
mos ter perdas, seno o nosso texto sofre alteraes ou o programa no executa. Nem mesmo
podemos tem perdas quando compactamos imagens ou musicas que sero utilizadas em pro-
cessos posteriores de masterizao, mixagem ou impresso em alta qualidade.
18.2 Extenses de arquivos compactados
As extenses identicamo tipo de umarquivo e assimo programa o programa necessrio para
trabalhar com aquele tipo de arquivo. Existem dezenas de extenses que identicam arquivos
compactados. Quando um arquivo (ou arquivos) compactado, uma extenso correspondente
ao programa usado adicionada ao nome do arquivo (caso o arquivo seja compactado pelo
gzip receber a extenso .gz, por exemplo). Ao descompactar acontece o contrrio: a exten-
so retirada do arquivo. Abaixo segue uma listagemde extenses mais usadas e os programas
correspondentes:
.gz - Arquivo compactado pelo gzip. Use o programa gzip para descompacta-lo (para
detalhes veja gzip on the next page). .bz2 - Arquivo compactado pelo bzip2. Use o
programa bzip2 para descompacta-lo (para detalhes veja bzip2 on page 233).
.Z - Arquivo compactado pelo programa compress. Use o programa uncompress para
descompacta-lo.
.zip - Arquivo compactado pelo programa zip. Use o programa unzip para
descompacta-lo.
.rar - Arquivo compactado pelo programa rar. Use o programa rar para
descompacta-lo.
.tar.gz - Arquivo compactado pelo programa gzip no utilitrio de arquivamento tar.
Para descompacta-lo, voc pode usar o gzip e depois o tar ou somente o programa tar
usando a opo -z. Para detalhes veja gzip on the next page e tar on page 231.
.tgz - Abreviao de .tar.gz.
.tar.bz2 - Arquivo compactado pelo programa bzip2 no utilitrio de arquivamento
tar. Para descompacta-lo, voc pode usar o bzip2 e depois o tar ou somente o pro-
grama tar usando a opo -j. Para detalhes veja bzip2 on page 233 e tar on page 231.
.tar.Z - Arquivo compactado pelo programa compress no utilitrio de arquivamento
tar. Para descompacta-lo, voc pode usar o uncompress e depois o tar ou somente o
programa tar usando a opo -Z. Para detalhes veja tar on page 231.
Captulo 18. Compactadores 228
18.3 gzip
praticamente o compactador padro do GNU/Linux, possui uma tima taxa de compactao
e velocidade. A extenso dos arquivos compactados pelo gzip a .gz, na verso para DOS,
Windows NT usada a extenso .z.
gzip [opes] [arquivos]
Onde:
arquivos Especica quais arquivos sero compactados pelo gzip. Caso seja usado um-, ser
assumido a entrada padro. Curingas podem ser usados para especicar vrios arquivos
de uma s vez (veja Curingas on page 33).
Opes
-d, decompress [arquivo ] Descompacta um arquivo.
-f Fora a compactao, compactando at mesmo links.
-l [arquivo ] Lista o contedo de um arquivo compactado pelo gzip.
-r Compacta diretrios e sub-diretrios.
-c [arquivo ] Descompacta o arquivo para a sada padro.
-t [arquivo ] Testa o arquivo compactado pelo gzip.
-[num , fast, best] Ajustam a taxa de compactao/velocidade da compactao. Quanto
melhor a taxa menor a velocidade de compactao e vice versa. A opo --fast
permite uma compactao rpida e tamanho do arquivo maior. A opo --best per-
mite uma melhor compactao e uma velocidade menor. O uso da opo -[nmero]
permite especicar uma compactao individualmente usando nmeros entre 1 (menor
compactao) e 9 (melhor compactao). til para buscar um bom equilibro entre taxa
de compactao/velocidade (especialmente em computadores muito lentos).
Quando umarquivo compactado pelo gzip, automaticamente acrescentada a extenso .gz
ao seu nome.
O gzip tambm reconhece arquivos compactados pelos programas zip, compress,
compress -H e pack. As permisses de acesso dos arquivos so tambm armazenadas no
arquivo compactado.
Exemplos:
gzip -9 texto.txt - Compacta o arquivo texto.txt usando a compactao mx-
ima (compare o tamanho do arquivo compactado usando o comando ls -la).
gzip -d texto.txt.gz - Descompacta o arquivo texto.txt
gzip -c texto.txt.gz - Descompacta o arquivo texto.txt para a tela
gzip -9
*
.txt - Compacta todos os arquivos que terminam com .txt
gzip -t texto.txt.gz - Verica o arquivo texto.txt.gz.
18.4 zip
Utilitrio de compactao compatvel com pkzip (do DOS) e trabalha com arquivos de exten-
so .zip. Possui uma tima taxa de compactao e velocidade no processamento dos arquivos
compactados (comparando-se ao gzip).
Captulo 18. Compactadores 229
zip [opes] [arquivo-destino] [arquivos-origem]
Onde:
arquivo-destino Nome do arquivo compactado que ser gerado.
arquivos-origem Arquivos/Diretrios que sero compactados. Podem ser usados curingas
para especicar mais de um arquivo de uma s vez (veja Curingas on page 33).
opes
-r Compacta arquivos e sub-diretrios.
-e Permite encriptar o contedo de um arquivo .zip atravs de senha. A senha ser pedida
no momento da compactao.
-f Somente substitui um arquivo compactado existente dentro do arquivo .zip somente se a
verso mais nova que a atual. No acrescenta arquivos ao arquivo compactado. Deve
ser executado no mesmo diretrio onde o programa zip foi executado anteriormente.
-F Repara um arquivo .zip danicado.
-[NUM ] Ajusta a qualidade/velocidade da compactao. Pode ser especicado um nmero
de 1 a 9. O 1 permite mnima compactao e mxima velocidade, 9 permite uma melhor
compactao e menor velocidade.
-i [arquivos ] Compacta somente os [arquivos] especicados.
-j Se especicado, no armazena caminhos de diretrios.
-m Apaga os arquivos originais aps a compactao.
-T [arquivo ] Procura por erros em um arquivo .zip. Caso sejam detectados problemas, uti-
lize a opo -F para corrigi-los.
-y Armazena links simblicos no arquivo .zip. Por padro, os links simblicos so ignorados
durante a compactao.
-k [arquivo ] Modica o [arquivo] para ter compatibilidade total com o pkzip do DOS.
-l Converte saltos de linha UNIX (LF) para o formato CR+LF (usados pelo DOS). Use esta opo
com arquivos Texto.
-ll Converte saltos de linha DOS (CR+LF) para o formato UNIX (LF). Use esta opo com ar-
quivos texto.
-n [extenso ] No compacta arquivos identicados por [extenso]. Ele armazenado sem
compactao no arquivo .zip, muito til para uso com arquivos j compactados. Caso
sejam especicados diversas extenses de arquivos, elas devem ser separadas por : - Por
exemplo, zip -n .zip:.tgz arquivo.zip
*
.txt.
-q No mostra mensagens durante a compactao do arquivo.
-u Atualiza/adiciona arquivos ao arquivo .zip
-X No armazena detalhes de permisses, UID, GID e datas dos arquivos.
-z Permite incluir um comentrio no arquivo .zip.
Caso o nome de arquivo de destino no termine com.zip, esta extenso ser automaticamente
adicionada. Para a descompactao de arquivos .zip no GNU/Linux, necessrio o uso do
utilitrio unzip. Exemplos:
zip textos.zip
*
.txt - Compacta todos os arquivos com a extenso .txt para o
arquivo textos.zip (compare o tamanho do arquivo compactado digitando ls -la).
zip -r textos.zip /usr/
*
.txt - Compacta todos os arquivos com a extenso
.txt do diretrio /usr e sub-diretrios para o arquivo textos.zip.
zip -9 textos.zip
*
- Compacta todos os arquivos do diretrio atual usando a com-
pactao mxima para o arquivo textos.zip.
Captulo 18. Compactadores 230
zip -T textos.zip - Verica se o arquivo textos.zip contm erros.
18.5 unzip
Descompacta arquivos .zip criados com o programa zip. Este programa tambm com-
patvel com arquivos compactados pelo pkzip do DOS.
unzip [opes] [arquivo.zip] [arquivos-extrair] [-d diretrio]
Onde:
arquivo.zip Nome do arquivo que deseja descompactar. Podem ser usados curingas para
especicar mais de um arquivo para ser descompactado.
arquivos-extrair Nome dos arquivos (separados por espao) que sero descompactados do
arquivo .zip. Caso no seja especicado, assumido
*
(todos os arquivos sero de-
scompactados). Se for usado -x arquivos, os arquivos especicados no sero de-
scompactados. O uso de curingas permitido.
-d diretrio Diretrio onde os arquivos sero descompactados. Caso no for especicado, os
arquivos sero descompactados no diretrio atual.
opes
-c Descompacta os arquivos para stdout (sada padro) ao invs de criar arquivos. Os nomes
dos arquivos tambm so mostrados (veja a opo -p).
-f Descompacta somente arquivos que existam no disco e mais novos que os atuais.
-l Lista os arquivos existentes dentro do arquivo .zip.
-M Efetua uma pausa a cada tela de dados durante o processamento (a mesma funo do
comando more).
-n Nunca substitui arquivos j existentes. Se um arquivo existe ele pulado.
-o Substitui arquivos existentes sem perguntar. Tem a funo contrria a opo -n.
-P [SENHA ] Permite descompactar arquivos .zip usando a [SENHA]. CUIDADO! qualquer
usurio conectado em seu sistema pode ver a senha digitada na linha de comando digi-
tada.
-p Descompacta os arquivos para stdout (sada padro) ao invs de criar arquivos. Os nomes
dos arquivos no so mostrados (veja a opo -c).
-q No mostra mensagens.
-t Verica o arquivo .zip em busca de erros.
-u Idntico a opo -f s que tambm cria arquivos que no existem no diretrio.
-v Mostra mais detalhes sobre o processamento do unzip.
-z Mostra somente o comentrio existente no arquivo.
Por padro o unzip tambm descompacta sub-diretrios caso o arquivo .zip tenha sido ger-
ado com zip -r.
Exemplos:
unzip texto.zip - Descompacta o contedo do arquivo texto.zip no diretrio at-
ual.
unzip texto.zip carta.txt - Descompacta somente o arquivo carta.txt do ar-
quivo texto.zip.
Captulo 18. Compactadores 231
unzip texto.zip -d /tmp/texto - Descompacta o contedo do arquivo
texto.zip para o diretrio /tmp/texto.
unzip -l texto.zip - Lista o contedo do arquivo texto.zip.
unzip -t texto.zip - Verica o arquivo texto.zip.
18.6 tar
Na verdade o tar no um compactador e sim um arquivador (ele junta vrios arquivos
em um s), mas pode ser usado em conjunto com um compactar (como o gzip ou zip) para
armazena-los compactados. O tar tambm muito usado para cpias de arquivos especiais
ou dispositivos do sistema. comum encontrar arquivos com a extenso .tar, .tar.gz,
.tgz, .tar.bz2, .tar.Z, .tgZ, o primeiro um arquivo normal gerado pelo tar e todos
os outros so arquivos gerados atravs tar junto com um programa de compactao (gzip
(.gz), bzip2 (.bz2) e compress (.Z).
tar [opes] [arquivo-destino] [arquivos-origem]
Onde:
arquivo-destino o nome do arquivo de destino. Normalmente especicado com a extenso
.tar caso seja usado somente o arquivamento ou .tar.gz/.tgz caso seja usada a
compactao (usando a opo -z).
arquivos-origem Especica quais arquivos/diretrios sero compactados.
opes
-c, create Cria um novo arquivo .tar
-t, list Lista o contedo de um arquivo .tar
-u, update Atualiza arquivos compactados no arquivo .tar
-f, le [HOST: F] Usa o arquivo especicado para gravao ou o dispositivo /dev/rmt0.
-j, bzip2 Usa o programa bzip2 para processar os arquivos do tar
-l, one-le-system No processa arquivos em um sistema de arquivos diferentes de onde o
tar foi executado.
-M, multi-volume Cria/lista/descompacta arquivos em mltiplos volumes. O uso de ar-
quivos em mltiplos volumes permite que uma grande cpia de arquivos que no cabe
em um disquete, por exemplo, seja feita em mais de um disquete.
-o Grava o arquivo no formato VT7 ao invs do ANSI.
-O, to-stdout Descompacta arquivos para a sada padro ao invs de gravar em um arquivo.
remove-les Apaga os arquivos de origem aps serem processados pelo tar.
-R, record-number Mostra o nmero de registros dentro de um arquivo tar em cada men-
sagem.
totals Mostra o total de bytes gravados com a opo --create.
-v Mostra os nomes dos arquivos enquanto so processados.
-V [NOME ] Inclui um [NOME] no arquivo tar.
-W, verify Tenta vericar o arquivo gerado pelo tar aps grava-lo.
x Extrai arquivos gerados pelo tar
-X [ARQUIVO ] Tenta apagar o [ARQUIVO] dentro de um arquivo compactado .tar.
-Z Usa o programa compress durante o processamento dos arquivos.
Captulo 18. Compactadores 232
-z Usa o programa gzip durante o processamento dos arquivos.
use-compress-program [PROGRAMA ] Usa o [PROGRAMA] durante o processamento dos
arquivos. Ele deve aceitar a opo -d.
-[0-7 [lmh]] Especica a unidade e sua densidade.
A extenso precisa ser especicada no arquivo de destino para a identicao correta:
Arquivos gerados pelo tar precisam ter a extenso .tar
Caso seja usada a opo -j para compactao, a extenso dever ser .tar.bz2
Caso seja usada a opo -z para compactao, a extenso dever ser .tar.gz ou .tgz
Caso seja usada a opo -Z para a compactao, a extenso dever ser .tar.Z ou .tgZ
importante saber qual qual o tipo de compactador usado durante a gerao do arquivo .tar
pois ser necessrio especicar a opo apropriada para descompacta-lo (para detalhes veja
Extenses de arquivos compactados on page 227).
Exemplos:
tar -cf index.txt.tar index.txt - Cria umarquivo chamado index.txt.tar
que armazenar o arquivo index.txt. Voc pode notar digitando ls -la que o ar-
quivo index.txt foi somente arquivado (sem compactao), isto til para juntar di-
versos arquivos em um s.
tar -xf index.txt.tar - Desarquiva o arquivo index.txt criado pelo comando
acima.
tar -czf index.txt.tar.gz index.txt - O mesmo que o exemplo de arquiv-
amento anterior, s que agora usado a opo -z (compactao atravs do pro-
grama gzip). Voc agora pode notar digitando ls -la que o arquivo index.txt foi
compactado e depois arquivado no arquivo index.txt.tar.gz (voc tambm pode
chama-lo de index.txt.tgz que tambmidentica umarquivo .tar compactado pelo
gzip)
tar -xzf index.txt.tar.gz - Descompacta e desarquiva o arquivo
index.txt.tar.gz criado com o comando acima.
gzip -dc index.tar.gz | tar -xf - - Faz o mesmo que o comando acima s que
de uma forma diferente: Primeiro descompacta o arquivo index.txt.tar.gz e envia
a sada do arquivo descompactado para o tar que desarquivar o arquivo index.txt.
tar -cjf index.txt.tar.bz2 index.txt - Arquiva o arquivo index.txt em
index.txt.tar.bz2 compactando atravs do bzip2 (opo -j).
tar -xjf index.txt.tar.bz2 - Descompacta e desarquiva o arquivo
index.txt.tar.bz2 criado com o comando acima.
bzip2 -dc index.txt.tar.bz2 | tar -xf - - Faz o mesmo que o co-
mando acima s que de uma forma diferente: Primeiro descompacta o arquivo
index.txt.tar.bz2 e envia a sada do arquivo descompactado para o tar que
desarquivar o arquivo index.txt.
tar -t index.txt.tar - Lista o contedo de um arquivo .tar.
tar -tz index.txt.tar.gz - Lista o contedo de um arquivo .tar.gz.
Captulo 18. Compactadores 233
18.7 bzip2
um novo compactador que vem sendo cada vez mais usado porque consegue atingir a mel-
hor compactao em arquivos texto se comparado aos j existentes (em conseqncia sua ve-
locidade de compactao tambm menor; quase duas vezes mais lento que o gzip). Suas
opes so praticamente as mesmas usadas no gzip e voc tambm pode usa-lo da mesma
forma. A extenso dos arquivos compactados pelo bzip2 a .bz2
bzip2 [opes] [arquivos]
Onde:
arquivos Especica quais arquivos sero compactados pelo bzip2. Caso seja usado um -,
ser assumido a entrada padro. Curingas podem ser usados para especicar vrios
arquivos de uma s vez (veja Curingas on page 33).
Opes
-d, decompress [arquivo ] Descompacta um arquivo.
-f Fora a compactao, compactando at mesmo links.
-l [arquivo ] Lista o contedo de um arquivo compactado pelo bzip2.
-r Compacta diretrios e sub-diretrios.
-c [arquivo ] Descompacta o arquivo para a sada padro.
-t [arquivo ] Testa o arquivo compactado pelo bzip2.
-[num , fast, best] Ajustam a taxa de compactao/velocidade da compactao. Quanto
melhor a taxa menor a velocidade de compactao e vice versa. A opo --fast
permite uma compactao rpida e tamanho do arquivo maior. A opo --best per-
mite uma melhor compactao e uma velocidade menor. O uso da opo -[nmero]
permite especicar uma compactao individualmente usando nmeros entre 1 (menor
compactao) e 9 (melhor compactao). til para buscar um bom equilibro entre taxa
de compactao/velocidade (especialmente em computadores muito lentos).
Quando um arquivo compactado pelo bzip2, automaticamente acrescentada a extenso
.bz2 ao seu nome. As permisses de acesso dos arquivos so tambm armazenadas no ar-
quivo compactado.
Exemplos:
bzip2 -9 texto.txt - Compacta o arquivo texto.txt usando a compactao mx-
ima (compare o tamanho do arquivo compactado usando o comando ls -la).
bzip2 -d texto.txt.bz2 - Descompacta o arquivo texto.txt
bzip2 -c texto.txt.bz2 - Descompacta o arquivo texto.txt para a sada padro
(tela)
bzip2 -9
*
.txt - Compacta todos os arquivos que terminam com .txt
bzip2 -t texto.txt.bz2 - Verica o arquivo texto.txt.bz2.
18.8 rar
rar umcompactador desenvolvido por Eugene Roshal e possui verses para GNU/Linux,
DOS, Windows, OS/2 e Macintosh. Trabalha com arquivos de extenso .rar e permite ar-
Captulo 18. Compactadores 234
mazenar arquivos compactados em vrios disquetes (mltiplos volumes). Se trata de um pro-
duto comercial, mas decidi coloca-lo aqui porque possui boas verses Shareware e pode ser
muito til em algumas situaes.
rar [aes] [opes] [arquivo-destino.rar] [arquivos-origem]
Onde:
arquivo-destino.rar o nome do arquivo de destino
arquivos-origem Arquivos que sero compactados. Podem ser usados curingas para especi-
car mais de um arquivo.
aes
a Compacta arquivos
x Descompacta arquivos
d Apaga arquivos especicados
t Verica o arquivo compactado em busca de erros.
c Inclui comentrio no arquivo compactado
r Repara um arquivo .rar danicado
l Lista arquivos armazenados no arquivo compactado
u Atualiza arquivos existentes no arquivo compactado.
m Compacta e apaga os arquivos de origem (move).
e Descompacta arquivos para o diretrio atual
p Mostra o contedo do arquivo na sada padro
rr Adiciona um registro de vericao no arquivo
s Converte um arquivo .rar normal em arquivo auto-extrctil. Arquivos auto-extrcteis so
teis para enviar arquivos a pessoas que no tem o programa rar. Basta executar o
arquivo e ele ser automaticamente descompactado (usando o sistema operacional que
foi criado). Note que esta opo requer que o arquivo default.sfx esteja presente no
diretrio home do usurio. Use o comando find para localiza-lo em seu sistema.
opes
o+ Substitui arquivos j existentes sem perguntar
o- No substitui arquivos existentes
sfx Cria arquivos auto-extrcteis. Arquivos auto-extrcteis so teis para enviar arquivos a
pessoas que no tem o programa rar. Basta executar o arquivo e ele ser automati-
camente descompactado. Note que este processo requer que o arquivo default.sfx
esteja presente no diretrio home do usurio. Use o comando find para localiza-lo em
seu sistema.
y Assume sim para todas as perguntas
r Inclui sub-diretrios no arquivo compactado
x [ARQUIVO ] Processa tudo menos o [ARQUIVO]. Pode ser usados curingas
v[TAMANHO ] Cria arquivos com um limite de tamanho. Por padro, o tamanho especi-
cado em bytes, mas o nmero pode ser seguido de k (kilobytes) ou m(megabytes). Exem-
plo: rar a -v1440k ... ou rar a -v10m ...
p [SENHA ] Inclui senha no arquivo. CUIDADO, pessoas conectadas em seu sistema podem
capturar a linha de comando facilmente e descobrir sua senha.
m [0-5 ] Ajusta a taxa de compactao/velocidade de compactao. 0 no faz compactao al-
guma (mais rpido) somente armazena os arquivos, 5 o nvel que usa mais compactao
(mais lento).
Captulo 18. Compactadores 235
ed No inclui diretrios vazios no arquivo
isnd Ativa emisso de sons de alerta pelo programa
ierr Envia mensagens de erro para stderr
inul Desativa todas as mensagens
ow Salva o dono e grupo dos arquivos.
ol Salva links simblicos no arquivo ao invs do arquivo fsico que o link faz referncia.
mm[f ] Usa um mtodo especial de compactao para arquivos multimdia (sons, vdeos, etc).
Caso for usado mmf, fora o uso do mtodo multimdia mesmo que o arquivo com-
pactado no seja deste tipo.
Os arquivos gerados pelo rar do GNU/Linux podem ser usados em outros sistemas opera-
cionais, basta ter o rar instalado. Quando usada a opo -v para a criao de mlti-
plos volumes, a numerao dos arquivos feita na forma: arquivo.rar, arquivo.r00,
arquivo.r01, etc, durante a descompactao os arquivos sero pedidos em ordem. Se
voc receber a mensagem cannot modify volume durante a criao de um arquivo .rar,
provavelmente o arquivo j existe. Apague o arquivo existente e tente novamente.
Exemplos:
rar a texto.rar texto.txt - Compacta o arquivo texto.txt em um arquivo
com o nome texto.rar
rar x texto.rar - Descompacta o arquivo texto.rar
rar a -m5 -v1400k textos.rar
*
- Compacta todos os arquivos do diretrio at-
ual, usando a compactao mxima no arquivo textos.rar. Note que o tamanho mx-
imo de cada arquivo 1440 para ser possvel grava-lo em partes para disquetes.
rar x -v -y textos.rar - Restaura os arquivos em mltiplos volumes criados com
o processo anterior. Todos os arquivos devem ter sido copiados dos disquetes para o
diretrio atual antes de prosseguir. A opo -y til para no precisar-mos responder
yes a toda pergunta que o rar zer.
rar t textos.rar - Verica se o arquivo textos.rar possui erros.
rar r textos.rar - Repara um arquivo .rar danicado.
Captulo 18. Compactadores 236
237
Captulo 19
A distribuio Debian GNU/Linux
Este captulo traz algumas caractersticas sobre a distribuio Debian GNU/Linux, progra-
mas de congurao e particularidades. A maioria dos trechos aqui descritos, tambm se apli-
cam a distribuies baseadas na Debian, como o Kurumin e o Ubuntu.
Voc deve estar se perguntando mas porque um captulo falando sobre a
distribuio Debian se eu uso outra?. Bem, a partir da verso Intermedirio
do Foca Linux existem algumas partes que so especicas de algumas distribuies Linux e
que no se aplicam a outras, como a localizao dos arquivos de congurao, nomes dos
programas de congurao e outros detalhes especcos e esta verso a baseada na Debian.
Pegue na pgina do Foca Linux (http://www.guiafoca.org) uma verso Intermedirio
do guia especco para sua distribuio.
19.1 Porque usar a Debian?
A Debian a distribuio que mais cresce no mundo, cada verso somente lanada aps
rigorosos testes de segurana e correo de falhas fazendo desta a mais segura e convel
dentre todas as outras distribuies Linux. reconhecida como a mais segura, maior e atual-
izada mais freqentemente entre as outras distribuies Linux, alm de ser a nica sem ns
comerciais.
a nica que adota o estilo de desenvolvimento aberto e no mantida por uma empresa
comercial (note que o endereo do WebSite da Debian termina com .org), ao invs disso
mantida por programadores, hackers e especialistas de segurana espalhados ao redor do
mundo, seguindo o estilo de desenvolvimento do Linux. Possui suporte a mais de 12 arquite-
turas e 15 sub-arquiteturas (entre elas, Intel x86, Alpha, VMS, Sparc, Macintosh (m68k), Power
Pc, ARM, etc).
Suas atualizaes so constantes e no necessrio adquirir um novo CD para fazer upgrades.
Meu sistema atualizado semanalmente e de forma segura atravs de 2 simples comandos.
Veja apt on page 250 as instrues de como fazer isto.
Captulo 19. A distribuio Debian GNU/Linux 238
Cada pacote da distribuio mantida por uma pessoa, o que garante uma boa qualidade,
implementaes de novos recursos e rpida correo de falhas. Qualquer pessoa com bons
conhecimentos no sistema e ingls pode se tornar um Debian Developer, para detalhes consulte
a lista de discusso debian-user-portuguese (veja Listas de discusso on page 380) ou veja a
pgina ocial da Debian: http://www.debian.org/.
A distribuio apresenta compatibilidade com outros sistemas a partir da instalao at a se-
leo de programas e execuo do sistema, sua instalao est at mesmo disponvel desde
computadores 386 que utilizam unidades de disquetes de 5 1/4 polegadas at para computa-
dores UDMA66, instalando atravs de DVD e pen drives. Com a Debian possvel iniciar a
instalao usando um pen drive e continuar usando a internet.
a distribuio mais indicada para uso em servidores devido ao seu desempenho, segurana
e programas teis de gerenciamento e monitorao da rede, recomendados por especialistas
que participam de seu desenvolvimento.
No existem verses separadas da Debian para servidores, uso pessoal, etc, ao invs disso
a distribuio usa pers de usurio (dependendo da funo do usurio) e pers de com-
putador (dependendo do que deseja fazer), podendo ser selecionado mais de um perl de
usurio/computador.
Os pers selecionam automaticamente os pacotes mais teis para a instalao. Os pacotes
existentes em cada perl foram escolhidos atravs de debates entre usurios que trabalham
ativamente naquela rea, resultando em uma seleo de pacotes de alta produtividade.
Para os usurios avanados e exigentes, tambm possvel selecionar os pacotes individual-
mente via dselect, o que resultar em uma instalao somente com pacotes teis e melhor
congurada.
19.2 Pacotes existentes na Debian
O nmero de pacotes existentes na distribuio atual da Debian (Etch - 4.0) de 25000.
A Debian (como a Red Hat) usa um formato prprio para armazenar os programas: o for-
mato .deb. Este formato permite a declarao, resoluo e checagemautomtica de dependn-
cias, pacotes sugeridos, opcionais e outras caractersticas que o torna atraente para o desen-
volvimento, gerenciamento e manuteno do sistema.
Estes pacotes so gerenciados atravs do programa dpkg (Debian Package) ou atravs de front-
ends como o dselect ou apt (para detalhes veja Sistema de gerenciamento de pacotes on
page 247).
19.3 O que sid/testing/frozen/stable?
Para o lanamento de uma nova distribuio Debian, o seguinte processo ocorre: sid =>
testing => stable (sendo a stable sempre o lanamento ocial e sembugs da distribuio).
Captulo 19. A distribuio Debian GNU/Linux 239
sid Durante o desenvolvimento de uma nova distribuio Debian, ela chamada de sid. A
sid a verso Unstable, isto no signica instabilidade, mas sim que a distribuio esta
sofrendo modicaes para se tornar uma verso estvel, recebendo novos pacotes, etc.
Quando os pacotes no so modicados aps um determinado perodo, os scripts da
Debian copiam estes pacotes (novos ou atualizados) para a testing.
No use a distribuio sid (unstable) ao menos que tenha experincia no Linux para cor-
rigir problemas, que certamente aparecero.
testing A testing recebe os pacotes que no so modicados durante algum tempo da unstable,
isto signica que eles possuem alguma estabilidade.
Atesting uma espcie de congelamento permanente (freeze) durante o desenvolvimento
da Unstable.
Os novos pacotes que entram na unstable tambm caem na testing aps certo tempo.
Mesmo assim, podem existir falhas graves na testing, se voc precisa de um ambiente
realmente livre de falhas, use a stable.
frozen (congelada) Na data programada pela equipe de lanamento da Debian, a dis-
tribuio testing congelada: nenhum pacote novo da unstable cai na testing e comea
a procura de falhas na distribuio testing. Nenhuma nova caracterstica implementada
nos pacotes (a no ser que seja extremamente necessrio) e os developers se dedicam a
correo de erros nos pacotes.
A distribuio testing congelada se tornar a futura stable aps todas as falhas serem cor-
rigidas. considerado seguro usar a frozen aps 1 ms de congelamento.
Quando a testing congelada, o ciclo de desenvolvimento da unstable continua para que
a prxima distribuio da Debian seja lanada.
stable Quando todos os bugs da testing congelada so eliminados, ela lanada como stable, a
nova verso Ocial da Debian.
A stable o resultado nal do desenvolvimento, das correo de falhas/segurana e que
passou por todos os ciclos de testes para ser lanada. Resumindo a distribuio pronta
para ser usada com toda a segurana.
19.4 Como obter a Debian
A instalao da distribuio pode ser obtida atravs de Download de ftp://ftp.debian.
org//debian/dists/stable/main/disks-i386 (para Intel x86), seus programas di-
versos esto disponveis em ftp://ftp.debian.org//debian/dists/stable/main/
binary-i386.
19.5 Programas de congurao
aptitude - Seleciona pacote para instalao/desinstalao
Captulo 19. A distribuio Debian GNU/Linux 240
pppconfig - Congura o computador para se conectar a Internet usando conexo dis-
cada. Aps isto, use pon para se conectar a Internet, poff para se desconectar e plog
para monitorar a conexo.
pppoeconf - Congura o computador para conectar a internet usando ADSL
modconf - Permite selecionar os mdulos que sero automaticamente carregados na ini-
cializao do sistema. Se requerido pelos mdulos os parmetros I/O, IRQ e DMA tam-
bm podem ser especicados.
shadowconfig - Permite ativar ou desativar o suporte a senhas ocultas (shadow pass-
word). Com as senhas ocultas ativadas, as senhas criptografadas dos usurios e grupos
so armazenadas nos arquivos shadow e gshadow respectivamente, que somente po-
dem ser acessadas pelo usurio root.
Isto aumenta consideravelmente a segurana do sistema pois os arquivos passwd e
group contm dados de usurios que devem ter permisso de leitura de todos os
usurios do sistema.
tasksel - Permite selecionar/modicar de forma fcil a instalao de pacotes em seu
sistema atravs da funo que sua mquina ter ou do seu perl de usurio.
tzconfig - Permite modicar/selecionar o fuso-horrio usado na distribuio.
Alm destes, a Debian conta com o sistema de congurao baseado no dpkg-reconfigure
que permite congurar de forma fcil e rpida aspecto de pacotes: dpkg-reconfigure
xserver-xorg.
19.6 Arquivos de inicializao
Os arquivos de inicializao da distribuio Debian (e baseadas nela) esto localizados no
diretrio /etc/init.d. Cada daemon (programa residente na memria) ou congurao
especca possui um arquivo de onde pode ser ativado/desativado. Os sistemas residentes
neste diretrio no so ativados diretamente, mas simatravs de links existentes nos diretrios
/etc/rc?.d onde cada diretrio consiste em um nvel de execuo do sistema (veja tambm
a Nveis de Execuo on the next page).
Por padro, voc pode usar as seguintes palavras chaves com os arquivos de congurao:
start - Inicia o daemon ou executa a congurao
stop - Interrompe a execuo de um daemon ou desfaz a congurao feita anterior-
mente (se possvel).
restart - Reinicia a execuo de um daemon. equivalente ao uso de stop e start
mas se aplicam somente a alguns daemons e conguraes, que permitem a interrupo
de execuo e reinicio.
Por exemplo, para recongurar as interfaces de rede do computador, podemos utilizar os
seguintes comandos:
Captulo 19. A distribuio Debian GNU/Linux 241
cd /etc/init.d
./networking restart
19.7 Nveis de Execuo
Os Nveis de execuo (run levels) so diferentes modos de funcionamento do GNU/Linux com
programas, daemons e recursos especcos. Em geral, os sistemas GNU/Linux possuem sete
nveis de execuo numerados de 0 a 6. O daemon init o primeiro programa executado no
GNU/Linux (veja atravs do ps ax|grep init) e responsvel pela carga de todos daemons
de inicializao e congurao do sistema.
O nvel de execuo padro em uma distribuio GNU/Linux denido atravs do arquivo
de congurao do /etc/inittab (Arquivo /etc/inittab on page 306) atravs da linha
id:2:initdefault:
19.7.1 Entendendo o funcionamento dos nveis de execuo do sistema (runlevels)
Os nvel de execuo atual do sistema pode ser visualizado atravs do comando runlevel e
modicado atravs dos programas init ou telinit. Quando executado, o runlevel l o
arquivo /var/run/utmp e adicionalmente lista o nvel de execuo anterior ou a letra N em
seu lugar (caso ainda no tenha ocorrido a mudana do nvel de execuo do sistema).
Na Debian, os diretrios /etc/rc0.d a /etc/rc6.d contm os links simblicos para ar-
quivos em /etc/init.d que so acionados pelo nvel de execuo correspondente.
Por exemplo, o arquivo S10sysklogd em /etc/rc2.d, um link simblico para /etc
/init.d/sysklogd.
O que aconteceria se voc removesse o arquivo /etc/rc2.d/S10sysklogd? Simplesmente
o daemon sysklogd deixaria de ser executado no nvel de execuo 2 do sistema (que o
padro da Debian).
A Debian segue o seguinte padro para denir se um link simblico em /etc/rc[0-6].d
iniciar ou interromper a execuo de um servio em /etc/init.d, que o seguinte:
Se um link iniciado com a letra K (kill), quer dizer que o servio ser interrompido
naquele nvel de execuo. Oque ele faz executar o daemon em/etc/init.d seguido
de stop.
Se um link iniciado com a letra S (start), quer dizer que o servio ser iniciado naquele
nvel de execuo ( equivalente a executar o daemon seguido de start).
Primeiro os links com a letra K so executado e depois os S. A ordem que os links so executa-
dos dependem do valor numrico que acompanha o link, por exemplo, os seguintes arquivos
so executados em seqncia:
S10sysklogd
Captulo 19. A distribuio Debian GNU/Linux 242
S12kerneld
S20inetd
S20linuxlogo
S20logoutd
S20lprng
S89cron
S99xdm
Note que os arquivos que iniciam com o mesmo nmero (S20
*
) so executados alfabetica-
mente. O nvel de execuo do sistema pode ser modicado usando-se o comando init ou
telinit. Os seguinte nveis de execuo esto disponveis na Debian:
0 - Interrompe a execuo do sistema. todos os programas e daemons nalizados.
acionado pelo comando shutdown -h
1 - Modo monousurio, til para manuteno dos sistema.
2 - Modo multiusurio (padro da Debian)
3 - Modo multiusurio
4 - Modo multiusurio
5 - Modo multiusurio com login grco
6 - Reinicializao do sistema. Todos os programas e daemons so encerrados e o sis-
tema reiniciado. acionado pelo comando shutdown -r e o pressionamento de
CTRL+ALT+DEL.
Por exemplo, para listar o nvel de execuo atual do sistema digite: runlevel. O runlevel
dever listar algo como:
N 2
Agora para mudar para o nvel de execuo 1, digite: init 3. Agora conra a mudana
digitando: runlevel. Voc dever ver este resultado:
2 3
Isto quer dizer que o nvel de execuo anterior era o 2 e o atual o 3.
19.8 Rede no sistema Debian
O local que contm as conguraes de rede em um sistema Debian o /etc
/network/interfaces. O formato deste arquivo descrito em Arquivo /etc/network
/interfaces on page 300.
Captulo 19. A distribuio Debian GNU/Linux 243
19.9 Bug tracking system
o sistema para relatar bugs e enviar sugestes sobre a distribuio. Para relatar um bug
primeiro voc deve saber ingls ( a lngua universal entendida pelos desenvolvedores) e ver-
icar se o bug j foi relatado. O Debian Bug tracking system pode ser acessado pelo endereo:
http://bugs.debian.org/.
Para relatar uma falha/sugesto, envie um e-mail para: <submit@bugs.debian.org>, com
o assunto referente a falha/sugesto que deseja fazer e no corpo da mensagem:
Package: pacote
Severity: normal/grave/wishlist
Version: verso do pacote
E o relato do problema
O bug ser encaminhado diretamente ao mantenedor do pacote que vericar o problema re-
latado. Os campos Package e Severity so obrigatrios para denir o nome do pacote (para
enderear o bug para a pessoa correta) e verso do pacote (esta falha pode ter sido relatada e
corrigida em uma nova verso).
19.10 Onde encontrar a Debian para Download?
No endereo ftp://ftp.debian.org/. Outros endereos podem ser obtidos na pgina
ocial da Debian (http://www.debian.org/) clicando no link Download e mirrors.
A distribuio Etch (4.0) completa, com 18830 pacotes ocupa em torno de 10 GB. Voc tam-
bm pode optar por fazer a instalao dos pacotes opcionais via Internet atravs do mtodo
apt. Para detalhes veja o guia do dselect ou envie uma mensagem para a lista de dis-
cusso <debian-user-portuguese@lists.debian.org> (veja Listas de discusso on
page 380 para detalhes).
19.11 Lista de pacotes para uma instalao rpida e manual
Esta seo contm uma lista de pacotes necessrios que atendem a maioria dos usurios nor-
mais da Debian em um sistema padro sem desperdcio de espao e sabendo exatamente o
que est instalando.
Estou assumindo que voc concluiu a instalao da Debian 3.0 (Woody) mas preferiu pular o
passo de seleo de pacotes do dselect e fazer uma instalao manual.
A lista de pacotes est dividida por categorias e voc precisa ter o programa apt congurado
corretamente para que os comandos funcionem (veja apt on page 250 para detalhes).
Se pretende usar a lista de pacotes para fazer a instalao da Debian emmuitos computadores,
voc tem duas opes:
Captulo 19. A distribuio Debian GNU/Linux 244
1 Copiar o contedo das sees que seguem e fazer um script de instalao personalizado
para automatizar a instalao de pacotes da Debian em outras mquinas
2 Aps a instalao dos pacotes no computador, utilize o comando
dpkg --get-selections >Lista-Pacotes.txt para gerar o arquivo
Lista-Pacotes.txt contendo a lista de pacotes instalados. Ento no computador
que pretende fazer a instalao de pacotes, use o comando dpkg --set-selections
<Lista-Pacotes.txt e ento digitar apt-get -f install ou escolher a opo
Install no dselect.
Para mais detalhes veja Mostrando a lista de pacotes do sistema on page 249 e a Obtendo
uma lista de pacotes para instalar no sistema on page 250. importante usar o comando
apt-get clean aps a instalao de pacotes para remover os pacotes baixados pelo apt de
/var/cache/apt/archives (exceto na instalao de pacotes atravs do disco rgido local).
19.11.1 Pacotes Bsicos (Altamente Recomendado)
apt-get install cpio info libident libncurses4 man-db manpages whois nvi
hdparm mc exim linuxlogo less kbd mutt bzip2
cron gpm libstdc++2.10
19.11.2 Compilao do Kernel e programas em linguagem C
apt-get install perl, gcc libc6-dev bin86 make
Se pretender utilizar o kernel-package para compilar o kernel mais facilmente, ento voc
precisar dos seguintes pacotes:
apt-get install kernel-package dpkg-dev
Veja Recompilando o Kernel on page 211 para entender como compilar seu prprio kernel.
19.11.3 X11 (bsico)
apt-get install xbase-clients xserver-xorg xfonts-75dpi xfonts-base
xserver-common xterm xfstt xdm
Caso suas fontes sejammostradas emtamanho exagerado, remova o pacotes xfonts-100dpi
ou ajuste a seo Files do arquivo /etc/X11/xorg.conf apropriadamente.
19.11.4 Window Managers para o X
apt-get install wmaker wmakerconf wmaker-data wmavload
eterm enlightenment enlightenment-theme-bluesteel asclock
afterstep
Captulo 19. A distribuio Debian GNU/Linux 245
OBS: Existem tambm gerenciadores de seo como o gnome, kde, ocupam bastante espao
em disco
19.11.5 Impresso (texto e grco com sistema de spool)
apt-get install lprng magicfilter gs gsfonts
19.11.6 Som (mixer, mp3, Midi, wav, CD-Player)
xmms playmidi cam aumix alsa-base alsa-oss alsamixergui xmcd sox
19.11.7 Programas de Internet (clientes)
apt-get install xchat gaim firefox fetchmail procmail mime-support
19.11.8 Acessrios
apt-get install gimp gimp-nonfree gnotepad openoffice freefont
19.11.9 Rede
apt-get install finger, talk, talkd, telnet
Captulo 19. A distribuio Debian GNU/Linux 246
247
Captulo 20
Sistema de gerenciamento de pacotes
Este captulo ensina a operao bsica do programa de manipulao de pacotes Debian, a
instalao, remoo, consulta e checagem de arquivos .deb.
20.1 dpkg
O dpkg (Debian Package) o programa responsvel pelo gerenciamento de pacotes em sis-
temas Debian. Sua operao feita em modo texto e funciona atravs de comandos, assim
caso deseje uma ferramenta mais amigvel para a seleo e instalao de pacotes, prera o
dselect (que um front-end para o dpkg) ou o apt (veja apt on page 250).
dpkg muito usado por usurios avanados da Debian e desenvolvedores para ns de insta-
lao, manuteno e construo de pacotes.
20.1.1 Pacotes
Pacotes Debian so programas colocados dentro de um arquivo identicados pela exten-
so .deb incluindo arquivos necessrios para a instalao do programa, um sistemas de
listagem/checagem de dependncias, scripts de automatizao para remoo parcial/total do
pacote, listagem de arquivos, etc.
Um nome de pacote tem a forma nome-verso_reviso.deb
20.1.2 Instalar pacotes
Use o comando: dpkg -i [NomedoPacote] (ou install) para instalar um pacote em seu sis-
tema. Talvez ele pea que seja instalado algum pacote que depende para seu funcionamento.
Para detalhes sobre dependncias veja Dependncias on the following page. preciso especi-
car o nome completo do pacote (com a verso e reviso).
Captulo 20. Sistema de gerenciamento de pacotes 248
20.1.3 Dependncias
Dependncias so pacotes requeridos para a instalao de outro pacote. Na Debian cada pa-
cote contm um programa com uma certa funo. Por exemplo, se voc tentar instalar o pacote
de edio de textos supertext que usa o programa sed, voc precisar vericar se o pacote
sed est instalado em seu sistema antes de tentar instalar o supertext, caso contrrio, o pa-
cote supertext pedir o sed e no funcionar corretamente. Note que o pacote supertext
apenas umexemplo e no existe (pelo menos at agora :-). Oprograma dselect faz o trabalho
de checagem de dependncias automaticamente durante a instalao dos pacotes.
A colocao de cada programa em seu prprio pacote parece ser uma diculdade a mais para
a instalao manual de umcerto programa. Mas para os desenvolvedores que mantmos mais
de 25000 pacotes existentes na distribuio Debian, um ponto fundamental, porque no
preciso esperar uma nova verso do supertext ser lanada para instalar a verso mais nova
do pacote sed. Por este motivo tambm uma vantagem para o usurio.
20.1.4 Listar pacotes existentes no sistema
Use o comando: dpkg -l [pacote] (list) para isto.
Na listagem de pacotes tambm ser mostrado o status de cada um na coluna da esquerda,
acompanhado do nome do pacote, verso e descrio bsica. Caso o nome do [pacote] seja
omitido, todos os pacotes sero listados.
recomendado usar dpkg -l|less para ter um melhor controle da listagem (pode ser longa
dependendo da quantidade de programas instalados).
20.1.5 Removendo pacotes do sistema
Use o comando: dpkg -r NomedoPacote (remove) para remover um pacote do sistema
completamente. Somente necessrio digitar o nome e verso do pacote que deseja remover,
no sendo necessrio a reviso do pacote.
O comando dpkg -r no remove os arquivos de congurao criados pelo programa. Para
uma remoo completa do programa veja Removendo completamente um pacote on the cur-
rent page.
20.1.6 Removendo completamente um pacote
Use o comando: dpkg -P [NomedoPacote|-a] (purge) para remover umpacote e todos os
diretrios e arquivos de congurao criados. No necessrio especicar a reviso do pacote.
Ocomando dpkg--purge pode ser usado aps uma remoo normal do pacote (usando dpkg
-r).
Caso voc usar diretamente o comando dpkg --purge, dpkg primeiro remover o pacote
normalmente (como explicado em Removendo pacotes do sistema on this page) e aps re-
movido apagar todos os arquivos de congurao.
Captulo 20. Sistema de gerenciamento de pacotes 249
Caso especique a opo -a (ou sua equivalente pending) no lugar do nome do pacote, todos
os pacotes marcados para remoo sero removidos completamente do sistema.
Note que o dpkg --purge somente remove arquivos de congurao conhecidos pelo pacote.
Em especial, os arquivos de congurao criados para cada usurio do sistema devem ser
removidos manualmente. Seria pedir demais que o dpkg tambm conhecesse os usurios de
nosso sistema ;-).
20.1.7 Mostrar descrio do pacote
Use o comando: dpkg -I NomedoPacote (info) para mostrar a descrio do pacote. En-
tre a descrio so mostradas as dependncias do pacote, pacotes sugeridos, recomendados,
descrio do que o pacote faz, tamanho e nmero de arquivos que contm.
20.1.8 Procura de pacotes atravs do nome de um arquivo
Use o comando: dpkg -S arquivo (search) para saber de qual pacote existente no sistema
o arquivo pertence.
20.1.9 Status do pacote
Use o comando: dpkg -s pacote (status) para vericar o status de um pacote em seu sis-
tema, se esta ou no instalado, congurado, tamanho, dependncias, maintainer, etc.
Se o pacote estiver instalado no sistema, o resultado ser parecido com o do comando dpkg
-c [pacote] (contents).
20.1.10 Procurando pacotes com problemas de instalao
A checagem de pacotes com este tipo de problema pode ser feita atravs do comando:
dpkg -C (audit)
Ser listado todos os pacotes comalgumtipo de problema, verique os detalhes do pacote com
dpkg -s para decidir como corrigir o problema.
20.1.11 Mostrando a lista de pacotes do sistema
Use o comando:
dpkg --get-selections
para obter uma lista de seleo dos pacotes em seu sistema. A listagem mostrada
na sada padro, que pode ser facilmente redirecionada para um arquivo usando dpkg
--get-selections >dpkg.lista.
Captulo 20. Sistema de gerenciamento de pacotes 250
A listagem obtida com este comando muito til para repetir os pacotes usados no sistema
usando o dpkg --set-selections.
20.1.12 Obtendo uma lista de pacotes para instalar no sistema
Use o comando:
dpkg --set-selections <arquivo
para obter a lista de pacotes que sero instalados no sistema. O uso do dpkg
--get-selections e dpkg --set-selections muito til durante uma necessidade de
reinstalao do sistema GNU/Linux ou repetir a instalao em vrias mquinas sem precisar
selecionar algumas dezenas entre os milhares de pacotes no dselect.
Aps obter a lista com dpkg --get-selections, use dpkg --set-selections
<arquivo e ento entre no dselect e escolha a opo INSTALL, todos os pacotes obtidos
via dpkg --set-selections sero automaticamente instalados.
20.1.13 Congurando pacotes descongurados
Pacotes esto descongurados quando, por algum motivo, a instalao do mesmo no foi con-
cluda com sucesso. Pode ter faltado alguma dependncia, acontecido algum erro de leitura
do arquivo de pacote, etc. Quando um erro deste tipo acontece, os arquivos necessrios pelo
pacote podem ter sido instalados, mas os scripts de congurao ps-instalao no so exe-
cutados.
Use o comando:
dpkg --configure [NomedoPacote]
Para congurar um pacote. O NomedoPacote no precisa conter a reviso do pacote e extenso.
20.1.14 Listando arquivos de um pacote
Use o comando: dpkg -c arquivo (contents) para obter a listagem dos arquivos contidos
no pacote. necessrio digitar o nome completo do pacote. O comando dpkg -c til para
listarmos arquivos de pacotes que no esto instalados no sistema.
Para obter a listagem de arquivos de pacotes j instalados no sistema, use o comando: dpkg
-L arquivo. necessrio digitar somente o nome do pacote (sem a reviso e extenso).
20.2 apt
O apt sistema de gerenciamento de pacotes de programas que possui resoluo automtica
de dependncias entre pacotes, mtodo fcil de instalao de pacotes, facilidade de operao,
permite atualizar facilmente sua distribuio, etc. Ele funciona atravs de linha de comando
Captulo 20. Sistema de gerenciamento de pacotes 251
sendo bastante fcil de usar. Mesmo assim, existem interfaces grcas para o apt como o
synaptic (modo grco) e o aptitude (modo texto) que permitem poderosas manipulaes
de pacotes sugeridos, etc.
O apt pode utilizar tanto com arquivos locais como remotos na instalao ou atualizao,
desta maneira possvel atualizar toda a sua distribuio Debian via ftp ou http comapenas
2 simples comandos!
recomendvel o uso do mtodo apt no programa dselect pois ele permite a ordem correta
de instalao de pacotes e checagem e resoluo de dependncias, etc. Devido a sua facilidade
de operao, o apt o mtodo preferido para os usurios manipularem pacotes da Debian.
O apt exclusivo da distribuio Debian e distribuies baseadas nela e tem por objetivo
tornar a manipulao de pacotes poderosa por qualquer pessoa e tem dezenas de opes que
podemser usadas emsua execuo ou conguradas no arquivo /etc/apt/apt.conf. Expli-
carei aqui como fazer as aes bsicas com o apt, portanto se desejar maiores detalhes sobre
suas opes, veja a pgina de manual apt-get.
20.2.1 O arquivo /etc/apt/sources.list
Este arquivo contm os locais onde o apt encontrar os pacotes, a distribuio que ser ver-
icada (stable, testing, unstable, Woody, Sarge) e a seo que ser copiada (main, non-free,
contrib, non-US).
Woody(Debian 3.0) e Sarge(Debian 3.1) so os nomes das verses enquanto stable e unstable
so links para as verses estvel e testing respectivamente. Se desejar usar sempre uma dis-
tribuio estvel (como a Woody), modique o arquivo sources.list e coloque Woody como
distribuio. Caso voc desejar estar sempre atualizado mas uma pessoa cuidadosa e deseja
ter sempre a ltima distribuio estvel da Debian, coloque stable como verso. Assim que a
nova verso for lanada, os links que apontam de stable para Woody sero alterados apontando
para Sarge e voc ter seu sistema atualizado.
Abaixo um exemplo simples de arquivo /etc/apt/sources.list com explicao das
sees:
deb http://www.debian.org/debian stable main contrib non-free
deb http://nonus.debian.org/debian-non-US stable non-US
Voc pode interpretar cada parte da seguinte maneira:
deb - Identica um pacote da Debian. A palavra deb-src identica o cdigo fonte.
http://www.debian.org/debian - Mtodo de acesso aos arquivos da Debian, site
e diretrio principal. O caminho pode ser http://, ftp://, file:/.
stable - Local onde sero procurados arquivos para atualizao. Voc pode tanto usar
o nome de sua distribuio (Woody, Sarge) ou sua classicao (stable, testing ou unstable.
Note que unstable recomendada somente para desenvolvedores, mquinas de testes e
se voc temconhecimentos para corrigir problemas. Nunca utilize unstable emambientes
de produo ou servidores crticos, use a stable.
Captulo 20. Sistema de gerenciamento de pacotes 252
main contrib non-us - Sees que sero vericadas no site remoto.
Note que tudo especicado aps o nome da distribuio ser interpretado como sendo as
sees dos arquivos (main, non-free, contrib, non-US). As linhas so processadas na ordem
que esto no arquivo, ento recomendvel colocar as linhas que fazem referncia a pacotes
locais primeiro e mirrors mais perto de voc para ter um melhor aproveitamento de banda. O
caminho percorrido pelo apt para chegar aos arquivos ser o seguinte:
http://www.debian.org/debian/dists/stable/main/binary-i386
http://www.debian.org/debian/dists/stable/non-free/binary-i386
http://www.debian.org/debian/dists/stable/contrib/binary-i386
Voc notou que o diretrio dists foi adicionado entre http: //www.debian.org/debian
e stable, enquanto as sees main, non-free e contrib so processadas separadamente e -
nalizando com o caminho binary-[arquitetura], onde [arquitetura] pode ser i386, alpha,
sparc, powerpc, arm, etc. dependendo do seu sistema. Entendendo isto, voc poder manipular
o arquivo sources.list facilmente.
OBS: Caso tenha mais de uma linha em seu arquivo sources.list de onde um pacote pode
ser instalado, ele ser baixado da primeira encontrada no arquivo. recomendvel colocar
primeiro repositrios locais ou mais perto de voc, como recomendado nesta seo.
Endereos de servidores e mirrors nacionais da Debian
Segue abaixo uma relao de servidores que podem ser colocados em seu arquivo
sources.list:
Endereo Diretrio Principal
-------- --------- ---------
ftp://ftp.debian.org.br /debian
ftp://ftp.br.debian.org /debian
ftp://ftp.debian.org /debian
ftp://download.sourceforge.net /debian
ftp://ftp.quimica.ufpr.br /debian
ftp://download.unesp.br /linux/debian
Um modelo de arquivo sources.list
Voc pode copiar o modelo do sources.list abaixo para ser usado em sua distribuio
Stable ou personaliza-lo modicando a distribuio utilizada e servidores:
# Arquivos principais da stable
deb ftp://ftp.debian.org.br/debian stable main non-free contrib
Captulo 20. Sistema de gerenciamento de pacotes 253
# Non-US da Stable
deb ftp://ftp.debian.org.br/debian-non-US stable/non-US main non-free contrib
# Atualizaes propostas para Stable main e non-US
deb ftp://ftp.debian.org.br/debian dists/proposed-updates/
deb ftp://ftp.debian.org.br/debian-non-US dists/proposed-updates/
# Atualizaes de segurana da Stable
deb ftp://nonus.debian.org/debian-security stable/updates main
# Ximian um conjunto de pacotes atualizados freqentemente e compatveis
# com a distribuio Debian. Entre estes programas esto o Gimp 1.2 e outros
# mais atuais e compatveis com a Debian. Para usa-los inclua a seguinte linha no
# seu sources.list
# deb ftp://spidermonkey.ximian.com/pub/red-carpet/binary/debian-22-i386/ ./
# Kde 1 e 2
# deb ftp://kde.tdyc.com/pub/kde/debian woody main crypto optional qt1apps
20.2.2 O arquivo /etc/apt/apt.conf
Voc pode especicar opes neste arquivo que modicaro o comportamento do programa
apt durante a manipulao de pacotes (ao invs de especicar na linha de comando). Se
estiver satisfeito com o funcionamento do programa apt, no necessrio modica-lo. Para
detalhes sobre o formato do arquivo, veja a pgina de manual do apt.conf. Na pgina de
manual do apt-get so feitas referncias a parmetros que podem ser especicados neste
arquivo ao invs da linha de comando.
20.2.3 Copiando a lista de pacotes disponveis
O apt utiliza uma lista de pacotes para vericar se os pacotes existentes no sistema precisam
ou no ser atualizados. A lista mais nova de pacotes copiada atravs do comando apt-get
update.
Este comando pode ser usado com alguma freqncia se estiver usando a distribuio stable
e sempre se estiver usando a unstable (os pacotes so modicados com muita freqncia).
Sempre utilize o apt-get update antes de atualizar toda a distribuio.
20.2.4 Utilizando CDs ociais/no-ociais/terceiros com o apt
Para usar CDs da Debian ou de programas de terceiros, use o seguinte comando com cada
um dos CDs que possui:
apt-cdrom add
Captulo 20. Sistema de gerenciamento de pacotes 254
Este comando adicionar automaticamente uma linha para cada CD no arquivo /etc/apt
/sources.list e atualizar a lista de pacotes em /var/state/apt/lists. Por padro, a
unidade acessada atravs de /cdrom usada. Use a opo -d /dev/scd? para especicar
um outra unidade de CDs (veja Identicao de discos e parties em sistemas Linux on
page 85 para detalhes sobre essa identicao).
Durante a instalao de umnovo programa, o apt pede que o CDcorrespondente seja inserido
na unidade e pressionado <Enter> para continuar. O mtodo acesso do apt atravs de CDs
inteligente o bastante para instalar todos os pacotes necessrios daquele CD, instalar os pacotes
do prximo CD e iniciar a congurao aps instalar todos os pacotes necessrios.
Observao: - CDs de terceiros ou contendo programas adicionais tambm podem ser usa-
dos com o comando apt-cdrom add.
20.2.5 Instalando novos pacotes
Use o comando apt-get install [pacotes] para instalar novos pacotes em sua dis-
tribuio. Podem ser instalados mais de um pacotes ao mesmo tempo separando os nomes
por espaos. Somente preciso especicar o nome do pacote (sem a verso e reviso).
Se preciso, o apt instalar automaticamente as dependncias necessrias para o funciona-
mento correto do pacote. Quando pacotes alm do solicitado pelo usurio so requeridos para
a instalao, o apt mostrar o espao total que ser usado no disco e perguntar ao usurio se
ele deseja continuar. Aps a instalao, o pacote ser automaticamente congurado pelo dpkg
para ser executado corretamente em seu sistema.
20.2.6 Removendo pacotes instalado
Use o comando apt-get remove [pacotes] para remover completamente um pacote do
sistema. Podem ser removidos mais de um pacote ao mesmo tempo separando os nomes dos
pacotes com espaos. O apt-get remove remove completamente o pacote mas mantm os
arquivos de congurao, exceto se for adicionada a opo --purge.
preciso especicar somente o nome do pacote (sem a verso e reviso).
20.2.7 Atualizando sua distribuio
O apt tem uma grande caracterstica: Atualizar toda a sua distribuio de uma forma in-
teligente e segura. O apt l a listagem de pacotes disponveis no servidor remoto, verica
quais esto instalados e suas verses, caso a verso do pacote seja mais nova que a j instalada
em seu sistema, o pacote ser imediatamente atualizado.
A cpia dos arquivos pelo apt pode ser feita via FTP, HTTP ou atravs de uma cpia local
dos arquivos no disco rgido (um mirror local). Em nenhuma circunstncia os pacotes exis-
tentes em seu sistema sero removidos ou sua congurao apagada durante umupgrade na
distribuio.
Captulo 20. Sistema de gerenciamento de pacotes 255
Os arquivos de congurao em /etc que foram modicados so identicados e podem ser
mantidos ou substitudos por verses existentes nos pacotes que esto sendo instalado, esta
escolha feita por voc. Se estiver atualizando a Debian Potato (2.2) para Woody (3.0) (ou
verso superior), execute os seguintes comandos antes de iniciar a atualizao:
export LANG=C
export LC_ALL=C
export LC_MESSAGES=C
para retornar as variveis de localizao ao valor padro (ingls). Isto necessrio por causa
de modicaes no sistema de locales, e o excesso de mensagens de erro do perl causaram
alguns problemas em meus testes.
Aps isto, a atualizao da distribuio Debian pode ser feita atravs de dois simples coman-
dos:
apt-get update #Para atualizar a lista de pacotes (obrigatrio)
apt-get -f dist-upgrade #Para atualizar a distribuio
A opo -f faz com que o apt verique e corrija automaticamente problemas de de-
pendncias entre pacotes. Recomendo executa o comando apt-get -f --dry-run
dist-upgrade|less para ver o que vai acontecer sem atualizar a distribuio, se tudo ocor-
rer bem, retire o --dry-run e v em frente.
A distribuio usada na atualizao pode ser:
Para a mesma verso que utiliza - Para quem deseja manter os pacotes sempre
atualizados entre revises, copiar pacotes que contm correes para falhas de segurana
(veja a pgina web em http://www.debian.org/ para acompanhar o boletim de se-
gurana).
Para uma distribuio stable - Mesmo que o acima, mas quando uma nova dis-
tribuio for lanada, o link simblico de stable ser apontado para prxima distribuio,
atualizando instantaneamente seu sistema.
Para a distribuio testing - Atualiza para a futura distribuio Debian que
ser lanada, como a unstable, mas seus pacotes passam por um perodo de testes de 2
semanas na unstable antes de serem copiados para esta.
unstable - Verso em desenvolvimento, recomendada somente para desenvolvedores
ou usurios que conhecem a fundo o sistema GNU/Linux e saibam resolver eventuais
problemas que apaream. A unstable uma distribuio em constante desenvolvimento
e podem haver pacotes problemticos ou com falhas de segurana. Aps o perodo de
desenvolvimento, a distribuio unstable se tornar frozen.
frozen - Verso congelada, nenhum pacote novo aceito e somente so feitas correes
de falhas. Aps todas as falhas estarem corrigidas, a distribuio frozen se tornar
stable
A distribuio que ser usada na atualizao pode ser especicada no arquivo /etc/apt
/sources.list (veja a seo correspondente acima). Caso o mtodo de atualizao usado
seja via HTTP ou FTP, ser necessrio usar o comando apt-get clean para remover os pa-
cotes copiados para seu sistema (para detalhes veja a seo seguinte).
Captulo 20. Sistema de gerenciamento de pacotes 256
20.2.8 Removendo pacotes baixados pelo apt
Use o comando apt-get clean para apagar qualquer arquivo baixado durante uma atual-
izao ou instalao de arquivos com o apt. Os arquivos baixados residem em /var/cache
/apt/archives (download completo) e /var/cache/apt/archives/partial (arquivos
sendo baixados - parciais).
Este local de armazenamento especialmente usado com o mtodo http e ftp para armazena-
mento de arquivos durante o download para instalao (todos os arquivos so primeiro copi-
ados para serem instalados e congurados).
O apt-get clean automaticamente executado caso seja usado o mtodo de acesso apt do
dselect.
20.2.9 Procurando por pacotes atravs da descrio
O utilitrio apt-cache pode ser usado para esta funo. Ele tambm possui outras utilidades
interessante para a procura e manipulao da lista de pacotes.
Por exemplo, o comando apt-cache search clock mostrar todos os pacotes que pos-
suem a palavra clock na descrio do pacote.
20.2.10 Procurando um pacote que contm determinado arquivo
Suponha que algum programa esteja lhe pedindo o arquivo perlcc e voc no tem a mnima
idia de que pacote instalar no seu sistema. O utilitrio auto-apt pode resolver esta situao.
Primeiro instale o pacote auto-apt e execute o comando auto-apt update para que ele
copie o arquivo Contents-i386.gz que ser usado na busca desses dados.
Agora, basta executar o comando:
auto-apt search perlcc
para que ele retorne o resultado:
usr/bin/perlcc interpreters/perl
O pacote que contm este arquivo o perl e se encontra na seo interpreters dos ar-
quivos da Debian. Para uma pesquisa que mostra mais resultados (como auto-apt search
a2ps), interessante usar o grep para ltrar a sada:
auto-apt search a2ps|grep bin/
usr/bin/psmandup text/a2ps
usr/bin/pdiff text/a2ps
Captulo 20. Sistema de gerenciamento de pacotes 257
usr/bin/psset text/a2ps
usr/bin/composeglyphs text/a2ps
usr/bin/a2psj text/a2ps-perl-ja
usr/bin/a2ps text/a2ps
usr/bin/fixps text/a2ps
usr/bin/ogonkify text/a2ps
usr/bin/fixnt text/a2ps
usr/bin/card text/a2ps
usr/bin/texi2dvi4a2ps text/a2ps
Sero mostrados somente os binrios, diretrios de documentao, manpages, etc. no sero
mostradas.
20.2.11 Modos ecazes de compilao do cdigo fonte para a Debian
ODebian como qualquer distribuio de Linux, possui o diretrio /usr/local que segundo
a FHS o local apropriado para colocao de programas que no fazem parte da distribuio,
que seria no caso o de fontes compilados manualmente. Um dos grandes trabalhos de quem
pega o cdigo fonte para compilao a instalao de bibliotecas de desenvolvimento para a
compilao ocorrer com sucesso.
O auto-apt facilita magicamente o processo de compilao da seguinte forma: durante
o passo ./configure no momento que pedida uma bibliotecas, dependncia, etc. o
auto-apt para o processo, busca por pacotes no repositrio da Debian, pergunta qual pa-
cote ser instalado (caso tenha mais de uma opo), instala e retorna o ./configure do ponto
onde havia parado.
Para fazer isso, execute o comando:
auto-apt run ./configure
E ele se encarregar do resto :-)
20.2.12 Vericando pacotes corrompidos
Use o comando apt-get check para vericar arquivos corrompidos. A correo feita au-
tomaticamente. A lista de pacotes tambm atualizada quando utiliza este comando.
20.2.13 Corrigindo problemas de dependncias e outros erros
Use o comando apt-get -f install (sem o nome do pacote) para que o apt-get veri-
que e corrija problemas com dependncias de pacotes e outros problemas conhecidos.
Captulo 20. Sistema de gerenciamento de pacotes 258
259
Captulo 21
Personalizao do Sistema
Este captulo ensina como personalizar algumas caractersticas de seu sistema GNU/Linux.
21.1 Variveis de Ambientes
um mtodo simples e prtico que permite a especicao de opes de congurao de
programas sem precisar mexer com arquivos no disco ou opes. Algumas variveis do
GNU/Linux afetamo comportamento de todo o Sistema Operacional, como o idioma utilizado
e o path (veja path on page 109) . Variveis de ambientes so nomes que contm algum valor
e tem a forma Nome=Valor. As variveis de ambiente so individuais para cada usurio do
sistema ou consoles virtuais e permanecem residentes na memria RAM at que o usurio saia
do sistema (logo-off) ou at que o sistema seja desligado.
As variveis de ambiente so visualizadas/criadas atravs do comando set ou echo $NOME
(apenas visualiza) e exportadas para o sistemas com o comando export NOME=VALOR.
Nos sistemas Debian, o local usado para especicar variveis de ambiente o /etc
/environment (veja Arquivo /etc/environment on page 262). Todas as variveis es-
pecicadas neste arquivos sero inicializadas e automaticamente exportadas na inicializao
do sistema.
Exemplo: Para criar uma varivel chamada TESTE que contenha o valor 123456 digite:
export TESTE=123456. Agora para ver o resultado digite: echo $TESTE ou set|grep
TESTE. Note que o $ que antecede o nome TESTE serve para identicar que se trata de uma
varivel e no de um arquivo comum.
21.2 Modicando o Idioma usado em seu sistema
O idioma usado em seu sistema pode ser modicado facilmente atravs das variveis de ambi-
ente. Atualmente a maioria dos programas esto sendo localizados. A localizao um recurso
que especica arquivos que contm as mensagens do programas em outros idiomas. Voc
Captulo 21. Personalizao do Sistema 260
pode usar o comando locale para listar as variveis de localizao do sistema e seus re-
spectivos valores. As principais variveis usadas para determinar qual idioma os programas
localizados utilizaro so:
LANG - Especica o idioma_PAIS local. Podem ser especicados mais de um idioma na
mesma varivel separando-os com :, desta forma caso o primeiro no esteja disponvel
para o programa o segundo ser vericado e assim por diante. A lngua Inglesa iden-
ticada pelo cdigo C e usada como padro caso nenhum locale seja especicado. Por
exemplo: export LANG=pt_BR, export LANG=pt_BR:pt_PT:C
LC_MESSAGES - Especica o idioma que sero mostradas as mensagens dos programas.
Seu formato o mesmo de LANG.
LC_ALL - Congura todas as variveis de localizao de uma s vez. Seu formato o
mesmo de LANG.
As mensagens de localizao esto localizadas em arquivos individuais de cada programa
em /usr/share/locale/[Idioma]/LC_MESSAGES . Elas so geradas atravs de arquivos
potfiles (arquivos com a extenso .po ou .pot e so gerados catlogos de mensagens .mo.
As variveis de ambiente podem ser especicadas no arquivo /etc/environment desta
forma as variveis sero carregadas toda a vez que seu sistema for iniciado. Voc tambm
pode especicar as variveis de localizao emseu arquivos de inicializao .bash_profile,
.bashrc ou .profile assim toda a vez que entrar no sistema, as variveis de localizao
personalizadas sero carregadas.
Siga as instrues a seguir de acordo com a verso de sua distribuio Debian:
Debian 4.0 Acrescente a linha pt_BR ISO-8859-1 no arquivo /etc/locale.gen, rode o
utilitrio locale-gen para gerar os locales. Agora acrescente as variveis de localizao
no arquivo /etc/locale.def seguindo a forma:
export LANG=pt_BR
export LC_ALL=pt_BR
export LC_MESSAGES=pt_BR
Note que o arquivo /etc/environment tambm pode ser usado para tal tarefa, mas
o locales.def foi criado especialmente para lidar com variveis de localizao na
Debian 4.0.
Para as mensagens e programas do X-Window usarem em seu idioma local, preciso colocar
as variveis no arquivo ~/.xserverrc do diretrio home de cada usurio e dar a permisso
de execuo neste arquivo (chmod 755 .xserverrc). Lembre-se de incluir o caminho com-
pleto do arquivo executvel do seu gerenciador de janelas na ltima linha deste arquivo (sem
o & no nal), caso contrrio o Xserver ser nalizado logo aps ler este arquivo.
Abaixo exemplos de localizao com as explicaes:
export LANG=pt_BR - Usa o idioma pt_BR como lngua padro do sistema. Caso o
idioma Portugues do Brasil no esteja disponvel, C usado (Ingls).
export LANG=C - Usa o idioma Ingls como padro ( a mesma coisa de no especicar
LANG, pois o idioma Ingls usado como padro).
export LANG=pt_BR:pt_PT:es_ES:C - Usa o idioma Portugus do Brasil como
padro, caso no esteja disponvel usa o Portugus de Portugal, se no estiver disponvel
usa o Espanhol e por m o Ingls.
LANG=es_ES ls --help - Executa apenas o comando ls --help usando o idioma
Captulo 21. Personalizao do Sistema 261
es_ES (sem alterar o locale do sistema).
recomendvel usar a varivel LC_ALL para especicar o idioma, desta forma todos os
outras variveis (LANG,MESSAGES,LC_MONETARY,LC_NUMERIC,LC_COLLATE,LC_CTYPE
eLC_TIME) sero conguradas automaticamente.
21.3 alias
Permite criar um apelido a um comando ou programa. Por exemplo, se voc gosta de digitar
(como eu) o comando ls --color=auto para ver uma listagem longa e colorida, voc pode
usar o comando alias para facilitar as coisas digitando: alias ls=ls --color=auto
(no se esquea da meia aspa para identicar o comando). Agora quando voc digitar ls, a
listagem ser mostrada com cores.
Se voc digitar ls -la, a opo -la ser adicionada no nal da linha de comando do alias:
ls --color=auto -la, e a listagem tambm ser mostrada em cores.
Se quiser utilizar isto toda vez que entrar no sistema, veja Arquivo .bash_profile on the
following page e Arquivo .bashrc on the next page.
21.4 Arquivo /etc/profile
Este arquivo contm comandos que so executados para todos os usurios do sistema no mo-
mento do login. Somente o usurio root pode ter permisso para modicar este arquivo.
Este arquivo lido antes do arquivo de congurao pessoal de cada usurio (.profile(root)
e .bash_profile).
Quando carregado atravs de um shell que requer login (nome e senha), o bash procura
estes arquivos em seqncia e executa os comandos contidos, caso existam:
1 /etc/profile
2 ~/.bash_profile
3 ~/.bash_login
4 ~/.profile
Ele interrompe a pesquisa assim que localiza o primeiro arquivo no diretrio do usurio
(usando a sequncia acima). Por exemplo, se voc tem o arquivo ~/.bash_login e ~
/.bash_profile em seu diretrio de usurio, ele processar o /etc/profile e aps
isto o ~/.bash_profile, mas nunca processar o ~/.bash_login (a menos que o ~
/.bash_profile seja apagado ou renomeado).
Caso o bash seja carregado atravs de um shell que no requer login (um terminal no X, por
exemplo), o seguinte arquivo executado: ~/.bashrc.
Observao: Nos sistemas Debian, o prole do usurio root est congurado no arquivo
/root/.profile. A razo disto porque se o bash for carregado atravs do comando sh,
ele far a inicializao clssica deste shell lendo primeiro o arquivo /etc/profile e aps o
~/.profile e ignorando o .bash_profile e .bashrc que so arquivos de congurao
Captulo 21. Personalizao do Sistema 262
usados somente pelo Bash. Exemplo, inserindo a linha mesg y no arquivo /etc/profile
permite que todos os usurios do sistema recebam pedidos de talk de outros usurios. Caso
um usurio no quiser receber pedidos de talk, basta somente adicionar a linha mesg n no
arquivo pessoal .bash_profile.
21.5 Arquivo .bash_profile
Este arquivo reside no diretrio pessoal de cada usurio. executado por shells que usam
autenticao (nome e senha). .bash_profile contm comandos que so executados para o
usurio no momento do login no sistema aps o /etc/profile. Note que este um arquivo
oculto pois tem um . no inicio do nome.
Por exemplo colocando a linha: alias ls=ls --colors=auto no .bash_profile,
cria um apelido para o comando ls -colors=auto usando ls, assim toda vez que voc
digitar ls ser mostrada a listagem colorida.
21.6 Arquivo .bashrc
Possui as mesmas caractersticas do .bash_profile mas executado por shells que no
requerem autenticao (como uma seo de terminal no X).
Os comandos deste arquivo so executados no momento que o usurio inicia um shell com as
caractersticas acima. Note que este um arquivo oculto pois tem um . no inicio do nome.
21.7 Arquivo .hushlogin
Deve ser colocado no diretrio pessoal do usurio. Este arquivo faz o bash pular as mensagens
do /etc/motd, nmero de e-mails, etc. Exibindo imediatamente o aviso de comando aps a
digitao da senha.
21.8 Arquivo /etc/environment
Armazena as variveis de ambiente que so exportadas para todo o sistema. Uma varivel
de ambiente controla o comportamento de um programa, registram detalhes teis durante a
seo do usurio no sistema, especicam o idioma das mensagens do sistema, etc.
Exemplo do contedo de um arquivo /etc/environment:
LANG=pt_BR
LC_ALL=pt_BR
LC_MESSAGES=pt_BR
Captulo 21. Personalizao do Sistema 263
21.9 Diretrio /etc/skel
Este diretrio contmos modelos de arquivos .bash_profile e .bashrc que sero copiados
para o diretrio pessoal dos usurios no momento que for criada uma conta no sistema. Desta
forma voc no precisar congurar estes arquivos separadamente para cada usurio.
Captulo 21. Personalizao do Sistema 264
265
Captulo 22
Impresso
Este capitulo descreve como imprimir em seu sistema GNU/Linux e as formas de impresso
via spool, rede, grca, etc.
Antes de seguir os passos descritos neste captulo, tenha certeza que seu kernel foi compilado
com o suporte a impressora USB e/ou paralela ativado, caso contrrio at mesmo a impresso
direta para a porta de impressora falhar. Para detalhes veja Recompilando o Kernel on
page 211 .
22.1 Portas de impressora
Uma porta de impressora o local do sistema usado para se comunicar com a impressora. Em
sistemas GNU/Linux, a porta de impressora paralela identicada como lp0,lp1,lp2 no di-
retrio /dev, caso a impressora seja USB, o dispositivo ser o mesmo, mas estar disponvel no
diretrio /dev/usb. Os dispositivos lp0,lp1elp2 correspondem respectivamente a LPT1,
LPT2 e LPT3 no DOS e Windows. Recomendo que o suporte a porta paralela esteja compilado
como mdulo no kernel.
22.2 Imprimindo diretamente para a porta de impressora
Isto feito direcionando a sada ou o texto com > diretamente para a porta de impressora no
diretrio /dev.
Supondo que voc quer imprimir o texto contido do arquivo trabalho.txt e a porta de
impressora em seu sistema /dev/usb/lp0, voc pode usar os seguintes comandos:
cat trabalho.txt >/dev/usb/lp0 - Direciona a sada do comando cat para a im-
pressora USB conectada em lp0.
cat <trabalho.txt >/dev/usb/lp0. Faz a mesma coisa que o acima.
cat -n trabalho.txt >/dev/usb/lp0 - Numera as linhas durante a impresso.
head -n 30 trabalho.txt >/dev/usb/lp0 - Imprime as 30 linhas iniciais do ar-
quivo.
Captulo 22. Impresso 266
cat trabalho.txt|tee /dev/usb/lp0 - Mostra o contedo do cat na tela e envia
tambm para a impressora USB.
Os mtodos acima servem somente para imprimir em modo texto (letras, nmeros e caracteres
semi-grcos).
OBS: Note que a impressora somente imprimir diretamente a partir da porta, caso ela seja uma
impressora comrmware interna (impressora inteligente). Algumas impressoras mais recentes
(principalmente os modelos mais baratos) somente imprimem caso estejam conguradas com
o respectivo driver (Win Printers ou impressoras via software), e nunca aceitaro o comando
diretamente para a porta de impresso. Para Win Printers, a melhor alternativa de congurao
de funcionamento ser atravs do CUPS (Common Unix Print System).
22.3 Imprimindo via spool
A impresso via spool (la de impresso) tem por objetivo liberar logo o programa do servio
que est fazendo a impresso deixando um outro programa especico tomar conta.
Este programa chamado de daemon de impresso, normalmente o lpr ou o lprng (recomen-
dado) em sistemas GNU/Linux.
Logo aps receber o arquivo que ser impresso, o programa de spool gera um arquivo tem-
porrio (normalmente localizado em /var/spool/lpd) que ser colocado em la para a im-
presso (umtrabalho ser impresso aps o outro, emseqncia). Oarquivo temporrio gerado
pelo programa de spool apagado logo aps concluir a impresso.
Antes de se imprimir qualquer coisa usando os daemons de impresso, preciso congurar
os parmetros de sua impressora no arquivo /etc/printcap. Um arquivo /etc/printcap
para uma impressora local padro se parece com o seguinte:
lp|Impressora compatvel com Linux
:lp=/dev/lp0
:sd=/var/spool/lpd/lp
:af=/var/log/lp-acct
:lf=/var/log/lp-errs
:pl#66
:pw#80
:pc#150
:mx#0
:sh
possvel tambm compartilhar a impressora para a impresso em sistemas remotos, isto ser
visto em uma seo separada neste guia.
Usando os exemplos anteriores da seo Imprimindo diretamente para uma porta
de impressora, vamos acelerar as coisas:
cat trabalho.txt |lpr - Direciona a sada do comando cat para o programa de
spool lpr.
Captulo 22. Impresso 267
cat <trabalho.txt |lpr. Faz a mesma coisa que o acima.
cat -n trabalho.txt |lpr - Numera as linhas durante a impresso.
head -n 30 trabalho.txt |lpr - Imprime as 30 linhas iniciais do arquivo.
A la de impresso pode ser controlada com os comandos:
lpq - Mostra os trabalhos de impresso atuais
lprm - Remove um trabalho de impresso
Ou usado o programa de administrao lpc para gerenciar a la de impresso (veja a pgina
de manual do lpc ou digite ? ao iniciar o programa para detalhes).
OBS1: Se a impressora no imprimir ou no for possvel compartilhar a porta de impres-
sora paralela com outros dispositivos (tal como o plip), verique se o mdulo parport_pc foi
carregado e com os valores de irq e I/O corretos (por exemplo, modprobe parport_pc
io=0x378 irq=7). Muitas vezes sua porta paralela pode funcionar sem problemas durante
a impresso, mas se ao utilizar plip ocorrerem erros, a causa pode ser essa. Na distribuio
Debian, use o programa modconf para congurar os valores permanentemente para o m-
dulo parport_pc.
OBS2: Se tiver mais de uma impressora instalada na mquina, ser necessrio especicar a
opo -P impressora para especicar qual impressora deseja imprimir/controlar.
22.4 Impresso em modo grco
A impresso em modo grco requer que conhea a marca e modelo de sua impressora e
os mtodos usados para imprimir seus documentos. Este guia abordar somente a segunda
recomendao :-)
22.4.1 Ghost Script
O mtodo mais usados pelos aplicativos do GNU/Linux para a impresso de grcos do Ghost
Script. O Ghost Script (chamado de gs) um interpretador do formato Pos Script (arquivos
.ps) e pode enviar o resultado de processamento tanto para a tela como impressora. Ele est
disponvel para diversas plataformas e sistema operacionais alm do GNU/Linux, inclusive o
DOS, Windows, OS/2, etc.
O formato .ps esta se tornando uma padronizao para a impresso de grcos em
GNU/Linux devido a boa qualidade da impresso, liberdade de congurao, gerenciamento
de impresso feito pelo gs e por ser um formato universal, compatveis com outros sistemas
operacionais.
Para imprimir um documento via Ghost Script, voc precisar do pacote gs, gsfonts (para
a distribuio Debian e distribuies baseadas, ou outros de acordo com sua distribuio
Linux) e suas dependncias. A distribuio Debian vem com vrios exemplos Pos Script no
diretrio /usr/share/doc/gs/example que so teis para o aprendizado e testes com o
Ghost Script.
Hora da diverso:
Captulo 22. Impresso 268
Copie os arquivos tiger.ps.gz e alphabet.ps.gz do diretrio /usr/share/doc
/gs/examples (sistemas Debian) para /tmp e descompacte-os com o comando gzip
-d tiger.ps.gz e gzip -d alphabet.ps.gz. Se a sua distribuio no possui
arquivos de exemplo ou voc no encontra nenhuma referncia de onde se localizam,
mande um e-mail que os envio os 2 arquivos acima (so 32Kb).
O Ghost Script requer um monitor EGA, VGA ou superior para a visualizao dos
seus arquivos (no tenho certeza se ele funciona com monitores CGA ou Hrcules
Monocromtico) . Para visualizar os arquivos na tela digite:
gs tiger.ps
gs alphabet.ps
Para sair do Ghost Script pressione CTRL+C. Neste ponto voc deve ter visto um de-
senho de umtigre e (talvez) letras do alfabeto. Se o comando gs alphabet.ps mostrou
somente uma tela embranco, voc se esqueceu de instalar as fontes do Ghost Script (esto
localizadas no pacote gsfonts na distribuio Debian).
Para imprimir o arquivo alphabet.ps use o comando:
gs -q -dSAFER -dNOPAUSE -sDEVICE=epson -r240x72 -sPAPERSIZE=legal -sOutputFile=/dev/lp0
alphabet.ps
Oarquivo alphabet.ps deve ser impresso. Caso apareceremmensagens como Error:
/invalidfont in findfont no lugar das letras, voc se esqueceu de instalar ou con-
gurar as fontes do Ghost Script. Instale o pacote de fontes (gsfonts na Debian) ou
verique a documentao sobre como congurar as fontes. Cada uma das opes acima
descrevem o seguinte:
-q, -dQUIET - No mostra mensagens de inicializao do Ghost Script.
-dSAFER - uma opo para ambientes seguros, pois desativa a operao de mu-
dana de nome e deleo de arquivo e permite somente a abertura dos arquivos no
modo somente leitura.
-dNOPAUSE - Desativa a pausa no nal de cada pgina processada.
-sDEVICE=dispositivo - Dispositivo que receber a sada do Ghost Script.
Neste local pode ser especicada a marca o modelo de sua impressora ou um
formato de arquivo diferente (como pcxmono, bmp256) para que o arquivo .ps
seja convertido para o formato designado. Para detalhes sobre os dispositivos
disponveis emseu Ghost Script, digite gs --help|less ou veja a pgina de man-
ual. Normalmente os nomes de impressoras e modelos so concatenados, por exem-
plo, bjc600 para a impressora Canon BJC 600, epson para impressoras padro epson,
stcolor para Epson Stylus color, etc. O Hardware-HOWTO contm referncias sobre
hardware suportados pelo GNU/Linux, tal como impressoras e sua leitura pode ser
til.
-r<ResH>x<ResV> - Dene a resoluo de impresso (em dpi) Horizontal e Verti-
cal. Os valores dependem de sua impressora.
-sPAPERSIZE=tamanho - Tamanho do papel. Podem ser usados a4, legal, letter,
etc. Veja a pgina de manual do gs para ver os outros tipos suportados e suas medi-
das.
-sOutputFile=dispositivo - Dispositivo que receber a sada de processa-
mento do gs. Voc pode especicar
*
arquivo.epson - Nome do arquivo que receber todo o resultado do pro-
cessamento. O arquivo.epson ter toda a impresso codicada no formato
Captulo 22. Impresso 269
entendido por impressoras epson e poder ser impresso com o comando cat
arquivo.epson >/dev/lp0. Uma curiosidade til: possvel imprimir este
arquivo em outros sistemas operacionais, tal como o DOS digitando: copy /b
arquivo.eps prn (lembre-se que o DOS tem um limite de 8 letras no nome
do arquivo e 3 na extenso. Voc deve estar compreendendo a exibilidade que
o GNU/Linux e suas ferramentas permitem, isso s o comeo.
*
impressao%d.epson - Nome do arquivo que receber o resultado do
processamento. Cada pgina ser gravada em arquivos separados como
impressao1.epson, impressao2.epson. Os arquivos podem ser impres-
sos usando os mesmos mtodos acima.
*
/dev/lp0 para uma impressora em /dev/lp0
*
- para redirecionar a sada de processamento do gs para a sada padro. til
para usar o gs com pipes |.
*
\|lpr - Envia a sada do Ghost Script para o daemon de impresso. O objetivo
deixar a impresso mais rpida.
Se voc curioso ou no esta satisfeito comas opes mostradas acima, veja a pgina
de manual do gs.
22.5 Magic Filter
O Magic Filter um ltro de impresso inteligente. Ele funciona acionado pelo spool de im-
presso (mais especicamente o arquivo /etc/printcap) e permite identicar e imprimir
arquivos de diversos tipos diretamente atravs do comando lpr arquivo.
um timo programa e ALTAMENTE RECOMENDADO se voc deseja apenas clicar no
boto imprimir e deixar os programas fazerem o resto :-) A inteno do programa justamente
automatizar os trabalhos de impresso e spool.
A maioria dos programas para ambiente grco X11, incluindo o Netscape, Word Perfect,
Gimp e Star Ofce trabalham nativamente com o magicfilter.
22.5.1 Instalao e congurao do Magic Filter
O Magic Filter encontrado no pacote magicfilter da distribuio Debian e baseadas.
Sua congurao pode ser feita com o programa magicfilterconfig que torna o processo
de congurao rpido e fcil para quem no conhece a sintaxe do arquivo /etc/printcap
ou no tem muitas exigncias sobre a congurao detalhada da impressora.
Aps instalar o magicfilter reinicie o daemon de impresso (se estiver usando a Debian,
entre no diretrio /etc/init.d e como usurio root digite ./lpr restart ou ./lprng
restart).
Para testar o funcionamento do magicfilter, digite lpr alphabet.ps e lpr tiger.ps,
os arquivos sero enviados para o magicfilter que identicar o arquivo como Pos Script,
Captulo 22. Impresso 270
executar o Ghost Script e retornar o resultado do processamento para o daemon de im-
presso. O resultado ser visto na impressora.
Se tiver problemas, verique se a congurao feita com o magicfilterconfig est correta.
Caso precise re-congurar o magicfilter, digite magicfilterconfig --force (lembre-
se que a opo force substitui qualquer congurao personalizada que tenha adicionado ao
arquivo /etc/printcap).
22.5.2 Outros detalhes tcnicos sobre o Magic Filter
Durante a congurao do magicfilter, a seguinte linha adicionada ao arquivo /etc
/printcap:
:if=/etc/magicfilter/epson9-filter
No tenho nenhum contrato de divulgao com a epson :-) estou usando esta marca de impres-
sora porque a mais tradicional e facilmente encontrada. A linha que comea com :if no
magicfilter identica um arquivo de ltro de impresso.
O arquivo /etc/magicfilter/epson9-filter criado usando o formato do magiclter,
e no difcil entender seu contedo e fazer algumas modicaes:
#! /usr/sbin/magicfilter
#
# Magic filter setup file for 9-pin Epson (or compatible) printers
#
# This file is in the public domain.
#
# This file has been automatically adapted to your system.
#
# wild guess: native control codes start with ESC
0 \033 cat
# PostScript
0 %! filter /usr/bin/gs -q -dSAFER -dNOPAUSE -r120x72 -sDEVICE=epson -sOutputFile=- - -c quit
0 \004%! filter /usr/bin/gs -q -dSAFER -dNOPAUSE -r120x72 -sDEVICE=epson -sOutputFile=- - -c quit
# PDF
0 %PDF fpipe /usr/bin/gs -q -dSAFER -dNOPAUSE -r120x72 -sDEVICE=epson -sOutputFile=- $FILE -c quit
# TeX DVI
0 \367\002 fpipe /usr/bin/dvips -X 120 -Y 72 -R -q -f
# compressd data
0 \037\235 pipe /bin/gzip -cdq
Captulo 22. Impresso 271
# packed, gzipped, frozen and SCO LZH data
0 \037\036 pipe /bin/gzip -cdq
0 \037\213 pipe /bin/gzip -cdq
0 \037\236 pipe /bin/gzip -cdq
0 \037\240 pipe /bin/gzip -cdq
0 BZh pipe /usr/bin/bzip2 -cdq
# troff documents
0 .\?\?\040 fpipe /usr/bin/grog -Tps $FILE
0 .\\\" fpipe /usr/bin/grog -Tps $FILE
0 \\\" fpipe /usr/bin/grog -Tps $FILE
0 .\\\" fpipe /usr/bin/grog -Tps $FILE
0 \\\" fpipe /usr/bin/grog -Tps $FILE
Voc deve ter notado que para cada tipo de arquivo existe o respectivo programa que execu-
tado, basta voc modicar as opes usadas nos programas neste arquivo (como faria na linha
de comando) para afetar o comportamento da impresso.
Por exemplo, modicando a resoluo para -r240x72 no processamento de arquivos Pos Script
(gs), a impressora passar a usar esta resoluo.
Captulo 22. Impresso 272
273
Captulo 23
Congurao do sistema
Este captulo traz explicaes sobre algumas conguraes teis que podem ser feitas no sis-
tema. Neste documento assumimos que o kernel do seus sistema j possui suporte a pgina de
cdigo 860 (Portuguesa) e o conjunto de caracteres ISO-8859-1.
23.1 Acentuao
Permite que o GNU/Linux use a acentuao. A acentuao do modo texto independente do
modo grco; voc pode congurar tanto um como o outro ou ambos. Para maiores detalhes
veja Acentuao em modo Texto on the current page e/ou Acentuao em modo grco on
page 275.
Note que os mapas de teclado usados em modo texto so diferentes dos usados em modo
grco. Geralmente os mapas de teclados para o modo grco tem uma letra X no nome.
23.1.1 Acentuao em modo Texto
Caso sua distribuio Debian esteja acentuando corretamente no modo texto voc no pre-
cisar ler esta seo. Antes de prosseguir, verique se voc possui o pacote console-data
instalado em seu sistema com o comando: dpkg -l console-data. Caso no existam, al-
guns programas de congurao e arquivos de fontes no estaro disponveis.
Siga os passos abaixo para colocar e acentuao em funcionamento para o modo Texto na
Debian:
Mapa de Teclados Debian 4 ou 5 Digite dpkg-reconfigure console-data. Aps a tela
inicial, selecione a opo Selecionar o mapa de teclados da lista de
arquiteturas, qwerty e selecione os passos seguintes de acordo com seu tipo
de teclado:
US american - Selecione US American na lista de opes e em seguida
Standard e US International (ISO-8859-1).
Captulo 23. Congurao do sistema 274
ABNT2 (com cedilha) - Selecione Brazilian na lista de opes.
Aps isso, o mapa de teclados correto ser carregado de /usr/share/keymaps e ser
ativado no sistema.
Se desejar usar o comando loadkeys manualmente , voc precisa copiar o mapa de
teclados para um local conhecido no sistema, ento copie o arquivo arquivo.kmap
para /usr/share/keymaps/i386/qwerty (em sistemas Debian) ou algum outro lo-
cal apropriado. Note que o arquivo pode ser compactado pelo gzip e copiado para
/usr/share/keymaps/i386/qwerty que ser lido sem problemas pelo sistema en-
carregado de congurar o teclado e acentuao.
Congurando a fonte de Tela Descomente a linha SCREEN_FONT=LatArCyrHeb-16 e
modique-a para CONSOLE_FONT=lat1u-16.psf no arquivo /etc/console-tools
/config.
Esta linha diz ao sistema que fonte deve carregar para mostrar os caracteres na tela. A
fonte de caracteres deve ser compatvel com o idioma local, pois nem todas suportam
caracteres acentuados. A fonte prefervel para exibir os caracteres acentuados usando
padro ISO a lat1u-16, o -16 no nome do arquivo signica o tamanho da fonte. As
fontes de tela esto disponveis no diretrio /usr/share/consolefonts.
Neste ponto voc pode vericar se o seu sistema esta reconhecendo corretamente a acen-
tuao entrando no editor de textos ae e digitando: . Se todos os acentos apare-
ceram corretamente, parabns! voc j passou pela parte mais difcil. Agora o prximo
passo a acentuao no Bash.
Acentuao no aviso de comando (bash) Para acentuar no Bash (interpretador de comandos)
necessrio alterar o arquivo /etc/inputrc e fazer as seguintes modicaes:
1 Descomente a linha: #set convert-meta off voc faz isto apagando o sm-
bolo # antes do nome.
Um comentrio faz com que o programa ignore linha(s) de comando. muito
til para descrever o funcionamento de comandos/programas (voc vai encontrar
muito isso no sistema GNU/Linux, tudo muito bem documentado).
2 Inclua a seguinte linha no nal do arquivo:
set meta-ag on
3 O contedo deste arquivo deve car assim:
set convert-meta off
set input-meta on
set output-meta on
4 Digite exit ou pressione CTRL+D para fazer o logout. Entre novamente no sistema
para que as alteraes faam efeito.
Pronto! voc j esta acentuando em modo texto!. Talvez seja necessrio que faa alguma alter-
ao em arquivos de congurao de outros programas para que possa acentuar corretamente
(veja se existe algum arquivo com o nome correspondente ao programa no diretrio /etc).
Captulo 23. Congurao do sistema 275
A distribuio Debian tambm traz o utilitrio kbdconfig que tambm faz a congurao
do mapa de teclados de forma interativa e gravando automaticamente o mapa de teclados em
/etc/kbd/default.map.gz. Se preferir usar o kbdconfig ainda ser necessrio executar
os passos acima para habilitao da fonte lat1u-16 e acentuao no bash.
23.1.2 Acentuao em modo grco
A acentuao no modo grco feita de maneira simples:
Congurao do mapa de teclados Execute o comando dpkg-reconfigure
xserver-xorg e informe o tipo de teclado quando perguntado pelo sistema de
congurao. A congurao ser gravada na seo InputDevice do arquivo /etc
/X11/xorg.conf e poder ser modicada manualmente se necessrio.
23.2 Nmero de Cores do ambiente grco
O nmero de cores do ambiente grco pode ser alterado facilmente. Normalmente as dis-
tribuies realizam a instalao usando o padro VESA (que compatvel com qualquer placa
de vdeo) usando 65.000 cores (16 bits), mas por usar VESAso deixados de lado recursos como
acelerao de hardware, XV, e recursos 3D necessrio pela maioria dos jogos e aplicativos de
vdeo atuais.
A congurao apropriada do driver exige que voc execute novamente o procedimento de
congurao da distribuio usando o comando dpkg-reconfigure xserver-xorg.
Por exemplo, para congurar minha placa de vdeo Intel 810, necessrio selecionar o driver
i810 na tela de seleo do driver de video do dpkg-reconfigure xserver-xorg. O pro-
grama xresprobe pode ser til caso deseja fazer manualmente ajustes nos na congurao
do /etc/X11/xorg.conf. O monitor tambm poder ser congurado de acordo com o
tamanho da tela (em polegadas).
Com uma congurao correta possvel atingir at 32 bits de cores (pocket pixel) no X. A
congurao do X utiliza o nmero de bits ao invs do nmero de cores na sua congurao.
Abaixo uma tabela comparativa:
Bits Nmero Max. Cores Memria mnima requerida na Placa de Vdeo
------- ----------------- -----------------------------------------
4 bits 16 cores 256Kb
8 bits 256 cores 512Kb
16 bits 32.384/65536 cores 1MB
24 bits 16 milhes de cores (pixel menor) 1MB
32 bits 16 milhes de cores 1MB
Lembre-se que a tabela acima leva em considerao a resoluo de vdeo de 640x480. Caso
utilizar uma resoluo de 800x600, 1024x768 ou superior, os requerimentos de memria de vdeo
Captulo 23. Congurao do sistema 276
para mostrar o nmero de cores da tabela acima sero maiores. Para mostrar 1024x768 - 16
milhes de cores sero necessrios 2MB de memria de vdeo, por exemplo. A resoluo de 24
bits normalmente traz problemas em alguns chipsets, considere a utilizao da resoluo de 16
ou 32 bits.
O uso de uma resoluo de vdeo como 800x600 ou superior, tambm depende do monitor
de vdeo. Nem todos os monitores VGA e SVGAs do mercado suportam resolues acima de
640x480.
OBS: Se tiver escolha, prera placas de vdeo independentes da placa me. Normalmente as
placas de vdeo on-board usam parte da memria RAM como memria de vdeo (memria
compartilhada) e isto diminui a performance de vdeo e a performance do sistema porque se
voc estiver usando 2MB de memria de vdeo, ter 2 MB a menos para executar seus progra-
mas. O preo destas placas geralmente diminui na proporo do desempenho que oferecem.
Uma boa escolha para uma melhor qualidade e maior velocidade 16 bits. O motivo disto
que quanto maior a qualidade e a resoluo, mais tempo ser levado para os pixels serem atu-
alizados no monitor. Veja abaixo como congurar o nmero de cores para quem esta iniciando
o X-Window pelo modo texto e XDM.
23.2.1 Congurando o nmero de cores para quem inicia pelo prompt
Aps congurar corretamente a resoluo de vdeo aceita pelo seu servidor X com
dpkg-reconfigure xserver-xorg (Debian 4.0) use o comando startx -- -bpp 8 no
lugar de startx. Note que estou usando 256 cores como exemplo (veja a tabela acima), se
quiser usar mais cores e sua placa de vdeo tiver memria suciente, use 16, 24 ou 32.
Uma maneira mais prtica de iniciar sempre com uma mesma resoluo incluir um alias
no arquivo .bashrc em seu diretrio: alias startx=startx -- -bpp 8
Desta forma toda a vez que se digitar startx, ser executado o comando da direita do sinal
de igual.
OBS: Se alguma coisa der errado e a imagemaparecer distorcida ou simplesmente no aparecer,
no se desespere! Pressione simultaneamente CTRL+ALT+Back Space, esta a combinao
de teclas naliza imediatamente o servidor X.
23.2.2 Congurando o nmero de cores para quem inicia pelo XDM
Assumindo que o seu arquivo /etc/X11/xorg.conf foi gerado corretamente, modique o
arquivo /etc/X11/xdm/Xservers e alterar o nal da linha colocando -bpp resoluo.
Por exemplo, a ltima linha de meu arquivo Xservers era:
:0 local /usr/bin/X11/X vt7
eu a modifiquei para
:0 local /usr/bin/X11/X vt7 -bpp 16
Captulo 23. Congurao do sistema 277
Pronto, basta reiniciar o servidor X (usando CTRL+ALT+Back Space) ou reiniciando atravs
do arquivo /etc/init.d/xdm usando xdm restart e seu sistema passar a usar 65.000
cores de vdeo.
OBS: Lembre-se de salvar todos os seus arquivos antes de reiniciar o servidor X, pois todos os
programas que estiverem abertos no sistema sero imediatamente fechados.
23.2.3 Ajustando o alinhamento da imagem no X e outras conguraes
Aps voc ter criado o arquivo de congurao do X com o dpkg-reconfigure
xserver-xorg, possvel que a congurao precise de um ajuste no para o alinhamento
correto da imagem no monitor. Muitos monitores modernos possuem teclas para esta funo,
mas desde que monitor esteja com sua imagem aparecendo corretamente em modo texto, o
ajuste dever ser feito no servidor X. Este ajuste feito atravs do utilitrio xvidtune.
Entre no modo grco como usurio root, abra o xterm e digite xvidtune uma tela apare-
cer comum aviso sobre o uso do programa, clique emOK. Recomendo que ative o boto AUTO
para que a tela v se ajustando na medida que voc mexe nos ajustes.
Para restaurar a congurao anterior, pressione o boto Restore (no faz efeito caso o boto
Apply tenha sido pressionado). Clicando em Quit, voc sai do xvidtune sem salvar a con-
gurao. Quando estiver satisfeito com a sua congurao/alinhamento da imagem, clique
em Apply, a congurao escolhida estar salva.
Captulo 23. Congurao do sistema 278
279
Captulo 24
Executando tarefas diversas no Linux
Este captulo explica como realizar tarefas especcas no sistema, como gravar um CD, assistir
lmes, etc. Ele tambm contm nomes de programas recomendados tanto em modo texto
como modo grco.
24.1 Gravando CDs e DVDs no Linux
A gravao de CDs no Linux pode ser feita atravs dos programas cdrecord ou CDRDAO e a
gravao de DVDs usando o dvd+rw-tools. Neste captulo vou explicar a gravao usando o
cdrecord para gravar um CD de dados e audio e o growisofs para a gravao de DVDs de
dados. Primeiro instale o cdrecord, mkisofs, dvd+rw-tools e cdda2wav emsua mquina
(apt-get install cdrecord dvd+rw-tools mkisofs cdda2wav).
24.1.1 Gravando CDs / DVDs de dados
O processo de gravao de um CD/DVD de dados feito em 2 etapas: primeiro gerado um
arquivo ISO com o programa mkisofs que ser a imagem exata do CD que ser gravado e
a gravao usando o cdrecord ou growisofs (DVD). Caso ainda no tenha congurado
seu gravador no Linux ou no tem certeza do seu funcionamento, veja Congurando um
gravador de CD/DVD no Linux on page 49.
Vou assumir que os dados que deseja gravar esto no diretrio /dados. Primeiro gere o ar-
quivo ISO:
cd /dados
mkisofs -r -o dados.iso -J -V"CD_DADOS" .
Na linha acima, voc permite que todos possam ler o CD alterando as permisses (-r), o ar-
quivo de sada ser dados.iso (-o dados.iso), os nomes tambmtero o ndice no formato
Joliet (Windows) (-J), o nome de volume ser CD_DADOS (-VCD_DADOS). Foi colocado .
Captulo 24. Executando tarefas diversas no Linux 280
para o diretrio raz porque estamos dentro do diretrio que queremos gravar dados. No us
e * para especicar os arquivos, a no ser que queira que todos os arquivos do seus subdi-
retrios quem dentro do raz do CD :-)
Antes de gravar voc pode testar se o contedo do CD est OK montando a imagem ISO:
mkdir /tmp/iso
mount /dados/dados.iso /tmp/iso -o loop -t iso9660
Voc poder entrar no diretrio /tmp/iso e ver como est o contedo do seu CD antes da
gravao. Qualquer modicao dever ser feita no diretrio /dados e depois gerar nova-
mente o iso com mkisofs. Desmonte o arquivo ISO antes de gravar o CD.
Agora, para gravar um CD (750Mb) execute o comando:
cdrecord -v -dev=/dev/hdc -data /dados/dados.iso
O -v mostra a progresso da gravao. Caso seu gravador de CD esteja congurado com
emulao SCSI ou SCSI, o nmero passado como argumento a -dev dever ser obtido pelo
comando cdrecord -scanbus (por ex. 0,0,0). A opo -data especica o arquivo iso que
contm os dados que sero gravados.
Para gravar um DVD, execute o comando:
growisofs -Z /dev/hdc=/dados/dados.iso
Aps isto seu CD ou DVD estar gravado e pronto para uso.
24.1.2 Gravando um CD de audio
A gravao de um CD de audio se divide em 2 etapas: Extrao das trilhas de audio para um
diretrio em formato wav e a gravao. Aps inserir o CD de audio na unidade, a extrao
feita pelo programa cdda2wav da seguinte forma:
mkdir /audio
cd /audio
cdda2wav -x -D/dev/cdrom -d99999 -S4 -Owav -B audio
A opo -x extrai usando mxima qualidade, -D/dev/cdrom diz qual o dispositivo onde
o CD de audio est inserido, -d99999 diz a durao total da extrao (99999 um valor
que garante a extrao de TODO o CD), -S4 diz que a velocidade de extrao ser de 4X,
a -B audio diz para criar arquivos contendo as faixas seqencialmente como audio01.wav,
audio02.wav, etc.
Aps extrair, voc dever executar o comando:
Captulo 24. Executando tarefas diversas no Linux 281
cdrecord -v -dev=/dev/hdc -dao -useinfo
*
.wav
Ocomando acima usa o dispositivo gravador /dev/hdc para fazer a gravao do CDde audio.
O formato usado o DAO (-dao), o que garante que no haver intervalo entre as faixas de
CD, til em CDs ao vivo e que os arquivos
*
.inf contendo os dados das faixas sero usados
para controlar a durao de cada uma (-useinfo *.wav).
Se voc quer gravar uma seleo de arquivos .wav ou .cdr, ser preciso faze-lo emmodo TAO
(track at once), mantendo a pausa de 2 segundos entre as msicas. Isto feito pelo comando:
cdrecord -v -dev=/dev/hdc -pad -audio
*
.wav
Estamos dizendo para o cdrecord gravar diversos arquivos de audio (-audio
*
.wav) e
preencher os intervalos dos arquivos de audio com zeros (-pad) pois nem sempre os arquivos
tem o mltiplo de setores requeridos para a gravao de arquivos de audio.
24.1.3 Cpia de CD para CD no mesmo gravador
A cpia de CD/DVD de dados para outro feita em duas etapas: A extrao do arquivo ISO
e a gravao do CD. Esse recurso til pela economia de tempo que proporciona e porque
mantm caractersticas especiais do CD como setor de boot.
Primeiro, extraia o contedo do CD/DVD em format raw com o comando:
dd if=/dev/cdrom of=/dados/arquivo.iso
Conra se no nal o nmero de bytes conferem, isso diz que a extrao foi feita com sucesso.
O parmetro if= indica o arquivo de entrada e of= o arquivo de sada. Depois disso grave o
CD ou DVD com o comando:
(Para gravao de CD (750Mb)
cdrecord -v -dev=/dev/hdc -data /dados/dados.iso
(Para gravao de DVD)
groisofs -Z /dev/hdc=/dados/dados.iso
Veja a explicao dos parmetros em Gravando CDs / DVDs de dados on page 279. Note que
voc tambm poder gravar o CD usando o comando dd:
dd if=/dados/arquivo.iso of=/dev/sr0
Captulo 24. Executando tarefas diversas no Linux 282
24.1.4 Gravao massiva de CDs
Isso feito pelo programa cdcontrol que permite a gravao de CDs paralelamente, sendo
bastante til para gerar CDs para install fests, distribuies comerciais em massa. Ele mantm
um relatrio de CDs totais por unidade de disco e tambm de falhas, tambm permite a cpia
de CDs de inicializao. Ele est disponvel em http://cdcontrol.sourceforge.net/.
Ele tambm est disponvel como pacote .deb (apt-get install cdcontrol).
24.1.5 Gravao de CDs diretamente atravs de arquivos mp3 ou Ogg
Utilize o aplicativo mp3burn para fazer isto. Por exemplo:
mp3burn -o "-v -dev=/dev/hdc"
*
.mp3
A opo -o indica as opes que devem ser passadas ao cdrecord. A opo -audio e -pad
so adicionadas automaticamente.
24.1.6 Backup de dados para 1 ou mais CDs
O programa multicd a ferramenta que permite esta funo.
24.1.7 Aplicaes grcas para gravao de CDs
Os seguintes aplicativos so interfaces grcas e amigveis que usam o cdrecord, cdda2wav
e mkisofs para fazer a gravao de seus CDs. Normalmente eles acrescentam uma carga
maior para a mquina, mas se voc gosta de uma interface amigvel para fazer as coisas, ter
animaes, etc. o preo que paga a performance :-)
Entre os principais programas, destaco os seguintes: cdrtoaster, cdbakeoven, kreatecd,
gcombust.
24.1.8 Criar a capa de frente e verso do CD/DVD
Capas de frente e verso podem ser produzidas com o cdlabelgen.
24.2 Executando vdeos DIVX
O programa mais recomendado o mplayer. Aps instalar, execute o comando: mplayer
-framedrop -vo xv arquivo.avi. A opo -framedrop diz ao mplayer pular frames
que ele no conseguir exibir (til em sistemas que tem CPU lenta).
O gmplayer a interface grca do mplayer e aceita todos os seus parmetros.
Captulo 24. Executando tarefas diversas no Linux 283
24.3 Assistindo DVDs
Para assistir lmes em DVD recomendo os seguintes programas: ogle, xine e mplayer.
Lembre-se de fazer umlink de /dev/dvd para seu dispositivo leitor de DVDantes de executar
um destes programas.
24.4 Convertendo msicas no formato wav para mp3
A converso explicada aqui usando o programa bladeenc. Voc pode baixa-lo de http:
//bladeenc.mp3.no/. O bladeenc foi o escolhido por apresentar a melhor performance
e qualidade para converso da msicas, que importante para quem tem mquinas menos
potentes e processamento leve valioso para voc :-)
A converso feita da seguinte forma:
bladeenc -progress=4 -del
*
.wav
A opo -del diz para apagar os arquivos .wav a medida que so convertidos e
-progress=4 para mostrar uma barra de progresso total e outra do arquivo que est sendo
processado.
24.5 Convertendo msicas do formato mp3 para cdr
Esta converso necessria quando deseja gravar um CD de audio a partir de uma seleo de
msicas MP3. As explicaes aqui so baseadas no programa mpg123, que pode ser instalado
com apt-get install mpg123. Execute o seguinte comando para fazer a converso:
mpg123 --cdr - arquivo.mp3 >arquivo.cdr
Para fazer a converso de todos os arquivos mp3 dentro de um diretrio, use o comando:
for MUSICA in
*
.mp3; do
mpg123 --cdr - "$MUSICA" >"${VAR}.cdr"
done
Aps feita a converso de msicas necessrias para completar um CD (normalmente 600MB),
v at Gravando um CD de audio on page 280.
Captulo 24. Executando tarefas diversas no Linux 284
285
Captulo 25
Compilao
Este captulo explica o que compilao, os principais compiladores e como compilar progra-
mas e principalmente o Kernel do GNU/Linux como objetivo de personaliza-lo de acordo com
os dispositivos usados em seu computador e/ou os recursos que planeja utilizar.
25.1 O que compilao?
a transformao de um programa em cdigo fonte (programa escrito pelo programador) em
linguagem de mquina (programa executvel).
Existem centenas de linguagens de programao diferentes umas das outras, cada uma ofer-
ece recursos especcos para atender melhor uma necessidade ou caractersticas particulares,
algumas so voltadas para bancos de dados, outras somente para a criao de interfaces co-
municao (front-ends), aprendizado, etc. Cada linguagem de programao possui comandos
especcos que desempenhamalguma funo, mas todas trabalhamcomvariveis de memria
para a manipulao de dados de entrada/processamento.
25.2 Compilador
o programa que converte o programa feito pelo programador em linguagem de mquina.
Aps o processo de compilao o programa estar pronto para ser executado como umarquivo
binrio.
Existem muitos compiladores no ambiente GNU/Linux, um dos mais usados o gcc, o com-
pilador para linguagem C.
Captulo 25. Compilao 286
287
Captulo 26
Manuteno do Sistema
Este captulo descreve como fazer a manuteno de seu sistema de arquivos e os programas de
manuteno automtica que so executados periodicamente pelo sistema.
26.1 Checagem dos sistemas de arquivos
A checagem do sistema de arquivos permite vericar se toda a estrutura para armazenamento
de arquivos, diretrios, permisses, conectividade e superfcie do disco esto funcionando cor-
retamente. Caso algum problema exista, ele poder ser corrigido com o uso da ferramenta de
checagem apropriada. As ferramentas de checagem de sistemas de arquivos costumam ter
seu nome iniciado por fsck e terminados com o nome do sistema de arquivos que verica,
separados por um ponto:
fsck.ext2 - Verica o sistema de arquivos EXT2 ou EXT3. Pode tambmser encontrado
com o nome e2fsck.
fsck.ext3 - Um alias para fsck.ext3.
fsck.minix - Verica o sistema de arquivos Minix.
fsck.msdos - Verica o sistema de arquivos Msdos. Pode tambm ser encontrado com
o nome dosfsck.
Para vericar um sistema de arquivos necessrio que ele esteja desmontado caso contrrio
poder ocorrer danos emsua estrutura. Para vericar o sistema de arquivos raz (que no pode
ser desmontado enquanto o sistema estiver sendo executado) voc precisar inicializar atravs
de um disquete e executar o fsck.ext2.
26.1.1 fsck.ext2
Este utilitrio permite vericar erros em sistemas de arquivos EXT2 e EXT3 (Linux Native).
Captulo 26. Manuteno do Sistema 288
fsck.ext2 [opes] [dispositivo]
Onde:
dispositivo o local que contm o sistema de arquivos EXT2/EXT3 que ser vericado (par-
ties, disquetes, arquivos).
opes
-c Faz o fsck.ext2 vericar se existem agrupamentos danicados na unidade de disco du-
rante a checagem.
-d Debug - Mostra detalhes de processamento do fsck.ext2.
-f Fora a checagem mesmo se o sistema de arquivos aparenta estar em bom estado. Por
padro, um sistema de arquivos que aparentar estar em bom estado no so vericados.
-F Grava os dados do cache no disco antes de iniciar.
-l [arquivo ] Inclui os blocos listados no [arquivo] como blocos defeituosos no sistema de ar-
quivos. O formato deste arquivo o mesmo gerado pelo programa badblocks.
-L [arquivo ] Faz o mesmo que a opo -l, s que a lista de blocos defeituosos do dispositivo
completamente limpa e depois a lista do [arquivo] adicionada.
-n Faz uma vericao de somente leitura no sistema de arquivos. Com esta opo
possvel vericar o sistema de arquivos montado. Ser assumido no para todas as per-
guntas e nenhuma modicao ser feita no sistema de arquivos. Caso a opo -c seja
usada junto com-n, -l ou -L, o sistema de arquivos ser vericado e permitir somente
a atualizao dos setores danicados no alterando qualquer outra rea.
-p Corrige automaticamente o sistema de arquivos sem perguntar. recomendvel fazer isto
manualmente para entender o que aconteceu, em caso de problemas com o sistema de
arquivos.
-v Ativa o modo verbose (mais mensagens so mostradas durante a execuo do programa).
-y Assume sim para todas as questes.
Caso sejam encontrados arquivos problemticos e estes no possam ser recuperados, o
fsck.ext2 perguntar se deseja salva-los no diretrio lost+found. Este diretrio encon-
trado em todas as parties ext2. No h risco de usar o fsck.ext3 em uma partio EXT2.
Aps sua execuo mostrado detalhes sobre o sistema de arquivos vericado como quanti-
dade de blocos livres/ocupados e taxa de fragmentao.
Exemplos: fsck.ext2 /dev/hda2, fsck.ext2 -f /dev/hda2, fsck.ext2 -vrf
/dev/hda1.
26.2 reiserfsck
Verica um sistema de arquivos reiserfs em sistema de arquivos.
reiserfsck [opes] [dispositivo]
dispositivo Dispositivo que contm o sistema de arquivos reiserfs que ser vericado.
opes
-a Mostra detalhes sobre o sistema de arquivos e sai
-j arquivo Especica um arquivo de Journal alternativo usado pelo sistema de arquivos.
-q quiet No exibe mensagens sobre o status da checagem do sistema de arquivos.
Captulo 26. Manuteno do Sistema 289
-S Constri a rvore de todos os blocos do dispositivo.
Oreiserfsck possui outros modos de operao alm de checagem (o padro), para detalhes
veja a pgina de manual do programa.
Exemplos: reiserfsck /dev/hda1, reiserfsck -S /tmp/arq-reiserfs.
26.3 fsck.minix
Verica o sistema de arquivos minix em um dispositivo.
fsck.minix [opes] [dispositivo]
Onde:
dispositivo Partio, disquete ou arquivo que contm o sistema de arquivos Minix que ser
vericado
opes
-f Verica o sistema de arquivos mesmo se ele estiver perfeito.
-r Permite reparo manual do sistema de arquivos
-a Permite um reparo automtico do sistema de arquivos. recomendado fazer o reparo man-
ual.
-v Verbose - Mostra detalhes durante a execuo do programa
-s Exibe detalhes sobre os blocos de root.
Exemplo: fsck.minix -f /dev/hda8, fsck.minix -vf /dev/hda8
26.4 badblocks
Procura blocos defeituosos em um dispositivo. Note que este apenas pesquisa por blocos
defeituosos, sem alterar a congurao do disco. Para marcar os blocos defeituosos para no
serem mais usados, utilize a opo -l do fsck (veja fsck.ext2 on page 287).
badblocks [opes] [dispositivo]
Onde:
dispositivo Partio, disquete ou arquivo que contm o sistema de arquivos que ser veri-
cado.
opes
-b [tamanho ] Especica o [tamanho] do bloco do dispositivo em bytes
-o [arquivo ] Gera uma lista dos blocos defeituosos do disco no [arquivo]. Este lista pode ser
usada com o programa fsck.ext2 junto com a opo -l.
-s Mostra o nmero de blocos checados durante a execuo do badblocks.
-v Modo verbose - So mostrados mais detalhes.
-w Usa o modo leitura/gravao. Usando esta opo o badblocks procura por blocos de-
feituosos gravando alguns padres (0xaa, 0x55, 0xff, 0x00) em cada bloco do dispositivo
e comparando seu contedo. Nunca use a opo -w em um dispositivo que contm ar-
quivos pois eles sero apagados!
Captulo 26. Manuteno do Sistema 290
Exemplo: badblocks -s /dev/hda6, badblocks -s -o bad /dev/hda6
26.5 defrag
Permite desfragmentar uma unidade de disco. A fragmentao o armazenamento de ar-
quivos em reas no seqenciais (uma parte armazenada no comeo a outra no nal, etc),
isto diminui o desempenho da unidade de disco porque a leitura dever ser interrompida e
feita a movimentao da cabea para outra regio do disco onde o arquivo continua, por este
motivo discos fragmentados tendem a fazer um grande barulho na leitura e o desempenho
menor.
Adesfragmentao normalmente desnecessria no GNU/Linux porque o sistema de arquivos
ext2 procura automaticamente o melhor local para armazenar o arquivo. Mesmo assim,
recomendvel desfragmentar um sistema de arquivos assim que sua taxa de fragmentao
subir acima de 10%. A taxa de fragmentao pode ser vista atravs do fsck.ext2. Aps o
fsck.ext2 ser executado mostrada a taxa de fragmentao seguida de non-contiguos.
Aferramenta de desfragmentao usada no GNU/Linux o defrag que vemcomos seguintes
programas:
e2defrag - Desfragmenta sistemas de arquivos Ext2.
defrag - Desfragmenta sistemas de arquivos Minix.
xdefrag - Desfragmenta sistemas de arquivos Xia.
O sistema de arquivos deve estar desmontado ao fazer a desfragmentao. Se quiser des-
fragmentar o sistema de arquivos raz (/), voc precisar inicializar atravs de um disquete e
executar um dos programas de desfragmentao apropriado ao seu sistema de arquivos. A
checagem individual de fragmentao em arquivos pode ser feita com o programa frag.
ATENO: Retire cpias de segurana de sua unidade antes de fazer a desfragmentao. Se
por qualquer motivo o programa de desfragmentao no puder ser completado, voc poder
perder dados!
e2defrag [opes] [dispositivo]
Onde:
dispositivo Partio, arquivo, disquete que contm o sistema de arquivos que ser desfrag-
mentado.
-d Debug - sero mostrados detalhes do funcionamento
-n No mostra o mapa do disco na desfragmentao. til quando voc inicializa por dis-
quetes e recebe a mensagemFailed do open termLinux ao tentar executar o e2defrag.
-r Modo somente leitura. Odefrag simular sua execuo no sistema de arquivos mas no far
nenhuma gravao. Esta opo permite que o defrag seja usado com sistema de arquivos
montado.
-s Cria um sumrio da fragmentao do sistema de arquivos e performance do desfragmenta-
dor.
-v Mostra detalhes durante a desfragmentao do sistema de arquivos. Caso mais de uma
opo -v seja usada, o nvel de detalhes ser maior.
Captulo 26. Manuteno do Sistema 291
-i [arquivo ] Permite denir uma lista de prioridades em que um arquivo ser gravado no
disco, com isto possvel determinar se um arquivo ser gravado no comeo ou nal da
unidade de disco. Esta lista lida do [arquivo] e deve conter uma lista de prioridades
de -100 a 100 para cada inodo do sistema de arquivos. Arquivos com prioridade alta
sero gravados no comeo do disco. Todos os inodos tero prioridade igual a zero caso
a opo -i no seja usada ou o inodo no seja especicado no [arquivo]. O [arquivo]
dever conter uma srie de linhas com um nmero (inodo) ou um nmero prexado por
um sinal de igual seguido da prioridade.
-p [numero ] Dene o [numero] de buffers que sero usados pela ferramenta de desfragmen-
tao na realocao de dados, quanto mais buffers mais eciente ser o processo de re-
alocao. O nmero depende de quantidade memria RAM e Swap voc possui. Por
padro 512 buffers so usados correspondendo a 512Kb de buffer (em um sistema de
arquivos de blocos com 1Kb).
Exemplo: e2defrag -n -v /dev/hdb4, e2defrag -r /dev/hda1
26.6 Vericando e marcando setores danicados em um HD
Um dos sintomas de um disco rgido que contm setores danicados (bad blocks) a mudana
repentina do sistema de arquivos para o modo somente leitura, o aparecimento de diversas
mensagens no syslog indicando falha de leitura do hd, uma pausa se segundos no sistema junto
com o led de atividade de disco ligado. Se isto acontece com voc, uma forma de solucionar
este inconveniente executar o teste na superfcie fsica do disco para procurar e marcar os
blocos problemticos como defeituosos.
Em alguns casos, os blocos defeituosos ocorrem isoladamente no disco rgido, no aumen-
tando mais sua quantidade, entretanto, se o nmero de blocos danicados em seu disco est
crescendo em um curto espao de tempo, comece a pensar na troca do disco rgido por um
outro. Existem empresas que recuperam HDs mas pelo valor cobrado por se tratar de um
servio delicado, s compensa caso voc no tenha o backup e realmente precisa dos dados do
disco.
Para fazer uma checagem de HD no sistema de arquivos ext2 ou ext3, proceda da seguinte
forma:
Se possvel, faa um backup de todos os dados ou dos dados essenciais da partio ser
checada.
Inicie o sistema por um disquete de boot ou CD de recuperao. Este passo til pois
em alguns casos, pode ocorrer a perda de interrupo do disco rgido e seu sistema car
paralisado. S o mtodo de checar o HD usando um disquete de boot lhe far agendar
uma parada no sistema e noticar os usurios, evitando srios problemas do que fazendo
isto com um sistema em produo.
Execute o badblocks usando a opo -o para gravar os possveis blocos defeituosos
encontrados para um arquivo: badblocks -v -o blocos-defeituosos.lista
/dev/hd??. Substitua o dispositivo /dev/hd?? pelo dispositivo que deseja vericar.
A checagem do badblocks dever ser feita para cada partio existente no disco rgido.
O tempo de checagem depender da velocidade do disco rgido, velocidade do barra-
Captulo 26. Manuteno do Sistema 292
mento, cabo de dados utilizado, velocidade de processamento e claro, do estado do
disco rgido (quantos setores defeituosos ele tem).
Aps concluir o badblocks, veja se foram encontrados blocos defeituosos. Caso tenha
encontrado, siga para o prximo passo.
Para marcar os blocos encontrados pelo badblocks como defeituosos, execute o
comando: fsck.ext3 -l blocos-defeituosos.lista -f /dev/hd??. Substi-
tua o dispositivo, pelo dispositivo que vericou com o badblocks. O arquivo
blocos-defeituosos.list contm a lista de blocos gerada pelo badblocks que
sero marcados como defeituosos.
Para mais detalhes sobre as opes de checagem usada pelos programas, veja badblocks on
page 289 e fsck.ext2 on page 287.
26.7 Limpando arquivos de LOGS
Tudo que acontece em sistemas GNU/Linux pode ser registrado em arquivos de log em /var
/log, como vimos anteriormente. Eles so muito teis por diversos motivos, para o diagns-
tico de problemas, falhas de dispositivos, checagem da segurana, alerta de eventuais tentati-
vas de invaso, etc.
O problema quando eles comeam a ocupar muito espao em seu disco. Verique quantos
Megabytes seus arquivos de LOG esto ocupando atravs do comando cd /var/log;du
-hc. Antes de fazer uma limpeza nos arquivos de LOG, necessrio vericar se eles so
desnecessrios e s assim zerar os que forem dispensveis.
No recomendvel apagar um arquivo de log pois ele pode ser criado com permisses de
acesso indevidas (algumas distribuies fazem isso). Voc pode usar o comando: echo -n
>arquivo ou o seguinte shell script para zerar todos os arquivos de LOG de uma s vez (as
linhas iniciante com # so comentrios):
#! /bin/sh
cd /var/log
for l in ls -p|grep /; do
echo -n >$l &>/dev/null
echo Zerando arquivo $l...
done
echo Limpeza dos arquivos de log concluda!
Copie o contedo acima em um arquivo com a extenso .sh, d permisso de execuo com
o chmod e o execute como usurio root. necessrio executar este script para zerar arquivos
de log em subdiretrios de /var/log, caso sejam usados em seu sistema.
Algumas distribuies, como a Debian GNU/Linux, fazemo arquivamento automtico de ar-
quivos de LOGs em arquivos .gz atravs de scripts disparados automaticamente pelo cron.
ATENO: LEMBRE-SE QUE O SCRIPT ACIMA APAGAR TODOS OS ARQUIVOS DE
LOGs DO SEU SISTEMA SEM POSSIBILIDADE DE RECUPERAO. TENHA ABSOLUTA
CERTEZA DO QUE NO PRECISAR DELES QUANDO EXECUTAR O SCRIPT ACIMA!
Captulo 26. Manuteno do Sistema 293
26.8 Recuperando parties apagadas
Caso tenha apagado uma partio acidentalmente ou todas as parties do seu disco, uma
forma simples de recuperar todos os seus dados simplesmente recriar todas as parties com
o tamanho EXATAMENTE igual ao existente anteriormente. Isto deve ser feito dando a partida
com um disquete ou CD de inicializao. Aps recriar todas as parties e seus tipos (83, 82
8e, etc), execute novamente o lilo para recriar o setor de boot do HD e garantir que a mquina
dar o boot.
A recuperao desta forma possvel porque quando se cria ou apaga uma partio, voc est
simplesmente delimitando espao onde cada sistema de arquivos gravar seus dados, sem
fazer nenhuma alterao dentro dele. Assim, tambm til manter uma cpia dos tamanhos
usados durante o processo de criao das parties para ser usado como recuperao em uma
possvel emergncia.
26.9 Recuperando a senha de root perdida
Uma situao que voc deve ter se deparado (ou algum dia ainda vai se deparar) precisar
alterar a senha de root e no sabe ou no lembra a senha atual. Esta situao tambm pode
ser encontrada quando ocorre uma falha de disco, falha eltrica, reparos em uma mquina
que no detm sua manuteno, etc. A melhor notcia que a alterao da senha de root
possvel e no apresenta problema qualquer para o sistema. Existem vrias formas para se
fazer isto, a forma que descreverei abaixo assume que voc tem acesso a um outro dispositivo
de partida que no seja o HD do Linux (CD-ROM, disquetes, outro disco rgido, etc). Assim,
mesmo que encontre uma senha de BIOS em uma mquina, poder colocar o disco rgido em
outra mquina e executar estes procedimentos.
OBS: Estes procedimentos tens ns didticos e administrativos, no sendo escritos com a in-
teno de fornecer mal uso desta tcnica. Entender a exposio de riscos tambm ajuda a
desenvolver novas tcnicas de defesa para sistemas crticos, e estas so totalmente possveis e
as mais usadas documentadas neste guia.
Como primeiro passo consiga umCDde partida ou disquete de uma distribuio Linux.
Normalmente os mesmos CDs que usou para instalar sua distribuio tambm so de-
senvolvidos para permitir a manuteno do sistema, contendo ferramentas diversas
e um terminal virtual disponvel para trabalhos manuais (tanto de instalao como
manuteno).
V at a BIOS da mquina e altere a ordemde inicializao para que seu sistema inicialize
a partir do disquete ou CD-ROM (dependendo do mtodo escolhido no passo anterior).
Inicialize a partir do Disquete/CD-ROM.
Na maioria dos casos voc provavelmente estar utilizando o CD-ROM que usou para
instalar sua distribuio. Imediatamente quando o programa de instalao for inici-
ado, pressione ALT+F2 para alternar para o segundo terminal virtual do sistema. O
segundo terminal esta sempre disponvel nas distribuies distribuies Debian, Red
Hat, Mandriva, Fedora, etc.
Captulo 26. Manuteno do Sistema 294
O prximo passo ser montar sua partio raz para ser possvel alterar sua senha de
root. Para isto, crie umdiretrio onde a partio ser montada (por exemplo, /target) e
execute o comando mount: mount /dev/hda1 /target (assumindo que /dev/hda1
a partio que contm seu sistema de arquivos raz (/).
Entre no diretrio /target (cd /target) e torne-o seu diretrio raz atual com o co-
mando: chroot ..
digite passwd e entre com a nova senha de superusurio.
saia do chroot digitando exit
Digite sync para salvar todas as alteraes pendentes para o disco e reinicie o sistema
(pressionando-se as teclas CTRL+ALT+DEL, init 6, reboot).
Retire o CD da unidade de discos e altere sua BIOS para dar a partida a partir do disco
rgido.
Teste e verique se a senha de root foi alterada.
Normalmente as distribuies seguem o padro FHS, mantendo binrios de administrao
necessrios para recuperao do sistema em caso de panes dentro da partio /, se este no
for o caso de sua distribuio (hoje em dia raro), voc ter que montar sistemas de arquivos
adicionais (como o /usr, /var) ou ento o comando passwd no ser encontrado ou ter
problemas durante sua execuo.
26.10 Tarefas automticas de manuteno do sistema
Os arquivos responsveis pela manuteno automtica do sistema se encontram em ar-
quivos individuais localizados nos diretrios /etc/cron.daily, /etc/cron.weekly e
/etc/cron.montly. A quantidade de arquivos depende da quantidade de pacotes instalado
em seu sistema, porque alguns programam tarefas nestes diretrios e no possvel descrever
todas, para detalhes sobre o que cada arquivo faz veja o cabealho e o cdigo de cada arquivo.
Estes arquivos so executados pelo cron atravs do arquivo /etc/crontab. Voc pode
programar quantas tarefas desejar, para detalhes veja cron on the current page e at on
page 296. Alguns programas mantm arquivos do cron individuais em /var/spool/cron
/crontabs que executam comandos periodicamente.
26.11 cron
O cron um daemon que permite o agendamento da execuo de um comando/programa
para um determinado dia/ms/ano/hora. muito usado em tarefas de arquivamento de
logs, checagem da integridade do sistema e execuo de programas/comandos em horrios
determinados.
As tarefas so denidas no arquivo /etc/crontab e por arquivos individuais de usurios em
/var/spool/cron/crontabs/[usurio] (criados atravs do programa crontab). Adi-
cionalmente a distribuio Debian utiliza os arquivos no diretrio /etc/cron.d como uma
extenso para o /etc/crontab.
Captulo 26. Manuteno do Sistema 295
Para agendar uma nova tarefa, basta editar o arquivo /etc/crontab com qualquer editor de
texto (como o ae e o vi) e denir o ms/dia/hora que a tarefa ser executada. No necessrio
reiniciar o daemon do cron porque ele verica seus arquivos a cada minuto. Veja a seo O
formato de um arquivo crontab on the current page para entender o formato de arquivo cron
usado no agendamento de tarefas.
26.11.1 O formato de um arquivo crontab
O arquivo /etc/crontab tem o seguinte formato:
52 18 1
* *
root run-parts --report /etc/cron.montly
| | | | | | |
| | | | | | \_Comando que ser executado
| | | | | |
| | | | | \_ UID que executar o comando
| | | | |
| | | | \_ Dia da semana (0-7)
| | | |
| | | \_ Ms (1-12)
| | |
| | \_ Dia do Ms (1-31)
| |
| \_ Hora
|
\_ Minuto
Onde:
Minuto Valor entre 0 e 59
Hora Valor entre 0 e 23
Dia do Ms Valor entre 0 e 31
Ms Valor entre 1 e 12 (identicando os meses de Janeiro a Dezembro)
Dia da Semana Valor entre 0 e 7 (identicando os dias de Domingo a Sbado). Note que tanto
0 e 7 equivalem a Domingo.
usurio Ousurio especicado ser usado para executar o comando (o usurio dever existir).
comando Comando que ser executado. Podem ser usados parmetros normais usados na
linha de comando.
Os campos do arquivo so separados por um ou mais espaos ou tabulaes. Um asterisco
*
pode ser usado nos campos de data e hora para especicar todo o intervalo disponvel. Ohfen
- serve para especicar perodos de execuo (incluindo a o nmero inicial/nal). A vrgula
serve para especicar lista de nmeros. Passos podem ser especicados atravs de uma /. Veja
os exemplos no nal desta seo.
O arquivo gerado em /var/spool/cron/crontabs/[usurio] pelo crontab tem o
mesmo formato do /etc/crontab exceto por no possuir o campo usurio (UID), pois
o nome do arquivo j identica o usurio no sistema.
Captulo 26. Manuteno do Sistema 296
Para editar um arquivo de usurio em /var/spool/cron/crontabs ao invs de editar o
/etc/crontab use crontab -e, para listar as tarefas daquele usurio crontab -l e para
apagar o arquivo de tarefas do usurio crontab -r (adicionalmente voc pode remover so-
mente uma tarefa atravs do crontab -e e apagando a linha correspondente).
OBS: No esquea de incluir uma linha em branco no nal do arquivo, caso contrrio o ltimo
comando no ser executado.
Ocron dene o valor de algumas variveis automaticamente durante sua execuo; a varivel
SHELL denida como /bin/sh, PATH como /usr/bin:/bin, LOGNAME, MAILTO e HOME
so denidas atravs do arquivo /etc/passwd. Os valores padres destas variveis podem
ser substitudos especicando um novo valor nos arquivos do cron.
Exemplos de um arquivo /etc/crontab:
SHELL=/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
00 10
* * *
root sync
# Executa o comando sync todo o dia as 10:00
00 06
* *
1 root updatedb
# Executa o comando updatedb toda segunda-feira as 06:00.
10,20,40
* * * *
root runq
# Executa o comando runq todos os dias e a toda a hora em 10, 20 e 40 minutos.
*
/10
* * * *
root fetchmail
# Executa o comando fetchmail de 10 em 10 minutos todos os dias
15 0 25 12
*
root echo "Feliz Natal"|mail john
# Envia um e-mail as 0:15 todo o dia 25/12 para john desejando um feliz natal.
30 5
* *
1-6 root poff
# Executa o comando poff automaticamente as 5:30 de segunda-feira a sbado.
26.12 at
Oat agenda tarefas de forma semelhante ao cron com uma interface que permite a utilizao
de linguagemnatural nos agendamentos. Sua principal aplicao no uso de tarefas que sejam
disparadas somente uma vez. Uma caracterstica deste programa a execuo de aplicativos
que tenham passado de seu horrio de execuo, muito til se o computador desligado com
freqncia ou quando ocorre uma interrupo no fornecimento de energia.
Para utilizar o at, instale-o com o comando: apt-get install at. O prximo passo criar
os arquivos /etc/at.allow e at.deny. Estes arquivos so organizados no formato de um
usurio por linha. Durante o agendamento, vericado primeiro o arquivo at.allow (lista
de quem pode executar comandos) e depois o at.deny (lista de quem NO pode executar co-
mandos). Caso eles no existam, o agendamento de comandos permitido a todos os usurios.
Abaixo seguem exemplos do agendamento atravs do comando at:
echo ls | at 10am today Executa as 10 da manha de hoje
Captulo 26. Manuteno do Sistema 297
echo ls | at 10:05 today Executa as 10:05 da manha de hoje
echo ls | at 10:05pm today Executa as 10:05 da noite de hoje
echo ls | at 22:05 today Executa as 22:05 da noite de hoje
echo ls | at 14:50 tomorrow Executa o comando amanh as 14:50 da tarde
echo ls | at midnight Executa o comando a meia noite de hoje
echo ls | at midnight tomorrow Executa o comando a meia noite de amanh
echo ls | at noon Executa o comando de tarde (meio dia).
at -f comandos.txt teatime Executa os comandos especicados no arquivo comandos.txt no
horrio do caf da tarde (as 16:00 horas).
at -f comandos.txt +3 minutes Executa os comandos especicados no arquivo comandos.txt
daqui a 3 minutos. Tambm pode ser especicado hours ou days.
at -f comandos.txt tomorrow +3 hours Executa os comandos especicados no arquivo co-
mandos.txt daqui a 3 horas no dia de amanh. (se agora so 10:00, ela ser executada
amanh as 13:00 da tarde).
Todas as tarefas agendadas so armazenadas em arquivos dentro do diretrio /var/spool
/cron/atjobs. A sintaxe de comandos para gerenciar as tarefas semelhante aos utilitrios
do lpd: Para ver as tarefas, digite atq. Para remover uma tarefa, use o comando atrm seguido
do nmero da tarefa obtida pelo atq.
Captulo 26. Manuteno do Sistema 298
299
Captulo 27
Principais arquivos de congurao do
diretrio /etc
Este captulo descreve a funo, parmetros e exemplos de utilizao de alguns ar-
quivos/diretrios de congurao em /etc. Estes arquivos esto disponveis por padro na
instalao bsica do GNU/Linux, o que assegura um mximo de aproveitamento deste cap-
tulo. No sero descritos aqui arquivos de congurao especcos de servidores ou daemons
(com exceo do inetd).
27.1 Diretrio /etc/alternatives
Este diretrio contm links para diversos aplicativos padres utilizados pelo sistema. Dentre
eles so encontrados links para o editor do sistema e o xterm padro usado pelo sistema.
Por exemplo, se voc quiser usar o editor jed ao invs do ae ou vi, remova o link editor
com o comando rm editor, localize o arquivo executvel do jed com which jed e crie um
link para ele ln -s /usr/bin/jed editor. De agora em diante o editor padro usado
pela maioria dos aplicativos ser o jed.
27.2 Arquivo /etc/default/devpts
Este arquivo contm algumas conguraes para os pseudo terminais em /dev/pts.
27.3 Arquivo /etc/default/rcS
Contm variveis padres que alteram o comportamento de inicializao dos scripts em /etc
/rcS.d
Captulo 27. Principais arquivos de congurao do diretrio /etc 300
Por exemplo, se quiser menos mensagens na inicializao do sistema, ajuste o valor da varivel
VERBOSE para no.
OBS: Somente modique aquilo que tem certeza do que est fazendo, um valor modicado
incorretamente poder causar falhas na segurana de sua rede ou no sistemas de arquivos do
disco.
27.4 Arquivo /etc/console-tools/config
Este arquivo contm conguraes padres do pacote console-tools para as fontes de tela
e mapas de teclado usados pelo sistema. A fonte de tela especicada neste arquivo (as fontes
disponveis no sistema esto localizadas em /usr/share/consolefonts).
Os arquivos de mapa de teclados esto localizados no diretrio /usr/share/keymaps/.
27.5 Diretrio /etc/menu-methods
Este diretrio contm uma lista de arquivos que so executados pelo programa update-menu
para criar os menus dos programas.
27.6 Arquivo /etc/menu-methods/translate_menus
Este arquivo permite fazer a traduo de nomes de menus, identicao ou ttulos usados no
ambiente grco.
27.7 Diretrio /etc/network
Este diretrio contm as conguraes das interfaces (placas) de rede do sistema e outras
opes teis para a congurao/segurana da rede.
27.8 Arquivo /etc/network/interfaces
Este o arquivo de congurao usado pelos programas ifup e ifdown, respectivamente
para ativar e desativas as interfaces de rede.
O que estes utilitrios fazem na realidade carregar os utilitrios ifconfig e route
atravs dos argumentos passados do arquivo /etc/network/interfaces, permitindo que
o usurio iniciante congure uma interface de rede com mais facilidade.
Abaixo um exemplo do arquivo interfaces o seguinte:
Captulo 27. Principais arquivos de congurao do diretrio /etc 301
iface eth0 inet static
address 192.168.1.1
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
As interfaces e roteamentos so congurados na ordem que aparecem neste arquivo. Cada
congurao de interface inicia com a palavra chave iface. A prxima palavra o nome da
interface que deseja congurar (da mesma forma que utilizada pelos comandos ifconfig e
route). Voc pode tambm usar IP aliases especicando eth0:0 mas tenha certeza que
a interface real (eth0) inicializada antes.
A prxima palavra especica a familia de endereos da interface; Escolha inet para a rede
TCP/IP, ipx para interfaces IPX e IPv6 para interfaces conguradas com o protocolo IPV6.
A palavra static especica o mtodo que a interface ser congurada, neste caso uma
interface com endereo esttico (xo).
Outros mtodos e seus parmetros so especicados abaixo (traduzido da pgina do arquivo
interfaces):
O mtodo loopback usado para congurar a interface loopback (lo) IPv4.
O mtodo static usado para congurar um endereo IPv4 xo para a interface. As opes
que podem ser usadas com o mtodos static so as seguintes (opes marcadas com * no
nal so requeridas na congurao):
address endereo * Endereo IP da Interface de rede (por exemplo, 192.168.1.1).
netmask mscara * Mscara de rede da Interface de rede (por exemplo, 255.255.255.0).
broadcast endereo Endereo de Broadcast da interface (por exemplo, 192.168.1.255).
network endereo Endereo da rede (por exemplo, 192.168.0.0).
gateway endereo Endereo do gateway padro (por exemplo, 192.168.1.10). O gateway
o endereo do computador responsvel por conectar o seu computador a outra
rede. Use somente se for necessrio em sua rede.
O mtodo dhcp Este mtodo usado para obter os parmetros de congurao atravs de um
servidor DHCP da rede atravs das ferramentas: dhclient, pump (somente Kernels
2.2.x) ou dpcpcp (somente kernels 2.0.x e 2.2.x)
hostname nome Nome da estao de trabalho que ser requisitado. (pump, dhcpcd)
leasehours leasttime Lease time preferida em horas (pump)
leasetime leasetime Lease time preferida em segundos (dhcpcd)
vendor vendedor Identicador do vendedor (dhcpcd)
client identicao Identicao do cliente (dhcpcd)
Exemplo:
iface eth0 inet dhcp
leasehours 6
client estacao 10
Captulo 27. Principais arquivos de congurao do diretrio /etc 302
O mtodo bootp Este mtodo pode ser usado para obter um endereo via bootp:
bootle arquivo Diz ao servidor para utilizar arquivo como arquivo de inicializao
server endereo Especica o endereo do servidor bootp.
hwaddr endereo Usa endereo como endereo de hardware no lugar do endereo origi-
nal.
Algumas opes se aplicam a todas as interfaces e so as seguintes:
noauto No congura automaticamente a interface quando o ifup ou ifdown so executa-
dos com a opo -a (normalmente usada durante a inicializao ou desligamento do
sistema).
pre-up comando Executa o comando antes da inicializao da interface.
up comando Executa o comando aps a interface ser iniciada.
down comando Executa o comando antes de desativar a interface.
pre-down comando Executa o comando aps desativar a interface.
Os comandos que so executados atravs das opes up, pre-up e down podem aparecer vrias
vezes na mesma interface, eles so executados na seqncia que aparecem. Note que se um
dos comandos falharem, nenhum dos outros ser executado. Voc pode ter certeza que os
prximos comandos sero executados adicionando || true ao nal da linha de comando.
27.9 Arquivo /etc/networks/options
Este arquivo contmopes que sero aplicadas as interfaces de rede durante a inicializao do
sistema. Este arquivo lido pelo script de inicializao /etc/init.d/network que verica
os valores e aplica as modicaes apropriadas no kernel.
27.10 Diretrio /etc/pam.d
Este diretrio possui arquivos de congurao de diversos mdulos PAM existentes em seu
sistema.
27.11 Diretrio /etc/ppp
Contm arquivos de congurao usados pelo daemon pppd para fazer uma conexo com
uma rede PPP externa, criados manualmente ou atravs do pppconfig.
27.12 Diretrio /etc/security
Este diretrio contm arquivos para controle de segurana e limites que sero aplicados aos
usurios do sistema. O funcionamento de muitos dos arquivos deste diretrio depende de
modicaes nos arquivos em /etc/pam.d para habilitar as funes de controle, acesso e
restries.
Captulo 27. Principais arquivos de congurao do diretrio /etc 303
27.13 Arquivo /etc/security/access.conf
lido no momento do login do usurio e permite denir quem ter acesso ao sistema e de
onde tem permisso de acessar sua conta. O formato deste arquivo so 3 campos separados
por :, cada linha contendo uma regra de acesso.
O primeiro campo deve conter o caracter + ou - para denir se aquela regra permitir (+) ou
bloquear(-) o acesso do usurio.
O segundo campo deve conter uma lista de logins, grupos, usurio@computador ou a palavra
ALL (confere com tudo) e EXCEPT (excesso).
O terceiro campo deve conter uma lista de terminais tty (para logins locais), nomes de com-
putadores, nomes de domnios (iniciando com um .), endereo IP de computadores ou en-
dereo IP de redes (nalizando com .). Tambm pode ser usada a palavra ALL, LOCAL e
EXCEPT (atinge somente mquinas locais conhecidas pelo sistema).
Abaixo um exemplo do access.conf
# Somente permite o root entrar em tty1
#
-:ALL EXCEPT root:tty1
# bloqueia o logins do console a todos exceto whell, shutdown e sync.
#
-:ALL EXCEPT wheel shutdown sync:console
# Bloqueia logins remotos de contas privilegiadas (grupo wheel).
#
-:wheel:ALL EXCEPT LOCAL .win.tue.nl
# Algumas contas no tem permisso de acessar o sistema de nenhum lugar:
#
-:wsbscaro wsbsecr wsbspac wsbsym wscosor wstaiwde:ALL
# Todas as outras contas que no se encaixam nas regras acima, podem acessar de
# qualquer lugar
27.14 Arquivo /etc/security/limits.conf
Deni limites de uso dos recursos do sistema para cada usurio ou grupos de usurios. Os
recursos so descritos em linhas da seguinte forma:
#<dominio> <tipo> <item> <valor>
Captulo 27. Principais arquivos de congurao do diretrio /etc 304
Odomnio pode ser umnome de usurio, umgrupo (especicado como @grupo) ou o curinga
*
.
O tipo pode ser soft para o limite mnimos e hard para o limite mximo. O campo item
pode ser um dos seguintes:
core - limita o tamanho do arquivo core (KB)
data - tamanho mximo de dados (KB)
fsize - Tamanho mximo de arquivo (KB)
memlock - Espao mximo de endereos bloqueados na memria (KB)
nofile - Nmero mximo de arquivos abertos
rss - Tamanho mximo dos programas residentes (KB)
stack - Tamanho mximo de pilha (KB)
cpu - Tempo mximo usado na CPU (MIN)
nproc - Nmero mximo de processos
as - Limite de espao de endereos
maxlogins - Nmero mximo de logins deste usurio
priority - Prioridade que os programas deste usurio sero executados
Abaixo um exemplo de arquivo /etc/security/limits.conf:
#<dominio> <tipo> <item> <valor>
*
soft core 0
*
hard rss 10000
@student hard nproc 20
@faculty soft nproc 20
@faculty hard nproc 50
ftp hard nproc 0
@student - maxlogins 4
27.15 Arquivo /etc/crontab
Arquivo que contm a programao de programas que sero executados em horrios/datas
programadas.
Veja cron on page 294 para mais detalhes sobre o formato deste arquivo e outras opes.
27.16 Arquivo /etc/fstab
Contmdetalhes para a montagemdos sistemas de arquivos do sistema. Veja fstab on page 87
para detalhes sobre o formato deste arquivo.
Captulo 27. Principais arquivos de congurao do diretrio /etc 305
27.17 Arquivo /etc/group
Lista de grupos existentes no sistema. Veja Adicionando o usurio a um grupo extra on
page 166 para mais detalhes sobre o formato deste arquivo.
27.18 Arquivo /etc/gshadow
Senhas ocultas dos grupos existentes no sistema (somente o usurio root pode ter acesso a
elas). Use o utilitrio shadowconfig para ativar/desativar o suporte a senhas ocultas.
27.19 Arquivo /etc/host.conf
Veja /etc/host.conf on page 193.
27.20 Arquivo /etc/hostname
Arquivo lido pelo utilitrio hostname para denir o nome de sua estao de trabalho.
27.21 Arquivo /etc/hosts
Banco de dados DNS esttico que mapeia o nome ao endereo IP da estao de trabalho (ou
vice versa). Veja /etc/hosts on page 194 para mais detalhes sobre o formato deste arquivo.
27.22 Arquivo /etc/hosts.allow
Controle de acesso do wrapper TCPD que permite o acesso de determinadas de determinados
endereos/grupos aos servios da rede. Veja /etc/hosts.allow on page 200 para detalhes
sobre o formato deste arquivo.
27.23 Arquivo /etc/hosts.deny
Controle de acesso do wrapper TCPD que bloqueia o acesso de determinados en-
dereos/grupos aos servios da rede. Este arquivo somente lido caso o /etc/hosts.allow
no tenha permitido acesso aos servios que contm. Um valor padro razoavelmente seguro
que pode ser usado neste arquivo que serve para a maioria dos usurios domsticos :
ALL: ALL
Captulo 27. Principais arquivos de congurao do diretrio /etc 306
caso o acesso ao servio no tenha sido bloqueado no hosts.deny, o acesso ao servio
permitido.
Veja /etc/hosts.deny on page 201 para detalhes sobre o formato deste arquivo.
27.24 Arquivo /etc/hosts.equiv
Veja /etc/hosts.equiv e /etc/shosts.equiv on page 202.
27.25 Arquivo /etc/inetd.conf
Veja /etc/inetd.conf on page 196.
27.26 Arquivo /etc/inittab
Este o arquivo de congurao utilizado pelo programa init para a inicializao do sistema.
Para mais detalhes sobre o formato deste arquivo, consulte a pgina de manual do inittab.
27.27 Arquivo /etc/inputrc
Este arquivo contm parmetros para a congurao do teclado. Veja o nal da seo Acentu-
ao em modo Texto on page 273 e a pgina de manual do inputrc para mais detalhes.
27.28 Arquivo /etc/issue
Contm um texto ou mensagem que ser mostrada antes do login do sistema.
27.29 Arquivo /etc/issue.net
Mesma utilidade do /etc/issue mas mostrado antes do login de uma seo telnet. Outra
diferena que este arquivo aceita os seguintes tipos de variveis:
%t - Mostra o terminal tty atual.
%h - Mostra o nome de domnio completamente qualicado (FQDN).
%D - Mostra o nome do domnio NIS.
%d - Mostra a data e hora atual.
%s - Mostra o nome do Sistema Operacional.
%m - Mostra o tipo de hardware do computador.
Captulo 27. Principais arquivos de congurao do diretrio /etc 307
%r - Mostra a reviso do Sistema Operacional.
%v - Mostra a verso do Sistema Operacional.
%% - Mostra um simples sinal de porcentagem (%).
27.30 Arquivo /etc/lilo.conf
Arquivo de congurao do gerenciador de partida lilo. Veja LILO on page 89 e Um ex-
emplo do arquivo de congurao lilo.conf on page 94.
27.31 Arquivo /etc/login.defs
Denies de congurao para o pacote login
27.32 Arquivo /etc/modules
Veja /etc/modules on page 216.
27.33 Arquivo /etc/modules.conf
Veja modules.conf on page 216.
27.34 Arquivo /etc/motd
Mostra um texto ou mensagem aps o usurio se logar com sucesso no sistema. Tambm
usado pelo telnet, ftp, e outros servidores que requerem autenticao do usurio (nome e
senha).
27.35 Arquivo /etc/mtab
Lista os sistemas de arquivos montados atualmente no sistema. Sua funo idntica ao /proc
/mounts.
27.36 Arquivo /etc/networks
Veja /etc/networks on page 195.
Captulo 27. Principais arquivos de congurao do diretrio /etc 308
27.37 Arquivo /etc/passwd
o arquivo mais cobiado por Hackers porque contm os dados pessoais do usurio como o
login, uid, telefone e senha (caso seu sistema esteja usando senhas ocultas, a senha ter um
*
no lugar e as senhas reais estaro armazenadas no arquivo /etc/shadow).
27.38 Arquivo /etc/printcap
Banco de dados de congurao da impressora, usado por daemons de impresso como o lpr
e lprng.
27.39 Arquivo /etc/protocols
Veja /etc/protocols on page 205.
27.40 Arquivo /etc/resolv.conf
Veja /etc/resolv.conf on page 193.
27.41 Arquivo /etc/serial.conf
Conguraes das portas seriais do sistema. Veja a pgina de manual do serial.conf e a pgina
de manual do utilitrio setserial para detalhes de como congurar adequadamente a taxa
de transmisso serial conforme seu dispositivo.
27.42 Arquivo /etc/services
Veja /etc/services on page 204.
27.43 Arquivo /etc/shadow
Este arquivo armazena as senhas criptografadas caso estiver usando o recurso de senhas ocul-
tas. Este arquivo somente pode ser lido pelo usurio root.
Captulo 27. Principais arquivos de congurao do diretrio /etc 309
27.44 Arquivo /etc/shells
Contm uma lista de interpretadores de comando (shells) vlidos no sistema.
27.45 Arquivo /etc/syslog.conf
Contm conguraes para denir o que ser registrado nos arquivos de log em/var/log do
sistema. Veja a pgina de manual syslog.conf e dos programas klog e syslogd para entender
o formato usado neste arquivo.
27.46 Arquivo /etc/timezone
Contm a sua localizao para clculo correto do seu fuso-horrio local.
Captulo 27. Principais arquivos de congurao do diretrio /etc 310
311
Captulo 28
Conectando seu computador a Internet
Este captulo descreve como congurar seu sistema para se conectar a Internet, navegar, en-
viar/receber mensagens, etc.
28.1 Conectando-se a Internet
28.1.1 Conectando atravs de ADSL
A conexo atravs de banda larga em sistemas Debian realizada atravs do programa
pppoeconf ou modicando manualmente os arquivos de congurao em /etc/ppp. Esta
seo explicar como congurar a conexo em modo bridge e assume que voc j tem o mo-
dem conectado e sua placa de rede congurada. Para criar uma conexo internet atravs do
pppoeconf entre como usurio root no sistema, digite pppoeconf e siga os passos de cong-
urao:
1 Na primeira tela, ele perguntar se deseja que o modem seja detectado automaticamente.
Selecione sim. O sistema procurar e detectar o modem no sistema (assegure-se que ele
esteja ligado durante essa etapa).
2 Ao detectar o modem siga adiante e informe o nome de usurio para conexo
3 Em seguida informe a senha usada para autenticao
4 Nas prximas telas, selecione o valor padro para MTU e MSS (a no ser que seu prove-
dor DSL solicite a alterao).
5 Na tela sobre se a conexo deve ser iniciada na inicializao do sistema, selecione Sim.
28.1.2 Conectando atravs de Internet Discada
Para conectar usando internet discada utilizada a placa de Fax-Modem. Aconexo atravs de
sistemas Debian fcil, e todo o trabalho de congurao pode ser feito atravs do programa
Captulo 28. Conectando seu computador a Internet 312
pppconfig ou modicando manualmente os arquivos em/etc/ppp. Para criar uma conexo
internet atravs do pppconfig, entre como usurio root no sistema, digite pppconfig e siga
os passos de congurao (esta congurao serve para usurios domsticos e assume que
voc possui o kernel com suporte a PPP):
1 No primeiro menu, escolha a opo Create para criar uma nova conexo. As outras
opes disponveis so Change para modicar uma conexo a Internet criada anterior-
mente, Delete para apagar uma conexo. A opo Quit sai do programa.
2 Agora o sistema perguntar qual ser o nome da conexo que ser criada. O nome
provider o padro, e ser usado caso digite pon para iniciar uma conexo internet
sem nenhum argumento.
3 O prximo passo especicar como os servidores de nomes sero acessados. Escolha
Static se no tiver nenhum tipo de rede local ou None para usar os servidores especi-
cados no arquivo /etc/resolv.conf.
Aperte a tecla TAB e tecle ENTER para seguir para o prximo passo.
4 Agora digite o endereo do servidor DNS especicado pelo seu provedor de acesso. Um
servidor DNS converte os nomes como www.blablabla.com.br para o endereo IP
correspondente para que seu computador possa fazer conexo.
Tecle ENTER para seguir para o prximo passo.
5 Voc pode digitar um endereo de um segundo computador que ser usado na resoluo
de nomes DNS. Siga as instrues anteriores caso tiver um segundo servidor de nomes
ou ENTER para continuar.
6 Agora voc precisar especicar qual o mtodo de autenticao usado pelo seu prove-
dor de acesso. O Password Autentication Protocol usado pela maioria dos provedores de
acesso. Desta forma escolha a opo PAP
7 Agora entre com o seu login no provedor de acesso, ou seja, o nome para acesso ao
sistema que escolheu no momento que fez sua assinatura.
8 Agora especique a sua senha.
9 O prximo passo ser especicar a taxa de transmisso da porta serial do micro. O valor
de 115200 deve funcionar com todas as conguraes mais recentes.
Uma congurao serial DTE detalhada pode ser feita com a ferramenta setserial.
10 Agora ser necessrio selecionar o modo de discagem usado pelo seu fax-modem. Es-
colha tone para linha digital e pulse se possuir uma linha telefnica analgica.
Pressione TAB e tecle ENTER para prosseguir.
11 Agora digite o nmero do telefone para fazer conexo com o seu provedor de acesso.
12 O prximo passo ser a identicao do seu fax-modem, escolha YES para que seja uti-
lizada a auto-deteco ou NO para especicar a localizao do seu fax-modem manual-
mente.
Captulo 28. Conectando seu computador a Internet 313
13 Se voc quiser especicar mais detalhes sobre sua congurao, como strings de
discagem, tempo de desconexo, auto-discagem, etc., faa isto atravs do menu
Advanced.
Escolha a opo Finished para salvar a sua congurao e retornar ao menu principal.
Escolha a opo Quit para sair do programa.
Pronto! todos os passos para voc se conectar a Internet esto concludos, basta digitar pon
para se conectar e poff para se desconectar da Internet. Caso tenha criado uma conexo com
o nome diferente de provider voc ter que especica-la no comando pon (por exemplo, pon
provedor2).
A conexo pode ser monitorada atravs do comando plog e os pacotes enviados/recebidos
atravs do pppconfig.
Para uma navegao mais segura, recomendvel que leia e compreenda alguns tens que
podem aumentar consideravelmente a segurana do seu sistema em Segurana da Rede e
controle de Acesso on page 199, /etc/hosts.allow on page 200, /etc/hosts.deny on page 201.
A seo /etc/resolv.conf on page 193 pode ser tambm til.
28.2 Navegando na Internet
Existemdiversos tipos de navegadores web para GNU/Linux e a escolha depende dos recursos
que pretende utilizar (e do poder de processamento de seu computador).
Para navegar na Internet com muitos recursos, voc pode usar o navegador Firefox, ele
suporta plug-ins, extenses adicionais, java, ash, etc. Voc tambmtema escolha do Mozilla
que inspirou a criao do Netscape e outros navegadores derivados.
O dillo uma boa alternativa para aqueles que desejam um navegador em modo grco,
mas eles no tem suporte a Java e Frames.
Os usurios e administradores de servidores que operam em modo texto e precisam de nave-
gadores para testes, podem optar pelo Lynx ou o links. Uma listagem mais detalhada e
recursos requeridos por cada navegador podem ser encontrados em Internet on page 321.
28.3 Recebimento de E-Mails atravs do fetchmail
o programa mais tradicional no recebimento de mensagens atravs dos servios pop3, imap,
pop2, etc. no GNU/Linux. Ele pega as mensagens de seu servidor pop3 e as entrega ao MDA
local ou nos arquivos de e-mails dos usurios do sistema em /var/mail
Todo o funcionamento do fetchmail controlado pelo arquivo ~/.fetchmailrc. Segue
abaixo um modelo padro deste arquivo:
poll pop3.seuprovedor.com.br protocol pop3
user gleydson password sua_senha keep fetchall is gleydson here
Captulo 28. Conectando seu computador a Internet 314
Este arquivo lido pelo fetchmail na ordem que foi escrito. Veja a explicao abaixo sobre o
arquivo exemplo:
A palavra poll especica o servidor de onde suas mensagens sero baixadas, o servidor
especicado no exemplo pop3.seuprovedor.com.bt. A palavra skip pode ser es-
pecicada, mas as mensagens no servidor especicado por skip somente sero baixadas
caso o nome do servidor de mensagens for especicado atravs da linha de comando do
fetchmail.
protocol o protocolo que ser usado para a transferncia de mensagens do servidor.
O fetchmail utilizar a auto-deteco de protocolo caso este no seja especicado.
user dene o nome do usurio no servidor pop3.seuprovedor.com.br, que no exemplo
acima gleydson.
password dene a senha do usurio gleydson (acima), especicada como sua_senha
no exemplo.
keep opcional e serve para no apagar as mensagens do servidor aps baixa-las (til
para testes e acesso a uma nica conta de e-mail atravs de vrios locais, como na em-
presa e sua casa por exemplo).
fetchall baixa todas as mensagens do provedor marcadas como lidas e no lidas.
is gleydson here um modo de especicar que as mensagens obtidas de
pop3.seuprovedor.com.br do usurio gleydson com a senha sua_senha sero
entregues para o usurio local gleydson no diretrio /var/mail/gleydson. As
palavras is e here so completamente ignoradas pelo fetchmail, servem somente
para dar um tom de linguagem natural na congurao do programa e da mesma forma
facilitar a compreenso da congurao.
Se possuir vrias contas no servidor pop3.seuprovedor.com.br, no necessrio repetir
toda a congurao para cada conta, ao invs disso especique somente os outros usurios do
mesmo servidor:
poll pop3.seuprovedor.com.br protocol pop3
user gleydson password sua_senha keep fetchall is gleydson here
user conta2 password sua_senha2 fetchall is gleydson here
user conta3 password sua_senha3 fetchall is gleydson here
Note que todos os e-mails das contas gleydson, conta2 e conta3 do servidor de men-
sagens pop3.seuprovedor.com.br so entregues ao usurio local gleydson (arquivo
/var/mail/gleydson).
Agora voc pode usar um programa MUA como o mutt ou pine para ler localmente as men-
sagens. O armazenamento de mensagens no diretrio /var/mail preferido pois permite
a utilizao de programas de noticao de novos e-mais como o comsat, mailleds, biff,
etc.
Tambm possvel utilizar um processador de mensagens ao invs do MTA para a entrega
de mensagens. O programa procmail um exemplo de processador de mensagens rpido
e funcional que pode separar as mensagens em arquivos de acordo com sua origem, destino,
assunto, enviar respostas automticas, listas de discusso, envio de arquivos atravs de req-
uisio, etc. Veja Processamento de mensagens atravs do procmail on the next page para
detalhes.
Captulo 28. Conectando seu computador a Internet 315
Para mais detalhes sobre outras opes especcas de outros protocolos, checagem de men-
sagens, criptograa, etc, veja a pgina de manual do fetchmail.
28.3.1 Processamento de mensagens atravs do procmail
O processamento de mensagens pode ser usado para inmeras nalidades, dentre elas a mais
comum separar uma mensagem em arquivos/diretrios de acordo com sua origem, prior-
idade, assuntos, destinatrio, contedo, etc., programar auto-respostas, programa de frias,
servidor de arquivos, listas de discusso, etc.
O procmail um programa que rene estas funes e permitem muito mais, dependendo
da habilidades e conhecimento das ferramentas GNU/Linux para saber integra-las correta-
mente. Toda a operao do procmail controlada pelo arquivo /etc/procmailrc e ~
/.procmailrc. Abaixo um modelo do arquivo ~/.procmailrc usado para enviar todas as
mensagens contendo a palavra GNU/Linux no assunto para o arquivo mensagens-linux:
PATH=/usr/bin:/bin:/usr/local/bin:
MAILDIR=$HOME/Mail
DEFAULT=$MAILDIR/mbox
LOGFILE=$MAILDIR/log
:0:
*
^Subject:.
*
Linux
mensagens-linux
A varivel de ambiente MAILDIR especica o diretrio que sero armazenadas as mensagens
e logs das operaes do procmail. A varivel DEFAULT especica a caixa de correio padro
onde todas as mensagens que no se encaixam nas descries do ltro do procmailrc sero
enviadas. A varivel LOGFILE especica o arquivo que registrar todas as operaes real-
izadas durante o processamento de mensagens do procmail.
O arquivo mensagens-linux criado dentro do diretrio especicado por MAILDIR.
Para que o procmail entre em ao toda vez que as mensagens forem baixadas
via fetchmail, preciso modicar o arquivo .fechmailrc e incluir a linha mda
/usr/bin/procmail -d %T no nal do arquivo e retirar as linhas is [usuriolocal]
here para que o processamento das mensagens seja feita pelo MDA local (neste caso, o
procmail).
Se quiser que o procmail seja executado pelo MDA local, basta criar um arquivo ~
/.forward no diretrio do usurio e incluir a linha exec /usr/bin/procmail (note que
em algumas implementaes do exim, o procmail executado automaticamente caso um
arquivo ~/.procmailrc seja encontrado, caso contrrio ser necessrio adicionar a linha
/usr/bin/procmail ao arquivo ~/.forward (somente exim).
Para mais detalhes, veja a pgina de manual do procmail, procmailrc e HOWTOs rela-
cionados com e-mails no GNU/Linux.
Captulo 28. Conectando seu computador a Internet 316
317
Captulo 29
X Window (ambiente grco)
Este captulo do guia traz explicaes sobre o ambiente grco X Window System.
29.1 O que X Window?
um sistema grco de janelas que roda em uma grande faixa de computadores, mquinas
grcas e diferentes tipos de mquinas e plataformas Unix. Pode tanto ser executado em
mquinas locais como remotas atravs de conexo em rede.
29.2 A organizao do ambiente grco X Window
Em geral o ambiente grco X Window dividido da seguinte forma:
O Servidor X - o programa que controla a exibio dos grcos na tela, mouse e
teclado. Ele se comunica com os programas cliente atravs de diversos mtodos de co-
municao.
O servidor X pode ser executado na mesma mquina que o programa cliente esta sendo
executado de forma transparente ou atravs de uma mquina remota na rede.
O gerenciador de Janelas - o programa que controla a aparncia da aplicao.
Os gerenciadores de janelas (window managers) so programas que atuam entre o servi-
dor X e a aplicao. Voc pode alternar de um gerenciador para outro sem fechar seus
aplicativos.
Existem vrios tipos de gerenciadores de janelas disponveis no mercado entre os mais
conhecidos posso citar o Window Maker (feito por um Brasileiro), o After
Step, Gnome, KDE, twm (este vem por padro quando o servidor X instalado),
Enlightenment, IceWm, etc.
A escolha do seu gerenciador de janelas pessoal, depende muito do gosto de cada pes-
soa e dos recursos que deseja utilizar.
Captulo 29. X Window (ambiente grco) 318
A aplicao cliente - o programa sendo executado.
Esta organizao do ambiente grco X traz grandes vantagens de gerenciamento e recursos
no ambiente grco UNIX, uma vez que temestes recursos voc pode executar seus programas
em computadores remotos, mudar totalmente a aparncia de um programa sem ter que fecha-
lo (atravs da mudana do gerenciador de janelas), etc.
29.3 Iniciando o X
O sistema grco X pode ser iniciado de duas maneiras:
Automtica - Usando um gerenciador de seo como xdm, gdm ou wdm que apresenta
uma tela pedindo nome e senha para entrar no sistema (login). Aps entrar no sistema,
o X executar um dos gerenciadores de janelas congurados.
Manual - Atravs do comando startx, ou xinit (note que o startx e xstart so
scripts que fazem uma congurao completa do ambiente e em algumas distribuies
tambm o procedimento de congurao de autenticao do ambiente antes de executar
o xinit) . Neste caso o usurio deve entrar com seu nome e senha para entrar no modo
texto e ento executar um dos comandos acima. Aps executar um dos comandos acima,
o servidor X ser iniciado e executar um dos gerenciadores de janelas congurados no
sistema.
29.4 Servidor X
Como dito acima, o servidor X controla o teclado, mouse e a exibio dos grcos em sua
tela. Para ser executado, precisa ser congurado atravs do arquivo /etc/X11/xorg.conf,
usando dpkg-reconfigure xserver-xorg, ou usando o utilitrio xf86cfg (modo texto).
Analizao do servidor X feita atravs do pressionamento simultneo das teclas CTRL, ALT,
Back Space. O servidor X imediatamente terminado e todos os gerenciadores de janelas e
programas clientes so fechados.
CUIDADO: Sempre utilize a opo de sada de seu gerenciador de janelas para encerrar nor-
malmente uma seo X11 e salve os trabalhos que estiver fazendo antes de nalizar uma seo
X11. A nalizao do servidor X deve ser feita em caso de emergncia quando no se sabe o
que fazer para sair de um gerenciador de janelas ou de um programa mal comportado.
Recomendo fazer a leitura de Fechando um programa quando no se sabe como sair on
page 119 caso estiver em dvidas de como nalizar um programa mal comportado ou que
no sabe como sair.
319
Captulo 30
Aplicativos para Linux
Este captulo traz uma lista de aplicativos e suas caractersticas e tem como objetivo servir de
referncia para a escolha de um programa que atenda as suas necessidades especcas.
Os programas descritos aqui so Clientes, ou seja, fazem acesso a um programa Servidor
(como o caso dos navegadores) para funcionarem. Os programas servidores esto descritos
na verso Avanado do guia, de forma passo a passo, caractersticas e mtodos de congurao
recomendados.
Se voc conhece um bom programa e acha que ele deveria estar aqui, me avise pelo email
<gleydson@guiafoca.org>.
30.1 Aplicativos Bsicos
So aplicativos que fazem parte do cotidiano da maioria dos usurios domsticos e de empre-
sas.
30.1.1 Editores de Texto
vi Modo Texto - (existem algumas verses adaptadas para o modo grco). um dos editores
padres dos sistemas GNU/Linux e sua interface complexa e possui muitas funes
(usurios GNU/Linux avanados adoram a quantidade de funes deste programa). Re-
comendo que aprenda o bsico sobre ele, pois sempre estar disponvel caso ocorra al-
gum problema no sistema.
Para sair do editor vi sem salvar pressione ESC e digite :q!. Para sair do editor e salvar
pressione ESC e digite :wq.
elvis Modo Texto - possui boa interface de comunicao com o usurio, suporte a HTML e
Metacaracteres.
Captulo 30. Aplicativos para Linux 320
ae Modo Texto - um dos editores padres dos sistemas GNU/Linux (encontrado nas dis-
tribuies Debian e baseadas). Sua interface mais fcil que o vi. Tambm recomendo
que aprenda o bsico sobre ele, pois requerido para a manuteno do sistema.
Para sair do ae sem salvar pressione CTRL+Q, para salvar o texto pressione CTRL+X e
CTRL+W (aps isto se quiser sair do editor, pressione CTRL+Q).
jed Modo Texto - Recomendvel para aqueles que esto acostumados com o EDIT do DOS e
gostam de menus suspensos. Sua interface de fcil operao.
O jed possui recursos poderosos para programadores de C e outras linguagens que faz
auto-tabulao, auto-identao e delimitao de blocos de cdigo atravs de cores.
mcedit Modo Texto - Muito fcil de utilizar e possui interface emPortugus do Brasil, emgeral
no requer um tutorial para aprendizado. Este programa faz parte do pacote Midnight
Commander (conhecido tambm como mc).
Voc utiliza as teclas de funo (F1 a F10) para salvar o texto, procurar palavras no texto,
pedir ajuda, sair, etc. Ele possui recursos para colorir blocos de cdigo (testado com
arquivos HTML e SGML).
joe Modo Texto - um editor muito verstil e voc pode escolher inclusive sua interface.
gedit Modo Grco - editor do Gnome, sua interface de comunicao tima e recomendado
para aqueles que gostam de trabalhar com muitos arquivos abertos, copiar e colar, etc.
Possui muitos recursos de operao de arquivo, tabulaes, browser, diff de documentos,
etc.
gxedit Modo Grco - Editor no estilo do gedit, sua interface de comunicao com o usurio
tima, possui suporte a e-mail, mede o nmero de toques por minuto do usurio (digi-
tao), suporte a tags HTML, audio, rede, correo ortogrca, etc.
30.1.2 Aplicativos para Escritrio
Open Ofce Modo Grco - Pacote de Escritrio contendo editor de texto, planilha de clculo,
banco de dados, digitalizador de imagens, editor grco, calculadora, navegador, e-mail,
abre todos os arquivos do MS Ofce 2000 e sua interface idntica aos programas do
Ofce, no requerendo novo treinamento dos usurios. Todos os programas do Open
Office so iniciados atravs de uma interface virtual idntica ao Windows (com menu
iniciar e tudo mais).
Possui verso em Portugus e sua verso atual a 1.0. Alm da impressionante inte-
grao entre os programas que compem o conjunto, o Open Office possui um frame
de navegao com centenas de modelos, barra de desktop, localizao fcil de arquivos
e abertura instantnea.
O Open Office possui mais recursos que o Ofce e no custa nada! Seu tamanho para
download de 80MB e no requer o pagamento de licenas para a instalao em com-
putadores de empresas ou domsticos.
Captulo 30. Aplicativos para Linux 321
Oequipamento mnimo que recomendo para a execuo do Open Office um586 com
64 MB de memria RAM e 200 MB Livres no disco rgido. Sua instalao feita em modo
grco e o tamanho ocupado no disco depende dos componentes selecionados.
Abiword Modo Grco - um editor de Textos mais simples que o Star Office e uma boa
interface de operao que possui suporte a arquivos do Ofce 2000.
O equipamento mnimo que recomendo para a execuo do Abiword um 486 com 8
MB de memria RAM e 7 MB de espao livre no disco rgido (ele pode ocupar menos
espao caso as bibliotecas compartilhados que utiliza j estiverem instaladas).
Corel Word Perfect Modo Grco - Pacote de escritrio da Corel. Uma alternativa ao Open
Office. Ele requer o pagamento de licenas para seu uso.
30.1.3 Internet
Netscape 4.73 Modo Grco - Verso do Netscape Communicator para GNU/Linux, comcrip-
tograa forte, programa de e-mail, news, editor interativo de pginas HTML, catlogo de
endereos. Tambm possui suporte a rede proxy e conexo via rewall.
Equipamento mnimo recomendvel: 486 com 32 MB de RAM e 40 MB de espao em
disco livre.
Mozilla Modo Grco - Navegador que inspirou a construo do Netscape, foi o primeiro
navegador grco e hoje a verso do Netscape 6.0 baseada no Mozilla. Se gosta de
frescuras na aparncia do navegador escolha este mas o desempenho do Netscape 4.73
melhor. . . Tambm possui suporte a rede proxy e conexo via rewall
Equipamento mnimo recomendado: 486 com 48 MB de RAM e 40 MB de espao em
disco livre.
Arena Modo Grco - navegador pequeno, sem suporte a Java e Frames, ideal para computa-
dores menos potentes. Recomendo o Lynx!
Equipamento mnimo recomendado: 386 com 8 MB de RAM e 12 MB de disco
Opera Modo Grco - Navegador pequeno, semsuporte a Java e Frames, ideal para computa-
dores menos potentes. Ainda recomendo o Lynx!
Lynx Modo Texto - Agora sim! Navegador pequeno, no tem suporte a frames mas ex-
ibe uma listagem permitindo selecionar qual ser aberto, sem suporte a Java e muito
exvel em sua congurao (d uma olhada na quantidade de opes no arquivo /etc
/lynx.cfg). Tambm funciona via proxy tradicional ou rewall.
Equipamento mnimo recomendado: 386 com 2 MB de RAM e 2 MB de disco.
Pine Modo Texto - Programa de E-Mail muito usado entre os usurios GNU/Linux, mas no
gratuito. . . Possui suporte a criptograa PGP e HTML em sua nova verso.
Mutt Modo Texto - Outro programa de E-mail muito usado pelos usurios do GNU/Linux.
Possui suporte a criptograa PGP, cores de destaque nas mensagens e processamento de
Captulo 30. Aplicativos para Linux 322
links HTML. muito personalizvel (veja a quantidade de opes no arquivo de cong-
urao /etc/Muttrc). Sua interface em Portugus.
Equipamento mnimo recomendado: 386 com 2 MB de RAM e 2 MB de disco.
ftp Modo Texto - O prprio! faz cpias de arquivos de um site remoto para seu disco local ou
vice versa. Veja ftp on page 154 para mais detalhes.
Equipamento mnimo recomendado: 386 com 2 MB de RAM e 1 MB de disco.
telnet Modo Texto - Conexo ao terminal virtual remotamente. Permite controlar seu terminal
remotamente atravs de uma conexo via rede TCP/IP. Veja telnet on page 153 para
mais detalhes.
Equipamento mnimo recomendado: 386 com 2 MB de RAM e 1 MB de disco.
talk Modo Texto - Permite conversar com outros usurios GNU/Linux conectados atravs de
uma rede TCP/IP no estilo do Bate Papo ou do Chat do ICQ. Veja talk on page 155 para
mais detalhes.
Equipamento mnimo recomendado: 386 com 2 MB de RAM e 1 MB de disco.
fetchmail Modo Texto - Permite baixar as mensagens de seu servidor de e-mail para o seu
diretrio de usurio no sistema.
Equipamento mnimo recomendado: 386 com 2 MB de RAM e 1 MB de disco.
procmail Modo Texto - Organiza mensagens em arquivos separados de acordo com a
origem/assunto/contedo. O procmail muito exvel e tambm permite resposta
automtica de acordo com alguns tipos de mensagens e a criao de ltros de mensagens
muito poderosos caso voc conhea e saiba integrar as ferramentas do sistema.
bitchx Programa de IRC muito complexo e poderoso. Ele opera em modo texto e em modo
grco (xbitchx). Tem que ter disposio de hacker para aprender o que signicam cada
uma das 4 telas de comandos obtidos com o /help.
Equipamento mnimo recomendado: 386 com 2 MB de RAM e 4 MB de disco.
xchat Programa de IRC muito fcil de usar e com muitos recursos. Ele possui verses para
modo texto e grco e possui suporte a scripts Perl e Python, personalizao de menus,
comandos, etc. Sua exibilidade muito boa para quem conhece os comandos dos
clientes IRC. Tambm permite o log das conversas pblicas e privadas. Tambm fun-
ciona via proxy tradicional ou Firewall.
Equipamento mnimo recomendado: 386 com 8 MB de RAM e 3 MB de disco.
licq Modo grco - Programa de ICQ grco para GNU/Linux. Apesar de ter muitos recur-
sos, sua interface muito organizada e possui suporte a seleo de sua aparncia (Skins).
Emite avisos sonoros e levanta-se sobre as outras janelas durante o recebimento de men-
sagens. Tambm funciona via proxy tradicional ou Firewall.
Equipamento mnimo recomendado: 486 com 16 MB de RAM e 10 MB de disco.
Captulo 30. Aplicativos para Linux 323
gaim Modo grco - Possui suporte a mltiplos protocolos, podendo se conectar ao ICQ,
MSN, Jabber, e outros.
Equipamento mnimo recomendado: 486 com 16 MB de RAM e 20 MB de disco.
zicq Modo Texto - Programa de ICQ em modo Texto.
Equipamento mnimo recomendado: 386 com 2 MB de RAM e 1 MB de disco.
amsn Modo Grco - Suporta protocolo MSN.
Equipamento mnimo recomendado: 486 com 16 MB de RAM e 8 MB de disco.
30.1.4 Emuladores
DosEmu Emulador do DOS. Permite executar aplicativos e jogos de DOS no GNU/Linux
Equipamento mnimo recomendado: 486 com 8 MB de RAM e 4 MB de disco.
Wine Emulador de Windows. Permite executar aplicativos desenvolvidos para Windows
3.1X, 9X, NT e 200x no GNU/Linux.
Equipamento mnimo recomendado: 486 com 16 MB de RAM e 12 MB de disco.
30.1.5 Utilitrios
Midnight Commander Gerenciador de Arquivos no estilo do Norton Commander e Far. Opera
tanto em modo texto e grco e possui todas as qualidades dos gerenciadores acima,
mais o suporte ao painel FTP, permisses de arquivos e dicas sobre o sistema. Simples,
prtico e til.
Equipamento mnimo recomendado: 386 com 4 MB de RAM e 2 MB de disco.
wget Modo Texto - Permite a cpia completa de sites remotos e tambm pode ser usado como
mirror. Com o simples comando wget http://www.guiafoca.org, todo o site do
guia Foca Linux ser gravado em seu disco. O wget tambm tem a caracterstica de
resumir downloads interrompidos e copiar somente arquivos mais novos.
Gostou da idia? Isto s o comeo! existemferramentas mais poderosas no GNU/Linux
:-)
Equipamento mnimo recomendado: 386 com 4 MB de RAM e disco dependendo do
tamanho do site que deseja copiar (um disco maior que 540 MB exige uma placa me
com suporte a LBA :-)
30.1.6 Administrao do Sistema
logcheck Envia um E-Mail periodicamente ao usurio alertando sobre ocorrncias especiais
encontradas nos logs do sistema, como tentativas de invaso sem sucesso, tentativas de
acesso ao usurio root do sistema, erros nos dispositivos, mensagens dos daemons, inetd,
etc.
Captulo 30. Aplicativos para Linux 324
30.2 Listagem de Aplicativos para GNU/Linux
Esta seo contm uma listagem dos mais diversos tipos de aplica-
tivos/ferramentas/scripts/suites/servidores, etc. para GNU/Linux com sua respectiva
descrio. A listagem est organizada em ordem alfabtica e subsees para facilitar a sua
navegao e localizao do aplicativo desejado.
Alguns aplicativos marcados com(D) no nal da descrio so Docks que so executados como
cones no gerenciador de janelas.
30.2.1 Perifricos / Gerenciamento de Hardware
3c5x9utils - Utilitrios de congurao e diagnstico para placas 3Com 5x9
apcupsd - Gerenciamento de Energia para No Breaks APC
buffer - Programa de buffering/reblocking para backup em tapes, impresso, etc
dds2tar - Ferramenta para usar caractersticas DDS de unidades DAT com o programa
tar da GNU
dtlk -Controlador de dispositivo Linux para o DoubleTalk PC
eject - ejeta CDs e opera CD-Changers sob o Linux
estic - Programa de administrao para ISDN PABX ISTEC 1003/1008
gatos - Software de captura TV All-in-Wonder da ATI
genpower - Monitor de No Break e manipulador de falhas de energia
hdparm - Permite fazer um ajuste no na performance do disco rgido
hpscanpbm - Utilitrio para o Scanner HP ScanJet
hwtools - Coleo de ferramentas para o gerenciamento em baixo nvel do hardware
isapnp - Permite congurar recursos de dispositivos Plug-and-Play no Linux
jazip - monta e desmonta Zip drives Iomega e/ou Jaz
jaztool - Utilitrio para manipular drives Iomega
joystick -Ferramentas de teste e calibragem de Joysticks
lcdproc - Daemon de tela LCD
lm-sensors - Utilitrios para ler a temperatura/voltagem/sensores da ventoinha da
CPU
mtx - Controla unidades tape autochangers
pciutils - Utilitrios PCI para o Linux (para kernels 2.[123].x )
powstatd - Daemon de monitoramento de No Breaks congurvel
prime-net - Permite doar ciclos da CPU no usados - Cliente PrimeNet GIMPS
sane-gimp1.1 - Interface para Scanners no gimp
sane - Interface para Scanners. Permite a comunicao e uso de diversos tipos de scan-
ners diferentes.
setcd - Controla caractersticas de funcionamento de sua unidade de CD-ROM (auto-
lock, auto-eject, etc)
sformat - Formatador de discos SCSI e ferramenta de reparo
svgatextmode - Executa o modo de texto em alta resoluo
synaptics - Congura um TouchPad da Synaptics
upsd - Programa monitor de No Breaks
wanpipe - Utilitrios de congurao para placas Sangoma S508/S514 WAN
Captulo 30. Aplicativos para Linux 325
wdsetup - Utilitrio de congurao para placas ethernet Western Digital e SMC
xsane-gimp1.1 - Uma interface X11 baseada no GTK para o SANE (Scanner Access
Now Easy)
xsane - Uma interface X11 baseada no GTK para o SANE (Scanner Access Now Easy)
xviddetect - Detecta o modelo da placa de vdeo e indica servidores X associados a
placa
30.2.2 Internet
arena - um navegador WWW compatvel com HTML 3.0 para o X
bezerk - Cliente IRC baseado em GTK
bitchx - Cliente IRC Avanado
bitchx-gtk - Interface grca GTK para o BitchX
cftp - Cliente ftp de tela cheia
chimera2 - Navegador Web para o X
dxftp - Cliente FTP Darxite baseado em linha de comando
epic4 - Cliente irc epic irc client, verso 4
epic - Cliente ircII modicado com funcionalidades adicionais
everybuddy - Cliente ICQ, AOL, Yahoo (tudo em 1)
express - Navegador web baseado em GTK para o GNOME
filerunner - Programa FTP e Gerenciador de Arquivos baseado em X
ftp - O cliente FTP padro
ftp-upload - Envia arquivos FTP atravs de um script
gaim - Um clone GTK do AOL Instant Messenger
gftp - Cliente FTP do X/GTK+
gnap - Cliente Gnome para o Napster
gnapster - Cliente Napster para Linux - localiza arquivos MP3 na Internet
gnomeicu - Clone pequeno, rpido e funcional do Mirabilis ICQ
gnome-napster - Cliente Napster para Linux - localiza arquivos MP3 na Internet
gpppon - Um applet do gnome que funciona como uma interface ao pon e poff
gzilla - Um navegador web baseado em GTK
irssi - Cliente IRC para Gnome
isdnbutton - Inicia e Interrompe conexes ISDN e mostra status
licq-data - Arquivos de daods para o Licq
licq-plugin-qt2 - Interface grca para o Licq usando bibliotecas QT2
licq - Programa ICQ grco para Linux
lynx - Navegador WWW em modo texto
micq - Cliente ICQ baseado em texto com muitas caractersticas
mosaic - Navegador WWW Grco
mozilla - Um Navegador WWW de cdigo aberto para o X e GTK+
ncftp2 - Um cliente FTP com interface fcil e com muitas caractersticas
ncftp - Um cliente FTP com interface fcil e com muitas caractersticas
Netscape - Navegador grco comprograma de e-mail, news, livro de endereos, editor
de pginas HTML. Suporta Java, tabelas, frames, CSS, proxy, etc. . .
ppxp - Programa PPP
Captulo 30. Aplicativos para Linux 326
ppxp-tcltk - Console tk do ppxp
ppxp-x11 - Console X do ppxp
quickppp - Ferramenta de congurao PPP
realplayer - Real Player
sysnews - Mostra noticias do sistema (de /var/news)
talk - Permite conversar com outro usurio conectado ao sistema ou via rede TCP/IP
tftp - Programa trivial le transfer
tik - Cliente Tcl/Tk do servio AOL Instant Messenger
utalk - programa parecido com o talk com caractersticas adicionais
vrwave - Navegador baseado em VRML 2.0 java
vrweb - Um navegador VRML e editor
wvdial - Discador PPP com inteligncia embutida.
wxftp-gtk - Um programa ftp grco com a interface GTK
xchat - Cliente IRC para X similar ao AmIRC
xchat-gnome - Cliente IRC para o GNOME similar ao AmIRC
xisp - Uma interface X amigvel ao pppd/chat
xitalk - Programa talk que lista usurios atuais do sistema. Ele tambm pode iniciar
uma seo talk, tocar som, executar um aplicativo, etc. durante uma requisio talk
xrn - Leitor de news NNTP baseado em X
xtalk - Um cliente X-Window BSD talk, escrito em Python
ytalk - Programa talk avanado com suporte ao X
zicq - Cliente ICQ baseado em ncurses
30.2.3 Conferncia de audio/vdeo via Internet/Intranet
camediaplay - Interface de Cmera Digital
cqcam - Programa de Controle da Cmera Colorida QuickCam (PC/Paralela)
gphoto - Aplicativo Universal para cmeras digitais
gstalker - Stock and commodity price charting utility
photopc - Interface para cmeras digitais
phototk - Interface grca para cmeras digitais
qcam - Capturador de Imagens da QuickCam
qvplay - Ferramenta de comunicao para a cmera Casio QV
rat - RAT - Ferramenta de conferncia de audio unicast e multicast
Vat - Ferramenta de audio conferncia via rede/Internet
vic - Ferramenta de vdeo conferncia
wbd - Prancha de Desenho para Multicast
webcam - Captura e faz o upload automtico de imagens para um servidor web
30.2.4 Gerenciamento de WebSites / Linguagem HTML
adacgi - Interface CGI para o Ada
amaya - Editor HTML Grco da w3.org
analog - Analiza arquivos de log de servidores www
Captulo 30. Aplicativos para Linux 327
bk2site - Utilitrio para tornar bookmarks em pginas parecidas com o ya-
hoo/Slashdot
bluefish - Um editor HTML baseado em Gtk+
bookmarker - Gerenciamento de bookmark baseado em WWW, ferramenta de recuper-
ao e procura
bookmarks - Outra coleo de bookmarks
browser-history - Daemon do usurio que captura URLs procuradas e as registra
c2html - Destaca cdigos em C para apresentao em WWW
cgic-capture - Captura de ambiente CGI para depurao
cgiemail - Conversor de formulrio CGI para E-Mail
cgilib - Biblioteca CGI simples
cgiwrap - Permite usurios ordinrios executar seus prprios Scripts CGI
checkbot - Vericador de links WWW
cocoon - Um Framework de publicao XML/XSL
cronolog - Um roteador de arquivos de log para servidores web
curl - Copia um arquivo de um servidor FTP, GOPHER, ou HTTP (sem suporte a ssl)
cvs2html - Cria verses em html dos logs do CVS
faqomatic - FAQ cgi online e interativa
freetable - Um script em Perl que facilita a produo de tabelas HTML
gifsicle - Poderoso programa para a manipulao de imagens GIF
giftrans - Converte qualquer arquivo GIF em um GIF89a
gnujsp - Uma implementao gratuita do Suns Java Server Pages (JSP 1.0)
gtml - Um pr-processador HTML
htdig - Sistema de procura WWW para a Intranet ou uma pequena internet
htget - Um capturador de arquivos que obtm arquivos atraes de servidores HTTP
htmldoc - Processador HTML que gera arquivos HTML, PS, e PDF indexados
htmlgen - Gerao de documentos HTML com scripts em Python
htp - Um pr-processador HTML
http-analyze - Um analizador rpido de logs de servidores WWW
hypermail - Cria arquivos HTML de listas de discusses por E-Mail
imaptool - Uma ferramenta para a criao de mapas de imagens do lado cliente
imgsizer - Adiciona os atributos WIDTH e HEIGHT a tags IMG tags em arquivos
HTML
imho - Mdulo de E-Mail baseado na Web para o Roxen (usando IMAP)
imp - Programa de E-Mail baseado em IMAP para a Web
java2html - Destaca cdigos em Java e C++ para apresentao via WWW
jserv - Motor Java Servlet 2.0 com um mdulo Apache adicional
junkbuster - O Junkbuster da Internet!
latte - A linguagem para transformao de texto (atualmente para html)
linbot - Vericador de links de sites WWW
lists-archives - Arquivo Web para listas de discusso por E-Mail
mailto - Ligao de formulrios WWW com o programa de E-Mail
muffin - Um proxy Web pessoal e extensvel
pas2html - Destaca fontes do Pascal e Modula para apresentao via WWW
pcd2html - Scripts para converter imagens PCD para pginas HTML comentadas
perl2html - Destaca fontes do Perl para apresentao via WWW
Captulo 30. Aplicativos para Linux 328
php3 - Uma linguagem script embutida em HTML - lado do servidor
php4 - Uma linguagem script embutida em HTML - lado do servidor
phplib - Biblioteca para escrever aplicaes para a Web facilmente
plugger - Plug-in Mime do Netscape
rpm2html - Gera ndices HTML dos diretrios de RPMs
screem - Um ambiente de desenvolvimento de website
sitecopy - Um programa para gerenciar um site WWW via FTP
squishdot - Sistema de discusso/news baseado na Web
swish-e - Sistema simples de indexao Web para Humanos
swish++ - Sistema simples de indexao Web para Humanos++
tidy - Vericador de sintaxe HTML e reformatador do cdigo
w3mir - Ferramenta de cpia completa HTTP e mirror
wdg-html-validator - Vericador de arquivos HTML
webalizer - Programa de anlise arquivos de log do servidor Web
weblint - Um vericador de sintaxe e estilo mnimo para HTML
webmagick - Cria uma galeria de thumbnails para website
websec - Secretria Web
wget - Utilitrio para copiar arquivos atraes da WWW via HTTP e FTP com suporte a
reinicio do ponto de interrupo do download.
wmf - Web Mail Folder
wml - Website META Language por Ralf Engelschall
wwwcount - Contador de acessos a pginas Web
wwwoffle - Explorer OFFline da World Wide Web
wwwtable - Um script em Perl que facilita a produo de tabelas em HTML
xsitecopy - Um programa para gerenciar um site WWW via FTP (verso GNOME)
zope - O Ambiente de Publicao de Objetos Z
30.2.5 Multimdia
gxanim - Interface em GTK para o xanim
smpeg-gtv - Exibe arquivos MPEG de audio/vdeo com interface em GTK+
smpeg-plaympeg - Exibe arquivos MPEG de audio/vdeo atravs da linha de comando
streamer - Programa de captura de vdeo para a bt848 a video4linux
tkxanim - Interface Tcl/Tk para o xanim
ucbmpeg - Encoder de vdeo MPEG e ferramentas de anlise
ucbmpeg-play - Exibe arquivos de vdeo MPEG
vstream - Utilitrio de captura de vdeo bttv para a criao de MPEGs
xanim - Exibe arquivos multimdia (animaes, lmes e sons)
xanim-modules - Instalao de binrios de xanim - somente mdulos
30.2.6 Som
ascdc - CD changer ideal para ser usado no After Step junto com o mdulo wharf
ascd - CD Player e mixer para Window Maker e After Step (D)
Captulo 30. Aplicativos para Linux 329
aumix - Mixer em modo texto que permite modicar, salvar e restaurar a congurao
de som na inicializao do sistema
bplay - Player/Gravador wav que opera em modo texto (root)
cam - Mixer para modo texto com controle completo da placa de som. Tambm permite
salvar e restaurar a congurao de som, embora isto seja mais simples atravs do aumix.
cdda2wav - Extrai audio do CD para arquivos wav e mp3
cd-diskio - Obtem dados do CDDB sobre o CD de audio
cdparanoia - Extrai dados de CD para wav
cdtool - Utilitrios para manipulao de CD player em modo texto
dtmfdial - Gera tons de discagem para linhas tom
festival - L textos para a placa de som do sistema
freeamp - Player mp2/mp3
gramofile - Programa de gravao de msicas de disco de vinil para wav com ltros
para retirada de rudos
graudio - Permite controlar placas de rdio FM
grip - CD-Ripper e CD-Player (do CD paranoia)
gtick - Gera rudos de batida em /dev e /dsp
id3 - Modica cabealhos de identicao de arquivos mp3
maplay - Decoder mp3 que permite a decodicao para a sada padro
mctools - CDplayer e mixer
mixer.app - Mixer para Window Maker (D)
mp3blaster - Player mp3 para console
mp3info - Mostra cabealho de arquivos mp3
nas - Network Audio Server - Sistema de audio atravs da rede
playmidi - Toca musicas .mid
recite - L textos para a placa de som do sistema
rplay - Toca sons atravs da rede
s3mod - Player para arquivos de msica s3m e mod
saytime - Diz as horas na placa de som
snack - Adiciona suporte a som na linguagem TCL/TK
soundtracker - Mdulos para edio. suporta mdulos .xt e instrumentos .xi
sox - Tradutor universal de sons
splay - Toca arquivos mp1, mp2, mp3
synaesthesia - Osciloscpio musical
timitidy - Midi sequencer. Tambm faz a converso de arquivos .mid para .wav
tkmixer - Mixer em TCL/TK
transcriber - Permite gravar notas durante a descrio de programas
vkeybd - Teclado virtual (requer placa awe)
wav2cdr - Converte wav em arquivos cdr. Permite edio de msicas
wavtools - Ferramentas para arquivos wav (player, recorder, compactao)
wmcdplayer - Mdulo de Cd player para Window Maker
wmxmms-spectrum - Spectrum analizador para Window Maker (D)
workbone - CD player para modo texto operado atravs do teclado numrico
wosundprefs - Preferncias musicais para o Window Maker
wsoundserver - Servidor de som para Window Maker
xcolmix - Um mixer colorido RGB
Captulo 30. Aplicativos para Linux 330
xfreecd - Programa para tocar CDS
xmcd - CD player/changer muito completo com suporte ao CDDB
xmix - Mixer para o X
xmp - Player mod, s3m, 669, mtm, ptm, okt, far, wow, amd, rad, alm
30.2.7 Comunicao/Fax
adbbs - AD BBS, uma BBS baseada em perl ou menu de sistema fcil
efax - Programas para enviar e receber mensagens de fax
hylafax-client - Programa HylaFAX cliente
hylafax-server - Programa HylaFAX servidor
lrzsz - Ferramentas para a transferncia de arquivos atravs de zmo-
dem/xmodem/ymodem
mgetty-fax - Ferramentas de Fax para o mgetty
mgetty - Substituio ao getty
mgetty-viewfax - Programa para mostrar arquivos de fax sob o X
mgetty-voice -Secretria Eletrnica para o mgetty
minicom - Clone do Telix - um programa de comunicao do DOS
mserver - Servidor de Modem para a Rede
seyon - Programa de comunicao nativo completo nativo do X11
smsclient - Umprograma para enviar mensagens curtas para telefones mveis/Pagers
(SM / SMS)
speaker - Aplicativo Viva Voz baseado em Tcl/Tk
tkhylafax - Uma interface td ao hylafax
xringd - Daemon de chamadas Extendida - Monitora toques do telefone e executa al-
guma ao
30.2.8 X Window
asclock - Relgio do After Step
dfm - Gerenciador de Arquivos/Desktop
dgs - Visualizador de arquivos do Ghost Script
dxpc - Compactador do protocolo X para linhas lentas
floatbg - Modica lentamente a cor do fundo da janela do root
gdm - Gerenciador de seo do GNOME - Substituio ao xdm
gentoo - Um gerenciador de arquivos totalmente congurvel para o X usando o GTK+
gtkcookie - Editor de arquivos cookie
gtkfind - Localizador de arquivos completo
gtkfontsel - Visualizador de fontes
ical - Um aplicativo de calendrio baseado em X11/Tk
regexplorer - Explorer visual de expresses regulares
rt - Mostra arquivos de log selecionados na janela raz do X
sclient - Um cliente MUD baseado em gtk.
sfm - Um gerenciador de arquivos baseado em texto usando o GTK+
tkdesk - Um gerenciador de Desktop/Arquivos X11 baseado em TCL/TK
Captulo 30. Aplicativos para Linux 331
tkvnc - Mostra uma lista de mquinas denidas para iniciar o VNC
tkworld - Uma interface grca para comandos do shell
tuxeyes - Uma verso do xeyes para o penguim
ude - Ambiente desktop do Unix
unclutter - Oculta o mouse no X aps um perodo de inatividade
uwm - Gerenciador de janelas ultimate para o UDE
vreng - Motor de realidade virtual
wdm - Substituio ao XDM com visual do Window Maker, animaes e suporte a seleo
do gerenciador de janelas
wmanager - Permite selecionar o gerenciador de janelas aps o login do xdm
wmapm - Mostra o status da bateria, gerenciamento de energia do sistema (D)
wmdate - Mostra a data/dia da semana (D)
wmifs - Monitor das interfaces de rede com indicador de atividade das interfaces (en-
vio/recebimento) grco de atividade na rede e indicador de interface ativa (D)
wmitime - Relgio analgico+digital+data e hora da Internet. (D)
wmload - Mostra a carga da CPU na forma de barras (D)
wmmail - Monitor de E-mails (D)
wmmatrix - Mostra um dock do matrix (D)
wmmixer - Mixer para o Window maker (D)
wmmoonclock - Relgio da lua (D)
wmnet - Monitor de interfaces de rede (D)
wmnetselect - Dispara o netscape atravs de um cone (D)
wmpinboard - Todo list com animaes e um excelente visual (D)
wmspaceweather - Monitora prtons e eltrons do espao (D)
wmtime - Relgio analgico, dia da semana e data (D)
wmtv - Sintonlizador de TVpara WindowMaker comsuporte a seleo de canais, sistema
de cores PAM-M/Secam/NTSC, ajuste no, procura de estaes de TV, uso de aplicativos
de TV externos e muito mais (D)
x2x - Liga a imagem de 2 monitores simulando multi-telas
xautolock - Inicia um programa aps certo perodo de inatividade do X
xawtv - Visualizador Video4linux
xbanner - Deixa a tela de login mais bonita
xext - Extenses para os servidores X
xfishtank - Mostra um aqurio na janela raz do X Window
xfs - Servidor de fontes do X
xfs-xtt - Servidor de fontes do X com suporte a fontes true type
xinput - Congurao em tempo de execuo e teste para dispositivos de entrada do X
xipmsg - Envia mensagens
xjscal - Calibrador de Joystick para o X11
xkbsel - Ferramenta para denir, selecionar e indicar teclados para o X
xkbsel-gnome - Ferramenta para denir, selecionar e indicar teclados para o X (verso
para Gnome)
xkeycaps - Mostra o cdigo de teclas do seu teclado no X para a construo de um
Xmodmap personalizado
xlockmore-gl - Verso do xlockmore em GL
xlockmore - Trava a tela do X at que uma senha seja digitada
Captulo 30. Aplicativos para Linux 332
xmaddressbook - Agenda de endereos para o X
xmanpages - Visualizador de pginas de manual para o X
xmbdfed - Editor de fontes para o X11
xmon - Monitor do protocolo X
xmotd - Navegador da mensagem do dia par ao X
xodo - Mede a distncia percorrida pelo cursos do seu mouse. permitido escolher
at a unidade de medida da distncia
xpaste - Mostra o contedo copiado com CTRL+C
xrootconsole - Melhora a aparncia do desktop
xscreensaver - Coleo de Screen Savers automtico para o X
xscreensaver-gl - Protees de tela GL para o xscreensaver
xsm - Gerenciador de seo do X
xsnow - Animao de neve para o X (muito legal).
xt - Traceroute grco em GL. Mostra o caminho percorrido por sua conexo at chegar
ao destino
xvt - Emulador de terminal do X parecido com o xterm, mas menor
xwit - Uma coleo de rotinas simples para chamar algumas funes do X11
xwrits - Te lembra para dar uma parada na digitao
xzoom - Lente de aumento para parte da sua tela do X, com atualizaes rpidas
30.2.9 Editorao Grca/Visualizadores
dia - Editor de Diagramas
egon - Programa de animaes da Siag Ofce
gimp - O Programa de Manipulao de Imagens da GNU
imagemagick - Programas de manipulao de Imagem
mentor - Uma coleo de algoritmos de animao
moonlight - Cria e desenha cenas em 3D
pixmap - Um editor de pixmaps
qcad - Sistema CAD PROFISSIONAL.
qiv - Um visualizador rpido de imagens para o X
saoimage - Utilitrio para mostrar e processar imagens atronmicas
sced - Um programa para criar cenas em 3D
sketch - Um programa de desenho interativo do X11
terraform - Um programa para gerao/manipulao de mapas Tridimensionais da
Terra
tgif - Programa para desenhos 2-D sob o X11
whirlgif - Cria GIFs animadas
xbmbrowser - Navegador para Pixmaps e Bitmaps
xfig - Facilita a gerao de guras interativamente sob o X11
xli - Visualiza imagens sob o X11
xloadimage - Visualizador de arquivos grcos sob o X11
xpcd - Coleo de ferramentas PhotoCD: Bsico
xpcd-gimp - Coleo de ferramentas PhotoCD: Suporte ao Gimp
xpcd-svga - Coleo de ferramentas PhotoCD: Visualizador SVGA
Captulo 30. Aplicativos para Linux 333
xv-doc - Documentao do XV em Posscript e HTML.
xv - Uma visualizador e manipulador de imagens para o X Window System
xwpick - Captura uma tela X11 e armazena em arquivos
30.2.10 Emuladores/Ferramentas p/ Interao com outros SO
doschk - Verica a compatibilidade de arquivos SYSV e DOS
dosemu - Emulador de DOS para Linux
dosfstools-Utilitrios para criar e checar sistemas de arquivos DOS FAT
hfsutils - Ferramenta para ler e gravar volumes Macintosh.
hfsutils-tcltk -Interface Tcl/Tk para ler e gravar volumes Macintosh
macutils - Conjunto de ferramentas para negociar com arquivos especiais do Macin-
tosh
mcvert - Ferramenta para negociar com arquivos encodicados especiais do Macintosh
mixal - Um emulador MIX e interpretador MIXAL
mtools - Ferramenta para manipulao de arquivos do DOS
p3nfs - Monta unidades da sria Psion 3[ac], 5
simh - Um emulador de vrios computadores DEC
stella - Emulador do video game Atari 2600 Emulator para X Windows
uae-exotic - O Emulador Amiga Ubiquitous: Binrios exticos
uae - O Emulador Amiga Ubiquitous: Bsico
uae-suid - O Emulador Amiga Ubiquitous: Binrios Suid root
umsdos - Utilitrios para o sistema de arquivos UMSDOS
vice - Emulador verstil do commodore
wine - Emulador do Windows (Emulador Binrio)
xapple2 - Emulador do Apple
xcopilot - Emulador do Pilot
xspectemu - Emulador do Spectrim Fast 48k ZX para X11
xtrs - Emulador para os computadores TRS-80 Modelos I/III/4/4P
xzx - Emulador de espectro baseado em ZX para o X11
30.2.11 Programao / Bancos de Dados / Acesso a Dados
bcc - Compilador C 16 Bits
bin86 - Assembler 16 bits e carregador
binutils - Assembler da GNU, linker e utilitrios binrios
clc-intercal - Compilador para a linguagem Intercal
cmucl - Compilador lisp CMUCL e sistema de desenvolvimento
colorgcc - Colore mensagens de alerta/erro do GCC
cutils - Utilitrios de cdigo fonte C
cvs - Concurrent Versions System
cvsweb - uma interface CGI ao seu repositrio CVS
cxref - Gera documentao em latex e HTML para seus programas em C
dbf2pg - Converte arquivos do xBase para PostgreSQL
dbf - Pacote de manipulao de arquivos xbase
Captulo 30. Aplicativos para Linux 334
dbview - Visualiza arquivos do dBase III
dialog - Permite adicionar o recurso de caixas de dilogo em shell scripts como
Yes/No, Ok, Cancelar, etc.
dist - Ferramentas para desenvolver, manter e distribuir softwares
doc++ - Um sistema de documentao para C/C++ e Java
f2c -Um tradutor do Fortran77 para C/C++ com bibliotecas estticas e compartilhadas
f77reorder - Um script de compilao Fortran chamando o f2c/gcc
fp-api -Units Livres da API do Pascal
fp-compiler - Compilador Livre do Pascal
fp-extra - Pacotes Extras do Pascal Livre
fp-fcl - Pascal Livre - Biblioteca de Componentes Livres
fp-gtk - Ligaes Pascal - GTK
fp-utils - Units do Pascal Livre
freetds-jdbc - Driver JDBC Java puro para MS SQL e Sybase
g77 - Compilador GNU Fortran 77.
gbdk-dev - Kit de desenvolvimento do GameBoy - pacotes de desenvolvimento
gbdk-examples - Kit de desenvolvimento do GameBoy - pacote de exemplos
gbdk -Kit de desenvolvimento GameBoy - pacote binrio
gcc272-docs - Documentao para compiladores gcc (gcc272, g++272)
gcc-i386-gnu - Cheap cross-compiler para GNU/Hurd
gcc - O compilador C da GNU
g++ - Compilador GNU C++
gdb - O depurador GNU
gengetopt - Gerador de estrutura main.c
global - Ferramenta de procura e navegao do cdigo fonte
gpc - Compilador Pascal da GNU
gprolog - Compilador GNU Prolog
gtksql - Interface grca GTK para o banco de dados posgress SQL
guavac - Compilador java
hello-debhelper - O programa inicial e um bom exemplo
hello - O programa inicial e um bom exemplo
indent - Programa de formatao do cdigo fonte em linguagem C
inform - Compilador para jogos de aventura
jitterbug - Um ferramenta cgi-bin para relato de problemas e teste
lclint - Uma ferramenta para checagem esttica de programas em C
liwc - Ferramentas para manipular o cdigo fonte em C
mercury - Nova linguagem de programao lgica/funcional
mmake - Gerador Makele para programas em java
mpsql - Uma interface grca ao PostgreSQL
mysql-client - Binrios cliente do banco de dados mysql
mysql-gpl-client - Binrios cliente do banco de dados mysql
mysql-manual - Documentao no ocial do MySQL 3.20
mysql-server 3.22.32-1 - binrios do servidor do banco de dados mysql
nosql - um sistema de Gerenciamento de Banco de Dados Relacional para Unix
p2c - Tradutor Pascal para C
pentium-builder - Fora a compilao otimizada para computadores Pentium
Captulo 30. Aplicativos para Linux 335
pgaccess - Interface grca Tk/Tcl para o banco de dados PostgreSQL
phylip - [Biology] A program package for inferring phylogenies
postgresql - Banco de dados SQL relacionado a objetos, descendente do POSTGRES
postgresql-client - Programas de interface para o PostgreSQL
postgresql-contrib - Facilidades adicionais para o PostgreSQL
postgresql-test - Conjunto de testes de regresso para o PostgreSQL
smalleiffel - Compilador Eiffel GNU
solid-desktop - Servidor SQL Slido
solid-devel - Desenvolvimento do Servidor SQL Slido
solid-doc-Documentao do servidor slido SQL
solid-tools - Ferramentas do servidor slido SQL
www-mysql - Uma interface WWW interface para o banco de dados TCX mySQL
www-pgsql - Uma interface WWW para o banco de dados PostgreSQL
xmysqladmin - Interface grca para o mysql (3.22.xx)
xxgdb - Interface grca para o GNU debugger gdb
30.2.12 Impresso
apsfilter - Um ltro de linha de impresso para sistemas com lpd/lpr
cupsys-bsd - Common UNIX Printing System(tm) - comandos BSD
cupsys - Common UNIX Printing System(tm) - bsico
djtools - Ferramentas para a impressora HP Deskjet
ifhp - Filtro para impressoras HP LaserJet
lprng - Sistema de spooling de impresso lpr/lpd
lpr - Sistema de spooling da linha de impresso estilo BSD
magicfilter - Filtro automtico de impressora
mpage - Mostra mltiplas pginas em uma impressora PostScript
printop - Interface grca para o daemon de impresso LPRng
printtool - Ferramenta de administrao de impressoras
psptools - Ferramentas para impressoras PostScript e dispositivos
rlpr -Um utilitrio para impresso do ldp sem usar o /etc/printcap
wip - Pacote de para ploters grcos com alta qualidade de sada
30.2.13 Texto
1a2ps - Conversor GNU de tudo para PostScript e impresso
abc2ps - Traduz arquivos de descrio de msica ABC para PostScript
acroread - Adobe Acrobat Reader: Visualizador de arquivos Portable Document For-
mat
aspell - Uma substituio mais inteligente para o vericador ortogrco ispell
brazilian-conjugate - Conjugador de verbos Portugues do Brasil
catdoc - Conversor de arquivos MS-Word para TeX ou texto plano
colortail - tail que colore os padres que conferem
cost - Ferramenta de ps processamento SGML de propsito geral
debiandoc-sgml -DTD DebianDoc SGML e ferramentas de formatao
Captulo 30. Aplicativos para Linux 336
docbook - DTD SGML para a documentao de software
dog - Substituio avanada para o cat
figlet - Cria palavras usando tabelas de caracteres ASCII
flip - Converte arquivos de texto entre os formatos DOS e Unix
ghostview - Um visualizador PostScript para o X11
gnuhtml2latex - Um Script Perl que converte arquivos html em latex
gs-aladdin - Interpretador PostScript com suporte a X11 e preview svgalib
gsfonts - Fontes para o interpretador ghostscript
gs - Interpretador PostScript com suporte a X11 e preview svgalib
gtkdiff - Ferramenta de comparao de texto grca
help2man - Gerador automtico de pginas de manual
html2ps - Conversor HTML para PostScript
iamerican - Um dicionrio de Ingls Americano para o ispell
ibrazilian - Um dicionrio do Brasileiro para o ispell
ispell - International Ispell (um corretor ortogrco interativo)
less - Programa de paginao de arquivos, parecido com o more
lincredits - Gera verses com melhor formatao do arquivo CREDITS do Linux
lookup - utilitrio para procurar arquivos de texto rapidamente e com muitos recursos
lout - Sistema de Digitao, uma alternativa ao (La)TeX
lv - Um poderoso visualizador de arquivos multi-lngua
lyx - Processador de textos de alto nvel
mgdiff - clone do xdiff
mswordview - Um conversor de arquivos MS Word 97/2000 para HTML
ndtpd - Servidor CD-ROM books
par - Reformatador de pargrafo
pbm2ppa - Conversor PBM para PPA
perlsgml - Ferramentas para construir e analizar DTDs SGML
perspic - Programa indexador de textos e localizador de palavras
poster - Faz grandes posters de pginas PostScript
ppd-gs - Arquivos de descrio de impressora PostScript para o Ghostscript
pstotext - Extrai textos de arquivos PostScript e PDF
recode - Utilitrio de converso do conjunto de caracteres
sgml-base - Utilitrio para manter o arquivo de catlogo SGML
sgml-data - Dados comuns entre DTDs SGML e entities
sgml-tools - Conversores SGML somente par ao DTD linuxdoc
spell - Spell GNU, um clone do spell para Unix
sufary - Ferramentas de procura em texto completo usando uma array de suxos
sufary-tcltk - Interface Tcl/Tk para o SUFARY
tcs - Tradutor de conjunto de caracteres
tkdiff - Utilitrio diff grco
trueprint - Imprime de forma organizada o cdigo fonte
word2x - Traduz arquivos do Word em texto ascii ou LaTeX
xpdf - Visualizador do formato Portable Document Format para X11
xpw - O processador de textos Pattico
Captulo 30. Aplicativos para Linux 337
30.2.14 Kernel
adjtimex - Mostra e congura variveis do kernel
autofs - Montador automtico baseado no kernel para Linux
kernellab - Gerencia facilmente conguraes do kernel em muitas mquinas
kernel-package - Scripts de construo do pacote de kernel para a Debian
knl - Obtm/ajusta parmetros de imagem do kernel
ksymoops - Interpreta mensagens oops e de erro do kernel
psmisc - Utilitrios que utilizam o sistema de arquivos /proc
systune - Ajuste no do kernel atravs do sistema de arquivos /proc
30.2.15 Notebooks
apmd - Utilitrio para gerenciamento avanado de energia (APM) em Notebooks
toshutils - Utilitrios para Note Books Toshiba
wmbattery - Mostra o status/carga da bateria (D)
30.2.16 Gravao de CD/DVD
cdrdao - Grava CDs de audio ou tipos de dados diversos no disco de uma s vez
cdrecord - Ferramenta de gravao de CD/DVD
cdrtoaster - Interface grca em Tcl/Tk para gravar CD-ROMs
cdwrite - Ferramenta de gravao de CD para unidades CD-R Orange Book
cdlabelgen - Gera capa e fundo para CDs
gtoaster - Gnome Toaster, uma interface grca para gravao de CDs
mkhybrid - Cria imagens do sistema de arquivos CD-ROM
mkisofs - Cria imagens do sistema de arquivos CD-ROM ISO-9660
tkcdlayout - Programa simples em X para criar capas de CDs
xcdroast - Software de gravao de CDs baseado no X
30.2.17 Computao Paralela/Clusters
lam2-dev - Ativa processamento paralelo entre mltiplos processadores
mpich - Sistema de computao Paralela
pvm - Mquina Virtual Paralela - binrios e bibliotecas compartilhadas
30.2.18 PalmTop / Palm Pilot / Computadores de Mo
imgvtopgm -Utilitrio de converso de imagem PalmPilot/III
jpilot -Umutilitrio GTKpara modicar o contedo de seus Bancos de Dados no Pilot.
lpkg - Carregador do pacotes de mensagens para o PDA Newton MessagePad
lx-gdb - Mostra e carrega banco de dados do palmtop da HP
lxtools -Permite o gerenciamento de arquivos em palmtops HP100/200LX
palm-doctoolkit - Ferramentas de texto eletrnico para usurios PalmPilot
picasm -Assembler para a familia de controladores Microchip PIC
Captulo 30. Aplicativos para Linux 338
pilot-link -Ferramentas para se comunicar com um Pilot 3COM PDA atravs de uma
porta serial
pilot-manager - PalmPilot PIM, UI, e gerenciador de condute
pilot-template - Gerador de cdigo para programas do PalmPilot
pilrc - Compilador de recursos e editor do PalmPilot/PalmIII
pose - Emulador PalmOS
prc-tools - GCC, GDB, binutils, etc. para o PalmPilot e Palm III
pyrite - Kit da plataforma de comunicao Palm Computing(R) para Python
30.2.19 Backup
afbackup-client - Sistema de backup cliente-servidor (lado Cliente)
afbackup - Sistema de backup cliente-servidor (lado Servidor)
amanda-client - Advanced Maryland Automatic Network Disk Archiver (Cliente)
amanda-common - Advanced Maryland Automatic Network Disk Archiver (Libs)
amanda-server - Advanced Maryland Automatic Network Disk Archiver (Servidor)
floppybackup - Backup em disquetes usando diversos tipos de formatos de disquetes
taper - Utilitrio de backup do sistema em tela cheia
tob - Programa pequeno e poderoso orientado a backup de tapes
30.2.20 Utilitrios
afio - Programa de manipulao de arquivos
aish - Conversor ish/base64/uuencoded_le
alien - Instala pacotes da Red Hat, Stampede e Slackware com o dpkg
ascii - Mostra aliases e tabela para caracteres ASCII
autoconf - Script de congurao automtico
autogen - Gerador automtico de arquivos texto
automake - Gerador automtico de scripts Makele
autoproject - Cria um esqueleto de pacote fonte para um novo programa
barcode - Cria cdigo de barras no formato .ps
binstats - Ferramenta de estatstica para programas instalados
birthday - Alerta sobre eventos pendentes no login
blinkd -Pisca LEDS do teclado para uma secretria eletrnica ou mquina de fax
bl - Pisca seqencialmente os LEDs do teclado
bsdmainutils - Mais utilitrios do 4.4BSD-Lite
btoa - Converte binrio para ascii e vice versa
cbb - Um clone do Quicken
chase - Segue um link simblico e mostra seu arquivo alvo
dgpsip - Corrige localizao GPS com o sinal DGPS da internet
diffstat - produz grcos das alteraes introduzidas por um arquivo diff
dotfile-bash - Gerador de arquivos dotle, mdulo para o bash
dotfile -Congurao fcil de programas populares atravs da interface Tcl/Tk
dotfile-elm - Gerador de arquivos dotle, mdulo para o elm
dotfile-fvwm1 - Gerador de arquivos dotle, mdulo para o fvwm1
Captulo 30. Aplicativos para Linux 339
dotfile-fvwm2 - Gerador de arquivos dotle, mdulo para o fvwm2
dotfile-ipfwadm - Gerador de arquivos dotle, mdulo para o ipfwadm
dotfile-procmail - Gerador de arquivos dotle, mdulo para o procmail
dotfile-rtin - Gerador de arquivos dotle, mdulo para o rtin
dotfile-tcsh - Gerador de arquivos dotle, mdulo para o tcsh
dump - 4.4bsd dump e restore para sistema de arquivos ext2
fastjar - Utilitrio de criao de arquivos Jar
fdupes - Identica arquivos duplicados residindo nos diretrios especicados
fdutils - Utilitrios de disquete do Linux
file - Determina o tipo de arquivo usando nmeros mgicos
gcal - Mostra um calendrio
gettext - Utilitrios de internacionalizao da GNU
gfloppy - Interface grca para a formatao de disquetes
git - Ferramentas interativas da GNU
glimpse - Ferramentas de indexao e localizao em tela cheia
gmc - Midnight Commander - Um poderoso gerenciador de arquivos - Verso gnome
gmemusage -Mostra um grco detalhando a utilizao de memria por cada processo
gnotes - Applet de notas Yellow sticky para o GNOME
gnucash - Um programa de tratamento de nanas pessoais
gpm - Daemon de mouse para modo texto
grep-dctrl - Verso do gru para informaes de pacotes da Debian
gtktalog - Catlogo de Disco
guitar - Ferramenta de extrao/visualizao de arquivos em GTK+
gxset - Interface grca baseada em GTK a ferramenta de linha de comando xset
hextype - Hexdump de acordo com o formato de sada do antido Debug do DOS
iraf - Reduo de Imagem e Facilidade de Anlise (astronomia/imagem)
jdresolve - Alternativa rpida ao logresolve do Apache
kbd - Utilitrios de fonte e mapas de teclado para o console do Linux
launcher - Seleciona que programa carregar de acordo com a extenso
lavaps - Uma lmpada de lava dos processos atualmente executados
leave - Te lembra quando deve deixar o sistema (muito til para quem gosta do Linux
:-)
linuxlogo - Logotipo do Sistema Colorido em ANSI
loadwatch - Executa um programa usando somente ciclos ociosos da CPU
makepatch - gera/aplica arquivos de patch com mais funcionalidade que o diff plano
mc-common - Arquvios comuns par ao mc e gmc
mc - Midnight Commander - Um poderoso gerenciador de arquivos
mirrordir - Duplica um diretrio fazendo um mnimo de modicaes
ncdt - Mostra a rvore de diretrios
netplan - Servidor de rede para o plan
nwrite - Substituio avanada ao comando write
patch - Aplica um arquivo gerado pelo diff a um original
pcal - Cria calendrios imprimveis via PostScript sem o X
perforate - Utilitrios para salvar espao em disco
pgrep - utilitrio grep que usa expresses regulares compatveis com o Perl
plan - Planejamento dirio baseado em X/Motif (compilado dinamicamente com Less-
Captulo 30. Aplicativos para Linux 340
Tif)
pointerize - Utilitrios de internacionalizao baseado no gettext
popularity-contest - Vote em seus pacotes favoritos automaticamente
pydf - Clone df com sada em cores
rtlinux - Linux em Tempo Real
set6x86 -Ferramenta de congurao para CPUs Cyrix/IBM 5x86/6x86
splitvt - Executa dois programas em uma tela dividida
statserial - Mostra a linha de status da porta serial do modem
strace - Um traador de chamadas do sistema
sunclock - Mostra poro iluminada do planeta terra
symlinks - procura/modica links simblicos
tleds - Pisca LEDs do teclado indicando Envio e Recebimento de pacotes da rede
tree - Mostra a rvore de diretrios em cores
units - conversor entre diferentes unidades de sistema
uptimed - Utilitrio para registrar seus maiores tempos de utilizao do sistema
urlview - Extrai URLs de textos
vold - Daemon de volume para unidades de CDROM
vrms - Virtual Richard M. Stallman (mostra mensalmente uma lista de pacotes no-livres
instalados em seu sistema)
wipe - Deleo segura de arquivos (sem possibilidade de recuperao)
xcal - Um calendrio grco com alarmes de alerta
xplanet - Cria imagens do planeta Terra
xvmount - Pequeno utilitrio grco para a montagem de dispositivos pelos usurios
30.2.21 Compactadores/Descompactadores/Arquivadores
bzip2 - Um timo compactador de arquivos texto - utilitrios
gzip - Compactador de arquivos de formato .gz
lha - Compactador de arquivos no formato .lha ou . lzh
lzop - Um compactador em tempo real
ncompress - Compress / Uncompress original para a transferncia de News, etc.
rar - Compactador/Descompactador de arquivos .rar
tar - Utilitrio de arquivamento de arquivos
unarj - Descompactador de arquivos .arj
unzip - Descompactador de arquivos .zip
zoo - Manipula arquivos compactados no formato .zoo
30.2.22 Dispositivos X-10 (Controle de eletrodomsticos e aparelhos via PC)
bottlerocket - Utilitrio para controle de dispositivos X10
heyu - Comunicao X10 de dois pontos para o CM11A
wmx10 - Permite controlar uma casa atravs de mdulos x10. Este aplicativo permite
controlar at 8 dispositivos por casa (D)
x10 - Opera mdulos de controle de fora eltrica
X10x10-automate - Interface grca para o utilitrio de controle de fora de linha X10
Captulo 30. Aplicativos para Linux 341
xtend - Daemon monitor de status X10
30.2.23 Outros
acs - Simulador de Circuito Als
avra - Montador para microcontroladoras AVR Atmel
avrp - Programador para microcontroladoras AVR Atmel
chipmunk-log - Ferramenta de captura esquemtica e ambiente de simulao
cracklib2-dev - Uma biblioteca de checagem de senhas
cracklib2 - Uma biblioteca de checagem de senhas
cracklib-runtime - Uma biblioteca de checagem de senhas
display-dhammapada - Mostra versos do Dhammapada
fastdnaml - [Biologia] Uma ferramenta para construo de rvores da seqncia do
DNA
geda - GNU EDA Software de design eletrnico
gwave - Um visualizador waveform para simuladores spice
megahal - Um simulador de conversao que pode aprender
mime-support - Arquivos MIME mime.types e mailcap, e programas
nitpic - Simulador para o Microcontrolador Microchip PIC16C84
pcb - Programa de Design de Placas de Circuito Impresso
puzzle - [Biology] Reconstruction of phylogenetic trees by maximum likelihood
readseq - [Biologia] Converso entre formatos em seqncia
savant - Analizador VHDL 93 livre da University de Cincinnatis
screen - Um gerenciador de tela com a emulao de terminal VT100/ANSI
seaview - [Biologia] Um editor de alinhamento em mltiplas seqncias
simulpic - Simulador de dispositivo PIC Microchip
smtm - Show Me The Money is a congurable Perl/Tk stock ticker program
spim - Emulador MIPS R2000/R3000
xacc-smotif -Um programa de tratamento de nanas pessoais
xacc - Um programa de tratamento de nanas pessoais
xcircuit - Esquemas de circuitos de desenho de quase tudo
Captulo 30. Aplicativos para Linux 342
343
Captulo 31
Como obter ajuda no sistema
Dvidas so comuns durante o uso do GNU/Linux e existemvrias maneiras de se obter ajuda
e encontrar a resposta para algum problema. O GNU/Linux um sistema bem documentado,
provavelmente tudo o que imaginar fazer ou aprender j esta disponvel para leitura e apren-
dizado. Abaixo segue algumas formas teis para encontrar a soluo de sua dvida, vale a
pena conhece-las.
31.1 Pginas de Manual
As pginas de manual acompanham quase todos os programas GNU/Linux. Elas trazem uma
descrio bsica do comando/programa e detalhes sobre o funcionamento de opo. Uma
pgina de manual visualizada na forma de texto nico com rolagem vertical. Tambm docu-
menta parmetros usados em alguns arquivos de congurao.
A utilizao da pgina de manual simples, digite:
man [seo] [comando/arquivo]
onde:
seo a seo de manual que ser aberta, se omitido, mostra a primeira seo sobre o co-
mando encontrada (em ordem crescente).
comando/arquivo Comando/arquivo que deseja pesquisar.
A navegao dentro das pginas de manual feita usando-se as teclas:
q - Sai da pgina de manual
PageDown ou f - Rola 25 linhas abaixo
PageUP ou w - Rola 25 linhas acima
SetaAcima ou k - Rola 1 linha acima
SetaAbaixo ou e - Rola 1 linha abaixo
r - Redesenha a tela (refresh)
p ou g - Inicio da pgina
h - Ajuda sobre as opes da pgina de manual
s - Salva a pgina de manual em formato texto no arquivo especicado (por exemplo:
/tmp/ls).
Captulo 31. Como obter ajuda no sistema 344
Cada seo da pgina de manual contmexplicaes sobre uma determinada parte do sistema.
As sees so organizadas em diretrios separados e localizadas no diretrio /usr/man. Os
programas/arquivos so classicados nas seguintes sees:
1 Programas executveis ou comandos internos
2 Chamadas do sistema (funes oferecidas pelo kernel)
3 Chamadas de Bibliotecas (funes dentro de bibliotecas do sistema)
4 Arquivos especiais (normalmente encontrados no diretrio /dev)
5 Formatos de arquivos e convenes (/etc/inittab por exemplo).
6 Jogos
7 Pacotes de macros e convenes (por exemplo man)
8 Comandos de Administrao do sistema (normalmente usados pelo root)
9 Rotinas do kernel (no padres)
Adocumentao de umprograma tambmpode ser encontrada em2 ou mais categorias, como
o caso do arquivo host_access que documentado na seo 3 (bibliotecas) e 5 (formatos
de arquivo). Por este motivo necessrio digitar man 5 hosts_access para ler a pgina
sobre o formato do arquivo, porque o comando man procura a pgina de manual nas sees
em ordem crescente e a digitao do comando man hosts_access abriria a seo 3.
As pginas de manual contm algumas regras para facilitar a compreenso do comando:
Texto Negrito - Deve ser digitado exatamente como mostrado
bla bla bla - Qualquer coisa dentro de [] so opcionais
Exemplo, man ls, man 5 hosts_access.
31.2 Info Pages
Idntico as pginas de manual, mas usada navegao entre as pginas. Se pressionarmos
<Enter> em cima de uma palavra destacada, a info pages nos levar a seo correspon-
dente. A info pages til quando sabemos o nome do comando e queremos saber para o que
ele serve. Tambm traz explicaes detalhadas sobre uso, opes e comandos.
Para usar a info pages, digite:
info [comando/programa]
Se o nome do comando/programa no for digitado, a info pages mostra a lista de todos os man-
uais de comandos/programas disponveis. A navegao da info pages feita atravs de nomes
marcados com um * (hipertextos) que se pressionarmos <Enter>, nos levar at a seo cor-
respondente. A info pages possui algumas teclas de navegao teis:
Captulo 31. Como obter ajuda no sistema 345
q - Sai da info pages
? - Mostra a tela de ajuda (que contm a lista completa de teclas de navegao e muitos
outras opes).
n - Avana para a prxima pgina
p - Volta uma pgina
u - Sobre um nvel do contedo (at checar ao ndice de documentos)
m - Permite usar a localizao para encontrar uma pgina do info. Pressione m, digite o
comando e tecle <Enter> que ser levado automaticamente a pgina correspondente.
d - Volta ao ndice de documentos.
Existem muitos outras teclas de navegao teis na info pages, mas estas so as mais usadas.
Para mais detalhes, entre no programa info e pressione ?.
Exemplo, info cvs.
31.3 Help on line
Ajuda rpida, til para sabermos quais opes podemser usadas como comando/programa.
Quase todos os comandos/programas GNU/Linux oferecem este recurso que til para con-
sultas rpidas (e quando no precisamos dos detalhes das pginas de manual). til quando
se sabe o nome do programa mas deseja saber quais so as opes disponveis e para o que
cada uma serve. Para acionar o help on line, digite:
[comando] --help
comando - o comando/programa que desejamos ter uma explicao rpida.
O Help on Line no funciona com comandos internos (embutidos no Bash), para ter uma ajuda
rpida sobre os comandos internos, veja help on this page.
Por exemplo, ls --help.
31.4 help
Ajuda rpida, til para saber que opes podem ser usadas com os comandos internos do in-
terpretador de comandos. O comando help somente mostra a ajuda para comandos internos,
para ter uma ajuda similar para comandos externos, veja Help on line on the current page.
Para usar o help digite:
help [comando]
Por exemplo, help echo, help exit
31.5 apropos/whatis
Apropos procura por programas/comandos atravs da descrio. til quando precisamos fazer
alguma coisa mas no sabemos qual comando usar. Ele faz sua pesquisa nas pginas de man-
Captulo 31. Como obter ajuda no sistema 346
ual existentes no sistema e lista os comandos/programas que atendem a consulta. Para usar o
comando apropos digite:
apropos [descrio]
Digitando apropos copy, ser mostrado todos os comandos que tem a palavra copy em
sua descrio (provavelmente os programas que copiam arquivos, mas podem ser mostrados
outros tambm).
31.6 locate
Localiza uma palavra na estrutura de arquivos/diretrios do sistema. til quando quere-
mos localizar onde um comando ou programa se encontra (para copia-lo, curiosidade, etc). A
pesquisa feita em um banco de dados construdo com o comando updatedb sendo feita a
partir do diretrio raz / e sub-diretrios. Para fazer uma consulta com o locate usamos:
locate [expresso]
A expresso deve ser o nome de um arquivo diretrio ou ambos que sero procurados na estru-
tura de diretrios do sistema. Como a consulta por um programa costuma localizar tambm
sua pgina de manual, recomendvel usar pipes para ltrar a sada do comando (para de-
talhes veja | (pipe) on page 182 .
Por exemplo, para listar os diretrios que contm o nome cp: locate cp. Agora mostrar
somente arquivos binrios, usamos: locate cp|grep bin/
31.7 which
Localiza um programa na estrutura de diretrios do path. muito semelhante ao locate,
mas a busca feita no path do sistema e somente so mostrados arquivos executveis .
which [programa/comando].
31.8 Documentos HOWTOs
So documentos em formato texto, html, etc, que explicam como fazer determinada tarefa ou
como um programa funciona. Normalmente so feitos na linguagem SGML e convertidos para
outros formatos (como o texto, HTML, Pos Script) depois de prontos.
Estes trazem explicaes detalhadas desde como usar o bash at sobre como funciona o mo-
dem ou como montar um servidor internet completo. Os HOWTOs podem ser encontrados
no diretrio do projeto de documentao do GNU/Linux (LDP) em ftp://metalab.unc.
edu/pub/Linux/docs/HOWTO/ ou traduzidos para o Portugus pelo LDP-BR em http:
//www.tldp.org/projetos/howto/traduzidos.php. Caso tenha optado por instalar o
pacote de HOWTOs de sua distribuio GNU/Linux, eles podem ser encontrados em: /usr
/doc/how-to
Captulo 31. Como obter ajuda no sistema 347
31.8.1 Listagem de HOWTOs
Esta seo tem a inteno de facilitar a localizao de um documento que trata do assunto
desejado ou te despertar a curiosidade sobre alguns assuntos do SO-GNU/Linux atravs da
descrio contida nos documentos. Segue abaixo uma listagem de HOWTOs do projeto LDP
organizadas por sub-sees com a descrio do assunto que cada um deles aborda.
Introduo ao Sistema / Instalao / Conguraes / Kernel
Access-HOWTO O HOWTO de Acesso ao GNU/Linux cobre o uso de tecnologia adaptada
para tornar o GNU/Linux acessvel queles que no o utilizam. Ele cobre reas onde ele
pode usar solues tecnolgicas adaptadas.
Bash-Prompt-HOWTO Explica como criar e controlar umterminal e aviso de comando xterm,
incluindo seqncias de escape incorporadas para passar o nome do usurio, diretrio
atual, hora, uso de cores ANSI, etc.
Bootdisk-HOWTO Explica como criar seu prprio disco de inicializao/raz para o
GNU/Linux.
BootPrompt-HOWTO Este documento rene a maioria dos parmetros de inicializao que
podem ser passados ao kernel do GNU/Linux durante a inicializao do sistema. Tam-
bm explica como o kernel classica os argumentos de inicializao e tambm os soft-
wares usados para inicializao do kernel do GNU/Linux.
Compaq-Remote-Insight-Board-HOWTO Descreve como instalar o Linux no servidor Com-
paq ProLiant.
Cong-HOWTO Este documento ensina como fazer um ajuste no em sua mquina
GNU/Linux recm instalada rpido e fcil. Neste documento voc encontrar um con-
junto de conguraes para as aplicaes e servios mais populares.
Distribution-HOWTO Este documento tem a inteno de ajudar novos usurios escolherem
uma distribuio GNU/Linux e ajudar usurios experientes a avaliar o estado do market-
ing no GNU/Linux Ele no planeja ser uma lista completa de distribuies GNU/Linux
para todas as plataformas, mas ao invs disso se focaliza nas distribuies em Ingls
baseadas no processador Intel, disponveis em CD-ROM e acessveis a usurios novatos
no sistema.
From-PowerUp-To-Bash-Prompt-HOWTO Contm uma breve descrio sobre o que acon-
tece no sistema GNU/Linux, do momento que liga o seu computador at o login no aviso
do bash. Ele organizado por pacotes para torna-lo fcil para pessoas que desejam con-
struir um sistema atravs do cdigo fonte. Entendendo isto ser til quando precisar
resolver problemas ou congurar o seu sistema.
Installation-HOWTO Este documento descreve como obter e instalar o software GNU/Linux.
Ele o primeiro documento que um novo usurio GNU/Linux dev ler para iniciar no
sistema.
Captulo 31. Como obter ajuda no sistema 348
INFO-SHEET Este documento oferece informaes bsicas sobre o sistema operacional
GNU/Linux, incluindo uma explicao sobre o sistema, uma lista de caractersticas, al-
guns requerimentos e alguns recursos.
Kernel-HOWTO Este um guia detalhado de congurao do kernel, compilao, upgrades
e problemas para sistemas baseados.
PLIP-Install-HOWTO Descreve como instalar uma distribuio GNU/Linux em um com-
putador sem placa Ethernet, ou CD-ROM, mas apenas com uma unidade de disquetes
local e um servidor NFS remoto conectado via um cabo paralelo.
Reading-List-HOWTO Lista os livros mais valiosos para uma pessoa que deseja aprender o
sistema operacional Unix (especialmente o GNU/Linux).
Software-Building-HOWTO Guia compreensivo de como construir e instalar distribuies
de softwares genricas UNIX sob o GNU/Linux. Adicionalmente existe alguma cober-
tura dos binrios pr-empacotados rpm e deb.
Tips-HOWTO Este documento descreve algumas dicas difceis de encontrar e truques que
fazem o GNU/Linux um pouco melhor.
Unix-and-Internet-Fundamentals-HOWTO Este documento descreve a base de funciona-
mento dos computadores da classe PC, sistemas operacionais Unix e a Internet em lin-
guagem no tcnica.
User-Authentication-HOWTO Explica como as informaes de usurio e grupo so ar-
mazenadas e como os usurios so autenticados no sistema GNU/Linux (PAM) e como
melhorar a autenticao de seu sistema.
Adaptao do GNU/Linux para idiomas especcos
Belarusian-HOWTO Adicionando o suporte ao idioma Belarusian no Linux.
Belgian-HOWTO Este documento ensina a congurao do sistema GNU/Linux para o id-
ioma Belgo.
Chinese-HOWTO Este documento explica como congurar o idioma Chins no GNU/Linux.
Cyrillic-HOWTO Explica como utilizar o GNU/Linux com o idioma Russo.
Danish-HOWTO Descreve como congurar o GNU/Linux e vrios aplicativos GNU/Linux
para este idioma.
Esperanto-HOWTO Congurao do GNU/Linux para o idioma Esperanto.
Finnish-HOWTO Descreve como usar o sistema GNU/Linux no idioma Finlands.
Francophones-HOWTO Descreve como usar o GNU/Linux no idioma Francs.
German-HOWTO Descreve como usar o GNU/Linux com o idioma Alemo.
Captulo 31. Como obter ajuda no sistema 349
Hebrew-HOWTO Descreve como congurar o GNU/Linux para exibir caracteres Hebreus
no X-Window e Console.
Hellenic-HOWTO Guia para congurao do GNU/Linux.
Italian-HOWTO Descreve como congurar o GNU/Linux no idioma Italiano.
Polish-HOWTO Congurando seu sistema GNU/Linux para o idioma Polons.
Portuguese-HOWTO Congurando seu sistema GNU/Linux para o idioma Portugus.
Serbian-HOWTO Congurando seu sistema GNU/Linux para o idioma Servio.
Slovenian-HOWTO Como congurar os parmetros do sistema GNU/Linux para este id-
ioma.
Spanish-HOWTO Congurando o sistema GNU/Linux para o idioma Espanhol.
Thai-HOWTO Descreve como usar o idioma Tailands com o GNU/Linux.
Turkish-HOWTO Congurando o GNU/Linux para o idioma Turco.
Discos / Sistemas de Arquivos / Desempenho
Filesystems-HOWTO Descreve sistemas de arquivos e o acesso aos sistemas de arquivos.
Large-Disk-HOWTO Tudo sobre a geometria e o limite de 1024 cilindros para os discos.
LVM-HOWTO Um HOWTO descritivo sobre o GNU/Linux LVM.
Loopback-Encrypted-Filesystem-HOWTO Este documento explica como criar e utilizar um
sistema de arquivos que, quando montado por um usurios, encripta transparentemente
e dinamicamente seu contedo. Osistema de arquivos armazenado emumarquivo reg-
ular, que pode ser oculto ou nomeado para algo que no chama a ateno, como algo que
nunca seria procurado. Isto permite um alto nvel de segurana dos dados armazenados.
Multi-Disk-HOWTO Este documento descreve como utilizar da melhor maneira mltiplos
discos e parties emumsistema GNU/Linux. Muitos dos detalhes descritos aqui podem
tambm ser aplicados a outros sistemas operacionais multi-tarefas.
MultiOS-HOWTO Este documento cobre os procedimentos para utilizar discos rgidos re-
movveis para instalar e gerenciar mltiplos sistemas operacionais alternativos enquanto
deixa umdisco rgido simples xo para proteger o sistema operacional primrio. muito
escalvel e oferece uma boa grade de proteo e um ambiente de disco estvel para o sis-
tema operacional primrio.
Optical-Disk-HOWTO Este documento descreve a instalao e congurao de unidades de
disco ticos para GNU/Linux.
Captulo 31. Como obter ajuda no sistema 350
Root-RAID-HOWTO Este documento somente se aplica a ferramentas RAID ANTIGAS, ver-
so 0.50 e inferiores. Os detalhes contidos neste documento se tornaram obsoletos com
a vasta melhoria das ferramentas RAID 0.90 e acompanhadas do patch nos kernels das
sries 2.0.37, 2.2x e 2.3x.
SCSI-Programming-HOWTO Este documento fala sobre a programao da interface SCSI
genrica no GNU/Linux.
UMSDOS-HOWTO O UMSDOS um sistema de arquivos GNU/Linux. Ele oferece uma
alternativa do sistema de arquivos EXT2. Sua maior caracterstica a coexistncia com
os dados DOS existentes, compartilhando a mesma partio.
Escrita de Documentao / Editores
C-editing-with-VIM-HOWTO Oferece dicas para editar arquivos desta linguagem e com sin-
taxe similar como C++ e Java.
Emacs-Beginner-HOWTO Este documento introduz os usurios GNU/Linux no editor
Emacs. Ele assume o mnimo de conhecimento com o editor de texto vi ou similar.
Emacspeak-HOWTO Este documento descreve como um usurio pode usar o sistema com
um sintetizador de voz no lugar do monitor de vdeo. Ele descreve como ter o
GNU/Linux rodando em seu PC e como congura-lo para falar. Ele tambm sugere
como aprender sobre o Unix.
HOWTO-HOWTO Lista de ferramentas, processos e dicas para ajudar os autores de
HOWTOs aumentarem sua produtividade.
LinuxDoc+Emacs+Ispell-HOWTO Este documento de interesse de escritores e tradutores
dos HOWTOs do GNU/Linux ou qualquer outro papel para o Projeto de Documentao
do GNU/Linux. Ele oferece dicas sobre o uso de ferramentas incluindo o Emacs e Ispell.
TeTeX-HOWTO Este documento cobre a instalao bsico e uso das implementaes TeTeX,
TeX e LaTeX sob as maiores distribuies de GNU/Linux Inglesas e pacotes auxiliares
como o GhostScript.
Vim-HOWTO Este documento uma guia para congurar rapidamente o editor colorido Vim
nos sistemas Unix e GNU/Linux. Os detalhes aqui aumentaro a produtividade dos
programadores porque o editor Vim suporta a colorizao de cdigo e fontes negrito,
aumentando a legibilidade do cdigo do programa. A produtividade do programador
aumenta de 2 a 3 vezes com um editor colorido como Vim.
Hardware
3Dfx-HOWTO Este documento descreve o suporte do GNU/Linux aos chips aceleradores
3Dfx. Tambm lista alguns hardwares suportados, descreve como congurar os drivers
e responde perguntas freqntes.
Captulo 31. Como obter ajuda no sistema 351
4mb-Laptops Como instalar o Linux em um notebook com 4MB de RAM e com HDs menores
que 200 MB.
Acer Laptop-HOWTO Descreve como instalar o Linux em notebooks Acer.
Busmouse-HOWTO Descreve como instalar, congurar e usar um barramento de mouse sob
o GNU/Linux. Ele contm uma lista de barramentos suportados e tenta responder as
questes mais freqntes relacionadas ao assunto.
CDServer-HOWTO Oferece as dicas e passos para criar um servidor de CD no Linux para
serem compartilhados via rede com Windows e outros sistemas operacionais.
CPU-Design-HOWTO Oferece referncias para mostrar como uma CPU projetada e fab-
ricada. Bastante interessante para estudantes de computao e outros prossionais da
rea.
Ftape-HOWTO Este HOWTO discute o controlador de unidades tape para GNU/Linux.
HP-HOWTO Este documento descreve o uso dos produtos disponveis no catlogo Hewlett-
Packard (HP) com o GNU/Linux e alguns programas free software. Ele explica o estado
do suporte para hardwares, softwares utilizados e respostas para alguns questes fre-
qntes.
Hardware-HOWTO Este documento lista a maioria dos hardware suportados pelo
GNU/Linux e lhe ajuda a localizar os controladores necessrios.
Jaz-Drive-HOWTO Este HOWTO cobre a congurao e uso dos drivers Iomega 1Gb e 2Gb
sob o GNU/Linux.
Kodak-Digitalcam-HOWTO Fazendo uma cmera Kodak digital funcionar sob
GNU/GNU/Linux.
Laptop-HOWTO Os Notebooks so diferentes de computadores desktops/torres. Eles usam
certos hardwares como cartes PCMCIA, portas infravermelho, baterias, estaes de en-
caixe. Freqentemente seus hardwares so mais limitados (i.e. espao em disco, ve-
locidade da CPU) ento sua performance se torna menor. Em algumas instncias, os
notebooks podem se tornar uma substituio ao sistema desktop. O suporte de hard-
ware para o GNU/Linux (e outros sistemas operacionais) algumas vezes mais limitado
(i.e. chips grcos, modens internos). Os Notebooks freqentemente utilizam hardware
especializado, no qual a localizao de um controlador adequado pode se tornar uma di-
culdade. Os Notebooks so utilizados emambientes mveis, assimexiste a necessidade
de mltiplas conguraes e estratgias adicionais de segurana.
Modem-HOWTO Ajuda com a seleo, conexo, congurao, resoluo de problemas e
compreenso de modens de um PC. Veja o Serial-HOWTO para detalhes sobre mlti-
plas placas seriais.
PCI-HOWTO Informaes sobre o que funciona com o GNU/Linux e placas PCI e que o no
funciona.
Captulo 31. Como obter ajuda no sistema 352
Plug-and-Play-HOWTO Este documento ajuda a compreenso e operao do Plug-and-Play
e como incluir o suporte do seu sistema GNU/Linux ao Plug-and-Play.
Serial-HOWTO Este documento descreve caractersticas da porta serial ao invs de outros
detalhes que devem ser cobertos pelos documentos Modem-HOWTO, PPP-HOWTO,
Serial-Programming-HOWTO, ou Text-Terminal-HOWTO. Ele lista detalhes sobre mlti-
plas placas seriais contendo informaes tcnicas detalhadas sobre a prpria porta serial
em mais detalhes do que os encontrados nos HOWTOs acima e deve ser o suciente
para correo de problemas quando o problema a prpria porta serial. Se estiver tra-
balhando com um Modem, PPP (usado para acesso a Internet atravs de uma Linha
telefnica), ou um Terminal baseado em modo texto, seus respectivos HOWTOs devem
ser primeiramente consultados.
Serial-Programming-HOWTO Explica como programar comunicaes com dispositivos
atravs de uma porta serial em um computador com o GNU/Linux.
UPS-HOWTO Este documento te ajudar a conectar um uninterruptable power supply (No
Break) em seu computador GNU/Linux. . . se tiver a sorte de possuir um. . .
Wacom-Tablet-HOWTO Instalao do (no somente) Wacom graphic tablets sob o
GNU/Linux e / ou xfree86.
Wearable-HOWTO Computao mvel com GNU/Linux.
Winmodems-and-Linux-HOWTO Este documento contm detalhes sobre a congurao de
Winmodems no GNU/Linux.
Software
AI-Alife-HOWTO Este howto contm informaes primrias sobre, e links para, vrias
bibliotecas relacionadas com o AI, aplicativos, etc. que funcionam na plataforma
GNU/Linux. Todos eles (pelo menos) livres para uso pessoal.
Apache-Overview-HOWTO Oferece uma viso do servidor Web Apache e projetos relaciona-
dos.
Commercial-HOWTO Este documento contmuma listagem de programas comerciais e apli-
caes que so oferecidas para o GNU/Linux
Glibc2-HOWTO Este documento cobre a instalao e uso da Biblioteca GNU C verso 2 nos
sistemas GNU/Linux.
RPM-HOWTO Explica como utilizar o sistema de gerenciamento de pacotes RPM.
Program-Library-HOWTO Este documento para programadores discute como criar e usar
bibliotecas no GNU/Linux. Estas incluem bibliotecas estticas, bibliotecas compartil-
hadas e bibliotecas carregadas dinamicamente.
Captulo 31. Como obter ajuda no sistema 353
Secure-Programs-HOWTO Este documento oferece um conjunto de designs e regras de im-
plementao para escrever programas seguros para os sistemas Unix e Linux. Tais pro-
gramas incluem programas aplicativos usados para visualizadores de dados remotos,
scripts CGI, servidores de rede, programas setuid/setgid. Guias especcos sobre C,
C++, Java, Perl, Python, e Ada95 esto includos.
Software-RAID-0.4x-HOWTO RAID signica Redundant Array of Inexpensive Disks, e
signica ser um mtodo de criar um rpido e convel subsistema de unidades de disco
ao invs de discos individuais. O RAID pode se prevenir de falhas de disco e pode tam-
bm aumentar a performance obtida atravs de uma simples unidade de disco. Este doc-
umento um tutorial/HOWTO/FAQ para usurios do kernel do Linux com extenses
MD, as ferramentas associadas, e seu uso. A extenso MD implementa o RAID-0 (strip-
ing), RAID-1 (mirroring), RAID-4 e RAID-5 no software. O que signica que, com MD,
nenhum hardware especial ou controladoras de disco so requeridas para obter muitos
dos benefcios do RAID.
Software-RAID-HOWTO Este documento descreve como usar o software RAID sob o
GNU/Linux. Ele enderea uma verso especca da camada de software do RAID,
nomeada camada RAID 0.90, feita por Ingo Molnar e outros. Esta a camada RAID que
ser padronizada no Linux-2.4, e tambm a verso usada por kernels 2.2 do GNU/Linux
vendidos por alguns vendedores. O suporte RAID 0.90 est disponvel com patches para
os kernels do 2.0 e 2.2 do GNU/Linux e tambm considerado ser mais estvel que o
antigo suporte RAID j includo nestes kernels.
Software-Release-Practice-HOWTO Este documento descreve boas prticas de lanamento
para o projeto de cdigo-aberto GNU/Linux. Seguindo estas prticas, ser fcil e possvel
para os usurios construir seu cdigo e usa-lo, e para outros desenvolvedores entender
seu cdigo e cooperar com voc para melhora-lo. Este documento deve ser lido por
desenvolvedores iniciantes. Desenvolvedores experientes devem revisa-lo quando dese-
jarem lanar um novo projeto. Este documento revisado periodicamente para reetir a
evoluo das boas prticas de lanamento.
Plataformas no Intel (x86)
Alpha-HOWTO Este documento uma viso rpida das CPUs Alpha, chipsets e sistemas
existentes.
MILO-HOWTO Este documento descreve o MIniLOader, um programa para sistemas basea-
dos na arquitetura Alpha que pode ser usado para inicializar a mquina e carregar o
GNU/Linux. O Linux Miniloader do Alpha (seu nome completo) tambm conhecido
como MILO.
MIPS-HOWTO Esta FAQdescreve o porte do MIPS para o sistema operacional Linux, proble-
mas comuns e suas solues, disponibilidade e mais. Ele tambmtenta ser um pouco til
a outras pessoas que desejam ler esta FAQ em uma tentativa de encontrar informaes
que atualmente seriam cobertas em outro lugar.
Captulo 31. Como obter ajuda no sistema 354
SRM-HOWTO Este documento descreve como inicializar no Linux/Alpha usando o console
SRM, que a rmware de console tambm usada para inicializar o Unix Compaq Tru64
(tambm conhecido com Digital Unix e OSF/1) e OpenVMS.
Programao / Compiladores / Banco de Dados
Assembly-HOWTO Este documento descreve como programar em linguagem Assembler us-
ando ferramentas de programao livres, focalizando-se no desenvolvimento para ou do
Sistema Operacional GNU/Linux, mais na plataforma IA-32 (i386).
Bash-Prog-Intro-HOWTO Este documento tem a inteno de te ajudar a iniciar na progra-
mao de shell scripts. Ele no tem a inteno de ser uma documento avanado.
C++Programming-HOWTO Discute os mtodos para evitar problemas de memria no C++
e tambm te ajudar a programar corretamente na linguagem C++. As informaes con-
tidas neste documento se aplicam a todos os sistemas operacionais que so GNU/Linux,
DOS, BeOS, Apple Macintosh OS, Windows 95/98/NT/2000, OS/2, Sistemas
IBM (MVS, AS/400, etc. . . ), VAX VMS, Novell Netware, todos os tipos de Unix como
o Solaris, HPUX, AIX, SCO, Sinix, BSD, etc., e todos os outros sistemas operacionais que
suportam o compilador C++ (quase todos os sistemas operacionais deste planeta!).
C-C++Beautier-HOWTO Este documento ajudar a formatar (de forma organizada) os pro-
gramas C/C++ assim ser mais legvel e seguir os padres de codicao C/C++. As
informaes deste documento se aplica a quase todos os sistemas operacionais do plan-
eta!
DB2-HOWTO Este documento explica como instalar o DB2 Universal Database verso 7.1
para GNU/Linux nas seguintes distribuies baseadas no Intel x86: Caldera Caldera
OpenLinux 2.4, Debian, Red Hat Linux 6.2, SuSE Linux 6.2 e 6.3, e TurboLinux 6.0. Aps
instalar o DB2, voc pode usar um banco de dados de exemplo, conectar-se ao servidor
DB2 de uma mquina remota e administrar o DB2 usando o DB2 Control Center.
Enterprise-Java-for-Linux-HOWTO Como congurar um ambiente Java Enterprise no
GNU/Linux incluindo o Java Development Kit, um servidor Web, suportando Java
servlets, acessando um banco de dados via JDBC e suportado Enterprise Java Beans
(EJBs).
GCC-HOWTO Este documento explica como congurar o compilador GNUCe bibliotecas de
desenvolvimento sob o GNU/Linux e te d uma viso de compilao, linkagem, execuo
e programas de depurao.
IngresII-HOWTO Este documento cobre a instalao do Ingres II Relational Database man-
agement System no GNU/Linux. Ele cobre a congurao de ambos o Kit de desenvolvi-
mento e verso completa do Ingres. Algumas sees explicam como iniciar o uso do
Ingres.
Oracle-7-HOWTO Um guia para instalar e congurar o Servidor do Banco de Dados Oracle
em um sistema GNU/Linux.
Captulo 31. Como obter ajuda no sistema 355
Oracle-8-HOWTO Com este HOWTO, um pouco de sorte, voc ser capaz de ter o Oracle
8i Enterprise Edition para GNU/Linux instalado, criar um banco de dados e conectar a
ele atravs de um computador remoto. O foco principal deste guia o RedHat 6.0, no
entanto ele pode funcionar em outros distribuies recentes aps algumas modicaes.
PHP-HOWTO Ensina como desenvolver programas em PHP e tambm migrar todas as apli-
caes GUI do Windows 95 para o poderoso conjunto PHP + HTML + DHTML + XML
+ Applets Java + Javascript. As explicaes descritas neste documento se aplicam a
todo os sistemas operacionais para onde o PHP est portado que so: Linux, Windows
95/98/NT/2000, OS/2, todos os tipos de Unix como o Solaris, HPUX, AIX, SCO, Sinix,
BSD, etc. . .
PostgreSQL-HOWTO Este documento um guia prtico para rapidamente colocar para
funcionar um banco de dados SQL e suas ferramentas de comunicao em um sistema
Unix. Ele tambm discute a linguagem padro Internacional ANSI/ISO SQL e revisa
os mritos/vantagens do SQL Database engine desenvolvido pela Internet ao redor do
mundo em um ambiente de desenvolvimento aberto. Tambm como congurar a prx-
ima gerao do banco de dados relacional a objetos SQL PostgreSQL em um sistema
Unix que pode ser usado como um Servidor de Aplicativos de banco de dados ou como
um Servidor de banco de dados Web.
TclTk-HOWTO Este documento descreve o uso do Tcl no GNU/Linux, uma linguagem de
scripting. Ela uma linguagem interpretada fcil de aprender que usa pouca digi-
tao para obter um alto nvel de programao e desenvolvimento rpido de aplicativos
(RAD). O Tk toolkit um ambiente de programao para criar interfaces grcas do
usurio (GUI) sob o Sistema X Window. Suas capacidades incluem a possibilidade de
estender e incluir em outros aplicativos, desenvolvimento rpido e fcil de usar. Jun-
tos o Tcl e Tk oferecem muitos benefcios para o desenvolvedor e usurio. As interfaces
baseadas no Tk tendem a ser mais personalizveis e dinmicas que aquelas feitas de
toolkits C ou C++. O Tk implementa o Visual e Uso do Motif. Um grande nmero de
aplicaes X interessantes so implementadas completamente em Tk, com nenhum co-
mandos especcos de aplicativo.
Computao Paralela / Clusters
Beowulf-HOWTO Este documento uma introduo a arquitetura de Supercomputador Be-
owulf e oferece informaes sobre programao paralela, incluindo links para documen-
tos mais especcos e pginas internet.
Cluster-HOWTO Como congurar clusters de computador GNU/Linux de alta performance.
Parallel-Processing-HOWTO O Processamento Paralelo uma forma de acelerar a execuo
de um programa dividindo o programa em mltiplos fragmentos que podem ser exe-
cutados simultaneamente, cada um em seu prprio processador. Um programa sendo
executado em N processadores pode ser executado N vezes mais rpido que seria us-
ando somente um processador. Este documento discute os quatro mtodos para re-
alizar processamento paralelo que esto disponveis aos usurios do sistema operacional
Captulo 31. Como obter ajuda no sistema 356
GNU/Linux: Sistemas Linux SMP, Sistemas Linux em Clusters de rede, execuo par-
alela usando as instrues multimdia do processador (i.e. MMX) e processadores (par-
alelos) conectados no sistema GNU/Linux.
SMP-HOWTO Este HOWTO revisa principais assuntos (e eu espero que solues) rela-
cionadas com as conguraes SMP sob o GNU/Linux.
Congurao de Teclado / Vdeo / Console
Font-HOWTO Como usar e congurar corretamente tipos de fontes no ambiente
GNU/Linux.
Framebuffer-HOWTO Descreve como utilizar dispositivos framebuffer no GNU/Linux com
uma variedade de plataformas. Isto tambm inclui como ajustar telas multi-headed.
Keyboard-and-Console-HOWTO Este documento contm algumas informaes sobre o
teclado e console no GNU/Linux, e o uso de caracteres no-ASCII. Ele descreve o
GNU/Linux 2.0.
Text-Terminal-HOWTO Explica o que so os terminais texto, como funcionam, como instalar
e congura-los e oferece muitos detalhes de como conserta-los. Se no tiver um manual
do terminal, poder ser de grande ajuda. Enquanto escrito para terminais reais no
sistema GNU/Linux alguns deles tambm so aplicveis a emulao de terminal e pode
ser til para sistemas no Linux.
Unicode-HOWTO Explica como alterar seu sistema GNU/Linux para utilizar a codicao de
texto baseada no UTF-8. -
Ambiente Grco
MGR-HOWTO O MGR (ManaGeR) um sistema de janelas grco. O servidor MGR oferece
um gerenciador de janelas embutido e emulao de terminal grco em janela em mon-
itor colorido ou monocromtico. O MGR controlado por menus pop-up, por interao
do teclado e por seqencias de escapa escrita em pseudo-terminais pelo software cliente.
XFree86-HOWTO Este documento descreve como obter, instalar e congurar a verso 4.0 do
XFree86 do X Window System (X11R6) para sistemas GNU/Linux. Ele um guia passo
a passo para congurar o XFree86 em seu sistema.
XFree86-Touch-Screen-HOWTO Descreve como congurar um dispositivo de entrada touch
screen sob o XFree86.
XFree86-Video-Timings-HOWTO Como congurar os modos de vdeo de sua placa/monitor
sob o XFree86.
XWindow-User-HOWTO Este documento contm detalhes sobre a congurao do ambiente
X Windows para o usurio GNU/Linux, tambm como o administrador de sistemas ini-
ciantes tentando aprender os mais diversos tipos de opes de congurao e detalhes
Captulo 31. Como obter ajuda no sistema 357
do X Window. assumido um conhecimento bsico de conguraes de software e in-
stalao.
Xinerama-HOWTO Este documento descreve como congurar o XFree86 verso 4.0 com
monitores multimdia com as extenses Xinerama.
Suporte ao Sistema / Grupos de Usurios / Listas de Discusso
Consultants-HOWTO Contm uma lista de empresas e consultores oferecendo suporte com-
ercial relacionado ao sistema GNU/Linux.
Online-Troubleshooting-HOWTO Este documento direciona usurios GNU/Linux a lugares
disponveis na Internet que oferecem acesso a uma vasta quantidade de documentos
teis relacionados ao sistema em situaes de problema.
User-Group-HOWTO Este documento descreve como fundar, manter e organizar um grupo
de usurios GNU/Linux.
Migrao / Convivncia com Outras Plataformas
DOS-Win-to-Linux-HOWTO Este documento tem a inteno de ajudar o leitor traduzir seu
conhecimento do DOS e Windows para o ambiente GNU/Linux, tambm como oferecer
dicas de manipulao de arquivos e utilizao de recursos entre os dois sistemas.
VMS-to-Linux-HOWTO Este documento escrito para todos aqueles que tem usado o VMS
e agora precisam migrar para o GNU/Linux um clone gratuito do UNIX. A transio
feita (felizmente) atravs de uma comparao passo a passo de comandos e ferramentas
existentes.
Tarefas Especcas
Astronomy-HOWTO Este documento compartilha dicas e recursos para utilizar solues do
GNU/Linux no mundo da Astronomia.
CD-Writing-HOWTO Este documento explica como gravar CD-ROMs sob o GNU/Linux.
CDROM-HOWTO Este documento descreve como instalar, congurar e usar uma unidade
de CD-ROM sob o GNU/Linux. Ele lista hardwares suportados e responde a um nmero
de questes freqntes.
CVS-RCS-HOWTO Este documento um guia prtico para rapidamente congurar o sistema
de controle do cdigo fonte CVS/RCS. Este documento tambm possui shell scripts per-
sonalizados que so trocados no topo do CVS. Estes scripts oferecem uma interface fcil
entre o usurio e o CVS.
DVD-Playing-HOWTO Uma explicao fcil de seguir de como obter seu DVD funcionando
no GNU/Linux.
Captulo 31. Como obter ajuda no sistema 358
Diskless-HOWTO Este documento descreve como congurar uma mquina sem disco rgido
no GNU/Linux.
Java-Decompiler-HOWTO Este documento te ajudar a descompilar programas class feitos
em Java. Este documento contm uma lista de descompiladores que podem reverter o
engineer os arquivos Java class e gerar arquivos de cdigo fonte Java. Isto muito til se
voc no tem o arquivo com o cdigo fonte Java.
JavaStation-HOWTO Este HOWTO descreve como ativar o SO GNU/Linux no NC Sun Java
Station.
KickStart-HOWTO Este documento descreve como usar o sistema Linux RedHat para insta-
lar rapidamente o sistema em um grande nmero de mquinas GNU/Linux.
Kiosk-HOWTO Este documento oferece um guia para ajustar um kiosk baseado em WWW
usando o GNU/Linux, X11R6, FVWM2, Netscape Navigator 4.X e um trackball cus-
tomizado.
Linux-From-Scratch-HOWTO Este documento descreve o processo de criar seu prprio sis-
tema GNU/Linux do nada atravs de uma distribuio j instalada, usando nada mais
que o cdigo fonte dos softwares que precisamos.
MP3-HOWTO Este documento descreve o hardware, software e processos necessrios, para
encodicar, tocar, mixar e decodicar arquivos de som MP3 sob o GNU/Linux.
Majordomo-MajorCool-HOWTO Este documento tem a inteno de guiar o usurio atravs
do software de gerenciamento de listas de discusso Majordomo e MajorCool. O Ma-
jorCool um utilitrio para gerenciar listas Majordomo via script CGI; muitas pessoas
que no esto familiar com o Majordomo baseado em modo texto podem preferir uma
interface mais amigvel via web do MajorCool.
Mutt-GnuPG-PGP-HOWTO Este documento explica como congurar rapidamente o Mutt-
i, PGP e GnuPG em suas diferentes verses (2.6.x, 5.x e GnuPG), nada dos problemas
que podem ocorrer enquanto envia e-mails criptografados e assinados para ser lidos por
clientes de e-mail que no so compatveis com PGP/MIME como denido na RFC 2015
e em outros sistemas operacionais.
NC-HOWTO Este documento tenta descrever como colocar uma Netstation da IBM em sua
rede local usando um computador GNU/Linux como servidor.
NCD-HOWTO Este documento tenta descreve como colocar uma ThinSTAR NCD em sua
rede local usando um computador GNU/Linux como servidor.
PalmOS-HOWTO Este documento explica como usar seu dispositivo Palm OS com um sis-
tema GNU/Linux. Este HOWTOno aborda somente o sistema operacional GNU/Linux.
Printing-HOWTO Este o Printing HOWTO do GNU/Linux, uma coleo de informaes
sobre como gerar, ver, imprimir e enviar fax de tudo sob o GNU/Linux (e outros UNIXes
em geral).
Captulo 31. Como obter ajuda no sistema 359
Printing-Usage-HOWTO Descreve como usar o sistema de spooling oferecido pelo sistema
operacional GNU/Linux. Este HOWTO um documento suplementar ao Linux Printing
Setup, que discute a instalao e congurao do sistema de impresso do GNU/Linux.
Psion-HOWTO Este documento descreve como usar Palmtops Psion com o GNU/Linux, mas
no cobre a execuo do Linux no Palmtop Psion. Veja o projeto Linux 7k em http:
//www.calcaria.net.
Quake-HOWTO Este documento explica como instalar, executar e corrigir problemas no
Quake, QuakeWorld e Quake II em um sistema GNU/Linux Intel.
RedHat-CD-HOWTO Descreve como fazer seus prprios CDs da distribuio Red Hat, a es-
trutura da distribuio e tambm como incluir RPMs atualizados na distribuio.
Sound-HOWTO Este documento descreve o suporte ao som no GNU/Linux, arquiteturas de
som suportadas e como incluir o suporte ao som no kernel. Este documento tambm
responde algumas questes freqntes sobre o suporte ao som no GNU/Linux.
Sound-Playing-HOWTO Este documento lista aplicativos que podem tocar vrios formatos
de sons no GNU/Linux.
VME-HOWTO Este documento mostra como executar o GNU/Linux em seu Pentium VME-
bus e outros barramentos PCI baseados no design de processador VMEbus.
Rede / Administrao / Firewall / Proxy / Segurana
AX25-HOWTO Talvez o GNU/Linux seja o nico sistema operacional no mundo que possui
suporte nativo e padro ao protocolo de pacotes de rdio AX.25 usado por Operadores de
Rdio Amador ao redor do mundo. Este documento explica como instalar e congurar
este suporte.
Adv-Routing-HOWTO Roteamento avanado. Explicaes sobre o iproute2, traffic
shaper e netfilter.
Bandwidth-Limiting-HOWTO Descreve como congurar o servidor Linux para limitar
banda.
BRIDGE-STP-HOWTO Este documento explica o que uma ponte entre redes e como criar
uma utilizando o Spanning Tree Protocol (STP). Este um mtodo de manter os dis-
positivos Ethernet conectados e funcionando em mltiplos caminhos. Os participantes
negociam a troca atravs do caminho mais curto atravs do STP.
Cable-Modem Fornece instrues de como usar o Linux para se conectar a um provedor de
Cable modem.
Chroot-BIND8-HOWTO Este documento descreve a instalao do servidor de nomes BIND
8 para ser executado em uma jaula chroot e como um usurio no-root, para oferecer
segurana adicional e minimizar efeitos potenciais que podemcomprometer a segurana.
Captulo 31. Como obter ajuda no sistema 360
Cyrus-IMAP Um guia compreensivo para a instalao, congurao e execuo do Cyrus
Imap e Cyrus SASL.
DNS-HOWTO Como congurar seu servidor DNS em pouco tempo.
Diald-HOWTO Este documento mostra alguns cenrios tpicos para iniciar o uso do Diald
facilmente. Este cenrios incluem uma conexo de um computador local a um provedor
usando o PPP atravs de um modem sem usar o pon/poff ou ppp-pon/ppp-off para um
servidor proxy/rewall com diferentes conexes Internet atravs de vrios provedores.
Diskless-root-NFS-HOWTO Explica como congurar um servidor e clientes para operao
sem disco atravs de uma rede.
DSL-HOWTO Este documento examina a famlia DSL de servios Internet de alta velocidade.
Descreve como instalar, congurar depurar.
Ethernet-HOWTO Este documento uma coleo de dados sobre dispositivos Ethernet que
podem ser usados no GNU/Linux e como congura-los. Note que este HOWTO est
focalizado no hardware e aspectos de baixo nvel de controladores das placas ethernet e
no cobre assuntos de software como os programas ifconfig e route (veja o Network-
HOWTO se procura por estes materiais).
Firewall-HOWTO Descreve os sistemas bsicos de rewall e alguns detalhes de como ajustar
rewalls proxy e de ltragem de pacotes em sistemas baseados no GNU/Linux.
IP-Masquerade-HOWTO Este documento descreve como ativar a caracterstica IP Masquer-
ade no GNU/Linux. O IP Masquerade uma forma do Network Address Translation ou
NAT que permite que computadores conectados internamente que no tem um ou mais
endereos Internet registrados ter a habilidade de se comunicar com a Internet via uma
nica mquina GNU/Linux com um nico endereo IP.
IPCHAINS-HOWTO Descreve como obter, instalar e congurar o programa avanado de
rewall para o GNU/Linux e algumas idia de como usa-lo.
IPX-HOWTO Descreve como obter, instalar e congurar as vrias ferramentas disponveis
para o sistema operacional GNU/Linux para utilizar o suporte do protocolo IPXno kernel
do GNU/Linux.
Infrared-HOWTO Uma introduo ao GNU/Linux e dispositivos infra-vermelho e como usar
programas oferecidos pelo projeto Linux/IrDA.
ISP-Hookup-HOWTO Descreve como usar o GNU/Linux para conectar a umProvedor Inter-
net via modem dial-up via conexo TCP/IP. Tambm como o procedimento de discagem
inicial e estabelecimento de IP, recebimento de email e news.
ISP-Setup-RedHat-HOWTO Descreve como congurar servios de ISP no Red Hat.
Domnios, virtual hosts, pop3 e emails.
Intranet-Server-HOWTO Este documento descreve como congurar uma Intranet usando o
GNU/Linux como um servidor que se comunica com Unix, Netware, NT e Windows.
Captulo 31. Como obter ajuda no sistema 361
Java-CGI-HOWTO Este documento explica como congurar seu servidor para permitir pro-
gramas CGI escritos em Java e como usar Java para escrever programas CGI.
LDAP-HOWTO Informaes sobre a instalao, congurao, execuo e manuteno de um
Servidor LDAP (Lightweight Directory Access Protocol) em uma mquina GNU/Linux
descrita neste documento. Existe tambm detalhes sobre como criar bancos de da-
dos LDAP, como atualizar e apagar informaes no banco de dados, como implementar
roaming access e como usar o Livro de Endereos do Netscape.
LDAP-Implementation-HOWTO Descreve aspectos tcnicos de armazenamento de dados de
aplicaes em um servidor LDAP.
Mail-Administrator-HOWTO Este documento descreve a congurao e uso do Correio
Eletrnico (E-mail) sob o GNU/Linux. primariamente mais indicado para admin-
istradores do que usurios.
Mail-User-HOWTO Este documento uma introduo ao mundo do Correio Eletrnico sob
o GNU/Linux
Masquerading-Simple-HOWTO Descreve de forma prtica como conectar diversas
mquinas de sua rede Interna a Internet.
MindTerm-SSH-HOWTO Este documento descreve como usar o SSH o programa MindTerm
baseado em Java para criar de forma rpida, segura e convel uma VPN sobre redes
inseguras.
Multicast-HOWTO Este HOWTO tenta cobrir muitos aspectos relacionados com o multicast
sobre redes TCP/IP. Assim, muitas informaes que no so especcas do sistema Linux
(apenas no caso de no usar o GNU/Linux. . . ainda).
NFS-HOWTO Como congurar servidores e clientes NFS>
NetMeeting-HOWTO Descreve como fazer o Microsoft NetMeeting se integrar com o Linux.
NIS-HOWTO Este documento descreve como congurar o GNU/Linux como um cliente NIS
(YS) ou NIS+ e como instala-lo como um servidor NIS.
Network-boot-HOWTO Descreve como congurar um servidor Linux para permitir que es-
taes sem disco rgido faam boot via rede e iniciem o sistema Linux ( uma regravao
parcial do Diskless-howto).
Net-HOWTO Este documento cobre as rea de software e tecnologias de rede no GNU/Linux.
Networking-Overview-HOWTO O propsito deste documento lhe oferecer uma viso das
capacidades de rede do sistema operacional GNU/Linux e oferecer ponteiros para outros
documentos e detalhes de implementao.
PPP-HOWTO Este documento mostra como conectar seu PC GNU/Linux a um servidor PPP
(Protocolo Ponto a Ponto), como usar o PPP para ligar duas redes e oferece ummtodo de
congurar seu computador GNU/Linux como umservidor PPP. Este documento tambm
oferece ajuda na soluo de problemas relacionados com o PPP.
Captulo 31. Como obter ajuda no sistema 362
Qmail-VMailMgr-Courier-imap-HOWTO Este documento sobre a construo de um servi-
dor de e-mail que suportar hospedagem de domnios dinmicos e oferecer os servios
smtp, pop3 e imap, usando uma poderosa alternativa ao sendmail.
Remote-Serial-Console-HOWTO A porta RS232 permite que o Linux ser controlado de um
terminal ou modem conectado a uma porta serial assncrona. Este documento descreve
como congurar o Linux para se conectar ao console serial.
Sat-HOWTO Descreve base e referncias sober a tecnologia SAP, as caractersticas de larga
banda para download, etc.
Serial-Laplink-HOWTO Descreve como criar uma conexo serial entre dois computadores
para compartilhamento de dados. Este permite tambm efetuar conexes seriais entre
outros tipos de sistemas operacionais como Windows 9X, NT.
SMB-HOWTO Este o HOWTO SMB. Ele descreve como usar o protocolo Server Message
Block (SMB), tambm chamado de Session Message Block, NetBIOS ou protocolo Lan-
Manager, com o GNU/Linux e usando o Samba.
Securing-Domain-HOWTO Este documento descreve as coisas que provavelmente deve
fazer quando desejar congurar uma rede de computadores sob seu prprio domnio.
Ele cobre a congurao de parmetros de rede, servios de rede e conguraes de se-
gurana.
Security-HOWTO Este documento uma viso geral dos assuntos de segurana que en-
frente o administrador de sistemas GNU/Linux Ele cobre a losoa geral de segurana
e um nmero de exemplos especcos de como melhorar a segurana de seu sistema
GNU/Linux Tambm esto includos ponteiros para materiais relacionados com progra-
mas e segurana.
Shadow-Password-HOWTO Este documento tenta descrever como obter, instalar e cong-
urar o Linux password Shadow Suite. Tambm discute como obter e reinstalar outros
softwares e daemons de rede que requerem acesso as senhas do usurio.
SSL-RedHat-HOWTO Fornece referncias sobre como o PKI e SSL funcionam juntos
Tango-HOWTO Descreve a instalao, congurao e correo de problemas bsicos do
Pervasive Softwares Tango Application Server no Sun Solaris e vrios sabores de
GNU/Linux.
Thinclient-HOWTO Como converter computadores comuns em rpidos terminais usando o
poder de seu computador principal, voc precisar de: Um computador rpido para
atuar como servidor, um computador cliente (antigo e no desejado). Placas de rede
compatveis com o GNU/Linux. Uma conexo entre os computadores. Como centralizar
a administrao do sistema usando o NFS (i.e. colocando todo o sistema de arquivos de
um cliente rpido no servidor).
UUCP-HOWTO Este documento descreve a congurao do UUCP sob o GNU/Linux. Voc
deve ler este documento se planejar conectar a sites remotos via UUCP via modem,
conexo direta ou via Internet. Provavelmente no precisar ler este documento se no
souber o que UUCP ou se seu computador no possuir este suporte.
Captulo 31. Como obter ajuda no sistema 363
VMailMgr-HOWTO Explica como congurar o suporte ao VMailMgr servios de domnio
virtual pop3 em conjunto com o Qmail.
VoIP-HOWTO Ensina como congurar o sistema Linux para comunicao via voz usando a
Internet. Descreve protocolos e mtodos para transmisso de voz aproveitando recursos
de redes de baixa velocidade.
VPN-HOWTO Descreve como congurar uma Virtual Private Network com o GNU/Linux.
VPN-Masquerade-HOWTO Descreve como congurar um Firewall GNU/Linux para o mas-
querade emtrfego baseado no IPsec- e PPTP Virtual Private Network Trafc, permitindo
estabelecer uma conexo VPN sem perder a segurana e exibilidade de sua conexo In-
ternet com o rewall GNU/Linux e permitindo fazer um servidor VPN disponvel que
no possui um endereo IP registrado na Internet. Tambm esto includos detalhes de
como congurar um cliente e servidor VPN.
Virtual-Services-HOWTO Este documento fala sobre tudo que precisa saber para virtualizar
um servio.
Windows-LAN-Server-HOWTO Ajuda na congurao do Linux em ambientes onde exis-
tiam primariamente mquinas executando o Windows 9x.
Wireless-HOWTO Explica como como congurar uma rede sem o em ambiente Linux, lim-
itaes, requerimentos, etc.
WWW-HOWTO Explica como congurar servios WWW sob o GNU/Linux (ambos cliente e
servidor). Ele no tenta ser um manual detalhada mas uma viso e um bom ponto de
referncia.
WWW-mSQL-HOWTO Descreve como construir um banco de dados cliente/servidor us-
ando a WWW e HTML para a interface com o usurio.
phhttpd-HOWTO O phttpd um acelerador HTTP. Ele serve uma rpida requisio esttica
HTTP atravs de um sistema de arquivos locai e passa as requisies menos dinmicas
para um servidor de espera. Suas caractersticas so uma compreenso do I/O e um
cache de contedo agressivo que o ajuda a fazer um trabalho eciente.
Outros
Benchmarking-HOWTO Este documento discute assuntos relacionados ao desempenho dos
sistemas Linux e recomenda algumas ferramentas para medida do desempenho do sis-
tema.
DOSEMU-HOWTO Ensina como utilizar, congurar o emulador do ambiente DOS para
Linux.
Ecology-HOWTO Este documento discute mtodos de como os computadores com o
GNU/Linux podem ser usados para proteger nosso ambiente, usando caractersticas
como economia de energia ou papel. Como ele no requer grandes requerimentos de
Captulo 31. Como obter ajuda no sistema 364
hardware, o GNU/Linux pode ser usado com computadores antigos e tornar seu ciclo
de vida longo. Os jogos podem ser usados em ambientes educativos e esto disponveis
programas para simular os processos ecolgicos.
Process-Monitor-HOWTO Este documento descreve como monitorar os processos (progra-
mas) no Linux/Unix e como reinicia-los automaticamente se eles so destrudos sem
interveno manual. Este documento tambm tem URLs para FAQs sobre Processos no
Unix.
VAR-HOWTO Contm uma lista de empresas de servio que no fabricam hardwares ou
criam pacotes de softwares, mas incluem valores ao produtos existentes.
31.8.2 Listagem de Mini-HOWTOs
Segue abaixo uma listagem de Mini-HOWTOs do projeto LDP organizados por sub-sees
com a descrio do assunto que cada um deles aborda.
Introduo ao Sistema / Instalao / Congurao / Kernel
Alsa-sound Descreve a instalao dos controladores de som ALSA para Linux. Estes con-
troladores de som podem ser usados em substituio aos controladores de com regular,
como so totalmente compatveis.
Install-From-ZIP Descreve como instalar o GNU/Linux atravs de um zip drive conectado a
porta paralela usando a distribuio Slackware do GNU/Linux.
Install-Strategies Descreve algumas formas de instalao para aqueles que tem a inteno de
fazer dual boot entre o Linux e Windows.
Lego Mostra solues em software livre para utilizao com os kits de robtica da The Lego
Groups Mindstorm Robotics Invention System (RIS).
Kerneld Explica como congurar e utilizar o daemon kerneld.
Loadlin+Win95 Este documento descreve como usar o Loadlin com o Windows 95 para ini-
cializar o GNU/Linux.
Modules Explica como incluir seu suporte no kernel, congurar e utilizar mdulos no
GNU/Linux.
Path Descreve truques comuns e problemas com as variveis de ambiente no
GNU/Linux/Unix, especialmente a varivel PATH. PATH uma lista de diretrios onde
os comandos so pesquisados. Os detalhes se aplicam a distribuio Debian 1.3.
Pre-Installation-Checklist Voc um novato no Linux? Voc um guru no Linux? Em ambos
os casos esta checklist ser de grande ajuda para voc. Quantas vezes voc se encontrou
com problemas no meio de um processo de instalao do GNU/Linux porque algum
detalhe vital sobre o hardware alvo no conhecido?
Captulo 31. Como obter ajuda no sistema 365
Post-Installation-Checklist Lembra alguns passos que devem ser vericados logo aps a in-
stalao de um novo sistema Linux.
RPM+Slackware Este documento descreve como ter o RPM instalado e funcionando correta-
mente sob o Slackware.
Update Descreve como se manter atualizado sobre o desenvolvimento no mundo
GNU/Linux.
Upgrade Dicas e truques de como atualizar de uma distribuio GNU/Linux para outra.
VAIO+Linux Explica a instalao do GNU/Linux em computadores Sony VAIO.
Discos / Sistema de Arquivos / Desempenho
Automount Descreve a montagem automtica de sistemas de arquivos autofs, como
congura-lo e alguns problemas que devem ser evitados.
Ext2fs-Undeletion Imagina isto: Voc passou os ltimos trs dias sem dormir, sem comer.
Sua compulso hacker foi paga: voc nalizou aquele programa que lhe dar fama e<