ADMINISTRAÇÃO DE REDES LINUX



Documentos relacionados
Figura 1: tela inicial do BlueControl COMO COLOCAR A SALA DE INFORMÁTICA EM FUNCIONAMENTO?

Virtual Box. Guia. Instalação E Utilização. Criado por Wancleber Vieira wancleber.vieira@ibest.com.br

Manual do Desktop Sharing. Brad Hards Tradução: Marcus Gama

Redes Ponto a Ponto. Os drivers das placas de rede devem estar instalados.

Manual de Instalação SIM/SINASC

Operador de Computador. Informática Básica

Usando o Conference Manager do Microsoft Outlook

Manual do Usuário. Protocolo

Manual do Usuário do Produto EmiteNF-e. Manual do Usuário

Microsoft Office Outlook Web Access ABYARAIMOVEIS.COM.BR

Instalação do Sirius sem estações. O primeiro passo é instalar o Firebird 1.5, ele se encontra no CD de instalação do Sirius na pasta Firebird.

O Sistema foi inteiramente desenvolvido em PHP+Javascript com banco de dados em MySQL.

MF = (M1 * 0,4) + (M2 * 0,6) MF < 6 MF = (MF * 0,6) + (EXA * 0,4)

CONCEITOS BÁSICOS DE UM SISTEMA OPERATIVO

MANUAL DE UTILIZAÇÃO. Produtos: Saúde Pró Faturamento Saúde Pró Upload. Versão:

Projeto ECA na Escola - Plataforma de Educação à Distância

Manual de Rotinas para Usuários. Advogados da União. Procuradoria da União no Estado do Ceará PU/CE SAPIENS. Sistema da AGU de Inteligência Jurídica

BR DOT COM SISPON: MANUAL DO USUÁRIO

Manual do Teclado de Satisfação Online WebOpinião

Sistemas Operacionais. Curso Técnico Integrado Profa: Michelle Nery

LGTi Tecnologia. Manual - Outlook Web App. Soluções Inteligentes. Siner Engenharia

Instalando o Debian em modo texto

Gravando Dados e Cópias de CD s com o Nero 6.0 Disciplina Operação de Sistemas Aplicativos I

O QUE É A CENTRAL DE JOGOS?

Figura 1: Interface 3G Identech

MANUAL DA SECRETARIA

... MANUAL DO MODERADOR SERVIÇOS DE WEB

Motorola Phone Tools. Início Rápido

1 ACESSO PARA SECRETÁRIA CONFIGURAR HORÁRIOS DE ATENDIMENTO BLOQUEANDO E HABILITANDO HORÁRIOS PRÉ-DEFININDO PARÂMETROS DE

APRESENTAÇÃO. questões que constantemente chegam ao Suporte de Informática do Órgão Central.

NAPNE / SIEP. Softwares Educativos MANUAL GCOMPRIS

OpenOffice.org 1.1. Guia de Instalação. Junho 2003, Revisão A

Librix. A LIBERDADE DO LINUX COM A QUALIDADE ITAUTEC Guia de referência

PANDION MANUAL DO USUÁRIO (versão 1.0)

ALTERNATIVA PARA CONEXÃO VIA INTERNET DE IP MASCARADO A IP REAL

Guia de instalação UEG Linux LTS

Fale.com. Manual do Usuário

Atualizações de Software Guia do Usuário

Conectar diferentes pesquisas na internet por um menu

MANUAL DE UTILIZAÇÃO DO TREINAMENTO EAD (Educação a Distância) ÍNDICE

Portal de Aprendizado Tutorial do Aluno

MANUAL DE INSTALAÇÃO O melhor sistema de Gestão Financeira para micro e pequenas empresas.

MANUAL DE EMISSÃO E INSTALAÇÃO DO CERTIFICADO TIPO A1 (GOOGLE CHROME)

Descrição do Produto. Altus S. A. 1

Manual do usuário Sistema de Ordem de Serviço HMV/OS 5.0

SISTEMA OPERACIONAL MAC OS

INSTRUÇÕES DE INSTALAÇÃO

I N F O R M Á T I C A. Sistemas Operacionais Prof. Dr. Rogério Vargas Campus Itaqui-RS

LINX POSTOS AUTOSYSTEM

Medical Office 2015 Instruções de Instalação e Configuração

Manual de Utilização

ENDEREÇOS DE REDE PRIVADOS até até até Kernel

* Técnicas Avançadas. Desenvolvimento de SOFTWARES. Sistemas de Gerenciamento de Conteúdo com Joomla e Magento

MANUAL DE UTILIZAÇÃO DO AMBIENTE EAD (Educação a Distância) ÍNDICE

LASERTECK SOFTECK FC MANUAL DO USUÁRIO

Formação de Administradores de Redes Linux LPI level 1. Aula 2 SENAC TI Fernando Costa

Desenvolvido por: Rafael Botelho

Curso Online A Escola no Combate ao Trabalho Infantil Plataforma de Educação à Distância

DIRETORIA DE TECNOLOGIA DA INFORMAÇÃO SETOR DE ESTÚDIO E SUPORTE MANUAL DE UTILIZAÇÃO DO WEBMAIL DA FTC EAD

Simulado Informática Concurso Correios - IDEAL INFO

MANUAL PARA USO DO SISTEMA

Primeiros passos das Planilhas de Obra v2.6

AR PDV SOLUÇÕES AR CONSULTORIA EM INFORMÁTICA

TOP SAÚDE SEPACO AUTOGESTÃO

Sistema de Instalação e Criação da Estrutura do Banco de Dados MANUAL DO INSTALADOR. Julho/2007. Ministério da saúde

MANUAL DIPAM A Versão de 10/05/2012

CSPUWEB - Cadastro de Sistemas. e Permissões de Usuários

Noções de. Microsoft SQL Server. Microsoft SQL Server

Software Livre. Acesso ao código fonte Alterar o código fonte Redistribuir Utilizar como desejar

SISTEMA OPERACIONAL - WINDOWS

Guia de Instalação TOTVS Segurança e Acesso

Portaria Express 2.0

UNIDADE 2: Sistema Operativo em Ambiente Gráfico

Manual de Instalação do e.sic - Sistema Municipal de Informações ao Cidadão

Manual do Sistema HDI Online / Worksite (Circulação: Corretoras parceiras da HDI Seguros )

SIE - SISTEMA DE INFORMAÇÕES PARA O ENSINO CADASTRO DE FUNCIONÁRIOS

Boletim Eletrônico de Recolhimento Manual do Sistema. Boletim Eletrônico de Recolhimento. Manual do Sistema

Software Planejamento Tributário

MANUAL DO OFICIAL DE JUSTIÇA

SERVIDORES REDES E SR1

Manual de Utilização do PDV Klavix

Guia: como instalar o Ubuntu Linux

Manual sistema Laundry 4.0

Estudo de Caso II: LINUX

O conteúdo deste documento é de propriedade intelectual exclusiva da GVDASA Sistemas e está sujeito a alterações sem aviso prévio.

UNIVERSIDADE FEDERAL DO AMAPÁ PRÓ REITORIA DE ADMINISTRAÇÃO E PLANEJAMENTO DEPARTAMENTO DE INFORMÁTICA. Manual do Moodle- Sala virtual

Sistemas Operacionais. Curso Técnico Integrado Profa: Michelle Nery

Aula 02. Introdução ao Linux

O Windows também é um programa de computador, mas ele faz parte de um grupo de programas especiais: os Sistemas Operacionais.

Introdução ao icare 2

TransactionCentre - Módulo Client.exe Manual de Instalação

Manual do usuário. Viewer

