160
 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: 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 Canonical 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

Curso Mandriva Linux[1]

Embed Size (px)

Citation preview

UNIDADE 1 As Distribuies Do Linux Objetivo: Conhecer o desenvolvimento do Linux, algumas caractersticas deste sistema, e algumas das principais verses existentes. 1 Introduo Um sistema Linux nunca foi entregue sozinho, contendo apenas o sistema operacional. Desde o incio eram criadas verses chamadas distribuies, que continham alm do Sistema Operacional Linux (o chamado kernel do Linux), uma srie de aplicativos e utilitrios. Algumas empresas, e grupos de desenvolvedores, passaram a entregar (gratuitamente ou por um preo) o sistema operacional Linux, e cada CD passou a ser chamado de uma Distribuio Linux. As principais distribuies disponveis no Brasil so: Red Hat, Novel SuSE, Conectiva, Librix, Insignea, Kurumin, Ubuntu. No final da dcada de 1990, praticamente 90% das distribuies do Linux eram utilizadas em Servidores. Atualmente, as distribuies so desenvolvidas para serem utilizadas em Computadores Pessoais ou Servidores, sendo que algumas permitem que se escolha qual tipo de computador ser utilizado. Ento, o primeiro cuidado que se deve ter na escolha de qual distribuio ser instalada no Servidor. 2 Distribuies A tabela 1 mostra uma comparao de algumas caractersticas das distribuies mais importantes no Brasil: Distribuio Fedora openSuSE Mandriva Librix Insignea Kurumin Ubuntu Slackware Debian Muriqui Verso Kernel Empresa Estvel 12 11.2 2010 3.2 5.0 8.06 9.10 13 5.0.3 1.4 2.6 2.6 2.6 2.6 2.6 2.6 2.6 2.6 2.6 2.6 Red Hat Novell Itautec Insignea Docttum Pas EUA ALE BRA BRA BRA EUA EUA BRA Cliente Servidor SIM SIM SIM SIM SIM SIM SIM SIM SIM SIM SIM SIM SIM Origem da Reconhecimento distribuio de Perifricos RedHat RedHat RedHat Gentoo Alta Alta Alta Mdia(3) Mdia(3) Alta Alta Alta Alta Mdia(3)

Mandriva FRA/BRA SIM

NO(1) NO(1) Debian SIM(2) SIM SIM Debian Slackware Debian

Canonical AF.S.

NO(1) Debian

Tabela 1: Comparao das distribuies Linux

_______________ (1) Insignea, Kurumin e Muriqui no so direcionados para servidores, e no contam com aplicativos para o gerenciamento de servidores, mas nada impede que tais aplicativos sejam instalados. (2) Ubuntu direcionado para computadores pessoais, e sua verso para servidores contm um conjunto mnimo de aplicativos, e nenhuma interface grfica. (3) Librix, Insignea e Muriqui so direcionados para empresas especficas (Librix para Itautec; Insignea para CCE, Novadata, SempToshiba, Positivo, dentre outras; Muriqui para Docttum), possuem um nvel de compatibilidade com perifricos teoricamente alto, pois so sistemas Linux e em ltimo caso a instalao de um perifrico ser trabalhosa. O Librix possui um aplicativo de Verificao de Compatibilidade que pode ser utilizado durante a instalao. 3 No So Distribuies Linux Uma considerao a ser feita, e que algumas pessoas confundem, a seguinte: alguns sistemas compatveis com o padro POSIX no so uma distribuio Linux, dentre as quais se destaca:

BSD e FreeBSD (e suas distribuies); 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 opo interessante para se considerar. 4 Ambiente De Estudo Para o estudo desta apostila, podem-se utilizar diversas estratgias: 1. Instalao completa em um computador de teste; 2. Instalao compartilhada em um computador com MS-Windows, tendo 2 sistemas operacionais; 3. Instalao em uma Mquina Virtual. Como o objetivo estudar sem medo de errar, a opo mais indicada a de nmero 3. Esta apostila foi escrita utilizando a distribuio Mandriva Linux 2010, instalada em uma mquina virtual criada no aplicativo Sun VirtualBox, que um aplicativo gratuito para criao de mquinas virtuais. Outra opo de mquina virtual o VMWare Workstation, mas este vlido por apenas 30 dias (ao terminar o perodo, faa um novo

cadastro com um endereo de correio eletrnico diferente, e continue a utilizar o VMWare por mais 30 dias).

UNIDADE 2 Instalao 01 - Incio Objetivo: Aprender os passos necessrios para instalar o Mandriva 2010 em um computador habilitado para Servidor. Instalao Do Mandriva Linux 2010 O primeiro passo para a instalao baixar a verso Mandriva 2010, gravar um DVD e coloc-lo no computador que ser utilizado. Esta a verso mais recente, e contm uma srie de pacotes prontos para ser utilizados tanto em um computador de escritrio (ou domstico) quanto em um Servidor de Rede. A primeira tela a ser exibida mostrada na figura 1:

Figura 1: Primeiras opes de instalao O que se deseja realizar a instalao do Mandriva 2010, ento deve-se escolher a opo Install Mandriva Linux 2010. No h necessidade de troca de idioma (ingls) nem da resoluo da tela (800x600), pois na prxima tela, que a tela de instalao de fato, ser feita a troca do idioma, e no final da instalao a troca da resoluo da tela. A segunda tela apresentada ir mostrar as opes de idioma do Mandriva Linux 2010, sendo ento nesta etapa que ser feita a escolha para o idioma Portugs do Brasil.

Figura 2: Escolha do idioma Ao selecionar o idioma Portugus do Brasil todas as informaes na tela passam a ser exibidas em brasileiro. Deve-se clicar no boto Prximo para continuar com a instalao. A terceira tela da instalao mostra o contrato de licena, que informa os termos de utilizao do sistema operacional e dos programas inclusos nele.

Figura 3: Contrato de Licena Existem duas opes: 1. Aceitar e continuar a instalao, e posteriormente utilizar o Mandriva Linux 2010; 2. Recusar e cancelar a instalao, e no utilizar o Linux Selecione a opo Aceitar, e clique no boto Prximo. A quarta tela de instalao referente etapa de particionamento do disco-rgido. Existem duas opes: 1. Usar o espao livre: neste caso o instalador ir particionar automaticamente o disco-rgido existente no computador. 2. Personalizar Particionamento: a escolha de como ser feito o particionamento do disco-rgido ficar a critrio do usurio.

Figura 4: Particionamento do Disco-Rgido A maioria dos usurios prefere realizar o particionamento personalizado do discorgido, e para cada situao haver uma personalizao adequada. Nesta apostila a instalao foi realizada em um computador com 10 GB de disco rgido, e o particionamento escolhido no foi automtico, sendo personalizado com as seguintes divises: 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 utilizao de disco rgido que reflita as necessidades apresentadas em cada ambiente. Pode-se tambm utilizar mais de um disco rgido, e at mesmo ter a utilizao de sistemas com RAID. A distribuio OpenSuSE Linux permite definir sistemas RAID na fase de instalao do sistema operacional. Aps a realizao do particionamento, deve-se clicar no boto Pronto para continuar a instalao. A sexta tela apresentada ir permitir que se faa a escolha de mais alguma opo de fonte de instalao, isto , de mais um local alm do DVD para se instalar o Mandriva Linux 2010 e seus pacotes. Caso seja necessrio instalar mais algum aplicativo, que no esteja includo no DVD disponibilizado pela Mandriva, deve-se escolher uma das opes apresentadas: CDROM, Rede (HTTP), Rede (FTP) ou Rede (NFS). Esta instalao foi feita apenas com o DVD Mandriva Linux 2010, sendo escolhida a opo Nenhum para indicar que nenhuma fonte adicional ser utilizada para a instalao do sistema operacional.

Figura 6: Opes de Fonte de Instalao Aps selecionar a opo Nenhum, deve-se clicar no boto Prximo para continuar a instalao. A stima tela apresentada ir direcionar a opo de instalao, onde ser escolhida uma instalao de um computador pessoal ou um servidor. Esta escolha no feita de maneira simples, pois as opes apresentadas so as seguintes: 1. KDE: instalao de um computador pessoal com interface KDE. 2. GNOME:instalao de um computador pessoal com interface Gnome. 3. Personalizar: permite fazer a escolha de quais programas e utilitrios sero instalados.

Figura 7: Escolha do tipo de instalao Se a instalao for realizada em um computador pessoal, pode-se escolher qualquer uma das opes. Se a instalao for em um Servidor, deve-se obrigatoriamente selecionar a opo Personalizar, como mostrado na figura 8:

Figura 8: Escolha da instalao personalizada Ao escolher a opo Personalizar, deve-se clicar no boto Prximo para continuar a instalao. As prximas etapas sero vistas na prxima unidade.

UNIDADE 2 Instalao 02 - Personalizando Objetivo: Aprender os passos necessrios para instalar o Mandriva 2010 em um computador habilitado para Servidor. Instalao Do Mandriva Linux 2010 Continuando a instalao do Linux, a partir da escolha de personalizao da instalao do sistema operacional, passa-se para a escolha de quais itens faro parte da instalao, como pode ser visto na figura 1:

Figura 1: Itens que sero instalados Como o objetivo da instalao ter um Computador Servidor, deve-se escolher os itens relativos ao Servidor. Nesta apostila ser adotada a instalao de todas as opes referentes ao Servidor, ento deve-se clicar em todos os itens disponveis referentes ao Servidor, como pe mostrado na figura 2:

Figura 2: Escolha de todos os itens do Servidor

Alm disso, deve-se escolher o item Seleo individual de pacotes, pois nem todos os programas e utilitrios de um Servidor so instalados. Quando se clica na opo Web/FTP do Servidor, apenas os programas e utilitrios bsicos sero instalados. Nestas apostila ser adotada uma instalao completa dos programas e utilitrios disponveis no Mandriva Linux 2010.

Figura 3: Escolha de selecionar individualmente os pacotes a serem instalados Aps selecionar a opo Seleo individual de pacotes deve-se clicar no boto Prximo para continuar a instalao do sistema. A nona tela apresentada permite realizar a escolha individual dos pacotes que sero instalados. Pode-se fazer a escolha dos pacotes referentes ao Servidor, Estao de Trabalho, e quais Ambientes Grficos sero disponibilizados para utilizao.

Figura 4: Primeira tela para a escolha de pacotes individuais Para instalar um Servidor com todas os pacotes disponveis no Mandriva Linux 2010, deve-se expandir o item Servidor clicando em cima da seta ao lado esquerdo do nome Servidor.

Figura 5: Opes dentro do Servidor Sero mostradas as opes para escolha dentro de Web/FTP, E-mail, Banco de Dados, Firewall/Roteador, e Servidor de Rede. Nesta apostila ser adotada uma instalao completa dos pacotes disponveis no Mandriva Linux 2010, ento todos os itens em cada uma das opes dentro do Servidor sero adotadas. Na figura 6 apresentada uma tela onde o pacote cyrus-imapd no est selecionado, mas este pacote e todos os outros dentro do Servidor sero selecionados.

Figura 6: Seleo do pacote cyrus-imapd. Eventualmente na escolha de algum pacote poder surgir uma mensagem como a apresentada na figura 7:

