Você está na página 1de 76

Instalando o GNU/Linux Debian 3.

1
(Sarge)
Apostila

Elaborado por Edson Lima Monteiro (boni@usp.br) utilizando LATEX


http://bonix.net
Versão 0.2
Copyleft °c 2005
6 de dezembro de 2005
Copyright (c) 2005 Edson Lima Monteiro. É dada permissão para copiar, distri-
buir e/ou modificar este documento sob os termos da Licença de Documentação Livre
GNU, Versão 1.1 ou qualquer versão posterior publicada pela Free Software Founda-
tion, com as Seções Invariantes sendo os textos da Capa da Frente, isto é,“Instalando
o GNU/Linux Debian 3.1 (Sarge) ” e “ Apostila”, e sem Textos da Quarta-Capa. Uma
cópia da licença pode ser obtida em http://www.gnu.org/licenses/fdl.html.
Sumário

Introdução 1

1 GNU 5

2 Linux 7

3 O que é o GNU/Debian 9
3.1 Pronúncia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.2 Quando surgiu? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.3 Codinomes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.4 Stable, Testing e Unstable . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.5 Main, Contrib e Non-Free . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
3.6 Custo versus Benefício . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

4 Identificar o Hardware 13
4.1 Fontes de Informação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.2 Meu hardware é compatível com o Linux? . . . . . . . . . . . . . . . . . 13
4.3 Meu hardware não é compatível com o Linux! . . . . . . . . . . . . . . . 15
4.4 Não compre equipamento sem suporte para Linux . . . . . . . . . . . . . 15

5 Instalação 17
5.1 Instalação do sistema básico . . . . . . . . . . . . . . . . . . . . . . . . . 17
5.2 Configuração do sistema básico . . . . . . . . . . . . . . . . . . . . . . . 19

6 Como instalar pacotes 23


6.1 Apt-get . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
6.2 Encontrar pacotes que contém determinado arquivo . . . . . . . . . . . . 25
6.3 Reconfigurar a lista de pacotes . . . . . . . . . . . . . . . . . . . . . . . . 26
6.4 Após reconfigurar a lista de pacotes . . . . . . . . . . . . . . . . . . . . . 28
6.5 Dpkg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
6.6 Onde está a tal lista de pacotes para instalação? . . . . . . . . . . . . . . 29

i
7 Ajustes inicias 31
7.1 Parar serviços e fechar portas . . . . . . . . . . . . . . . . . . . . . . . . 32
7.2 Habilitar um firewall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
7.3 Referência de horário . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
7.4 Agendar a sincronização do relógio . . . . . . . . . . . . . . . . . . . . . 37
7.5 Horário de Verão . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
7.6 Agendar a atualização do sistema operacional . . . . . . . . . . . . . . . 39
7.7 Verificar a integridade do sistema . . . . . . . . . . . . . . . . . . . . . . . 41

8 Amaciando o motor 43
8.1 Plugins do Firefox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
8.2 Editor padrão: JED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
8.3 Administrar usuários . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
8.4 Permitir gravar CDs, DVDs e diskets . . . . . . . . . . . . . . . . . . . . . 43
8.5 Temas e ícones para o GNOME . . . . . . . . . . . . . . . . . . . . . . . 43
8.6 Temas para o XMMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
8.7 Configurando impressoras com o CUPS . . . . . . . . . . . . . . . . . . . 44
8.8 Tocar DVIX com o MPLAYER . . . . . . . . . . . . . . . . . . . . . . . . . 44

9 Compilando o Kernel 45
9.1 Preparando o sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
9.2 Qual hardware será habilitado? . . . . . . . . . . . . . . . . . . . . . . . . 45
9.3 Compilando . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

10 Do console para as janelas 51


10.1 Apt-get: primeiros passos . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
10.2 Configurando o servidor gráfico . . . . . . . . . . . . . . . . . . . . . . . . 51
10.3 Reconfigurando o X Window: xserver-xfree86 . . . . . . . . . . . . . . . . 53
10.4 Como Reiniciar o Servidor Gráfico . . . . . . . . . . . . . . . . . . . . . . 53
10.5 Gerenciadores leves: fvwm, icewm e window maker . . . . . . . . . . . . 54
10.6 Gerênciadores de login: xdm, wdm, gdm e kdm . . . . . . . . . . . . . . . 54
10.7 Detectando o mouse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
10.8 Mouse do console: gpm . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
10.9 Reconfigurando o mouse do console . . . . . . . . . . . . . . . . . . . . . 56
10.10Acentuação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
10.11Reconfigurando a acentuação . . . . . . . . . . . . . . . . . . . . . . . . 57
10.12Reconfigurando o Mapa do Teclado . . . . . . . . . . . . . . . . . . . . . 58

11 Enxuto, mas nem tanto 59


11.1 Estação de trabalho . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

ii
12 Arquivos Importantes 65
12.1 Onde eles estão? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
12.2 Modelos de configuração . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

A Fontes de Conhecimento 67

iii
Introdução

Este curso nasceu para ser simples, para mostrar como usar um computador com o
sistema operacional GNU/Linux. Recebi o convite para trabalhar nele como uma opor-
tunidade de ajudar mais pessoas a aprender como usar o GNU/Linux. O que era uma
oportunidade transformou-se em um desafio pois, uma coisa é ter conhecimento sobre
algo, outra é saber compartilhá-lo!

Comecei com a idéia fixa de que “tinha que ser simples”. Comecei a escrever, es-
crever e escrever. O “simples” começou a ficar grande. Depois não cabia mais em um
capítulo, nem em uma apostila, até chegarmos nesta versão que você está lendo.

Já não é mais simples e não mostra muito “como usar”, mas sim, “como instalar”.

Esta é a uma nova versão adaptada para o Debian 3.1 lançado em junho de 2005.

Público Alvo

O requisito inicial era apenas ser funcionário da USP. Éra para ser um curso sim-
ples, não deveria exigir quase nenhum conhecimento específico de informática.

Nesta nova versão da apostila eu darei um foco maior no usuário que não é admi-
nistrador de sistemas. Faremos uma instalação voltada para o uso como “Desktop".
Com isso pretendo evitar algumas dificuldades encontradas nos outros cursos. Mesmo
assim, o aluno ainda aprenderá algums conceitos de administração de servidores.

O CCE fornece uma série de cursos da Cisco, dentre eles o de Unix. Este curso
poderia ser encarado com uma forma de iniciar com o pé-direito no Linux.

1
2

Praticar, praticar e praticar.


Este curso é baseado na prática e na repetição! Uma vez que você completou um
estágio guiado pelo instrutor deverá conseguir refazê-lo novamente, de preferência so-
zinho.

A aula utiliza esta apostila como base, mas nem tudo pode estar aqui. Mais deta-
lhes podem ser apresentados durante as discussões e o conteúdo sempre fica mais
rico. A tela do monitor do instrutor é projetada em um telão e todos podem ver o que
cada passo deve produzir.

Você deve vir para este curso sabendo que irá praticar muitas vezes. Por isso é
muito importante conseguir equilibrar os conhecimentos mínimos. Se um aluno tem
muitas dificuldades o instrutor vai parar a aula para que ele consiga chegar onde os
outros estão. Se isso ocorrer muitas vezes, o curso fica truncado, e pode causar muitas
frustações a toda a sala.

Este não é um curso para ouvir e, em casa ou no trabalho, tirar as dúvidas sobre os
temas que não entendeu direito. Você receberá toda a ajuda para aprender o que não
sabe, apenas certifique-se que está preparado para participar ativamente.

São requisitos necessários:

1. Ter prática em digitação.

2. Alguma familiaridade com instalação de software (windows/linux).

3. Disposição para ajudar o seu colega de bancada. Se você já terminou a configu-


ração do seu computador e seu parceiro não, ajude-o.

4. Leitura antecipada das apostilas do curso.

Requisitos desejáveis:

1. Familiaridade com algum editor de texto que pode ser usando no console, por
exemplo, o VI. Visite o site www.vim.org e baixe a versão para windows para
praticar antes do curso.

2. Familiaridade com Unix.

Utilização em outros cursos


Use como quiser, respeitando a Licença!
3

Ficarei agradecido se me avisar do uso deste material em algum curso seu ou do


qual tenha participado. Escreva-me um e-mail contando sua experiência e suas suges-
tões, assim como a data e o local em que o curso aconteceu.

Isto não é uma obrigação, apenas uma gentileza.

Novas Versões
As atualizações podererão ser encontradas em: http://www.linorg.usp.br/
docs/curso-instalacao-linux/ ou em http://bonix.net .

Correções
Se você encontrou erros nesta apostila, por favor, me avise para que eu possa
corrigí-los. Apenas tome o cuidado de verificar se o erro ainda existe no material que
está disponível para “download". Ele pode ser mais recente do que o seu.

Lista de Discussão
Existe uma lista de discussão para os alunos do curso. Inscreva-se enviando um
e-mail para cursolinuxusp-subscribe@yahoogroups.com.

A idéia é criar uma comunidade de usuários do GNU/Linux que participaram deste


curso. Quando tiver uma dúvida você poderá procurar na lista. Lá você poderá encon-
trar mais pessoas que estão começando e dispostas a ajudá-lo.