INSCRIÇÃO ON- LINE REVEZAMENTOS A PARTIR DE 2015 INDICADO PARA TÉCNICOS

COMO IMUNIZAR SEU PENDRIVE CONTRA VÍRUS. Introdução

SECRETARIA DE TECNOLOGIA DA INFORMAÇÃO COORDENADORIA DE SUPORTE TÉCNICO AOS USUÁRIOS MANUAL DE ACESSO AO PORTAL DE APLICAÇÕES DO GABINETE VIRTUAL

SquidCacheAux para BrazilFW

Como criar o seu Servidor Metatrader5 na Nuvem (cloud) da Amazon

DIRETO. Manual do Usuário. PROCERGS Divisão 7

Manual de instalação, configuração e utilização do Assinador Betha

Transcrição:

MÓDULO DE: ADMINISTRAÇÃO DE REDES LINUX AUTORIA: Ricardo de Magalhães Simões

Módulo De: Administração De Redes Linux Autoria: Ricardo De Magalhães Simões Primeira edição: 2009 CITAÇÃO DE MARCAS NOTÓRIAS Várias Marcas Registradas São Citadas No Conteúdo Deste Módulo. Mais Do Que Simplesmente Listar Esses Nomes E Informar Quem Possui Seus Direitos De Exploração Ou Ainda Imprimir Logotipos, O Autor Declara Estar Utilizando Tais Nomes Apenas Para Fins Editoriais Acadêmicos. Declara ainda, que sua utilização tem como objetivo, exclusivamente na aplicação didática, beneficiando e divulgando a marca do detentor, sem a intenção de infringir as regras básicas de autenticidade de sua utilização e direitos autorais. E Por Fim, Declara Estar Utilizando Parte De Alguns Circuitos Eletrônicos, Os Quais Foram Analisados Em Pesquisas De Laboratório E De Literaturas Já Editadas, Que Se Encontram Expostas Ao Comércio Livre Editorial. Copyright 2008, ESAB Escola Superior Aberta do Brasil 2

Apresentação O Linux é um sistema operacional criado em 1991 por Linus Torvalds, na época um estudante de ciências da computação na universidade de Helsinki Finlândia. O sistema segue o padrão POSIX que é o mesmo usado por vários sistemas UNIX. Assim, aprendendo o Linux você não encontrará muita dificuldade em operar um sistema do tipo UNIX: FreeBSD, HPUX, SunOS, dentre outros, bastando apenas aprender alguns detalhes encontrados em cada sistema. Linus Torvalds iniciou o desenvolvimento do Linux como um projeto particular, escrevendo o sistema Minix criado por Andrew S. Tanenbaum. Depois de algumas semanas sendo o único participante do projeto, Linus convidou outras pessoas para ingressarem no desenvolvimento de um Minix melhor que o Minix, enviando a seguinte mensagem: "Você suspira pelos bons tempos do Minix-1.1, quando os homens eram homens e escreviam seus próprios "utilitários de periféricos"? Você está sem um bom projecto em mãos e deseja trabalhar num S.O. que possa modificar 3

de acordo com as suas necessidades? Acha frustrante quando tudo funciona no Minix? Chega de noite ao computador para conseguir que os programas funcionem? Então esta mensagem pode ser exactamente para você. Como eu mencionei há um mês atrás, estou trabalhando numa versão independente de um S.O. similar ao Minix para computadores AT-386. Ele está, finalmente, próximo do estado em que poderá ser utilizado (embora possa não ser o que você espera), e eu estou disposto a disponibilizar o códigofonte para ampla distribuição. Ele está na versão 0.02... contudo eu tive sucesso ao executar bash, gcc, gnu-make, gnu-sed, compressão etc. Nele." Atualmente pode-se encontrar uma versão do sistema operacional Linux operando em diversas plataformas: Intel x86, Intel x64, Intel IA-64, ARM, IBM PowerPC, SUN UltraSparc, ARM, Hitachi SH-x, Zilog, MIPS Rx000, Alpha 21x64, Motorola 680x0, Mainframes, Supercomputadores, GPS, Telefones Celulares, e várias outras. A primeira distribuição do Linux era literalmente proibida de ser comercializada, devendo ser entregue gratuitamente aos interessados. Com a liberação das primeiras versões nos anos de 1991 e 1992 a licença de distribuição foi alterada, mantendo-se basicamente a restrição de que qualquer distribuição do Linux ser entregue com o código fonte aberto, isto é, podendo ser lido, alterado e recompilado, por quem quizesse. Objetivo Aprender a utilizar o sistema operacional Linux em um ambiente de Rede de Computadores, instalando e configurando um servidor de rede. 4

Ementa Introdução; As Distribuições Do Linux; Instalação 01 Início; Instalação 02 Personalizando; Instalação 03 Configuração; KDE; Instalação De Programas; Manpages - Documentação Interna; Programação; Gerenciamento De Processos; Runlevels - Níveis De Execução; Arquivos De Log; Administração De Usuários; Permissões De Acesso; Permissões De Acesso; Agendamento De Tarefas; Cópia De Segurança Dos Arquivos; Protocolo TCP-IP; Configuração Da Rede; Ferramentas TCP-IP; Iptables - Proteção Do Servidor; SSH - Conexão Remota Com Segurança; Servidor De Rede DHCP; Servidor PHP; Servidor De Banco De Dados; Servidor De Correio Eletrônico; Servidor WWW; Servidor De Arquivos NFS; Samba; Monitoramento Do Servidor; Certificação. Sobre o Autor Doutorando em Engenharia Elétrica na área de Redes de Computadores, Mestre em Informática (2006) e Bacharel em Ciência da Computação (2003) pela Universidade Federal do Espírito Santo. Atuei como Professor Substituto de Informática no CEFET-ES, Professor de Programação I no Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas à Distância no CEFETES. Tenho experiência na área de Ciência da Computação, com ênfase em Desenvolvimento de Algorítmos, Educação de Informática para estudantes do Ensino Médio, atuando principalmente nos seguintes temas: Informática Básica, Programação nas linguagem C/C++/C#, Java, Pascal. Página pessoal: http://geocities.yahoo.com.br/rmagalhaess 5

SUMÁRIO UNIDADE 1... 9 As Distribuições Do Linux... 9 UNIDADE 2... 13 Instalação 01 - Início... 13 UNIDADE 3... 22 Instalação 02 - Personalizando... 22 UNIDADE 4... 32 Instalação 03 - Configuração... 32 UNIDADE 5... 44 KDE... 44 UNIDADE 6... 53 Instalação De Programas... 53 UNIDADE 7... 62 Manpages = Documentação Interna... 62 UNIDADE 8... 70 Programação... 70 UNIDADE 9... 79 Gerenciamento De Processos... 79 UNIDADE 10... 89 Runlevels = Níveis De Execução... 89 UNIDADE 11... 96 Arquivos De Log... 96 UNIDADE 12... 102 Administração De Usuários... 102 UNIDADE 13... 113 6

Permissões De Acesso... 113 UNIDADE 14... 116 Permissões De Acesso... 116 UNIDADE 15... 121 Agendamento De Tarefas... 121 UNIDADE 16... 128 Cópia De Segurança De Arquivos... 128 UNIDADE 17... 139 Protocolo TCP/IP... 139 UNIDADE 18... 147 Configuração Da Rede... 147 UNIDADE 19... 154 Ferramentas TCP-IP... 154 UNIDADE 20... 160 Proteção Do Servidor... 160 UNIDADE 21... 166 Conexão Remota Com Segurança... 166 UNIDADE 22... 171 Servidor De Rede DHCP... 171 UNIDADE 23... 177 PHP... 177 UNIDADE 24... 181 Servidor De Banco De Dados... 181 UNIDADE 25... 185 Servidor De Correio Eletrônico... 185 UNIDADE 26... 190 Apache Servidor WWW... 190 UNIDADE 27... 195 7