Figura 7: Mensagem de informao Esta mensagem informa que para a instalao do pacote selecionado, outros pacotes sero instalados tambm. Isso acontece pois alguns pacotes dependem de algumas funes disponveis em pacotes especficos, devendo-se sempre confirmar a instalao dos pacotes adicionais clicando-se no boto Ok. Deve-se prosseguir escolhando-se os demais pacotes disponveis para o Servidor at que todos sejam escolhidos.

Figura 8 O campo Tamanho total: 4379/7870 MB indica duas informaes: 1. O tamanho em megabytes que ser utilizado para a instalao dos pacotes individuais, no caso apresentado o tamanho de 4379 megabytes; 2. O tamanho em megabytes de todos os pacotes disponveis, que no caso apresentado de 7870 megabytes. Durante a escolha, algumas informaes sobre os pacotes sero exibidas no campo Informaes, mas em alguns casos a informao apresentada no est totalmente correta. Por exemplo, ao escolher o pacote pidgin, a instalao informa que este pacote precisa ter na instalao. O pidgin um programa semelhante ao MSN, e na instalao de um Servidor completamente descartvel, no precisando ter.

Figura 9: Informaes sobre os pacotes Ao concluir a escolha dos pacotes que faro parte da instalao, deve-se clicar no boto Instalar para que a instalao realmente inicie, com a transferncia dos pacotes do DVD para o disco-rgido do computador. Aps a escolha dos pacotes individuais a instalao 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-rgido. Na maioria dos computadores atuais demora cerca de 1 hora.

Figura 10: Instalao de fato

UNIDADE 4Instalao 03 - Configurao Objetivo: Aprender os passos necessrios para instalar o Mandriva 2009 em um computador habilitado para Servidor. Instalao Do Mandriva Linux 2009 Aps a concluso da fase de transferncia de arquivos, a instalao do sistema continuar, e a etapa seguinte ser a definio da senha do administrador do sistema (usurio ROOT) e de um segundo usurio, que poder ter qualquer nome.

Figura 1: definio de usurios O Mandriva Linux 2009, e a maioria das distribuies Linux, no probe a utilizao de determinadas senhas, indicando apenas se as senhas so fortes ou fracas.

Figura 2: Criao das senhas do Root e de um usurio adicional Ao preencher os campos, deve-se clicar no boto Prximo para continuar a instalao. A prxima tela ir fornecer as opes de escolha da resoluo do monitor que ser utilizada no computador. A escolha poder ser feita tanto de um fabricante especfico, ou utilizando-se a opo Genrico, que foi a escolhida para a figura 3:

Figura 3: Escolha da resoluo do monitor

Aps a escolha da resoluo, deve-se clicar no boto Prximo. A tela apresentada mostra um resumo da configurao adotada para o Servidor. Caso seja necessrio realizar alguma alterao, deve-se clicar no boto Configurar. Por exemplo, se for necessrio alterar o Fuso horrio do Servidor, deve-se clicar no boto Configurar colocado frente do item Fuso horrio Brazil/East, como mostra a figura 4:

Figura 4: Alterao do Fuso horrio A tela mostrada ir apresentar as opes de fuso horrio disponveis, devendo-se escolher a mais adequada para utilizao do Servidor, como mostra a figura 5:

Figura 5: Escolha do fuso horrio Aps a definio do fuso horrio, deve-se clicar no boto Prximo para continuar a instalao. Alm do fuso horrio, ser escolhida a hora do servidor, podendo-se escolher tambm a opo de sincronizao, que para a instalao adotada nesta apostila foi deixada desmarcada (sem sincronizao).

Figura 6: Definio do horrio e da sincronizao Aps a escolha da hora certa e da sincronizao, deve-se clicar no boto Prximo para continuar a instalao. A penltima tela da instalao apresenta uma opo de se realizar a atualizao dos pacotes, por verses mais recentes caso existam. Na instalao adotada nesta apostila, no foi feita a atualizao, sendo utilizados exatamente as verses dos pacotes disponveis na distribuio Mandriva Linux 2009 Spring.

Figura 7: Atualizao dos pacotes Aps a escolha da atualizao, deve-se clicar no boto Prximo para continuar a instalao. A ltima tela da instalao mostrar uma mensagem parabenizando pela instalao, informando que a instalao foi realizada corretamente, como pode ser visto na figura 8:

Figura 8: Mensagem parabenizando a instalao Com o trmino da instalao do Mandriva Linux 2009, deve-se clicar no boto Reiniciar para que o sistema operacional seja carregado e comece-se a sua utilizao. Aps a instalao e reinicio do computador, a primeira tela mostrada a tela de opo de instalao. Deve-se escolher a opo Iniciar Mandriva Linux 2009 Spring para se comear a utilizar o Servidor.

Figura 9: Inicializao do Servidor A opo Iniciar Mandriva Linux 2009 Spring (modo seguro) deve-se escolhida caso se queira realizar algum tipo de manuteno especfica no Servidor. Quando se inicia o Servidor pela primeira vez, uma mensagem de Boas Vindas apresentada. Basta clicar no boto Fechar para continuar a inicializao do sistema. E esta tela no ser mostrada em mais nenhuma inicializao.

Figura 10: Tela de Boas Vindas

Ao carregar o sistema operacional, a primeira tela mostrada pede que seja informado um usurio para utilizar o computador. Pode-se escolher tanto o usurio cadastrado na instalao (ou algum outro cadastrado posteriormente), como o usurio root, sendo que o usurio root no aparece na lista de usurios, como mostra a figura 11:

Figura 11: Tela de entrada de usurio Quando se informa o nome de usurio e a senha correta, o sistema carregar a interface grfica padro, que para esta apostila ser adotada a interface KDE, como pode ser visto na figura 12:

Figura 12: Interface KDE Nas prximas unidades sero apresentados os conceitos e programas que sero utilizados para a manuteno e administrao de um Servidor Linux.

UNIDADE 5KDE Objetivo: Aprender sobre a interface grfica KDE, como o seu funcionamento e suas caractersticas. 1 Introduo O KDE um projeto iniciado em 1996, que tinha como propsito o desenvolvimento de um ambiente grfico para interao 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 inspirao o ambiente CDE, Common Desktop Environment, utilizado em sistemas desenvolvidos pelas empresas SUN, IBM, HP, dentre outras.

O KDE comeou a ser desenvolvido em 1996, e a primeira verso publicada para ser utilizada foi lanada em 1998. Este ambiente rapidamente obteve sucesso no sistema operacional Linux, tornando-se a interface grfica padro nas distribuies Red Hat, Conectiva, SuSE, e vrias outras disponveis no final da dcada de 1990. Atualmente, junto com a interface Gnome, disponibilizado em praticamente todas as distribuies Linux. O KDE atualmente entregue com um conjunto de aplicativos e utilitrios que permitem aos usurios terem um ambiente realmente amigvel e confortvel de ser utilizado. Uma lista parcial de aplicativos do KDE inclui: Descrio Gerenciador Multimdia Ambiente de Desenvolvimento de Programas Emulador de Terminal de modo texto Navegador para Internet Sute de Escritrio Mapas Geogrficos Aplicativo Amarok KDevelop Konsole Konqueror KOffice KGeography cone

Tabela 1: Programas e Utilitrios disponveis no KDE Algumas tecnologias no presentes nas verses anteriores foram adicionadas verso 4.0, e so: 1. Utilizao de widgets, pequenos utilitrios grficos, que podem ser instalados por qualquer usurio; 2. Biblioteca integrada para desenvolvimento de aplicaes multimdia; 3. Biblioteca integrada para acesso aos perifricos; 4. Biblioteca para processamento simtrico, que melhora o desempenho do ambiente em computadores com processadores de vrios ncleos; 2 Ambiente Grfico Neste captulo sero mostradas algumas telas da interface KDE, e algumas de suas caractersticas. A primeira tela do KDE pode ser vista na figura 1, onde esto presentes a rea de Trabalho, o Menu Inicial, alguns botes 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 O Menu Iniciar do KDE muito parecido como o boto Iniciar do MS Windows, apresentando uma lista de itens incluindo programas, comandos e outras opes. 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 A figura 3 mostra o funcionamento do Gerenciador de Arquivos do KDE, tem um formato um pouco diferente do MS-Windows Explorer, mas algumas caractersticas so semelhantes:

Figura 3: Gerenciador de Arquivos Do lado esquerdo do Gerenciador de Arquivos so mostrados os diretrios do sistema. Os cones dos arquivos so identificados de acordo com o tipo de arquivo. E no lado direito, quando se clica em um arquivo, exibida uma breve descrio, e visualizao, do arquivo. A figura 4 mostra a utilizao de alguns widgets no KDE:

Figura 4: Widgets no KDE Os widgets disponveis abrangem uma variada gama de opes, e vrios outros podem ser procurados na internet. Em um computador servidor, a utilizao de alguns widgets pode ser interessante, pois mostraram algumas caractersticas diretamente, agilizando a deteco de anomalias. A figura 5 mostra o Centro de Controle do Mandriva Linux, atravs deste recurso podese configurar uma srie de caractersticas do sistema:

Figura 5: Centro de Controle O Centro de Controle acessado a partir da opo Configure seu Computador no menu principal, ou na barra de ferramentas:

Para conseguir executar todas as tarefas deste curso ser necessrio utilizar o usurio ROOT. Este o principal usurio no Linux, e que tem permisso para executar todos os programas. Por padro no possvel fazer Login com o usurio ROOT, mas para que isso acontea necessria apenas uma alterao no arquivo /var/lib/mandriva/kde4profiles/common/share/config/kdm/kdmrc. Este arquivo possui um campo chamado AllowRootLogin, que deve receber o valor true para permitir que o usurio ROOT faa login no KDE.

UNIDADE 6Instalao De Programas Objetivo: Aprender sobre a instalao de aplicativos e utilitrios no Mandriva. 1 Introduo No Linux, e em diversos sistemas operacionais, tudo que se faz feito com o auxlio de programas. Os programas possuem instrues especficas para a realizao de tarefas, como o Open Office Writer que um editor de textos, ou o Dolphin, o gerenciador de arquivos do KDE. Estes dois exemplos so de programas grandes e complexos, mas existem programas mais simples, como o TAR. O TAR um programa para a compactao de arquivos. No Linux todos os utilitrios, aplicativos, comandos e servidores (daemons), so programas. Alguns programas so utilizados para iniciar outros programas, como o Bash Shell. Outros so utilizados para finalizar todos os programas, como o Shutdown. No Mandriva Linux, e em vrias outras distribuies Linux, a principal ferramenta para a instalao de programas o RPM. A sigla RPM representa RedHat Package Manager, que significa Gerenciador de Pacotes RedHat. Como o prprio nome induz, este gerenciador foi criado pela empresa RedHat para a sua distribuio, e por consequncia, pode ser utilizado em todas as distribuies derivadas da RedHat. O gerenciador de instalao denomina pacote todos os programas do Linux, ento deste ponto em diante neste mdulo, ser utilizado o termo Pacote para se referir a qualquer programa instalvel no Linux. O nome pacote surgiu do fato de que o arquivo de instalao no contm apenas uma nica informao, mas um conjunto de informaes que sero utilizadas para auxiliarem o processo de instalao do programa, que tambm est includo no pacote. O pacote pode conter: arquivos de configurao, arquivos de documentao, manuais, arquivos com cdigo fonte, programas executveis, e outras informaes. A lista de distribuies 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