Orkut
Também existe um grupo no Orkut (http://www.orkut.com) para tem conta
neste sistema. A comunidade está em formação. O endereço é
http://www.orkut.com/Community.aspx?cmm=3333105.

Licença
Esta apostila é publicada sob a Licença de Documentação Livre GNU. Você pode
obter uma cópia no seguinte site: http://www.gnu.org/licenses/fdl.html .
4

Agradecimentos
Agradeço a paciência e compreensão de todos os meus alunos. A ajuda deles é
muito importante na criação desta apostila.

Edson Lima Monteiro


1

GNU

Falar sobre o projeto GNU e Richard Stallman

5
6 GNU
2

Linux

Falar sobre o Linux e Linus Benedictus Torvalds

7
8 Linux
3

O que é o GNU/Debian

“O Debian é um sistema operacional (SO) livre para seu computador. Um sistema


operacional é um conjunto de programas básicos e utilitários que fazem seu compu-
tador funcionar. O Debian usa o kernel1 Linux, mas grande parte das ferramentas do
sistema operacional vêm do projeto GNU, daí o nome GNU/Linux.”

O Debian GNU/Linux é mais que um simples SO: ele vem com mais de 15490 pa-
cotes contendo softwares pré-compilados e distribuídos em um bom formato, que torna
fácil a instalação deles na sua máquina.”2

3.1 Pronúncia
A pronúncia oficial de Debian é débian. Surgiu a partir do nome do criador do
Debian, Ian Murdock, e sua esposa, Debra. 3

3.2 Quando surgiu?


O Projeto Debian foi oficialmente fundado por Ian Murdock em 16 de Agosto de
1993. Naquele tempo, o conceito de uma “distribuição” de Linux era novo. Ian pretendia
que o Debian fosse uma distribuição criada abertamente, no mesmo espírito do Linux e
do GNU (leia seu manifesto fornecido como apêndice nesse documento para maiores
detalhes). A criação do Debian teve o apoio do projeto GNU da FSF durante um ano
(Novembro de 1994 a Novembro de 1995). 4
1
Núcleo de um sistema operacional.
2
Retirado do site http://www.br.debian.org .
3
Retirado do site http://www.br.debian.org/doc/manuals/project-history/ch-intro.pt.html .
4
Retirado do site http://www.br.debian.org/doc/manuals/project-history/ch-intro.pt.html .

9
10 Stable, Testing e Unstable

3.3 Codinomes
Para saber sobre os nomes que cada uma das versões do Debian recebeu, leia esta
referência: http://www.br.debian.org/doc/manuals/project-history/ch-releases.pt.html

3.4 Stable, Testing e Unstable


O desenvolvimento da distribuição Debian segue um rígido controle de qualidade. A
versão conhecida como estável (stable) é exaustivamente testada e corrigida. Quando
o conjunto de pacotes atinge esta maturidade, eles são congelados (freeze) na versão
em que estão, e uma nova versão estável é lançada.

O intervalo de tempo entre o lançamento de duas versões estáves pode levar 1 ou


até 2 anos. O compromisso é com a qualidade, ao contrário de outras distribuições que
soltam “releases” incompletos, devido as pressões de mercado.

Isto é motivo de alguma confusão para aqueles não habituados a utilizar o Debian.
Quando uma nova versão de um pacote é lançada, digamos o Apache 2.0.55, ele não
é incluído na versão estável, que disponibiliza o 2.0.54. Somente problemas graves,
como um “bug” de segurança, é que permitem a alteração de um pacote da distribuição
estável.

Digamos que a versão estável do Debian esteja utilizando o Apache 1.3.26. Se um


“bug” de segurança for encontrado neste pacote, o time de desenvolvimento do Apache
vai lançar a versão corrigida com o número 1.3.27, por exemplo. O time de desenvolvi-
mento do Debian também vai corrigir o pacote, mas o número versão dele será alterado
para 1.3.26-1, por exemplo. Alguém não habituado com o Debian vai achar que está
usando uma versão errada.

Na estrutura de diretórios dos softwares a nova versão do Debian está nas “árvores”
teste e instável. O time de desenvolvimento coloca seus pacotes na árvore experimen-
tal. Em seguida os pacotes são migrados para a instável e, após algum tempo, eles
são migrados para a árvore teste. Isto significa que ele já teve um tempo suficiente
para testes e não apresentou problemas. É possível fazer a instalação de um sistema
com a árvore teste, mas isso exige conhecimento para resolver problemas com pacotes
“jovens”.

A versão instável exige grande conhecimento e capacidade de resolver problemas


de configuração e instalação.
Custo versus Benefício 11

3.5 Main, Contrib e Non-Free


Os pacotes podem ser classificados quanto ao tipo de Licença de Software que se-
guem. No site do Debian podemos encontrar a seguinte explicação:

“Todos os pacotes incluídos a distribuição oficial do Debian são livres de acordo


com a Definição Debian de Software Livre. Isso assegura uso livre e redistribuição de
pacotes com seu código fonte completo. A distribuição oficial do Debian é a que está
contida na seção main do repositório do Debian.

Como um serviço para nossos usuários, provemos pacotes em seções separadas


que não podem ser incluídas na distribuição main por causa de uma licença restritiva
ou problemas legais. Eles incluem:

Contrib Pacotes nessa área são livremente licenciados pelo detentor do copyright mas
dependem de outros pacotes que não são livres.

Non-Free Foram retirados a partir do Sarge.

Note que os mesmos pacotes podem aparecer em muitas distribuições, mas com
números de versão diferentes.”5

3.6 Custo versus Benefício


Para evitarmos algums enganos ou incompreensões, precisamos falar acerca do
elevado tempo entre novas versões do Debian. Quando uma versão estável é liberada,
ela não é alterada a menos de algum bug. Quando isto ocorre, apenas o pacote pro-
blemático é corrigido e não atualizado para a versão mais recente. É muito importante
que você tenha isso em mente quando for fazer uma instalação.

Isso torna-se um incômodo pricipalmente quando se faz a instalação de uma esta-


ção de trabalho. Geralmente um usuário quer a versão mais recente de determinado
programa, seja por melhorias no código, seja por novas características. Se você estiver
usando a versão estável, a única forma de conseguir isso é instalar a versão mais re-
cente. Isso pode exigir desde a recompilação do próprio programa, até a recompilação
dele e de seus pré-requisitos. Você não vai conseguir isso fazendo o “apt-get install”.

Se a sua instalação for para um servidor, isso pode ser menos problemático. Na
maior parte do tempo você estará suficientemente provido de bons pacotes. Um ser-
vidor também precisa de um administrador experiente e capaz de manter o sistema
5
http://www.br.debian.org/distrib/packages
12 Custo versus Benefício

funcionando. Teoricamente ele seria capaz de instalar um pacote que não está na dis-
tribuição Debian.

Em alguns casos, o CD de instalação pode não conter um “drive” para uma versão
nova de controladora SCSI. Isso vai exigir mais do administrador para que ele consiga
fazer a instalação do sistema operacional. Eventualmente, ele poderá gerar um disket
com os módulos necessários. Em casos como esse, as soluções começam a deixar de
ser triviais.

Com a intencão de utilizar versões mais novas de alguns pacotes, alguém pode ter
a idéia de misturar a “árvore” estável com a teste ou pior, com a instável. Este pro-
cedimento pode gerar resultados imprevisíveis, e nem sempre você poderá encontrar
ajuda por estar fazendo algo muito fora dos padrões.

Você deve saber isso antes de instalar um servidor ou uma máquina “de mesa”. Se
a versão estável pode ser “estável como uma rocha”, ela pode ser dão dura quanto se
precisar de um programa novíssimo!
4

Identificar o Hardware

Vamos descobrir se o sistema tem os pré-requisitos de hardware para a instalação.

4.1 Fontes de Informação


As fontes de informações necesssárias para o conhecimento do hardware de que
dispomos são:

• Manuais de cada compontente do computador.

• Na falta dos manuais, as caixas de embalagem dos compontes.

• Informações fornecidas pela BIOS.

• Outro sistema operacional que já esteja instalado no computador.

• O administrador da sua rede local ou provedor de Internet.

A tabela 4.1 mostra as principais informações que devemos obter para cada com-
pontente específico:

4.2 Meu hardware é compatível com o Linux?


Agora que temos a descrição dos principais componentes instalados em nosso com-
putador, precisamos saber se eles são compatíveis com o Linux.

Além disso, é preciso saber se a versão do Linux que iremos instalar suporta este
hardware. As versões que são desenvolvidas por grandes empresas como a Red Hat,
Conectiva ou Suse, costumam ter os drives mais recentes. Outras versões, como a
Debian, não contem estes drives em suas versões estáveis.

13
14 Meu hardware é compatível com o Linux?

Informações para cada tipo de componente


Componente Quantidades ou Ordem ou Tipo Descrição dos Itens
Quantos discos existem
A ordem em que estão instalados
Disco Rígido Quais são as partições
Capacidade (Gb)
Modelo e fabricante
Resoluções suportadas
Taxa de atualização horizontal (opcional)
Monitor Taxa de atualização vertical (opcional)
Tamanho da Tela (Polegadas)
Tipo: serial, ps2 ou usb
Mouse Fabricante
Número de Botões
Modelo e Fabricante
Taxa suportada (10 ou 100 Mb/s)
Número IP 143.107.
Placa de Rede Netmask 255.255.255.
Gateway 143.107.
Servidor DNS 143.107.253.3
Nome do computador (host)
Domínio
Placa de Vídeo Modelo e Fabricante
Memória de vídeo disponível
Placa de Som Modelo e Fabricante
Modelo e Fabricante
Memória Quantidade disponível
Processador Modelo e Fabricante
Frequência (Mhz)

Tabela 4.1: Tabela com especificicação do hardware do computador.

As fontes de informação sobre a compatibilidade do hardware com a versão do


Linux, podem ser, entre outras, as seguintes:

• Linux Hardware Compatibility HOWTO


(http://www.linorg.usp.br/LDP/HOWTO/Hardware-HOWTO/ )

• LinuxPrinting.org (http://www.linuxprinting.org/)

• Site do Fabriante do Hardware

• Grupos de Discussão da versão de Linux utilizada


Não compre equipamento sem suporte para Linux 15

• Sites de Busca (http://www.google.com/)

4.3 Meu hardware não é compatível com o Linux!


Neste caso, procure substituir o componente que não é compatível. Em geral, os
componentes mais antigos ou que existem no mercado há alguns meses, funcionam
facilmente e até podem ser reconhecidos automaticamente.

Infelizmente, nem todos os fabricantes de hardware lançam drivers para o Linux!

4.4 Não compre equipamento sem suporte para Linux

Se você tiver influência nas decisões de compra de sua unidade, alerte seus cola-
boradores.

Na sua unidade de trabalho, explique os perigos da compra de hardware sem su-


porte para Linux. No futuro, se você for tentar utilizar aquele computador com o Linux,
poderá ficar frustrado. Corre-se o risco de aprisionar-se duas vezes, uma quando com-
prar um software proprietário e, a outra, quando comprar hardware com suporte para
apenas um sistema operacional proprietário.

Imagine as seguintes possibilidades:

• Não existem recursos para comprar um software proprietário e você decidiu que
quer experimentar um similar, mas que só roda em Linux.

• Um computador será substituído por outro mais novo, e você gostaria de utilizar
o antigo com Linux.

• O software mais adequado ou eficiente que você quer utilizar roda melhor no Linux
(Apache por exemplo).

Se você comprou a placa de rede novíssima no mercado, de um fabricante que não


expecifica nenhuma versão de Linux em as plataformas suportadas, você está em uma
armadilha. Só poderá utilizar os sistemas operacionais suportados, que provavelmente
são os proprietários.

“Em uma empresa pública essa questão é extremamente importante. O dinheiro


público deve ser gasto da melhor forma possível! Se a melhor alternativa for um produto
16 Não compre equipamento sem suporte para Linux

proprietário, tudo bem, que vença o melhor. Mas se a melhor alternativa for Livre, não
fique aprisionado no hardware também1 ."
.

1
Nota do autor
5

Instalação

A instalação pode ser dividida em duas parte. A primeira é aquela em que se faz o
boot do computador com o CD de instalação. É nesta parte que o hardware do compu-
tador é detectado, o disco rígido é particionado e a rede é configurada.

Na segunda parte serão criadas as contas de usuários, o horário do computador


será configurado, os CDs de instalação serão “apresentados", será escolhido o tipo de
instalação, o “video” será configurado e um servidor de e-mail local.

5.1 Instalação do sistema básico


1. Boot o computador e entre na BIOS para configurar o CDROM como o primeiro
dispositivo a ser lido. Em caso de dificuldades chame o instrutor.

2. Ainda na BIOS, desative a opção Ctrl+Alt+Backspace como sequência de reboot


do computador.

3. Tela inicial, digite : linux26

4. Choose language : Portuguese (Brazil) - Português do Brasil

5. Selecione um layout de teclado : Portugês Brasileiro (layout Americano)

6. O sistema de instalaçao tentará detectar o leitor de CDROM. Alguns componentes


do programa instalador serão carregadas.

7. O instalador tentará detectar um servidor de DHCP para configurar a rede.

8. A configuração automática da rede vai falhar porque não encontrará um servidor


DHCP.

9. Configurar a rede:

17
18 Instalação do sistema básico

• Configurar a rede manualmente


• Endereço IP
• Máscara de rede
• Gateway
• Endereços dos servidores de nomes (DNS)
• Nome da máquina
• Nome do domínio

10. O instalador tentará detectar os HDs e todo o resto do hardware.

11. Particionar discos:

• Editar manualmente a tabela de partições


• IDE1 principal (hda) - escolha a partição indica pelo instrutor
Usar como: sistema de arquivos com journaling ext3
Ponto de montagem: /
Opções de montagem: defaults
Rótulo: /
Blocos reservados: 5%
Uso típico: padrão
Flag Inicializável: desligado
Tamanho: X GB
• Finalizar a configuração da partição.
• Escolha a partição “swap” (àrea de troca) existente. Ela deve ficar com a
seguinte configuração:
Usar como: àrea de troca
Flag Inicializável: desligado
Tamanho: Y MB
• Finalizar a configuração da partição
• Finalizar o particionamento e gravar as mudanças no disco
• Gravar essas mudanças nos discos? Selecione: Sim .

12. O sistema básico do Debian será instalado.

13. Instalar o GRUB em um disco rígido: Sim .

14. Finalizar a instalação:

• Escolha: Continuar.
• O sistema vai rebootar
Configuração do sistema básico 19

5.2 Configuração do sistema básico


Após o reboot o sistema iniciará com um menu de fundo azul, é o grub. Deverão
constar neste menu opções para iniciar pelo Linux e pelo Windows que já existia na
máquina.

1. Bem-vindo ao seu novo sistema Debian? Pressione a tecla Enter.

2. Insira o primeiro CD de instalação no drive de CDROM.

3. Configuração de fuso horário:

• O relógio de hardware está configurado para GMT : Não.


• Selecione seu fuso horário: Leste

4. Configurando passwd:

• Senha do root: xxxxx


• Informe a senha novamente para verificação xxxx
• Informe um nome completo para o novo usuário: Edson Lima Monteiro
• Informe un nome de usuário para sua conta: killbill
• Informe uma senha para o novo usuário: xxx
• Informe a senha novamente para verificação: xxx

5. Configuração do apt1 :

• O instalador vai ler o primeiro CD.


• Em seguida o instalador irá perguntar: Scanear outro CD? Retire o CD 1 e
insira o CD 2 no drive de CDROM. Agora escolha SIM e pressione a tecla
ENTER.
• Repita o procedimento acima até chegar no último CD. Após scanear o último
CD, escolha a opção NÃO.
• O instalador fará um acesso ao servidor de atualizações para verificar se
consegue alcançá-lo.
• Método de acesso ao repositório para o apt. Escolha CDROM.
• Arquivo de dispositivo do CD-ROM: /dev/cdrom
• Adicionar outra fonte apt? Escolha NÃO.
• Utilizar atualizaçòes de segurança de security.debian.org ? Escolha
NÃO.
20 Configuração do sistema básico

6. O instalador fará a instalação de dois pacotes chamados mdetect e read-edid.

7. Seleção de software Debian. Escolha a opção Ambiente Desktop e, com a tecla


TAB, escolha OK e pressione a tecla Enter.

Este paço vai isntalar 738 pacotes e precisa de 1566 Mb de espaço.

8. Dicitionares-common: Ispell dictionary.


Escolha: portugues brasileiro (Brazilian Portuguese)

9. Configurando ssh:

• Escolha: OK .
• Permitir somente protocolo SSH versão 2: SIM
• Deseja2 que /usr/lib/ssh-keysign seja instalado SUID root: Não
• Você deseja executar o servidor ssh ? Não.

10. Configurando libpango1.0-coomon:

• OK
• Deseja delgar o gerenciamento de fontes ao defoma: SIM .

11. Configurando cdrecord.


Você deseja que os binários do cdrecord sejam instalados SUID root ? SIM.

12. Configurando cvs:

• OK.
• ignorar
• OK
• Não

13. Qual o tamanho de papel deverá ser o padrão do sistema3 ? Escolha: A4.

14. Configurando mozilla-browser: auto.

15. Configurando kpilot: Nenhuma.

16. Configurando xserver-xfree86 :


1
Possível bug. No sistema em que estava simulando a instalação o procedimento de scanear os CDs
teve que ser feito duas vezes. Em máquinas em que fiz uma instalação real eu nunca tive este problema.
2
Bug de tradução: a palavra que aparece duas vezes.
3
Outro bug de tradução. O correto seria "ser".
Configuração do sistema básico 21

• Tentar autodetectar o hardware de vídeo: SIM.


• OK
• OK
• Não digite nada, apenas use a opção OK.
• Tentar autodetectar o dispositivo de mouse? SIM
• OK
• OK
• Tentar autodetectar o monitor? SIM
• Seu monitor é um dispositivo LCD? Não
• OK
• simples
• Até 14 polegadas (355 mm) 15 polegadas (380 mm)
• Selecione as últimas 3 resoluções se o seu monitor for de 15”.
• OK
• 24

17. Configurando o Exim v4 (exim-config) :

• Dividir a configuração em pequenos arquivos ? Não


• Tipo geral de configuração de e-mail: somente entrega local ; fora de uma
rede
• Nome do sistema de entrega: debian.usp.br
• Ok
• 127.0.0.1
• debian.usp.br
• Destinatário das mensagens para root e postmaster: killbill

18. FIM: OK.

Caso sejam exibidas algumas telas com mensagens de erros, logo após entrar no
Gnome pela primeira vez, instale os seguintes pacotes: xxkb e xkbsel
22 Configuração do sistema básico
6

Como instalar pacotes

6.1 Apt-get
O principal instalador de pacotes que vamos utilizar é o apt-get. Será com ele que,
na maior parte das vezes, iremos instalar ou remover um pacote.

É frequente falarmos em pacotes ao invés de programas quando o assunto é insta-


lação. Isso vem da idéia de “empacotamento” de programas, que é a forma como cada
distribuição organiza os programas que a constituem. No Debian, cada pacote termina
com a extensão “.deb”, nas distribuições derivadas do RedHat a extensão é “.rpm”.

Alguns pontos sobre como usar o “apt-get” devem ser ressaltados:

1. Apenas o usuário root pode instalar ou remover pacotes.

2. Só uma instância do “apt-get” pode ser executada. A segunta tentativa de iniciar,


simultaneamente, a instalação de um pacote, vai gerar uma mensagem de erro.

Para instalar um pacote o “apt-get” segue a seguinte ordem:

Baixa Ele acessa o mirror que você configurou e faz o “download” do pacote para o seu
computador. O diretório /var/cache/apt/archives recebe os pacotes baixados.

Abre o arquivo O pacote é “aberto” para iniciar a instalação.

Configura Dependendo do pacote, antes de instalar, é necessário perguntar sobre


algum tipo de preferência ao usuário.

Instala Todos os componentes do pacote são copiados para os diretórios devidos.

As principais acões que executaremos com este comando são:

23
24 Apt-get

apt-get update Existe uma lista que contém uma descrição de todos os pacotes dis-
poníveis para o Debian. O “apt-get” não é um advinho! Ele consulta esta lista
para saber o que pode instalar. Este comando faz uma comparação entre a lista
que você tem armazenada e a lista que está no servidor de pacotes. Se a sua
lista for mais velha, ele faz o “download” da mais recente. A atualização de um
único pacote provoca o lançamento de um nova lista.

apt-get upgrade No caso de existir uma nova lista de pacotes, você deve verificar
se, para algum programa que está instalado em seu sistema, existe uma versão
mais recente. Ao executar o “apt-get upgrad”, se nenhum pacote for instalado,
significa que o pacote que gerou a emissão da nova lista não está instalado em
seu sistema. Caso contrário, a nova versão deste programa será instalada. Não
é preciso dizer qual pacote você quer atualizar, independente de ser um ou dez,
ele fará tudo sozinho.

apt-get clean Após a instalação de um pacote, não precisamos mais manter o arquivo
“.deb” em nosso sistema. O processo de instalação não remove os pacotes bai-
xados! Se você não removê-los começará a acumulá-los no disco rígido. Com o
passar do tempo isso pode causar um problema de falta de espaço.

apt-get install NOME Executamos este comando para instalar um pacote chamado
“NOME”. Se queremos instalar mais programas, basta escrever todos os nomes,
separados por pelo menos um espaço. Se um pacote precisa de outros para ser
instalado, isto é, se ele tem pré-requisitos, eles também serão selecionados para
instalar. Quando você pede para instalar um pacote que não tem dependências, o
“download” começa imediatamente. Caso existam dependências, elas são mos-
tradas para você e o programa espera a sua confirmação (Y/n) para continuar.
Existem vários motivos para ele esperar por uma confirmação: a lista de depen-
dências pode ser muito grande e você não quer instalar todos os pacotes, você
não tem espaço em disco suficiente para instalar o programa e/ou suas depen-
dências, o pacote é incompatível com outro já instalado e ele exige que este seja
removido.

apt-get remove NOME Para remover um ou mais pacotes executamos este comando.
Estaremos desfazendo a instalação, não removendo o pacote com a extensão
“.deb” do disco rígido. Em alguns casos os arquivos de configuração do pacote
são mantidos. Isso pode ser bom ou mal. Se você removeu um pacote por aci-
dente, todo o seu trabalho de configuração dele ainda estará preservado. Preste
atenção às mensagens mostradas durante a remoção de um pacote para saber o
que está acontecendo.

apt-get –purge remove NOME Para remover um pacote e seus arquivos de configu-
ração
Encontrar pacotes que contém determinado arquivo 25

apt-get install –reinstall NOME Em algumas situações precisaremos reinstalar um pa-


cotes já existente. Este é o comando que permite que isso aconteça. Tome o
cuidade de fazer uma cópia dos seus arquivos de configuração para não ter sur-
presas. Esse comando será usado poucas vezes durante o curso. Se você seguir
todos os passos nem precisará dele.

Você deve estar se perguntando como fazer para saber o que instalar, ou qual o
nome de um determinado programa no Debian. Para responder a essas dúvias vamos
aprentá-los a três programas criados para resolver este problema.

apt-cache search NOME Para procurar por um pacote chamado NOME executamos
este comando. Ele faz uma pesquisa na lista de pacotes disponíveis para instalar.
A saída apresenta todos os pacotes que apresentam a palavra que você forneceu
como argumento. Existem formas mais complexas de busca que podem ser mais
claras ou mais específicas, geralmente a utilzação do comando “grep” para filtrar
a saída já é o suficiente.

apt-cache show NOME Uma vez descoberto o nome correto do pacote no Debian,
você pode querer uma descrição dele.

gnome-apt Interface gráfica para o apt. Pode ser mais amigável para aqueles que não
gostam do console como ambiente de trabalho.

synaptic Outra interface gráfica. Ele também é utilizado em outras distribuições, a


Conectiva é uma delas.

6.2 Encontrar pacotes que contém determinado arquivo


Em algumas situações, tais como a compilação de um programa através do código
fonte, faz-se necessário descobrir qual pacote possui determinado arquivo.

Imagine a situação em que, durante a etapa de “configure” do programa que você


for compilar, receba uma mensagens de erro apontando a falta do arquivo glibconfig.h.
Como fazer para encontrar em qual, das centenas de pacotes, está aquele que contém
o arquivo glibconfig.h?

No “link” http://www.debian.org/distrib/packages, ao final da página, você


encontrará dois formulários. O primeiro serve para procurarmos usando o nome, ou
parte do nome, de um pacote. Você encontrará nomes de pacotes que contém o texto
que você forneceu ao formulário. Este tipo de pesquisa tem uma saída semelhante ao
“apt-cache search NOME”.
26 Reconfigurar a lista de pacotes

O segundo formulário procura por arquivos dentro de pacotes. Por exemplo, se


eu quiser descobrir qual pacote possui o arquivo glibconfig.h na distribuição Sarge ou
testing o preenchimento do formulário ficaria assim:

Palavra chave glibconfig.h

Mostrar pacotes que contém arquivos ou diretórios cujos nomes contém a palavra
chave

Sensível à casa não

Distribuição sarge

Arquitetura Intel x86

O resultado desta pesquisa retornaria:

You have searched for glibconf in testing, architecture i386.


Found 2 matching files/directories, displaying
files/directories 1 to 2.

FILE PACKAGE

usr/lib/glib-2.0/include/glibconfig.h libdevel/libglib2.0-dev
usr/lib/glib/include/glibconfig.h libdevel/libglib1.2-dev

Agora você descobriu que existem dois pacotes com o arquivo glibconfig.h: libglib2.0-
dev e libglib1.2-dev. Poderá instalar um deles e reiniciar a compilação. Se você instalar
a versão 1.2, pode ser que a mensagem de erro ao invés de reclamar a falta do arquivo
glibconfig.h, reclame da versão. Neste caso, bastaria instalar o pacote com da versão
2.0, isto é, o pacote libglib2.0-dev.

6.3 Reconfigurar a lista de pacotes


Os pacotes que instalaremos em nosso sistema estão disponíveis em servidores ao
redor do mundo. Estes servidores contém todos os pacotes disponíveis para o Debian.
Eles são criados com uma técnica de espelhamento e, graças a isto, podemos baixar
os pacotes do servidor mais próximo de nós, diminuindo o tempo de instalação.

A qualquer momento podemos reconfigurar a lista de servidores que utilizaremos


através de uma das duas possibilidades abaixo:

1. Editar o arquivo de configuração /etc/apt/sources.list

2. Executar o comando apt-setup.


Reconfigurar a lista de pacotes 27

Com o passar do tempo você poderá achar que a edição do arquivo é mais rápida
ou mais confortável, principalmente se você estiver usando o editor VI1 .

Neste curso nós iremos editar o arquivo para que ele fique igual ao mostrado na
tabela abaixo:

deb http://www.linorg.usp.br/debian sarge main contrib


deb http://www.linorg.usp.br/debian-security sarge/updates main contrib
deb http://security.debian.org sarge/updates main contrib
deb http://ftp2.de.debian.org/debian-volatile stable/volatile main

Tabela 6.1: Apontando o apt-get para o Linorg.

Na eventual falta do Linorg, outros servidores também podem ser utilizados:

ftp.debian.org
ftp.br.debian.org
linux.iq.usp.br
sft.if.usp.br
ftp.de.debian.org

Tabela 6.2: Servidores alternativos do apt-get.

Para usarmos o primeiro servidor acima, no lugar do Linorg, o arquivo de configura-


ção ficaria assim:

deb ftp://ftp.br.debian.org/debian sarge main contrib


deb http://security.debian.org/debian-security sarge/updates main contrib

Tabela 6.3: Apontando o apt-get para o servidor principal do Brasil.

Note que para os endereços de sites de FTP o início da linha é deb ftp:// e para os
sites de HTTP o início é deb http://.

Uma lista completa de servidores do projeto Debian pode ser encontrada no ende-
reço http://www.debian.org/mirrors/list .

A ordem das linhas faz diferença, o primeiro servidor a ser consultado é o da pri-
meira linha e assim por diante. Assim, devemos colocar o que está mais próximo no
início do arquivo. Também não pode haver espaço entre o início da linha e a palavra
deb.

1
Brincadeirinha! Você pode preferir o VIM.
28 Dpkg

Cada linha representa uma lista que deverá ser copiada para o seu sistema.

Se você encontrar alguma linha que comece com “deb-src”, poderá comentá-la, isto
é, acrescentar o sinal “#” no início da linha. Este tipo de linha serve para baixar o
código fonte de um programa. Lembre-se que os pacotes com extensão “.deb” já foram
compilados para uma arquitetura específica, por isso, é só pegar e instalar. Quando
você quer compilar um programa, precisa do seu código fonte.

deb-src http://www.linorg.usp.br/debian sarge main

Tabela 6.4: Exemplo de como baixar o código fonte.

6.4 Após reconfigurar a lista de pacotes


Todas as vezes que você alterar o arquivo /etc/apt/sources.list deverá atualizar a(s)
lista(s) existentes no seu sistema, fazendo:

# apt-get update
Se não fizer isso e, tentar instalar um novo pacote, receberá uma mensagem de
erro.

6.5 Dpkg
É importante lembrar do comando dpkg. Ele também instala, remove e reconfigura
pacotes. É menos usados para a instalação porque não traz as dependências. Se um
pacote X tem os pacotes Y e Z como suas dependências, você teria que baixá-los em
sua máquina e instalá-los antes do pacote X.

Imagine o problema que você pode enfrentar se os pacotes Y e Z tem dependências.


E se as dependências destes também tem suas próprias dependências? Já percebeu
onde isso leva, não é?

O RedHat e o Conectiva possuem o comando equivalente chamado rpm. A Conec-


tiva portou o apt-get para a sua distribuição e o funcionamento é o mesmo do apt-get
do Debian.

O dpkg será importante quando quisermos reconfigurar o nosso servidor gráfico


fazendo:
Onde está a tal lista de pacotes para instalação? 29

dpkg-reconfigure xserver-xfree86

Podemos usar o dpkg para saber quais os pacotes temos instalados no sistema:

dpkg -l
Outro uso muito importante do “dpkg” é quando a instalação pára por algum pro-
blema de configuração. Este problema pode ter sido causado porque algum pacote em
seu sitema está em um estado incorreto. Guarde-o bem em sua memória, ele poderá
lhe ajudar muito.

dpkg –configure -a
Em outras palavras, você está pedindo para o “dpkg” verificar e corrigir a confi-
guração de todos os pacotes. Se ele não conseguir “arrumar a casa” pode ajudar a
identificar qual o pacote problemático.

6.6 Onde está a tal lista de pacotes para instalação?


A esta altura você já sabe que devemos manter a lista de pacotes disponíveis para
instalação atualizada. Sempre que um bug de segurança é descoberto, esta lista é
atualizada. Somente após a atualização da lista seremos capazes de descobrir se é
preciso atualizar um pacote já instalado usando o comando apt-get upgrade.

Experimente ler a lista com o seguinte comando: less /var/lib/dpkg/available.


30 Onde está a tal lista de pacotes para instalação?
7

Ajustes inicias

Neste ponto já temos o computador com uma instalação para “Desktop", isto é, com
a maior parte dos programas que são usados pelos usuários. É uma instalação voltada
para as tarefas do dia-a-dia como editar arquivos, navegar na internet, gravar CDs, ou-
vir musicas, editar imagens.

O que vamos fazer agora são alguns ajustes à configuração padrão realizado pelo
pelo programa de instalação. Ajustes após a instalação devem ser encarados como
uma coisa normal e necessária.
Os programas de instalação tentam ser flexíveis o suficiente para adaptarem-se ao
maior número de usuários possíveis. Seria muito difícil habilitar em um programa de
instalação muitos perfis diferentes entre si. Um usuário de “Desktop” tem um perfil dife-
rente de outro que é administrador de sistemas, que é diferente do “designer gráfico”.

Os procedimentos que estudaremos são:

• Parar serviços “desnecessários” ou fechar portas.

• Habilitar um firewall.

• Referência de horário.

• Agendar a sincronização do relógio.

• Horário de verão.

• Agendar a atualização do sistema operacional.

• Veririficar a integridade do sistema.

• Compilar o Kernel mais recente (próximo capítulo).

31
32 Parar serviços e fechar portas

Ajustes devem ser realizados em qualquer máquina recém instalada. Encare isso
como uma medida de segurança preventiva, vai beneficiar você e todos os outros usuá-
rios da sua rede.

Em palestras sobre segurança de computadores é comum ouvir a frase: “Uma cor-


rente é tão forte quanto o seu elo mais fraco”. Não importa que a sua rede tenha
100 computadores seguindo todas as normas da política de segurança1 se 1 deles não
está. Este único computador vai ser a porta de entrada para um invasor.

Programas importantes deste capítulo:

rcconf, nmap, netstat, lsof, chkrootkit

Arquivos importantes deste capítulo:

/etc/services , /etc/inetd.conf

7.1 Parar serviços e fechar portas


Alguns serviços são instalados por padrão nas instalações do GNU/Linux e, algu-
mas vezes, não precisamos deles. Se estamos instalando um estação de trabalho
certamente não precisamos de um servidor de e-mail, ou um servidor WEB rodando.

Por isso é muito importante prestar atenção ao que instalarmos e, de tempos em


tempos, verificar se nada está sendo executado sem que queiramos.

Para checar se temos alguma porta aberta vamos instalar o pacote nmap:

# apt-get install nmap

Esta ferramenta pode ser uma faca de dois gumes se não tomarmos cuidados ao
usá-la. Não devemos usar como teste uma máquina que não seja nossa ou que não
tenhamos autorização para fazê-lo. Alguns sistemas de segurança podem interpretar
um simples teste como um ataque hacker. Em caso de dúvida, consulte o administrador
de sua rede.

Vamos fazer um scan em nossa própria máquina:

$ su -

$ apt-get install nmap


1
Quando ela existe.
Parar serviços e fechar portas 33

$ nmap localhost

Starting nmap 3.81 ( www.insecure.org/nmap/ ) at 2005-10-15 19:17 BRT


Interesting ports on localhost.localdomain (127.0.0.1):
(The 1657 ports scanned but not shown below are in state: closed)
Port State Service
22/tcp open ssh
25/tcp open smtp
110/tcp open rpcbind
113/tcp open auth
617/tcp open sco-dtmgr
627/tcp open unknow

Nmap finished: 1 IP address (1 host up) scanned in 0.588 seconds

A primeira pista para fecharmos as portas acima é procurar no arquivo /etc/inetd.conf.


No arquivo da máquina usada para o exemplo acima, podemos encontrar uma linha que
não está “comentada”, isto é, não começa com #:

ident stream tcp ident /usr/sbin/identd identd

Este e outros serviços listados pelo nmap são conhecidos como daemons e ro-
dam constantemente, a partir da inicialização, em nosso computador. Os daemons são
muito úteis em casos em que não podemos prever quando um serviço será solicitado.
Podemos citar como exemplos os servidores de SMTP ou POP onde, a qualquer ins-
tante, alguém poderá usar para enviar um e-mail. Tais sistemas seriam impossíveis de
existir se tivéssemos que rodar o programa de smtp toda vez que quisessémos enviar
uma mensagem.

Os daemons que encontramos até o momento não são necessários em uma má-
quina de “desktop”. Para desabilitar o ident deveremos inserir o símbolo # no início da
linha do arquivo /etc/inetd.conf .

# ident stream tcp ident /usr/sbin/identd identd

O arquivo /etc/inetd.conf é utilizado pelo programa inetd. Agora precisarmos fazer


com que o programa releia suas configurações. Teremos que descobrir o número do
processo associado ao programa inetd e enviar o sinal HUP, forçando-o a reler suas
configurações.

# ps -ef | grep inetd

UID PID PPID C STIME TTY TIME CMD


root 224 1 0 Jul24 ? 00:00:00 /usr/sbin/inetd
root 599 394 0 00:23 pts/3 00:00:00 grep inetd
34 Parar serviços e fechar portas

Podemos ver que o programa inetd tem o número de processo (PID) 224. Para
forçá-lo a reler suas configurações vamos usar o comando kill2 :

# kill -HUP 224

Agora vamos instalar o programa rcconf:

# apt-get install rcconf

Ele vai nos ajudar a identificar quais são os programas que estão habilitados a ini-
ciar com o “boot´´ do computador, em geral eles são “daemons”. Vamos procurar pelos
programas com os mesmos nomes mostrados na saída do comando nmap, isto é, va-
mos procurar por ssh, smtp, rpcbind, auth, sco-dtmgr e unknow.

Se encontrarmos algum deles deveremos usar as setas (para cima/para baixo) do


teclado para selecioná-los e, para desabilitá-los, pressionar a barra de espaço. No final,
pressionamos a tecla TAB para selecionarmos OK e finalizarmos a operação.

Você notará que não aparece nenhum programa chamado smtp, isto porque este
nome está associado à porta aberta. O programa que abre esta porta é o exim4, o
servidor de e-mails que foi instalado automaticamente. Outros programas que você
poderá desabilitar são o lpd, “deamon” de impressora, o nfs-common e o fam.

Ainda resta um serviço que está atendendo na porta 111, faça um “scan´´ em sua
máquina e verifique. Para desabilitarmos este serviço precisamos encontrar mais infor-
mações sobre ele. Nada foi encontrado sobre ele ao usarmos o comando rcconf e ele
não aparece no arquivo /etc/inetd.conf.

O programa que usaremos chama-se lsof. Para descobrirmos qual programa está
“ouvindo” a porta 111 devemos executá-lo assim:

# lsof -i:111

Vamos obter uma saída como esta:

COMMAND PID USER FD TYPE DEVICE SIZE NOE NAME


portmap 1524 daemon 3u IPv4 3200 UDP *:sunrpc
portmap 1524 daemon 4u IPv4 3201 TCP *:sunrpc (LISTEN)
2
Muito cuidado ao usar este comando, como o próprio nome indica, ele também pode matar proces-
sos. Em uma máquina de “desktop” matar um processo por engando pode ser apenas em inconveniente.
Se algum dia estiver trabalhando em um servidor isso poderá lhe custar a insatisfação de muitos usuá-
rios.
Habilitar um firewall 35

A informação importante neste caso é o nome do programa: portmap.

Agora vamos conhecer o diretório “habitado” pelos programas que iniciam quando
o computador é ligado: /etc/init.d.

Vamos até este diretório e saber algumas informações sobre os programas que
estão lá:

# cd /etc/init.d
# ls -l

Note que o programa portmat está lá e é um “executável”:

# ls -l | grep portmap
-rwxr-xr-x root root 1076 2005-03-20 03:04 portmap

Para desabilitá-lo vamos ter que parar a sua execução e retirar a permissão de
execução:

# ./portmap stop
# chmod 444 portmap

Se fizermos um novo “scan” em nossa máquina vamos notar que ainda existe uma
porta aberta e com o nome de unknow. Se você utilizar o lsof conseguirá descobrir o
nome do programa.

Vamos fazer um “reboot” e comprovar que, a partir de agora, os serviços que desa-
bilitamos não vão mais iniciar.

Com o comando nmap podemos constatar que não existem mais portas abertas.

7.2 Habilitar um firewall


A configuração do firewall só é possível quando habilitamos no kernel a filtragem de
pacotes de rede. Veremos isso no capítulo de compilação do kernel.

Um firewall mínimo poderia ser este:

#!/bin/sh

echo "Habilitando o FIREWALL .......... :) "

IP="/sbin/iptables"
36 Referência de horário

# coloque o seu ip no lugar de x.x.x.x


LH="x.x.x.x/32"

# limpar regras atuais antes de colocar as novas


$IP -F
$IP -Z

$IP -P FORWARD DROP

# impede a conexão em qualquer porta aberta


$IP -A INPUT -p tcp -s 0/0 -d $LH -m state --state NEW,INVALID -j DROP
$IP -A INPUT -p udp -s 0/0 -d $LH -m state --state NEW,INVALID -j DROP

# ninguem consegue pingar a sua maquina


$IP -A INPUT -p icmp -m icmp --icmp-type ping -j DROP
Com o sitema operacional instalado e um kernel preparado, vamos utilizar o script
de firewall que havíamos criado anteriormente, fazendo o seguinte:
$ su -

# cp firewall.sh /etc/init.d/

# chown root.root /etc/init.d/firewall.sh

# chmod 750 /etc/init.d/firewall.sh

# /etc/init.d/firewall.sh

# nmap localhost

Vamos instruir o sistema a rodar esse shell script toda vez que for ligado. Para isso
utilizaremos o comando rcconf.

Este script é realmente mínimo e, neste momento, ainda não temos portas abertas
para proteger. Vamos utilizá-lo durante o curso quando precisarmos permitir que um
endereço IP determinado tenha a capacidade de conectar-se em nossa máquina.

7.3 Referência de horário


O acerto do relógio é feito por comparação com um relógio confiável, uma referên-
cia. Através do comando ntpdate faremos isso em uma linha de comando.
Agendar a sincronização do relógio 37

$ date

$ su -

# apt-get install ntpdate

Escolheremos como fornecedor de horário confiável o seguinte servidor:


ntp.usp.br

# ntpdate -s ntp.usp.br

# date

Quando instalamos o ntpdate, o nome do servidor que escolhemos é armazenado


no arquivo /etc/default/ntp-servers. Também é criado um script, o /etc/init.d/ntpdate.
Este script é executado toda vez que o sistema entra em operação. Para servidores
que ficam muito tempo no ar, o horário pode ficar errado, nestes casos utilizamos o
cron para corrigir a hora por nós. É exatamente isso que veremos a seguir.

7.4 Agendar a sincronização do relógio


Sempre que quisermos que algumas tarefas sejam executadas automaticamente e
com horário marcado, teremos que instruir o sistema a executá-las. Isso é possível
através do programa cron.

Antes de configuramos o cron precisamos definir qual será o nosso editor de textos
padrão. Ao executarmos o comando crontab pela primeira vez, ele abre um editor de
textos disponível no sistema. O que faremos agora é definir que nosso editor padrão
será o vim.

Vamos editar o arquivo .bashrc que está localizado no diretório “home” do usuário.

$ cd

$ ls -a

$ vi .bashrc

Inclua a seguinte linha neste arquivo:


export EDITOR=vim

$ source .bashrc

Agora faça o mesmo como usuário root.


38 Agendar a sincronização do relógio

$ su -

# ls -a

# vi .bashrc

Inclua a seguinte linha neste arquivo:


export EDITOR=vim

# source .bashrc

O arquivo de configuração do programa cron tem uma sintaxe que deve ser apren-
dida. A sequência dos parâmetros deste arquivo é: minutos, hora, dia, mês, dia da
semana e o comando a ser executado. Com relação ao comando, é recomendável co-
locar o caminho completo do comando.

Para sabermos o “caminho completo do comando”, podemos usar o programa where


is seguido do comando que queremos encontrar. Para o comando ls, temos:

$ whereis ls
ls: /bin/ls /usr/share/man/man1/ls.1.gz

No caso acima, recebemos o caminho completo para o comando ls e para a página


que contém o manual deste comando. O que chamamos de caminho completo do ls é
/bin/ls.

Crie o seguinte arquivo após digitar o comando crontab -e:

# manter o relogio certo


0 * * * * /usr/sbin/ntpdate -s ntp.usp.br

A sintaxe desta linha é, na ordem em que aparecem as instruções, a seguinte:

minuto hora dia mês dia da semana comando


0 * * * * /usr/sbin/ntpdate -s ntp.usp.br

Para executar o mesmo comando com um intervaldo de 4 horas entre cada execu-
ção, poderíamos fazer:

minuto hora dia mês dia da semana comando


0 */4 * * * /usr/sbin/ntpdate -s ntp.usp.br
Agendar a atualização do sistema operacional 39

7.5 Horário de Verão


Quando chega a época do horário de verão um erro muito comum é achar que o
servidor de NTP está atrasado.

No nosso caso, o servidor ntp.usp.br, só dá uma referência para a sincronização de


horário, a conversão desta referência para o horário local é um trabalho da própria má-
quina. Por isso, tanto faz você utilizar o ntp.usp.br ou outro servidor ao redor do mundo.
A referência sempre vai ser a mesma.

Para acertar o relógio no horário de verão, instale o programa “zic”:

apt-get install zic


A cada ano, o início e o término do horário de verão mudam. Basta criar um arquivo
texto semelhante a este:

Rule Brazil 2005 only - Oct 16 00:00 1 D


Rule Brazil 2006 only - Feb 19 00:00 0 S

Zone Brazil/East -3:00 Brazil BR%sT

Em seguida, supondo que o nome do arquivo acima é horario-de-verao.txt execute


o seguinte comando:

zic horario-de-verao.txt

Em seguida, verifique se o link abaixo está assim:

/etc/localtime -> /usr/share/zoneinfo/Brazil/East

O novo horário deve ser corrigido sem a necessidade de um reboot.

7.6 Agendar a atualização do sistema operacional

Vamos tornar nosso sistema capaz de fazer suas próprias atualizaçães automatica-
mente. Os pacotes que instalamos em nossa máquina podem ser atualizados por seus
autores, ou devido a algum bug de segurança.

Este script vai ajudar o seu trabalho de manter o sistema atualizado automatica-
mente. Apesar disso, você deve verificar o sistema sempre que possível executando
40 Agendar a atualização do sistema operacional

os comandos: apt-get update e apt-get upgrade. Em alguns casos, a opção -y não


satisfaz a todas as perguntas quando da atualização de alguns pacotes. Quando isso
ocorre, o administrador deve executar o comando dpkg – configure -a .

Com o procedimento abaixo, tornaremos nosso sistema mais seguro. Crie o shell
script linux-update.sh .

#!/bin/bash

PATH=/sbin:/usr/sbin:/usr/local/sbin:/bin:/usr/bin:/usr/local/bin
export PATH

# atualizar a lista de pacotes disponíveis


apt-get update

# fazer o upgrade dos pacotes


apt-get -y upgrade

# apagar os pacotes que foram baixados no


# diretorio /var/cache/apt/archives/
apt-get clean

Vamos colocar nosso shell script em um dos diretórios de executáveis, o diretório


/usr/local/sbin.

# chown root.root linux-update.sh

# chmod 750 linux-update.sh

# chmod 750 linux-update.sh

# mv linux-update.sh /usr/local/sbin

Agora vamos configurar o cron a executar o nosso shell script linux-update.sh de


hora em hora, sempre no minuto zero de cada hora ( 0:00h, 1:00h, 2:00h, ..., 22:00h,
23:00h). Para iniciar a edição do arquivo de configuração do cron execute:

crontab -e

O trecho abaixo deve ser acrescentado às linhas já criadas do cron.

#manter o sistema atualizado


0 * * * * /usr/local/sbin/linux-update.sh 2&> 1> /dev/null
Verificar a integridade do sistema 41

7.7 Verificar a integridade do sistema


Vamos executar, pela primeira vez, uma verificação da integridade do sistema ins-
talado. Neste momento é possível garantir que nosso computador não foi vítima de
qualquer “craker”. No entanto, este procedimento deve fazer parte do seu dia-a-dia.

Você é responsável pela segurança da sua máquina!

Basta executá-lo como usuário root:

# chkrootkit

Fique atento para as mensagens que vão aparecer na sua tela. Em um computador
não invadido você deve esperar pelas seguintes palavras: not found , not infected ,
nothing found e nothing deleted .
42 Verificar a integridade do sistema
8

Amaciando o motor

8.1 Plugins do Firefox


Tratar da instalação de pluings do mozilla-firefox: java e flash.

8.2 Editor padrão: JED


Configurar o editor padrão para JED.

8.3 Administrar usuários


kuser

8.4 Permitir gravar CDs, DVDs e diskets


Você pode utilizar o kuser para incluir um novo usuário nos seguintes grupos: lp,
dialout, cdrom, floppy, audio, video, plugdev.

Para gravar CDs ou DVDs instale o programa k3b.

8.5 Temas e ícones para o GNOME


Para usar o tema chamado Experience adicione a linha abaixo no arquivo /etc/apt/sources.list
:
deb http://benjamin.sipsolutions.net/debian/ stable/

43
44 Tocar DVIX com o MPLAYER

8.6 Temas para o XMMS


http://www.gnome-look.org

8.7 Configurando impressoras com o CUPS


Instale os seguintes pacotes: cupsys hp-ppd hpijs hpoj ifhp cupsomatic-ppd foomatic-
filters-ppds foomatic-db-hpijs foomatic-filters foomatic-db foomatic-db-gimp-print foomatic-
bin libgimpprint1

Em seguida, abra o navegador (firefox) e acesse o endereço http://localhost:631 .


Será necessário entrar com o login root e a respectiva senha.

8.8 Tocar DVIX com o MPLAYER


deb ftp://ftp.nerim.net/debian-marillat/ sarge main

apt-get -y install mplayer-586 w32codecs


9

Compilando o Kernel

O kernel é a parte do sistema operacional que sequer vemos ao utilizarmos o com-


putador. Ele nada mais é do que um programa que aloca/disponibiliza o hardware da
máquina para a utilização por outros programas. É um programa que possibilita que
todo o resto funcione em harmonia utilizando o mesmo hardware.

9.1 Preparando o sistema


Antes iniciarmos a compilação, vamos garantir que temos todos os pacotes neces-
sários para o mesmo. Em outras distribuições, esses pacotes são classificados em
“pacotes de desenvolvimento” ou Kernel.

Faça o “login” no ambiente gráfico com o seu usuário normal, abra um terminal grá-
fico (xterm) e mude para o root (su -) e siga os passos abaixo. Eles só serão feitos a
primeira vez em que você for compilar o kernel!

• apt-get install gcc bin86 make automake1.4 autoconf wget


• apt-get install tk8.4 cpio bc libc6-dev bzip2 libncurses5-dev
Quando fazemos uma instalação “Desktop” a maior parte dos programas acima já
está instalada. Em todo o caso, fica o registro do que você vai precisar se estiver em
uma instalação mais enxuta.

9.2 Qual hardware será habilitado?


Compilar um kernel exige familiaridade com todas as seções disponíveis. Durante
o curso será apresentada uma parte do que é necessário para as máquinas do labora-
tório.

45
46 Qual hardware será habilitado?

É nesta parte em que você gasta mais tempo para aprender a compiliar. Você tem
que conhecer um pouco do hardware da máquina e saber identificar a opção corres-
pondente no kernel. Você vai precisar praticar isso bastante para adquirir experiência.
Sempre que sair uma nova versão do kernel atualize o seu sistema. É uma boa forma
de praticar.

• Processador (AMD ou Intel).

• Placa de rede.

• Placa de som.

• Sistema de arquivos EXT3.

• Sistema de arquivos VFAT e NTFS (enxergar o windows).

• Firewall (iptables).

• Interface USB (baixar fotos de câmeras digitais).

• Habilitar o desligamento do computador quando fizermos um “shutdown”.

• Gravar CDs.

• Suporte ao idioma Português.

• Otimização do disco rígido (hdparm).

Para o kernel 2.6, segue um guia para saber onde procurar cada um dos itens acima:

Processador Tela inicial -> Processor type and features ->

Escolha o seu processador Prossessor family (Athlon/Duron/K7)


Desative o SMP Symmetric multi-processing support
Configure o modelo de Preempção Preemption Model (Voluntary Kernel Pre-
emption (Desktop))

Desligar Tela inicial -> Power management options (ACPI, APM) -> primeira linha.

Firewall Tela inicial -> Neworking -> Networking options -> Network packet filtering
(replaces ipchains) -> Habilite Network packet filtering (replaces ipchains) -> IP:
Netfilter Configuration -> Habilite tudo o que encontrar nesta tela.

Placa de rede Tela inicial -> Device Drivers -> Network device support -> Ethernet (10
or 100Mbit) -> Habilite a sua placa de rede.

Placa de som Tela inicial -> Device Drivers -> Sound -> Habilite Sound card support ->
Advanced Linux Sound Architecture -> PCI devices -> Habilite sua placa de rede.
Qual hardware será habilitado? 47

USB Tela inicial -> Device Drivers -> USB support -> Habilite:

• Support for Host-side USB


• USB device filesystem
• USB suspend/resume (EXPERIMENTAL)
• EHCI HCD (USB 2.0) support
• Full speed ISO transactions (EXPERIMENTAL)
• Root Hub Transaction Translators (EXPERIMENTAL)
• OHCI HCD support
• UHCI HCD (most Intel and VIA) support
• USB Mass Storage support
• USB Mass Storage verbose debug
• Datafab Compact Flash Reader support (EXPERIMENTAL)
• USB Human Interface Device (full HID) support
• HID input layer support
• Force feedback support (EXPERIMENTAL)
• PID Devices (Microsoft Sidewinder Force Feedback 2)
• Logitech WingMan *3D support
• ThrustMaster FireStorm Dual Power 2 support (EXPERIMENTAL)
• /dev/hiddev raw HID device support

EXT3 Tela inicial -> File systems -> Habilite:

• Ext3 journalling file system suppor


• Ext3 extended attributes
• Ext3 POSIX Access Control Lists

NTFS e VFAT Tela inicial -> File systems -> DOS/FAT/NT Filesystems -> Habilite:

• MSDOS fs support
• VFAT (Windows-95) fs support
• (437) Default codepage for FAT
• (iso8859-1) Default iocharset for FAT
• NTFS file system support
• NTFS debugging support
• NTFS write support
48 Compilando

Gravar CDs Tela inicial -> File systems -> CD-ROM/DVD Filesystems -> Habilite:

• ISO 9660 CDROM file system suppor


• Microsoft Joliet CDROM
• Transparent decompression
• UDF file system support

Gravar CDs Tela inicial -> Device Drivers -> SCSI device support -> Habilite:

• legacy /proc/scsi/ support


• SCSI generic support

Idioma Português e mais Tela inicial -> File systems -> Native Language Support ->
Habilite:

• Codepage 437 (United States, Canada)


• NLS ISO 8859-1 (Latin 1; Western European Languages)
• NLS UTF8

Otimizar HD com hdparm Tela inicial -> Device Drivers -> ATA/ATAPI/MFM/RLL sup-
port -> Habilite o chipset da sua placa-mãe.

9.3 Compilando
Esta parte será feita todas as vezes que desejar compilar um novo kernel da série
2.6.x. É apenas uma sequência de comandos, é um procedimento mecânico. Toda vez
que sair um kernel novo você deverá fazer o “download” dele e descompatar o arquivo,
assim1 :

1. cd /usr/src

2. wget http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.13.4.tar.bz2

3. bunzip2 linux-2.6.13.4.tar.bz2

4. tar -xvf linux-2.6.13.4.tar

Agora vamos realizar os passos da compilação propriamente dita:

1. cd linux-2.6.13.4
1
Os passos 3 e 4 poderiam ser feitos com apenas um comando: bunzip2 -c linux-2.6.13.4.tar.bz2 | tar
-xf -
Compilando 49

2. make mrproper2

3. cp arch/i386/defconfig .config

4. make menuconfig

5. make3

6. make modules_install

7. cp arch/i386/boot/bzImage /boot/vmlinuz-2.6.13.4

8. cp System.map /boot/System.map-2.6.13.4

9. cd /boot

10. ln -s System.map-2.6.13.4 System.map

11. vi /boot/grub/menu.lst

12. grub-install /dev/hda

13. reboot

Vamos adicionar o novo kernel ao menu que aparece no “boot” do sistema. Edite o
arquivo /boot/grub/menu.lst e, após a linha ## ## End Default Options ## acrescente
o texto abaixo:

title Debian GNU/Linux, kernel 2.6.13.4


root (hd0,4)
kernel /boot/vmlinuz-2.6.13.4 root=/dev/hda5 ro
savedefault
boot

Preste atenção ao parâmetro (hd0,4) e /dev/hda5 eles devem ser iguais ao que já
existia no arquivo para o kernel “default” da instalação. Eles indicam em qual disco
rígido está instalado o Linux e em qual partição.

3
Este passo é realmente necessário a partir da segunda compilação, quando é necessário remover
os arquivos resultantes da compilação anterior.
3
Para ter uma idéia de quanto tempo a compilação vai demorar você poderia executar este passo
assim: time make . Da próxima vez que for compilar saberá se terá tempo de abastecer a xícara com
café ou ir almoçar.
50 Compilando
10

Do console para as janelas

Vamos aprender como, a partir de uma instalação mínima, instalar o ambiente grá-
fico (gerenciador de janelas). É uma prática comum aos usuários do Gnu/Linux a perso-
nalização da máquina. Em alguns casos pode ser desejável ter uma máquina instalada
apenas "com o necessário”. Seja por limitações de hardware ou seja pelo uso que se
pretende fazer do computador.

10.1 Apt-get: primeiros passos


O GNU/Debian possui um poderoso gerenciador de instalação de programas: apt-
get. Ele será um dos comandos mais usados por você para instalar ou remover pro-
gramas que, a partir de agora, chamaremos de pacotes.

Vamos instalar alguns pacotes básicos que irão facilitar nossa interação com o sis-
tema recém instalado: sistema X Window ou modo gráfico, gerenciador de janelas ou
“window manager", mouse e um terminal gráfico como o xterm.

10.2 Configurando o servidor gráfico


Vamos instalar e configurar o servidor gráfico.

Pacote do sistema de janelas


Descrição comando
X Window apt-get install x-window-system

A seguir, temos o procedimento para configurar o X. O número de opções que alte-


raremos é muito menor comparado ao total de passos. Por isso, vou destacar os itens
: 3, 15, 21 e 29.

51
52 Configurando o servidor gráfico

1. Início da configuração. Selecione o “drive” da placa de vídeo. Se não encontrar


um que corresponda ao da sua placa utilise o vesa.

2. Informe um identificador para sua placa de vídeo: Placa de Vídeo Genérica

3. OK

4. Por favor, informe o identificador do barramento da placa de vídeo. Não digite


nada.

5. Informe a quantidade de memória (em kB) a ser usada por sua placa de vídeo:
Não digite nada.

6. Por favor, selecione o conjunto de regras XKB a utilizar: xfree86

7. OK.

8. Por favor, selecione o modelo de seu teclado: pc105

9. OK.

10. Por favor, selecione o layout de seu teclado: br ou us_intl

11. OK

12. Por favor, selecione sua variante de teclado: us_intl

13. OK

14. Por favor, selecione suas opções de teclado: Não digite nada.

15. OK

16. Por favor, escolha a porta onde seu mouse está conectado: /dev/psaux

17. Por favor, escolha a entrada que melhor descreve seu mouse: PS/2

18. OK

19. Emular mouse de 3 botões: Sim ou Não .

20. OK

21. Habilitar eventos de rolagem da roda do mouse: SIM

22. Informe um identificador para seu monitor: Monitor Genérico.

23. Seu monitor é um dispositivo LCD: Não.

24. OK
Como Reiniciar o Servidor Gráfico 53

25. Simple

26. Por favor escolha o tamanho aproximado de seu monitor: Até 14 polegadas (355
mm) 15 polegadas (380 mm)

27. Selecione os modos de vídeo que você gostaria que você seu servidor X usasse:
1024x768 , 800x600 , 640x480.

28. OK

29. Por favor selecione a profundidade de cores desejada em bits 24

30. OK

31. OK

32. Gravar seção padrão Files no arquivo de configuração: Sim

33. Gravar a seção DRI padrão no arquivo de configuração: Sim

10.3 Reconfigurando o X Window: xserver-xfree86


Se precisarmos executar os passos da seção anterior para reconfigurarmos nosso
X Window, basta fazer:

dpkg-reconfigure xserver-xfree86
Toda vez que fizer isso você deverá reiniciar o Servidor Gráfico.

10.4 Como Reiniciar o Servidor Gráfico


Quando fazemos alguma alteração na configuração do Servidor Gráfico é preciso
iniciar novamente o programa. Do contrário, ele continuará a usar a configuração exis-
tente no momento em que ele foi executado.

Aqui precisa ficar bem claro que não precisamos reinicar todo o sistema através do
reboot. Em sistemas “Unix-like”, basta que o programa que estamos reconfigurando
seja parado e iniciado, forçando a leitura do novo arquivo de configuração dele.

Se estivermos usando o wdm ou o xdm não é suficiente sair do Window Manager,


teremos que fazer o uso da sequência de teclas Ctrl+Alt+Backspace.
54 Gerênciadores de login: xdm, wdm, gdm e kdm

É preciso ter cuidado neste ponto pois, em alguns computadores, a BIOS pode es-
tar configurada para reiniciar o computador após a execução da sequência de teclas
Ctrl+Alt+Backspace. Se você executar esta sequência e o computador reiniciar, apro-
veite para desabilitar este comportamento na configuração da BIOS.

Se não estiver usando o wdm ou o xdm bastará sair do Window Manager e chamá-
lo de novo com o comando startx.

10.5 Gerenciadores leves: fvwm, icewm e window ma-


ker
No GNU/Linux temos a distinção entre Servidor Gráfico e a aparência da área de
trabalho. Os gerenciadores de janela (“window managers”) são os responsáveis pela
aparência gráfica do sistema. Cada “Window Manager” tem suas próprias caracterís-
ticas de configuração. Se você procura um gerenciador leve pode testar o fvwm2, o
icewm ou window maker.

Mais pacotes para utilizarmos o X


Window Manager apt-get install fvwm fvwm-icons icewm wmaker

Cada gerenciador de janelas tem um módo próprio de funcionamento. Minha in-


tenção não é explicar como este ou aquele gerenciador trabalha. O uso de outros
gerenciadores gera uma certa confusão no andamento da aula.

Para citar um exemplo do problema gerado pelo uso de outros gerenciadores pode-
mos citar o programa menu. Podemos ver este programa em ação quando “clicamos”
no desktop com o botão esquerdo do mouse. Quando instalamos uma pacote novo no
sistema, o menu de pacotes deve ser atualizado, e isso implica em fazer um restart do
gerenciador de janelas1 .

10.6 Gerênciadores de login: xdm, wdm, gdm e kdm


Quando instalamos o pacote x-window-system, foi instalado também o programa
xdm. Ele é um gerenciador gráfico de login básico. Existem outros gerenciadores que
podem ser experimentados. Cada vez que você instala um deles será perguntado sobre
qual deverá ser o padrão do sistema.

Mais pacotes para utilizarmos o X


Gerenciador de login apt-get install xdm wdm gdm kdm
1
Não confunda restart do gerenciador de janelas com o reboot do sistema operacinal.
Mouse do console: gpm 55

10.7 Detectando o mouse


Para a configuração do mouse do console, precisamos saber três informações: em
qual e que tipo de porta está ligado o mouse e qual o tipo do mouse. O programa
mdetect nos dará estas informações.

Detector de Hardware
Detector de mouse apt-get install mdetect

Executaremos este programa como usuáro root. Veja abaixo um exemplo de como
executá-lo:

# mdetect -o
/dev/psaux
ImPS/2

Neste exemplo, podemos dizer que o mouse está conectado na porta (“device”)
/dev/psaux e o tipo de mouse usado é o ImPS/2.

10.8 Mouse do console: gpm


Quando configuramos o X Window, configuramos também o mouse para a parte
gráfica. O mouse do console é controlado por um programa a parte, com sua própria
configuração.

É importante saber que podemos usar o mouse do X sem termos instalado ou con-
figurado o “mouse do console”. Apesar disso, a configuração do “mouse do console”,
tem um parâmetro que pode interferir no comportamento do “mouse do modo gráfico”.
A configuração do “mouse gráfico” não interfere no “mouse do console”.

O instrutor irá demostrar durante a instalação que, a opção que deveremos remover
da configuração do mouse do console é: ms3.

Para mouses PS/2 o device escolhido será /dev/psaux. Para os mouses seriais
serão ou /dev/ttyS0 ou /dev/ttyS1, respectivamente COM1 ou COM2.

Mais pacotes para utilizarmos o X


Mouse do Console apt-get install gpm

Abaixo temos um exemplo das perguntas que serão feitas durante a configuração
do programa gpm. Esta saída foi obtida para um mouse que já estava corretamente
configurado e, por isso, nenhum parâmetro foi alterado.
56 Acentuação

Current configuration: -m /dev/psaux -t autops2


Device: /dev/psaux
Type: autops2
Do you want to change anything (Y/n)?
Where is your mouse [/dev/psaux]?
>
What type is your mouse (or help) [autops2]?
>
Set the responsiveness (normally not needed) []?
>
Repeat protocol (enter ’none’ to turn repeating off) []?
>
Do you want to add any additional arguments []?
>
Do you want to test this configuration (y/N)? n

Current configuration: -m /dev/psaux -t autops2


Device: /dev/psaux
Type: autops2
Do you want to change anything (Y/n)? n
Stopping mouse interface server: gpm.
Starting mouse interface server: gpm.

10.9 Reconfigurando o mouse do console


Para reconfigurar o mouse do console executaremos o comando:

# gpmconfig
Lembrando que o sinal # significa que você deve executar esse comando como
usuário root.

10.10 Acentuação
Vamos instalar em nosso sistema o suporte ao idioma inglês norte-americano e ao
português do Brasil. As opções que escolheremos ao instalar o pacote locales são:
en_US, en_US (UTF-8) e pt_BR. O programa perguntará qual será, a partir de agora,
o idoma “oficial” do sistema instalado. Escolheremos pt_BR.
Reconfigurando a acentuação 57

Mais pacotes para utilizarmos o X


Suporte a Idiomas apt-get install locales

Para que a acentuação funcione, coloque o seguinte no .bashrc :

LANG=pt_BR
LC_ALL=pt_BR
LC_CTYPE=ISO-8859-1
LESSCHARSET=latin1
export LANG LC_ALL LC_CTYPE LESSCHARSET

Verifique se o conteúdo do arquivo /etc/locale.gen contém as seguintes linhas:

en_US ISO-8859-1
en_US.UTF-8 UTF-8
pt_BR ISO-8859-1

Caso contrário, leia a próximo ítem da apostila.

10.11 Reconfigurando a acentuação


Para reconfigurar o pacote locales executaremos o comando:

# dpkg-reconfigure locales
Atenção, escolha a opção OK em todas as telas. Se você só selecionar as opção
que deseja e pressionar a tecla ENTER, o programa irá prosseguir, mas não executará
o que você pediu2 .

Se sua configuração for bem sucedida, você deverá ter as seguintes linhas em seu
arquivo /etc/locale.gen:

en_US ISO-8859-1
en_US.UTF-8 UTF-8
pt_BR ISO-8859-1

2
Isto era um bug do script de configuração do locales no Debian 3.0.
58 Reconfigurando o Mapa do Teclado

10.12 Reconfigurando o Mapa do Teclado


Se você escolheu um modelo de teclado errado, ou trocou de teclado, para configu-
rar um novo mapa de teclado, faça:

# dpkg-reconfigure console-data
11

Enxuto, mas nem tanto

Após realizar uma instalação mínima e acrescentar um gerenciador de janelas você


pode querer mais. No início pode ser um pouco difícil descobrir o nome do pacote
correspondente ao programa que você quer instalar. Este capítulo é para mostar alguns
dos programas que você pode precisar.

11.1 Estação de trabalho


Vamos conhecer alguns pacotes disponíveis para o GNU/Linux Debian. Eles esta-
rão divididos por categorias, algumas reais, outras criadas pelo autor.

Gerenciadoes de Pacotes:
dpkg Um gerenciador de pacotes de nível médio para o Debian.

dselect Frontend de gerenciamento de pacotes Debian.

tasksel Ferramenta para instalar pacotes “por lote".

aptitude Interface de gerenciamento de pacotes.

apt-get Comando da Suíte APT.

gnome-apt Interface gráfica da Suíte APT.

stormpkg Interface gráfica para a Suíte APT.

synaptic Interface gráfica para a Suíte APT.


Gerenciadoes de Ambiente Gráfico:
fvwm Gerenciador gráfico.

fvwm-icons Ícones do gerenciador gráfico fvwm.

59
60 Estação de trabalho

icewm Gerenciador gráfico.

qvwm Gerenciador gráfico.

sawfish Gerenciador gráfico.

pwm Gerenciador gráfico.

fluxbox Gerenciador gráfico.

afterstep Gerenciador gráfico.

wmaker Gerenciador gráfico.

Editores para programadores:

xwpe Editor para programação em C.

anjuta Editor para programação em várias linguagens.

Tocadores e Ripadores de músicas:

mp3blaster Tocador de músicas no console.

xmms Tocador de músicas gráfico.

aumix-gtk Programa gráfico para controle das opções de som.

oggenc Codificador de músicas para o formato ogg.

abcde Codificador de músicas para os formatos ogg, mp3 e flac.

cdrdao Utilizado para criar CDs de música e áudio no formato “disk-at-once".

grip Um tocador/ripador/codificador baseado no GNOME.

jack Ripador de Codificador de músicas.

ripperx Ripador e Codificar de músicas baseado no GTK.

sox Utilizado para transformar arquivos de música de um formato pra outro.

normalize Utilizado para ajustar o volume de um conjunto de arquivos de música.

Gravação de CDs:

eroaster

cdrtoaster

cdcontrol
Estação de trabalho 61

gtoaster

gcombust

kreatecd

cdrecord

mp3burn

mkisofs

cdlabelgen

Jogos e inutilitários:

xpenguins

xboard

gnome-chess

xbill

xsoldier

quake2

Administração:

rcconf Utilizado para habilitar/desabilitar scripts que são executados durante o pro-
cesso de boot/reboot/halt.

modconf Interface para a instalação e configuração de módulos

Configuração de Hardware:

memtest86 Testes de memória.

powerteak

discover Utilizado para fazer a identificação de hardware.

kudzu Utilizado para detectar, duante o boot, hardware que foi acrescentado/removido.

mdetect Utilizado para detectar/identificar o mouse.

Visualizadores de Vídeo e Imagens:

totem
62 Estação de trabalho

sinek

vlc

ogle

gqview Visualizador de imagens.

imagemagick A instalação deste pacote possibilita o uso do comando import. Útil para
fazer screenshots. ¯

ksnapshot Utilizado para capturar a imagem da tela do computador (screenshot).


Criação de imagens e gráficos:
xfig

sketch

sodipodi

gimp
Rede:
nmap Utilziado para identificar, entre outras coisas, quais portas podem estar ativar
em um computador.

bwm Monitora a utilização da interface de rede (placa de rede).

ethereal Monitorar o tráfego de rede.


Impressora:
lprngtool

cups
Monitoração do Estado do Computador:
gkrellm

xosview

gmemusage
Travar o ambiente gráfico ou o console:
xtrlock Transforma o indicador do mouse em um cadeado. Trava o modo gráfico.

xlock Trava o modo gráfico.


Estação de trabalho 63

vlock Trava o console.


Editores de Texto:
vi
vim
emacs20
abiword
ted
Editores de Latex:
kile
Visualizadores de texto:
xpdf
gv
xdvi
Visualizadores de texto:
evolution Leitor de e-mail. Muito parecido com o Outlook, só que melhor.
mutt leitor de e-mail em modo texto.
Navegadores WEB:
galeon
mozilla-firefox
dillo
lynx Navegador WEB em modo texto.
lynx-ssl Navegador WEB em modo texto com suporte a sites que utilizam ssl.
links Navegador WEB em modo texto.
Ferramentas para download:
gftp Utilizado para ftp e sftp.
wget Utilizado para download.
aget Utilizado para download.
64 Estação de trabalho
12

Arquivos Importantes

Vamos conhecer agora alguns arquivos importantes. Você poderá precisar saber
encontrá-los em caso de problemas.

12.1 Onde eles estão?


Para uma localização rápida dos arquivos vamos listá-los abaixo:

Configuração de Rede
Interfaces de Rede /etc/network/interface

Interfaces de Rede /etc/network/interfaces


Atenção neste aqui /etc/hosts
Configuração de DNS /etc/resolv.conf
Script de start/stop da in- /etc/init.d/networking
terface de rede
Serviços controlados pelo /etc/inetd.conf
inetd

Tabela 12.1: Arquivos de configuração de rede.

Administração de Usuários
X Window

65
66 Modelos de configuração

Arquivo que será criado /etc/skel/bashrc


após o uso do adduser
Arquivo que será criado /etc/skel/.bash_profile
após o uso do adduser
Usuários cadastrados /etc/passwd
Grupos cadastrados /etc/group

Tabela 12.2: Arquivos de configuração de usuários.

Configuração do servidor /etc/X11/XF86Config-4


gráfico
Gerenciador Gráfico Pa- /etc/alternatives/x-window-manager
drão (link)
/etc/alternatives/x-session-manager

Tabela 12.3: Arquivo de configuração do X Window.

Apt-get

Configuração do apt-get /etc/apt/sources.list

Tabela 12.4: Arquivo de configuração do apt-get.

12.2 Modelos de configuração


Caso você tenha apagado alguns dos arquivos acima e precisa de um modelo para
configurar o sistema.
Configução do apt-get /etc/apt/sources.list

ooooo iiii
Apêndice A

Fontes de Conhecimento

Links e comentários sobre alguns sites e listas recomendados.

Seguem algumas listas de discussão:

Dicas-l Como o próprio nome já diz, a lista envia dicas. Os assuntos abordados são
bem variados e interessantes, tanto para o usuário iniciante quanto para o expe-
riente. Apenas uma mensagem por dia é enviada, todos os dias da semana. No
site http://www.dicas-l.unicamp.br/ é possível ler as dicas e encontrar um formulá-
rio de inscrição. Para você não ter que acessar o site e correr o risco de esquecer,
cadastre-se na lista. Todos os dias você vai receber uma ótima dica!

Debian em Português Dedicada aos usuários do Debian que falam o idoma Portu-
gês. É uma lista muito movimentada. Uma boa forma de encontrar suporte no
próprio idioma, mas alguns cuidados devem ser tomados. Cadastre-se na lista
e seja um observador do andamendo das discussões, pegue o espríto da coisa
antes de sair perguntando. Procure pesquisar nos arquivos da lista antes de fazer
uma pergunta. Quando se é um assinante por muito tempo, mensagens repe-
tidas incomadam. Você pode levar uma bronca se o assunto foi exaustivamente
discutido. O formulário para inscrição está aqui http://lists.debian.org/debian-user-
portuguese/ .

Debian Weekly News Ótima pedida para aqueles que querem saber das novidades
sobre o mundo Debian. Semanalmente 1 mensagem é enviada com um resumo
dos principais pontos relativos a novas “releases", novos pacotes, artigos inte-
ressates. Você apenas recebe os boletins informativos, não envia perguntas. O
formulário para inscrição está aqui http://lists.debian.org/debian-news/ .

Security Advisories Todo usuário do sistema debian deve cadastrar-se nesta lista.
Ela é utilizada apenas para enviar avisos de atualização de pacotes, principal-
mente aqueles com algum problema de segurança. Você não envia perguntas,

67
68 Fontes de Conhecimento

apenas recebe os boletins. Sempre que receber uma notícia desta lista, execute o
“update/upgrade". O formulário para inscrição está aqui http://lists.debian.org/debian-
security-announce/ .

Curso de Linux É a lista deste curso. Não nenhuma pretensão de se igualar com as
outras listas citadas. A função dela e servir de apoio para os alunos deste curso.
Também serve para receber avisos de novos cursos e apostilas. Para inscrever-
se envie um e-mail, sem título e sem assunto, para o endereço
cursolinuxusp-subscribe@yahoogroups.com .

Segue uma lista de sites:

Site do Debian em Português http://www.br.debian.org

About Debian http://www.aboutdebian.com/

Aurélio http://aurelio.net . Para aprender/descobrir sobre Expressões Regulares, Sed,


AWK , Shel Script e sobre o próprio Aurélio.

Bonix.NET Olha eu aqui também: http://bonix.net. Se precisar baixar novamente a


apostila, procure primeiro lá.

Screenshots da instalação Você pode encontrar os screenshots das telas de instala-


ção do Debian 3.1 em http://librenix.com/?page=Debian ou

http://shots.osdir.com/slideshows/slideshow.php?
release=395&slide=36&title=debian+gnu/linux+3.1r0a+screenshots .

Linux Basics Site voltado para o ensino de Linux com documentação em inglês:
http://linuxbasics.org

Segue uma lista de filmes:

Revolution OS