Servidor De Arquivos E RAID... 195 UNIDADE 28... 199 SAMBA Conexão Com Windows... 199 UNIDADE 29... 204 Monitoramento Do Servidor... 204 UNIDADE 30... 213 Certificação Linux... 213 GLOSSÁRIO... 220 BIBLIOGRAFIA... 221 8

UNIDADE 1 As Distribuições Do Linux Objetivo: Conhecer o desenvolvimento do Linux, algumas características deste sistema, e algumas das principais versões existentes. 1 Introdução Um sistema Linux nunca foi entregue sozinho, contendo apenas o sistema operacional. Desde o início eram criadas versões chamadas distribuições, que continham além do Sistema Operacional Linux (o chamado kernel do Linux), uma série de aplicativos e utilitários. Algumas empresas, e grupos de desenvolvedores, passaram a entregar (gratuitamente ou por um preço) o sistema operacional Linux, e cada CD passou a ser chamado de uma Distribuição Linux. As principais distribuições disponíveis no Brasil são: Red Hat, Novel SuSE, Conectiva, Librix, Insignea, Kurumin, Ubuntu. No final da década de 1990, praticamente 90% das distribuições do Linux eram utilizadas em Servidores. Atualmente, as distribuições são desenvolvidas para serem utilizadas em Computadores Pessoais ou Servidores, sendo que algumas permitem que se escolha qual tipo de computador será utilizado. Então, o primeiro cuidado que se deve ter é na escolha de qual distribuição será instalada no Servidor. 2 Distribuições A tabela 1 mostra uma comparação de algumas características das distribuições mais importantes no Brasil: 9

Distribuição Versão Estável Kernel Empresa País Cliente Servidor Origem da distribuição Reconhecimento de Periféricos Fedora 12 2.6 Red Hat EUA SIM SIM RedHat Alta opensuse 11.2 2.6 Novell ALE SIM SIM RedHat Alta Mandriva 2010 2.6 Mandriva FRA/ BRA SIM SIM RedHat Alta Librix 3.2 2.6 Itautec BRA SIM SIM Gentoo Média (3) Insignea 5.0 2.6 Insignea BRA SIM NÃO (1) - Média (3) Kurumin 8.06 2.6 - BRA SIM NÃO (1) Debian Alta Ubuntu 9.10 2.6 Canonica l AF.S. SIM SIM (2) Debian Alta Slackware 13 2.6 - EUA SIM SIM Slackware Alta Debian 5.0.3 2.6 - EUA SIM SIM Debian Alta Muriqui 1.4 2.6 Docttum BRA SIM NÃO (1) Debian Média (3) Tabela 1: Comparação das distribuições Linux (1) Insignea, Kurumin e Muriqui não são direcionados para servidores, e não contam com aplicativos para o gerenciamento de servidores, mas nada impede que tais aplicativos sejam instalados. (2) Ubuntu é direcionado para computadores pessoais, e sua versão para servidores contém um conjunto mínimo de aplicativos, e nenhuma interface gráfica. (3) Librix, Insignea e Muriqui são direcionados para empresas específicas (Librix para Itautec; Insignea para CCE, Novadata, SempToshiba, Positivo, dentre outras; Muriqui para Docttum), possuem um nível de compatibilidade com periféricos teoricamente alto, pois são sistemas Linux e em último caso a instalação de um periférico será trabalhosa. O Librix possui um aplicativo de Verificação de Compatibilidade que pode ser utilizado durante a instalação. 10

3 Não São Distribuições Linux Uma consideração a ser feita, e que algumas pessoas confundem, é a seguinte: alguns sistemas compatíveis com o padrão POSIX não são uma distribuição Linux, dentre as quais se destaca: BSD e FreeBSD (e suas distribuições); Mac OS X, derivado dos sistemas NeXT e Apple System 9; BeOS; AmigaOS; SUN Solaris e SUN OpenSolaris. A empresa SUN, desenvolvedora do OpenSolaris, distribui de forma gratuita tanto o sistema para servidores SUN Solaris, quanto o sistema para computadores pessoais SUN OpenSolaris, sendo uma opção interessante para se considerar. 4 Ambiente De Estudo Para o estudo desta apostila, podem-se utilizar diversas estratégias: 1) Instalação completa em um computador de teste; 2) Instalação compartilhada em um computador com MS-Windows, tendo 2 sistemas operacionais; 3) Instalação em uma Máquina Virtual. 11

Como o objetivo é estudar sem medo de errar, a opção mais indicada é a de número 3. Esta apostila foi escrita utilizando a distribuição Mandriva Linux 2010, instalada em uma máquina virtual criada no aplicativo Sun VirtualBox, que é um aplicativo gratuito para criação de máquinas virtuais. Outra opção de máquina virtual é o VMWare Workstation, mas este é válido por apenas 30 dias (ao terminar o período, faça um novo cadastro com um endereço de correio eletrônico diferente, e continue a utilizar o VMWare por mais 30 dias). 12

UNIDADE 2 Instalação 01 - Início Objetivo: Aprender os passos necessários para instalar o Mandriva 2010 em um computador habilitado para Servidor. Instalação Do Mandriva Linux 2010 O primeiro passo para a instalação é baixar a versão Mandriva 2010, gravar um DVD e colocá-lo no computador que será utilizado. Esta é a versão mais recente, e contém uma série de pacotes prontos para ser utilizados tanto em um computador de escritório (ou doméstico) quanto em um Servidor de Rede. A primeira tela a ser exibida é mostrada na figura 1: Figura 1: Primeiras opções de instalação 13

O que se deseja é realizar a instalação do Mandriva 2010, então deve-se escolher a opção Install Mandriva Linux 2010. Não há necessidade de troca de idioma (inglês) nem da resolução da tela (800x600), pois na próxima tela, que é a tela de instalação de fato, será feita a troca do idioma, e no final da instalação a troca da resolução da tela. A segunda tela apresentada irá mostrar as opções de idioma do Mandriva Linux 2010, sendo então nesta etapa que será feita a escolha para o idioma Portugês do Brasil. Figura 2: Escolha do idioma 14

Ao selecionar o idioma Português do Brasil todas as informações na tela passam a ser exibidas em brasileiro. Deve-se clicar no botão Próximo para continuar com a instalação. A terceira tela da instalação mostra o contrato de licença, que informa os termos de utilização do sistema operacional e dos programas inclusos nele. Existem duas opções: Figura 3: Contrato de Licença 1) Aceitar e continuar a instalação, e posteriormente utilizar o Mandriva Linux 2010; 2) Recusar e cancelar a instalação, e não utilizar o Linux Selecione a opção Aceitar, e clique no botão Próximo. 15

A quarta tela de instalação é referente à etapa de particionamento do disco-rígido. Existem duas opções: 1) Usar o espaço livre : neste caso o instalador irá particionar automaticamente o discorígido existente no computador. 2) Personalizar Particionamento : a escolha de como será feito o particionamento do disco-rígido ficará a critério do usuário. Figura 4: Particionamento do Disco-Rígido 16

A maioria dos usuários prefere realizar o particionamento personalizado do disco-rígido, e para cada situação haverá uma personalização adequada. Nesta apostila a instalação foi realizada em um computador com 10 GB de disco rígido, e o particionamento escolhido não foi automático, sendo personalizado com as seguintes divisões: 8,8 GB como ext3 e 1,1 GB como swap. Esta escolha é mostrada na figura 5 a seguir. Figura 5: Particionamento utilizado Cada caso deverá ser analisado para se ter uma utilização de disco rígido que reflita as necessidades apresentadas em cada ambiente. 17