2 Funcionamento Do RPM Um pacote um arquivo binrio que contm as seguintes informaes: 1. Incio: identifica-o como sendo um pacote RPM, e possui algumas informaes de controle. 2. Assinatura: utilizada para garantir que o pacote que est sendo instalado realmente corresponde s informaes contidas no cabealho. Este campo importante, pois minimiza significativamente a instalao de pacotes errados, e principalmente, pacotes falsos. 3. Cabealho do Arquivo: inclui informaes referente ao nome do pacote, verso, arquitetura de instalao (SPARC, x86, PowerPC), arquivos que formam o pacote, dentre outras. 4. Arquivos de Instalao: este ponto em diante formado pelos arquivos que fazem parte do pacote. O arquivo do pacote de instalao possui a terminao .rpm, e um arquivo comprimido, pelo gzip ou bzip2, contendo todos os dados descritos acima. Em cada distribuio Linux que utiliza a instalao atravs de pacotes RPM existe um arquivo no diretrio /var/lib chamado rpm, que contm um banco de dados de todos os pacotes rpm instalados no computador. Este arquivo sempre verificado quando se deseja fazer uma instalao ou desinstalao de um pacote. 2.1 Formato Do Pacote Todo arquivo RPM que contm um aplicativo ou um utilitrio entregue obedecendo uma nomenclatura especfica:

Figura 1: Pacote de Instalao Exemplos: 1) abiword-2.6.4-42.46.x86_64.rpm Nome: abiword Verso: 2.6.4-42.46 Distribuio: sem especificao.

Arquitetura: Sistemas de 64 bits Intel ou AMD

2) MySQL-server-community-5.0.83-0.rhel5.ia64.rpm Nome: MySQL Server Community Verso: 5.0.83-0 Distribuio: RedHat Enterprise Linux 5 Arquitetura: Intel Itanium

3) MySQL-server-community-5.0.83-0.sles10.i586.rpm Nome: MySQL Server Community Verso: 5.0.83-0 Distribuio: SUSE Linux Enterprise Server 10 Arquitetura: Sistemas de 32 bits Intel ou AMD

4) man-pages-pt_BR-1.39-12362cl.noarch.rpm Nome: Man Pages em Portugus Brasileiro Verso: 1.39-12362cl Distribuio: sem especificao. Arquitetura: noarch (instalvel em qualquer arquitetura)

Os arquivos RPM que contm o cdigo fonte de um aplicativo ou utilitrio possuem uma pequena alterao na parte final do arquivo:

Figura 2: Pacote de cdigo fonte Exemplos: 1) qt-4.5.2-3.fc12.src.rpm

Nome: Qt toolkit Verso: 4.5.2-3 Distribuio: Fedora 12

2) mysql-5.1.34-2mdv2009.1.src.rpm Nome: MySQL Client Verso: 5.1.34-2 Distribuio: Mandriva 2009.1

3 Utilitrios Atualmente as principais distribuies Linux incluem um utilitrio que auxilia a instalao dos pacotes, tornando esta tarefa muito simples:

YUM: presente no Fedora, RedHat, CentOS e outros; up2date: utilizado em verses anteriores do RedHat; Synaptic: desenvolvido para o PCLinuxOS; YaST: utilizado nas distribuies SUSE e openSUSE; rpmdrake: presente no KDE distribuido com o Mandriva; SMART: includo em vrias distribuies derivadas do Fedora;

4 Bancos De Dados Sobre RPM Na Internet A Internet uma grande ferramenta de informaes, e os servios de informaes de pacotes RPM existem em vrios locais. Alguns dos principais so:

1) RPM find: http://www.rpmfind.net

2) RPM Pbone: http://rpm.pbone.net

3 Rpmdrake A utilizao do RPMDrake muito simples. Basta selecion-lo a partir do Centro de Controle, escolhendo a opo Instalar e Remover Programas que o RPMDrake ser iniciado, como mostra a figura 3:

Figura 3: Tela do RPMDrake

Com o RPMDrake o usurio 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 boto Aplicar localizado no canto inferior direito. Se necessitar instalar mais de um pacote, selecione todos os pacotes primeiro, e depois clique em Aplicar.

5 Instalao Manual Se o programa que voc quer instalar no for mostrado no RPMDrake, voc poder utilizar a instalao manual, atravs do programa RPM que pode ser utilizado pelo Terminal de Comandos. Para instalar um programa, basta digitar o seguinte: $ rpm -i

Se desejar instalar o pacote MySQL Server Community 5.0.83, voc dever ir para o diretrio que contm o arquivo de instalao deste pacote e digitar:

$ rpm -i MySQL-server-community-5.0.83-0.sles10.i586.rpm

Para remover um programa: $ rpm -e

Se desejar remover o pacote MySQL-server-community, voc digitar: $ rpm -e MySQL-server-community

Para consultar se um pacote est instalado: $ rpm -q

UNIDADE 7Manpages = Documentao Interna Objetivo: Aprender como acessar a documentao interna do Linux e do Mandriva. 1 Introduo Uma das caractersticas mais conhecidas dos sistemas Unix e similares, incluindo o Linux, a existncia de um programa que contm uma grande documentao sobre o sistema Unix, e seus programas utilitrios. Esse programa chamado de MANPAGE, que e a juno das palavras manual e pages (pginas). Este programa um utilitrio de documentao, e organizado em pginas, e cada pgina faz uma referncia a algum dos muitos utilitrios existentes nos sistemas Unix. 2 Utilizao Para utilizar o utilitrio de documentao, digite o comando man, de manual, na linha de comando do sistema, e o programa que ser verificado: $ man unix

Figura 1: Utilitrio de Documentao O utilitrio manpage apresenta uma vasta documentao sobre vrios programas, funes, utilitrios e termos em geral. A apresentao da documentao obedece um padro, mas em alguns casos este padro no seguido. Em relao ao idioma, grande parte da documentao traduzida para os disversos idiomas existentes no mundo, mas isso no acontece em todos os casos. A maior parte da documentao no traduzida est em ingls, mas podem surgir outros idiomas, como espanhol ou francs, no Mandriva Linux 2009. 3 Formato De Apresentao A documentao apresentada em um formato prprio, dividindo o texto em alguns tpicos. Os principais tpicos so: Nome: contm o nome do programa, ou funo, ou utilitrio, ou termo, e em alguns casos, contm tambm uma lista de termos associados, seguido de uma rpida descrio de uma ou duas linhas. Sinopse: apresenta o contexto de utilizao do programa ou funo ou utilitrio. Descrio: contm uma descrio explicando o funcionamento do programa, e algumas de suas caractersticas.

Exemplos: exemplos de utilizao, com explicaes, para melhorar o entendimento da documentao. Veja tambm: mostra alguns casos extras, de termos que esto associados documentao que est sendo vista. Alguns casos podero incluir outros tpicos, diretamente relacionados ao programa que est sendo visto ou includos pelo autor do texto da documentao: Opes de Entrada, Opes de Formatao, Ambiente, Defeitos Conhecidos, Arquivos, Autor, Histrico, Registro, dentre outros. 4 Sees Do Manpages Em alguns casos existir mais de uma documentao para um determinado termo. Isto acontece porque alguns comandos so utilizados tanto na linha de comando do Unix quanto em programas de computador, como acontece com o comando printf. A documentao do manpages dividida em Sees, e cada seo ir tratar de um caso especfico de utilizao daquele comando. Existem vrias sees disponveis para o manpages, dependendo de qual sistema est em uso. A tabela 1 mostra as sees presentes nas principais distribuies Linux e em algumas verses do Unix System IV: Seo 1 2 3 4 5 6 7 8 Tipo De Contedo Comandos prprios do sistema, executados na linha de comando Chamadas para o Sistema Operacional Biblioteca de Funes da linguagem C Arquivos Especiais (exemplo: unidades de dispositivo) Formato de Arquivos Jogos e Protetores de Tela Seo Geral Administrao de Sistema e Daemons Tabela 1: Sees presentas na manpages de algumas distribuies Linux No Unix System V algumas sees so diferentes, mas este sistema pouco utilizado, ento no ser abordado. Alguns poucos sistemas, tanto Unix quanto Linux, podem possuir algumas sees extras: Seo 0 9 Tipo de Contedo Biblioteca de Cabealho da linguagem C Rotinas do Ncleo do Sistema

n x p

Comandos TCL/TK Servidor de Interface X Window Comandos POSIX Tabela 2: Sees extras do manpages

Exemplos de utilizao: $ man printf

$ man fork

$ man nfs

$ man tcp

$ man ipconfig

$ man http

Para acessar a descrio desejada, basta informar o nmero desta ao executar o utilitrio manpages: $ man 3 printf

Alm disso, pode-se combinar o utilitrios manpages com outros utilitrios 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 Documentao Do Mandriva O Mandriva Linux tambm possui uma documentao prpria, disponvel em arquivos HTML, que so acessveis pelo Menu Iniciar do KDE, como pode ser visto na figura 3:

Figura 3: Manual e Documentao do Mandriva A diferena destes manuais que o enfoque para o Mandriva a utilizao de interfaces e utilitrios grficos para a realizao das tarefas.

UNIDADE 8Programao Objetivo: Aprender sobre programao no Linux utilizando Bash Shell. 1 Introduo Uma das caractersticas do Linux a possibilidade de construo de pequenos programas, chamados scripts, que so utilizados para realizarem pequenas tarefas de maneira automatizada.

Estes programas so executados atravs da prpria linha de comando, pois muitas distribuies disponibilizam um utilitrio de comando compatvel com o Bash Shell, que o interpretador dos scripts. Os scripts permitem a automao do processo de criao de usurios em grandes empresas, ou a automao da instalao de alguns programas, e podem ser utilizados por todos os usurios do sistema. Nesta Unidade sero apresentados os conceitos bsicos de programao no Linux. 2 Funcionamento Dos Scripts Os scripts do Linux so criados em arquivos de texto, sendo executados diretamente, no havendo necessidade de compilao (processo de converso do cdigo fonte para cdigo executvel). A execuo direta chamada de Interpretao, e o interpretador mais utilizado no sistema Linux o Bash Shell. 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: #!/bin/bash 2: 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 criao de scripts. Para executar um script deve-se realizar os seguintes procedimentos: 1. Alterar a permisso do arquivo para executvel 2. digitar o nome do arquivo onde foi gravado o script, precedido por ./ Em relao Permisso do Arquivo, sero vistos com maiores detalhes todas as opes possveis na Unidade 13. Por enquanto o comando que ser utilizado : $ chmod 755 , como pode ser visto na figura 2:

Figura 2: Alterao da permisso para executvel e execuo do script1

3 Construo De Scripts A construo de scripts no Linux muito semelhante construo de programas tradicionais, em Linguagem C ou Pascal. Um script poder ser formado por: Variveis: armazenam informaes temporariamente; Comandos: executam rotinas pr-definidas; Funes: executam rotinas definidas pelo programador. Na figura 3 apresentado mais um exemplo de script, contendo algumas variveis:

Figura 3: Script contendo declarao de variveis

Os comandos que esto disponveis atravs do prprio Bash Shell para a criao de scripts so: Comando echo read exit clear sleep tput stty if case Descrio Exibe uma informao na tela L informaes digitadas no teclado Termina a execuo do script Limpa a tela Paralisa temporariamente a execuo do script Altera o modo de exibio Configura a utilizao do terminal de comando Verificador condicional Verificador de expresso

for while

Comando de repetio determinada Comando de repetio condicional

