Fundamento do Sistema Operacinal GNU/Linux Distribuição Debian MÓDULO I Atenção: O material deste módulo está disponível apenas como parâmetro de estudos para este Programa de Educação Continuada. É proibida qualquer forma de comercialização do mesmo. Os créditos do conteúdo aqui contido são dados aos seus respectivos autores descritos na Bibliografia Consultada. MÓDULO I História do Linux 1.1 O software livre Existem algumas diferenças de interpretação no que diz respeito a software livre. Livre pode ser interpretado como “liberdade” de se fazer o que quiser com aquele código, ou seja, copiar, distribuir, etc. Software Livre é um software disponível com permissão para qualquer um usá-lo, seja na sua forma original ou com modificações, seja gratuitamente ou com custo. Importante: não confundir sofware livre com software grátis. A liberdade associada ao software livre está relacionada à copiar, modificar e redistribuir, independente da gratuidade. Em nosso curso preferi utilizar a definição da Fundação do Software Livre que é a seguinte: “software livre é qualquer código ou programa que poderá ser copiado, estudado, modificado e redistribuído sem qualquer restrição, sendo inclusive esta distribuição incentivada”. O copyleft como é denominado uma licença de software livre é muito utilizado e geralmente permite que os programas sejam modificados e redistribuídos. Estas práticas são geralmente proibidas pela legislação internacional de copyright. As licenças que acompanham o software livre fazem uso da legislação de copyright para garantir as liberdades de modificar e redistribuir o software assim licenciado, ou seja, com o copyright protege-se este código para que ele se mantenha livre. 1.2 A licença GPL/GNU A Licença Pública Geral (General Public License-GNU) é a que acompanha os pacotes distribuídos pelo projeto GNU e mais uma grande variedade de software, incluindo ai o núcleo do sistema operacional atualmente. A formulação da GPL é tal que ao invés de limitar a distribuição do software por ela protegido, ela de fato impede que este software seja integrado a programas proprietários, ou seja, de código fechado ou restrito. A General Public License foi criada pelo idealizador do software livre, Richard Stallman no final da década de 1980. Ele precisava criar um projeto que lançaria um sistema operacional totalmente livre e que fosse compatível com o sistema operacional Unix sem utilizar o código fonte deste. O nome GNU é um acrônimo recursivo de GNU is Not Unix, ou seja, GNU não é Unix. A GPL – General Public License pode ser resumida em quatro direitos: Você tem o direito de usar o programa para qualquer fim; Você tem o direito de fazer cópias, distribuí-las e até mesmo vende-las a quem tiver interesse; Você tem o direito de ter acesso ao código fonte do programa, fazer alterações e redistribuí-las; Você tem o direito e ao mesmo tempo obrigação de redistribuir as modificações ou melhorias feitas; No Brasil, foi criada a CC-GNU-GPL, pois o software para ser livre, precisa estar registrado sob uma licença. 1.3 O GNU/Linux O Linux é um sistema operacional formado por vários módulos compilados separadamente e depois linkados (ligados) formando um grande e único programa executável, onde os módulos podem interagir livremente caracterizando uma arquitetura monolítica. Linux foi o nome dado ao Kernel de código aberto (livre), desenvolvido por Linus Torvalds na época um estudante da Universidade de Helsinki, na Finlândia. Em 1991 comprou um 80386 e com vinte e um anos, sendo que cinco já de experiência programando (em linguagem C) e utilizando o Sistema Unix da Universidade (SunOS, atualmente Solaris), ele desejava rodar a versão de Tannenbaum (Minix – Era um Unix para fins didáticos com poucos recursos) no seu recém adquirido 80386. Entretanto, descontente com os recursos do Minix, especialmente em relação ao emulador de terminal que ele utilizaria para acessar remotamente o Unix da Universidade, começa a desenvolver o seu próprio emulador de terminal que não rodaria sobre o Minix, mas diretamente no hardware do PC 386. Este projeto pessoal foi sendo modificado gradualmente e adquirindo características de um Sistema Operacional independente do Minix. Iniciava ai o desenvolvimento do Kernel Linux, relatado pelo próprio Linus Torvalds em seu livro Just for Fun (Só de brincadeira). Nesta época ele resolveu distribuir os códigos fontes na faculdade a fim de agregar colaboradores para desenvolver o sistema. O projeto foi lançado em 1991 em uma famosa mensagem para a Usenet e a partir deste momento ele começou a receber ajuda de hackers do Minix e hoje recebe contribuições de milhares de programadores. Então, em 5 de outubro de 1991, Linus Torvalds anuncia a primeira versão do kernel do Linux, denominada versão 0.02. Com o anúncio da versão do kernel, Richard Stallman da FSF propõe a união das ferramentas GNU com o recém criado kernel de Linus e então nasce o primeiro sistema operacional de código aberto, o O sistema operacional GNU/Linux possuí as seguintes características: Multitarefa real; GNU/Linux. Multiusuário; Suporte a nomes extensos de arquivos e diretórios (até 255 caracteres); Conectividade com vários outros tipos de plataformas; Proteção entre processos executados na memória RAM; Suporte a mais de 63 terminais virtuais (consoles); Modularização – só permanece na memória o que estiver sendo executado. Assim que o programa ou dispositivo é finalizado, a memória é liberada; Os drivers de dispositivos podem ser carregados ou removidos da memória a qualquer momento. Os drivers (módulos) ocupam pouco espaço de RAM; Não há necessidade de reiniciar o sistema após alterar qualquer configuração; Capacidade para acessar discos formatados em diversos sistemas (Dos, Fat16, Fat32, NTFS, Novell, MACOS, OS/2, etc; Utiliza um sistema de permissionamento de arquivos e diretórios e programas que estão em execução na memória RAM; Invulnerável a vírus pois o filesystem possui um sistema de permissionamento de arquivos, diretórios e processos que respeitam as políticas de segurança; 1.4 Distribuições Linux – Distros Atualmente existem diversas distribuições que são acompanhadas pelo kernel do sistema. Existem distros livres que adotam a filosofia do software livre e também aquelas que são totalmente comerciais. Nelas são oferecidos aplicativos, utilitários, ferramentas de gerenciamento e gráficas que abrangem as mais diversas áreas. Uma distro é um conjunto de aplicativos que são organizados por tipo a fim de facilitar a instalação e utilização. Acompanham uma distribuição além dos diversos aplicativos, utilitários, ferramentas gráficas e de configuração e instalação, uma versão de kernel (geralmente a mais atual para aquela distribuição). Além disso, todas as distribuições seguem um padrão para o sistema denominado File System Standard a fim de garantir a padronização do sistema operacional. Seria impossível em nosso curso falar de cada distribuição pois existem milhares. Por este motivo vou falar brevemente das mais importantes e mais utilizadas, principalmente aqui no Brasil. Distribuição Kurumin Distribuição desenvolvida pela equipe do Guia do Hardwarei e chefiada por Carlos E. Morimoto e que fez um sucesso enorme. Ela era baseada no Knoppix e mais tarde passou a utilizar componentes do kanotix. Possuía também pacotes baseados no Debian. O sucesso desta distribuição se deveu ao fato de na época, reconhecer a maioria do hardware existente. Existiam também soluções para máquinas com poucos recursos de hardware o que fazia com que rodasse em quase todos os computadores da época. Sua interface gráfica era muito fácil de usar e possuía pacotes para quase todos os tipos de necessidades. Apesar de ter sido descontinuada na versão 7, ainda pode ser encontrada em diversos repositórios, no entanto, não recomendo o uso dela em máquinas recentes, pois corre-se o risco de não identificar boa parte do hardware. Red Hat Linux Distribuição comercial que deu origem a diversas distribuições como a brasileira Conectiva que se fundiu a Madrake e deu origem ao Madriva. Na distribuição Red Hat foi criado o pacote RPM (Red Hat Package Manager) facilitando muito a instalação e remoção de pacotes nesta distribuição. Além do Conectiva, tem como base o Red Hat as distros CentOS, Fedora (criada por uma comunidade voltada à desktops) e patrocinada pela Red Hat e também o Yellow Dog que é uma distro utilizada pelos consoles Playstation 3 e para o Mac PPC. Yellow Dog Linux De todas as distribuições de linux existentes, a Yellow Dog é a distribuição menos conhecida dos brasileiros. Apesar de estar presente dentro dos consoles de jogos Playstation 3, poucos sabem disso. Atualmente em sua versão 6.0, oferece suporte à arquiteturas como Playstation e Macs G4 e G5 entre outras. Esta versão está baseada no CentOS e é desenvolvida pela TerraSoftwareSolutions. Fedora Linux Quando a Red Hat abriu sua distribuição para a comunidade, o que era conhecido antes como Red Hat Linux se tornou o Fedora Core. O compromisso da comunidade de desenvolvedores do Fedora e disponibilizar o que há de mais moderno em termos de distribuição, por este motivo, a cada nove meses e lançado uma nova versão, incluindo novas versões dos aplicativos que acompanham essa distribuição. 1.5 Escolhendo uma distribuição Para escolher a distribuição a ser instalada, você tem que avaliar as necessidades do usuário ou grupo de usuários se for o caso. Você deve verificar se a instalação será feita em uma estação de trabalho, várias estações de uma empresa ou se são várias estações e um servidor ou servidores, etc. Outro fator a se levar em conta é o tipo de hardware em que será instalado o linux. Se for uma máquina com hardware novo e com grandes recursos não haverá problemas, mas se ao contrário for uma máquina com hardware antigo, pouco espaço em disco e pouca memória RAM, você terá que avaliar bem sua escolha para não decepcionar o cliente, fazendo com que ele desista muitas vezes de instalar o sistema. O estudo de caso é muito importante para poder tomar a decisão da distribuição a ser adotada, não esquecendo também do fator licença caso a distribuição a ser utilizada seja totalmente comercial. Aqui começo a justificar um dos motivos da escolha do Debian como sistema operacional para uso pessoal, profissional e também para nosso curso. Dentre muitas características positivas do Debian, uma das mais importantes é a estabilidade. Já vi máquinas rodando o Debian que estão com uptime (comando que nos retorna o tempo que o computador está rodando o Linux desde que foi ligado) em torno de um ano. São máquinas que só interromperiam o sistema por uma falha grave no hardware, como por exemplo um disco rígido, uma fonte que entra em curto, para citar os mais comuns e prováveis. Um outro motivo para se interromper o funcionamento e com isso o uptime não ser tão longo é o fato de que em algumas ocasiões temos que executar uma compilação de kernel por motivo de segurança ou atualizações. Só um sistema operacional estável e robusto poderia prover tal façanha. 1.6 Origem do Debian Debian é simultaneamente o nome de uma distribuição não comercial livre (gratuita e de código fonte aberto) de GNU/Linux e de um grupo de voluntários que o mantêm à volta do mundo. Uma vez que o Debian se baseia fortemente no projeto GNU (é a distribuição oficial do Projeto GNU), é usualmente chamado Debian GNU/Linux. O Debian é especialmente conhecido pelo seu sistema de gestão de pacotes, chamado APT, que permite: atualizações relativamente fáceis a partir de versões realmente antigas; instalações quase sem esforço de novos pacotes e remoções limpas dos pacotes antigos. O projeto Debian é mantido por doações através da organização sem fins lucrativos Software in the Public Interest (SPI). O nome Debian vem dos nomes dos seus fundadores, Ian Murdock e de sua mulher Debra. A palavra “Debian” é pronunciada em Português como Débian. O Debian foi fundado em 1993 por Ian Murdock na época estudante universitário, que escreveu o Manifesto Debian que apelava à criação de uma distribuição Linux a ser mantida de uma maneira aberta, segundo o espírito do Linux e do GNU. O Projeto Debian cresceu vagarosamente e lançou suas versões 0.9x em 1994 e 1995, quando o dpkg ganhou notoriedade. Os primeiros ports para outras arquiteturas iniciaram em 1995, e a primeira versão 1.x do Debian aconteceu em 1996. Bruce Perens substituiu Ian Murdock como líder do projeto. Ele iniciou a criação de vários documentos importantes (o contrato social e o free software guidelines) e a legítima Umbrella Organization (SPI), bem como liderou o projeto através dos lançamentos das versões da ELF/libc5 (1.1, 1.2, 1.3). Bruce Perens deixou o projeto em 1998 antes do lançamento da primeira versão Debian baseada em glibc, a 2.0. O Projeto continuou elegendo novos líderes e fazendo mais duas versões 2.x, cada qual incluindo mais ports e mais pacotes. A APT foi lançada durante este tempo e o Debian/GNU/Hurd também iniciou-se. O ano de 1999 trouxe as primeiras distribuições Linux baseadas em Debian, Corel Linux e Storm Linux, hoje descontinuadas mas que iniciaram o que é hoje uma notável tendência às distribuições baseadas em Debian. Perto do ano 2000, o projeto se direcionou ao uso de repositórios de pacotes e à distribuição “testing”, alcançando um marco maior no que se refere aos arquivos e o gerenciamento de lançamentos. Em 2001, os desenvolvedores iniciaram conferências anuais, Debconf, com conversas, workshops, e a recepção aos usuários técnicos. A versão 3.0 em 2002 incluiu mais do que o dobro do número de pacotes da versão anterior e estava disponível para cinco novas arquiteturas. 1.7 Desenvolvimento do Debian A política de desenvolvimento do Debian prima pela qualidade, segurança e estabilidade do sistema. Os pacotes são classificados em Stable, Testing e Unstable, ou seja, estável, em teste e instável, respectivamente. A versão conhecida como estável (Stable) é exaustivamente testada e corrigida até que o conjunto de pacotes atinjam certa maturidade. Quanto estes pacotes atingem esta maturidade, eles são congelados (freeze) na versão em que se encontram e uma nova versão Stable é lançada. O tempo entre o lançamento de duas versões estáveis pode levar de um ou até dois anos, pois com o Debian o compromisso é com qualidade. Existem algumas distribuições que lançam realeses incompletas devido à pressão do mercado, pois elas são de um modo geral comerciais. É normal quem ainda não tem o hábito do uso do Debian estranhar este tipo de controle de versão.1 Na estrutura de diretórios dos softwares as novas versões do Debian se encontram nas árvores teste (Testing) e instável (Unstable). Inicialmente o pessoal responsável pelo desenvolvimento do Debian coloca seus pacotes em uma árvore experimental. Após algum tempo os pacotes são 1 http://www.bonix.net transferidos para a estrutura instável (unstable) e em seguida transferidos para a árvore teste (Testing). Quando são transferidos para a árvore testing, significa que foram testados exaustivamente por algum tempo e não apresentaram problemas. É perfeitamente possível fazer a instalação do Debian a partir da árvore teste, desde que você o faça em uma máquina que não esteja executando nenhuma aplicação crítica ou um servidor de aplicação em produção. O recomendado é que, se for usar a instalação partindo da árvore testing, você o faça em uma estação de trabalho e você tenha conhecimentos suficientes para resolver possíveis problemas com pacotes novos. Em contrapartida, se você for se aventurar em uma instalação partindo da árvore instável (unstable), esteja ciente de que você deverá possuir conhecimentos para resolver problemas de instalação e configuração imprevisíveis. 1.8 Main – Contrib – Non-Free Os pacotes do Debian são classificados de acordo com o tipo de licença de software em que foram inseridos. Todos os pacotes incluídos na distribuição oficial do Debian são livres de acordo com a Definição Debian de Software Livre2. Isso assegura o uso livre e a redistribuição de pacotes com seu código fonte completo. A distribuição oficial Debian é a que está contida na seção Main do repositório do Debian. Como um serviço para os usuários do Debian, são providos 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. São eles: 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* (*Este pacotes foram retirados do Debian a partir do Sarge) 2 http://www.debian.org/social_contract#guidelines Pacotes nessa área têm algumas condições na licença que restringem o uso ou redistribuição do software. Nota: Os mesmos pacotes podem aparecer em muitas distribuições, mas com números de versão diferentes. ii Eventualmente e somente em casos em que ocorra um problema crítico ou atualização de segurança em uma distribuição Stable, são efetuadas releases para corrigir estes problemas. Elas são chamadas de point releases devido o incremento numérico após o ponto decimal. Para que fique mais claro o entendimento disso, na distribuição Etch do Debian, anterior ao Lenny que é a distribuição Stable atualmente, foram lançados vários releases como demonstrado na tabela abaixo: Releases Efetuadas Data da release Primeira release, 4.0r1 Atualizado em August 15, 2007 Segunda release, 4.0r2 Atualizado em December 26, 2007. Terceira release, 4.0r3 Atualizado em February 17, 2008. Quarta release, 4.0r4 Atualizado em July 26, 2008. Quinta release, 4.0r5 Atualizado em October 23, 2008. Sexta release, 4.0r6 Atualizado em December 18, 2008. Sétima release, 4.0r7 Atualizado em February 10, 2009. 1.9 Desenvolvedores O Debian possui uma equipe de desenvolvedores dedicados. Muitas pessoas expressaram interesse em informações sobre a localização dos desenvolvedores Debian. Assim, a equipe do Debian decidiu adicionar, como parte do banco de dados dos desenvolvedores, um campo onde os mesmos podem especificar suas coordenadas no mundo. Este banco de dados pode ser alimentado pelo desenvolvedor com as coordenadas de sua localização, assim qualquer pessoa pode consultar onde se encontram estes brilhantes colaboradores. Abaixo o mapa que está disponível na página do Debian.org. O Projeto Debian é formado por voluntários, e eles geralmente estão procurando por novos desenvolvedores que tenham bons conhecimentos técnico, interesse em software livre e algum tempo livre. Para os desenvolvedores, existem máquinas Debian disponíveis em diversas arquiteturas. Para saber mais sobre as politicas de uso dessas máquinas pelos desenvolvedores, acesse a página http://www.debian.org/devel/dmup em inglês. Se voce deseja ser um desenvolvedor, além de conhecimento técnico é imprescindível o domínio da língua inglesa. 1.10 Instalando o Debian Antes de iniciar o download do Debian é necessário que você obtenha algumas informações a cerca do hardware onde o sistema será instalado. Existem diversas maneiras de se verificar que hardware o computador possue. Apesar de a versão atuar ser capaz de identificar quase todos os tipos de dispositivos, existem ocasiões que uma ou outra placa pode pertencer a um fabricante que não ofereça o suporte. Uma dica é que se vocês possuírem um outro sistema operacional já instalado em seu computador, antes de iniciar a formatação, se for o caso, dêem uma olhada no hardware que foi instalado por ele e anotem os dispositivos que ele identificou, pois isso pode ajudar muito caso durante a instalação você seja inquirido a responder o modelo de placa a ser selecionado. Tenha em mãos antes da instalação, os manuais de todos os dispositivos presentes em seu computador (Placa mãe, DVD, CD, Placa de vídeo, etc). Na falta destes, você pode tentar ler alguma informação nas caixas dos dispositivos, isto é se você ainda as possuir. Outra boa fonte de informações a respeito do seu hardware encontra-se na BIOS de seu computador. Acessando as opções que estão configuradas você pode ter uma idéia dos dispositivos que estão instalados. Nota: Aproveitando que estamos falando em BIOS, antes de prosseguir com a instalação do Linux, se em seu SETUP tiver a opção de monitoramento de vírus no MBR (Master Boot Record) de seu HD, desabilite esta funcionalidade, pois ela pode impedir que você instale o Linux, uma vez que ele irá gravar neste setor do disco. Uma outra forma de identificar os dispositivos de seu computador é utilizar programas que fazem toda a identificação do hardware, listando modelo, fabricante, etc. O Everest é um aplicativo que pode ser baixado em sites que mantem repositórios de vários tipos de programas e utilizado para esta finalidade, pois é gratuito para testes. Voce pode usar também o DriverWizard que também faz um reconhecimento do hardware, podendo ser baixado uma versão trial para avaliação. Durante a instalação será solicitado algumas informações a respeito de sua placa de rede como ip, gateway, dns, etc. Caso você não saiba, poderá consultar seu provedor de internet ou em caso de estar instalando em uma rede corporativa, seu administrador de rede pode lhe fornecer essas informações. Para ver uma lista completa referente a compatibilidade do Debian, você pode acessar a página do projeto em http://www.debian.org/doc/manuals/debianfaq/ch-compat.pt-br.html ou em http://www.tldp.org/HOWTO/Hardware-HOWTO/ afim de sanar qualquer dúvida mais específica. Geralmente antes de efetuar a instalação, criamos uma tabela com todo o hardware existente em nossa máquina alvo e vamos preenchendo com toda a informação necessária. Veja o exemplo abaixo: Dispositivo Disco Rígido Quantidade e modelo Quantidade de discos, ordem de instalação (Master Primário, Master Sec., capacidade, partições existentes. Modelo e fabricante, CRT ou LCD, resoluções suportadas, freqüência Monitor Vert. E Horiz.(opcional) Fabricante, Tipo: PS2, Serial ou USB, número de botões. Mouse Placa de Rede Modelo e fabricante, taxa suportada (10/100 Mbps, IP, gateway, Netmask, DNS, Host.) Placa de Vídeo Modelo e fabricante, memória de vídeo. Placa de Som Modelo e fabricante. Memória Modelo e fabricante, quantidade disponível. Processador Modelo, fabricante, freqüência, suporte a multiprocessamento (SMP). OBS: A tabela acima nos auxilia caso o Debian não reconheça alguns dispositivos do seu hardware. Atualmente é muito raro que se precise especificar com tantos detalhes os dispositivos de seu computador. Infelizmente nem todos os fabricantes oferecem o suporte a Linux. O ponto positivo disso é que atualmente são bem poucos, pois as grandes empresas fabricantes de equipamentos já perceberam que o Linux está cada vez mais presente no mercado e para não ficarem de fora, acabam cedendo a esta tendência. Um projeto muito interessante para obter parâmetros de utilização do Linux é o Linux Counter. Para participar basta se cadastrar e fornecer algumas informações a respeito de seu computador e o sistema Linux que você utiliza. A partir daí você recebe um número de identificação e sua máquina com seu sistema passam a fazer parte de uma estatística de uso global. Para saber mais acesse o lina http://augustocampos.net/revista-do-linux/020/comunidade.html da Revista do Linux. 1.11 Requisitos mínimos de instalação Os requisitos mínimos para instalação do Debian vão depender do tipo de sistema que você vai instalar, ou seja, se for uma estação de trabalho, um servidor, etc. Abaixo temos uma tabela onde temos os requisitos mínimos de hardware para cada configuração, bem como o espaço em disco necessário: Requisitos Mínimos de Sistema Recomendados Tipo de Instalação RAM (mínimo) RAM (recomendado) Disco Rígido Sem desktop* 64 megabytes 256 megabytes 1 gigabyte Com Desktop 64 megabytes 512 megabytes 5 gigabytes * Sem interface gráfica. Dependendo do tipo de computador que será utilizado, os requisitos mínimos podem ser bem diferentes dos listados nesta tabela. Conforme a arquitetura utilizada, é possível instalar Debian com apenas 20MB (para s390) até 48MB (para i386 e amd64). O mesmo se passa para os requisitos de espaço em disco, especialmente se escolher quais as aplicações a instalar. Por exemplo, existem distribuições baseadas no Debian que podem ser instaladas em um Pendrive de 128 Mb, pois ocupam apenas 50 Mb e possuem recursos gráficos e aplicativos necessários para se navegar na internet, editar um texto, etc. 1.12 Repositórios Existem uma infinidade de repositórios de onde você pode baixar uma imagem do Debian e a partir dela gravar um CD bootável para proceder a instalação. No entanto, recomenda-se que sejam utilizados repositórios oficiais e que fiquem o mais próximo possível de sua região por questões obvias. A lista de repositórios oficiais pode ser encontrada em http://www.debian.org/mirror/ e a partir desta lista você seleciona o espelho e baixa a imagem utilizando o http ou ftp. Voce pode utilizar qualquer navegador Web para baixar a imagem ou se estiver baixando a partir de uma máquina com linux instalado, utilizar o wget que também faz o download via http. Veremos detalhes deste comando mais adiante em nosso curso. A instalação pode ser feita a partir de um CD ou DVD com a imagem gravada, via rede (você vai precisar de uma banda bem rápida caso contrário demora uma eternidade) e até mesmo a partir de disquetes. Esta opção era muito utilizada antigamente quando as unidades de CD Rom eram caras e não estavam disponíveis em alguns computadores. Atualmente esta opção é praticamente inútil. 1.13 Adquirindo uma imagem I.S.O. A sigla I.S.O. é uma referência ao sistema de arquivos de discos ópticos, no caso ISO9660. Em nosso exemplo, vou utilizar o repositório da Unicamp para baixar nossa imagem ISO que será gravada em um CD e a partir deste, efetuar a instalação do Lenny em nossa máquina de testes. Utilizei o WGET para baixar a imagem apesar de não ser recomendado utilizar o protocolo http para baixar imagens. O correto seria fazer utilizando Bitorrent ou jigdo, no entanto resolvi arriscar porque era o que estava mais fácil no momento. Abaixo o screenshot da tela do terminal com o WGET em ação. O comandoque foi dado acima foi wget http://debian.las.ic.unicamp.br/debiancd/5.0.0/i386/iso-cd/debian-500-i386-CD-1.iso. Na imagem acima podemos visualizar o ambiente XFCE que é uma das muitas interfaces gráficas que o Debian possui, e no terminal podemos visualizar também o momento em que ocorreu a conexão com a Unicamp. Mais abaixo podemos ver a porcentagem concluída da imagem, o tamanho em bytes (185.935.692) a taxa de transferência de dados (24,2 K/s) e o tempo aproximado restante para o download (6h e 6 min). Após completar o download da imagem você pode utilizar qualquer aplicativo para gravá-la. No Debian o mais utilizado por ter mais opções é o K3B. Para gravarmos a imagem em um CD e torna-la bootável, utilizamos a opção Burn in imagem I.S.O.. Esta opção faz com que o programa a partir da imagem I.S.O., grave os arquivos corretamente no CD, transformando-o em um CD que fará a inicialização da instalação a partir de sua unidade CDRom. Não esqueça de alterar no SETUP de sua máquina para o First Boot (primeiro dispositivo a ser buscado para o boot) direcionado para o CD Room. Agora que temos nosso CD de instalação com a versão Stable do Debian 5.0, denominada Lenny (binóculo), podemos iniciar a instalação. Então, mãos à massa. Vamos fazer algumas considerações sobre a instalação. Se você possuir um outro sistema operacional já instalado no seu disco rígido, não haverá problema em instalar o Debian, desde que você tenha espaço disponível no disco ou outra partição vazia, não importando se ela está antes ou depois deste sistema. Caso você possua um segundo disco rígido, melhor ainda, pois você poderá executar a instalação sem maiores problemas. O Linux mapeia os HD's de uma maneira diferente que outros sistemas operacionais. Por exemplo, se você tem um HD e ele está instalado como Master primário, ele mapeará este disco como hda se ele for IDE ou sda se ele for SATA ou SCSI. Caso seu HD esteja particionado com duas partições, por exemplo, 50% do disco em uma partição e os restantes 50% em outra, ele mapeará da seguinte maneira: HD IDE (Master primário) hda Primeira partição (50%) Segunda Partição (50%) hda1 HD SATA (Master primário) sda hda2 Primeira partição (50%) Segunda Partição (50%) sda1 sda2 Caso seu HD esteja na segunda IDE ou SATA ele aparecerá da seguinte forma: HD IDE (Master secundário) hdb HD SATA (Master secundário) sdb Primeira partição (50%) hdb1 Primeira partição 50%) sdb1 Segunda Partição (50%) hdb2 Segunda Partição (50%) sdb2 No entanto, em nossa instalação do Debian, também se faz necessário criarmos uma partição denominada SWAP que nada mais é que uma “área de troca” que o linux utiliza para gravar dados quando a memória RAM é insuficiente. Atualmente existe muita discussão a respeito da utilidade e necessidade da SWAP, mas por via de dúvidas iremos adotar uma área de troca em nossa instalação, por ser o padrão para o Debian. Vou assumir que seu disco seja SATA e vou exemplificar como ficaria a instalação em um disco rígido de 80 Gbytes em uma máquina com 1 Gbyte de RAM. Antigamente quando a memória RAM era cara e escassa, convencionou-se que para um micro com 256 Mb de RAM, deveria ser dimensionada uma SWAP com valor do dobro de RAM, ou seja, criaríamos uma SWAP de 512 Mb. No entanto, está mais do que provado que SWAP acima de 512 Mb não são muito utilizadas pelo linux, uma vez que quando ele se utilizada desta área é porque o uso de memória RAM pelo sistema está no limite crítico. Como as novas máquinas possuem muita memória, seria um desperdício de disco se alocasse-mos uma SWAP muito grande. Por este motivo para nosso exemplo vou fixar nossa SWAP em 512 Mb que é mais do que suficiente. Nosso disco ficaria particionado da seguinte maneira: HD SATA 80 Gb. Partição 1 (45%) Partição 2 (50%) Partição Swap ( 0,5%) sda sda1 sda2 sda3 80 Gb 36 Gb 40 Gb 512 Mb OBS.: Estes são valores bem próximos do real, quando o instalador criar as partições os valores serão um pouco diferentes, mas a intenção com este exemplo é que vocês entendam o conceito do particionamento de um disco rígido pelo Debian. Só para acrescentar, por uma questão de segurança, é uma boa prática atribuir ao particionamento acima, o diretório / (barra certa) em sda1 criando ai a partição onde serão instalados os arquivos do sistema, separados do /home em sda2 ficando em outra partição os arquivos e documentos dos usuários do sistema. Esta prática é muito útil, pois qualquer problema que ocorra com o sistema na partição sda1, poderá ser feita a reinstalação sem que ocorra a perda dos dados dos usuário. Veremos com mais detalhes o sistema de arquivos em nosso curso. Para finalizar, quando iniciarmos a instalação e for pedido para escolher o tipo de particionamento desejado, vamos selecionar o particionamento manual que possibilitará maior controle para que possamos escolher as opções que foram exemplificadas nas tabelas acima. Agora que entendemos como funciona o particionamento, iniciar a vamos instalação na prática. Coloque seu CD contendo a previamente imagem gravada e reinicie seu computador, não esquecendo de mudar no SETUP de sua máquina o boot para unidade de CD Rom, e desabilitando a opção de monitoramento de vírus no MBR descrito anteriormente. Assim que ele carregar o CD você deverá visualizar a seguinte tela: Pressione a tecla F3 e selecione a opção Advanced options. Em selecione seguida, Graphical expert install conforme a tela a seguir. Na próxima tela será solicitado que você escolha a linguagem do sistema. Voce deverá selecionar primeiro o país (Brasil) e nas telas seguintes a linguagem do seu país. O linguagem, escolher suporte você pt_BR à pode ou pt_BR_UTF-8 relacionado a “locales”, que nada mais é do que a linguagem local que o sistema será utilizado. Aqui exemplo em nosso selecionei a opção pt_BR_UTF8 e aproveitei e ativei o suporte ao inglês selecionando en_US. No próximo passo nos será escolher o solicitado a layout de nosso teclado, que poderá ser ABNT2 para teclado com a tecla “Ç”. Layouts selecionados, no próximo passo o sistema tentará detectar a unidade de CD ou DVD que está sendo usado para instalar. Na tela abaixo, vemos um dos módulos de kernel que é responsável pela USB para pendrives. Na dúvida deixe o sistema escolher. Na próxima tela, você será questionado se necessita de suporte a cartões PCMCIA. Se você estiver instalando em um notebook, selecione sim, caso contrário não. Esta opção poderá surgir várias vezes durante a instalação e você responderá sempre a mesma Na duas próximas telas nosso CD de instalação foi totalmente detectado pelo sistema. verificamos que Nesta etapa, simplesmente clique em continuar para prosseguir com a instalação. Na próxima tela serão solicitados módulos adicionais para o kernel. Voce poderá selecionar o cfdisk que é um particionador e também selecione o suporte a partições ntfs. Caso você esteja instalando em um notebook selecione suporte a rede wireless (sem fio). Aqui o sistema tentará detectar todo o seu hardware e também sua placa de rede. Nas versões atuais a detecção de hardware geralmente é bem sucedida. Novamente na próxima tela, só selecione sim instalando em um notebook. se você estiver Na próxima etapa, provavelmente se sua placa foi detectada com sucesso, será solicitado que seja escolhido o tipo de rede para configurá-la. Na próxima etapa, é necessário saber o tipo de rede que você possui. Se for DHCP, a configuração será feita automaticamente, caso contrário você precisará obter informações do seu provedor ou administrador de rede. Em nosso exemplo a próxima tela, optei por selecionar rede com IP estático e não DHCP. Assim poderei demonstrar para vocês como inserir as informações neste tipo de rede. Digite separado por pontos o IP de seu computador como no exemplo e clique em continuar. No próximo passo será solicitado que seja digitado a máscara de rede. Digite como no exemplo abaixo. (Você precisará saber qual sua máscara, verifique isso com seu administrador de rede ou provedor de internet). Na próxima tela é solicitado o gateway padrão, ou seja, o IP do do roteador de sua rede. Caso não saiba consulte seu administrador de rede ou provedor de internet. Após digitar corretamente, clique em continuar. Prosseguindo com a configuração de nossa rede, você deverá digitar o DNS conforme o exemplo. Você poderá colocar até três DNS's separados por um espaço. Caso não saiba, solicite ao seu administrador ou provedor de acesso. A próxima etapa será solicitado que você digite um nome de Host. Este será o nome que sua máquina aparecerá na rede. Optei por escolher Curso Linux para o nome de Host no nosso exemplo. Na próxima tela será solicitado o nome do domínio de sua rede. Se você não tiver ou não souber esta informação, deixe-a em branco e tecle continuar. Em nosso exemplo, está demonstrado o formato habitual de um nome de domínio. As duas próximas telas referem-se ao nosso fuso horário e ao modo como desejamos sincronizar a hora de nosso sistema. Se você desejar que o Debian Linux sincronize o relógio do sistema com um servidor NTP confiável, você pode clicar em sim que ele o fará sempre que estiver conectado a internet. Neste ponto nos será perguntado se queremos sincronizar a hora do sistema através do NTP (Network Time Protocol). Aqui digitamos nosso servidor NTP. O padrão é o servidor do Debian org, no entanto convém que seja utilizado um servidor que esteja dentro do fuso horário de sua região. Caso não conheça você poderá deixar em branco. Ao finalizar clique em continuar. Caso voce esteja conectado e tenha selecionado o servidor NTP, o Debian faz a sincronização inicial. Isto é útil porque quando houver mudança no horário de verão, você não precisará se preocupar em acertar a hora de seu sistema, ele o fará automaticamente através do NTP. Aqui devemos selecionar o fuso horário da cidade onde estamos instalando nosso sistema. No meu caso, São Paulo. No próximo passo o sistema irá detectar seu disco rígido (HD) para que seja feito o particionamento do disco. Observe na tela abaixo, o sistema irá inicializar o particionador de disco que no caso do Debian é utilizado o Gparted. Clique em continuar. No proximo passo voce deve selecionar o particionamento manual que lhe possibilitará maior controle sobre o particionamento do disco. Na tela podemos verificar que o disco no nosso exemplo a ser particionado é um disco SATA ou SCSI (reconhecido pelo Debian como sda). Podemos verificar que é um HD de 3.2 Gbytes. Se seu HD for novo e não estiver particionado, poderá aparecer esta tela. Neste caso digite sim e você verá que criaremos uma tabela de partição inicial que pode ser qualquer sistema. No nosso caso e uma questão de familiaridade, escolhi uma tabela do DOS. Selecione a opção msdos e clique em continuar. O próximo passo é iniciar o particionamento do disco para instalar nosso sistema. Temos agora no exemplo abaixo, a representação do espaço livre do disco em um partição única. Tecle em continuar. No próximo passo selecione criar uma nova partição e tecle em continuar. No próximo passo será solicitado que você digite o tamanho da partição para a instalação do nosso sistema. Aqui selecionei 2.0 Gb para minha primeira partição onde serão colocados os arquivos do sistema (/) do Debian. Tecle em continuar após entrar com o tamanho. No próximo passo será solicitado o tipo de partição. Selecione “primária”. Podemos ter no máximo quatro partições primárias em um mesmo disco rígido. A partir da quinta partição só poderemos selecionar partições “lógicas”. Tecle em continuar. Na próxima tela, selecionamos se queremos criá-la no inicio ou no fim do espaço em disco. A não ser que você saiba o que esta fazendo, sempre selecione no início e clique em continuar. Nesta tela poderemos ver o tipo de filesystem que no caso dever ser selecionado EXT3. Caso não esteja você deve clicar duas vezes em cima da linha “Usar como” e selecionar este tipo de sistema. O ponto de montagem deve ser o (“/”) barra e o restante você pode deixar como esta. Se quiser coloque um rótulo (sistema) por exemplo) e clique em continuar. No próximo passo, vamos selecionar nosso espaço livre e criar a segunda partição onde colocaremos nosso /home que será a partição dos arquivos dos usuário. Selecione um tamanho lembrando sempre de deixar espaço para nossa SWAP (área de troca). Clique duas vezes sobre o espaço livre. Clique duas vezes em “Usar como:” e selecione EXT3, ponto de montagem: /home, em rótulo sugiro: Documentos e finalizar a configuração da partição. Não altere as outras opções. Clique em continuar. Podemos ver na próxima tela, como está ficando nosso particionamento. Observe o espaço selecionado, tipo de filesystem(ext3) e os pontos de montagens do sistema (/ e /home). Vamos agora criar nossa Swap. Clique duas vezes sobre o espaço livre. Nas opções que aparecem, selecione: área de troca(swap) e clique em continuar. Nela não é necessário selecionar o tipo de filesystem, nem indicar ponto de montagem. Clique em continuar. No exemplo abaixo podemos visualizar como ficou particionado nosso disco. Utilizamos o espaço livre para a swap que ficou com 271.4 Mb de espaço, mais que o suficiente para nossa área de troca. Clique em finalizar o particionamento e continuar. Finalmente somos alertados para as mudanças que serão efetuadas no disco e após este passo todas as partições serão criadas e formatas com seus filesystem selecionado e teremos o disco pronto para prosseguir com a instalação. Selecione “Sim” e continuar. Na próxima etapa será instalado o sistema básico e os arquivos serão copiados para o disco para preparar o sistema para inicialização posterior. Clique em continuar. Após o instalador copiar alguns arquivos, será mostrada a tela abaixo. Selecione a versão do kernel que o sistema oferece a você. Ele sempre oferece a melhor versão para seu tipo de máquina. Só selecione uma versão diferente caso sua instalação trave neste ponto. Voce poderá reiniciar e quando chegar novamente nesta tela, selecione outro kernel O instalador lhe solicitará que escolha um kernel genérico que inclui drivers para quase todo o hardware existente e um kernel mais enxuto, contendo os drivers necessários para o sistema onde está sendo instalado. Caso não funcione com esta opção, tente com a outra opção. A próxima etapa será para criar a senha para o superusuário e criar um usuário normal atribuindo senha a eles. O instalador pedirá a confirmação da senha para ambos. Lembre-se que no Debian, são diferenciadas letras minúsculas de maiúsculas. Nesta etapa, selecione sim. Senhas de sombra (shadow) é uma particularidade do Debian para tornar as senhas mais seguras. Veremos isso com detalhes posteriormente em nosso curso. A segunda opção também será detalhada mais adiante, por hora selecione sim e tecle em continuar. A próxima etapa será para criar a senha para o superusuário e criar um usuário normal atribuindo-lhe uma senha . O instalador pedirá a confirmação da senha para ambos. Digite com cautela, lembrando que no Debian, são diferenciadas letras minúsculas de maiúsculas e tecle em continuar. Como o próprio sistema sugere, vamos criar uma conta de usuário normal (sem privilégios de superusuário) para que possamos efetuar tarefas como navegar, editar texto e executar tarafas simples. Por questões de segurança, não é recomendado usar a conta de root para tarefas do dia a dia. Em nosso exemplo, criei um usuário chamado “aluno linux”. Voce pode, se preferir, digitar seu nome e sobrenome e o Debian pegará seu primeiro nome para o nome de login do usuário normal, como pode ser verificado na próxima tela. Tecle continuar. A tela abaixo exemplifica o nome do usuário normal que será o login no sistema. Tecle em continuar. O próximo passo será configurar nosso gerenciador de pacotes que será o responsável pelo tipo de sistema que teremos, ou seja se teremos Interface Gráfica ou não, se teremos servidor Web e de Banco de Dados ou não, etc. Clique em continuar. Nesta etapa, se você possuir mais conjuntos de CD's de instalação é a hora de coloca-los um a um no drive de CDROM para que sejam catalogados pelo instalador. Em caso de DVD teremos somente um porque todos os sete CD's de instalação do Debian cabem em um DVD. Nesta etapa você escolhe se usará os CD's ou DVD para instalar ou se irá configurar um espelho (mirror) com repositório de arquivos Debian para prosseguir a instalação. Nota: O tempo de instalação vai depender da velocidade de sua banda de internet. Tecle em continuar após escolher. Na próxima etapa, iremos selecionar os pacotes e o ambiente que queremos em nosso micro, ou seja, Desktop, servidor sem interface gráfica, etc. Clique em continuar. Na próxima tela, será perguntado se você deseja fazer parte de uma estatística que existe da utilização de pacotes Debian. Deixo por sua conta, pois isso é totalmente opcional não interferindo em nada com seu sistema. Na próxima etapa, selecione Sistema Básico e Ambiente Desktop para que você tenha um ambiente com todos os recursos necessários de uma estação de trabalho (Desktop). Tecle em continuar. Após selecionar os pacotes a serem instalados, na próxima tela voce verá uma barra de progresso com a quantidade de pacotes a serem copiados e instalados. Quando for mostrada a tela abaixo, significa que o Debian está quase completando sua instalação. Aqui ele pergunta se desejamos instalar o gerenciador de boot GRUB em nosso disco rígido. Selecione esta opção e clique em continuar. Aqui você será inquirido a escolher entre o Grub versão 1 e 2. Vamos selecionar a versão 1 por questões de compatibilidade e também porque a versão 2 ainda não é suficiente estável. Selecione não e clique em continuar. Na tela abaixco, podemos observar o progresso da instalação do Grub no MBR(Master Boot Record) do disco rígido. Caso você possua um outro sistema operacional em outra partição do disco e o Grub o reconheceu, ele criará um menu de opções automaticamente para você selecionar entre o Debian e o outro sistema. Abaixo podemos verificar que no caso de minha instalação exemplo, não havia outro sistema no disco, por isso ele está dizendo que parece ser o único sistema existente. Mesmo assim, ele está me questionando se eu desejo confirmar a gravação do Grub no MBR. Para ambos os casos a opção aqui é “Sim”. Clique em continuar. No próximo passo surge a tela com opção de colocar uma senha no GRUB. Em minha instalação optei por não colocar senha. Caso voce coloque, antes de entrar em qualquer sistema do disco, será solicitado a digitação da mesma. Finalmente se você fez tudo certinho como nos exemplos, será apresentada esta tela para que a instalação seja finalizada. Clique em continuar. Finalmente na tela abaixo, seremos inquiridos a selecionar o relógio do sistema para UTC(Universal Time Clock). Como anteriormente configuramos nosso fuso horário e também escolhemos nosso NTP para sincronizar o relógio, aqui a opção será “não”. Clique em continuar. Nota: UTC é o tempo Unix, em segundos, deste sua criação as 00h00 do dia 01/01/1970. É conhecido também como Times Stamp. Parabéns se você conseguiu chegar até aqui. O Debian abrirá sua unidade de CD, solicitando que você remova o CD de instalação e fará a inicialização de sua máquina com o sistema instalado. O diferente Debian dos é outros sistemas. Quando o Linux está utilizando a unidade de CDROM, você não conseguirá abrir-la, ao menos que ele permita. Veremos isso com detalhes futuramente. Após seu computador concluir o boot, a tela que se apresenta a seguir mostra o menu do GRUB com todos os sistemas operacionais reconhecidos e que podem ser inicializados a partir do menu. Utiliza-se as setas de direção para fazer a seleção. Por default, o Debian aguarda cinco segundos para que você selecione o sistema operacional que deseja. Ao término deste tempo ele carregará o sistema que estiver configurado como default no Grub (no nosso caso, Debian GNU/Linux – Kernel-2.6.26-1-686). A outra opção é para manutenção em caso de problemas com o kernel instalado. Chama-se modo Single user. Em cima dos menus, o Grub também mostra o valor da área de memória baixa (638 Kb), a de memória alta (260032 Kb) no meu caso, além de sua versão (0.97). As linhas abaixo do menu referem-se a opções avançadas de configuração do Grub que foge ao escopo de nosso curso. Podemos verificar na próxima tela, o filesystem sendo inicializado (EXT3 FS on sda2), a área de troca sendo ativada (swap), a interface de rede sendo inicializada, vários módulos Finalmente o Debian carrega sua Interface Gráfica (xserver-xorg) e utiliza o gerenciador de janelas Gnome para apresentar o ambiente Desktop ao usuário. A telinha ao centro solicitando o Login do usuário e posteriormente sua senha é conhecido como GDM. Para sistema, entrar digite no seu usuário criado como mostrado abaixo, e tecle enter. Em seguida digite a senha do usuário aluno. Note que ao digitar são mostrados apenas asteriscos. Cuidado, o Debian é sensível a letras maiúsculas e minúsculas. Digite e em seguida tecle enter. Finalmente se você digitou corretamente seu login e senha, será apresentada a tela do Desktop com o ícones padrões, seu menu pop-up na barra superior, juntamente com o ícone do navegador e do cliente de email. Mais a direita podemos observar o dia da semana, o relógio do sistema, hora local e o alto falante do sistema. Aqui podemos visualizar o menu pop-up sendo acessado, mostrando diversas opções da Interface Gráfica que estudaremos em módulos futuros. ---------- FIM DO MÓDULO I ---------- Bibliografia PESSANHA, Bruno Gomes - Certificação Linux LPI 1 – Editora O'RELLY PRITCHARD, Steven – Certificação Linux LPI 2 – Editora O'RELLY VEIGA, Roberto G.A. – Comandos do Linux – Guia de Consulta Rápida Site Debian.org – Fórum Debian.org. i http://www.gdhpress.com.br/ ii http://www.debian.org/distrib/packages