Pode-se também utilizar mais de um disco rígido, e até mesmo ter a utilização de sistemas com RAID. A distribuição OpenSuSE Linux permite definir sistemas RAID na fase de instalação do sistema operacional. Após a realização do particionamento, deve-se clicar no botão Pronto para continuar a instalação. A sexta tela apresentada irá permitir que se faça a escolha de mais alguma opção de fonte de instalação, isto é, de mais um local além do DVD para se instalar o Mandriva Linux 2010 e seus pacotes. Caso seja necessário instalar mais algum aplicativo, que não esteja incluído no DVD disponibilizado pela Mandriva, deve-se escolher uma das opções apresentadas: CD-ROM, Rede (HTTP), Rede (FTP) ou Rede (NFS). Esta instalação foi feita apenas com o DVD Mandriva Linux 2010, sendo escolhida a opção Nenhum para indicar que nenhuma fonte adicional será utilizada para a instalação do sistema operacional. 18

Figura 6: Opções de Fonte de Instalação Após selecionar a opção Nenhum, deve-se clicar no botão Próximo para continuar a instalação. A sétima tela apresentada irá direcionar a opção de instalação, onde será escolhida uma instalação de um computador pessoal ou um servidor. Esta escolha não é feita de maneira simples, pois as opções apresentadas são as seguintes: 1) KDE : instalação de um computador pessoal com interface KDE. 2) GNOME :instalação de um computador pessoal com interface Gnome. 19

3) Personalizar : permite fazer a escolha de quais programas e utilitários serão instalados. Figura 7: Escolha do tipo de instalação Se a instalação for realizada em um computador pessoal, pode-se escolher qualquer uma das opções. Se a instalação for em um Servidor, deve-se obrigatoriamente selecionar a opção Personalizar, como é mostrado na figura 8: 20

Figura 8: Escolha da instalação personalizada Ao escolher a opção Personalizar, deve-se clicar no botão Próximo para continuar a instalação. As próximas etapas serão vistas na próxima unidade. 21

UNIDADE 3 Instalação 02 - Personalizando Objetivo: Aprender os passos necessários para instalar o Mandriva 2010 em um computador habilitado para Servidor. Instalação Do Mandriva Linux 2010 Continuando a instalação do Linux, a partir da escolha de personalização da instalação do sistema operacional, passa-se para a escolha de quais itens farão parte da instalação, como pode ser visto na figura 1: Figura 1: Itens que serão instalados 22

Como o objetivo da instalação é ter um Computador Servidor, deve-se escolher os itens relativos ao Servidor. Nesta apostila será adotada a instalação de todas as opções referentes ao Servidor, então deve-se clicar em todos os itens disponíveis referentes ao Servidor, como pe mostrado na figura 2: Figura 2: Escolha de todos os itens do Servidor Além disso, deve-se escolher o item Seleção individual de pacotes, pois nem todos os programas e utilitários de um Servidor são instalados. Quando se clica na opção Web/FTP do Servidor, apenas os programas e utilitários básicos serão instalados. 23

Nestas apostila será adotada uma instalação completa dos programas e utilitários disponíveis no Mandriva Linux 2010. Figura 3: Escolha de selecionar individualmente os pacotes a serem instalados Após selecionar a opção Seleção individual de pacotes deve-se clicar no botão Próximo para continuar a instalação do sistema. A nona tela apresentada permite realizar a escolha individual dos pacotes que serão instalados. 24

Pode-se fazer a escolha dos pacotes referentes ao Servidor, à Estação de Trabalho, e quais Ambientes Gráficos serão disponibilizados para utilização. Figura 4: Primeira tela para a escolha de pacotes individuais 25

Para instalar um Servidor com todas os pacotes disponíveis no Mandriva Linux 2010, devese expandir o item Servidor clicando em cima da seta ao lado esquerdo do nome Servidor. Figura 5: Opções dentro do Servidor Serão mostradas as opções para escolha dentro de Web/FTP, E-mail, Banco de Dados, Firewall/Roteador, e Servidor de Rede. Nesta apostila será adotada uma instalação completa dos pacotes disponíveis no Mandriva Linux 2010, então todos os itens em cada uma das opções dentro do Servidor serão adotadas. 26

Na figura 6 é apresentada uma tela onde o pacote cyrus-imapd não está selecionado, mas este pacote e todos os outros dentro do Servidor serão selecionados. Figura 6: Seleção do pacote cyrus-imapd. 27

Eventualmente na escolha de algum pacote poderá surgir uma mensagem como a apresentada na figura 7: Figura 7: Mensagem de informação Esta mensagem informa que para a instalação do pacote selecionado, outros pacotes serão instalados também. Isso acontece pois alguns pacotes dependem de algumas funções disponíveis em pacotes específicos, devendo-se sempre confirmar a instalação dos pacotes adicionais clicando-se no botão Ok. 28

Deve-se prosseguir escolhando-se os demais pacotes disponíveis para o Servidor até que todos sejam escolhidos. Figura 8 O campo Tamanho total: 4379/7870 MB indica duas informações: 1. O tamanho em megabytes que será utilizado para a instalação dos pacotes individuais, no caso apresentado o tamanho é de 4379 megabytes; 2. O tamanho em megabytes de todos os pacotes disponíveis, que no caso apresentado é de 7870 megabytes. 29

Durante a escolha, algumas informações sobre os pacotes serão exibidas no campo Informações, mas em alguns casos a informação apresentada não está totalmente correta. Por exemplo, ao escolher o pacote pidgin, a instalação informa que este pacote precisa ter na instalação. O pidgin é um programa semelhante ao MSN, e na instalação de um Servidor é completamente descartável, não precisando ter. Figura 9: Informações sobre os pacotes Ao concluir a escolha dos pacotes que farão parte da instalação, deve-se clicar no botão Instalar para que a instalação realmente inicie, com a transferência dos pacotes do DVD para o disco-rígido do computador. 30

Após a escolha dos pacotes individuais a instalação de fato iniciará, e este processo será demorado. O tempo total dependerá dos pacotes escolhidos, e da velocidade do leitor de DVD e do disco-rígido. Na maioria dos computadores atuais demora cerca de 1 hora. Figura 10: Instalação de fato 31

UNIDADE 4 Instalação 03 - Configuração Objetivo: Aprender os passos necessários para instalar o Mandriva 2009 em um computador habilitado para Servidor. Instalação Do Mandriva Linux 2009 Após a conclusão da fase de transferência de arquivos, a instalação do sistema continuará, e a etapa seguinte será a definição da senha do administrador do sistema (usuário ROOT) e de um segundo usuário, que poderá ter qualquer nome. Figura 1: definição de usuários 32

O Mandriva Linux 2009, e a maioria das distribuições Linux, não proíbe a utilização de determinadas senhas, indicando apenas se as senhas são fortes ou fracas. Figura 2: Criação das senhas do Root e de um usuário adicional Ao preencher os campos, deve-se clicar no botão Próximo para continuar a instalação. A próxima tela irá fornecer as opções de escolha da resolução do monitor que será utilizada no computador. A escolha poderá ser feita tanto de um fabricante específico, ou utilizando-se a opção Genérico, que foi a escolhida para a figura 3: 33

Figura 3: Escolha da resolução do monitor Após a escolha da resolução, deve-se clicar no botão Próximo. A tela apresentada mostra um resumo da configuração adotada para o Servidor. Caso seja necessário realizar alguma alteração, deve-se clicar no botão Configurar. 34