Tabela 1: Comandos prprios do Bash Shell Alm destes comandos, pode-se utilizar qualquer comando/programa do Linux: ls, cp, cron, adduser, dentre vrios outros. Existem algumas caractersticas que so prprias no Bash Shell para a utilizao de alguns comandos, as principais so: Tratamento de Mensagens de Texto e Comando IF 3.1 Tratamento De Mensagens De Texto A criao de uma varivel de texto, como foi demonstrado na figura 3, muito simples. Mas algumas consideraes devem ser observadas: O texto poder ser escrito de trs modos diferentes: Aspas Duplas ( ): as variveis dentro do texto sero tratadas; Aspas Simples ( ' ' ): o texto ser exibido literalmente; Crase ( ` ` ): executaro 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 diferenas so na terminao do comando e na maneira como as condies so escritas nos scritps.

Um comando IF deve obedecer a seguinte sintaxe: if condio then comandos executados quando a condio verdadeira else comandos executados quando a condio falsa fi Figura 5: Comando IF

Nas linguagens tradicionais, quando se deseja verificar se uma varivel maior que outra, escreve-se o seguinte comando: IF Var1 > Var2 THEN Na programao de scripts do Linux o mesmo comando deve ser escrito da seguinte maneira: IF [ Var1 -gt Var2 ] THEN As condies matemticas ( =, , >, , < e ) so escritos atravs de cdigos. A tabela 2 mostra uma lista de equivalncia entre as condies matemticas: Condio Matemtica Equivalncia no Script = > < -eq -ne -gt -ge -lt

-le

Tabela 2: Equivalncia entre condies matemticas e comandos do script

Alm das condies matemticas, existem as condies de arquivo e diretrio: Condio -s arquivo -f arquivo -d diretrio -w arquivo -r arquivo -x arquivo Descrio Verifica se o arquivo no est vazio Verifica se um arquivo Verifica se um diretrio Verifica se o arquivo pode ser escrito Verifica se o arquivo apenas de leitura Verifica se o arquivo executvel Tabela 3: Condies para verificao de arquivos

Existem tambm os operadores lgicos, utilizados quando se deseja incluir mais de uma condio em um comando IF: Condio Lgica ! -a -o Descrio Negao E (and) OU (or) Tabela 4: Operadores Lgicos

E para concluir, os comandos para verificao de textos: Verificao texto1 = texto2 texto1 != texto2 -n texto -z texto Descrio Verifica se so iguais Verifica se so diferentes Verifica se o texto no nulo Verifica se o texto nulo Tabela 5: Operadores Lgicos

A seguir, na figura 6, apresentado um script contendo alguns dos comandos vistos nesta Unidade:

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 sequncia de instrues de acordo com um valor pr-definido; Comando WHILE: utilizado para repetir uma sequncia de instrues de acordo com uma condio pr-definida; Comando CASE: utilizado para executar uma sequncia de instres de acordo com um valor informado.

UNIDADE 9Gerenciamento De Processos Objetivo: Aprender sobre o gerenciamento e controle de programas em execuo no Linux. 1 Introduo Um processo, na maioria dos sistemas operacionais, o nome dado a um programa em execuo. No Linux, tanto os comandos, quanto utilitrios e aplicativos, so todos considerados processos. Existe uma srie de utilitrios que auxiliam o gerenciamento dos processos em execuo, permitindo que o usurio tenha o controle sobre eles. Nesta Unidade sero mostradas algumas caractersticas dos processos no Linux, e algumas ferramentas de manipulao de processos. As ferramentas mostradas aqui sero as seguintes: Nativas do Linux:

TOP, PS e KILL;

Nativas do Mandriva:

Monitor de Sistema

2 Caractersticas De Um Processo Todos os processos so programas em execuo gerenciados pelo sistema operacional. Para realizar este gerenciamento os processos so criados com caractersticas que sero utilizadas e manipuladas durante a sua execuo. Dentre as principais caractersticas esto as seguintes:

Proprietrio: usurio que iniciou a execuo do programa que originou o processo; Estado: indica o estado de execuo do processo, os mais comuns so: o D (Aguardando) processo espera a liberao de algum recurso; o R (Executando) processo realizando alguma tarefa; o S (Parado) alguma tarefa interrompeu a execuo do processo; o Z (Zumbi) o processo finalizou, mas ainda permanece carregado na memria. Prioridade: indica a prioridade de execuo do processo por um valor numrico. Quanto menor o valor, maior a prioridade de execuo; Comando: comando que originou a execuo do processo.

Alm das caractersticas citadas acima, existem vrias outras, como: tempo de execuo, consumo de processador, consumo de memria, entre outros, como pode ser visto na figura 1.

Figura 1: Processos em Execuo

3 Comando Top O comando TOP utilizado para mostrar os processos em execuo no computador. A figura 2 mostra uma apresentao deste comando:

Figura 2: Comando TOP

Atravs do comando TOP pode-se visualizar uma srie de caractersticas dos processos em execuo, e escolh-las para serem exibidas na tela. o TOP permanece em execuo continua, isto , aps a exebio dos processos em execuo, o comando continua em execuo, atualizando as informaes sobre os processos at o momento em que o usurio queira finalizar o TOP. Na figura 2 as caractersticas escolhidas foram as seguintes: Caracterstica PID UID USER PR TIME RES VIRT Flags Time+ %CPU %MEM S COMMAND Descrio Nmero de identificao para o processo. Nmero de identificao do usurio que iniciou o processo. Nome do usurio que iniciou o processo. Prioridade do Processo. Tempo de execuo. Quantidade de memria utilizada. Imagem Virtual. Flags de execuo. Tempo de execuo extendido, inclui os segundos. Percentual de utilizao do Processador. Percentual de utilizao da Memria. Estado do Processo. Comando que originou o processo. Tabela 1: Caractersticas apresentadas pelo comando TOP

Para visualizar todas as opes de caractersticas que podero 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 diferena que enquanto o TOP permanece em execuo continua, o comando PS no . O comando PS mostra os processos executados, e suas caractersticas, no instante em que o comando acionado, como pode ser visto na figura 2:

Figura 3: Comando PS

As colunas exibidas pelo comando PS podem ser escolhidas pelo usurio, utilizando as opes extras do comando. Para a opo u so exibidas as colunas: USER: Nmero de identificao do usurio; PID: Nmero de identificao do processo; %CPU: Percentual de utilizao do processador; %MEM: Percentual d utilizao da memria; VSZ: Memria Virtual (Disco-Rgido); RSS: Memria Residente (RAM); TTY: Terminal ou Console de inicializao do processo; STAT: Status do processo; START: Hora de incio do processo; TIME: Tempo de execuo; COMMAND: Linha de comando do processo. As principais opes do comando PS so:

$ ps -AjF: exibe todos os processos em execuo no computador; $ ps -f u : exibe todos os processos de , se for deixado em branco, exibe os processos do usurio atual.

5 Comando Kill O comando KILL utilizado para enviar um sinal a um processo. Um sinal um comando especial enviado a um processo em execuo. Os possveis sinais so:

STOP: inativa temporariamente a execuo de um processo; CONT: reativa um processo que recebeu o sinal STOP; SEGV: informa erros de memria; TERM: ordena o trmino da execuo de um processo; ILL: informa erros de execuo de instrues; KILL: mata um processo que parou de responder.

O comando KILL geralmente utilizado para encerrar a execuo de um processo que apresentou algum erro de execuo e no poder finalizar corretamente. Mas tambm pode ser utilizado em programas que esto 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 execuo.

Outro caso apresentado na figura 5, onde um programa escrito em Linguagem C, PROG_MEM.C, consome 256MB de memria, correspondente 51,4% da memria RAM disponvel no computador:

Figura 5: Processo consumindo muita memria 6 Monitor De Sistema O Mandriva Linux tambm possui um gerenciador de processos grfico, chamado de Monitor do Sistema, que pode ser visto na figura 6:

Figura 6: Monitor do Sistema

Para enviar um sinal a um processo, basta clicar com o boto direito em cima do processo, como pode ser visto na figura 7:

Figura 7: Enviando um sinal E para visualizar a utilizao geral dos recursos do computador, basta clicar na aba Carga do Sistema, como pode ser visto na figura 8:

Figura 8: Carga do Sistema

UNIDADE 10Runlevels = Nveis De Execuo Objetivo: Aprender sobre a inicializao de processos dentro do Linux. 1 Introduo Ao iniciar, o primeiro programa do Linux a iniciar o INIT. Este programa ser utilizado para determinar a maneira como todos os processos sero criados. Para isso, o INIT l o contedo do arquivo /etc/inittab, pois neste arquivo esto descritas as configuraes de inicializao dos processos. A principal caracterstica de execuo de um processo o Nvel de Execuo (Run Level, em ingls). a definio do nvel de execuo que determinar como os processos sero executados pelo sistema operacional. Algumas distribuies Linux utilizam uma configurao de inicializao semelhante ao BSD, como acontece com o Slackware. Em outras verses a inicializao controlada por um programa chamado UPSTART, sendo este o programa adotado no Ubuntu. Como este Mdulo baseado no Mandriva Linux 2009, o programa INIT ser estudado nesta Unidade, 2 Nvel De Execuao De Um Processo O Nvel de Execuo determina como um processo ser executado, isto , quais as possibilidades de execuo de um determinado processo. Por exemplo: o comando LS s pode ser executado pelo terminal de comandos, em modo texto. No modo grfico (KDE ou Gnome) iniciado um aplicativo grfico, Konsole, que possibilita a execuo de comandos em modo texto. Atualmente existem ao todo 10 nveis de execuo nas diversas distribuies do sistema operacioal Linux e Unix: Nvel 0 1 2 3 4 5 Descrio Modo de Inicializao Modo de execuo para Usurio nico Modo de execuo para Multi-usurio, sem NFS Modo de execuo para Multi-usurio Completo Reservado Modo de execuo para Ambiente Grfico

6 7 8 9

Modo de Reinicializao Modo de Desligamento Utilizado em sistemas Unix dedicados Utilizado em sistemas Unix dedicados Tabela 1: Valores para os Nveis de Execuo

O Nvel 1 em algumas verses do Unix chamado de Nvel S (Single). Os valores dos nveis de execuo so informados no arquivo /etc/inittab, e um mesmo processo poder ter mais de um valor para o seu nvel de execuo. que ser mostrado no prximo captulo. 3 Arquivo /Etc/Inittab O arquivo /etc/inittab (Tabela de Inicializao) armazena a configurao de inicializaao que ser realizada pelo programa INIT. O arquivo /etc/inittab do Mandriva Linux mostrado parcialmente na figura 1: # Default runlevel. id:5:initdefault:

# System initialization. si::sysinit:/etc/rc.d/rc.sysinit

l0:0:wait:/etc/rc.d/rc 0 l1:1:wait:/etc/rc.d/rc 1 l2:2:wait:/etc/rc.d/rc 2 l3:3:wait:/etc/rc.d/rc 3 l4:4:wait:/etc/rc.d/rc 4 l5:5:wait:/etc/rc.d/rc 5 l6:6:wait:/etc/rc.d/rc 6

# Trap CTRL-ALT-DELETE ca::ctrlaltdel:/sbin/shutdown -t3 -r now

