introduçao ao linux

214
Introdução ao Linux Arthur Mendes Peixoto Andreia Gentil Bonfante

Upload: edinilson-silva

Post on 06-Nov-2015

246 views

Category:

Documents


20 download

DESCRIPTION

Introduçao Ao Linux

TRANSCRIPT

  • Introduo ao Linux

    ISBN 978-85-63630-19-3

    9 788563 630193

    Este curso destinado a usurios, especialistas de supor-te e desenvolvedores de software que desejam aprender a utilizar o Linux, um ambiente computacional moderno, gil e com um sistema operacional extremamente est-vel e verstil. O curso destina-se tambm aos administra-dores de sistemas Windows e aos profissionais que dese-jam iniciar os estudos para a certificao LPIC1, do Linux

    Professional Institute.

    Este livro inclui os roteiros das atividades prticas e o con-tedo dos slides apresentados em sala de aula, apoiando profissionais na disseminao deste conhecimento em

    suas organizaes ou localidades de origem.

    Introduo ao Linux

    LIVR

    O DE

    APO

    IO A

    O CU

    RSO

    Arthur Mendes Peixoto

    Andreia Gentil Bonfante

    A RNP Rede Nacional de Ensino e Pesquisa qualificada como

    uma Organizao Social (OS),

    sendo ligada ao Ministrio da Cincia, Tecnologia e Inovao

    ( MC T I ) e r e s po ns v e l pe l o

    Programa Interministerial RNP,

    que conta com a participao dos

    ministrios da Educao (MEC), da

    Sade (MS) e da Cultura (MinC).

    Pioneira no acesso Internet no

    Brasil, a RNP planeja e mantm a

    rede Ip, a rede ptica nacional

    acadmica de alto desempenho. Com Pontos de Presena nas 27 unidades da federao, a rede

    tem mais de 800 instituies

    conectadas. So aproximadamente 3,5 milhes de usurios usufruindo

    de uma infraestrutura de redes avanadas para comunicao,

    computao e experimentao,

    que contribui para a integrao

    entre o sistema de Cincia e

    Tecnologia, Educao Superior,

    Sade e Cultura.

    Cincia, Tecnologiae Inovao

    Ministrio da

    EducaoMinistrio da

    SadeMinistrio da

    CulturaMinistrio da

    Arthur Mendes Peixoto possui mais de 26 anos de experincia na rea de Redes de Comunicao de Dados e Engenharia de Sistemas, com Disserta-o de Mestrado em Anlise de Perfor-mance de Sistemas Distribudos, no Instituto Militar de Engenharia - IME.

    Participou do desenvolvimento e implantao das primeiras redes com tecnologias ATM, Frame Relay, IP/ MPLS. Foi con-sultor de grandes projetos como o Backbone IP do Plano Nacional de Banda Larga (PNBL) da Telebrs. Trabalhou por 22 anos no setor de Telecomunicaes da Embratel, atuando na prospeco de novas tecnologias para as Redes de Nova Gerao NGN. Participou de testes e verificaes de requi-sitos de RFPs, nos pases: EUA, Canad, Japo, Frana, Espa-nha e Mxico. Atuou no desenvolvimento de sistemas no CPqD - Campinas (SP).

    Andreia Gentil Bonfante possui gra-duao em Bacharelado em Cincias de Computao pela Universidade Estadual de Londrina, mestrado e doutorado em Cincias da Compu-tao e Matemtica Computacional pela Universidade de So Paulo. Atu-

    almente professora/pesquisadora da Universidade Fede-ral de Mato Grosso. Tem experincia na rea de Cincia da Computao, com nfase em Inteligncia Artificial, atu-ando principalmente nos seguintes temas: Processamento de Lngua Natural, Minerao de Textos e Aprendizado de Mquina. Atua na Educao a Distncia como Coordena-dora da Especializao em Informtica na Educao. Atuou tambm como instrutora dos cursos de Introduo ao Linux da Escola Superior de Redes na Unidade de Cuiab.

  • A RNP Rede Nacional de Ensino e Pesquisa qualificada como uma Organizao Social (OS), sendo ligada ao Ministrio da Cincia, Tecnologia e Inovao (M CT I ) e r e s po n s v e l pe l o Programa Interministerial RNP, que conta com a participao dos ministrios da Educao (MEC), da Sade (MS) e da Cultura (MinC). Pioneira no acesso Internet no Brasil, a RNP planeja e mantm a rede Ip, a rede ptica nacional acadmica de alto desempenho. Com Pontos de Presena nas 27 unidades da federao, a rede tem mais de 800 instituies conectadas. So aproximadamente 3,5 milhes de usurios usufruindo de uma infraestrutura de redes avanadas para comunicao, computao e experimentao, que contribui para a integrao entre o sistema de Cincia e Tecnologia, Educao Superior, Sade e Cultura.

    Cincia, Tecnologiae Inovao

    Ministrio da

    EducaoMinistrio da

    SadeMinistrio da

    CulturaMinistrio da

  • Arthur Peixoto

    Andreia Gentil Bonfante

    Introduo ao Linux

  • Arthur PeixotoAndreia Gentil Bonfante

    Rio de JaneiroEscola Superior de Redes2013

    Introduo ao Linux

  • Copyright 2013 Rede Nacional de Ensino e Pesquisa RNP Rua Lauro Mller, 116 sala 1103 22290-906 Rio de Janeiro, RJ

    Diretor Geral Nelson Simes

    Diretor de Servios e Solues Jos Luiz Ribeiro Filho

    Escola Superior de Redes

    Coordenao Luiz Coelho

    Edio Pedro Sangirardi

    Reviso Tcnica Marcelo Castellan Braga

    Coordenao Acadmica de Administrao de Sistemas Sergio Alves de Souza

    Equipe ESR (em ordem alfabtica) Celia Maciel, Cristiane Oliveira, Derlina Miranda, Edson Kowask, Elimria Barbosa, Lourdes Soncin, Luciana Batista, Luiz Carlos Lobato e Renato Duarte

    Capa, projeto visual e diagramao Tecnodesign

    Verso 1.1.0

    Este material didtico foi elaborado com fins educacionais. Solicitamos que qualquer erro encon-trado ou dvida com relao ao material ou seu uso seja enviado para a equipe de elaborao de contedo da Escola Superior de Redes, no e-mail [email protected]. A Rede Nacional de Ensino e Pesquisa e os autores no assumem qualquer responsabilidade por eventuais danos ou perdas, a pessoas ou bens, originados do uso deste material. As marcas registradas mencionadas neste material pertencem aos respectivos titulares.

    Distribuio Escola Superior de Redes Rua Lauro Mller, 116 sala 1103 22290-906 Rio de Janeiro, RJ http://esr.rnp.br [email protected]

    Dados Internacionais de Catalogao na Publicao (CIP)

    P377a Peixoto, Arthur Mendes Introduo ao Linux / Arthur Mendes Peixoto, Andreia Bonfante; Revisor: Marcelo Braga. Rio de Janeiro: RNP/ESR, 2013. 210 p. : il. ; 28 cm.

    Bibliografia: p. 193-194. ISBN 978-85-63630-19-3

    1. Linux (Sistema operacional de computador). 2. Sistema operacional (computadores). 3. UNIX Shell (Programa de computador). I. Bonfante, Andreia. II. Braga, Marcelo. III. Titulo.

    CDD 005.40469

  • iii

    Sumrio

    1. Histrico e instalao

    O que um Sistema Operacional?1

    Arquitetura do sistema operacional Unix2

    Caractersticas principais3

    Histrico do Unix5

    Verses do Unix5

    Similares Unix7

    Distribuies Linux8

    Exerccio de fixao 1 Entendendo as licenas Unix e GPL8

    Red Hat Enterprise Linux8

    CentOS9

    Debian9

    Ubuntu10

    Mandriva Linux10

    Slackware11

    Exerccio de fixao 2 Conhecendo as distribuies Linux11

    A escolha da distribuio Linux11

    Razes para utilizar o Linux12

    Hardwares suportados12

    Lista de verificao de hardware13

    Requisitos mnimos de hardware13

    Instalando o Linux14

    Criao da mquina virtual14

    Programa de instalao do Linux15

  • iv

    Roteiro de Atividades 119

    Atividade 1.1 Conhecendo as distribuies Linux19

    Atividade 1.2 Obtendo informaes para iniciar a instalao do Linux19

    Atividade 1.3 Preparando o ambiente de instalao19

    Atividade 1.4 Instalando o Linux20

    Atividade 1.5 Inicializando o sistema pela primeira vez20

    2. Utilizao do sistema

    Configuraes iniciais21

    Informaes da licena21

    Criando uma conta de usurio21

    Configurando data e hora21

    Habilitao e configurao do Kdump22

    Ambiente grfico22

    Iniciando e finalizando o Servidor X22

    Configurando o Servidor X23

    Arquivo xorg.conf23

    Abrindo uma sesso26

    GNOME desktop26

    Menu Aplicativos27

    Menu Locais28

    Menu Sistema28

    Aplicaes28

    Configurando o GNOME29

    KDE desktop30

    Lanador de aplicaes31

    Aplicaes do KDE33

    Configurando o KDE34

    Documentao35

    Roteiro de Atividades 237

    Atividade 2.1 Conhecendo o ambiente grfico 37

    Atividade 2.2 Conhecendo os gerenciadores de arquivos37

    Atividade 2.3 Trabalhando com arquivos e diretrios37

  • v3. Organizao do Linux

    Sistema de arquivos do Linux39

    Exerccio de fixao 1 Conhecendo o sistema de arquivos40

    Exerccio de fixao 2 Estrutura de diretrios40

    Montando e desmontando um dispositivo41

    Inode41

    Tipos de arquivos42

    Arquivo regular42

    Diretrio42

    Arquivos de dispositivos43

    Named pipes44

    Para que servem os links45

    Exerccio de fixao 3 Links45

    Sockets46

    Atributos dos arquivos46

    Permisses de arquivos47

    Exerccio de fixao 4 Atributos e permisses de arquivos50

    Operaes com arquivos e diretrios50

    Exerccio de fixao 5 Criando arquivos52

    Criando diretrios52

    Exerccio de fixao 6 Criando diretrios53

    Copiando arquivos e diretrios53

    Removendo arquivos e diretrios54

    Exerccio de fixao 7 Removendo arquivos54

    Movendo arquivos e diretrios54

    Exerccio de fixao 8 Renomeando arquivos55

    Listando arquivos e diretrios55

    Exerccio de fixao 9 Listando arquivos56

    Procurando arquivos e diretrios56

    Navegando pela rvore de diretrios57

    Empacotando e compactando arquivos e diretrios58

    Exerccio de fixao 10 Pgina de manuais60

    Roteiro de Atividades 361

    Atividade 3.1 Conhecendo os arquivos61

    Atividade 3.2 Criando arquivos61

    Atividade 3.3 Criando diretrios e copiando arquivos61

    Atividade 3.4 Empacotando e compactando arquivos61

    Atividade 3.5 Removendo arquivos e diretrios61

  • vi

    4. Desvendando o Linux

    Entrada e sada padro de dados e sada padro de erros63

    Redirecionamento de entrada e sada64

    Pipe ou canalizao66

    Exerccio de fixao 1 Comando sort68

    Comandos para manipulao de arquivos68

    Substituindo nomes de arquivos68

    Visualizando o contedo de arquivos68

    Exerccio de fixao 2 Visualizando contedo de arquivos69

    Contabilizando o contedo de arquivos70

    Exibindo o contedo inicial e final de arquivos70

    Exerccio de fixao 3 Exibindo o contedo de arquivos71

    Selecionando trechos de arquivos71

    Comparao entre arquivos74

    Ordenao em arquivos75

    Roteiro de Atividades 477

    Atividade 4.1 Pesquisando em arquivos77

    Atividade 4.2 Contabilizando arquivos77

    Atividade 4.3 Controlando a exibio do contedo de arquivos77

    Atividade 4.4 Combinando comandos para criar novas funcionalidades77

    5. Edio de texto

    Processadores de texto79

    Editores de texto79

    Editor Vi80

    Modos do editor Vi82

    Exerccio de fixao 1 Primeiro arquivo com Vi87

    Roteiro de Atividades 591

    Atividade 5.1 Criando um texto no Vi91

    Atividade 5.2 Usando recursos bsicos do Vi91

    Atividade 5.3 Combinando recursos do Vi92

    Atividade 5.4 Execuo de comandos diversos92

    Atividade 5.5 Execuo de comandos avanados92

  • vii

    6. Shell

    Noes bsicas93

    Gerenciamento de processos95

    Criao de processos96

    Processos em background e daemons98

    Sinais do sistema99

    Visualizao de processos101

    Variveis de ambiente102

    Uso de aspas simples, duplas e barra invertida 104

    Exerccio de fixao 1 Visualizao de processos104

    Exerccio de fixao 2 Visualizao de processos em tempo real105

    Exerccio de fixao 3 Visualizao de rvore de processos105

    Shell Script105

    Exerccio de fixao 4 Criando um script simples107

    Variveis do Shell Script 107

    Escopo das variveis109

    Expresses e testes110

    Comando read113

    Parmetros de linha de comando (variveis especiais)114

    Roteiro de Atividades 6117

    Atividade 6.1 Exibindo processos em estados especficos117

    Atividade 6.2 Executando processos em background117

    Atividade 6.3 Utilizando um daemon117

    Atividade 6.4 Usando testes dentro dos scripts117

    Atividade 6.6 Lendo variveis e usando expresses nos scripts117

    Atividade 6.7 Utilizando parmetros118

    Atividade 6.8 Utilizando parmetros e testes118

    Atividade 6.9 Utilizando testes de diretrio118

    Atividade 6.10 Listando arquivos passados por parmetro118

    7. Shell Script

    Estruturas de deciso119

    Comando if119

    Comando if tipos de condio121

  • viii

    Comando if ... else121

    Aninhando comandos if e else123

    Exerccio de fixao 1 Estrutura de deciso124

    Comando case124

    Expresses regulares126

    Operador =~129

    Comando sed130

    Comando tr130

    Exerccio de fixao 2 Metacaracteres130

    Roteiro de Atividades 7131

    Atividade 7.1 Verificando a existncia de arquivos131

    Atividade 7.2 Verificando a entrada de parmetros131

    Atividade 7.3 Executando sequncias de comandos 131

    Atividade 7.4 Combinando parmetros, leitura e execuo de comandos132

    Atividade 7.5 Utilizando comando grep/egrep132

    Atividade 7.6 Ainda usando grep/egrep133

    Atividade 7.7 Combinando comandos 134

    Atividade 7.8 Aninhando condicionais134

    Atividade 7.9 Utilizando expresses regulares135

    Atividade 7.10 Utilizando case135

    Atividade 7.11 Utilizando case com menu de opes135

    Atividade 7.12 Combinando if com case135

    Atividade 7.13 Combinando if, case e comandos135

    8. Shell Script

    Estruturas de repetio137

    Comando for137

    Exerccio de fixao 1 Alterando o valor da varivel IFS 140

    Comandos while e until140

    Funes141

    Exerccio de fixao 2 Etapas do script147

    Arrays147

    Roteiro de Atividades 8151

    Atividade 8.1 Verificando permisso dos arquivos151

  • ix

    Atividade 8.2 Verificando usurios e informaes 151

    Atividade 8.3 Percorrendo um diretrio com o comando for e utilizando contadores151

    Atividade 8.4 Ainda manipulando listas com o comando for e contadores151

    Atividade 8.5 Manipulando sequncias com o comando for151

    Atividade 8.6 Testando os diversos comandos de repetio151

    Atividade 8.7 Utilizando o comando for como contador151

    Atividade 8.8 Utilizando repetio condicionada151

    Atividade 8.9 Criando uma agenda simples151

    Atividade 8.10 Criando uma calculadora simples utilizando funes152

    9. Instalao de aplicaes

    Aplicaes no sistema operacional Linux153

    Linguagens de programao 154

    Instalando aplicaes a partir de seus cdigos-fontes156

    Obteno dos arquivos-fontes156

    Verificao do ambiente para a compilao156

    Compilao157

    Instalao157

    Instalando aplicaes a partir de arquivos binrios158

    Pacotes RPM159

    Dependncias161

    Exerccio de fixao 1 Gerenciador de pacotes RPM162

    YUM163

    Configurando o YUM163

    Utilizando o YUM164

    APT168

    Configurando o APT168

    Utilizando o APT168

    Dicas sobre gerenciadores de pacotes170

    Exerccio de fixao 2 Gerenciador de pacotes APT171

    Roteiro de Atividades 9173

    Atividade 9.1 Encontrando bibliotecas utilizadas por um programa173

    Atividade 9.2 Instalando uma aplicao a partir do seu cdigo-fonte173

    Atividade 9.3 Instalando uma aplicao a partir de um arquivo binrio173

    Atividade 9.4 Instalando um pacote rpm173

  • xAtividade 9.5 Descobrindo a qual pacote pertence uma biblioteca173

    Atividade 9.6 Descobrindo as dependncias dos pacotes173

    Atividade 9.7 Atualizando o sistema com yum173

    Atividade 9.8 Instalando pacotes com yum173

    10. Configurao e utilizao de dispositivos de hardware

    Introduo175

    Exerccio de fixao 1 Verificando o kernel176

    Arquivos de dispositivos176

    Exerccio de fixao 2 Arquivos de dispositivos177

    Mdulos177

    Exerccio de fixao 3 Mdulos179

    Initrd179

    Gerenciando dispositivos179

    Hotplug179

    Udev180

    Exerccio de fixao 4 Gerenciando dispositivos181

    Identificando e configurando dispositivos181

    Unidades de CD/DVD183

    Dispositivos de armazenamento USB185

    Interfaces de rede186

    Placas SCSI188

    Placas de vdeo188

    Gerenciamento de energia190

    Advanced Power Management (APM)190

    Advanced Configuration and Power Interface (ACPI)190

    Roteiro de Atividades 10191

    Atividade 10.1 Descobrindo os dispositivos detectados pelo kernel191

    Atividade 10.2 Verificando os mdulos carregados191

    Atividade 10.3 Identificando os dispositivos PCI191

    Atividade 10.4 Utilizando um pen drive191

    Atividade 10.5 Verificando e identificando as placas de rede191

    Atividade 10.6 Identificando a placa grfica e seu driver191

    Bibliografia 193

  • xi

    A Escola Superior de Redes (ESR) a unidade da Rede Nacional de Ensino e Pesquisa

    (RNP) responsvel pela disseminao do conhecimento em Tecnologias da Informao e Comunicao (TIC).

    A ESR nasce com a proposta de ser a formadora e disseminadora de competncias em

    TIC para o corpo tcnico-administrativo das universidades federais, escolas tcnicas e

    unidades federais de pesquisa. Sua misso fundamental realizar a capacitao tcnica do corpo funcional das organizaes usurias da RNP, para o exerccio de competncias

    aplicveis ao uso eficaz e eficiente das TIC.

    A ESR oferece dezenas de cursos distribudos nas reas temticas: Administrao e Pro-

    jeto de Redes, Administrao de Sistemas, Segurana, Mdias de Suporte Colaborao

    Digital e Governana de TI.

    A ESR tambm participa de diversos projetos de interesse pblico, como a elaborao e execuo de planos de capacitao para formao de multiplicadores para projetos educacionais como: formao no uso da conferncia web para a Universidade Aberta do

    Brasil (UAB), formao do suporte tcnico de laboratrios do Proinfo e criao de um con-

    junto de cartilhas sobre redes sem fio para o programa Um Computador por Aluno (UCA).

    A metodologia da ESRA filosofia pedaggica e a metodologia que orientam os cursos da ESR so baseadas na

    aprendizagem como construo do conhecimento por meio da resoluo de problemas tpi-

    cos da realidade do profissional em formao. Os resultados obtidos nos cursos de natureza

    terico-prtica so otimizados, pois o instrutor, auxiliado pelo material didtico, atua no

    apenas como expositor de conceitos e informaes, mas principalmente como orientador do aluno na execuo de atividades contextualizadas nas situaes do cotidiano profissional.

    A aprendizagem entendida como a resposta do aluno ao desafio de situaes-problema

    semelhantes s encontradas na prtica profissional, que so superadas por meio de anlise,

    sntese, julgamento, pensamento crtico e construo de hipteses para a resoluo do pro-

    blema, em abordagem orientada ao desenvolvimento de competncias.

    Dessa forma, o instrutor tem participao ativa e dialgica como orientador do aluno para as

    atividades em laboratrio. At mesmo a apresentao da teoria no incio da sesso de apren-dizagem no considerada uma simples exposio de conceitos e informaes. O instrutor

    busca incentivar a participao dos alunos continuamente.

    Escola Superior de Redes

  • xii

    As sesses de aprendizagem onde se do a apresentao dos contedos e a realizao das

    atividades prticas tm formato presencial e essencialmente prtico, utilizando tcnicas

    de estudo dirigido individual, trabalho em equipe e prticas orientadas para o contexto de

    atuao do futuro especialista que se pretende formar.

    As sesses de aprendizagem desenvolvem-se em trs etapas, com predominncia de

    tempo para as atividades prticas, conforme descrio a seguir:

    Primeira etapa: apresentao da teoria e esclarecimento de dvidas (de 60 a 90 minutos). O instrutor apresenta, de maneira sinttica, os conceitos tericos correspondentes ao tema da sesso de aprendizagem, com auxlio de slides em formato PowerPoint. O instrutor

    levanta questes sobre o contedo dos slides em vez de apenas apresent-los, convidando

    a turma reflexo e participao. Isso evita que as apresentaes sejam montonas e que

    o aluno se coloque em posio de passividade, o que reduziria a aprendizagem.

    Segunda etapa: atividades prticas de aprendizagem (de 120 a 150 minutos). Esta etapa a essncia dos cursos da ESR. A maioria das atividades dos cursos assn-

    crona e realizada em duplas de alunos, que acompanham o ritmo do roteiro de atividades proposto no livro de apoio. Instrutor e monitor circulam entre as duplas para solucionar dvidas e oferecer explicaes complementares.

    Terceira etapa: discusso das atividades realizadas (30 minutos). O instrutor comenta cada atividade, apresentando uma das solues possveis para resolv-la, devendo ater-se quelas que geram maior dificuldade e polmica. Os alunos so

    convidados a comentar as solues encontradas e o instrutor retoma tpicos que tenham gerado dvidas, estimulando a participao dos alunos. O instrutor sempre estimula os

    alunos a encontrarem solues alternativas s sugeridas por ele e pelos colegas e, caso

    existam, a coment-las.

    Sobre o curso Esse o curso introdutrio da trilha de Administrao de Sistemas. Seu objetivo intro-duzir o aluno ao mundo Linux. O sistema operacional (SO) utilizado o CentOS, que

    baseado em RedHat, gratuito e extremamente estvel, alm de suportar todos os servios

    necessrios a um ambiente web.

    O curso composto de 10 captulos de embasamento terico e atividades correlatas para aprendizado e fixao do conhecimento. O curso tem como objetivo apresentar as facilida-

    des de administrao e gerenciamento, que sero exploradas com maior profundidade nos

    demais cursos da rea de Administrao de Sistemas da Escola Superior de Redes da RNP.

    A quem se destinaEste curso destinado a usurios, especialistas de suporte e desenvolvedores de software

    que desejam aprender a utilizar o Linux, um ambiente computacional moderno, gil e com

    um sistema operacional extremamente estvel e verstil.

    O curso destina-se tambm aos administradores de sistemas Windows e aos profissionais

    que desejam iniciar os estudos para a certificao LPIC1, do Linux Professional Institute.

  • xiii

    Convenes utilizadas neste livroAs seguintes convenes tipogrficas so usadas neste livro:

    Itlico Indica nomes de arquivos e referncias bibliogrficas relacionadas ao longo do texto.

    Largura constante

    Indica comandos e suas opes, variveis e atributos, contedo de arquivos e resultado da

    sada de comandos. Comandos que sero digitados pelo usurio so grifados em negrito

    e possuem o prefixo do ambiente em uso (no Linux normalmente # ou $, enquanto no

    Windows C:\).

    Contedo de slide Indica o contedo dos slides referentes ao curso apresentados em sala de aula.

    Smbolo Indica referncia complementar disponvel em site ou pgina na internet.

    Smbolo Indica um documento como referncia complementar.

    Smbolo Indica um vdeo como referncia complementar.

    Smbolo Indica um arquivo de adio como referncia complementar.

    Smbolo Indica um aviso ou precauo a ser considerada.

    Smbolo Indica questionamentos que estimulam a reflexo ou apresenta contedo de apoio ao

    entendimento do tema em questo.

    Smbolo Indica notas e informaes complementares como dicas, sugestes de leitura adicional ou

    mesmo uma observao.

    Permisses de usoTodos os direitos reservados RNP. Agradecemos sempre citar esta fonte quando incluir parte deste livro em outra obra. Exemplo de citao: PEIXOTO, Arthur Mendes; BONFANTE, Andreia Gentil. Introduo ao Linux. Rio de Janeiro: Escola Superior de Redes, 2013.

  • xiv

    Comentrios e perguntasPara enviar comentrios e perguntas sobre esta publicao: Escola Superior de Redes RNP Endereo: Av. Lauro Mller 116 sala 1103 Botafogo Rio de Janeiro RJ 22290-906 E-mail: [email protected]

    Sobre os autoresArthur Mendes Peixoto possui mais de 26 anos de experincia na rea de Redes de Comuni-cao de Dados e Engenharia de Sistemas, com Dissertao de Mestrado em Anlise de

    Performance de Sistemas Distribudos, no Instituto Militar de Engenharia - IME. Participou

    do desenvolvimento e implantao das primeiras redes com tecnologias ATM, Frame Relay,

    IP/ MPLS. Foi consultor de grandes projetos como o Backbone IP do Plano Nacional de Banda

    Larga (PNBL) da Telebrs. Trabalhou por 22 anos no setor de Telecomunicaes da Embratel,

    atuando na prospeco de novas tecnologias para as Redes de Nova Gerao NGN. Parti-

    cipou de testes e verificaes de requisitos de RFPs, nos pases: EUA, Canad, Japo, Frana,

    Espanha e Mxico. Atuou no desenvolvimento de sistemas no CPqD - Campinas (SP).

    Andreia Gentil Bonfante possui graduao em Bacharelado em Cincias de Computao pela Universidade Estadual de Londrina, mestrado e doutorado em Cincias da Compu-

    tao e Matemtica Computacional pela Universidade de So Paulo. Atualmente profes-

    sora/pesquisadora da Universidade Federal de Mato Grosso. Tem experincia na rea de

    Cincia da Computao, com nfase em Inteligncia Artificial, atuando principalmente nos

    seguintes temas: Processamento de Lngua Natural, Minerao de Textos e Aprendizado de

    Mquina. Atua na Educao a Distncia como Coordenadora da Especializao em Infor-

    mtica na Educao. Atuou tambm como instrutora dos cursos de Introduo ao Linux da

    Escola Superior de Redes na Unidade de Cuiab.

    Marcelo Castellan Braga possui graduao em Engenharia Eletrnica pelo CEFET-RJ, ps-graduao em Anlise, Projeto e Gerncia de Sistemas pela PUC-RJ e mestrado em

    informtica pela UNIRIO. Atualmente scio diretor da MCB Tech, empresa que presta con-

    sultoria em redes de computadores, servios de internet, segurana de dados e desenvolvi-

    mento de software. Atuou durante mais de 10 anos na rea de TI em empresas como Rede

    Nacional de Ensino e Pesquisa (RNP) e Embratel.

    Sergio Ricardo Alves de Souza possui mais de 35 anos de experincia na rea de Adminis-trao e Suporte de Sistemas. Trabalhou em empresas como: Burroughs (UNISYS), ARSA

    (Infraero), Cobra Computadores, LNCC e outras. Consultoria e treinamento em empresas

    como: Fiocruz, Jardim Botnico, Museu Goeldi, Cefet-MG, IBM Brasil. Participou do desen-

    volvimento e implantao de cursos profissionalizantes em Informtica em Petrpolis -

    FAETC. Participou do projeto de criao do Instituto Superior de Tecnologia em Cincia da

    Computao de Petrpolis. Possui Notrio Saber em Informtica pelo LNCC.

  • 1 C

    aptu

    lo 1

    - H

    ist

    rico

    e in

    stal

    ao

    obje

    tivos

    conceitos

    1Histrico e instalao

    Compreender o que um Sistema Operacional e estudar a arquitetura do sistema

    operacional Unix.

    Histrico do Unix, hardwares suportados e instalao do Linux.

    O que um Sistema Operacional?qFunes bsicas de um sistema operacional:

    1 Gerenciar o uso da CPU.

    1 Gerenciar o uso da memria RAM.

    1 Gerenciar o armazenamento de dados.

    1 Gerenciar os dispositivos de entrada e sada.

    1 Interpretar comandos.

    Um Sistema Operacional a interface de comunicao entre o usurio e o hardware. Para

    desempenhar essa funo, o Sistema Operacional deve conhecer a linguagem do usurio e

    a do hardware, e tambm controlar a troca de mensagens entre os dois. Alm disso, deve

    interpretar as ordens do usurio e passar ao hardware as instrues para que sejam execu-

    tadas. Principais funes desempenhadas por um Sistema Operacional:

    1 Gerenciar o uso da CPU: o Sistema Operacional deve controlar a utilizao da CPU, dividindo seu tempo de uso de modo que ela execute os processos dos usurios e do prprio Sistema

    Operacional, um de cada vez, enquanto os outros aguardam na fila para serem processados.

    1 Gerenciar o uso da memria: preciso manter a integridade dos dados e dos pro-gramas em execuo na memria RAM do computador.

    1 Gerenciar os dispositivos de entrada e sada: funo do Sistema Operacional gerenciar os acessos aos dispositivos de entrada e sada de dados (I/O), como: impres-

    soras, monitores, teclados, scanners, microfones, caixas de som etc. Um subsistema, ou

    subconjunto de programas, realiza essa funo especfica do sistema, que consiste entre

    outras coisas na leitura e escrita de dados nesses perifricos.

    1 Gerenciar o armazenamento de dados: funo do Sistema Operacional armazenar e recuperar os dados nos dispositivos de armazenamento, como discos rgidos, pen drives,

    CDs, DVDs etc.

  • 2 In

    trod

    uo

    ao

    Linu

    x

    1 Interpretar comandos: necessrio que o sistema interaja com o usurio. O interpre-tador de comandos recebe os pedidos ou os comandos e compreende o que o usurio

    deseja executar. Aps interpretar o comando, encaminha pedidos aos outros mdulos do

    Sistema Operacional, especializados em atender esses pedidos.

    Estas funes bsicas so as mnimas necessrias para o funcionamento de um compu-

    tador. Veremos que um sistema operacional pode ter muitas outras funes que definem

    sua especializao.

    Dependendo do tipo de aplicao que um computador vai suportar, seu Sistema Opera-

    cional pode necessitar de executar funes especiais, alm das bsicas apresentadas ante-

    riormente. Um Sistema Operacional que se destina a aplicaes pessoais deve ter interface

    grfica bem desenvolvida para facilitar a utilizao por usurios leigos em sistemas. H

    aqueles que se destinam a aplicaes em tempo real, ou seja, que so sensveis a retardos,

    conforme ocorre com alguns controles de processos industriais. Existem computadores que

    so compartilhados, atendendo a usurios de uma empresa ou departamento, que neces-

    sitam realizar diversas tarefas simultneas (multitarefa), ou que permitem vrios usurios

    conectados simultaneamente (multiusurio). Esses computadores necessitam de Sistemas

    Operacionais que realizem funes especiais, como:

    1 Controle de acesso: administra o acesso de mltiplos usurios s informaes armaze-nadas e aos dados em memria, garantindo a confidencialidade dessas informaes.

    funo do Sistema Operacional garantir o sigilo s informaes de cada usurio, restrin-

    gindo o acesso a essas informaes a outros usurios que utilizem o mesmo sistema.

    1 Gerncia de contabilizao: contabiliza todas as atividades do sistema, armazenando em disco as informaes relativas s estatsticas de utilizao, para posterior emisso de relatrios.

    Veremos que, desde o nascimento do Unix at os dias atuais, alm das funcionalidades

    bsicas e especiais, vrias outras funes foram agregadas ao Sistema Operacional,

    tornando-o um sistema de grande complexidade e aplicabilidade, ou seja, um Sistema

    Operacional multi-purpose.

    Arquitetura do sistema operacional Unixq 1 Independncia do hardware.

    1 Kernel faz a interface entre o hardware e o restante do sistema.

    1 Gerenciador de processos faz parte do kernel.

    O Unix foi projetado com arquitetura em camadas, o que permite maior independncia

    do hardware utilizado. Para que isso seja possvel, apenas uma pequena parte do sistema

    possui acesso direto ao hardware e se comunica com o restante do sistema.

    Somente o kernel depende do hardware, permitindo que quase todo o sistema seja reapro-

    veitado na migrao entre diferentes mquinas. O interpretador de comandos, chamado de

    shell, no faz parte do kernel do sistema, e uma excelente linguagem de programao, que

    torna o Unix um sistema bastante verstil.

    O gerenciador de processos faz parte do kernel do Sistema Operacional e o responsvel

    pelo gerenciamento dos processos em execuo e pela diviso do tempo de processamento

    da CPU entre esses processos. Cada processo necessita de um perodo de tempo reservado

    para que possa ser executado pela CPU. Depois que esse tempo se esgota, outro processo

    passa a ser processado e o anterior passa a aguardar por um novo perodo de tempo para

    ser novamente processado. A cada processo atribuda uma prioridade, que se altera

  • 3 C

    aptu

    lo 1

    - H

    ist

    rico

    e in

    stal

    ao

    dinamicamente conforme a execuo de um algoritmo no kernel do Unix. O gerenciador de

    processos tambm responsvel por gerenciar uma rea em disco que se constitui numa

    extenso da memria RAM principal da mquina e que utilizada em casos de esgotamento

    dessa memria. A rea chamada de rea de swap, para onde so copiadas temporaria-

    mente imagens dos processos, liberando, assim, parte de memria para permitir que outros

    processos possam ser executados. A Figura 1.1 mostra como dividida a arquitetura do

    Sistema Operacional Unix. Essa diviso proporciona a esse sistema diversas caractersticas,

    que veremos a seguir.

    Caractersticas principais

    q 1 Portabilidade. 1 Multiusurio.

    1 Multiprocessamento.

    1 Estrutura hierrquica de diretrios.

    1 Interpretador de comandos (shell).

    1 Pipelines.

    1 Utilitrios.

    1 Desenvolvimento de software.

    1 Maturidade.

    O Unix um Sistema Operacional muito flexvel, com grande nmero de funcionalidades.

    Principais caractersticas:

    1 Portabilidade: o Unix portvel, ou seja, pode ser adaptado facilmente para ser exe-cutado em diferentes arquiteturas de hardware. Sua adequao a um novo hardware

    rpida e exige pequeno esforo de programao. Talvez essa seja a caracterstica mais

    importante desse Sistema Operacional, que permitiu sua adoo por centenas de fabri-

    cantes diferentes. A portabilidade se estende, tambm, para os programas e pacotes de

    software escritos para o Unix, o que promoveu grande desenvolvimento de aplicativos e

    intensificou sua expanso no mercado.

    1 Multiusurio: o Unix foi concebido para ser um sistema multiusurio, suportando cone-xes simultneas de diversos usurios. Com isso, possvel melhor utilizao da capaci-

    dade de processamento e da manipulao e armazenamento das informaes do sistema

    de computao. Para isso, o Sistema Operacional possui ferramentas de segurana para

    permitir o isolamento das atividades de cada usurio.

    Figura 1.1 Diviso do Sistema Operacional Unix.

  • 4 In

    trod

    uo

    ao

    Linu

    x

    1 Multiprocessamento: a funcionalidade de multiprocessamento do Unix permite a um usurio executar mltiplas tarefas simultaneamente. O sistema pode acessar um arquivo

    ou imprimir um relatrio ao mesmo tempo em que o usurio pode editar um documento,

    possibilitando melhor produtividade e reduzindo a ociosidade tanto do processador

    quanto dos recursos de entrada e sada do sistema. A Figura 1.2 ilustra o conceito de

    multiprocessamento.

    Processos Time slice Swap

    3

    1

    3

    2

    4

    1

    2

    3

    4

    Multi processamento

    1 Estrutura hierrquica de diretrios: o sistema de armazenamento de informaes possui estrutura hierrquica, como mostra a Figura 1.3. A estrutura hierrquica uma

    forma de arquivamento natural, pois pode ser comparada, por exemplo, estrutura

    organizacional hierrquica de uma empresa e, consequentemente, torna mais fcil a

    localizao e a manipulao de informaes distribudas por essa estrutura.

    Folha de pagamento

    / (root)

    Vendas Compras

    Leste Oeste

    Relatriosde venda

    Relatriosde vendas

    Arquivosde contasa pagar

    Arquivosde salrios

    Arquivosde cartesde ponto

    1 Interpretador de comandos (shell): a interao do usurio com o Sistema Operacional Unix controlada por um poderoso interpretador de comandos, conhecido como shell. Esse

    interpretador suporta vrias funcionalidades, como o redirecionamento de entrada e sada, a

    manipulao de grupos de arquivos com apenas um comando, a execuo de sequncias de

    comandos predefinidos, entre outras, facilitando a execuo de tarefas complexas.

    1 Pipelines: o uso de pipelines ou pipes permite conectar a sada de um comando com a entrada de outro, como mostra a Figura 1.4. Essa uma das mais famosas caractersticas do

    Unix e utilizada para a execuo de funes mais complexas. Muitas vezes, novas tarefas

    exigem apenas que programas j existentes e tambm utilitrios sejam combinados para a

    execuo de uma nova funo, sem a necessidade de desenvolver um novo programa.

    Comando 4Comando 3Comando 2Comando 1

    $ Comando1 | Comando2 | Comando3 | Comando4

    Entradapadro

    Sadapadro

    Figura 1.2 Multiprocessa-mento: execuo de mltiplas tarefas ao mesmo tempo.

    Figura 1.3 Estrutura de hierar-quia do sistema de armazenamento de informaes.

    Figura 1.4 Uso de pipelines ou pipes.

  • 5 C

    aptu

    lo 1

    - H

    ist

    rico

    e in

    stal

    ao

    1 Utilitrios: o Unix incorpora centenas de programas utilitrios para funes como: seleo de dados, processamento de texto e busca de informaes. Essas facilidades formam um

    conjunto de ferramentas que permitem a execuo de diversos tipos de tarefas.

    1 Desenvolvimento de software: o Unix tambm conhecido como uma plataforma de desenvolvimento de software, pois possui ferramentas que suportam todas as fases do

    processo de desenvolvimento, desde a preparao at a depurao. Devido sua porta-

    bilidade, esses softwares podem ser utilizados em microcomputadores ou em computa-

    dores de grande porte.

    1 Maturidade: o Unix um Sistema Operacional slido, testado e aprovado pelo mercado, que vem sendo utilizado h mais de trs dcadas, tendo atingido o estado de maturi-

    dade. Dessa forma, alm de sua flexibilidade e inmeras funcionalidades, tem tambm

    como caracterstica a confiabilidade, o que o torna, atualmente, o Sistema Operacional

    preferido para sistemas que suportam aplicaes crticas.

    Histrico do UnixO Unix surgiu no Bell Laboratories em 1969, a partir do trabalho de Ken Thompson na

    evoluo de outro Sistema Operacional, o Multics. No desenvolvimento do Unix, Thompson

    sentiu a necessidade de escrev-lo para diferentes tipos de arquiteturas e decidiu fazer o

    Unix independentemente da mquina em que fosse executado, criando a linguagem B. Essa

    linguagem evoluiu para a linguagem C, desenvolvida por Dennis Ritchie, o que permitiu

    reescrever o Unix e torn-lo portvel para diferentes arquiteturas. Devido caracterstica de

    portabilidade do Unix, no incio da dcada de 1980 foram desenvolvidos diversos pacotes de

    programas, que foram utilizados por diferentes fabricantes, tornando mundialmente conhe-

    cidos o Unix, a linguagem C e seus aplicativos.

    O Unix se tornou um Sistema Operacional bastante conhecido, no somente no mundo acad-

    mico, como tambm no meio comercial. Os sistemas Unix-based e similares ao Unix prolife-

    raram, sendo oferecidos por diversos fabricantes de computadores, desde os pessoais at os

    mainframes, sempre mantendo suas caractersticas bsicas, tornando-o um padro de fato.

    Verses do Unixq 1 Unix Sexta Edio.

    1 PWB Unix.

    1 Unix Verso 7.

    1 Unix System III.

    1 Unix System V.

    1 Berkeley Unix (BSD).

    As verses do Unix so aquelas licenciadas exclusivamente pela AT&T, que podem ostentar o

    nome Unix. Uma variedade de verses, algumas mais famosas e outras menos foram desen-

    volvidas desde seu surgimento. Principais verses do Unix:

    1 Unix Sexta Edio: a mais antiga verso licenciada, na maioria dos casos para institui-es educacionais, no havendo nenhuma verso comercial dessa verso. Essa verso foi

    lanada em 1975.

    1 PWB Unix: verso especializada desenvolvida pelo Bell Labs, que inclui facilidades para desenvolvimento de software por grandes equipes de programadores. Essa verso foi

    lanada em 1977.

  • 6 In

    trod

    uo

    ao

    Linu

    x

    1 Berkeley Unix: grande parte do desenvolvimento do Unix se deu na Universidade de Berkeley, na Califrnia, que se tornou um centro de atividades nos anos 70, externo ao Bell Labs/AT&T.

    As verses 4.1 BSD ou 4.2 BSD tinham seu prprio conjunto de utilitrios e incorporavam

    suporte para superminicomputadores VAX, o editor de textos vi, e um shell especialmente

    adaptado para programao em C, chamado C Shell (csh). Esse sistema foi muito utilizado no

    somente nas universidades como tambm nas aplicaes cientficas e de engenharia. O System

    V, da AT&T, incorporou muitos desaes melhoramentos. Essa verso foi lanada em 1977.

    1 Unix Verso 7: primeira verso licenciada comercialmente pela AT&T, com maior nmero de instalaes em microcomputadores. Essa verso foi lanada em 1979.

    1 Unix System III: atualizao da verso 7, que incorporou as caractersticas da PWB. Foi um grande sucesso nos anos 80, disponibilizado pela maioria dos fabricantes de micro-

    computadores. Essa verso foi lanada em 1982.

    1 Unix System V: incorporou melhorias no desempenho e teve ampliada a comunicao entre processos. Foi a primeira verso licenciada pela AT&T com suporte de software.

    Essa verso foi lanada em 1983.

    A AT&T licencia o software Unix, mas no a marca registrada Unix, que de uso exclusivo

    da Bell Labs. Dessa forma, o fabricante adquire o cdigo-fonte do sistema, mas no pode

    utilizar o nome Unix, tendo de atribuir um nome diferente, o que contribui para a prolife-

    rao de nomes, gerando confuso em relao s verses. Esses sistemas geralmente so

    compatveis entre si, sendo chamados de sistemas Unix-based. Os principais so:

    1 AIX: desenvolvido pela IBM em 1986, inicialmente para a plataforma IBM 6150. Atual-mente suporta diversos tipos de arquitetura. Entre suas caractersticas podemos des-

    tacar sua ferramenta de gerenciamento do sistema, o SMIT.

    1 Xenix: desenvolvido pela Microsoft e posteriormente disponibilizado para a Apple e para o IBM PC, tendo sido uma das verses mais conhecidas do Unix.

    1 HP-UX: desenvolvido em 1984 pela HP, um dos sistemas Unix mais utilizados atual-mente. baseado na verso System V.

    1 SunOS: desenvolvido pela Sun Microsystems em 1982. Inicialmente, o SunOS era baseado no Unix BSD, mas a partir da verso 5.0 teve seu nome alterado para Solaris e passou a

    ser baseado no System V Release 4.

    Para o desenvolvimento desses sistemas Unix-based, os fabricantes de hardware devem

    pagar uma taxa de licena para a AT&T, que pode chegar a milhares de dlares por sistema

    vendido, dependendo do nmero de usurios que suportam, o que praticamente impossibi-

    litou a utilizao do Unix para aplicaes pessoais e em empresas de pequeno porte.

    qSistemas Unix-based: 1 Licenciados pela AT&T: cdigo-fonte do Unix com nome diferente:

    2 AIX, Xenix, HP-UX, SunOS etc.

    1 Verses livres baseadas no Unix BSD:

    2 FreeBSD, NetBSD, OpenBSD etc.

    Alm dessas, surgiram na dcada de 1990 verses livres de Unix como FreeBSD, NetBSD e

    OpenBSD, todas baseadas na distribuio BSD. Em reao a essas restries, comearam

    a surgir sistemas similares ao Unix que simulavam as caractersticas externas do sistema,

    proporcionando aos usurios as mesmas facilidades e comandos, e permitindo executar os

    mesmos programas. Esses sistemas no utilizam o cdigo-fonte do Unix e podem ser vendidos

    sem pagar royalties AT&T. Alguns exemplos desses sistemas so: UNOS, Unetix e Coherent.

  • 7 C

    aptu

    lo 1

    - H

    ist

    rico

    e in

    stal

    ao

    Alguns desses sistemas similares ao Unix mostraram grandes variaes nas interfaces gr-

    ficas, protocolos de redes, utilitrios de gerenciamento, administrao de perifricos, entre

    outras. O desenvolvimento de um cdigo-fonte novo, independente da AT&T, e que constitu-

    sse de fato um padro surgiu, ento, como uma necessidade.

    Similares Unixq 1 Desenvolvimento de um cdigo-fonte novo, independente da AT&T.

    1 UNOS, Unetix e Coherent.

    1 Grandes variaes nas interfaces grficas, protocolos de redes, utilitrios de gerencia-mento e administrao de perifricos.

    Andrew Tanenbaum, pesquisador na rea de redes de computadores e Sistemas Opera-

    cionais, desenvolveu um prottipo de Sistema Operacional baseado no Unix, chamado

    de Minix, descrito em Operating System: Design and Implementation (1987). O Minix era

    utilizado em cursos de cincia da computao em diversas universidades, entre elas, a Uni-

    versidade de Helsinque, onde um estudante chamado Linus Torvalds decidiu escrever seu

    prprio Sistema Operacional. Seu objetivo era fazer um Minix melhor que o Minix. Torvalds

    desenvolveu ento os primeiros kernels do Linux, que j processavam alguns programas

    de interesse geral, e abriu seu cdigo-fonte na internet, onde cada um poderia desenvolver

    seus prprios recursos sobre um kernel de conhecimento comum. Essa a filosofia do sof-

    tware livre, a mesma que proporcionou o desenvolvimento acelerado da internet.

    A adeso de estudantes, interessados, curiosos, profissionais e at hackers contribuiu para

    que a primeira verso considerada estvel do Linux estivesse pronta para distribuio no

    final de 1993. O projeto GNU, da Free Software Foundation, uma organizao que apoia

    projetos de desenvolvimento de software livre, e os trabalhos da Universidade de Berkeley,

    que produziram o BSD Unix, foram duas importantes fontes de desenvolvimento dos atuais

    utilitrios e aplicativos do Linux.

    Para pensar

    Uma das vantagens de seu cdigo estar disponvel na internet ter vrios grupos

    dedicados a aprimorar ferramentas e recursos para o sistema, fazendo com que

    este esteja sempre atualizado, seguro, estvel e confivel, constituindo uma plata-

    forma de desenvolvimento que se tornou um padro de fato.

    O Linux est em franco crescimento no mercado, disponvel em diversos idiomas, inclusive em

    portugus, com interfaces grficas, processadores de texto, sistemas gerenciadores de bancos

    de dados, suporte a redes de excelente qualidade e uma infinidade de outras aplicaes.

    Na verdade, existem atualmente diversas distribuies do Linux, que veremos a seguir.

    q 1 Linus Torvalds escreveu seu prprio Sistema Operacional. Seu objetivo era desen-volver um Minix melhor que o Minix.

    1 Apoio do GNU e da Free Software Foundation.

    1 Desenvolvimento do BSD Unix.

    1 Adeso de estudantes, interessados, curiosos, profissionais, hackers etc.

  • 8 In

    trod

    uo

    ao

    Linu

    x

    Distribuies Linuxq 1 Como funciona a GPL?

    1 A empresa obtm gratuitamente o ncleo do Linux, desenvolve pacotes e comercializa-os.

    1 Licenas de software tradicionais restringem o acesso ao cdigo-fonte dos pro-gramas. A GPL garante a liberdade de compartilhar e alterar o software livre, man-

    tendo seu acesso a todos os usurios.

    As verses do Linux so obtidas por meio das distribuies de software. As distribuies

    de software do Linux so mecanismos de fornecimento de software, desenvolvidos pelo

    projeto GNU da Free Software Foundation (FSF), que seguem a General Public License

    (GPL). Enquanto as licenas de software tradicionais servem para restringir o acesso ao

    cdigo-fonte dos programas, evitando o compartilhamento e a alterao destes, a GPL tem

    como objetivo garantir a liberdade de compartilhar e alterar o software livre, fornecendo

    acesso irrestrito ao seu cdigo fonte. Os fabricantes protegem seus softwares por inter-

    mdio do copyright. Para criar um contraste, o FSF criou um novo nome, que d a ideia

    de um conceito oposto ao do direito autoral, o copyleft. Na verdade, o copyleft da FSF se

    baseia no mesmo instrumento legal utilizado pelos proprietrios de software, o copyright,

    mas a GPL inclui no copyright termos especiais de licenciamento que garantem a liberdade

    de uso do software. Esses termos conferem a qualquer usurio o direito de utilizar, modi-

    ficar e redistribuir o software livre ou qualquer software dele derivado.

    Por exemplo: a GPL garante a uma empresa obter gratuitamente o kernel do Linux e traba-

    lhar nele, de forma a melhorar os textos das mensagens do sistema ou traduzi-los para um

    determinado idioma, e a fazer a documentao deste pacote e vend-lo como uma distri-

    buio Linux.

    A partir do copyleft, qualquer usurio pode usar, alterar e redistribuir o software livre.

    Muitas distribuies Linux comerciais surgiram dessa maneira, acoplando ao kernel utili-

    trios, interfaces grficas, aplicaes matemticas e cientficas, sistemas gerenciadores de

    bancos de dados, entre outros, que so colocados no mercado junto com a documentao e

    as instrues para a instalao do sistema.

    A seguir, so apresentadas algumas caractersticas das principais distribuies Linux.

    Exerccio de fixao 1 e Entendendo as licenas Unix e GPL

    Quais as diferenas entre as licenas do Unix e da GPL do Linux? Tendo como base o

    enfoque do usurio, dos desenvolvedores de aplicativos, dos fabricantes de hardware e dos

    distribuidores de software livre:

    1 Liste as vantagens da GPL.

    1 Liste as vantagens dos sistemas Unix-based.

    Red Hat Enterprise Linux

    q 1 Interface grfica X-Window e o KDE desktop para gerenciamento de janelas. 1 Especializaes para verses cliente e servidor, e aplicativos como sutes de escritrio.

  • 9 C

    aptu

    lo 1

    - H

    ist

    rico

    e in

    stal

    ao

    q 1 Gerenciadores de pacotes RPM e YUM automatizam o processo de instalao e atuali-zao do sistema.

    1 Verstil, aceita diversas opes de configurao de recursos do sistema.

    1 Patrocnio do projeto Fedora.

    A distribuio Red Hat Enterprise Linux incorpora facilidades, como programas de configurao

    de recursos do sistema, interfaces grficas, especializaes para verses cliente e servidor e

    aplicativos como sutes de escritrio. Com ela, fornecido o ambiente grfico X-Window, con-

    tendo o gerenciador de janelas KDE, desenvolvido por um projeto de software livre.

    Uma grande vantagem dessa distribuio a facilidade de instalao, excelente para os

    iniciantes em Linux. Funcionalidades como pacotes pr-compilados e gerenciadores de

    pacotes como o RPM e o YUM, que automatizam todo o processo de instalao e a atuali-

    zao do sistema, facilitam o processo de administrao.

    A Red Hat est patrocinando o projeto Fedora juntamente com a comunidade formada por

    desenvolvedores de software, que do suporte ao desenvolvimento de software livre.

    O objetivo desse projeto da comunidade Linux manter um Sistema Operacional completo,

    de aplicao geral, com o cdigo-fonte totalmente aberto e gratuito.

    CentOS

    q 1 Compatvel com Red Hat Enterprise Linux. 1 Instalao simples em modo grfico ou texto.

    1 Suporte a vrios idiomas, inclusive o portugus.

    1 Ambiente grfico KDE ou Gnome.

    1 Rico em ferramentas administrativas e grficas.

    1 Gerenciamento de pacotes com RPM e YUM.

    1 Suporte comercial opcional por meio de revendedores.

    A distribuio CentOS deriva da distribuio Red Hat Enterprise Linux (RHEL), de acordo

    com as regras de redistribuio definidas pela Red Hat Enterprise, que so: remoo de

    softwares proprietrios de terceiros, remoo de imagens, logotipos e textos referenciando

    a Red Hat, desde que no faam parte de notas de copyright, entre outras. O CentOS dis-

    tribudo sob a licena GNU/GPL para aplicaes com servidores de pequeno, mdio e grande

    porte e mantido por uma ativa e crescente comunidade de usurios denominada CentOS

    Project. Alm disso, possui diversas vantagens sobre outras distribuies: rpida correo

    de bugs e vulnerabilidades, grande rede de repositrios para download, vrias opes de

    suporte como chat, IRC, listas de e-mail, fruns e um FAQ dinmico e abrangente. Tambm

    possvel obter suporte comercial oferecido por empresas parceiras.

    Debian

    q 1 Desenvolvido por um grupo diversificado de programadores. 1 Preferido pelos programadores mais experientes.

    1 Pacotes pr-compilados no formato DEB.

    1 Ferramentas de gerenciamento de pacotes: APT e Aptitude.

    Para mais informaes, acesse http://www.redhat.com e http://fedoraproject.org

    w

    Visite http://www.centos.org para saber mais detalhes sobre a distribuio CentOS.

    w

  • 10

    In

    trod

    uo

    ao

    Linu

    x

    A distribuio Debian foi desenvolvida por um grupo de hackers e o preferido entre os

    programadores mais experientes. Possui estrutura especial de pacotes de software

    pr-compilados no formato DEB e ferramentas de gerenciamento de pacotes muito vers-

    teis, como o APT e o Aptitude.

    Ubuntu

    q 1 Desenvolvido com foco em segurana. 1 Edies para desktop e servidores.

    1 Garantia de atualizaes de at 5 anos para as edies LTS e 18 meses para as demais.

    1 Instalao simples.

    1 Ferramentas de gerenciamento de pacotes: APT e Aptitude.

    1 Suporte a vrios idiomas, inclusive o portugus.

    A distribuio Ubuntu mantida por uma comunidade de usurios e baseada na distri-

    buio Debian. O Ubuntu contm todas as ferramentas necessrias, desde processadores

    de texto e leitores de e-mails a servidores web e ferramentas de desenvolvimento, alm de

    utilizar os gerenciadores de pacotes APT e Aptitude.

    O Ubuntu desenvolvido com foco em segurana, disponibilizando atualizaes de

    segurana gratuitas por pelo menos 18 meses para desktops e servidores. Com a verso

    Long-Term Support (LTS) adquire-se trs anos de suporte para desktops e cinco anos para

    servidores. No cobrado nenhum valor pela verso LTS.

    Mandriva Linux

    q 1 Fuso da Mandrake com a Conectiva. 1 Foco no uso domstico.

    1 Ambiente grfico avanado.

    1 Compatvel com os perifricos nacionais, como monitores, teclados e impressoras.

    1 Instalao muito simples.

    1 Manuais e textos de apoio traduzidos para o portugus.

    1 Baseada na distribuio Red Hat Enterprise Linux.

    1 Suporte local e facilidades para a instalao do sistema.

    uma distribuio franco-brasileira, mantida pela empresa Mandriva, formada por meio

    da fuso da empresa francesa Mandrake e da brasileira Conectiva. Seu nome a fuso dos

    nomes das duas empresas. Semelhante ao Windows em vrios aspectos, uma distribuio

    voltada para desktops, tanto para uso domstico quanto corporativo. Possui vrias opes

    de idioma para instalao, incluindo o portugus brasileiro.

    O instalador do Mandriva um dos mais amigveis entre as distribuies Linux. As confi-

    guraes podem ser realizadas tanto em modo grfico quanto em modo texto, e dispem

    de alguns programas de manuteno de sistema chamados de Drakes, entre eles o

    MouseDrake, para configurar o mouse, o DiskDrake, para configurar as parties de disco

    rgido, e Drakconnect, para configurar conexes de rede.

    Acesse o endereo http://www.debian.org para saber mais detalhes.

    w

    Para mais detalhes, acesse http://www.ubuntu.com (pgina em ingls).

    w

    Para mais detalhes, acesse o site http://www.mandriva.com. No site, h um link para a comunidade de desenvolvedores.

    w

  • 11

    C

    aptu

    lo 1

    - H

    ist

    rico

    e in

    stal

    ao

    Slackware

    q 1 Uma das mais populares distribuies Linux. 1 timo desempenho e estabilidade, que o indicam para utilizao em servidores

    de redes.

    1 Permite trabalhar com pacotes nativos da distribuio Red Hat Enterprise Linux.

    1 Ambiente grfico X-Window e gerenciador de janelas fvwm, com estilo similar interface grfica do Microsoft Windows.

    1 Pacotes de segurana avisam, via e-mail, sobre alteraes no sistema.

    1 Instalao complexa.

    A distribuio Slackware tambm uma das mais populares distribuies Linux, com boa

    penetrao de mercado. Seus pontos fortes so o desempenho e a estabilidade, que a

    indicam para utilizao em servidores. Alm disso, possui conversor que permite trabalhar

    com pacotes nativos da distribuio Red Hat Enterprise Linux. Vem com ambiente grfico

    X-Window e o gerenciador de janelas fvwm, que possui design similar ao da interface do

    Microsoft Windows.

    Essa distribuio ainda conta com pacotes de segurana que permitem avisar, via e-mail,

    que uma funo de inicializao do sistema ou um script foi alterado e que isso pode causar

    transtornos ao sistema. Sua instalao bem mais complexa.

    Exerccio de fixao 2 e Conhecendo as distribuies Linux

    Acesse o site das principais distribuies Linux, verifique o enfoque de cada distribuio

    (uso em servidores, uso em estaes de trabalho, uso domstico etc.), verifique tambm se

    as distribuies possuem suporte comercial, listas de discusso, suporte a mltiplos idiomas

    e plataformas, e examine a forma de obt-las (via download, compra de CDs ou DVDs etc.).

    1 Red Hat.

    1 SlackWare.

    1 CentOS.

    1 Debian.

    1 Mandriva.

    1 Ubuntu.

    A escolha da distribuio LinuxSo muitas as distribuies Linux hoje, algumas com enfoque para uso em servidores visando

    mais segurana e alta disponibilidade, outras para uso em estaes de trabalho visando

    ambiente grfico amigvel, assim como para uso domstico, jogos, laptops ou outras finali-

    dades. Alm disso, algumas fornecem suporte comercial e garantia de atualizaes. Antes de

    escolher uma distribuio necessrio conhecer um pouco sobre cada uma delas (pelo menos

    as principais) e ter em mente a finalidade da instalao. Para a nossa finalidade acadmica,

    vamos escolher uma distribuio que possua algumas das seguintes caractersticas:

    1 Suporte ao nosso idioma.

    1 Estabilidade no mercado.

    1 Ambiente grfico com assistente de instalao.

    Saiba mais sobre a distribuio Slackware no endereo http://www.slackware.com.

    w

  • 12

    In

    trod

    uo

    ao

    Linu

    x

    1 Deteco automtica de hardware.

    1 Ambiente grfico.

    1 Gerenciador de pacotes.

    1 Programas utilitrios, como editores de texto, navegadores para a internet, editores de imagens, reprodutores de udio e vdeo.

    Para este curso, escolhemos a verso mais atual do CentOS por ser uma verso gratuita

    baseada no Red Hat Enterprise Linux, que uma distribuio bastante slida no mercado.

    Razes para utilizar o Linuxq 1 Software livre.

    1 Flexibilidade para instalao e reinstalao.

    1 Sem cdigos-chave de licenciamento.

    1 Custo significativamente menor.

    1 Tendncia de mercado.

    1 Sistema Operacional da famlia Unix que mais cresce em nmero de usurios.

    Existem diversas razes para a escolha do Linux como Sistema Operacional. Trata-se de um

    software livre, com maior flexibilidade para instalao e reinstalao, sem a necessidade de

    utilizao de cdigos-chave e licenas. No ambiente Linux, os softwares so normalmente

    gratuitos, o que praticamente elimina o custo com instalaes de software. Outro bom

    motivo estar atualizado com as tendncias do mercado, j que o Linux vem despontando

    como o Sistema Operacional da famlia Unix que mais cresce em nmero de usurios. Ins-

    talar um Sistema Operacional to complexo quanto o Linux no uma tarefa simples, mas

    sem dvida compensa o trabalho. A seguir sero apresentados os requisitos e os passos

    necessrios para a instalao desse Sistema Operacional.

    Hardwares suportadosNa URL http://www.linux-drivers.org podemos consultar a lista de hardwares compatveis

    mantida pelas principais distribuies Linux. necessrio investigar a compatibilidade de

    um hardware antes de compr-lo. Alguns distribuidores possuem uma classificao adi-

    cional, listando hardwares e softwares certificados, isto , que foram oficialmente testados

    atravs de um programa de certificao que garante o funcionamento com o Linux.

    qComo encontrar hardware compatvel? 1 Acesse http://www.linux-drivers.org.

    1 Linux Hardware Compatibility List & Drivers: ndice de lista de hardwares compatveis mantida pelas principais distribuies Linux.

    Classificaes:

    1 Compatvel: suportado pelo kernel do Linux.

    1 Certificado: garantia de funcionamento por algum distribuidor.

    1 Driver em verso Alpha ou Beta: o kernel ainda no suporta, mas pode ser compilado e adicionado como um mdulo. No h nenhuma garantia de funcionamento e no

    recomendado em ambiente de produo.

    1 No suportado: hardwares testados com funcionamento no confirmado.

  • 13

    C

    aptu

    lo 1

    - H

    ist

    rico

    e in

    stal

    ao

    qNem todo hardware suporta o Sistema Operacional Linux: 1 Projetos especiais de hardware para o Microsoft Windows.

    1 Bibliotecas de drivers cujo cdigo-fonte no aberto.

    1 Incompatibilidade acontece mesmo entre os Sistemas Operacionais da Microsoft.

    1 Drivers de perifricos mais antigos precisam ser reescritos.

    1 Vantagens do software livre, com a garantia de acesso aos cdigos-fonte.

    Lista de verificao de hardware

    A maior parte dos dispositivos de hardware detectada automaticamente durante o

    processo de instalao. Os drivers desses dispositivos j esto includos nas mdias de

    instalao, embora as distribuies Linux no incluam drivers para todos os dispositivos de

    hardware. O ideal montar uma lista de verificao de hardware para o computador que

    ser utilizado para a instalao, como a apresentada na tabela da Tabela 1.1.

    Dispositivo Caractersticas Dados coletados

    CPU Tipo e velocidade.

    Memria RAM Capacidade.

    Teclado Marca e modelo.

    Mouse Protocolo, marca, modelo e nmero de botes.

    Discos rgidos Marca, modelo e capacidade.

    Drive de CD/DVD Marca e tipo.

    Placa de rede Marca, modelo, tipo e velocidade.

    Placa de vdeo Marca, modelo e quantidade de memria RAM.

    Monitor Marca e modelo.

    Placa de som Marca e modelo.

    Dispositivos USB Marca e modelo.

    Requisitos mnimos de hardware

    Antes de instalar o Sistema Operacional Linux, devemos conhecer algumas informaes do

    nosso hardware. Neste item conheceremos as configuraes mnimas de hardware reque-

    ridas para que se possa instalar o Linux. O computador deve atender a alguns requisitos

    mnimos para poder executar o Sistema Operacional Linux.

    1 Unidade de Processamento Central (UCP): mesmo sendo possvel instalar o Linux em computadores com CPU Intel 80386 e verses anteriores, se for utilizado somente o modo

    texto. Para suporte total, incluindo o ambiente grfico, recomendado o uso de processa-

    dores Pentium ou posteriores. O Linux tambm suporta processadores Intel de 64 bits, AMD

    de 32 e 64 bits, IBM PowerPC e alguns processadores utilizados em computadores de grande

    porte. O procedimento de instalao que ser visto aqui vlido para a famlia de proces-

    sadores Intel e AMD de 32 ou 64 bits. Alm do modelo do processador, deve-se atender aos

    requisitos de velocidade de processamento. Para que se obtenha desempenho satisfatrio,

    deve-se ter um processador com velocidade igual ou maior de um Pentium III de 700 MHz.

    Tabela 1.1 Lista de verificao

    de hardware.

  • 14

    In

    trod

    uo

    ao

    Linu

    x

    1 Memria: para instalar e utilizar o Sistema Operacional Linux necessrio somente 4 MB de memria RAM, caso seja utilizado somente o modo texto, e 64 MB de memria RAM,

    se usado o modo grfico. Mas o recomendado para atingir performance satisfatria de

    pelo menos 512 MB de memria RAM.

    1 Drives: para instalar e utilizar o Sistema Operacional Linux necessrio o mnimo de 2 GB de espao livre no disco rgido. possvel termos dois ou mais sistemas operacionais

    instalados no mesmo disco rgido, porm, cada um necessita ter seu prprio esquema

    de particionamento. Alm do disco rgido, conveniente ter um drive de CD/DVD para

    facilitar a instalao do sistema.

    Neste item veremos como importante documentar todas as informaes do sistema que

    sero solicitadas durante o processo de instalao do Linux, e tambm as informaes

    sobre as configuraes pr-existentes, no caso de migrao do Windows para o Linux.

    Instalando o LinuxNeste item veremos como criar uma mquina virtual para instalarmos o Linux e o passo a

    passo do programa de instalao.

    Criao da mquina virtual

    O software utilizado para a criao e gerenciamento de mquinas virtuais o Virtual Box.

    A seguir so apresentados os passos para fazer a criao da mquina virtual que ser utili-

    zada para a instalao do CentOS.

    1 Nome da VM e Tipo de Sistema Operacional: no campo Nome, preencher com o valor CentOS - ADS-001. No campo OS Type, selecionar Linux na opo Sistema Opera-

    cional e Red Hat (64 bit) na opo Verso.

    1 Memria: selecionar 1 GB de memria RAM.

    1 Disco Rgido Virtual: marcar as opes Disco de Boot e Criar novo disco rgido.

    1 Assistente de criao de discos virtuais: marcar a opo VDI (VirtualBox Disk Image).

    1 Detalhes do armazenamento de disco virtual: marcar a opo Dinamicamente alocado.

    1 Localizao e tamanho do arquivo de disco virtual: no campo Localizao, preencher com o valor CentOS - ADS-001 e, no campo Tamanho (S), selecionar 15,1 GB de espao em disco.

    1 Sumrio: essa tela apresentar as opes selecionadas durante a criao do disco virtual. Confirme se os dados esto corretos e em seguida clique no boto Criar.

  • 15

    C

    aptu

    lo 1

    - H

    ist

    rico

    e in

    stal

    ao

    Para iniciar a mquina virtual, basta selecion-la, como mostra a Figura 1.5, e clicar no boto

    Iniciar. Na primeira vez que a mquina virtual iniciada, o assistente de primeira execuo

    automaticamente executado. Esse assistente possibilita a seleo da mdia de instalao

    do Sistema Operacional na mquina virtual. Nessa etapa deve ser selecionado o drive de

    CD/DVD do hospedeiro. Aps a seleo do local onde est inserida a mdia de instalao,

    exibida uma tela com os dados selecionados. Confirme se esto corretos e em seguida

    clique no boto Iniciar.

    Programa de instalao do Linux

    Este item mostra passo a passo como instalar a distribuio CentOS. Com base nele, o aluno

    ter condies de instalar qualquer outra distribuio, pois, de um modo geral, mesmo que

    algumas etapas apaream em sequncia diferente, as informaes necessrias devero ser

    as mesmas. Para iniciar a instalao do Linux utilizando um DVD, primeiramente neces-

    srio reconfigurar o BIOS do PC para que o boot seja feito atravs do drive do DVD. Para

    isso, devemos entrar na tela de configurao do BIOS e alterar a ordem de inicializao, de

    modo que o drive de DVD seja o primeiro na ordem de prioridade de boot.

    1 Teste de integridade da mdia de instalao: a primeira tela do programa de insta-lao apresenta a opo de testar a integridade da mdia de instalao. Geralmente no

    necessrio executar esse teste. Para passar adiante sem fazer o teste de integridade,

    selecione a opo Skip.

    1 Iniciando a instalao: se o computador ou mquina virtual possurem pelo menos 640 MB de memria RAM, o ambiente grfico de instalao ser aberto por padro.

    Caso contrrio, uma mensagem informar que a quantidade de memria existente

    insuficiente para a instalao no modo grfico e iniciar a instalao no modo texto.

    Figura 1.5 Iniciando a

    mquina virtual.

  • 16

    In

    trod

    uo

    ao

    Linu

    x

    1 Seleo do idioma: essa tela mostra os idiomas disponveis para o processo de insta-lao. Escolha Portuguese (Brazilian) (Portugus (Brasil)).

    1 Seleo do teclado: em seguida deve ser selecionado o modelo do teclado. Com base no idioma selecionado antes, o instalador sugere o modelo mais apropriado, que neste caso

    o Portugus Brasileiro (ABNT2).

    1 Selecionando o tipo de dispositivo que ser utilizado na instalao: esta etapa apresenta duas opes: Basic Storage Devices, que inclui discos IDE, SATA, SCSI etc. e

    Specialized Storage Devices, que inclui dispositivos de armazenamento mais complexos

    como Storage Area Networks (SANs). Selecione a opo Basic Storage Devices.

    1 Inicializando o disco rgido: neste momento o instalador analisa o disco rgido e caso no encontre nenhum sistema de arquivos, emitir um aviso solicitando a inicializao do

    disco. Esse processo apagar todas as informaes existentes no disco. Se a instalao

    estiver sendo feita em uma mquina virtual, no se preocupe, pois essa ao no apagar

    nenhuma informao no hospedeiro. Clique no boto Sim, descarte qualquer dado.

    1 Configurao da rede: nesta etapa podem ser utilizados dois tipos de configurao:

    1 Configurao automtica via Dynamic Host Configuration Protocol (DHCP): essa a opo padro, onde deve ser informado somente o nome da mquina. As outras

    informaes necessrias para integrao rede e acesso internet, como endereo IP,

    mscara de rede, gateway, servidores de DNS etc. so fornecidas automaticamente pelo

    servidor DHCP da rede.

    1 Configurao manual: para configurar a rede manualmente, preciso clicar no boto Configure Network. Nesse caso, necessrio possuir um endereo IP, mscara de rede,

    endereo IP do gateway e dos servidores de DNS para integrao rede e acesso internet.

    1 Seleo do Fuso Horrio: nesta etapa definido o fuso horrio de acordo com a locali-zao fsica do sistema. Selecione a opo Amrica/So Paulo e deixe marcada a opo

    O relgio do sistema utiliza o UTC.

    1 Senha de Administrador (usurio root): o administrador do sistema possui plenos pri-vilgios, podendo instalar, alterar ou remover qualquer programa, arquivo ou diretrio.

    A escolha dessa senha deve ser criteriosa, pois caso algum a descubra, poder causar

    srios danos ao sistema.

    1 Tipo de particionamento: nesta etapa definido o tipo de particionamento que ser utilizado. Selecione a opo Create Custom Layout.

    1 Particionando o disco rgido: aps inicializar o disco, o programa de instalao abre o gerenciador de parties. Caso o disco tenha sido inicializado anteriormente, ele ser

    exibido sem nenhuma partio, mostrando todo o espao livre existente. Ao menos

    duas parties so necessrias para o funcionamento do Linux: uma para o sistema e

    outra para a rea de memria virtual (swap). As principais vantagens de se particionar

    um disco so: segurana, devido ao isolamento de falhas, e independncia entre as

    parties, evitando problemas no sistema caso a capacidade de alguma partio se

    esgote. importante ressaltar que o dimensionamento das parties deve ser feito com

    bastante critrio, para que no ocorram situaes onde o tamanho de uma partio se

    esgote, enquanto outras parties ainda possuam bastante espao disponvel. Nesta

    instalao sero criadas as seguintes parties:

    1 /: essa partio a base de todo o sistema, sendo conhecida como partio raiz e sim-bolizada pela barra (/). Nesta instalao ser alocado 5 GB de espao em disco para a

    partio raiz, que usar o tipo de sistema de arquivos ext4.

  • 17

    C

    aptu

    lo 1

    - H

    ist

    rico

    e in

    stal

    ao

    1 /boot: nessa partio que fica localizado o kernel do Linux. Essa partio precisa ser primria, pois ser acessada pelo BIOS para fazer a carga do Sistema Operacional. Nesta

    instalao ser alocado 100 MB de espao em disco para a partio /boot. Essa partio

    utilizar o tipo de sistema de arquivos ext4.

    1 /var: nessa partio que ficam arquivos de sistema, como arquivos de log, e-mail etc. Nesta instalao ser alocado 3 GB de espao em disco para a partio /var. Essa par-

    tio utilizar o tipo de sistema de arquivos ext4.

    1 /usr: nessa partio que os programas, manuais etc. so instalados. Nessa instalao ser alocado 5 GB de espao em disco para a partio /usr. Essa partio utilizar o tipo

    de sistema de arquivos ext4.

    1 swap: essa partio utilizada como memria virtual e no possui ponto de montagem. Seu tipo de sistema de arquivos swap e seu tamanho deve ser o dobro da quantidade

    de memria RAM instalada no sistema. Nesta instalao sero alocados 2 GB de espao

    em disco para a partio swap.

    A Figura 1.6 mostra a tela onde selecionado o tipo de partio que ser criado. Nesta insta-

    lao sero utilizadas somente parties padro.

    Outras parties podem ser criadas dependendo do tipo de aplicao a que o servidor se

    destina, assim como pode ser desnecessria a criao de algumas das parties utilizadas

    no esquema citado anteriormente em determinados casos.

    importante ressaltar que o BIOS suporta apenas quatro parties primrias. Sendo assim,

    se mais parties forem requeridas, trs parties devero ser criadas como primrias e a

    quarta dever ser do tipo estendida, que pode ser subdividida em at 255 parties lgicas.

    Uma partio estendida no pode conter dados, mas somente parties lgicas. Uma partio

    lgica, por sua vez, no pode ser utilizada para iniciar a carga de um Sistema Operacional.

    A Figura 1.7 mostra a tela de criao de parties, com suas opes. O campo Ponto de

    montagem define o local da rvore de diretrios onde a partio ser montada.

    Figura 1.6 Escolha do tipo de partio no

    disco rgido.

  • 18

    In

    trod

    uo

    ao

    Linu

    x

    O campo Tipo de sistema de arquivos define o tipo de sistema de arquivos que ser utili-

    zado para formatar a partio. O campo Tamanho (MB) define o tamanho da partio em

    megabytes. Alm desses campos bsicos, temos a opo de definir a partio como primria

    e optar pela criptografia dos dados que sero armazenados.

    1 Gerenciador de boot: nessa etapa definido o local do disco onde ser instalado o gerenciador de boot (boot loader) ou mdulo inicializador do sistema. Os principais

    gerenciadores de boot do Linux so o Grub e o Lilo. O CentOS utiliza por padro o Grub,

    que pode ser instalado no MBR ou no setor de boot da partio ativa. Utilizaremos a

    configurao sugerida pelo programa de instalao, que instala o Grub no MBR. Para

    isso, basta deixar a opo Install boot loader on /dev/sda e clicar no boto Avanar.

    Nessa tela tambm possvel adicionarmos outros sistemas operacionais que estejam

    instalados no disco para serem carregados pelo Grub.

    1 Pacotes de aplicaes: nessa etapa definida uma categoria de instalao. O instalador pr-agrupa conjuntos de aplicaes classificando-as nas seguintes categorias: Desktop,

    Minimal Desktop, Minimal, Basic Server, Database Server, Web Server, Virtual Host e

    Software Development Workstation. Selecione a opo Desktop. Alm disso, tambm

    so definidos os repositrios que sero utilizados para fazer o download dos pacotes.

    Nesse caso no ser necessrio incluir nenhum repositrio extra.

    1 Instalao dos pacotes: aps a formatao das parties, o instalador inicia o processo de instalao dos pacotes, processo que pode demorar cerca de 15 a 30 minutos, depen-

    dendo da performance do computador utilizado e das aplicaes que sero instaladas.

    Fim da instalao: terminada a instalao, o programa de instalao ejetar o DVD e dar

    ao aluno os parabns por ter finalizado a instalao. preciso retirar o DVD e clicar no

    boto Reinicializar.

    Figura 1.7 Opes para a criao de parties.

  • 19

    Ca

    ptu

    lo 1

    - Ro

    teiro

    de

    Ativ

    idad

    es

    Roteiro de Atividades 1

    Atividade 1.1 Conhecendo as distribuies Linux

    1. Qual das distribuies Linux utiliza o gerenciador de pacotes RPM ou YUM?

    2. Qual das distribuies Linux vem com o gerenciador de janelas fvwm?

    3. Qual das distribuies Linux possui pacotes de software pr-compilados no formato DEB?

    4. Quais so as ferramentas de gerenciamento de pacotes utilizadas no Debian e no Ubuntu?

    5. Cite dois sistemas baseados em Red Hat.

    Atividade 1.2 Obtendo informaes para iniciar a instalao do Linux

    Colete as informaes necessrias para a instalao do Linux se ele fosse ser instalado na

    mquina de sala de aula e preencha a Tabela 1.1. O hardware dessa mquina compatvel?

    Atividade 1.3 Preparando o ambiente de instalao

    Esta atividade destinada a preparar a instalao do Linux em uma mquina virtual criada com

    o software Virtual Box, instalado em um computador com o sistema operacional Windows.

    Siga os seguintes passos:

    1. Crie uma mquina virtual para posteriormente fazer a instalao do CentOS.

    1 Nome da VM e Tipo de Sistema Operacional no campo Nome, preencha com o valor CentOS - ADS-001. No campo OS Type, selecione Linux na opo Sistema Opera-

    cional e Red Hat (64 bit) na opo Verso.

    1 Memria selecione 1 GB de memria RAM.

    1 Disco virtual marque as opes Disco de Boot e Criar novo disco rgido.

    1 Assistente de criao de discos virtuais marque a opo VDI (VirtualBox Disk Image).

    1 Detalhes do armazenamento de disco virtual marque a opo Dinamicamente alocado.

    1 Localizao e tamanho do arquivo de disco virtual no campo Localizao, preencha com o valor CentOS - ADS-001 e no campo Tamanho (S), selecione 15,1 GB de espao

    em disco.

    1 Sumrio esta tela apresentar as opes selecionadas durante a criao do disco virtual. Confirme se os dados esto corretos e em seguida clique no boto Criar.

  • 20

    In

    trod

    uo

    ao

    Linu

    x

    Atividade 1.4 Instalando o Linux

    Faa a instalao do CentOS na mquina virtual criada na Atividade 1.3.

    1. Clique com o boto direito na mquina virtual criada e Configuraes.

    2. V em Armazenamento.

    3. Em rvore de armazenamento, Controller IDE, Vazio, ao lado direito em atributos clique

    no cone de um CD.

    4. Escolha a opo Selecionar uma arquivo de CD/DVD virtual....

    5. Escolha a imagem do CentOS no desktop e inicie a mquina virtual.

    6. Execute o programa de instalao do CentOS.

    7. Teste de integridade da mdia de instalao Skip.

    8. Seleo do idioma Portuguese (Brazilian).

    9. Seleo do modelo do teclado Portugus Brasileiro (ABNT2).

    10. Seleo do tipo de dispositivo de armazenamento Basic Storage Devices.

    11. Configurao da rede configurao automtica (padro); inserir somente o nome

    da mquina.

    12. Seleo do fuso horrio selecionar o fuso Amrica/So Paulo e deixar marcada a

    opo O relgio do sistema utiliza o UTC.

    13. Definio da senha de root definir a senha de root.

    14. Seleo do tipo de particionamento Create Custom Layout.

    15. Criao das parties; crie as seguintes parties:

    2 /, com 5 GB de espao e tipo ext4.

    2 /boot, com 100 MB de espao e tipo ext4 (definir como partio primria).

    2 /var, com 3 GB de espao e tipo ext4.

    2 /usr, com 5 GB de espao e tipo ext4.

    2 swap, com 2 GB de espao.

    16. Instalao do carregador de boot selecionar a opo Install boot loader on /dev/sda.

    17. Seleo do tipo de instalao e dos repositrios selecione a opo Desktop. No

    preciso adicionar nenhum repositrio.

    18. Finalizao da instalao retire a mdia de instalao e clique no boto Reinicializar.

    Atividade 1.5 Inicializando o sistema pela primeira vez

    Inicialize o sistema pela primeira vez e faa login e logout nele utilizando a conta criada

    na inicializao. Exercite tambm outras opes alm do logout, como reinicializao e

    trmino do sistema.

  • 21

    C

    aptu

    lo 2

    - U

    tiliz

    ao

    do

    sist

    ema

    obje

    tivos

    conceitos

    2Utilizao do sistema

    Conhecer as funcionalidades da interface grfica X-Window e dos ambientes de

    desktop GNOME e KDE.

    Configuraes iniciais, ambiente grfico, GNOME desktop e KDE desktop.

    Configuraes iniciaisAps o trmino bem-sucedido da instalao do Linux e a reinicializao do sistema a partir

    do disco rgido, o Sistema Operacional ser carregado pela primeira vez em sua mquina.

    A primeira inicializao disponibiliza um servio de configurao do sistema, em que so

    mostradas diversas janelas de configurao que sero descritas a seguir.

    Informaes da licena

    Nesta etapa so informadas as regras de licenciamento. preciso concordar com o acordo

    de licena para prosseguir.

    Criando uma conta de usurio

    Assim como em outros Sistemas Operacionais multiusurio, as contas de usurio no Linux

    servem para identificar e dar permisses aos usurios, limitando seus acessos e privilgios

    para a utilizao do sistema. Deve-se utilizar a conta criada nesta etapa para acessar o

    sistema. A conta root s deve ser utilizada quando for preciso realizar operaes adminis-

    trativas. Essa medida evita modificaes acidentais no sistema, como a remoo inadvertida

    de arquivos. Crie uma conta especificando: nome do usurio (username), nome completo do

    usurio e senha.

    Configurando data e hora

    Permite a definio da data e da hora do sistema ou a definio de um servidor da rede

    para atualizao e sincronizao do relgio do sistema atravs do protocolo Network Time

    Protocol (NTP).

    Saiba mais

    O NTP permite manter o relgio de um com-putador com a hora sempre certa e com grande exatido. Ori-ginalmente idealizado por David L. Mills, da Universidade do Dela-ware, o NTP foi utilizado pela primeira vez antes de 1985, sendo ainda hoje muito popular e um dos mais antigos protocolos da internet.

    l

  • 22

    In

    trod

    uo

    ao

    Linu

    x

    Habilitao e configurao do Kdump

    O Kdump um utilitrio que grava informaes que estavam na memria quando ocorrem

    falhas no sistema. Ele pode ser til na deteco de falhas. Nesta etapa possvel habilit-lo

    e configurar a quantidade de memria que ser alocada a ele.

    Ambiente grficoqServidor X (X Server):

    1 X Window System, X-Window, X11 ou simplesmente X, um protocolo, e seu software associado possibilita o emprego de uma interface grfica com o conceito de janelas.

    Originalmente chamado de X, foi desenvolvido no MIT em 1984. Atualmente est na

    verso 11 e por isso carrega no nome esse nmero.

    1 X-Window o toolkit e o protocolo padro para interfaces grficas nos sistemas Unix e assemelhados, como o Linux, embora existam verses para outros Sistemas Opera-

    cionais, como o MS Windows e o Mac OS, por exemplo.

    1 um software cliente-servidor.

    1 No CentOS o servidor X utilizado o X.Org. Outras distribuies utilizam o XFree86.

    1 Permite acesso via rede, isto , de um computador possvel capturar a tela de outro computador e trabalhar remotamente.

    1 Pode ser iniciado automaticamente, ou atravs da linha de comandos utilizando, por exemplo, o comando startx.

    O servidor X o programa que prov a interface grfica do usurio. Tambm chamado de

    X-Window, permite a execuo de programas e aplicaes grficas e compatvel com vrias

    plataformas da famlia Unix. O X-Window pode funcionar em rede, permitindo executar um

    programa em um computador e ver sua sada grfica na tela de outro computador conec-

    tado rede.

    O X-Window responsvel pelos desenhos de seus objetos na tela e capta as entradas de

    dados por meio do teclado e do mouse, relacionando-as com as telas grficas. Para orga-

    nizar o desktop em objetos como janelas e menus, utiliza um componente chamado geren-

    ciador de janelas, que integra as aplicaes ao ambiente grfico.

    Muitos usurios Linux adotaram o XFree86 ou o X.Org, softwares livres compatveis

    com o X-Window, disponveis nas distribuies Linux.

    Iniciando e finalizando o Servidor X

    O Servidor X pode ser automaticamente iniciado por intermdio do programa X Display

    Manager (XDM). O XDM pode ser iniciado automaticamente durante o boot do sistema e

    mantm o Servidor X rodando, abrindo telas de login e iniciando sesses de trabalho. O Servidor

    X tambm pode ser iniciado manualmente pelo usurio atravs dos comandos xinit ou startx.

    Em caso de mau funcionamento, podemos finalizar o Servidor X pressionando simultanea-

    mente as teclas Crtl+Alt+Backspace, porm, isso no recomendvel durante a operao

    normal do sistema, pois o trmino abrupto de aplicaes pode causar perda de dados.

    A melhor forma de finalizar o Servidor X utilizando a opo de sada ou logout existente no

    gerenciador de janelas, onde possvel escolher entre desligar o computador, reinici-lo ou

    simplesmente fechar a sesso de trabalho.

  • 23

    C

    aptu

    lo 2

    - U

    tiliz

    ao

    do

    sist

    ema

    Configurando o Servidor X

    O Servidor X.Org suporta vrios mecanismos para suprir e obter configuraes e parme-

    tros dinmicos do sistema. A ordem de precedncia dos mecanismos :

    1. Opes passadas atravs da linha de comando.

    2. Variveis de ambiente.

    3. Opes definidas nos arquivos de configurao xorg.conf;.

    4. Autodeteco.

    5. Valores defaults do sistema.

    Arquivo xorg.conf

    O X.Org no possui um utilitrio de configurao. Em ves disso, ele mesmo tenta gerar

    uma configurao vlida com base em uma srie de autodeteces. possvel executar o

    comando XOrg configure para gerar um arquivo de configurao. O arquivo de configu-

    rao do X.Org, o xorg.conf, fica localizado no diretrio /etc/X11 e dividido em sesses, que

    so descritas abaixo.

    1 Files: possui os paths completos para arquivos que o servidor X necessita para funcionar, como tipos de fontes.

    1 ServerFlags: possui opes de configurao globais do servidor X.

    1 Module: responsvel pelo carregamento dinmico de mdulos do servidor X.

    1 InputDevice: possui configuraes de dispositivos de entrada de dados, como teclados e mouses. Deve existir um bloco InputDevice para cada dispositivo de entrada.

    1 Device: possui configuraes de dispositivos de vdeo. Deve existir pelo menos um dispo-sitivo de vdeo instalado.

    1 Monitor: possui configuraes de monitores de vdeo. Deve existir pelo menos um monitor de vdeo instalado.

    1 Modes: opcional e possui configuraes sobre modos de tela disponveis para o(s) monitor(es).

    1 Screen: possui configuraes de dispositivos e monitores de vdeo.

    1 ServerLayout: agrega as sesses Screen e InputDevice.

    1 DRI: opcional e possui informaes sobre a infraestrutura de renderizao direta (DRI).

    1 Vendor: possui configuraes personalizadas para cada fabricante.

    Sesso Files

    Section Files

    FontPath /usr/X11/lib/X11/fonts/75dpi/:unscaled

    FontPath /usr/X11/lib/X11/fonts/100dpi/:unscaled

    FontPath /usr/X11/lib/X11/fonts/freefont/

    FontPath /usr/X11/lib/X11/fonts/latin2/

    FontPath /usr/X11/lib/X11/fonts/local/

  • 24

    In

    trod

    uo

    ao

    Linu

    x

    FontPath /usr/X11/lib/X11/fonts/sharefont/

    FontPath /usr/X11/lib/X11/fonts/TTF/

    EndSection

    Sesso Module

    Section Module

    Load i2c

    Load bitmap

    Load dri

    Load extmod

    Load freetype

    EndSection

    Sesso InputDevice

    Section InputDevice

    Identifier Generic Keyboard

    Driver kbd

    Option CoreKeyboard

    Option XkbRules xorg

    Option XkbModel abnt2

    Option XkbLayout br

    Option XkbVariant abnt2

    EndSection

    Section InputDevice

    Identifier Configured Mouse

    Driver mouse

    Option CorePointer

    Option Device /dev/input/mice

    Option Protocol auto

    Opt