Por exemplo, se for necessário alterar o Fuso horário do Servidor, deve-se clicar no botão Configurar colocado à frente do item Fuso horário Brazil/East, como mostra a figura 4: Figura 4: Alteração do Fuso horário 35

A tela mostrada irá apresentar as opções de fuso horário disponíveis, devendo-se escolher a mais adequada para utilização do Servidor, como mostra a figura 5: Figura 5: Escolha do fuso horário instalação. Após a definição do fuso horário, deve-se clicar no botão Próximo para continuar a 36

Além do fuso horário, será escolhida a hora do servidor, podendo-se escolher também a opção de sincronização, que para a instalação adotada nesta apostila foi deixada desmarcada (sem sincronização). Figura 6: Definição do horário e da sincronização Após a escolha da hora certa e da sincronização, deve-se clicar no botão Próximo para continuar a instalação. 37

A penúltima tela da instalação apresenta uma opção de se realizar a atualização dos pacotes, por versões mais recentes caso existam. Na instalação adotada nesta apostila, não foi feita a atualização, sendo utilizados exatamente as versões dos pacotes disponíveis na distribuição Mandriva Linux 2009 Spring. Figura 7: Atualização dos pacotes Após a escolha da atualização, deve-se clicar no botão Próximo para continuar a instalação. 38

A última tela da instalação mostrará uma mensagem parabenizando pela instalação, informando que a instalação foi realizada corretamente, como pode ser visto na figura 8: Figura 8: Mensagem parabenizando a instalação Com o término da instalação do Mandriva Linux 2009, deve-se clicar no botão Reiniciar para que o sistema operacional seja carregado e comece-se a sua utilização. Após a instalação e reinicio do computador, a primeira tela mostrada é a tela de opção de instalação. 39

Deve-se escolher a opção Iniciar Mandriva Linux 2009 Spring para se começar a utilizar o Servidor. Figura 9: Inicialização do Servidor A opção Iniciar Mandriva Linux 2009 Spring (modo seguro) deve-se escolhida caso se queira realizar algum tipo de manutenção específica no Servidor. 40

Quando se inicia o Servidor pela primeira vez, uma mensagem de Boas Vindas é apresentada. Basta clicar no botão Fechar para continuar a inicialização do sistema. E esta tela não será mostrada em mais nenhuma inicialização. Figura 10: Tela de Boas Vindas Ao carregar o sistema operacional, a primeira tela mostrada pede que seja informado um usuário para utilizar o computador. 41

Pode-se escolher tanto o usuário cadastrado na instalação (ou algum outro cadastrado posteriormente), como o usuário root, sendo que o usuário root não aparece na lista de usuários, como mostra a figura 11: Figura 11: Tela de entrada de usuário Quando se informa o nome de usuário e a senha correta, o sistema carregará a interface gráfica padrão, que para esta apostila será adotada a interface KDE, como pode ser visto na figura 12: 42

Figura 12: Interface KDE Nas próximas unidades serão apresentados os conceitos e programas que serão utilizados para a manutenção e administração de um Servidor Linux. 43

UNIDADE 5 KDE Objetivo: Aprender sobre a interface gráfica KDE, como é o seu funcionamento e suas características. 1 Introdução O KDE é um projeto iniciado em 1996, que tinha como propósito o desenvolvimento de um ambiente gráfico para interação com sistemas Unix. A sigla KDE significa K Desktop Environment, ou Ambiente de Trabalho K. A equipe inicial foi liderada por Matthias Ettrich, que teve como inspiração o ambiente CDE, Common Desktop Environment, utilizado em sistemas desenvolvidos pelas empresas SUN, IBM, HP, dentre outras. O KDE começou a ser desenvolvido em 1996, e a primeira versão publicada para ser utilizada foi lançada em 1998. Este ambiente rapidamente obteve sucesso no sistema operacional Linux, tornando-se a interface gráfica padrão nas distribuições Red Hat, Conectiva, SuSE, e várias outras disponíveis no final da década de 1990. Atualmente, junto com a interface Gnome, é disponibilizado em praticamente todas as distribuições Linux. O KDE atualmente é entregue com um conjunto de 1996 Início do projeto KDE aplicativos e utilitários que permitem aos usuários terem um ambiente realmente amigável e confortável de ser utilizado. Uma lista parcial de aplicativos do KDE inclui: 1998 Entregue o ambiente KDE 1 1999 Ajustes na versão 1.0 resultaram no KDE 1.1 2000 2001 Atualizações e aprimoramentos resultaram no KDE 2.0 Atualizações incrementais formaram as versões 2.1 e 2.2 2002 É lançado o KDE 3.0 2008 Atual versão completa: KDE 4.0 2009 Depois de atualizações e correções, a versão atual é a 4.3 44

Descrição Aplicativo Ícone Gerenciador Multimídia Amarok Ambiente de Desenvolvimento de Programas KDevelop Emulador de Terminal de modo texto Konsole Navegador para Internet Konqueror Suíte de Escritório KOffice Mapas Geográficos KGeography Tabela 1: Programas e Utilitários disponíveis no KDE Algumas tecnologias não presentes nas versões anteriores foram adicionadas à versão 4.0, e são: 1) Utilização de widgets, pequenos utilitários gráficos, que podem ser instalados por qualquer usuário; 2) Biblioteca integrada para desenvolvimento de aplicações multimídia; 3) Biblioteca integrada para acesso aos periféricos; 4) Biblioteca para processamento simétrico, que melhora o desempenho do ambiente em computadores com processadores de vários núcleos; 45

2 Ambiente Gráfico Neste capítulo serão mostradas algumas telas da interface KDE, e algumas de suas características. A primeira tela do KDE pode ser vista na figura 1, onde estão presentes a Área de Trabalho, o Menu Inicial, alguns botões de comando, o Gerenciador de Ambiente, a Barra de Tarefas, e no canto inferior esquerdo está a Área de Avisos. Figura 1: Tela inicial do KDE 46

O Menu Iniciar do KDE é muito parecido como o botão Iniciar do MS-Windows, apresentando uma lista de itens incluindo programas, comandos e outras opções. Para ativar o Menu Iniciar do KDE no Mandriva Linux, basta clicar no ícone azul em forma de estrela, localizado no canto inferior direito, como pode ser visto na figura 2: Figura 2: Menu Iniciar do KDE 47

A figura 3 mostra o funcionamento do Gerenciador de Arquivos do KDE, tem um formato um pouco diferente do MS-Windows Explorer, mas algumas características são semelhantes: Figura 3: Gerenciador de Arquivos Do lado esquerdo do Gerenciador de Arquivos são mostrados os diretórios do sistema. Os ícones dos arquivos são identificados de acordo com o tipo de arquivo. E no lado direito, quando se clica em um arquivo, é exibida uma breve descrição, e visualização, do arquivo. 48

A figura 4 mostra a utilização de alguns widgets no KDE: Figura 4: Widgets no KDE Os widgets disponíveis abrangem uma variada gama de opções, e vários outros podem ser procurados na internet. Em um computador servidor, a utilização de alguns widgets pode ser interessante, pois mostraram algumas características diretamente, agilizando a detecção de anomalias. 49

A figura 5 mostra o Centro de Controle do Mandriva Linux, através deste recurso pode-se configurar uma série de características do sistema: Figura 5: Centro de Controle 50

O Centro de Controle é acessado a partir da opção Configure seu Computador no menu principal, ou na barra de ferramentas: Para conseguir executar todas as tarefas deste curso será necessário utilizar o usuário ROOT. Este é o principal usuário no Linux, e que tem permissão para executar todos os programas. 51