# Single user mode ~~:S:wait:/bin/sh Figura 1: Parte do arquivo /etc/inittab do Mandriva Linux 2009 O arquivo /etc/inittab segue o seguinte formato: Identificador : Nvel de Execuo : Ao : Processo O campo Identificador armazena um valor referente entrada na tabela de inicializao. O campo Nvel de Execuo armazena o nvel de execuo do processo associado. O campo Ao armazena um das possveis aes a ser tomada em relao ao processo associado:

respawn: o processo ser reinicializado, mesmo que termine sua execuo normalmente. wait: o processo iniciar quando seu nve de execuo for iniciado, e o programa INIT aguardar o trmino do processo. once: o processo iniciar apenas quando o seu nvel de execuo for iniciado. boot: o processo iniciar durante a inicializao do sistema. bootwait: o processo iniciado durante a inicializao do sistema, que ser interrompida, e retomada apenas com o trmino da execuo do processo. off: no executa o processo. ondemand: o processo iniciar quando o nvel de execuo for iniciado. initdefault: especifica qual nvel de execuo ser iniciado ao terminar a inicializao do sistema. sysinit: o processo iniciar durante a inicializao do sistema, antes dos processos marcados com boot ou bootwait. powerwait: o processo receber uma mensagem para encerrar quando houver uma falha no fornecimento de energia. (queda da carga da bateria, por exemplo) powerfail: o processo ser automaticamente encerrado quando houver falha no fornecimento de energia. powerokwait: o processo iniciar quando a energia for reativada. ctrlaltdel: O processo iniciar ao pressionar as teclas CTRL + ALT + DEL kbrequest: O processo iniciar quando o INIT receber um sinal do teclado.

O campo Processo armazena o processo que ser executado. Os trechos do arquivo /etc/inittab mostrados na figura 1 definem o seguinte:

id:5:initdefault: o Identificador: id o Nvel de Execuo: 5 o Ao: initdefault (Faz o Nvel 5 ser o nvel de execuo ao terminar a inicializao do sistema) o Processo:

si::sysinit:/etc/rc.d/rc.sysinit o Identificador: si o Nvel de Execuo: o Ao: sysinit (o processo iniciar na inicializao do sistema) o Processo: /etc/rc.d/rc.sysinit

l0:0:wait:/etc/rc.d/rc 0 l1:1:wait:/etc/rc.d/rc 1 l2:2:wait:/etc/rc.d/rc 2 o Identificador: 10,

11, 12,...o

Nvel de Execuo: 0,

1, 2,...o o o o

Ao: wait (o processo iniciar quando iniciar o nvel de execuo) Processo: /etc/rc.d/rc 0, /etc/rc.d/rc 1, /etc/rc.d/rc 2, ...

ca::ctrlaltdel:/sbin/shutdown -t3 -r now o Identificador: Ca o Nvel de Execuo: o Ao: ctrlaltdel (o processo iniciar quando for pressionado CTRL+ALT+DEL) o Processo: /sbin/shutdown -t3 -r now

~~:S:wait:/bin/sh o Identificador: ~~ o Nvel de Execuo: S (poderia ser 1) o Ao: wait o Processo: /bin/sh

UNIDADE 11Arquivos De Log Objetivo: Aprender sobre o registro de atividades realizadas pelo sistema, e deteco de ocorrncia de falhas em processos. 1 Introduo Quando um processo executa uma tarefa de maneira errada, por erro no cdigo ou por falha em algum equipamento, desejvel que alguma informao referente a esse erro seja passada ao usurio do sistema, para que o mesmo possa corrigir o erro (quando for no cdigo) ou evit-lo (quando for em um equipamento). Os arquivos de Log so utilizados para auxiliar o usurio nesta tarefa de deteco de erros na execuo dos processos. Quando um processo no consegue completar uma tarefa com sucesso, ou seja, h uma falha na execuo da tarefa, algumas informaes so gravadas para que o usurio possa avaliar o que aconteceu durante a execuo daquela tarefa. A principal ferramenta no Linux para a gravao dos arquivos de Log o utilitrio SYSLOG. 2 Syslog O SYSLOG realiza a tarefa de gravar mensagens referentes a:

Execuo de processos; Mensagens do kernel.

Este utilitrio dividido em 3 mdulos:

syslogd: daemon responsvel pelo Log dos processos; OpenLog: conjunto de funes para serem utilizadas em programas que sero gerenciados pelo SYSLog; Logger: utilitrio de linha de comando, que permite interagir com o SYSLog modificando algumas caractersticas da gravao dos Log's.

O mais importante dos 3 mdulos o syslogd que far o controle e gravao dos Log's dos processos. 3 Daemon Syslogd O syslogd o daemon, utilitrio inicializado como servio do sistema, responsvel pela gravao dos Log's dos processos, e dividido em 2 partes: klogd e syslogd. 3.1 Klogd O klogd o daemon responsvel em gravar os Log's gerados pelo kernel do sistema. O arquivo de Log gravado no diretrio /proc. 3.2 Syslogd O syslogd o daemon responsvel por capturar os Log's de todos os processos, inclusive do kernel, que so enviados para o klogd. Geralmente os arquivos de Log so gravados no diretrio /var/log, mas esse local pode variar de uma distribuio para outra. Os arquivos de Log so gravados geralmente com o nome do processo que gerou o Log seguido da extenso .log: Arquivo boot.log cron cups mysql.log auth.log yum.log Xorg.0.log message Descrio Informaes sobre a inicializao do sistema. Diretrio para gravar os Log's gerados pelo CRON. Diretrio para gravar os Log's das impressoras. Log's gerados pelo MySQL. Informaes sobre autenticao. Log's gerados pelo Yum. Log's gerados pelo Servidor X. Diretrio de mensagens gerais. Tabela 1: Arquivos de Log.

4 Visualizando O Log Uma das maneiras mais utilizadas para visualizar um arquivo de Log atravs do comando TAIL, como pode ser visto na figura 1:

Figura 1: Utilizao do comando TAIL Como pode ser visto na figura 1, o arquivo auth.log possui 18236 bytes, e seria invivel a sua leitura completa. Para agilizar essa tarefa utiliza-se o comando TAIL, que exibe apenas as ltimas linhas. Uma das informaes vistas na figura 1 a seguinte: o usurio RICARDOMS acessou a conta do usurio ROOT. Se esse procedimento for autorizado, ento no houve nenhuma falha: Sep 15 08:20:49 localhost su: pam_tcb(su:auth): Authentication passed for root from ricardoms(uid=500) Mas, se esse procedimento no foi autorizado, ocorreu um gravssimo erro de segurana. Uma boa ttica para a monitorao da segurana o comando: $ tail -f /var/log/secure Este comando exibir constantemente as ltimas linhas do arquivo de Log de segurana, possibilitando um acompanhamento contnuo da situao do servidor. 5 Configurao Do SYSLOG A configurao do SYSLOG realizada utilizando-se o arquivo /etc/syslog.conf. A sintaxe bsica deste arquivo a seguinte: recurso.ao arquivo

Os recursos so identificados para a gravao das mensagens. Os programas utilizados no sistema utilizaro alguns destes recursos, e quando for um recurso que est em monitorao, um Log ser gravado no arquivo especificado. No SYSLOG existem 21 recursos, os mais utilizados so:

Recurso kern user mail daemon auth cron syslog * Kernel do Linux

Programas que utilizam Programas do usurio Servidor de Correio Daemon's inicializados Programas de Autenticao e Segurana CRON O prprio SYSLOG Todos os programas sero monitorados. Tabela 2: Recursos disponveis no SYSLOG.

As aes especificam o momento em que o Log ser gravado: Recurso emerg alert crit err warn notice info debug * Emergncia crtica Situao de emergncia momentnea Condies crticas Erro de execuo Situao de advertncia Situao para investigao Informao Depurao de programas Qualquer situao Tabela 3: Aes que resultam em Log. Por exemplo:

Descrio

user.* /var/log/user.log: gravar todas as mensagens de um usurio no arquivo /var/log/user.log. Ex: login do usurio, inicializao de aplicativos, erros, etc. kern.warn /var/log/kernel/warnnings.log: gravar todas as mensagens de advertncia originadas pelo kernel no arquivo /var/log/kernel/warnnings.log. Ex: falha ao iniciar processo.

Para no acumular excesso de informao de Log, o Linux realiza a substituio dos Log's antigos, utilizando o programa LOGROTATE. O arquivo de configurao o /etc/logrotate.conf. Virios programas auxiliares para o monitoramento de Log's foram desenvolvidos, sendo os principais:

LogWatch Syslog-NG Swatch LogCheck

UNIDADE 12Administrao De Usurios Objetivo: Aprender sobre a administrao de contas de usurios no Linux. Como criar e gerenciar usurios do servidor. 1 Introduo A principal tarefa de um administrador de um servidor o Gerenciamento de Usurios. Os usurios sero cadastrados para terem acessarem ao Servidor de acordo com regras estabelecidas. Estas regras definiro, por exemplo, quais arquivos sero acessveis por um determinado usurio, quais equipamentos sero utilizados, quais os horrios que o usurio poder se conectar ao Servidor, dentre outras. Nesta Unidade sero vistos alguns comandos e utilirrios que permitiro ao administrador gerenciar os usurios. Utilitrios disponveis no Mandriva Linux:

Atravs do Terminal de Comandos: o Gerenciamento de Usurios: useradd, userdel, usermod, passwd; o Gerenciamento de Grupos: groupadd, groupdel, groupmod; Atravs do Centro de Controle: o Userdrake: Gerenciador de Usurios do Sistema (tambm pode ser iniciado pelo terminal de comandos: userdrake). O Userdrake acessvel apenas pelo ROOT, no sendo possvel a um usurio comum utiliz-lo.

As informaes dos usurios so armazenadas nos seguintes arquivos: /etc/shadow e /etc/passwd. As informaes referentes aos grupos so armazenadas no arquivo: /etc/group. Estes arquivos so visados por intrusos, os chamados hackers, que buscam informaes e senhas de usurios, para terem acesso todos os dados armazenados nos servidores de uma empresa. Na Seo seguinte sero mostradas as maneiras de se administrar Usurios e Grupos no Mandriva Linux, tanto pelo Terminal de Comandos, quanto pelo Centro de Controle.

2 Gerenciando Usurios Atravs do Terminal de Comandos, pode-se utilizar vrios comandos de administrao dos usurios. Estes comandos permitem criar, apagar e modificar as informaes referentes a usurios e grupos. 2.1 Adicionando Um Usurio Para adicionar usurios atravs do Terminal de Comandos, utiliza-se o comando useradd. A sintaxe deste comando a seguinte: $ useradd [-c comment] [-d home_dir] [-e expire_date] [-f inactive_days] [-g initial_group] [-G group[,...]] [-m [-k skeleton_dir]] [-o] [-p passwd] [-s shell] [-u uid] login Figura 1: Comando useradd As principais opes do comando useradd so descritas na Tabela 1: Opo -c -d -g login Descrio Comentrio, geralmente associado ao nome completo do usurio. Diretrio de utilizao do usurio. O padro o /home, mas pode ser qualquer outro. Grupo associado ao usurio. O grupo deve ser criado antes do usurio. Nome utilizado para o login do usurio. Tabela 1: Principais opes do comando useradd.

Se o grupo no for informado, ento ser criado um grupo com o mesmo nome do usurio, e o usurio ser associado a ele. Para adicionar o usurio ricardo, pertencente ao grupo administradores, digita-se o comando mostrado na figura 2: $ useradd -c Ricardo M. S. ricardoms Figura 2: Comando useradd para adicionar o usurio ricardo Um detalhe no comando useradd, que atrapalha seu uso inicialmente, o tratamento da senha do usurio. A senha passada no comando useradd deve estar criptografada, sendo quase invivel inform-la neste comando. Se a senha no for informada, a conta do usurio recm-criada ficar bloqueada, at que se defina uma senha para o mesmo.

Aps a utilizao do comando useradd, deve-se utilizar o comando passwd, para se criar uma senha para o usurio, e assim permitir que o mesmo tenha acesso ao sistema, como pode ser visto na figura 3: $ useradd -c Ricardo M. S. ricardoms $ passwd ricardoms Figura 3: Criao de usurio e definio da senha Se j tiver digitado o comando da figura 2, utilize um outro nome de usurio para o comando da figura 3. Para adicionar um usurio no Userdrake, basta acess-lo no Centro de Controle, e clicar no boto Adicionar Usurio, e preencher os campos solicitados, como pode ser visto na figura 4:

Figura 4: Adicioando usurio pelo Userdrake Quando se cria uma pequena quantidade de usurios pode-se utilizar tanto a comando useradd quanto o Userdrake. Mas quando deseja-se criar uma quantidade grande de usurios estas ferramentas no so adequadas, pois demoraria-se muito tempo com elas. A melhor estratgia a criao de um script. Crie a seguinte lista de usurios no Userdrake:

Nome: Edson Arantes do Nascimento, Login: pele. Nome: Ayrton Senna, Login: senna. Nome: Rubens Barrichelo, Login: rubens. Nome: Aline Barros, Login: aline. Nome: Ana Hickman, Login: ana.

A tela apresentada pelo Userdrake dever ser semelhante tela mostrada na figura 5:

Figura 5: Usurios criados com o Userdrake

2.2 Removendo Um Usurio Para remover um usurio pelo Terminal de Comandos, basta digitar o comando userdel -r , como mostrado na figura 6: $ userdel -r pele Figura 6: Remoo de usurio O comando userdel remove o usurio, e a opo -r remover o diretrio do usurio. Se ela no for passada, o diretrio do usurio dever ser removido manualmente. Para apagar um usurio pelo Userdrake, basta selecionar o usurio a ser removido, e clicar no boto Apagar.

2.3 Modificando Um Usurio A modificao dos dados de um usurio pelo Terminal de Comandos feita com o comando usermod. Este comando muito semelhante ao comando useradd, tendo a mesma sintaxe: $ usermod [-c comment] [-d home_dir] [-e expire_date] [-f inactive_days] [-g initial_group] [-G group[,...]] [-m [-k skeleton_dir]] [-o] [-p passwd] [-s shell] [-u uid] login Figura 7: Comando usermod As opes so as mesmas do comando useradd, e a alterao ser imediata. Para alterar os dados de um usurio pelo Userdrake, basta selecion-lo e clicar no boto Editar, como pode ser visto na figura 8:

Figura 8: Edio do uusurio pelo Userdrake

2.4 Alterando A Senha De Um Usurio A alterao da senha poder ser feita pelo comando passwd, ou pelo Userdrake. Se a alterao da senha for feita pelo prprio usurio, e o mesmo utilizar o comando passwd, sero necessrios 3 passos: 1. Informar a senha atual; 2. Informar a nova senha; 3. Repetir a nova senha. Se a alterao da senha for feita pelo ROOT, tanto com o comando passwd quanto pelo Userdrake, sero necessrios 2 passos: 1. Informar a nova senha; 2. Repetir a nova senha. 2.5 Adicionando Um Grupo Para adicionar um grupo pelo Terminal de Comandos utiliza-se o comando groupadd , como pode ser visto na figura 9: $ groupadd fiscal Figura 9: Adio de um novo grupo Opcionalmente pode-se informar o nmero de identificao do grupo, com a opo -g NUM, da seguinte maneira: $ groupadd -g 2009 fiscal. Para adicionar um grupo pelo Userdrake, basta clicar no boto Adicionar Grupo e prencher as informaes necessrias, como mostra a figura 10:

Figura 10: Adio de grupo pelo Userdrake

2.6 Removendo Um Grupo Para remover um grupo, deve-se verificar se o mesmo no possui nenhum usurio associado a ele. Para isso, utiliza-se o Userdrake, e verificar a aba Grupos, ou ento verifica-se os usurios criados no diretrio /home, aplicando para cada um o comando groups , e assim v-se os grupos associados a cada usurio. Se um grupo no contiver nenhum usurio, ento poder ser removido do sistema. Para remover um grupo pelo Terminal de Comandos, utiliza-se o comando groupdel . Pelo Userdrake, basta selecionar o grupo, e clicar no boto Excluir. 2.7 Modificando Um Grupo Para modificar um grupo pelo terminal de comandos utiliza-se o comando groupmod. possvel modificar-se o Nmero de Identificao do grupo, com a opo -g, ou o Nome do grupo, com a opo -n, como pode ser visto na figura 11: $ groupmod -g 2010 -n Fiscal2010 fiscal Figura 11: Modificao do grupo fiscal O comando da figura 12 modificar o grupo fiscal, renomeando-o para Fiscal2010, e tambm modificar o seu nmero de identificao, para 2010. Para modificar um grupo pelo Userdrake, basta selecionar o grupo e clicar no boto Editar, e alterar as informaes desejadas. 2.8 Criao Automatizada De Usurios Com um script, pode-se criar uma quantidade de usurios do tamanho que se queira, e todo o processo de configurao da conta dos usurios estar automatizado no script, como pode ser visto na figura 12:

Figura 12: Criao automatizada de usurios

No script simplificado mostrado na figura 12 so criados alguns usurios para o grupo fiscal. Os nomes dos usurios esto armazenados no arquivo fiscais.txt, e o script gravado no arquivo cadastro.scr. No arquivo cadastro.scr as principais linhas so:

useradd -g fiscal -d /home/$usuario -m $usuario: criao do usurio; echo $usuario123 | passwd stdin $usuario: criao da senha.

A senha dos usurios definida da seguinte maneira: para o usurio burti a senha burti123, para o usurio fitipaldi a senha fitipaldi123, e assim por diante. Para a criao de senhas mais complexas, um script mais complexo ser necessrio. Ao final destas etapas, considerando a existncia do grupo fiscal e do usurio pele, altere os usurios para que a tela final do Userdrake seja semelhante a tela apresentada na figura 13:

Figura 13: Tela final com grupos dos usurios modificados

UNIDADE 13

Permisses De Acesso Objetivo: Aprender sobre o acesso arquivos e diretrios em ambiente com vrios usurios. 1 Introduo Uma das caractersticas dos sistemas Unix, portanto tambm presente no Linux, a capacidade de gerenciamento de mltiplos usurios no sistema. Esta caracterstica define um sistema como sendo Multi-usurio. Em sistemas multi-usurio, os arquivos e diretrios passam a pertencer a usurios especficos, ou a grupos de usurios. O Linux possui a capacidade de classificar a maneira como um arquivo ou diretrio ser acessado pelos usurios do sistema. Esta classificao dividida em 3 partes:

Proprietrio do arquivo: classificao para o usurio que possui controle total sobre o arquivo, sendo geralmente o criador do arquivo; Grupo de usurios: classificao para os usurios que compartilham o mesmo grupo do proprietrio do arquivo; Todos os usurios: classificao feita a todos os usurios do sistema.

2 Organizao Do Acesso Quando um usurio criado no Linux, um grupo dever ser definido para este usurio. Se o grupo no for definido, ento um grupo com o mesmo nome do usurio ser criado e associado ao usurio. Se no houver necessidade de integrao entre os usurios, ento no existe problema em ter um grupo para cada usurio, mas se a inteno integrar as atividades e tarefas dos usurios, ser mais vantajoso criar grupos de usurios, que compartilharo alguns recursos do sistema. Uma estratgia simples e eficiente para a definio dos grupos de usurios a separao por atividades, por exemplo, usurios que trabalham em um determinado setor so cadastrados em um mesmo grupo. Alm de definir um grupo principal, podem-se definir grupos secundrios, que permitiro maior compartilhamento de recursos no sistema. Para associar um usurio a um grupo, pode-se fazer isso na criao do usurio ou atravs do comando usermod. Por exemplo, se o usurio joao precisar ser associado ao grupo fiscal pode-se utilizar uma das duas alternativas apresentadas na figura 1: $ useradd -g fiscal joao $ usermod -g fiscal joao Figura 1: Definio do grupo fiscal para o usurio joao.

Nos dois casos apresentados na figura 1 o grupo fiscal dever existir antes de se aplicar o comando ao usurio. Para se associar mais de um grupo a um usurio, por exemplo, os grupos contabilidade e administrador, deve-se criar os grupos, e aplicar, por exemplo, o comando apresentado na figura 2: $ usermod -G contabilidade,administrador joao Figura 2: Definio de novos grupos para o usurio joao. No exemplo mostrado na figura 2, os grupos contabilidade e administrador devero existir antes da aplicao do comando. Com os comandos das figuras 1 e 2 executados, tem-se que o usurio joao poder acessar os arquivos disponibilizados para os grupos fiscal, contabilidade e administrador. Para incluir ou excluir grupos para um usurio pelo Userdrake, basta selecionar o usurio, clicar em Editar, e depois clicar na aba Grupos, e marcar os grupos que se deseja associar quele usurio:

Figura 3: Usurio ricardoms est associado apenas aos grupos administrador, contabilidade e fiscal.

Todo usurio tem um grupo principal, que fica visivelmente associado ao usurio. Este grupo chamado de Grupo Primrio. Na figura 3 v-se que o grupo primrio do usurio ricardoms o grupo administrador. Todo arquivo que for criado pelo usurio ricardoms estar associado ao grupo administrador, enquanto este grupo for o Grupo Primrio. Se o grupo primrio for alterado, os novos arquivos sero associados ao novo grupo primrio, mas os antigos permanecero com o grupo antigo.

UNIDADE 14Permisses De Acesso Objetivo: Aprender sobre o acesso arquivos e diretrios em ambiente com vrios usurios. 1 Introduo Os sistemas Linux possuem a caracterstica de permitirem a criao de vrios usurios e grupos, e o gerenciamento dos arquivos e diretrios ser feito de acordo com estes usurios e grupos. Nesta unidade sero vistos alguns comandos utilizados para se modificar o acesso aos arquivos e diretrios. 2 Modificao Do Acesso Os arquivos e diretrios no Unix so organizados de maneira que o acesso aos mesmos sejam definidos em 3 nveis: 1. Proprietrio do arquivo; 2. Usurios do mesmo grupo associado ao arquivo; 3. Todos os usurios do sistema. Quando um arquivo ou diretrio criado, ele associado a um usurio e a um grupo. Alm disso, sero definidas as restries ou permisses de acesso que os outros usurios tero, como pode ser visto na figura 1:

Figura 1: Nveis de acesso de um arquivo

Os tipos de acesso aos arquivos e diretrios so:

Leitura: permite visualizar o contedo, representado pela letra r; Escrita: permite alterar o contedo, representado pela letra w; Execuo: permisso de execuo, representado pela letra x.

Por exemplo, o arquivo Relatrio.odt apresentado na figura 2 possui as seguintes caractersticas: -rw-r----- joao fiscal Relatrio.odt Figura 2: Nveis de acesso para o arquivo Relatrio.odt