Por padrão não é possível fazer Login com o usuário ROOT, mas para que isso aconteça é necessária apenas uma alteração no arquivo /var/lib/mandriva/kde4- profiles/common/share/config/kdm/kdmrc. Este arquivo possui um campo chamado AllowRootLogin, que deve receber o valor true para permitir que o usuário ROOT faça login no KDE. 52

UNIDADE 6 Instalação De Programas Objetivo: Aprender sobre a instalação de aplicativos e utilitários no Mandriva. 1 Introdução No Linux, e em diversos sistemas operacionais, tudo que se faz é feito com o auxílio de programas. Os programas possuem instruções específicas para a realização de tarefas, como o Open Office Writer que é um editor de textos, ou o Dolphin, o gerenciador de arquivos do KDE. Estes dois exemplos são de programas grandes e complexos, mas existem programas mais simples, como o TAR. O TAR é um programa para a compactação de arquivos. No Linux todos os utilitários, aplicativos, comandos e servidores (daemons), são programas. Alguns programas são utilizados para iniciar outros programas, como o Bash Shell. Outros são utilizados para finalizar todos os programas, como o Shutdown. No Mandriva Linux, e em várias outras distribuições Linux, a principal ferramenta para a instalação de programas é o RPM. A sigla RPM representa RedHat Package Manager, que significa Gerenciador de Pacotes RedHat. Como o próprio nome induz, este gerenciador foi criado pela empresa RedHat para a sua distribuição, e por consequência, pode ser utilizado em todas as distribuições derivadas da RedHat. O gerenciador de instalação denomina pacote todos os programas do Linux, então deste ponto em diante neste módulo, será utilizado o termo Pacote para se referir a qualquer programa instalável no Linux. 53

O nome pacote surgiu do fato de que o arquivo de instalação não contém apenas uma única informação, mas um conjunto de informações que serão utilizadas para auxiliarem o processo de instalação do programa, que também está incluído no pacote. O pacote pode conter: arquivos de configuração, arquivos de documentação, manuais, arquivos com código fonte, programas executáveis, e outras informações. A lista de distribuições Linux que utiliza o RPM para instalar pacotes é formada principalmente por: RedHat Enterprise Fedora Mandriva Conectiva PCLinuxOS Red Flag Linux CentOS Novell SUSE Linux Enterprise opensuse ArkLinux Yellow Dog Linux Linux XP TurboLinux openmamba 54

2 Funcionamento Do RPM Um pacote é um arquivo binário que contém as seguintes informações: 1) Início: identifica-o como sendo um pacote RPM, e possui algumas informações de controle. 2) Assinatura: utilizada para garantir que o pacote que está sendo instalado realmente corresponde às informações contidas no cabeçalho. Este campo é importante, pois minimiza significativamente a instalação de pacotes errados, e principalmente, pacotes falsos. 3) Cabeçalho do Arquivo: inclui informações referente ao nome do pacote, versão, arquitetura de instalação (SPARC, x86, PowerPC), arquivos que formam o pacote, dentre outras. 4) Arquivos de Instalação: este ponto em diante é formado pelos arquivos que fazem parte do pacote. O arquivo do pacote de instalação possui a terminação.rpm, e é um arquivo comprimido, pelo gzip ou bzip2, contendo todos os dados descritos acima. Em cada distribuição Linux que utiliza a instalação através de pacotes RPM existe um arquivo no diretório /var/lib chamado rpm, que contém um banco de dados de todos os pacotes rpm instalados no computador. Este arquivo sempre é verificado quando se deseja fazer uma instalação ou desinstalação de um pacote. 2.1 Formato Do Pacote Todo arquivo RPM que contém um aplicativo ou um utilitário é entregue obedecendo uma nomenclatura específica: 55

Figura 1: Pacote de Instalação Exemplos: 1) abiword-2.6.4-42.46.x86_64.rpm Nome: abiword Versão: 2.6.4-42.46 Distribuição: sem especificação. Arquitetura: Sistemas de 64 bits Intel ou AMD 2) MySQL-server-community-5.0.83-0.rhel5.ia64.rpm Nome: MySQL Server Community Versão: 5.0.83-0 Distribuição: RedHat Enterprise Linux 5 Arquitetura: Intel Itanium 3) MySQL-server-community-5.0.83-0.sles10.i586.rpm Nome: MySQL Server Community Versão: 5.0.83-0 Distribuição: SUSE Linux Enterprise Server 10 Arquitetura: Sistemas de 32 bits Intel ou AMD 56

4) man-pages-pt_br-1.39-12362cl.noarch.rpm Nome: Man Pages em Português Brasileiro Versão: 1.39-12362cl Distribuição: sem especificação. Arquitetura: noarch (instalável em qualquer arquitetura) Os arquivos RPM que contém o código fonte de um aplicativo ou utilitário possuem uma pequena alteração na parte final do arquivo: Exemplos: Figura 2: Pacote de código fonte 1) qt-4.5.2-3.fc12.src.rpm Nome: Qt toolkit Versão: 4.5.2-3 Distribuição: Fedora 12 2) mysql-5.1.34-2mdv2009.1.src.rpm Nome: MySQL Client Versão: 5.1.34-2 Distribuição: Mandriva 2009.1 57

3 Utilitários Atualmente as principais distribuições Linux incluem um utilitário que auxilia a instalação dos pacotes, tornando esta tarefa muito simples: YUM: presente no Fedora, RedHat, CentOS e outros; up2date: utilizado em versões anteriores do RedHat; Synaptic: desenvolvido para o PCLinuxOS; YaST: utilizado nas distribuições SUSE e opensuse; rpmdrake: presente no KDE distribuido com o Mandriva; SMART: incluído em várias distribuições derivadas do Fedora; 4 Bancos De Dados Sobre RPM Na Internet A Internet é uma grande ferramenta de informações, e os serviços de informações de pacotes RPM existem em vários locais. Alguns dos principais são: 58

1) RPM find: http://www.rpmfind.net 2) RPM Pbone: http://rpm.pbone.net 59

3 Rpmdrake A utilização do RPMDrake é muito simples. Basta selecioná-lo a partir do Centro de Controle, escolhendo a opção Instalar e Remover Programas que o RPMDrake será iniciado, como mostra a figura 3: Figura 3: Tela do RPMDrake Com o RPMDrake o usuário poderá ver o conjunto de programas instalados, e quais os que podem ser instalados. Para instalar um pacote, basta selecionar o pacote desejado e clicar no botão Aplicar localizado no canto inferior direito. Se necessitar instalar mais de um pacote, selecione todos os pacotes primeiro, e depois clique em Aplicar. 60

5 Instalação Manual Se o programa que você quer instalar não for mostrado no RPMDrake, você poderá utilizar a instalação manual, através do programa RPM que pode ser utilizado pelo Terminal de Comandos. Para instalar um programa, basta digitar o seguinte: $ rpm -i <pacote> Se desejar instalar o pacote MySQL Server Community 5.0.83, você deverá ir para o diretório que contém o arquivo de instalação deste pacote e digitar: $ rpm -i MySQL-server-community-5.0.83-0.sles10.i586.rpm Para remover um programa: $ rpm -e <pacote> Se desejar remover o pacote MySQL-server-community, você digitará: $ rpm -e MySQL-server-community Para consultar se um pacote está instalado: $ rpm -q <pacote> 61