O proprietrio pode: Escrever e Ler; os usurios do grupo podem Ler, e os demais usurios no possuem acesso ao arquivo. Os diretrios so representados com a letra d no incio das permisses: drwxr-x--- joao fiscal Documentos Figura 3: Nveis de acesso para o diretrio Documentos

No exemplo mostrado na figura 3, o diretrio Documentos pode ser Lido, Escrito e Executado pelo seu proprietrio, e apenas Lido e Executado pelos usurios do grupo fiscal.

Pra definir restries ou permisses de acesso utilizado o comando chmod. As restries e permisses so definidas nos campos rwx a partir de nmeros decimais. Os nmeros decimais representam nmeros binrios, ento se a inteno alterar o arquivo Relatrio.odt para permitir que os usurios do grupo do arquivo possam editar este arquivo deve-se digitar o comando apresentado na figura 4: $ chmod 760 Relatrio.odt Figura 4: Utilizao do comando chmod para modificar o acesso Relatrio.odt

So utilizados sempre 3 nmeros no comando chmod. O primeiro ir alterar o acesso do proprietrio, o segundo do grupo e o terceiro para todos os usurios. Cada um dos nmeros varia de 0 7, representando as seguintes operaes: Nmero 0 1 2 3 4 5 6 7 Bits 000 001 010 011 100 101 110 111 Acesso ----X -W- WX R-R-X RW RWX

Tabela 1: Representao dos modos de acesso

Os nmeros 0, 1, 2, e 3 raramente so utilizados, pois no permitem a manipulao completa dos arquivos e diretrios. Por exemplo, um diretrio que esteja com o seguinte nvel de acesso: d--x--x--x documentos poder ser acessado, mas seus arquivos no podero ser listados. Este tipo de permisso s faz sentido quando se sabe exatamente qual arquivo ser acessado em um diretrio. Pois se pode informar o caminho completo do arquivo e acess-lo, sem interferir nos demais arquivos do diretrio. Por exemplo, assumindo que o usurio atual seja joao e que o mesmo queira acessar o arquivo Relatrio.odt criado pelo usurio senna:, e que o mesmo encontra-se no diretrio d--x--x--x documentos com permisso total de acesso para os usurios do grupo fiscal, pode-se realizar o comando apresentado na figura 5: $ oowriter /home/senna/documentos/Relatrio.odt Figura 5: Acesso ao arquivo Relatrio.odt pelo usurio joao

Os scripts necessitam de um acesso que permita a execuo destes arquivos, ento sero utilizados os nmeros 5 ou 7, pois o contedo do arquivo dever ser lido para que os comandos sejam executados.

3 Modificao De Grupo E Proprietrio Para modificar o grupo de um arquivo (ou diretrio) utiliza-se o comando chgrp, da seguinte maneira: chgrp , como pode ser visto na figura 6:

$ chgrp administrador Relatrio.odt Figura 6: Alterao do grupo do arquivo Relatrio.odt

Para modificar o proprietrio de um arquivo (ou diretrio) utiliza-se o comando chown, da seguinte maneira: chown , como pode ser visto na figura 7: $ chown joao Relatrio.odt Figura 7: Alterao do proprietrio do arquivo Relatrio.odt

Deve-se tomar cuidado com estes dois comandos, pois o ideal que os arquivos de um usurio estejam localizados em seus diretrios.

4 Modificaes Feitas No KDE Para realizar estas alteraes no KDE, de permisso de acesso e modificar o grupo ou proprietrio de um arquivo, basta selecionar o arquivo, clicar com o boto direito em cima do nome do arquivo, e ir na aba Permisses, como mostra a figura 8:

Figura 8: Utilizando o KDE para alterar as propriedades de acesso do arquivo

UNIDADE 15Agendamento De Tarefas Objetivo: Aprender sobre o agendamento da execuo de programas no Linux

1 Introduo Algumas tarefas no Linux so executadas quando surge a necessidade, por exemplo, a criao de contas de usurio. Mas algumas tarefas so executadas em tempos determinados, como a cpia de arquivos ou o envio de informaes. Para realizar estas tarefas que precisam ser executadas em um instante especfico, podese utilizar os programas cron e at, que foram criados com o propsito de gerenciar o Agendamento de Tarefas. O programa cron utilizado para agendar a execuo de um programa em um detemrinado horrio, e se for necessrio, repetir a execuo em intervalos de tempo escolhidos pelo usurio. O programa at realiza a execuo de um arquivo de script apenas uma vez, em um momento definido pelo usurio. 2 Programa Cron O comando cron utilizado principalmente para gerenciar a execuo de programas que sero iniciados repetidas vezes, como por exemplo, a realizao da cpia dos arquivos dos usurios. A execuo do cron automtica, e ao ser iniciado, o programa faz a leitura da Tabela de Agendamento, localizada no arquivo /etc/crontab. Esta tabela define a periodicidade de execuo dos programas e o caminho onde est localizado o programa. Um exemplo deste arquivo apresentado na figura 1: 5 0 * * * $HOME/bin/log_diario.sc 15 14 1 * * $HOME/bin/processamento.sc 0 22 * * 1-5 mail -s Feche o caixa [email protected]

15 0-23/2 * * * $HOME/bin/aviso.sc 0 16 * * sun echo 16h de domingo! Figura 1: Contedo do arquivo /etc/crontab

A definio dos campos no arquivo a seguinte: 1. 2. 3. 4. 5. 6. Minuto: 0 59; Hora: 0 23; Dia do ms: 1 31; Ms do ano: 1 12; Dia da Semana: 0 6, ou sun, mon, tue...; Comando a ser executado.

Assim, as linhas na figura 1 executaro da seguinte maneira:

5 0 * * * $HOME/bin/log_diario.sc o Executa o script log_diari.sc todos os dias na hora 0 aos 5 minutos. o 00:05h $HOME/bin/log_diario.sc 15 14 1 * * $HOME/bin/processamento.sc o Executa o script processamento.sc s 14:15 no primeiro dia de cada ms o 14:15h no 1 dia do ms $HOME/bin/processamento.sc 0 22 * * 1-5 mail -s Feche o caixa [email protected] o Envia uma mensagem para [email protected] s 22:00h entre segunda e sexta. o O campo 1-5 define um intervalo. 30 0-23/2 * * * $HOME/bin/aviso.sc o Executa o script aviso.sc todos os dias, a cada 2 horas, iniciando 00:30h. o O campo 0-23/2 define um intervalo e uma frequncia. 0 16 * * sun echo 16h de domingo! o Exibe uma mensagem todo domingo s 16 horas. o Domingo 16:00h echo 16h de domingo!

Estas configuraes podem ser feitas tanto em um editor de texto, escrevendo diretamente o arquivo /etc/crontab, ou utilizando a interface grfica, atravs do Agendador de Tarefas. Para acessar o Agendador de Tarefas no KDE, realize os seguintes passos: 1. Clique no Menu principal

2. 3. 4. 5. 6.

Clique em Ferramentas Clique em Ferramentas do Sistema Clique em Configurar sua sesso Clique na aba Avanados Clique no cone Agendador de Tarefas

A tela do Agendador de Tarefas apresentada na figura 2:

Figura 2: Agendador de Tarefas

3 Programa At Como foi visto o cron executa programas periodicamente. Em algumas situaes um determinado programa dever ser executado apenas 1 vez. Por exemplo: Emitir um aviso para todos os usurios do servidor, informando que o computador ser desligado para manuteno em um determinado dia e horrio. Para executar programas com agendamento sem repetio utiilza-se o at. Este programa utilizado em conjunto com outros 2: atq e atrm.

O programa at realiza o agendamento dos programas para execuo, o programa atq exibe uma lista dos programas agendados pelo at, e o programa atrm remove o agendamento de um determinado programa. Existem 2 arquivos que so utilizados para informarem quais so os usurios que podem ou no executar o programa at. Estes arquivos so:

/etc/at.allow: contm a lista dos usurios que podem executar o programa at; /etc/at.deny: contm a lista dos usurios que no podem executar o programa at.

Se o arquivo /etc/at.allow esteja vazio, ento os usurios que no estiverem no arquivo /etc/at.deny podero utilizar o programa at. Caso o arquivo /etc/at.deny esteja vazio, ento todos os usurios podero utilizar o programa at. O programa at utilizado para agendar a execuo de scripts em arquivos, ou opcionalmente pode-se informar diretamente qual a sequncia de comandos que dever ser executada. A sintaxe bsica apresentada na figura 3: $ at -f Figura 3: Sintaxe do programa at

A incluso do horrio de funcionamento obrigatria, e pode ser feita nos seguintes formatos:

HH-MM: hora (00 23) e minutos (00 59); MM/DD/AA: ms, dia e ano.

Mas existem diversas opes para incluso de um horrio de execuo: $ at -f copia_tudo.sc 4pm tomorrow Figura 4: Agendamento em formato diferenciado

Se o nome de um arquivo no for informado, deve-se digitar a sequncia de comandos que ser executada, e ao final pressionar CTRL+D para agendar:

$ at 18:30 at> rm /tmp -fr at> CTRL+D Figura 5: Incluso de comandos diretamente no at

Para visualizar a lista de programas agendados pelo at utiliza-se outro programa, chamado atq: $ atq 1 Tue Oct 20 14:30:00 2009 a root 2 Tue Oct 20 17:30:00 2009 a root 3 Wed Oct 21 09:00:00 2009 a ricardoms Figura 6: Lista de programas agendados mostrada pelo atq

A organizao da lista mostrada pelo atq a seguinte: 1 Coluna: Nmero de Identificao do agendamento; 2 Coluna: Data do agendamento; 3 Coluna: Horrio de execuo; 4 Coluna: usurio que realizou o agendamento.

Um problema no atq o fato de no se saber quais programas esto agendados, pois ele mostra apenas os horrios de execuo e o usurio que agendou um programa. Para remover um programa do agendamento, utiliza-se o atrm, que deve receber o numero de identificao do agendamento a ser cancelado: $ atrm 2 Figura 7: Agendamento em formato diferenciado

A grande dvida saber se o agendamento removido realmente era o desejado. Para saber quais so os programas agendados, deve-se verificar o diretrio /var/spool/at. Este diretorio contm scripts que armazenam o contedo do agendamento. A tarefa aqui ser verificar cada arquivo neste diretrio atravs do programa cat e olhar as ltimas linhas e tentar reconhecer o script. ( o programa tail no recomendado, pois mostra apenas as ltimas 10 linhas do arquivo ) A melhor estratgia para utilizao do programa at a seguinte: 1. 2. 3. 4. 5. Verifique o diretrio /var/spool/at e veja quais so os arquivos presenes ali; Execute o programa atq e veja os identificadores em uso nos agendamentos; Execute o programa at; Verifique novamente o diretrio e veja qual o arquivo adicionado; Execute o programa atq e veja o novo nmero, que representa o ltimo agendamento realizado.

UNIDADE 16Cpia De Segurana De Arquivos Objetivo: Aprender sobre a manuteno de cpias de arquivos 1 Introduo Um dos trabalhos mais importantes na manuteno de um servidor a cpia regular dos arquivos. Esta tarefa recebe vrios nomes, os mais comuns so Cpia de Segurana e Backup, e consiste em realizar uma cpia dos arquivos mais importantes localizados no servidor. Estes arquivos podem ser: arquivos de configurao, documentos dos usurios, programas, bancos de dados, e vrios outros. Para realizar a cpia existem vrias ferramentas. Pode-se utilizar o programa cp ou um programa especfico, como o Drakbackup ou Bacula.