UNIDADE 7 Manpages = Documentação Interna Objetivo: Aprender como acessar a documentação interna do Linux e do Mandriva. 1 Introdução Uma das características mais conhecidas dos sistemas Unix e similares, incluindo o Linux, é a existência de um programa que contém uma grande documentação sobre o sistema Unix, e seus programas utilitários. Esse programa é chamado de MANPAGE, que e a junção das palavras manual e pages (páginas). Este programa é um utilitário de documentação, e é organizado em páginas, e cada página faz uma referência a algum dos muitos utilitários existentes nos sistemas Unix. 2 Utilização Para utilizar o utilitário de documentação, digite o comando man, de manual, na linha de comando do sistema, e o programa que será verificado: $ man unix 62

Figura 1: Utilitário de Documentação O utilitário manpage apresenta uma vasta documentação sobre vários programas, funções, utilitários e termos em geral. A apresentação da documentação obedece um padrão, mas em alguns casos este padrão não é seguido. Em relação ao idioma, grande parte da documentação é traduzida para os disversos idiomas existentes no mundo, mas isso não acontece em todos os casos. A maior parte da documentação não traduzida está em inglês, mas podem surgir outros idiomas, como espanhol ou francês, no Mandriva Linux 2009. 63

3 Formato De Apresentação A documentação é apresentada em um formato próprio, dividindo o texto em alguns tópicos. Os principais tópicos são: Nome: contém o nome do programa, ou função, ou utilitário, ou termo, e em alguns casos, contém também uma lista de termos associados, seguido de uma rápida descrição de uma ou duas linhas. Sinopse: apresenta o contexto de utilização do programa ou função ou utilitário. Descrição: contém uma descrição explicando o funcionamento do programa, e algumas de suas características. Exemplos: exemplos de utilização, com explicações, para melhorar o entendimento da documentação. Veja também: mostra alguns casos extras, de termos que estão associados à documentação que está sendo vista. Alguns casos poderão incluir outros tópicos, diretamente relacionados ao programa que está sendo visto ou incluídos pelo autor do texto da documentação: Opções de Entrada, Opções de Formatação, Ambiente, Defeitos Conhecidos, Arquivos, Autor, Histórico, Registro, dentre outros. 4 Seções Do Manpages Em alguns casos existirá mais de uma documentação para um determinado termo. Isto acontece porque alguns comandos são utilizados tanto na linha de comando do Unix quanto em programas de computador, como acontece com o comando printf. 64

A documentação do manpages é dividida em Seções, e cada seção irá tratar de um caso específico de utilização daquele comando. Existem várias seções disponíveis para o manpages, dependendo de qual sistema está em uso. A tabela 1 mostra as seções presentes nas principais distribuições Linux e em algumas versões do Unix System IV: Seção Tipo De Conteúdo 1 Comandos próprios do sistema, executados na linha de comando 2 Chamadas para o Sistema Operacional 3 Biblioteca de Funções da linguagem C 4 Arquivos Especiais (exemplo: unidades de dispositivo) 5 Formato de Arquivos 6 Jogos e Protetores de Tela 7 Seção Geral 8 Administração de Sistema e Daemons Tabela 1: Seções presentas na manpages de algumas distribuições Linux No Unix System V algumas seções são diferentes, mas este sistema é pouco utilizado, então não será abordado. Alguns poucos sistemas, tanto Unix quanto Linux, podem possuir algumas seções extras: 65

Seção Tipo de Conteúdo 0 Biblioteca de Cabeçalho da linguagem C 9 Rotinas do Núcleo do Sistema n x p Comandos TCL/TK Servidor de Interface X Window Comandos POSIX Tabela 2: Seções extras do manpages Exemplos de utilização: $ man printf $ man fork $ man nfs 66

$ man tcp $ man ipconfig $ man http Para acessar a descrição desejada, basta informar o número desta ao executar o utilitário manpages : $ man 3 printf 67

Além disso, pode-se combinar o utilitários manpages com outros utilitários presentes no sistema, como pode ser visto na figura 2: $ man printf > printf.txt Figura 2: Comando $ man printf > printf.txt para gravar um arquivo texto 5 Manual E Documentação Do Mandriva O Mandriva Linux também possui uma documentação própria, disponível em arquivos HTML, que são acessíveis pelo Menu Iniciar do KDE, como pode ser visto na figura 3: 68

Figura 3: Manual e Documentação do Mandriva A diferença destes manuais é que o enfoque para o Mandriva é a utilização de interfaces e utilitários gráficos para a realização das tarefas. 69

UNIDADE 8 Programação Objetivo: Aprender sobre programação no Linux utilizando Bash Shell. 1 Introdução Uma das características do Linux é a possibilidade de construção de pequenos programas, chamados scripts, que são utilizados para realizarem pequenas tarefas de maneira automatizada. Estes programas são executados através da própria linha de comando, pois muitas distribuições disponibilizam um utilitário de comando compatível com o Bash Shell, que é o interpretador dos scripts. Os scripts permitem a automação do processo de criação de usuários em grandes empresas, ou a automação da instalação de alguns programas, e podem ser utilizados por todos os usuários do sistema. Nesta Unidade serão apresentados os conceitos básicos de programação no Linux. 2 Funcionamento Dos Scripts Os scripts do Linux são criados em arquivos de texto, sendo executados diretamente, não havendo necessidade de compilação (processo de conversão do código fonte para código executável). A execução direta é chamada de Interpretação, e o interpretador mais utilizado no sistema Linux é o Bash Shell. 70

Para criar um script deve-se crir um arquivo texto, por exemplo com o nome script1, informar qual será o interpretador a ser utilizado, e incluir os comandos desejados, como pode ser visto na figura 1: 1: 2: #!/bin/bash echo 'Primeiro script.' Figura 1: Primeiro script A linha 1 do script da figura 1 define o interpretador Bash Shell, e a linha 2 utiliza um comando que exibirá uma mensagem na tela, no caso a mensagem é: Primeiro script. Todos os comandos utilizados na linha de comando (Konsole) poderá ser utilizados para a criação de scripts. Para executar um script deve-se realizar os seguintes procedimentos: 1) Alterar a permissão do arquivo para executável 2) digitar o nome do arquivo onde foi gravado o script, precedido por./ Em relação à Permissão do Arquivo, serão vistos com maiores detalhes todas as opções possíveis na Unidade 13. Por enquanto o comando que será utilizado é: $ chmod 755 <arquivo>, como pode ser visto na figura 2: 71

Figura 2: Alteração da permissão para executável e execução do script1 3 Construção De Scripts A construção de scripts no Linux é muito semelhante à construção de programas tradicionais, em Linguagem C ou Pascal. Um script poderá ser formado por: Variáveis: armazenam informações temporariamente; 72

Comandos: executam rotinas pré-definidas; Funções: executam rotinas definidas pelo programador. Na figura 3 é apresentado mais um exemplo de script, contendo algumas variáveis: Figura 3: Script contendo declaração de variáveis 73

Os comandos que estão disponíveis através do próprio Bash Shell para a criação de scripts são: Comando Descrição echo Exibe uma informação na tela read Lê informações digitadas no teclado exit Termina a execução do script clear Limpa a tela sleep Paralisa temporariamente a execução do script tput Altera o modo de exibição stty Configura a utilização do terminal de comando if Verificador condicional case Verificador de expressão for Comando de repetição determinada while Comando de repetição condicional Tabela 1: Comandos próprios do Bash Shell Além destes comandos, pode-se utilizar qualquer comando/programa do Linux: ls, cp, cron, adduser, dentre vários outros. Existem algumas características que são próprias no Bash Shell para a utilização de alguns comandos, as principais são: Tratamento de Mensagens de Texto e Comando IF 3.1 Tratamento De Mensagens De Texto A criação de uma variável de texto, como foi demonstrado na figura 3, é muito simples. Mas algumas considerações devem ser observadas: O texto poderá ser escrito de três modos diferentes: Aspas Duplas ( ): as variáveis dentro do texto serão tratadas; Aspas Simples ( ' ' ): o texto será exibido literalmente; 74

Crase ( ` ` ): executarão um comando dentro do texto. Figura 4: Script com 3 tipos de mensagens 3.2 Comando If O comando IF é muito semelhante ao utilizado em outras linuagens, as diferenças são na terminação do comando e na maneira como as condições são escritas nos scritps. 75

Um comando IF deve obedecer a seguinte sintaxe: if condição then comandos executados quando a condição é verdadeira else comandos executados quando a condição é falsa fi Figura 5: Comando IF Nas linguagens tradicionais, quando se deseja verificar se uma variável é maior que outra, escreve-se o seguinte comando: IF Var1 > Var2 THEN Na programação de scripts do Linux o mesmo comando deve ser escrito da seguinte maneira: IF [ Var1 -gt Var2 ] THEN As condições matemáticas ( =,, >,, < e ) são escritos através de códigos. A tabela 2 mostra uma lista de equivalência entre as condições matemáticas: Condição Matemática Equivalência no Script = -eq -ne > -gt -ge < -lt Tabela 2: Equivalência entre condições matemáticas e comandos do script -le 76

Além das condições matemáticas, existem as condições de arquivo e diretório: Condição Descrição -s arquivo Verifica se o arquivo não está vazio -f arquivo Verifica se é um arquivo -d diretório Verifica se é um diretório -w arquivo Verifica se o arquivo pode ser escrito -r arquivo Verifica se o arquivo é apenas de leitura -x arquivo Verifica se o arquivo é executável Tabela 3: Condições para verificação de arquivos Existem também os operadores lógicos, utilizados quando se deseja incluir mais de uma condição em um comando IF: Condição Lógica Descrição! Negação -a E (and) -o OU (or) Tabela 4: Operadores Lógicos E para concluir, os comandos para verificação de textos: Verificação Descrição texto1 = texto2 Verifica se são iguais texto1!= texto2 Verifica se são diferentes -n texto Verifica se o texto não é nulo -z texto Verifica se o texto é nulo Tabela 5: Operadores Lógicos A seguir, na figura 6, é apresentado um script contendo alguns dos comandos vistos nesta Unidade: 77

Figura 6: Script final com comandos gerais 4 Outros Comandos A seguir uma lista com alguns comandos adicionais que podem ser utilizados em programas feitos para o Bash Shell do Linux: Comando FOR: utilizado para repetir uma sequência de instruções de acordo com um valor pré-definido; Comando WHILE: utilizado para repetir uma sequência de instruções de acordo com uma condição pré-definida; Comando CASE: utilizado para executar uma sequência de instrções de acordo com um valor informado. 78

UNIDADE 9 Gerenciamento De Processos Objetivo: Aprender sobre o gerenciamento e controle de programas em execução no Linux. 1 Introdução Um processo, na maioria dos sistemas operacionais, é o nome dado a um programa em execução. No Linux, tanto os comandos, quanto utilitários e aplicativos, são todos considerados processos. Existe uma série de utilitários que auxiliam o gerenciamento dos processos em execução, permitindo que o usuário tenha o controle sobre eles. Nesta Unidade serão mostradas algumas características dos processos no Linux, e algumas ferramentas de manipulação de processos. As ferramentas mostradas aqui serão as seguintes: Nativas do Linux: TOP, PS e KILL; Nativas do Mandriva: Monitor de Sistema 2 Características De Um Processo Todos os processos são programas em execução gerenciados pelo sistema operacional. Para realizar este gerenciamento os processos são criados com características que serão 79

utilizadas e manipuladas durante a sua execução. Dentre as principais características estão as seguintes: Proprietário: usuário que iniciou a execução do programa que originou o processo; Estado: indica o estado de execução do processo, os mais comuns são: o D (Aguardando) processo espera a liberação de algum recurso; o R (Executando) processo realizando alguma tarefa; o S (Parado) alguma tarefa interrompeu a execução do processo; o Z (Zumbi) o processo finalizou, mas ainda permanece carregado na memória. Prioridade: indica a prioridade de execução do processo por um valor numérico. Quanto menor o valor, maior é a prioridade de execução; Comando: comando que originou a execução do processo. Além das características citadas acima, existem várias outras, como: tempo de execução, consumo de processador, consumo de memória, entre outros, como pode ser visto na figura 1. Figura 1: Processos em Execução 80

3 Comando Top O comando TOP é utilizado para mostrar os processos em execução no computador. A figura 2 mostra uma apresentação deste comando: Figura 2: Comando TOP Através do comando TOP pode-se visualizar uma série de características dos processos em execução, e escolhê-las para serem exibidas na tela. o TOP permanece em execução continua, isto é, após a exebição dos processos em execução, o comando continua em execução, atualizando as informações sobre os processos até o momento em que o usuário queira finalizar o TOP. Na figura 2 as características escolhidas foram as seguintes: 81

Característica PID UID USER PR TIME RES VIRT Flags Time+ %CPU %MEM S COMMAND Descrição Número de identificação para o processo. Número de identificação do usuário que iniciou o processo. Nome do usuário que iniciou o processo. Prioridade do Processo. Tempo de execução. Quantidade de memória utilizada. Imagem Virtual. Flags de execução. Tempo de execução extendido, inclui os segundos. Percentual de utilização do Processador. Percentual de utilização da Memória. Estado do Processo. Comando que originou o processo. Tabela 1: Características apresentadas pelo comando TOP Para visualizar todas as opções de características que poderão ser visualizadas pelo TOP, basta pressionar a tecla f de Fields, que significa Campos. 4 Comando Ps O comando PS é semelhante ao comando TOP, a diferença é que enquanto o TOP permanece em execução continua, o comando PS não é. O comando PS mostra os processos executados, e suas características, no instante em que o comando é acionado, como pode ser visto na figura 2: 82

Figura 3: Comando PS As colunas exibidas pelo comando PS podem ser escolhidas pelo usuário, utilizando as opções extras do comando. Para a opção u são exibidas as colunas: USER: Número de identificação do usuário; PID: Número de identificação do processo; %CPU: Percentual de utilização do processador; %MEM: Percentual d utilização da memória; VSZ: Memória Virtual (Disco-Rígido); RSS: Memória Residente (RAM); TTY: Terminal ou Console de inicialização do processo; STAT: Status do processo; START: Hora de início do processo; TIME: Tempo de execução; COMMAND: Linha de comando do processo. As principais opções do comando PS são: $ ps -AjF: exibe todos os processos em execução no computador; $ ps -f u <usuário>: exibe todos os processos de <usuário>, se for deixado em branco, exibe os processos do usuário atual. 83

5 Comando Kill O comando KILL é utilizado para enviar um sinal a um processo. Um sinal é um comando especial enviado a um processo em execução. Os possíveis sinais são: STOP: inativa temporariamente a execução de um processo; CONT: reativa um processo que recebeu o sinal STOP; SEGV: informa erros de memória; TERM: ordena o término da execução de um processo; ILL: informa erros de execução de instruções; KILL: mata um processo que parou de responder. O comando KILL geralmente é utilizado para encerrar a execução de um processo que apresentou algum erro de execução e não poderá finalizar corretamente. Mas também pode ser utilizado em programas que estão consumindo muito tempo, ou muitos recursos do computador. A figura 4 mostra um exemplo de processo, criado a partir do script PRG_TESTE, e que ao executar assume o PID 14036, que está executando ( STAT = R+ ) e que está consumindo 58,5% do processador: Figura 4: Processo com erro de execução. 84