Figura 1: Interface do Bacula O mais importante no a ferramenta a ser utilizada, definir quais sero os arquivos e qual ser a frequncia de realizao das cpias.

2 Definio Dos Arquivos E Frequncia Da Cpia O principal motivo de se realizar uma Cpia de Segurana, garantir a usabilidade dos arquivos que esto no servidor, pois mesmo que haja algum defeito, os arquivos estaro seguros em uma outra localizao. A regra bsica para manter a segurana dos arquivos, independente da situao dos computadores, fazer a cpia em uma mdia, e manter esta mdia em uma localizao distante dos computadores. Pois mesmo que haja um incndio, ou outro dano fsico, em toda a organizao, os arquivos estaro seguros. A definio de quais arquivos sero copiados depender de vrios fatores, mas o critrio de escolha basicamente o mesmo: se o arquivo original for perdido, qual ser o impacto causado ?. A esta pergunta existem vrias respostas:

Nenhum: ento no precisa ser copiado; Baixo: talvez precise ser copiado; Mdio: ento melhor copia-lo, pelo menos com certa frequncia; Alto: com certeza deve ser copiado, preferencialmente todo dia.

Existem vrios tipos de arquivos, divididos em 4 categorias bsicas: arquivos dos usurios, arquivos da empresa, arquivos de configurao e arquivos de programas. Para facilitar a realizao das cpias de segurana, a estrutura de diretrios deve ser planejada de forma que facilite esta tarefa. Uma boa estratgia e a organizao dos diretrios no servidor em locais que j indiquem a separao dos arquivos por critrio, por exemplo: um diretrio exclusivo para os arquivos da empresa, pois estes so os mais importantes.

3 Realizando A Cpia Utilizando O Terminal De Comandos A cpia dos arquivos pelo Terminal de Comandos geralmente realizadas atravs de um script agendado no cron. Pois seria muito trabalhoso ter que escrever os comandos sempre que uma cpia fosse realizada. Pode-se fazer mais de um script de cpia, de acordo com as prioridades de segurana dos arquivos. A figura 2 mostra o script Copiador_home.sc, que realiza a cpia de segurana do diretrio /home e move-o para um disco de DVD:

Figura 2: Exemplo de script para realizar a cpia de arquivos

O formato final do script para fazer as cpias depender das prioridades especficas de cada caso. Para cadastrar este script no cron, pode-se acrescentar uma linha no crontab semelhante a mostrada na figura 3: 0 8 * * sat ./etc/Copiador_home.sc Figura 3: Incluso da cpia de segurana no crontab

No exemplo mostrado na figura 3 a cpia dos arquivos dentro do diretrio /home ser realizada todos os sbados, s 8:00h da manh.

4 Realizando A Cpia Utilizando O Drakbackup As cpias de segurana tambm podem ser feitas utilizando-se o programa Drakbackup. Este programa pode ser iniciado a partir do Centro de Controle, cllicando-se no cone Backups, como mostra a figura 4:

Figura 4: Centro de Controle Vrias opes esto disponves, e a partir da primeira tela existem opes que sero utilizadas por usurios iniciantes ou avanados:

Figura 5: Opes de utilizao do Drakbackup Ao clicar no item Assistente de Configurao, o drakbackup assumir as configuraes padronizadas para realizar a cpia dos arquivos, mas permite que o usurio realize algumas alteraes:

Figura 6: Opes de utilizao do Drakbackup Uma das escolhas poder ser a de realizar a cpia apenas para alguns usurios:

Figura 7: Opes de utilizao do Drakbackup Usurios que precisem de configuraes mais avanadas tambm podero utilizar o Drakbackup. Na tela apresentada na figura 5, basta clicar no item Configurao Avanada para o Drakbackup exibir novas opes para a realizao das cpias:

Figura 8: Opes de utilizao do Drakbackup

Clicando-se no item O qu na tela da figura 8, pode-se escolher quais os recursos sero copiados:

Figura 9: Opes de utilizao do Drakbackup O item Onde apresentado na figura 8 permite a escolha do local onde ser guardado a cpia:

Figura 10: Opes de utilizao do Drakbackup

E o item Quando apresentado nas Configuraes Avanadas permite a escolha do momento de execuo das cpias, permitindo inclusive o cadastramento de cpias agendadas:

Figura 11: Opes de utilizao do Drakbackup

UNIDADE 17Protocolo TCP/IP Objetivo: Aprender as caractersticas bsicas das redes TCP/IP verso 4 e 6.

1 Introduo No mundo de hoje, no se pode falar de redes sem falar do TCP/IP. O conjunto de protocolos originalmente desenvolvido pela Universidade da Califrnia em Berkeley, sob contrato para o Departamento de Defesa dos EUA, se tornou o conjunto de protocolos padro das redes locais e remotas, suplantando conjuntos de protocolos bancados por pesos pesados da indstria, como a IBM (SNA), Microsoft (NetBIOS/NetBEUI) e Novell (IPX/SPX).

O grande motivo de todo este sucesso foi justamente o fato do TCP/IP no ter nenhuma grande empresa associada ao seu desenvolvimento. Isto possibilitou a sua implementao e utilizao por diversas aplicaes em praticamente todos os tipos de equipamentos e sistemas operacionais existentes. Mesmo antes do boom da Internet o TCP/IP j era o protocolo obrigatrio para grandes redes, formadas por produtos de muitos fornecedores diferentes e havia sido escolhido pela Microsoft como o protocolo preferencial para o Windows NT, devido s limitaes tcnicas do seu prprio conjunto de protocolos, o NetBEUI.

2 As Pilhas De Protocolos Todos os softwares de redes so baseados em alguma arquitetura de camadas e normalmente nos referimos a um grupo de protocolos criado para funcionar em conjunto como uma pilha de protocolos (em ingls, protocol stack, por exemplo the TCP/IP stack). O termo "pilha" utilizado porque os protocolos de uma dada camada normalmente interagem somente com os protocolos das camadas imediatamente superior e inferior. O modelo de pilha traz a vantagem de modularizar naturalmente o software de redes, permitindo a sua expanso com novos recursos, novas tecnologias ou aperfeioamentos sobre a estrutura existente, de forma gradual. O nome TCP/IP vem dos nomes dos protocolos mais utilizados desta pilha, o IP (Internet Protocol) e o TCP (Transmission Control Protocol). Mas a pilha TCP/IP possui ainda muitos outros protocolos, dos quais veremos apenas os mais importantes, vrios deles necessrios para que o TCP e o IP desempenhem corretamente as suas funes. Visto superficialmente, o TCP/IP possui 4 camadas, desde as aplicaes de rede at o meio fsico que carrega os sinais eltricos at o seu destino:

1. Interface: tem a funo de permitir o uso de um meio fsico que conecta os computadores na rede e fazer com que as informaes enviadas por um computador cheguem a um outro computador diretamente desde que haja uma conexo direta entre eles. 2. Identificao: responsvel pela identificao dos computadores na rede. nesta camada que se define o nmero IP de cada mquina da rede. 3. Transporte: realizam o controle no envio das informaes dos aplicativos pela rede. nesta camada que se faz a conexo com o aplicativo que o usurio est utilizando. 4. Aplicao: so especficos para cada programa que faz uso da rede. Dessa forma, existe um protocolo para a conversao entre um servidor web e um navegador web (HTTP), dentre outras. Cada aplicao de rede tem o seu prprio protocolo de comunicao, que utiliza os protocolos das camadas mais baixas para poder atingir o seu destino. Pela figura acima vemos que existem dois protocolos de transporte no TCP/IP: TCP e UDP. O TCP um protocolo orientado a conexo. Ele permite que sejam enviadas mensagens de qualquer tamanho e controla a diviso das mensagens em pacotes que possam ser enviados pela rede. Ele tambm cuida de rearrumar os pacotes no destino e de retransmitir qualquer pacote que seja perdido pela rede, de modo que o destino receba a mensagem original, da maneira como foi enviada. J o UDP, um protocolo que trabalha com datagramas, que so mensagens com um comprimento mximo pr-fixado e cuja entrega no garantida. Caso a rede esteja congestionada, um datagrama pode ser perdido e o UDP no informa as aplicaes das camadas superiores que o datagrama foi perdido. Outra possibilidade que o congestionamento em uma rota da rede possa fazer com que os pacotes cheguem ao seu destino em uma ordem diferente daquela em que foram enviados.

3 TCP/IP Verso 4 Em uma rede TCP/IP, cada computador (ou melhor, cada placa de rede, caso o computador possua mais do que uma) possui um endereo numrico formado por 4 bytes, geralmente escritos na forma w.x.y.z. Para ter um maior controle sobre os endereos foram criadas as classes de endereo, que so representadas no primeiro byte do endereo: Classe A = 1 at 126 Classe B = 128 at 191 Classe C = 192 at 223

Classe D = 224 at 239 Multicast Classe E = 240 at 254 No Utilizado Alm deste Endereo IP, cada computador possui uma mscara de rede (network mask ou subnet mask), que um nmero do mesmo tipo, mas com a restrio de que ele deve comear por uma sequncia contnua de bits em 1, seguida por uma sequncia contnua de bits em zero. Ou seja, a mscara de rede pode ser um nmero como: 11111111.11111111.00000000.00000000 (255.255.0.0). A mscara de rede serve para quebrar um endereo IP em um Endereo de Rede e um Endereo do Elemento. Todos os computadores em uma mesma rede local (fisicamente falando, por exemplo, um mesmo barramento Ethernet) devem ter o mesmo endereo de rede, e cada um deve ter um endereo de elemento diferente. O roteamento dos pacotes na rede feito pelo Endereo de Rede e a entrega dos pacotes feita pelo Endereo do Elemento. 3.1 Comunicao Em Uma Rede TCP/IPv4 Digamos que o elemento com o endereo IP 172.16.1.101 deseje enviar um pacote de informao para o endereo 172.16.2.102. Caso a mscara de rede seja 255.255.0.0, isso faria o TCP/IP identificar que a rede dos elementos 172.16.0.0, mostrando que ambos possuem o mesmo endereo e portanto esto diretamente conectados. Neste caso, o nvel IP envia um pacote de aviso ARP (explicado com mais detalhes na Unidade 19) pela rede Ethernet para identificar qual o endereo Ethernet do elemento cujo IP 172.16.2.102. Esse pacote enviado como um broadcast, de modo que todos os elementos conectados no mesmo segmento Ethernet recebero o pacote e o elemento configurado para o endereo desejado ir responder ao pacote ARP indicando qual o seu endereo Ethernet. Assim o IP pode montar o pacote Ethernet corretamente endereado e enviar o pacote para o seu destino. Agora digamos que a mscara de rede no fosse 255.255.0.0, mas sim 255.255.255.0. Neste caso, os endereos de rede da origem e destino seriam respectivamente 172.16.1.0 e 172.16.2.0. Como os endereos de rede so diferentes, isto significa que no temos conectividade direta, entre os dois elementos, portanto o pacote dever ser entregue por intermdio de uma Ponte de Rede. Digamos que a Ponte de Rede seja 172.16.1.1 (observe que o endereo de rede da Ponte de Rede 172.16.1.0, o mesmo do nosso elemento de origem). Ento o elemento ir enviar um pacote ARP pela rede para descobrir o endereo Ethernet da P