Вы находитесь на странице: 1из 286

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.

txt

quinta-feira, 12 de fevereiro de 2009 11:06

Guia Foca GNU/Linux ------------------Gleydson Mazioli da Silva <gleydson@cipsga.org.br> Verso 5.45 - domingo, 29 de Outubro de 2006

-------------------------------------------------------------------------------

Abstract -------Este documento tem por objetivo ser uma referncia ao aprendizado do usurio e um guia de consulta, operao e configurao de sistemas Linux (e outros tipos de *ix). A ltima verso deste guia pode ser encontrada na Pgina Oficial do Foca GNU/Linux (http://www.guiafoca.org). Novas verses so lanadas com uma freqncia mensal e voc pode receber avisos de lanamentos preenchendo um formulrio na pgina Web.

Copyright Notice ---------------Copyleft (C) 1999-2003 - Gleydson Mazioli da Silva. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; A copy of the license is included in the section entitled "GNU Free Documentation License".

-------------------------------------------------------------------------------

Contents -------1. 1.1. 1.2. 1.3. 1.4. 1.4.1. 1.5. 1.6. 1.7. 1.8. 1.9. 1.9.1. 1.9.2. 1.9.3. 1.10. Introduo Antes de comear Pr-requisitos para a utilizao deste guia Sistema Operacional O Linux Algumas Caractersticas do Linux Distribuies do Linux Software Livre Processamento de Dados O Computador Conhecendo o Computador Tipos de Gabinete Painel Frontal Monitor de Vdeo Placa Me
-1-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

1.10.1. 1.11. 1.11.1. 1.11.2. 1.12. 1.12.1. 1.12.2. 1.12.3. 1.13. 1.14. 1.15. 1.16. 1.17. 2. 2.1. 2.2. 3. 3.1. 3.2. 3.3. 3.3.1. 3.3.1.1. 3.3.2. 3.3.2.1. 3.3.3. 3.4. 3.4.1. 3.4.2. 3.4.3. 3.4.4. 3.4.4.1. 3.5. 3.6. 3.7. 3.8. 3.9. 3.10. 3.11. 3.11.1. 3.11.2. 3.11.2.1. 3.11.2.2. 3.11.3. 3.11.3.1. 3.11.3.2. 3.11.3.3. 3.11.4. 3.11.5. 3.11.6. 4. 4.1.

Alguns componentes da placa me Memria do Computador Memria Principal Memria Auxiliar Discos Discos Flexveis Disco Rgido CD Cuidados Bsicos com o Computador e Disquetes Dispositivos de Entrada e Sada Ligando o computador Desligando o computador Reiniciando o computador Explicaes Bsicas Estrutura bsica de diretrios do Sistema Linux Curingas Hardware Placa de expanso Nomes de dispositivos Configurao de Hardware IRQ - Requisio de Interrupo Prioridade das Interrupes DMA - Acesso Direto a Memria Conflitos de DMA I/O - Porta de Entrada/Sada Hardwares configurveis por jumpers, dip-switches, jumperless e Plug-and-Play. Jumpers Dip-Switches Jumperless (sem jumper) Plug-and-Play Entendendo o arquivo de configurao `isapnp.conf' Listando as placas e outros hardwares em um computador Conflitos de hardware Barramento Placas on-board / off-board Hardwares especficos ou "For Windows" Dispositivos especficos para GNU/Linux Configuraes de Dispositivos Configurando uma placa de rede Configurando uma placa de SOM no Linux Reservando os recursos de hardware para sua placa de som Configurando uma placa de som usando o padro OSS Configurando um gravador de CD no Linux Configurando o suporte a um gravador IDE Configurando o suporte a um gravador SCSI Testando o funcionamento Configurando o gerenciamento de energia usando o APM Configurando o gerenciamento de energia usando ACPI Ativando WakeUP on Lan Para quem esta migrando (ou pensando em migrar) do DOS/Windows para o Linux Quais as diferenas iniciais
-2-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

4.2. 4.2.1. 4.3. 4.4. 5. 5.1. 5.2. 5.3. 5.3.1. 5.3.2. 5.4. 5.5. 5.5.1. 5.5.2. 5.5.3. 5.5.4. 5.6. 5.6.1. 5.6.2. 5.6.3. 5.6.4. 5.6.5. 5.6.6. 5.7. 5.7.1. 5.7.2. 5.7.3. 5.8. 5.9. 5.9.1. 5.9.2. 5.9.3. 5.9.4. 5.9.5. 5.10. 5.10.1. 5.10.2. 5.10.3. 5.11. 5.12. 5.13. 5.13.1. 5.14. 6. 6.1. 6.1.1. 6.1.2. 6.1.3. 6.2. 6.2.1. 6.2.2. 6.2.2.1. 6.2.3. 6.2.4.

Comandos equivalentes entre DOS e Linux Arquivos de configurao Usando a sintaxe de comandos DOS no Linux Programas equivalentes entre Windows/DOS e o Linux Discos e Parties Parties Sistema de Arquivos Partio EXT2 (Linux Native) Criando um sistema de arquivos EXT2 em uma partio Criando um sistema de arquivos EXT2 em um arquivo Journaling Partio EXT3 (Linux Native) Criando um sistema de arquivos EXT3 em uma partio Criando um sistema de arquivos EXT3 em um arquivo Fazendo a converso do sistema de arquivos EXT2 para EXT3 Convertendo de EXT3 para EXT2 Sistema de arquivos reiserfs Criando um sistema de arquivos reiserfs em uma partio Criando um sistema de arquivos reiserfs em um arquivo Nomeando uma partio de disco Criando o diretrio especial `lost+found' dumpe2fs Partio EXT2 ou Arquivo? Partio Linux Swap (Memria Virtual) Criando sistema de arquivos Swap em uma partio Criando um sistema de arquivos Swap em um arquivo Partio Swap ou Arquivo? O sistema de arquivos `/proc' LVM - Logical Volume Manager Representao grfica do LVM Performance do LVM Colocando LVM em seu sistema Aumentando o tamanho de um volume lgico Diminuindo um volume lgico Formatando disquetes Formatando disquetes para serem usados no Linux Formatando disquetes compatveis com o DOS/Windows Programas de Formatao Grficos Pontos de Montagem Identificao de discos e parties em sistemas Linux Montando (acessando) uma partio de disco fstab Desmontando uma partio de disco Gerenciadores de Partida (boot loaders) LILO Criando o arquivo de configurao do LILO Opes usadas no LILO Um exemplo do arquivo de configurao lilo.conf GRUB Como o GRUB trabalha com discos e parties Instalando o GRUB No MBR No disco flexvel (somente linha de comando) No disco flexvel (com interface de menu)
-3-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

6.2.5. 6.2.6. 6.2.7. 6.2.8. 6.2.9. 6.3. 6.4. 6.4.1. 6.4.2. 7. 7.1. 7.2. 7.3. 7.4. 7.5. 7.6. 7.7. 7.7.1. 7.7.2. 7.7.3. 7.7.4. 7.7.5. 7.7.6. 7.7.7. 7.7.8. 7.7.9. 7.8. 7.9. 7.10. 7.11. 7.12. 7.13. 7.14. 7.15. 7.16. 8. 8.1. 8.2. 8.3. 8.4. 8.5. 9. 9.1. 9.2. 9.3. 9.4. 9.5. 10. 10.1. 10.2. 10.3. 10.4. 10.5.

Opes do arquivo de configurao Um exemplo de arquivo de configurao Usando a linha de comandos do GRUB Removendo o GRUB do MBR Como obter informaes mais detalhadas Parmetros de inicializao passados ao kernel syslinux Criando um disquete de inicializao com o syslinux O arquivo SYSLINUX.CFG Execuo de programas Executando um comando/programa path Tipos de Execuo de comandos/programas Executando programas em seqncia ps top Controle de execuo de processos Interrompendo a execuo de um processo Parando momentaneamente a execuo de um processo jobs fg bg kill killall killall5 Sinais do Sistema nohup nice fuser tload vmstat pidof pstree Fechando um programa quando no se sabe como sair Eliminando caracteres estranhos Comandos para manipulao de diretrio ls cd pwd mkdir rmdir Comandos para manipulao de Arquivos cat tac rm cp mv Comandos Diversos clear date df ln du
-4-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

10.6. 10.7. 10.8. 10.9. 10.10. 10.11. 10.12. 10.13. 10.14. 10.15. 10.16. 10.17. 10.18. 10.19. 10.20. 10.21. 10.22. 10.23. 10.24. 10.25. 10.26. 10.27. 10.28. 10.29. 10.30. 10.31. 10.32. 10.33. 10.34. 10.35. 11. 11.1. 11.2. 11.3. 11.4. 11.5. 11.6. 11.7. 11.8. 11.9. 11.10. 11.11. 11.12. 11.13. 11.14. 11.15. 12. 12.1. 12.2. 12.3. 12.4. 12.5. 12.6. 12.7. 12.8.

find free grep head nl more less sort tail time touch uptime dmesg mesg echo su sync uname reboot shutdown wc seq chattr lsattr cut cmp dirname diff whereis which Comandos de rede who Telnet finger ftp whoami dnsdomainname hostname talk ping rlogin rsh w traceroute netstat wall Comandos para manipulao de contas adduser addgroup passwd newgrp userdel groupdel lastlog last
-5-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

12.9. 12.10. 12.11. 12.12. 12.13. 12.14. 12.15. 13. 13.1. 13.2. 13.3. 13.4. 13.4.1. 13.4.2. 13.5. 13.6. 13.7. 13.8. 13.9. 13.10. 13.11. 14. 14.1. 14.2. 14.3. 14.4. 14.5. 14.6. 14.7. 15. 15.1. 15.2. 15.3. 15.3.1. 15.3.2. 15.3.3. 15.4. 15.4.1. 15.4.2. 15.5. 15.5.1. 15.6. 15.6.1. 15.6.2. 15.6.2.1. 15.6.2.2. 15.6.2.3. 15.6.2.4. 15.6.3. 15.7. 15.7.1. 15.7.2.

sg Adicionando o usurio a um grupo extra chfn id logname users groups Permisses de acesso a arquivos e diretrios Donos, grupos e outros usurios Tipos de Permisses de acesso Etapas para acesso a um arquivo/diretrio Exemplos prticos de permisses de acesso Exemplo de acesso a um arquivo Exemplo de acesso a um diretrio Permisses de Acesso Especiais A conta root chmod chgrp chown Modo de permisso octal umask Redirecionamentos e Pipe > >> < << | (pipe) Diferena entre o "|" e o ">" tee Rede O que uma rede Protocolo de Rede Endereo IP Classes de Rede IP Para instalar uma mquina usando o Linux em uma rede existente Endereos reservados para uso em uma rede Privada Interface de rede A interface loopback Atribuindo um endereo de rede a uma interface (ifconfig) Roteamento Configurando uma rota no Linux Resolvedor de nomes (DNS) O que um nome? Arquivos de configurao usados na resoluo de nomes /etc/resolv.conf /etc/host.conf /etc/hosts /etc/networks Executando um servidor de nomes Servios de Rede Servios iniciados como Daemons de rede Servios iniciados atravs do inetd
-6-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

15.7.2.1. /etc/inetd.conf 15.8. Segurana da Rede e controle de Acesso 15.8.1. /etc/ftpusers 15.8.2. /etc/securetty 15.8.3. O mecanismo de controle de acessos tcpd 15.8.3.1. /etc/hosts.allow 15.8.3.2. /etc/hosts.deny 15.8.3.3. /etc/hosts.equiv e /etc/shosts.equiv 15.8.3.4. Verificando a segurana do TCPD e a sintaxe dos arquivos 15.8.4. Firewall 15.9. Outros arquivos de configurao relacionados com a rede 15.9.1. /etc/services 15.9.2. /etc/protocols 16. 16.1. 16.2. 16.3. 16.4. 16.5. 16.6. 16.7. 16.8. 16.9. 16.10. 16.11. 16.12. 16.12.1. 16.12.2. 16.13. 17. 17.1. 17.2. 17.2.1. 17.2.1.1. 17.2.2. 17.3. 18. 18.1. 18.2. 18.3. 18.4. 19. 19.1. 19.1.1. 19.1.2. 19.1.3. 19.1.4. 19.1.5. 19.1.6. 19.1.7. 19.1.8. Kernel e Mdulos O Kernel Mdulos Como adicionar suporte a Hardwares e outros dispositivos no kernel kmod lsmod insmod rmmod modprobe depmod modconf Recompilando o Kernel Arquivos relacionados com o Kernel e Mdulos /etc/modules modules.conf Aplicando Patches no kernel Arquivos e daemons de Log Formato do arquivo de log Daemons de log do sistema syslogd Arquivo de configurao `syslog.conf' klogd logger Compactadores Extenses de arquivos compactados gzip tar bzip2 Sistema de gerenciamento de pacotes dpkg Pacotes Instalar pacotes Dependncias Listar pacotes existentes no sistema Removendo pacotes do sistema Removendo completamente um pacote Mostrar descrio do pacote Procura de pacotes atravs do nome de um arquivo
-7-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

19.1.9. 19.1.10. 19.1.11. 19.1.12. 19.1.13. 19.1.14. 19.2. apt 19.2.1. 19.2.1.1. 19.2.1.2. 19.2.2. 19.2.3. 19.2.4. 19.2.5. 19.2.6. 19.2.7. 19.2.8. 19.2.9. 19.2.10. 19.2.11. 19.2.12. 19.2.13. 20. 20.1. 20.2. 20.3. 20.4. 20.5. 20.6. 20.7. 20.8. 20.9. 21. 21.1. 21.2. 21.3. 21.4. 21.4.1. 21.5. 21.5.1. 21.5.2. 22. 22.1. 22.1.1. 22.1.2. 22.2. 22.2.1. 22.2.2. 22.2.3.

Status do pacote Procurando pacotes com problemas de instalao Mostrando a lista de pacotes do sistema Obtendo uma lista de pacotes para instalar no sistema Configurando pacotes desconfigurados Listando arquivos de um pacote O arquivo `/etc/apt/sources.list' Endereos de servidores e mirrors nacionais da `Debian' Um modelo de arquivo `sources.list' O arquivo `/etc/apt/apt.conf' Copiando a lista de pacotes disponveis Utilizando CDs oficiais/no-oficiais/terceiros com o apt Instalando novos pacotes Removendo pacotes instalado Atualizando sua distribuio Removendo pacotes baixados pelo `apt' Procurando por pacotes atravs da descrio Procurando um pacote que contm determinado arquivo Modos eficazes de compilao do cdigo fonte para a Debian Verificando pacotes corrompidos Corrigindo problemas de dependncias e outros erros

Personalizao do Sistema Variveis de Ambientes Modificando o Idioma usado em seu sistema alias Arquivo `/etc/profile' Arquivo `.bash_profile' Arquivo `.bashrc' Arquivo `.hushlogin' Arquivo `/etc/environment' Diretrio `/etc/skel' Impresso Portas de impressora Imprimindo diretamente para a porta de impressora Imprimindo via spool Impresso em modo grfico Ghost Script Magic Filter Instalao e configurao do Magic Filter Outros detalhes tcnicos sobre o Magic Filter Configurao do sistema Acentuao Acentuao em modo Texto Acentuao em modo grfico Nmero de Cores do ambiente grfico Configurando o nmero de cores para quem inicia pelo prompt Configurando o nmero de cores para quem inicia pelo XDM Ajustando o alinhamento da imagem no X e outras configuraes
-8-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

22.2.4. 23. 23.1. 23.1.1. 23.2. 23.3. 23.4. 23.5. 23.6. 23.7. 23.8. 23.9. 23.10. 23.11. 23.11.1. 23.12. 24. 24.1. 24.2. 24.3. 24.4. 24.5. 24.6. 24.7. 24.8. 24.9. 24.10. 24.11. 24.12. 24.13. 24.14. 24.15. 24.16. 24.17. 24.18. 24.19. 24.20. 24.21. 24.22. 24.23. 24.24. 24.25. 24.26. 24.27. 24.28. 24.29. 24.30. 24.31. 24.32. 24.33. 24.34. 24.35. 24.36. 24.37. 24.38.

Sobre o nmero de cores para jogos que funcionam no X Manuteno do Sistema Checagem dos sistemas de arquivos fsck.ext2 reiserfsck fsck.minix badblocks defrag Verificando e marcando setores danificados em um HD Limpando arquivos de LOGS Recuperando parties apagadas Recuperando a senha de root perdida Tarefas automticas de manuteno do sistema cron O formato de um arquivo crontab at Principais arquivos de configurao do diretrio `/etc' Diretrio `/etc/alternatives' Arquivo `/etc/default/devpts' Arquivo `/etc/default/rcs' Arquivo `/etc/kbd/config' Diretrio `/etc/menu-methods' Arquivo `/etc/menu-methods/menu-translate' Arquivo `/etc/networks' Arquivo `/etc/network/interfaces' Arquivo `/etc/networks/options' Arquivo `/etc/networks/spoof-protect' Diretrio `/etc/pam.d' Diretrio `/etc/ppp' Diretrio `/etc/security' Arquivo `/etc/security/access.conf' Arquivo `/etc/security/limits.conf' Arquivo `/etc/crontab' Arquivo `/etc/fstab' Arquivo `/etc/group' Arquivo `/etc/gshadow' Arquivo `/etc/host.conf' Arquivo `/etc/hostname' Arquivo `/etc/hosts' Arquivo `/etc/hosts.allow' Arquivo `/etc/hosts.deny' Arquivo `/etc/hosts.equiv' Arquivo `/etc/inetd.conf' Arquivo `/etc/inittab' Arquivo `/etc/inputrc' Arquivo `/etc/isapnp.conf' Arquivo `/etc/isapnp.gone' Arquivo `/etc/issue' Arquivo `/etc/issue.net' Arquivo `/etc/lilo.conf' Arquivo `/etc/login.defs' Arquivo `/etc/modules' Arquivo `/etc/modules.conf' Arquivo `/etc/motd' Arquivo `/etc/mtab'
-9-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

24.39. 24.40. 24.41. 24.42. 24.43. 24.44. 24.45. 24.46. 24.47. 24.48. 24.49. 25. 25.1. 25.2. 25.3. 25.3.1. 26. 26.1. 26.2. 26.3. 26.4. 27. 27.1. 27.2. 27.3. 27.4. 27.5. 27.6. 27.7. 27.8. 27.9. 27.10. 28. 28.1. 28.2. 28.3. 28.4. 28.5. 28.6. 28.7. 28.8.

Arquivo Arquivo Arquivo Arquivo Arquivo Arquivo Arquivo Arquivo Arquivo Arquivo Arquivo

`/etc/networks' `/etc/passwd' `/etc/printcap' `/etc/protocols' `/etc/resolv.conf' `/etc/serial.conf' `/etc/services' `/etc/shadow' `/etc/shells' `/etc/syslog.conf' `/etc/timezone'

Conectando seu computador a Internet Conectando-se a Internet Navegando na Internet Recebimento de E-Mails atravs do `fetchmail' Processamento de mensagens atravs do procmail X Window (ambiente grfico) O que X Window? A organizao do ambiente grfico X Window Iniciando o X Servidor X Como obter ajuda no sistema Pginas de Manual Info Pages Help on line help apropos/whatis locate which Documentao de Programas FAQ RFC's Apndice Sobre este guia Sobre o Autor Referncias de auxlio ao desenvolvimento do guia Onde encontrar a verso mais nova do guia? Colaboradores do Guia Marcas Registradas Futuras verses Chave Pblica PGP

-------------------------------------------------------------------------------

1. Introduo ------------Bem vindo ao guia _Foca GNU/Linux_. O nome _FOCA_ significa _FO_nte de _C_onsulta e _A_prendizado. Este guia dividido em 3 nveis de aprendizado e verso que esta lendo agora contm o(s) nvel(is) de aprendizado:
-10-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

* Iniciante * Intermedirio Entre o contedo do guia, voc encontrar: * Textos explicativos falando sobre o `GNU/Linux', seus comandos, arquivos, diretrios, etc. * Explicaes iniciais sobre as partes bsicas do computador e perifricos * Comandos e Programas equivalentes entre o `DOS'/`Windows' e o `GNU/Linux' * Todos os materiais contidos na verso iniciante so ideais para quem est tendo o primeiro contato com computadores e/ou com o `GNU/Linux'. So usadas palavras simples para explicar o funcionamento de cada comando evitando, sempre que possvel, termos tcnicos * Explicaes necessrias para conhecer, operar, configurar, desenvolver, personalizar seus programas e arquivos. * Uma lista de aplicativos clientes para serem usados em seu sistema `GNU/Linux', com suas caractersticas, equipamento mnimo requerido e espao em disco recomendado para instalao. * Criao de parties e arquivos contendo o sistema de arquivos _ext2_ (para gravao de dados) e swap (memria virtual) e as vantagens/desvantagens de se utilizar um arquivo ou partio para armazenamento de dados. * Compilao de programas/kernel, com explicaes sobre cada uma das opes ajudando-o a decidir sobre a incluso ou no. * Manipulao de mdulos do kernel * Explicaes sobre hardwares (Interrupes, DMA, Jumpers, Jumperless, Plug-and-Play) e como configura-los no Linux, valores padres e resoluo de conflitos entre hardwares. * Dicas de como avaliar e comprar bons hardwares para que seu computador tenha o melhor desempenho (tambm vlido para `DOS', `Windows' e outras plataformas). Desta maneira voc saber porque algumas placas de fax-modens custam 3 vezes mais caro que outras e o que a placa traz de especial para ter este diferencial. * Como modificar facilmente o idioma usado em seu sistema (localizao) para o modo texto e modo grfico. * Utilizao de compactadores de disco * Mais opes para os comandos existentes na verso _Iniciante_ do guia e novos comandos. * Conhecer os arquivos de configurao e arquivos bsicos de segurana e aprender para que eles servem e como usa-los.

-11-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

* Dicas de como saber escolher bons perifricos para uso no `GNU/Linux' e outros sistemas operacionais * Manuteno bsica do computador (verificao do disco, desfragmentao) e manuteno automtica feita atravs dos programas de e scripts configurados. * Introduo a rede no Linux (com a configurao de dispositivos de rede, etc.). * Configuraes bsicas de segurana de Rede * Gerenciadores de inicializao, o que so e como funcionam e como criar um arquivo de inicializao para inicializar o `GNU/Linux' pelo disco rgido ou mais de um Sistema Operacional. * Particionamento de disco * Criao de Memria virtual no disco rgido e em arquivo. * Os materiais contidos na verso intermedirio so ideais para quem j tem um conhecimento bsico do sistema `GNU/Linux' mas que deseja se aprofundar neste sistema conhecendo os arquivos necessrios para o funcionamento do `GNU/Linux', como modifica-los e como estas modificaes afetam o funcionamento do sistema. Para melhor organizao, dividi o guia em 3 verses: _Iniciante_, _Intermedirio_ e _Avanado_. Sendo que a verso _Iniciante_ voltada para o usurio que no tem `nenhuma' experincia no `GNU/Linux'. A ltima verso deste guia pode ser encontrada em: Pgina Oficial do guia Foca GNU/Linux (http://www.guiafoca.org). Caso tiver alguma sugesto, correo, crtica para a melhoria deste guia, envie um e-mail para <gleydson@guiafoca.org>. O _Foca GNU/Linux_ atualizado freqentemente, por este motivo recomendo que preencha a ficha do aviso de atualizaes na pgina web em Pgina Oficial do guia Foca GNU/Linux (http://www.guiafoca.org) no fim da pgina principal. Aps preencher a ficha do aviso de atualizaes, voc receber um e-mail sobre o lanamento de novas verses do guia e o que foi modificado, desta forma voc poder decidir em copia-la caso a nova verso contenha modificaes que considera importantes. Venho recebendo muitos elegios de pessoas do Brasil (e de paises de fora tambm) elogiando o trabalho e a qualidade da documentao. Agradeo a todos pelo apoio, tenham certeza que este trabalho desenvolvido pensando em repassar um pouco do conhecimento que adquiri ao comear o uso do Linux. Tambm venho recebendo muitos e-mails de pessoas que passaram na prova LPI nvel 1 e 2 aps estudar usando o guia Foca GNU/Linux. Fico bastante feliz por saber disso, pois nunca tive a inteno de tornar o guia uma referncia livre para estudo da LPI e hoje usado para estudo desta difcil certificao que aborda comandos, servios, configuraes, segurana, empacotamento, criptografia, etc.
-12-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

1.1. Antes de comear --------------------Os captulos _Introduo_ e _bsico_ contm explicaes tericas sobre o computador, `GNU/Linux', etc., voc pode pular este captulos caso j conhea estas explicaes ou se desejar partir para a prtica e quiser v-los mais tarde, se lhe interessar. Se voc j um usurio do `DOS' e `Windows', recomendo ler Chapter 4, `Para quem esta migrando (ou pensando em migrar) do DOS/Windows para o Linux'. L voc vai encontrar comparaes de comandos e programas `DOS/Windows' e `GNU/Linux'. Para quem est comeando, muita teoria pode atrapalhar o aprendizado, mais produtivo ver na prtica o que o computador faz e depois porque ele faz isto. Mesmo assim, recomendo ler estes captulos pois seu contedo pode ser til... Coloquei abaixo algumas dicas para um bom comeo: * Recomendo que faa a leitura deste guia e pratique imediatamente o que aprendeu. Isto facilita o entendimento do programa/comando/configurao. * preciso ter interesse em aprender, se voc tiver vontade em aprender algo, voc ter menos dificuldade do que em algo que no gosta e est se obrigando a aprender. * Decorar no adianta, pelo contrrio, s atrapalha no aprendizado. Voc precisa entender o que o comando faz, deste modo voc estar tambm usando e desenvolvendo sua interpretao, e entender melhor o assunto (talvez at me de uma fora para melhorar o guia ;-) * Curiosidade tambm importante. Voc talvez possa estar procurando um comando que mostre os arquivos que contm um certo texto, e isto far voc chegar at o comando `grep', depois voc conhecer suas opes, etc. * No desanime vendo outras pessoas que sabem mais que voc, lembre-se que ningum nasce sabendo :-). Uma pessoa pode ter mais experincia em um assunto no sistema como compilao de programas, configurao, etc., e voc pode ter mais interesse em redes. * Ningum pode saber tudo da noite para o dia, no procure saber tudo sobre o sistema de uma s vez seno no entender NADA. Caso tenha dvidas sobre o sistema, procure ler novamente a seo do guia, e caso ainda no tenha entendido procure ajuda nas pgina de manual (veja Section 27.1, `Pginas de Manual'), nas listas de discusso ou me envie uma mensagem <gleydson@guiafoca.org>. * Certamente voc buscar documentos na Internet que falem sobre algum assunto que este guia ainda no explica. Muito cuidado! O `GNU/Linux' um sistema que cresce muito rapidamente, a cada semana uma nova verso lanada, novos recursos so adicionados, seria maravilhoso se a documentao fosse atualizada com a mesma freqncia. Infelizmente a atualizao da documentao no segue o mesmo ritmo (principalmente aqui no Brasil). comum voc encontrar na Internet documentos da poca quando o kernel estava na verso
-13-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

2.0.20, 2.0.30, etc. Estes documentos so teis para pessoas que usem as verses antigas do Kernel Linux, mas pode trazer problemas ou causar m impresso do `GNU/Linux' em outras pessoas. Por exemplo, voc pode esbarrar pela Internet com um documento que diz que o Kernel no tem suporte aos "nomes extensos" da VFAT (Windows 95), isto verdade para kernels anteriores ao 2.0.31, mas as verses mais novas que a 2.0.31 reconhecem sem problemas os nomes extensos da partio Windows VFAT. Uma pessoa desavisada pode ter receio de instalar o `GNU/Linux' em uma mesma mquina com Windows por causa de um documento como este. Para evitar problemas deste tipo, verifique a data de atualizao do documento, se verificar que o documento est obsoleto, contacte o autor original e pea para que ele retire aquela seo na prxima verso que ser lanada. * O `GNU/Linux' considerado um sistema mais difcil do que os outros, mas isto porque ele requer que a pessoa realmente aprenda e conhea computadores e seus perifricos antes de fazer qualquer coisa (principalmente se voc um tcnico em manuteno, redes, instalaes, etc., e deseja oferecer suporte profissional a este sistema). Voc conhecer mais sobre computadores, redes, hardware, software, discos, saber avaliar os problemas e a buscar a melhor soluo, enfim as possibilidades de crescimento neste sistema operacional depende do conhecimento, interesse e capacidade de cada um. * A interface grfica existe, mas os melhores recursos e flexibilidade esto na linha de comando. Voc pode ter certeza que o aprendizado no `GNU/Linux' ajudar a ter sucesso e menos dificuldade em usar qualquer outro sistema operacional. * Pea ajuda a outros usurios do `GNU/Linux' quando estiver em dvida ou no souber fazer alguma coisa no sistema. Voc pode entrar em contato diretamente com outros usurios ou atravs de listas de discusso. Boa Sorte e bem vindo ao `GNU/Linux'! gleydson (<gleydson@guiafoca.org>).

1.2. Pr-requisitos para a utilizao deste guia ----------------------------------------------- assumido que voc j tenha seu `GNU/Linux' instalado e funcionando. assumido que voc tenha entendido a funo de boa parte dos comandos que consta na verso iniciante do Foca Linux, arquivos e permisses de acesso. Em resumo, que saiba decidir quando e qual(is) comando(s) deve usar em cada situao. Caso no entenda as explicaes da verso INTERMEDIRIO, recomendo que faa a leitura da verso INICIANTE do Foca Linux que pode ser encontrada em http://www.guiafoca.org. Este guia no cobre a instalao do sistema. Para detalhes sobre instalao, consulte a documentao que acompanha sua distribuio `GNU/Linux'.

-14-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

1.3. Sistema Operacional -----------------------O _Sistema Operacional_ o conjunto de programas que fazem a interface do usurio e seus programas com o computador. Ele responsvel pelo gerenciamento de recursos e perifricos (como memria, discos, arquivos, impressoras, CD-ROMs, etc.), interpretao de mensagens e a execuo de programas. No `Linux' o Kernel mais o conjunto de ferramentas GNU compem o Sistema Operacional. O kernel (que a base principal de um sistema operacional), poder ser construdo de acordo com a configurao do seu computador e dos perifricos que possui.

1.4. O Linux -----------O `Linux' um sistema operacional criado em 1991 por _Linus Torvalds_ na universidade de Helsinki na Finlndia. um sistema Operacional de cdigo aberto distribudo gratuitamente pela Internet. Seu cdigo fonte liberado como _Free Software_ (software livre) o aviso de copyright do kernel feito por Linus descreve detalhadamente isto e mesmo ele no pode fechar o sistema para que seja usado apenas comercialmente. Isto quer dizer que voc no precisa pagar nada para usar o Linux, e no crime fazer cpias para instalar em outros computadores, ns inclusive incentivamos voc a fazer isto. Ser um sistema de cdigo aberto pode explicar a performance, estabilidade e velocidade em que novos recursos so adicionados ao sistema. Para rodar o `Linux' voc precisa, no mnimo, de um computador 386 SX com 2 MB de memria (para um kernel at a srie 2.2.x) ou 4MB (para kernels 2.4 e superiores) e 40MB disponveis em seu disco rgido para uma instalao bsica e funcional. O sistema segue o padro _POSIX_ que o mesmo usado por sistemas _UNIX_ e suas variantes. Assim, aprendendo o `Linux' voc no encontrar muita dificuldade em operar um sistema do tipo `UNIX, FreeBSD, HPUX, SunOS,' etc., bastando apenas aprender alguns detalhes encontrados em cada sistema. O cdigo fonte aberto permite que qualquer pessoa veja como o sistema funciona (til para aprendizado), corrija alguma problema ou faa alguma sugesto sobre sua melhoria, esse um dos motivos de seu rpido crescimento, do aumento da compatibilidade de perifricos (como novas placas sendo suportadas logo aps seu lanamento) e de sua estabilidade. Outro ponto em que ele se destaca o suporte que oferece a placas, CD-Roms e outros tipos de dispositivos de ltima gerao e mais antigos (a maioria deles j ultrapassados e sendo completamente suportados pelo sistema operacional). Este um ponto forte para empresas que desejam manter seus micros em funcionamento e pretendem investir em avanos tecnolgicos com as mquinas que possui.

-15-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Hoje o `Linux' desenvolvido por milhares de pessoas espalhadas pelo mundo, cada uma fazendo sua contribuio ou mantendo alguma parte do kernel gratuitamente. _Linus Torvalds_ ainda trabalha em seu desenvolvimento e tambm ajuda na coordenao entre os desenvolvedores. O suporte ao sistema tambm se destaca como sendo o mais eficiente e rpido do que qualquer programa comercial disponvel no mercado. Existem centenas de consultores especializados espalhados ao redor do mundo. Voc pode se inscrever em uma lista de discusso e relatar sua dvida ou alguma falha, e sua mensagem ser vista por centenas de usurios na Internet e algum ir te ajudar ou avisar as pessoas responsveis sobre a falha encontrada para devida correo. 1.4.1. Algumas Caractersticas do Linux --------------------------------------* livre e desenvolvido voluntariamente por programadores experientes, hackers, e contribuidores espalhados ao redor do mundo que tem como objetivo a contribuio para a melhoria e crescimento deste sistema operacional. Muitos deles estavam cansados do excesso de propaganda (Marketing) e baixa qualidade de sistemas comerciais existentes * Convivem sem nenhum tipo de conflito com outros sistemas operacionais (com o `DOS', `Windows', `OS/2') no mesmo computador. * Multitarefa real * Multiusurio * Suporte a nomes extensos de arquivos e diretrios (255 caracteres) * Conectividade com outros tipos de plataformas como _Apple, Sun, Macintosh, Sparc, Alpha, PowerPc, ARM, Unix, Windows, DOS, etc_. * Proteo entre processos executados na memria RAM * Suporte a mais de 63 terminais virtuais (consoles) * Modularizao - O `GNU/Linux' somente carrega para a memria o que usado durante o processamento, liberando totalmente a memria assim que o programa/dispositivo finalizado * Devido a modularizao, os drivers dos perifricos e recursos do sistema podem ser carregados e removidos completamente da memria RAM a qualquer momento. Os drivers (mdulos) ocupam pouco espao quando carregados na memria RAM (cerca de 6Kb para a Placa de rede NE 2000, por exemplo) * No h a necessidade de se reiniciar o sistema aps a modificar a configurao de qualquer perifrico ou parmetros de rede. Somente necessrio reiniciar o sistema no caso de uma instalao interna de um novo perifrico, falha em algum hardware (queima do processador, placa me, etc.). * No precisa de um processador potente para funcionar. O sistema roda bem em computadores 386Sx 25 com 4MB de memria RAM (sem rodar o sistema grfico X, que recomendado 8MB de RAM). J pensou no seu desempenho em um 486 ou Pentium ;-) * O crescimento e novas verses do sistema no provocam lentido, pelo contrrio, a cada nova verso os desenvolvedores procuram buscar maior compatibilidade, acrescentar recursos teis e melhor desempenho do sistema (como o que aconteceu na passagem do kernel 2.0.x para 2.2.x). * No requerida uma licena para seu uso. O `GNU/Linux'
-16-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

licenciado de acordo com os termos da GPL. * Acessa corretamente discos formatados pelo `DOS, Windows, Novell, OS/2, NTFS, SunOS, Amiga, Atari, Mac,' etc. * Utiliza permisses de acesso a arquivos, diretrios e programas em execuo na memria RAM. * O LINUX NO VULNERVEL A VRUS! Devido a separao de privilgios entre processos e respeitadas as recomendaes padro de poltica de segurana e uso de contas privilegiadas (como a de root, como veremos adiante), programas como vrus tornam-se inteis pois tem sua ao limitada pelas restries de acesso do sistema de arquivos e execuo. Frequentemente so criados exploits que tentam se aproveitar de falhas existentes em sistemas desatualizados e usa-las para danificar o sistema. _Erroneamente_ este tipo de ataque classificado como vrus por pessoas mal informadas e so resolvidas com sistemas bem mantidos. Em geral, usando uma boa distribuio que tenha um bom sistema de atualizao resolve em 99.9% os problemas com exploits. Qualquer programa (nocivo ou no) poder alterar partes do sistema que possui permisses (ser abordado como alterar permisses e tornar seu sistema mais restrito no decorrer do guia). * Rede TCP/IP mais rpida que no Windows e tem sua pilha constantemente melhorada. O `GNU/Linux' tem suporte nativo a redes TCP/IP e no depende de uma camada intermediria como o WinSock. Em acessos via modem a Internet, a velocidade de transmisso 10% maior. Jogadores do `Quake' ou qualquer outro tipo de jogo via Internet preferem o `GNU/Linux' por causa da maior velocidade do Jogo em rede. fcil rodar um servidor `Quake' em seu computador e assim jogar contra vrios adversrios via Internet. * Roda aplicaes _DOS_ atravs do `DOSEMU', `QEMU', `BOCHS'. Para se ter uma idia, possvel dar o boot em um sistema _DOS_ qualquer dentro dele e ao mesmo tempo usar a multitarefa deste sistema. * Roda aplicaes _Windows_ atravs do `WINE'. * Suporte a dispositivos infravermelho. * Suporte a rede via rdio amador. * Suporte a dispositivos Plug-and-Play. * Suporte a dispositivos USB. * Suporte a Fireware. * Dispositivos Wireless. * Vrios tipos de firewalls de alta qualidade e com grande poder de segurana de graa. * Roteamento esttico e dinmico de pacotes. * Ponte entre Redes. * Proxy Tradicional e Transparente. * Possui recursos para atender a mais de um endereo IP na mesma placa de rede, sendo muito til para situaes de manuteno em servidores de redes ou para a emulao de "mais computadores" virtualmente. O servidor WEB e FTP podem estar localizados no mesmo computador, mas o usurio que se conecta tem a impresso que a rede possui servidores diferentes. * O sistema de arquivos usado pelo `GNU/Linux' (`Ext2') organiza os arquivos de forma inteligente evitando a fragmentao e fazendo-o um poderoso sistema para aplicaes multi-usurias exigentes e gravaes intensivas.
-17-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

* Permite a montagem de um servidor Web, E-mail, News, etc. com um baixo custo e alta performance. O melhor servidor Web do mercado, o `Apache', distribudo gratuitamente junto com a maioria das distribuies Linux. O mesmo acontece com o `Sendmail'. * Por ser um sistema operacional de cdigo aberto, voc pode ver o que o cdigo fonte (instrues digitadadas pelo programador) faz e adapta-lo as suas necessidades ou de sua empresa. Esta caracterstica uma segurana a mais para empresas srias e outros que no querem ter seus dados roubados (voc no sabe o que um sistema sem cdigo fonte faz na realidade enquanto esta processando o programa). * Suporte a diversos dispositivos e perifricos disponveis no mercado, tanto os novos como obsoletos. * Pode ser executado em 10 arquiteturas diferentes (Intel, Macintosh, Alpha, Arm, etc.). * Consultores tcnicos especializados no suporte ao sistema espalhados por todo o mundo. * Entre muitas outras caractersticas que voc descobrir durante o uso do sistema. TODOS OS TENS DESCRITOS ACIMA SO VERDADEIROS E TESTADOS PARA QUE TIVESSE PLENA CERTEZA DE SEU FUNCIONAMENTO.

1.5. Distribuies do Linux --------------------------S o kernel `GNU/Linux' no suficiente para se ter uma sistema funcional, mas o principal. Existem grupos de pessoas, empresas e organizaes que decidem "distribuir" o Linux junto com outros programas essenciais (como por exemplo `editores grficos, planilhas, bancos de dados, ambientes de programao, formatao de documentos, firewalls, etc'). Este o significado bsico sua caracterstica prpria, a localizao de programas, escolha de uma distribuio cada um. de _distribuio_. Cada distribuio tem como o sistema de instalao, o objetivo, nomes de arquivos de configurao, etc. A pessoal e depende das necessidades de

Algumas distribuies bastante conhecidas so: _Slackware, Debian, Red Hat, Conectiva, Suse, Monkey,_ todas usando o SO Linux como kernel principal (a `Debian' uma distribuio independente de kernel e pode ser executada sob outros kernels, como o GNU hurd). A escolha de sua distribuio deve ser feita com muita ateno, no adianta muita coisa perguntar em canais de IRC sobre qual a melhor distribuio, ser levado pelas propagandas, pelo vizinho, etc. O melhor caminho para a escolha da distribuio, acredito eu, seria perguntar as caractersticas de cada uma e porque essa pessoa gosta dela ao invs de perguntar qual a melhor, porque quem lhe responder isto estar usando uma distribuio que se encaixa de acordo com suas necessidade e esta mesma distribuio pode no ser a melhor para lhe atender. Segue abaixo as caractersticas de algumas distribuies seguidas do
-18-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

site principal e endereo ftp: _Debian_ `http://www.debian.org/' - Distribuio desenvolvida e atualizada atravs do esforo de voluntrios espalhados ao redor do mundo, seguindo o estilo de desenvolvimento `GNU/Linux'. Por este motivo, foi adotada como a distribuio oficial do projeto _GNU_. Possui suporte a lngua Portuguesa, a nica que tem suporte a 10 arquiteturas diferentes (i386, Alpha, Sparc, PowerPc, Macintosh, Arm, etc.) e aproximadamente 15 sub-arquiteturas. A instalao da distribuio pode ser feita tanto atravs de Disquetes, CD-ROM, Tftp, Ftp, NFS ou atravs da combinao de vrios destes em cada etapa de instalao. Acompanha mais de 8710 programas distribudos em forma de pacotes divididos em 4 CDs binrios e 2 de cdigo fonte (ocupou 2.1 GB em meu disco rgido), cada um destes programas so mantidos e testados pela pessoa responsvel por seu empacotamento. Os pacotes so divididos em diretrios de acordo com sua categoria e gerenciados atravs de um avanado sistema de gerenciamento de pacotes (o dpkg) facilitando a instalao e atualizao de pacotes. Possui tanto ferramentas para administrao de redes e servidores quanto para desktops, estaes multimdia, jogos, desenvolvimento, web, etc. A atualizao da distribuio ou de pacotes individuais pode ser feita facilmente atravs de 2 comandos, no requerendo adquirir um novo CD para usar a ltima verso da distribuio. a nica distribuio no comercial onde todos podem contribuir com seu conhecimento para o seu desenvolvimento. Para gerenciar os voluntrios, conta com centenas de listas de discusso envolvendo determinados desenvolvedores das mais diversas partes do mundo. So feitos extensivos testes antes do lanamento de cada verso para atingir um alto grau de confiabilidade. As falhas encontradas nos pacotes podem ser relatados atravs de um _sistema de tratamento de falhas_ que encaminha a falha encontrada diretamente ao responsvel para avaliao e correo. Qualquer um pode receber a lista de falhas ou sugestes sobre a distribuio cadastrando-se em uma das lista de discusso que tratam especificamente da soluo de falhas encontradas na distribuio (disponvel na pgina principal da distribuio). Os pacotes podem ser instalados atravs de `Tarefas' contendo selees de pacotes de acordo com a utilizao do computador (servidor Web, desenvolvimento, TeX, jogos, desktop, etc.), _Perfis_ contendo selees de pacotes de acordo com o tipo de usurio (programador, operador, etc.), ou atravs de uma seleo individual de pacotes, garantindo que somente os pacotes selecionados sero instalados fazendo uma instalao enxuta. Existe um time de desenvolvedores com a tarefa especfica de monitorar atualizaes de segurana em servios (apache, sendmail, e todos os outros 8000 pacotes)que possam compromenter o servidor, deixando-o vulnervel a ataques. Assim que uma falha descoberta, enviado uma alerta (DSA - Debian Security Alert) e disponibilizada uma atualizao para correo das diversas
-19-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

verses da `Debian'. Isto geralmente feito em menos de 48 horas desde a descoberta da falha at a divulgao da correo. Como quase todas as falhas so descobertas nos programas, este mtodo tambm pode ser usado por administradores de outras distribuies para manterem seu sistema seguro e atualizado. O suporte ao usurio e desenvolvimento da distribuio so feitos atravs de listas de discusses e canais IRC. Existem uma lista de consultores habilitados a dar suporte e assistncia a sistemas Debian ao redor do mundo na rea consultores do site principal da distribuio. `ftp://ftp.debian.org/' - Endereo Ftp para download. _Conectiva_ `http://www.conectiva.com.br/' - um sistema tipicamente para pc e notebooks, com muitos pacotes de escritrio e desenho e etc. necessrio um conhecimento razovel do hardware que voc possui, pois ele *tenta* detectar sua placa de vdeo e rede, monitor e teclado, mas nem sempre a escolha acertada. A verso 10.0 saiu graficamente maravilhosa, mas com 3 cds. Existe um gerenciador grfico de pacotes, o Synaptic, que muito bom, principalmente pra quem est comeando. A instalao muito simples e intuitiva, com todo o gerenciamento centralizado. Alm de ter a maioria dos manuais online e traduzidos para portugus. `ftp://ftp.conectiva.com.br/' - Ftp da distribuio Conectiva. _Libranet_ `http://www.libranet.com/' - Distribuio baseada na Debian GNU/Linux oferecendo as principais caractersticas da distribuio Debian. So empacotadas os aplicativos mais utilizados da Distribuio Debian em um nico CD, voc pode ter um desktop completo sendo executado em pouco tempo. As atualizaes de softwares so feitas gratuitamente. O sistema de gerenciamento de pacotes Debian permite o gerenciamento de atualizaes automaticamente. `ftp://ftp.libranet.com/' - Ftp da distribuio. _Slackware_ `http://www.slackware.com/' - Distribuio desenvolvida por `Patrick Volkerding', desenvolvida para alcanar facilidade de uso e estabilidade como prioridades principais. Foi a primeira distribuio a ser lanada no mundo e costuma trazer o que h de mais novo enquanto mantm uma certa tradio, provendo simplicidade, facilidade de uso e com isso flexibilidade e poder. Desde a primeira verso lanada em Abril `Slackware Linux' tem buscado produzir a mais `UNIX-like', ou seja, mais parecida segue os padres Linux como o Linux File um padro de organizao de diretrios e
-20-

de 1993, o Projeto distribuio `Linux' com UNIX. O Slackware System Standard, que arquivos para as

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

distribuies. Enquanto as pessoas diziam que a Red Hat era a melhor distribuio para o usurio iniciante, o `Slackware' o melhor para o usurio mais "velho", ou seja programadores, administradores, etc. `ftp://ftp.slackwarebrasil.org/linux/slackware/' - Ftp da distribuio Slackware. _SuSE_ `http://www.suse.com/' - Distribuio comercial Alem com a coordenao sendo feita atravs dos processos administrativos dos desenvolvedores e de seu brao norte-americano. O foco da Suse o usurio com conhecimento tcnico no Linux (programador, administrador de rede, etc.) e no o usurio iniciante no Linux (at a verso 6.2). A distribuio possui suporte ao idioma e teclado Portugus, mas no inclui (at a verso 6.2) a documentao em Portugus. Eis a lista de idiomas suportados pela distribuio: English, Deutsch, Franais, Italiano, Espanhol, Portugus, Portugus Brasileiro, Polski, Cesky, Romanian, Slovensky, Indonsia. Possui suporte as arquiteturas Intel x86 e Alpha. Sua instalao pode ser feita via CD-ROM ou CD-DVD ( a primeira distribuio com instalao atravs de DVD). Uma mdia de 1500 programas acompanham a verso 6.3 distribudos em 6 CD-ROMs. O sistema de gerenciamento de pacotes o RPM padronizado. A seleo de pacotes durante a instalao pode ser feita atravs da seleo do perfil de mquina (developer, estao kde, grficos, estao gnome, servidor de rede, etc.) ou atravs da seleo individual de pacotes. A atualizao da distribuio pode ser feita atravs do CD-ROM de uma nova verso ou baixando pacotes de ftp://ftp.suse.com/. Usurios registrados ganham direito a suporte de instalao via e-mail. A base de dados de suporte tambm excelente e est disponvel na web para qualquer usurio independente de registro. `ftp://ftp.suse.com/' - Ftp da distribuio SuSE. _Red Hat Enterprise Linux_ `http://www.redhat.com/' - Distribuio comercial suportada pela Red Hat e voltada a servidores de grandes e medias empresas. Tambm conta com uma certificao chamada RHCE especfica desta distro. Ela no est disponvel para download, apenas vendida a custos a partir de 179 dlares (a verso workstation) at 1499 dlares (advanced server). _Fedora_ `http://fedora.redhat.com/' - O Fedora Linux a distribuio de desenvolvimento aberto patrocinada pela RedHat e pela comunidade, originada em 2002 e baseada em verso da antiga linha de produtos
-21-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

RedHat Linux, a distribuio mais utilizada do mundo. Esta distribuio no suportada pela Red Hat como distribuio oficial (ela suporta apenas a linha Red Hat Enterprise Linux), devendo obter suporte atravs da comunidade ou outros meios. A distribuio `Fedora' d prioridade ao uso do computador como estao de trabalho. Alm de contar com uma ampla gama de ferramentas de escritrio possui funes de servidor e aplicativos para produtividade e desenvolvimento de softwares. Considerado um dos sistemas mais fceis de instalar e utilizar, inclui traduo para portugs do Brasil e suporte s plataformas Intel e 64 bits. Por basear-se no RedHat. o Fedora conta com um o up2date, um software para manter o sistema atualizado e utiliza pacotes de programas no formato RPM, um dos mais comuns. Por outro lado, no possui suporte a MP3, Video Players ou NTFS (Discos do Windows) em virtude de problemas legais sendo necessrio o download de alguns plugins para a utilizao destas funes. O Fedora no distribuido oficialmente atravs de mdias ou CDs, se voc quiser obte-lo ter de procurar distribuidores independentes ou fazer o download dos 4 CDs atravs do site oficial. `http://download.fedora.redhat.com/pub/fedora/linux/core/2/i386/iso/' - Download da distribuio Fedora. _Mandrake_ `http://www.mandrakelinux.com/' - Uma distribuio francesa que se instala praticamente sozinha. Boa auto-deteco de perifricos, inclusive web-cams. `ftp://mandrake.mirrors.pair.com/Mandrakelinux/official/iso/move/2.0/i586/' - Download da distribuio. _Kurumin_ `http://guiadohardware.net/kurumin/index.php/' - Uma distribuio baseada em Debian que roda diretamente a partir do CD, sendo ideal para quem deseja testar uma distribuio Linux. Caso gosto, pode ser instalada diretamente no disco rgido. Distribuida a partir do CD, maravilhosa e suporta boa quantidade de hardwares disponveis. A verso instalada possui suporte a maioria dos winmodens mais encontrados no Brasil. `http://fisica.ufpr.br/kurumin/' - Download da distribuio.

1.6. Software Livre ------------------(traduo do texto `Linux e o Sistema GNU' de `Richard Stallman' obtido no site do CIPSGA: http://www.cipsga.org.br/). O projeto _GNU_ comeou h 12 anos atrs com o objetivo de desenvolver um sistema operacional Unix-like totalmente livre. `Livre' se refere liberdade, e no ao preo; significa que voc est livre para executar, distribuir, estudar, mudar e melhorar o software.
-22-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Um sistema Unix-like consiste de muitos programas diferentes. Ns achamos alguns componentes j disponveis como softwares livres -- por exemplo, `X Window' e `TeX'. Obtemos outros componentes ajudando a convencer seus desenvolvedores a tornarem eles livres -- por exemplo, o Berkeley network utilities. Outros componentes ns escrevemos especificamente para o GNU -- por exemplo, `GNU Emacs', o compilador `GNU C', o `GNU C library', `Bash' e `Ghostscript'. Os componentes desta ltima categoria so "software GNU". O sistema GNU consiste de todas as trs categorias reunidas. O projeto GNU no somente desenvolvimento e distribuio de alguns softwares livres teis. O corao do projeto GNU uma idia: que software deve ser _livre_, e que a liberdade do usurio vale a pena ser defendida. Se as pessoas tm liberdade mas no a apreciam conscientemente, no iro mant-la por muito tempo. Se queremos que a liberdade dure, precisamos chamar a ateno das pessoas para a liberdade que elas tm em programas livres. O mtodo do projeto GNU que programas livres e a idia da liberdade dos usurios ajudam-se mutuamente. Ns desenvolvemos software GNU, e conforme as pessoas encontrem programas GNU ou o sistema GNU e comecem a us-los, elas tambm pensam sobre a filosofia GNU. O software mostra que a idia funciona na prtica. Algumas destas pessoas acabam concordando com a idia, e ento escrevem mais programas livres. Ento, o software carrega a idia, dissemina a idia e cresce da idia. Em 1992, ns encontramos ou criamos todos os componentes principais do sistema exceto o kernel, que ns estvamos escrevendo. (Este kernel consiste do microkernel Mach mais o GNU HURD. Atualmente ele est funcionando, mas no est preparado para os usurios. Uma verso alfa dever estar pronta em breve.) Ento o kernel do Linux tornou-se disponvel. Linux um kernel livre escrito por Linus Torvalds compatvel com o Unix. Ele no foi escrito para o projeto GNU, mas o Linux e o quase completo sistema GNU fizeram uma combinao til. Esta combinao disponibilizou todos os principais componentes de um sistema operacional compatvel com o Unix, e, com algum trabalho, as pessoas o tornaram um sistema funcional. Foi um sistema GNU variante, baseado no kernel do `Linux'. Ironicamente, a popularidade destes sistemas desmerece nosso mtodo de comunicar a idia GNU para as pessoas que usam GNU. Estes sistemas so praticamente iguais ao sistema GNU -- a principal diferena a escolha do kernel. Porm as pessoas normalmente os chamam de "sistemas Linux (Linux systems)". A primeira impresso que se tem a de que um "sistema Linux" soa como algo completamente diferente de "sistema GNU", e isto que a maioria dos usurios pensam que acontece. A maioria das introdues para o "sistema Linux" reconhece o papel desempenhado pelos componentes de software GNU. Mas elas no dizem que o sistema como um todo uma variante do sistema GNU que o projeto GNU vem compondo por uma dcada. Elas no dizem que o objetivo de um sistema Unix-like livre como este veio do projeto GNU. Da a maioria dos usurios no saber estas coisas.
-23-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Como os seres humanos tendem a corrigir as suas primeiras impresses menos do que as informaes subseqentes tentam dizer-lhes, estes usurios que depois aprendem sobre a relao entre estes sistemas e o projeto GNU ainda geralmente o subestima. Isto faz com que muitos usurios se identifiquem como uma comunidade separada de "usurios de Linux", distinta da comunidade de usurios GNU. Eles usam todos os softwares GNU; de fato, eles usam quase todo o sistema GNU; mas eles no pensam neles como usurios GNU, e freqentemente no pensam que a filosofia GNU est relacionada a eles. Isto leva a outros problemas tambm -- mesmo dificultando cooperao com a manuteno de programas. Normalmente quando usurios mudam um programa GNU para fazer ele funcionar melhor em um sistema especfico, eles mandam a mudana para o mantenedor do programa; ento eles trabalham com o mantenedor explicando a mudana, perguntando por ela, e s vezes reescrevendo-a para manter a coerncia e mantenebilidade do pacote, para ter o patch instalado. Mas as pessoas que pensam nelas como "usurios Linux" tendem a lanar uma verso "Linux-only" do programa GNU, e consideram o trabalho terminado. Ns queremos cada e todos os programas GNU que funcionem "out of the box" em sistemas baseados em Linux; mas se os usurios no ajudarem, este objetivo se torna muito mais difcil de atingir. Como deve o projeto GNU lidar com este problema? O que ns devemos fazer agora para disseminar a idia de que a liberdade para os usurios de computador importante? Ns devemos continuar a falar sobre a liberdade de compartilhar e modificar software -- e ensinar outros usurios o valor destas liberdades. Se ns nos beneficiamos por ter um sistema operacional livre, faz sentido para ns pensar em preservar estas liberdades por um longo tempo. Se ns nos beneficiamos por ter uma variedade de software livres, faz sentido pensar sobre encorajar outras pessoas a escrever mais software livre, em vez de software proprietrio. Ns no devemos aceitar a idia de duas comunidades separadas para GNU e Linux. Ao contrrio, devemos disseminar o entendimento de que "sistemas Linux" so variantes do sistema GNU, e que os usurios destes sistemas so tanto usurios GNU como usurios Linux (usurios do kernel do Linux). Usurios que tm conhecimento disto iro naturalmente dar uma olhada na filosofia GNU que fez estes sistemas existirem. Eu escrevi este artigo como um meio de fazer isto. Outra maneira usar os termos "sistema GNU baseado em Linux (Linux-based GNU system)" ou "sistema GNU/Linux (GNU/Linux system)", em vez de "sistema Linux", quando voc escreve sobre ou menciona este sistema.

1.7. Processamento de Dados --------------------------_Processamento de Dados_ o envio de dados ao computador que sero processados e tero um resultado de sada til.
-24-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Veja tambm Section 1.14, `Dispositivos de Entrada e Sada'.

1.8. O Computador ---------------- uma mquina eletrnica que processa e armazena os dados e pode executar diversos programas para realizar uma srie de tarefas e assim atender a necessidade do seu utilizador. O computador no uma mquina inteligente, ele apenas executa as instrues dos programas que foram escritos pelo programador.

1.9. Conhecendo o Computador ---------------------------Esta explica para que serve cada boto do painel do computador e monitor de vdeo. Se voc j sabe para que cada um serve, recomendo pular esta parte, o BE-A-BA. :-) Todo computador possuem funes que so usados em outros tipos e modelos. Voc pode ter um modelo de computador e um amigo seu outro tipo e mesmo tendo aparncia diferente, tero as mesmas funes. 1.9.1. Tipos de Gabinete -----------------------Quanto ao tipo, o gabinete pode ser _Desktop_, _Mini-torre_ e _Torre_. _Desktop_ usado na posio _Horizontal_ (como o vdeo cassete). Sua caracterstica que ocupa pouco espao em uma mesa, pois pode ser colocado sob o monitor. A desvantagem que normalmente possui pouco espao para a colocao de novas placas e perifricos. Outra desvantagem a dificuldade na manuteno deste tipo de equipamento (hardware). _Mini-Torre_ usado na posio _Vertical_ (torre). o modelo mais usado. Sua caracterstica o espao interno para expanso e manipulao de perifricos. A desvantagem o espao ocupado em sua mesa :-). _Torre_ Possui as mesmas caractersticas do _Mini-torre_, mas tem uma altura maior e mais espao para colocao de novos perifricos. Muito usado em servidores de rede e placas que requerem uma melhor refrigerao. 1.9.2. Painel Frontal --------------------O painel frontal do computador tem os botes que usamos para ligar, desligar, e acompanhar o funcionamento do computador. Abaixo o significado de cada um: _Boto POWER_ Liga/Desliga o computador. _Boto TURBO_ Se ligado, coloca a placa me em operao na velocidade mxima (o
-25-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

padro). Desligado, faz o computador funcionar mais lentamente (depende de cada placa me). Deixe sempre o _TURBO_ ligado para seu computador trabalhar na velocidade mxima de processamento. Boto RESET Reinicia o computador. Quando o computador reiniciado, uma nova partida feita ( como se ns ligssemos novamente o computador). Este boto um dos mais usados por usurios `Windows' dentre os botes localizados no painel do microcomputador. No `GNU/Linux' raramente usado (com menos freqncia que a tecla `SCROLL LOCK'). recomendado se pressionar as teclas <CTRL> <ALT> <DEL> para reiniciar o computador e o boto _RESET_ somente em ltimo caso, pois o <CTRL> <ALT> <DEL> avisa ao Linux que o usurio pediu para o sistema ser reiniciado assim ele poder salvar os arquivos, fechar programas e tomar outras providncias antes de resetar o computador. KEYLOCK Permite `ligar/desligar' o teclado. acionado por uma chave e somente na posio "Cadeado Aberto" permite a pessoa usar o teclado (usar o computador). Alguns computadores no possuem KEYLOCK. LED POWER Led (normalmente verde) no painel do computador que quando aceso, indica que o computador est ligado. O led um diodo emissor de luz (light emission diode) que emite luz fria. LED TURBO Led (normalmente amarelo) no painel do computador. Quando esta aceso, indica que a chave turbo est ligada e o computador funcionando a toda velocidade. Raramente as placas me Pentium e acima usam a chave turbo. Mesmo que exista no gabinete do micro, encontra-se desligada. LED HDD Led (normalmente vermelho) no painel do computador. Acende quando o disco rgido (ou discos) do computador esta sendo usado. Tambm acende quando uma unidade de CD-ROM est conectada na placa me e for usado. 1.9.3. Monitor de Vdeo ----------------------O monitor de vdeo se divide em dois tipos: * _Monocromtico_ - Mostra tons de cinza * _Policromtico_ - A conhecida tela colorida Quando ao padro do monitor, existem diversos: _CGA_ - Color Graphics Adapter Capacidade de mostrar 4 cores simultneas em modo grfico. Uma das primeiras usadas em computadores PCs, com baixa qualidade de imagem, poucos programas funcionavam em telas CGA, quase todos em modo texto. Ficou muito conhecida como "tela verde" embora existem modelos CGA preto e branco. _Hrcules_ Semelhante ao CGA. Pode mostrar 2 cores simultneas em modo grfico. A diferena que apresenta uma melhor qualidade para a exibio de grficos mas por outro lado, uma grande variedade de programas para monitores CGA no funcionam com monitores Hrcules por causa de seu modo de vdeo. Tambm conhecido por sua imagem `amarela'.
-26-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Dependendo da placa de vdeo, voc pode configurar um monitor Hrcules monocromtico para trabalhar como _CGA_. _EGA_ - Enhanced Graphics Adapter Capacidade de mostrar 16 cores simultneas em modo grfico. Razovel melhora da qualidade grfica, mais programas rodavam neste tipo de tela. Ficou mais conhecida aps o lanamento dos computadores 286, mas no Brasil ficou pouco conhecida pois logo em seguida foi lanada o padro VGA. _VGA_ - Video Graphics Array Capacidade de mostrar 256 cores simultneas. Boa qualidade grfica, este modelo se mostrava capaz de rodar tanto programas texto como grficos com tima qualidade de imagem. Se tornou o padro mnimo para rodar programas em modo grfico.

1.10. Placa Me -------------- a placa principal do sistema onde esto localizados o Processador, Memria RAM, Memria Cache, BIOS, CMOS, RTC, etc. A placa me possui encaixes onde so inseridas placas de extenso (para aumentar as funes do computador). Estes encaixes so chamados de "`SLOTS'". 1.10.1. Alguns componentes da placa me --------------------------------------Abaixo a descrio de alguns tipos de componentes eletrnicos que esto presentes na placa me. No se preocupe se no entender o que eles significam agora: * `RAM' - Memria de Acesso Aleatrio (Randomic Access Memory). uma memria de armazenamento temporrio dos programas e depende de uma fonte de energia para o armazenamento dos programas. uma memria eletrnica muito rpida assim os programas de computador so executados nesta memria. Seu tamanho medido em Kilobytes ou Megabytes. Os chips de memria _RAM_ podem ser independentes (usando circuitos integrados encaixados em soquetes na placa me) ou agrupados placas de 30 pinos, 72 pinos e 168 pinos. Quanto maior o tamanho da memria, mais espao o programa ter ao ser executado. O tamanho de memria RAM pedido por cada programa varia, o `GNU/Linux' precisa de no mnimo 2 MB de memria RAM para ser executado pelo processador. * `PROCESSADOR' - a parte do computador responsvel pelo processamentos das instrues matemticas/lgicas e programas carregados na memria _RAM_. * `CO-PROCESSADOR' - Ajuda o Processador principal a processar as instrues matemticas. normalmente embutido no Processador principal em computadores a partir do _486 DX2-66_. * `CACHE' - Memria de Armazenamento Auxiliar do Processador. Possui alta velocidade de funcionamento, normalmente a mesma que o processador. Serve para aumentar o desempenho de
-27-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

processamento. A memria Cache pode ser embutida na placa me ou encaixada externamente atravs de mdulos L2. * `BIOS' - a memria _ROM_ que contm as instrues bsicas para a inicializao do computador, reconhecimento e ativao dos perifricos conectados a placa me. As _BIOS_ mais modernas (a partir do 286) tambm trazem um programa que usado para configurar o computador modificando os valores localizados na _CMOS_. As placas controladoras SCSI possuem sua prpria _BIOS_ que identificam automaticamente os perifricos conectados a ela. Os seguintes tipos de chips podem ser usados para gravar a _BIOS_: * `ROM' - Memria Somente para Leitura (Read Only Memory). Somente pode ser lida. programada de fbrica atravs de programao eltrica ou qumica. * `PROM' - Memria Somente para Leitura Programvel (Programable Read Only Memory) idntica a _ROM_ mas que pode ser programada apenas uma vez por mquinas "Programadoras PROM". tambm chamada de `MASK ROM'. * `EPROM' - Memria semelhante a _PROM_, mas seu contedo pode ser apagado atravs raios ultra-violeta. * `EEPROM' - Memria semelhante a _PROM_, mas seu contedo pode ser apagado e regravado. Tambm chamada de _Flash_. * `CMOS' - uma memria temporria alimentada por uma Bateria onde so lidas/armazenadas as configuraes do computador feitas pelo programa residente na BIOS.

1.11. Memria do Computador --------------------------A memria a parte do computador que permitem o armazenamento de dados. A memria dividida em dois tipos: Principal e Auxiliar. Normalmente quando algum fala em "memria de computador" est se referindo a memria "Principal". Veja abaixo as descries de _Memria Principal_ e _Auxiliar_. 1.11.1. Memria Principal ------------------------ um tipo de memria eletrnica que depende de uma fonte de energia para manter os dados armazenados e perde os dados quando a fonte de energia desligada. A memria _RAM_ do computador (Randomic Access Memory - Memria de Acesso aleatrio) o principal exemplo de memria de armazenamento Principal. Os dados so armazenados em circuitos integrados ("chips") e enquanto voc est usando seu computador, a _RAM_ armazena e executa seus programas. Os programas so executados na memria _RAM_ porque a memria eletrnica muito rpida.

-28-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Se desligarmos o computador ou ocorrer uma queda de energia, voc perder os programas que estiverem em execuo ou o trabalho que estiver fazendo. Por esse motivo necessrio o uso de uma memria auxiliar (veja Section 1.11.2, `Memria Auxiliar'). 1.11.2. Memria Auxiliar -----------------------So dispositivos que no dependem de uma fonte de energia para manter os dados armazenados, os dados no so perdidos quando a fonte de energia desligada. As _Memrias Auxiliares_ so muito mais lentas que as _Memrias Principais_ porque utilizam mecanismos mecnicos e eltricos (motores e eletroms) para funcionar e fazer a leitura/gravao dos dados. Um exemplo de dispositivos de armazenamento auxiliar so os disquetes, discos rgidos, unidades de fita, Zip Drives, CD-ROM, etc. A _Memria Auxiliar_ resolve o problema da perda de dados causado pela _Memria Principal_ quando o computador desligado, desta forma podemos ler nossos arquivos e programas da _memria Auxiliar_ e copia-los para a _Memria Principal_ (memria RAM) para que possam ser novamente usados. Um exemplo simples de quando estiver editando um texto e precisar salva-lo, o que voc faz simplesmente salvar os dados da memria _RAM_ que esto sendo editados para o disco rgido, desta forma voc estar guardando seu documento na _Memria Auxiliar_. Este tipo de memria mais lento que a memria principal, por este motivo que os programas somente so carregados e executados na _Memria Principal_.

1.12. Discos -----------Os discos so memrias de armazenamento Auxiliares. Entre os vrios tipos de discos existentes, posso citar os Flexveis, Rgidos e CDs. Veja as explicaes sobre cada um deles abaixo. 1.12.1. Discos Flexveis -----------------------So discos usados para armazenar e transportar pequenas quantidades de dados. Este tipo de disco normalmente encontrado no tamanho 3 1/2 (1.44MB) polegadas e 5 1/4 polegadas (360Kb ou 1.2MB). Hoje os discos de 3 1/2 so os mais utilizados por terem uma melhor proteo por causa de sua capa plstica rgida, maior capacidade e o menor tamanho o que facilita seu transporte. Os disquetes so inseridos em um compartimento chamado de "`Unidade de Disquetes'" ou "`Drive'" que faz a leitura/gravao do disquete. Sua caracterstica a baixa capacidade de armazenamento e baixa velocidade no acesso aos dados mas podem ser usados para transportar os dados de um computador a outro com grande facilidade. Os disquetes
-29-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

de computador comuns so discos flexveis. 1.12.2. Disco Rgido ------------------- um disco localizado dentro do computador. fabricado com discos de metal recompostos por material magntico onde os dados so gravados atravs de cabeas e revestido externamente por uma proteo metlica que preso ao gabinete do computador por parafusos. Tambm chamado de HD (Hard Disk) ou Winchester. nele que normalmente gravamos e executamos nossos programas mais usados. A caracterstica deste tipo de disco a alta capacidade de armazenamento de dados e alta velocidade no acesso aos dados. 1.12.3. CD --------- um tipo de disco que permite o armazenamento de dados atravs de um _compact disc_ e os dados so lidos atravs de uma lente tica. A Unidade de CD localizada no gabinete do computador e pode ler CDs de msicas, arquivos, interativos, etc. Existem diversos tipos de CDs no mercado, entre eles: * `CD-R' - CD gravvel, pode ser gravado apenas uma vez. Possui sua capacidade de armazenamento entre `600MB' e `740MB' dependendo do formato de gravao usado. Usa um formato lido por todas as unidades de CD-ROM disponveis no mercado. * `CD-RW' - CD regravvel, pode ser gravado vrias vezes, ter seus arquivos apagados, etc. Seu uso semelhante ao de um disquete de alta capacidade. Possui capacidade de armazenamento de normalmente `640MB' mas isto depende do fabricante. Usa um formato que lido apenas por unidades leitoras e gravadoras multiseo. * `DVD-ROM' - CD ROM de alta capacidade de armazenamento. Pode armazenar mais de 17GB de arquivos ou programas. um tipo de CD muito novo no mercado e ainda em desenvolvimento. lido somente por unidades prprias para este tipo de disco.

1.13. Cuidados Bsicos com o Computador e Disquetes --------------------------------------------------Abaixo uma lista de cuidados bsicos para garantir uma melhor conservao e funcionamento de seu computador e disquetes. * No deixe seu computador em locais expostos a umidade ou sol. mesmo se aplica a discos magnticos, como os disquetes. * Limpe o Gabinete e o Monitor com um pano levemente umedecido em gua com sabo neutro ou soluo de limpeza apropriada para micros. No use lcool, querosene, acetona ou qualquer outro tipo de produto abrasivo. O uso de um destes podem estragar o gabinete de seu computador e se um destes produtos atingir a parte interna pode causar problemas nas placas ou at um incndio! * No retire o Pino central da tomada do computador, ele no veio
-30-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

sobrando e tem utilidade! Este pino ligado a carcaa do computador (chassis) e deve ser ligado ao terra de sua rede eltrica. As descargas eltricas vindas da fonte e componentes do micro so feitas no chassis e se este pino for retirado voc poder tomar choques ao tocar em alguma parte metlica do micro e queimar componentes sensveis como o disco rgido, placa me, etc. Se estiver em dvida consulte um eletricista. * No instale seu computador muito perto de campos magnticos com televisores, aparelhos de som, motores, etc. Estes aparelhos geram rudos eltricos e/ou magnticos que podem prejudicar o bom funcionamento de seu micro. OBS: As caixas de som de kits multimdia possuem os ms revestidos de metais em seus auto-falantes para no causar nenhuma interferncia ao computador. * No coloque copos na bandeja da unidade de CD-ROM! * No coloque objetos dentro da unidade de disquetes. * Antes de desligar seu computador, utilize o comando `"shutdown -h now"' para finalizar os programas, salvar os dados, desmontar os sistemas de arquivos em seu sistema `GNU/Linux'. Para detalhes veja Section 1.16, `Desligando o computador'.

1.14. Dispositivos de Entrada e Sada ------------------------------------* `Entrada' - Permite a comunicao do usurio com o computador. So dispositivos que `enviam' dados ao computador para processamento. Exemplos: Teclado, mouse, caneta tica, scanner. O dispositivo de entrada padro (stdin) em sistemas `GNU/Linux' o teclado. * `Sada' - Permite a comunicao do computador com o usurio. So dispositivos que permitem o usurio visualizar o resultado do processamento enviado ao computador. Exemplos: Monitor, Impressora, Plotter. O dispositivo de sada padro (stdout) em sistemas `GNU/Linux' o Monitor.

1.15. Ligando o computador -------------------------Para ligar o computador pressione o boto _POWER_ ou _I/O_ localizado em seu painel frontal do micro. Imediatamente entrar em funcionamento um programa residente na memria _ROM_ (Read Only Memory - memria somente para leitura) da placa me que far os testes iniciais para verificar se os principais dispositivos esto funcionando em seu computador (memria RAM, discos,
-31-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

processador, portas de impressora, memria cache, etc). Quando o ROM termina os testes bsicos, ele inicia a procura do setor de boot nos discos do computador que ser carregado na memria RAM do computador. Aps carregar o setor de boot, o sistema operacional ser iniciado (veja Section 1.3, `Sistema Operacional'). O setor de boot contm a poro principal usada para iniciar o sistema operacional. No `GNU/Linux', o setor de boot normalmente criado por um gerenciador de inicializao (um programa que permite escolher qual sistema operacional ser iniciado). Deste modo podemos usar mais de um sistema operacional no mesmo computador (como o DOS e Linux). O gerenciador de inicializao mais usado em sistemas `GNU/Linux' na plataforma Intel X86 o `LILO'. Caso o ROM no encontre o sistema operacional em nenhum dos discos, ele pedir que seja inserido um disquete contendo o Sistema Operacional para partida.

1.16. Desligando o computador ----------------------------Para desligar o computador primeiro digite (como root): `"shutdown -h now"', `"halt"' ou `"poweroff"', o `GNU/Linux' finalizar os programas e gravar os dados em seu disco rgido, quando for mostrada a mensagem `"power down"', pressione o boto _POWER_ em seu gabinete para desligar a alimentao de energia do computador. _NUNCA_ desligue diretamente o computador sem usar o comando `shutdown', `halt' ou `poweroff', pois podem ocorrer perda de dados ou falhas no sistema de arquivos de seu disco rgido devido a programas abertos e dados ainda no gravados no disco. Salve seus trabalhos para no correr o risco de perde-los durante o desligamento do computador.

1.17. Reiniciando o computador -----------------------------Reiniciar quer dizer iniciar novamente o sistema. No recomendvel desligar e ligar constantemente o computador pelo boto `ON/OFF', por este motivo existe recursos para reiniciar o sistema sem desligar o computador. No `GNU/Linux' voc pode usar o comando `reboot', `shutdown -r now' e tambm pressionar simultaneamente as teclas <CTRL> <ALT> <DEL> para reiniciar de uma forma segura. Observaes: * Salve seus trabalhos para no correr o risco de perde-los durante a reinicializao do sistema. * O boto reset do painel frontal do computador tambm reinicia o computador, mas de uma maneira mais forte pois est ligado diretamente aos circuitos da placa me e o sistema ser reiniciado imediatamente, no tendo nenhuma chance de finalizar corretamente os programas, gravar os dados da memria no disco e desmontar os sistemas de arquivos. O uso indevido da tecla reset
-32-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

pode causar corrompimentos em seus arquivos e perdas. Prefira o mtodo de reinicializao explicado acima e use o boto reset somente em ltimo caso.

-------------------------------------------------------------------------------

2. Explicaes Bsicas ---------------------Este captulo traz explicaes sobre os principais componentes existentes no computador e do sistema operacional.

2.1. Estrutura bsica de diretrios do Sistema Linux ---------------------------------------------------O sistema `GNU/Linux' possui a seguinte estrutura bsica de diretrios organizados segundo o FHS (Filesystem Hierarchy Standard): `/bin' Contm arquivos programas do sistema que so usados com freqncia pelos usurios. `/boot' Contm arquivos necessrios para a inicializao do sistema. `/cdrom' Ponto de montagem da unidade de CD-ROM. `/dev' Contm arquivos usados para acessar dispositivos (perifricos) existentes no computador. `/etc' Arquivos de configurao de seu computador local. `/floppy' Ponto de montagem de unidade de disquetes `/home' Diretrios contendo os arquivos dos usurios. `/lib' Bibliotecas compartilhadas pelos programas do sistema e mdulos do kernel. `/lost+found' Local para a gravao de arquivos/diretrios recuperados pelo utilitrio `fsck.ext2'. Cada partio possui seu prprio diretrio `lost+found'. `/mnt' Ponto de montagem temporrio. `/proc'
-33-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Sistema de arquivos do kernel. Este diretrio no existe em seu disco rgido, ele colocado l pelo kernel e usado por diversos programas que fazem sua leitura, verificam configuraes do sistema ou modificar o funcionamento de dispositivos do sistema atravs da alterao em seus arquivos. `/root' Diretrio do usurio `root'. `/sbin' Diretrio de programas usados pelo superusurio (root) para administrao e controle do funcionamento do sistema. `/tmp' Diretrio para armazenamento de arquivos temporrios criados por programas. `/usr' Contm maior parte de seus programas. somente como leitura.

Normalmente acessvel

`/var' Contm maior parte dos arquivos que so gravados com freqncia pelos programas do sistema, e-mails, spool de impressora, cache, etc.

2.2. Curingas ------------Curingas (ou referncia global) um recurso usado para especificar um ou mais arquivos ou diretrios do sistema de uma s vez. Este um recurso permite que voc faa a filtragem do que ser listado, copiado, apagado, etc. So usados 4 tipos de curingas no `GNU/Linux': * "*" - Faz referncia a um nome completo/restante de um arquivo/diretrio. * "?" - Faz referncia a uma letra naquela posio.

* `[padro]' - Faz referncia a uma faixa de caracteres de um arquivo/diretrio. Padro pode ser: * `[a-z][0-9]' - Faz referncia a caracteres de `a' at `z' seguido de um caracter de `0' at `9'. * `[a,z][1,0]' - Faz a referncia aos caracteres `a' e `z' seguido de um caracter `1' ou `0' naquela posio. * `[a-z,1,0]' - Faz referncia a intervalo de caracteres de `a' at `z' ou `1' ou `0' naquela posio. A procura de caracteres "Case Sensitive" assim se voc deseja que sejam localizados todos os caracteres alfabticos voc deve usar `[a-zA-Z]'. Caso a expresso seja precedida por um `^', faz referncia a qualquer caracter exceto o da expresso. Por exemplo `[^abc]' faz referncia a qualquer caracter exceto `a', `b' e `c'. * `{padres}' - Expande e gera strings para pesquisa de padres de
-34-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

um arquivo/diretrio. * `X{ab,01}' - Faz referncia a seqencia de caracteres `Xab' ou `X01' * `X{a-z,10}' Faz referencia a seqencia de caracteres X`a-z' e `X10'. O que diferencia este mtodo de expanso dos demais que a existncia do arquivo/diretrio opcional para gerao do resultado. Isto til para a criao de diretrios. Lembrando que os 4 tipos de curingas ("*", "?", "[]", "{}") podem ser usados juntos. Para entender melhor vamos a prtica: Vamos dizer que tenha 5 arquivo no diretrio `/usr/teste': `teste1.txt, teste2.txt, teste3.txt, teste4.new, teste5.new'. Caso deseje listar _todos_ os arquivos do diretrio `/usr/teste' voc pode usar o coringa "*" para especificar todos os arquivos do diretrio: `cd /usr/teste' e `ls *' ou `ls /usr/teste/*'. No tem muito sentido usar o comando `ls' com "*" porque todos os arquivos sero listados se o `ls' for usado sem nenhum Coringa. Agora para listar todos os arquivos `teste1.txt, teste2.txt, teste3.txt' com excesso de `teste4.new', `teste5.new', podemos usar inicialmente 3 mtodos: 1. 2. Usando o comando `ls *.txt' que pega todos os arquivos que comeam com qualquer nome e terminam com `.txt'. Usando o comando `ls teste?.txt', que pega todos os arquivos que comeam com o nome `teste', tenham qualquer caracter no lugar do coringa `?' e terminem com `.txt'. Com o exemplo acima `teste*.txt' tambm faria a mesma coisa, mas se tambm tivssemos um arquivo chamado `teste10.txt' este tambm seria listado. Usando o comando `ls teste[1-3].txt', que pega todos os arquivos que comeam com o nome `teste', tenham qualquer caracter entre o nmero 1-3 no lugar da 6a letra e terminem com `.txt'. Neste caso se obtm uma filtragem mais exata, pois o coringa _?_ especifica qualquer caracter naquela posio e [] especifica nmeros, letras ou intervalo que ser usado.

3.

Agora para listar somente `teste4.new' e `teste5.new' podemos usar os seguintes mtodos: 1. `ls *.new' que lista todos os arquivos que terminam com `.new' 2. `ls teste?.new' que lista todos os arquivos que comeam com `teste', contenham qualquer caracter na posio do coringa _?_ e terminem com `.new'. 3. `ls teste[4,5].*' que lista todos os arquivos que comeam com `teste' contenham nmeros de 4 e 5 naquela posio e terminem com qualquer extenso. Existem muitas outras formas de se fazer a mesma coisa, isto depende do gosto de cada um. O que pretendi fazer aqui foi mostrar como especificar mais de um arquivo de uma s vez. O uso de curingas ser til ao copiar arquivos, apagar, mover, renomear, e nas mais diversas partes do sistema. Alias esta uma caracterstica do `GNU/Linux': permitir que a mesma coisa possa ser feita com liberdade de vrias
-35-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

maneiras diferentes.

-------------------------------------------------------------------------------

3. Hardware ----------Hardware tudo que diz respeito a parte fsica do computador. Nesta seo sero abordados assuntos relacionados com a configurao de hardwares, escolha de bons hardwares, dispositivos for Windows, etc.

3.1. Placa de expanso --------------------- um circuito eletrnico encaixado na placa me que tem por objetivo adicionar novas funcionalidades ao computador. Esta placa pode ser uma: * `placa de som' - para fazer o computador emitir sons, msicas, ligar um joystick, etc. * `fax-modem' - para enviar/receber fax, conectar-se a internet, BBS, acesso remoto, bina, etc. * `rede' - para permitir a comunicao com outros computadores em uma rede interna * `controladora de perifricos' - Para ligar discos rgidos, unidades de disquete, impressora, mouse, joystick, etc. * `SCSI' - Para ligar unidades de disco rgidos e perifricos de alto desempenho. * `Controladora de Scanner' - Para ligar um Scanner externo ao micro computador. O encaixe da placa me que recebe as placas de expanso so chamados de _Slots_.

3.2. Nomes de dispositivos -------------------------Seria terrvel se ao configurar CADA programa que utilize o mouse ou o modem precisssemos nos se referir a ele pela IRQ, I/O, etc... para evitar isso so usados os _nomes de dispositivos_. Os _nomes de dispositivos_ no sistema `GNU/Linux' so acessados atravs do diretrio `/dev'. Aps configurar corretamente o modem, com sua porta I/O 0x2F8 e IRQ 3, ele identificado automaticamente por `/dev/ttyS1' (equivalente a `COM2' no `DOS'). Daqui para frente basta se referir a `/dev/ttyS1' para fazer alguma coisa com o modem. Voc tambm pode fazer um link de `/dev/ttyS1' para um arquivo chamado
-36-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

`/dev/modem' usando: `ln -s /dev/ttyS1 /dev/modem', faa a configurao dos seus programas usando `/dev/modem' ao invs de `/dev/ttyS1' e se precisar reconfigurar o seu modem e a porta serial mudar para `/dev/ttyS3', ser necessrio somente apagar o link `/dev/modem' antigo e criar um novo apontando para a porta serial `/dev/ttyS3'. No ser necessrio reconfigurar os programas que usam o modem pois eles esto usando `/dev/modem' que est apontando para a localizao correta. Isto muito til para um bom gerenciamento do sistema. Abaixo uma tabela com o nome do dispositivo no `GNU/Linux', portas I/O, IRQ, DMA e nome do dispositivo no `DOS' (os nomes de dispositivos esto localizados no diretrio `/dev'): Dispos. Linux ttyS0 ttyS1 ttyS2 ttyS3 lp0 lp1 /dev/hda1 /dev/hda2 /dev/hdb1 Dispos. DOS COM1 COM2 COM3 COM4 LPT1 LPT2 C: D: * D: *

IRQ 4 3 4 3 7 5 14 14 15

DMA 3(ECP) 3(ECP) -

I/O 0x3F8 0x2F8 0x3E8 0x2E8 0x378 0x278 0x1F0,0x3F6 0x1F0,0x3F6 0x170,0x376

* A designao de letras de unidade do `DOS' no padro como no `GNU/Linux' e depende da existncia de outras unidades fsicas/lgicas no computador.

3.3. Configurao de Hardware ----------------------------A configurao consiste em ajustar as opes de funcionamento dos dispositivos (perifricos) para comunicao com a placa me. Um sistema bem configurado consiste em cada dispositivo funcionando com suas portas I/O, IRQ, DMA bem definidas, no existindo conflitos com outros dispositivos. Isto tambm permitir a adio de novos dispositivos ao sistema sem problemas. importante conhecer bem a configurao dos dispositivos do sistema para saber identificar e corrigir possveis problemas de conflitos e o que deve ser modificado, caso seja necessrio. Os parmetros usados para configurar dispositivos de hardware so a _IRQ_, _DMA_ e _I/O_. Nem todo dispositivo usam estes trs parmetros, alguns apenas a _I/O_ e _IRQ_, outros apenas a _I/O_, etc. 3.3.1. IRQ - Requisio de Interrupo -------------------------------------Existem dois tipos bsicos de interrupes: as usadas por dispositivos (para a comunicao com a placa me) e programas (para obter a ateno do processador). As _interrupes de software_ so mais usadas por
-37-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

programas, incluindo o sistema operacional e _interrupes de hardware_ mais usado por perifricos. Daqui para frente ser explicado somente detalhes sobre interrupes de hardware. Os antigos computadores 8086/8088 (XT) usavam somente `8' interrupes de hardware operando a 8 bits. Com o surgimento do AT foram includas 8 novas interrupes, operando a 16 bits. Os computadores 286 e superiores tem `16' interrupes de hardware numeradas de 0 a 15. Estas interrupes oferecem ao dispositivo associado a capacidade de interromper o que o processador estiver fazendo, pedindo ateno imediata. As interrupes do sistema podem ser visualizadas no kernel com o comando `cat /proc/interrupts'. Abaixo um resumo do uso mais comum das 16 interrupes de hardware: 0 01 02 Timer do Sistema Teclado - Fixa Controlador de Interrupo Programvel - Fixa. Esta interrupo usada como ponte para a IRQ 9 e vem dos antigos processadores 8086/8088 que somente tinham 8 IRQs. Assim, pera tornar processadores 8088 e 80286 comunicveis, a IRQ 2 usada como um redirecionador quando se utiliza uma interrupo acima da 8. Normalmente usado por /dev/ttyS1 mas seu uso depende dos dispositivos instalados em seu sistema (como fax-modem, placas de rede 8 bits, etc). Normalmente usado por /dev/ttyS0 e quase sempre usada pelo mouse serial a no ser que um mouse PS2 esteja instalado no sistema. Normalmente a segunda porta paralela. Muitos micros no tem a segunda porta paralela, assim comum encontrar placas de som e outros dispositivos usando esta IRQ. Controlador de Disquete - Esta interrupo pode ser compartilhada com placas aceleradoras de disquete usadas em tapes (unidades de fita). Primeira porta de impressora. Pessoas tiveram sucesso compartilhando esta porta de impressora com a segunda porta de impressora. Muitas impressoras no usam IRQs. Relgio em tempo real do CMOS - No pode ser usado por nenhum outro dispositivo. Esta uma ponte para IRQ2 e deve ser a ltima IRQ a ser utilizada. No entanto pode ser usada por dispositivos. Interrupo normalmente livre para dispositivos. O controlador USB utiliza essa interrupo quando presente, mas no regra. Interrupo livre para dispositivos Interrupo normalmente livre para dispositivos. O mouse PS/2,
-38-

- Fixa

03

04

05

06

07

08

09

10

11 12

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

quando presente, utiliza esta interrupo. 13 14 Processador de dados numricos - No pode ser usada ou compartilhada Esta interrupo usada pela primeira controladora de discos rgidos e no pode ser compartilhada. Esta a interrupo usada pela segunda controladora de discos e no pode ser compartilhada. Pode ser usada caso a segunda controladora esteja desativada. Dispositivos ISA, VESA, EISA, SCSI no permitem o compartilhamento de uma mesma IRQ, talvez isto ainda seja possvel caso no haja outras opes disponveis e/ou os dois dispositivos no acessem a IRQ ao mesmo tempo, mas isto uma soluo precria. Conflitos de IRQ ocorrem quando dois dispositivos disputam uma mesma IRQ, e normalmente ocasionam a parada ou mal funcionamento de um dispositivo e/ou de todo o sistema. Para resolver um conflito de IRQs, deve-se conhecer quais IRQs esto sendo usadas por quais dispositivos (usando `cat /proc/interrupts') e configurar as interrupes de forma que uma no entre em conflito com outra. Isto normalmente feito atravs dos jumpers de placas ou atravs de software (no caso de dispositivos jumperless ou plug-and-play). Dispositivos PCI so projetados para permitir o compartilhamento de uma mesma IRQ pois as manipulam de forma diferente. Se for necessrio usar uma interrupo normal, o chipset (ou BIOS) mapear a interrupo para uma interrupo normal do sistema (normalmente usando alguma interrupo entre a IRQ 9 e IRQ 12). 3.3.1.1. Prioridade das Interrupes -----------------------------------Cada IRQ no sistema tem um nmero que identifica a prioridade que ser atendida pelo processador. Nos antigos sistemas XT as prioridades eram identificadas em seqncia de acordo com as interrupes existentes: IRQ 0 1 2 3 4 5 6 7 8 PRI 1 2 3 4 5 6 7 8 9 Com o surgimento do barramento AT (16 bits), as interrupes passaram a ser identificadas da seguinte forma: IRQ 0 PRI 1 1 2 2 3 (9 4 10 5 11 6 12 7 13 8 14 9 15) 3 4 5 6 7 8 10 11 12 13 14 15 16

15

Note que a prioridade segue em seqncia atravs da `ponte' da IRQ 2 para IRQ 9. Os dispositivos com prioridade mais baixa so atendidos primeiro, mas uma diferena de desempenho praticamente imperceptvel de ser notada nos sistemas atuais. 3.3.2. DMA - Acesso Direto a Memria -----------------------------------A _DMA_ usada para permitir a transferncia de dados entre
-39-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

dispositivos I/O e a memria sem precisar do processador faze-lo. Ele livra esta carga do processador e resulta em uma rpida transferncia de dados. O PC padro tem dois controladores de DMA. O primeiro controla os canais `0, 1, 2, 3' e o segundo os canais `4, 5, 6, 7,' assim temos `8' canais. No entanto, o canal `4' perdido porque usado pelo _controlador de acesso direto a memria_. Os canais 0-3 so chamados de canais baixos porque podem somente mover um byte (_8 bits_) por transferncia enquanto canais altos movem 2 bytes (_16 bits_) por transferncia. Os dados movidos usando a DMA _no_ so movidos atravs do controlador de DMA. Isto oferece uma limitao porque a DMA somente podem mover dados entre os dispositivos (portas I/O) e a memria. No possvel mover dados entre as portas ou entre a memria. Existem dois controladores de DMA nos computadores AT e superiores. Ao contrrio do que acontece com os dois controladores de IRQ, o primeiro controlador ligado ao segundo e no o segundo ao primeiro. Os canais de DMA altos (5 ao 7) somente podem ser acessados por dispositivos de 16 bits (aqueles que utilizam a segunda parte do slot AT). Como resultado temos 8 canais de DMA, de 0 a 7, sendo que a DMA 4 usada como ligao entre eles. Os canais de DMA em uso no sistema podem ser visualizados com `cat /proc/dma'. Abaixo uma listagem de uso mais comum dos canais de DMA. DMA 0 1 Barram. 8/16 bits Uso Usada pelo circuito de refresh da memria DRAM Normalmente usado por placas de som (canal 8 bits), porta paralela ECP, adaptadoras SCSI, placas de rede ou controladora de scanner. Normalmente usado pela controladora de disquetes ou controladoras de tapes. Usado pela porta paralela ECP, placa de som, controladoras de tapes, controladoras SCSI ou controladora de scanner antiga. Usada como ponte para a outra controladora de DMA (0-3) Normalmente usada pela placa de som (canal 16 bits), placas controladoras SCSI, placas de rede ou controladora de scanner. Placa de som (canal 16 bits), controladora de scanner ou placa de rede. Placa de som (canal 16 bits), controladora de scanner ou placa de rede.

2 3

8/16 bits 8/6 bits

4 5

16 bits

6 7

16 bits 16 bits

Somente dispositivos ISA e derivados dele, como o EISA e VESA, usam os canais de DMA padro. Os atuais dispositivos de alta taxa de transferncia (normalmente PCI) possuem seu prprio controlador de DMA embutido, muito mais rpido do que a DMA padro. Este controlador de DMA chamado de _Bus Mastering_ e muito usado nos discos rgidos atuais e pode atingir taxas de 33,3MB/s (no modo 2) e 66MB/s (no modo 4 - requer um cabo IDE com aterramento para evitar interferncias de rudos externos). 3.3.2.1. Conflitos de DMA
-40-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

------------------------Um canal de DMA no pode ser compartilhado entre dispositivos. Ainda possvel configurar dois dispositivos para usarem um mesmo canal de DMA, desde que ele no seja usado ao mesmo tempo. Isto acontece com Scanners paralelos que compartilham a mesma porta paralela com a impressora. Se voc for uma pessoa que explora os recursos de multitarefa de seu Linux e seu desempenho, evite estes tipos de dispositivos, prefira aqueles que utilizam seus prprios recursos. Quando ocorre um conflito de DMA, os dados podem ser misturados e ocorrerem coisas estranhas at o travamento total do sistema. Este tipo de conflito difcil de se diagnosticar, a no ser que o tcnico seja experiente o bastante e tenha desconfiado do que o problema se trata... 3.3.3. I/O - Porta de Entrada/Sada ----------------------------------Cada dispositivo possui um endereo de porta. O endereo uma localizao da memria usada pelo computador para enviar dados ao dispositivo e onde o dispositivo envia dados ao computador. Ao contrrios da IRQ e DMA, o dispositivo pode usar mais de uma porta de Entrada/Sada ou uma faixa de endereos. Por exemplo, uma placa de som padro usa as portas 0x220, 0x330 e 0x388, respectivamente `audio digital', `midi' e `opl3'. As placas de rede normalmente transferem grandes quantidades de dados, assim ocupam uma faixa de endereos. Minha NE2000, por exemplo, ocupa a faixa de endereos 0x260 a 0x27F (0x260-0x27F). O tamanho da faixa de endereos varia de acordo com o tipo de dispositivo. Os endereos de _I/O_ em uso no sistema podem ser visualizados com o comando `cat /proc/ioports'. Endereos das portas de entrada/sada no podem ser compartilhados

3.4. Hardwares configurveis por jumpers, dip-switches, jumperless e Plug-and-Play. ---------------------------------------------------------------------------3.4.1. Jumpers -------------Hardwares configurveis por _jumpers_ (pinos metlicos protegidos por uma capa plstica) tem sua configurao alterada atravs da colocao, retirada ou mudana de posio. Hardwares configurveis por jumpers so os preferidos por tcnicos de informtica muito experientes. Estes hardwares possuem a caracterstica de somente terem seus parmetros modificados atravs da mudana da posio dos jumpers da placa, desta forma se obtm uma configurao fixa (no podendo ser modificada por qualquer tipo de programa) e o dispositivo estar sempre pronto para ser ativado aps a inicializao de qualquer sistema operacional.

-41-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

O nico inconveniente a necessidade de se retirar a placa do computador para se ter acesso aos jumpers de configurao, a no ser que estejam manualmente acessveis. Alguns hardwares configurveis atravs de jumpers podem tambm funcionar como Plug-and-Play, atravs de um ajuste da posio dos jumpers para Plug-and-Play. Normalmente as placas controladoras SIDE, rede, bons modelos de fax-modens, placas de som, SCSI, etc., so configuradas por jumpers e possuem um mapa de configurao gravado em seu circuito impresso que explica as posies de como os jumpers devem ser posicionados para operar na configurao desejada. Normalmente possvel escolher uma entre vrios tipos de configurao, mas recomendado optar por valores padres (para detalhes veja Section 3.3.1, `IRQ - Requisio de Interrupo', Section 3.3.2, `DMA - Acesso Direto a Memria' e Section 3.3.3, `I/O - Porta de Entrada/Sada'). As disposio dos jumpers so normalmente definidas em _fechado/aberto_ e _multi-posio_. Na disposio _fechado/aberto_, o jumper pode ou no ser colocado, definindo a configurao do dispositivo: ::|:: Esta disposio facilmente encontrada na seleo de IRQ e I/O em placas de fax-modem. Na disposio _multi-posio_, os pinos de encaixe so numerados de 1 a 3 (ou 1 a 4, 1 a 5, etc) e os pinos podem ou no ser colocados na placa e a posio que so colocados tambm influencia os valores escolhidos para o funcionamento do dispositivo (a posio 1-2 especificam um valor enquanto 2-3 especificam outro). A associao entre a posio dos jumpers e a configurao desejada feita consultando o mapa desenhado no circuito impresso da placa ou o manual de instrues da placa. A configurao de jumper atravs de multi-posio normalmente usada em placas me para definir a _freqncia de operao do barramento_, a _freqncia de multiplicao_ ou o _tipo do processador_. Se no possuir o mapa de configurao de sua placa e/ou o manual de instrues, ser necessrio fazer um mapeamento manual da placa, mas para isto voc precisar conhecer detalhadamente a configurao de portas I/O, DMA, IRQ usadas na mquina que ser usada e anotar as diferenas obtidas atravs da modificao da pinagem do dispositivo. Isto no fcil, mas tcnicos de informtica experientes conhecero as `armadilhas' encontradas pelo mapeamento manual de placas e faro o esquema de configurao completo do dispositivo, obtendo um excelente manual de instrues. Nesta hora a experincia conta mais que o uso de programas de diagnstico. Outra caracterstica de hardwares configurados atravs de jumpers que raramente apresentam problemas de funcionamento, a no ser que seus parmetros como IRQ, DMA, ou I/O estejam em conflitos com outro dispositivo, mas isso no culpa do fabricante e nem mesmo do dispositivo... 3.4.2. Dip-Switches
-42-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

------------------ a mesma coisa que os hardwares configurveis por jumpers exceto que so usados _dip-switches_ no lugar de jumpers. O _dip-switches_ um conjunto de chaves numeradas que podem ser colocadas para cima ou para baixo (como um disjuntor ou vrios interruptores _LIGA/DESLIGA_ colocados um ao lado do outro) para se modificar a configurao do dispositivo. Normalmente as chaves esto acessveis na parte metlica da placa (onde os hardwares so conectados) para permitir a fcil mudana de configurao sem retirar a placa. ainda comum encontrar isto em algumas placas de fax-modem. 3.4.3. Jumperless (sem jumper) -----------------------------Os hardwares _jumperless_ no possuem jumpers e so configurados atravs de um programa que acompanha a prpria placa. Neste programa escolhida a IRQ, DMA, I/O e a configurao salva na prpria placa ou restaurada aps cada inicializao por um programa carregado na memria. Devido a configurao via software, se obtm uma configurao fixa com muito mais facilidade do que via jumpers (por no haver a necessidade de se retirar a placa). A maioria das placas jumperless podem funcionar tambm como Plug-and-Play. Existem muitas placas de rede, fax-modem, scanner jumperless no mercado. 3.4.4. Plug-and-Play -------------------O _Plug-and-Play_ um protocolo que l os valores de operao disponveis para a placa e permitem que o usurio possa especificar facilmente qual ser sua IRQ, DMA, I/O. A diferena em relao ao modo jumperless que o mesmo programa de configurao Plug-and-Play permite configurar todas as placas Plug-and-Play e a placa somente recebe os valores de IRQ, DMA e I/O aps ser ativada por este programa, normalmente o `isapnp' no Linux. Isto significa que a placa no tem nenhum parmetro de IRQ, DMA e I/O na partida do sistema. Desta forma, somente sistemas operacionais que possuem suporte ao Plug-and-Play (como o `GNU/Linux', `Windows') ou programas acionadores PnP (como o `ICU' para o `DOS') podem ativar e usar estes tipos de placas. Placas Plug-and-Play permitem muita flexibilidade de configurao de dispositivos. O programa usado para a configurao de placas Plug-and-Play no `GNU/Linux' o `isapnp' e a configurao de todas as placas Plug-and-Play so definidas no arquivo `/etc/isapnp.conf'. Veja a prxima seo para entender como funciona o arquivo de configurao `isapnp.conf' e assim poder ativar seu dispositivo Plug-and-Play.

-43-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

3.4.4.1. Entendendo o arquivo de configurao `isapnp.conf' ----------------------------------------------------------Segue abaixo um exemplo de arquivo `/etc/isapnp.conf' gerado atravs do `pnpdump' para a configurao de uma placa de Som `Sound Blaster' com porta IDE embutida no `GNU/Linux'. O objetivo configurar a placa Sound Blaster para operar na configurao: * `IO=0x220' * `IRQ=5' * `DMA=1' * `DMA16=5' * `MIDI=0x330' * `OPL=0x388' * `IDE operando como placa controladora quartenria na porta 0x168/0x36e' - Ns queremos ligar um HD na placa de som, _SIM_ o `GNU/Linux' permite isso, e ele ser configurado como `/dev/hdg1' * `JOYSTICK na porta 0x220' - bom para jogos e controle do `xmms' Observe que as linhas iniciando com `#' so apenas comentrios e no sero interpretadas pelo `isapnp': # $Id: pnpdump.c,v 1.21 1999/12/09 22:28:33 fox Exp $ # Release isapnptools-1.21 (library isapnptools-1.21) # # Para detalhes do formato do arquivo de sada, veja a pgina de # manual do isapnp.conf # # A seo abaixo faz o isolamento da placa atravs da BIOS (normalmente no # precisa ser alterado). Com a configurao abaixo, os dados sobre # dispositivos sero obtidos diretamente da BIOS. # Em placas me que no suportam Plug-and-Play, necessrio apenas o # parmetro (ISOLATE) para que o isapnp possa assumir totalmente o controle # para identificao dos dispositivos Plug-and-Play (READPORT 0x0273) (ISOLATE PRESERVE) (IDENTIFY *) (VERBOSITY 2) (CONFLICT (IO FATAL)(IRQ FATAL)(DMA FATAL)(MEM FATAL)) # ou WARNING # # # # # # # # # # Card 1: (serial identifier fc 10 01 fb 5d 28 00 8c 0e) Vendor Id CTL0028, Serial Number 268565341, checksum 0xFC. Version 1.0, Vendor version 1.0 ANSI string -->Creative SB16 PnP<-Descomente os valores desejados abaixo, selecionando a configurao requerida. Note que o valor padro equivale ao primeiro parmetro disponvel (Minimum) "(CONFIGURE" inicia um bloco de configurao e finaliza com "(ACT Y)" Para ativar as configuraes selecionadas, basta descomentar a linha "#(ACT Y)" no final do bloco de configurao.

(CONFIGURE CTL0028/268565341 (LD 0 # ANSI string -->Audio<-# Pela string acima, esta a configurao de Audio da Sound Blaster # Hora de mltiplas escolhas, escolha apenas uma! # Inicia funes dependentes, classificada por prioridade aceitvel
-44-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

# # IRQ 5, 7 ou 10. (INT 0 (IRQ 5 (MODE +E))) # Foi especificada a IRQ 5 na configurao acima # Primeiro canal DMA 0, 1 ou 3. # Somente DMA de 8 bits # Dispositivo lgico no um bus master # DMA may execute in count by byte mode # DMA may not execute in count by word mode # DMA channel speed in compatible mode (DMA 0 (CHANNEL 1)) # O valor da DMA 8 bits padro 0 (o mais baixo), mas este no o valor # que desejamos. Ajustamos o valor para 1. # Next DMA channel 5, 6 or 7. # 16 bit DMA only # Logical device is a bus master # DMA may not execute in count by byte mode # DMA may execute in count by word mode # DMA channel speed in compatible mode (DMA 1 (CHANNEL 5)) # O canal DMA 16 bits desejado para a Sound Blaster o 5. Apenas # descomentamos a linha acima. # Logical device decodes 16 bit IO address lines # Minimum IO base address 0x0220 # Maximum IO base address 0x0280 # IO base alignment 32 bytes # Number of IO addresses required: 16 (IO 0 (SIZE 16) (BASE 0x0220)) # Apenas descomentamos a linha. # Logical device decodes 16 bit IO address lines # Minimum IO base address 0x0300 # Maximum IO base address 0x0330 # IO base alignment 48 bytes # Number of IO addresses required: 2 (IO 1 (SIZE 2) (BASE 0x0330)) # O valor padro 0x0300 para a porta MIDI, mas ns desejamos usar o # valor 0x0330. Descomentamos a linha e alteramos o valor da I/O. # Logical device decodes 16 bit IO address lines # Minimum IO base address 0x0388 # Maximum IO base address 0x0388 # IO base alignment 1 bytes # Number of IO addresses required: 4 (IO 2 (SIZE 4) (BASE 0x0388)) # Apenas descomentamos a linha. 0x0388 um valor padro para OPL # Fim de funes dependentes (NAME "CTL0028/268565341[0]{Audio }") (ACT Y) #Descomentamos para ativar este bloco de configurao acima ))

########################################
-45-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

# # # # # # #

Logical device id CTL2011 Descomente os valores desejados abaixo, selecionando a configurao requerida. Note que o valor padro equivale ao primeiro parmetro disponvel (Minimum) "(CONFIGURE" inicia um bloco de configurao e finaliza com "(ACT Y)" Para ativar as configuraes selecionadas, basta descomentar a linha "#(ACT Y)" no final do bloco de configurao.

(CONFIGURE CTL0028/268565341 (LD 1 # Compatible device id PNP0600 # ANSI string -->IDE<-# Pela string acima sabemos que esta a configurao da IDE embutida na SB # Hora de mltiplas escolhas, escolha apenas uma! # Inicia funes dependentes: Prioridade Preferida # IRQ 10. (INT 0 (IRQ 10 (MODE +E))) # Descomentamos e aceitamos o valor acima, pois no entra em conflito com # nenhum outro dispositivo do sistema. # Logical device decodes 16 bit IO address lines # Minimum IO base address 0x0168 # Maximum IO base address 0x0168 (IO 0 (SIZE 8) (BASE 0x0168)) # Descomentamos e aceitamos o valor acima, pois no entra em conflito com # nenhum outro dispositivo do sistema. # Logical device decodes 16 bit IO address lines # Minimum IO base address 0x036e # Maximum IO base address 0x036e # IO base alignment 1 bytes # Number of IO addresses required: 2 (IO 1 (SIZE 2) (BASE 0x036e)) # Descomentamos e aceitamos o valor acima, pois no entra em conflito com # nenhum outro dispositivo do sistema. # End dependent functions (NAME "CTL0028/268565341[1]{IDE }") (ACT Y) # Descomentando esta linha, a placa IDE da Sound Blaster passar a # funcionar como IDE quartenria (de acordo com os recursos passados) ))

####################################### # Logical device id CTL7001 # # Descomente os valores desejados abaixo, selecionando a configurao requerida. # Note que o valor padro equivale ao primeiro parmetro disponvel (Minimum) # "(CONFIGURE" inicia um bloco de configurao e finaliza com "(ACT Y)" # Para ativar as configuraes selecionadas, basta descomentar a linha # "#(ACT Y)" no final do bloco de configurao. (CONFIGURE CTL0028/268565341 (LD 3 # Compatible device id PNPb02f # ANSI string -->Game<-# Pela string acima sabemos que a Entrada para Joystick
-46-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

# # # # #

Logical device decodes 16 bit IO address lines Minimum IO base address 0x0200 Maximum IO base address 0x0200 IO base alignment 1 bytes Number of IO addresses required: 8 (IO 0 (SIZE 8) (BASE 0x0200)) (NAME "CTL0028/268565341[3]{Jogo }") (ACT Y) # Sem muitos comentrios... descomentamos a linha IO acima e # ativamos a configurao (descomentando (ACT Y)). A diferena # que especificamos o nome GAME para o recurso atravs da # linha (NAME "CTL0028/268565341[3]{Jogo }") # Este nome ser mostrado quando o Joystick for ativado )) # Returns all cards to the 'Wait for Key' state (WAITFORKEY) Note ainda que o `isapnp.conf' gerado atravs do `pnpdump' contm vrios tipos de prioridades de configurao para o mesmo bloco de configurao e a prioridade que usamos acima foi `priority acceptable' para o bloco de audio da Sound Blaster e `priority preferred' para a porta IDE e Joystick. Os tipos de prioridades disponveis so: * `priority preferred' - Configurao preferida para o funcionamento do hardware. a recomendada pelo fabricante do hardware e tambm recomendvel se voc no tem muita experincia na configurao de hardwares, pois lista somente uma configurao por recurso. Se a placa entrar em conflito com outras placas usando `priority preferred', tente a `priority acceptable'. * `priority acceptable' - Lista todas as configuraes aceitas pelo seu hardware. Ela minha opo preferida, pois permite analisar dinamicamente todas as configuraes permitidas pelo hardware e escolher qual a mais adequada para funcionar sem problemas no sistema. * `priority functional' - Pode conter 1 ou mais blocos de `prioriade funcional' por hardware. Note que alguns recursos do hardware podem no estar disponvel neste tipo de prioridade. til para uso em casos de conflito, quando o hardware pode ser colocado em funcionamento de forma alternativa ou parcial. Aps a gravao do arquivo `/etc/isapnp.conf', basta voc digitar `isapnp /etc/isapnp.conf' para ativar a configurao dos dispositivos listados com as configuraes que voc escolheu. Se o `isapnp' lhe mostrar mensagens de conflito ou qualquer outro problema, verifique as configuraes do hardware e modifique, se necessrio. Depois execute novamente o `/etc/isapnp.conf'. Para detalhes sobre outros parmetros no explicados aqui, veja a pgina de manual do `isapnp.conf'. A maioria das distribuies `GNU/Linux' configura os dispositivos Plug-and-Play existentes neste arquivo automaticamente na inicializao (como o caso da `Debian' e a `Red Hat'). Se este no for o seu caso, coloque a linha `isapnp /etc/isapnp.conf' em um dos scripts de inicializao de sua distribuio.

-47-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

3.5. Listando as placas e outros hardwares em um computador ----------------------------------------------------------Administradores e tcnicos ao configurar uma mquina precisaro saber quais os hardwares ela possui, perifricos e at mesmo a reviso de dispositivos e clock para configurar as coisas e ver a necessidade de atualizaes de dispositivos atuais. Dispositivos PCI/AMR/CNR podem ser listados executando o comando `cat /proc/pci'. Outra forma de listar tais dispositivos usando o `lspci', se voc precisa de mais detalhes como o mapeamento de memria, use `lspci -vv'. O mapeamento de memria de dispositivos podem ser mostrados com o comando `cat /proc/ioports', ou usando o comando `lsdev'. O barramento USB e dispositivos conectados a ele podem ser listados com o comando `lsusb' ou com `cat /proc/bus/usb/devices'. Hardwares disponveis na mquina, como placa me, clock multiplicador, discos, placas diversas, verses e nmeros seriais de dispositivos podem ser mostrados atravs do comando `lshw'. Use `lshw -html' para produzir a listagem em formato HTML, bem interessante para relatrios :-)

3.6. Conflitos de hardware -------------------------Ocorre quando um ou mais dispositivos usam a mesma _IRQ_, _I/O_ ou _DMA_. Um sistema com configuraes de hardware em conflito tem seu funcionamento instvel, travamentos constantes, mal funcionamento de um ou mais dispositivos e at mesmo, em casos mais graves, a perda de dados. Sempre que possvel conhea e utilize os valores padres para a configurao de perifricos, isto pode te livrar de conflitos com outros dispositivos e mal funcionamento do sistema. Alguns programas de diagnstico ou de auto-deteco podem no localizar seu dispositivo caso ele esteja usando um valor muito diferente do padro. Para resolver conflitos de hardware ser necessrio conhecer a configurao de cada dispositivo em seu sistema. Os comandos `cat /proc/interrupts', `cat /proc/dma' e `cat /proc/ioports' podem ser teis para se verificar as configuraes usadas. Lembre-se que o barramento PCI permite o compartilhamento de IRQs entre placas PCI.

3.7. Barramento --------------O tipo de _slot_ varia de acordo com o barramento usado no sistema, que pode ser um(s) do(s) seguinte(s): ISA 8 Bits
-48-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

`Industry Standard Architecture' - o padro mais antigo, encontrado em computadores PC/XT. ISA 16 Bits Evoluo do padro ISA 8 Bits, possui um conector maior e permite a conexo de placas de 8 bits. Sua taxa de transferncia chega a 2MB/s. VESA `Video Electronics Standard Association' - uma interface feita inicialmente para placas de vdeo rpidas. O barramento VESA basicamente um ISA com um encaixe extra no final. Sua taxa de transferncia pode chegar a 132MB/s. EISA `Enhanced Industry Standard Architecture' - um barramento mais encontrado em servidores. Tem a capacidade de bus mastering, que possibilita a comunicao das placas sem a interferncia da CPU. MCA `Micro Channel Architecture' - Barramento 32 bits proprietrio da IBM. Voc no pode usar placas ISA nele, possui a caracterstica de bus mastering, mas pode procurar por dispositivos conectados a ele, procurando configurao automtica. Este barramento estava presente no PS/1 e PS/2, hoje no mais usado. PCI `Peripheral Component Interconnect' - outro barramento rpido produzido pela Intel com a mesma velocidade que o VESA. O barramento possui um chipset de controle que faz a comunicao entre os slots PCI e o processador. O barramento se configura automaticamente (atravs do Plug-and-Play). O PCI o barramento mais usado por Pentiums e est se tornando uma padro no PC. AGP `Accelerated Graphics Port' - um novo barramento criado exclusivamente para a ligao de placas de video. um slot marrom (em sua maioria) que fica mais separado do ponto de fixao das placas no chassis (comparado ao PCI). Estas placas permitem obter um desempenho elevado de vdeo se comparado as placas onboards com memria compartilhada e mesmo PCI externas. O consumo de potncia em placas AGP x4 podem chegar at a 100W, portanto importante dimensionar bem o sistema e ter certeza que a fonte de alimentao pode trabalhar com folga. PCMCIA `Personal Computer Memory Card International Association' - um slot especial usado para conexes de placas externas (normalmente revestivas de plstico) e chamadas de _cartes PCMCIA_. Estes cartes podem adicionar mais memria ao sistema, conter um fax-modem, placa de rede, disco rgido, etc. Os cartes PCMCIA so divididos em 3 tipos: `Tipo 1' Tem a espessura de 3.3 milmetros, e podem conter mais memria RAM ou memria Flash. `Tipo 2' Tem a espessura de 5 milmetros e capacidade de operaes I/O. um tipo usado para placas de fax-modem, rede, som. Computadores que aceitam cartes PCMCIA do tipo 2, mantm a compatibilidade com o tipo 1. `Tipo 3' Tem a espessura de 10.5 milmetros e normalmente usado para discos rgidos PCMCIA. Slots PCMCIA do tipo 3 mantm a
-49-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

compatibilidade com o tipo 2 e 1. AMR `Audio Modem Raise' - Pequeno barramento criado pela Intel para a conexo de placas de som e modem. Placas de som e modem AMR usam o HSP (host signal processor) e so como as Placas on-board e todo o processamento feito pela CPU do computador (veja detalhes em Section 3.8, `Placas on-board / off-board' e Section 3.9, `Hardwares especficos ou "For Windows"'. Sua vantagem o preo: um modem ou placa de som AMR custa em torno de R$ 25,00. CNR `Communication and Networking Rise' - Pequeno barramento criado pela Intel para a conexo de placas de som, modens e placas de rede. Este um pequenino slot marrom que localizado no ponto de fixao das placas no chassis do gabinete. Elas so como as Placas on-board e todo o processamento feito pela CPU do computador (veja detalhes em Section 3.8, `Placas on-board / off-board' e Section 3.9, `Hardwares especficos ou "For Windows"'.

3.8. Placas on-board / off-board -------------------------------Placas _on-board_ so embutidas na placa me (_motherboard_). Placas _off-board_ so placas externas encaixadas nos slots de expanso da placa me. No inicio da era do PC/XT todos as placas eram embutidas na placa me (na poca eram somente a placa de vdeo e controladora). Com o surgimento do padro AT, diversas empresas de informtica desenvolveram dispositivos concorrentes e assim o usurio tinha a liberdade de escolha de qual dispositivo colocar em sua placa me (ou o mais barato ou o de melhor qualidade e desempenho), isto permitiu a adio de perifricos de qualidade sem romper com seu oramento pessoal (comprando uma placa de som, depois uma de fax-modem, placa de vdeo melhor, etc). Atualmente parece que voltamos ao ponto de partida e tudo vem embutido na placa me (_on-board_) e o usurio no tem como escolher qual dispositivo usar em seu computador. muito difcil (praticamente impossvel) encontrar uma placa me que satisfaa completamente as necessidades do usurio ou recomendaes de um bom tcnico de informtica (a no ser que seja um tcnico experiente e encontre alguma alternativa). Certamente o nico dispositivo que funciona melhor se embutido na placa me a _placa controladora de perifricos_. Esta placa usada para se conectar unidades de disquete, discos rgidos, CD-ROM, portas seriais, paralelas, joystick ao computador. Os HDs conectados em uma controladora embutida conseguem ter um desempenho muito maior do que em placas conectadas externamente, sem causar nenhum tipo de problema. Felizmente os ltimos modelos de placas me 486 e os Pentium j trazem a placa controladora de perifricos embutida. Hardwares embutidos na placa me (como fax-modem, vdeo, som) so em mdia 30% mais baratos que os vendidos separadamente mas quase sempre
-50-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

so usados dispositivos de baixo desempenho e qualidade para reduzir o preo da placa me e quase sempre usados hardwares `For Windows'. Hoje em dia por causa do preo da placa me, comum encontrar pessoas que verificam somente o preo e sequer procuram saber ou conhecem a qualidade das placas embutidas na placa me. Pior ainda encontrar vendedores despreparados que sequer sabem explicar o porque que uma placa de som Sound Blaster 64 mais cara que uma de modelo genrico... Certa vez fiz um teste de desempenho em um jogo chamado _Network Rally_ do _DOS_ com minha mquina Pentium 120 MHz (s com a _placa controladora_ embutida), 16 MB RAM, placa de som Sound Blaster 16, placa de vdeo Trident 9680 com 1MB _versus_ um computador Pentium 200 MMX, 32 MB RAM, placa de vdeo embutida (usando 2 MB de memria compartilhada), fax modem Rockwell embutido, e som CMI 8330 tambm embutido. O resultado foi que o jogo rodava perfeito em meu pentium 120MHZ e no outro computador com o som pipocando e imagem apresentando paradas. O problema que em dispositivos de baixa qualidade e baratos, sua carga de processamento jogada para o processador, resultando em menos potncia para executar os programas (veja Section 3.9, `Hardwares especficos ou "For Windows"' para maiores detalhes sobre o problema). A memria de vdeo compartilhada quer dizer que parte da memria RAM usada para memria de vdeo ao invs de uma memria DRAM especfica e desenvolvida exclusivamente para acelerao de vdeo. Isto traz mais lentido pois a memria de vdeo (RAM) tambm ser acessada pelo barramento do computador, envolvendo mais carga para o processador, etc. A tcnica de memria compartilhada exclusiva de placas de vdeo embutidas. Outro perifrico que traz problemas e muita carga para o processador o fax-modem for Windows, HSP, AMR, micromodem, etc. A maioria destes perifricos se recusam a funcionar em computadores inferiores ao Pentium 150, no trazem seu chip de processamento e o pior: o chip UART. Isto faz com que o perifrico, mesmo marcando conexo a 57.600 ou mais tenha um desempenho de at duas vezes menor que um fax-modem inteligente com chip de processamento prprio e UART (sem contar com os controles internos do modem, como os protocolos de correo de erros, e sua extensa interface de programao via comandos). A economia, neste caso, ser paga em sua conta telefnica. Outra vantagem de fax-modens inteligentes que os modelos atuais vem com _FlashBios_ o que significa que podem ser reprogramados facilmente para passar de 33.600 para 57.600 sem trocar a placa, ou aceitarem novas tendncias de tecnologia. Para detalhes veja Section 3.9, `Hardwares especficos ou "For Windows"'. Se voc estiver em uma situao destas, certamente os computadores de menor potncia e com hardwares inteligentes (que possuem seus prprios chips de controle e processamento) tero um desempenho muito melhor. Mas tambm existem placas embutidas que tem a mesma qualidade de placas separadas (como alguns modelos de placas me que trazem a _Sound Blaster_ embutida). O preo pode ser maior mas voc estar pagando por um dispositivo de melhor qualidade e que certamente trar benefcios a voc e ao seu sistema.
-51-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Consulte um tcnico em informtica experiente para te indicar uma placa me de bom preo e de qualidade. muito comum encontrar falta de profissionalismo em pessoas que no sabem distinguir as caractersticas, funes e vantagens entre uma placa de boa qualidade e um hardware for Windows a no ser o preo mais barato.

3.9. Hardwares especficos ou "For Windows" ------------------------------------------Esta seo foi retirada do manual de instalao da Debian GNU/Linux. Uma tendncia que perturba a proliferao de Modens e impressoras especficos para Windows. Em muitos casos estes so especialmente fabricados para operar com o Sistema Operacional Microsoft Windows e costumam ter a legenda `WinModem', `for Windows', ou `Feito especialmente para computadores baseados no Windows'. Geralmente estes dispositivos so feitos retirando os processadores embutidos daquele hardware e o trabalho deles so feitos por drivers do Windows que so executados pelo processador principal do computador. Esta estratgia torna o hardware menos caro, mas o que poupado no passado para o usurio e este hardware pode at mesmo ser mais caro quanto dispositivos equivalentes que possuem inteligncia embutida. Voc deve evitar o hardware baseado no Windows por duas razes: 1. O primeiro que aqueles fabricantes no tornam os recursos disponveis para criar um driver para Linux. Geralmente, o hardware e a interface de software para o dispositivo proprietria, e a documentao no disponvel sem o acordo de no revelao, se ele estiver disponvel. Isto impede seu uso como software livre, desde que os escritores de software grtis descubram o cdigo fonte destes programas. A segunda razo que quando estes dispositivos tem os processadores embutidos removidos, o sistema operacional deve fazer o trabalho dos processadores embutidos, freqentemente em prioridade de tempo real, e assim a CPU no esta disponvel para executar programas enquanto ela esta controlando estes dispositivos. Um exemplo tpico disso so os Modens for Windows; Alm da carga jogada na CPU, o dispositivo no possui o chip UART 16550, que essencial para uma boa taxa de transferncia do modem. O que alguns destes dispositivos fazem a emulao deste chip exigindo no mnimo uma CPU Pentium de 166 MHZ para operar adequadamente nesta taxa de transmisso. Mesmo assim, devido a falta do chip UART, um modem destes inicia uma transmisso de um arquivo a 57.600, a tendncia sua taxa de transferncia ir caindo na medida que um arquivo transferido (at se estabilizar em 21/25 Kbps). Assim o usurio tpico do Windows no obtm um multi-processamento to intensivo como um usurio do Linux, o fabricante espera que aquele usurio do Windows simplesmente no note a carga de trabalho que este hardware pe naquela CPU. No entanto, qualquer sistema operacional de multi-processamento, at
-52-

2.

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

mesmo Windows 95 / 98 ou NT, so prejudicados quando fabricantes de perifricos retiram o processador embutido de suas placas e colocam o processamento do hardware na CPU. Voc pode ajudar a reverter esta situao encorajando estes fabricantes a lanarem a documentao e outros recursos necessrios para ns desenvolvermos drivers para estes hardwares, mas a melhor estratgia simplesmente evitar estes tipos de hardwares at que ele esteja listado no HOWTO de hardwares compatveis com Linux. Note que hoje j existem muitos drivers para WinModems e outros hardwares for Windows para o Linux. Veja a lista de hardwares compatveis no HARDWARE-HOWTO ou procure o driver no site do fabricante de seu dispositivo. Mesmo assim a dica evitar hardwares for Windows e comprar hardwares inteligentes onde cada um faz sua funo sem carregar a CPU.

3.10. Dispositivos especficos para GNU/Linux --------------------------------------------Esta seo foi retirada do manual de instalao da Debian GNU/Linux. Existem diversos vendedores, agora, que vendem sistemas com a `Debian' ou outra distribuio do GNU/Linux pr-instaladas. Voc pode pagar mais para ter este privilgio, mas compra um nvel de paz de mente, desde ento voc pode ter certeza que seu hardware bem compatvel com GNU/Linux. Praticamente todas as placas que possuem processadores prprios funcionam sem nenhum problema no Linux (algumas placas da `Turtle Beach' e `mwave' tem suporte de som limitado). Se voc tiver que comprar uma mquina com Windows instalado, leia cuidadosamente a licena que acompanha o Windows; voc pode rejeitar a licena e obter um desconto de seu vendedor. Se no estiver comprando um computador com `GNU/Linux' instalado, ou at mesmo um computador usado, importante verificar se os hardwares existentes so suportados pelo kernel do `GNU/Linux'. Verifique se seu hardware listado no _Hardware Compatibility HOWTO_, na documentao do cdigo fonte do kernel no diretrio `Documentation/sound' ou consulte um tcnico de `GNU/Linux' experiente. Deixe seu vendedor (se conhecer) saber que o que est comprando para um sistema `GNU/Linux'. Desta forma isto servir de experincia para que ele poder recomendar o mesmo dispositivo a outras pessoas que procuram bons dispositivos para sistemas `GNU/Linux'. Apie vendedores de hardwares amigos do `GNU/Linux'.

3.11. Configuraes de Dispositivos ----------------------------------As sees abaixo explicam como fazer configuraes em dispositivos diversos no sistema `Linux' como placas de rede, som, gravador de CD entre outras. 3.11.1. Configurando uma placa de rede
-53-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

-------------------------------------Para configurar sua placa de rede no `Linux' siga os passos a seguir: 1. Identifique se sua placa de rede ISA ou PCI. Caso seja ISA, pode ser preciso alterar a configurao de jumpers ou plug-and-play, evitando conflitos de hardware ou o no funcionamento da placa (veja como configura-la em Section 3.4, `Hardwares configurveis por jumpers, dip-switches, jumperless e Plug-and-Play.'. 2. Identifique a marca/modelo de sua placa. O programa `lshw' til para isto. Caso sua placa seja PCI ou CNR, execute o comando `lspci' e veja a linha "Ethernet". Em ltimo caso, abra a mquina e procure a marca na prpria placa. Quase todos os fabricantes colocam a marca da placa no prprio circuito impresso ou no CI principal da placa (normalmente o maior). 3. Depois de identificar a placa, ser preciso carregar o mdulo correspondente para ser usada no `Linux'. Em algumas instalaes padres o suporte j pode estar embutido no kernel, neste caso, voc poder pular este passo. Para carregar um mdulo, digite o comando `modprobe modulo' (Veja Section 16.8, `modprobe') . Em placas ISA, geralmente preciso passar a IRQ e porta de I/O como argumentos para alocar os recursos corretamente. O `modprobe' tentar auto-detectar a configurao em placas ISA, mas ela poder falhar por algum motivo. Por exemplo, para uma NE 2000: `modprobe ne io=0x300 irq=10'. Para evitar a digitao destes parmetros toda vez que a mquina for iniciada recomendvel coloca-lo no arquivo `/etc/modules.conf' da seguinte forma: options ne io=0x300 irq=10 A partir de agora, voc pode carregar o mdulo de sua placa NE 2000 apenas com o comando `modprobe ne'. O parmetro `io=0x300 irq=10' ser automaticamente adicionado. Em sistemas `Debian', o local correto para colocar as opes de um mdulo em arquivos separados localizados dentro de `/etc/modutils'. Crie um arquivo chamado `/etc/modutils/ne' e coloque a linha: options ne io=0x300 irq=10 Depois disso, execute o comando `update-modules' para o sistema gerar um novo arquivo `/etc/modules.conf' com todos os mdulos de `/etc/modutils' e substituir o anterior. 4. Aps carregar o mdulo de sua placa de rede, resta apenas configurar seus parmetros de rede para coloca-la em rede. Veja Section 15.4.2, `Atribuindo um endereo de rede a uma interface (ifconfig)'. 3.11.2. Configurando uma placa de SOM no Linux ---------------------------------------------A configurao de dispositivos de audio no Linux no uma coisa complicada, se resumindo na configurao de recursos de IRQ (caso a placa seja ISA), carregar o seu respectivo mdulo com seus parmetros e ajustar o mixer. Atualmente existem 2 padres de som no sistema Linux: OSS (Open Sound System) e ALSA (Advanced Linux Sound Architecture). O OSS o primeiro padro existente no sistema Linux e embutido por
-54-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

padro no kernel. O ALSA mais novo, suporta full duplex e outros recursos adicionais, alm de manter a compatibilidade com OSS. O ALSA um padro mais moderno e garante mais performance para a CPU da mquina, principalmente para a exibio de vdeos, etc. 3.11.2.1. Reservando os recursos de hardware para sua placa de som -----------------------------------------------------------------Caso esteja usando uma placa ISA jumpeada, jumperless ou Plug-and-Play, preciso selecionar que recursos de hardware sua placa est usando e como estes sero configurados. O padro a utilizao da IRQ 5, DMA1, DMA16, I/O 0x220, 0x330, 0x388 para PCM e MIDI. A configurao de uma placa Plug-and-Play descrita em Section 3.4.4, `Plug-and-Play' e de uma placa jumpeada em Section 3.4.1, `Jumpers'. Como referncia, veja a tabela padro de uso de interrupes em Section 3.3.1, `IRQ - Requisio de Interrupo'. 3.11.2.2. Configurando uma placa de som usando o padro OSS ----------------------------------------------------------O padro OSS o presente por padro desde que o suporte a som foi includo no kernel. Para configurar uma placa de som para usar este sistema de som, primeiro compile seu kernel com o suporte ao mdulo de sua placa de som. Caso seja uma placa ISA, voc provavelmente ter que habilitar a seo "Open Sound System" para ver as opes disponveis (entre elas, a Sound Blaster e compatveis). Uma olhada na ajuda de cada mdulo deve ajuda-lo a identificar quais placas cada opo do kernel suporta. Caso seu kernel seja o padro de uma distribuio `Linux', provavelmente ter o suporte a todas as placas de som possveis. Siga o passo a passo abaixo para configurar sua placa de som no sistema: 1. Primeiro descubra se sua placa de som ISA. Caso seja, verifique se os seus recursos esto alocados corretamente (veja Section 3.6, `Conflitos de hardware'). Caso seja PCI, AMR, execute o comando `lspci', procure pela linha "Multimedia" e veja o nome da placa. Voc tambm poder executar o comando `lshw' para descobrir qual placa voc possui (veja Section 3.5, `Listando as placas e outros hardwares em um computador') para detalhes. 2. Carregue o mdulo da placa de som com o comando `modprobe mdulo' (veja Section 16.8, `modprobe'). Na `Debian', voc pode executar o comando `modconf' para navegar visualmente entre os mdulos disponveis e carregar os mdulos necessrios. Algumas placas (principalmente ISA) requerem que seja especificado o recurso de hardware sejam passados para seu mdulo, ou simplesmente voc quer especificar isto para manter o uso de hardware sobre seu controle. Alguns dos parmetros mais usados em placas Sound Blaster so os seguintes: modprobe sb io=0x220 irq=5 dma=1 dma16=5 mpu_io=0x330 Para evitar ter que passar estes parmetros todas as vezes para o mdulo, voc poder coloca-los no arquivo `/etc/modules.conf' da seguinte forma: options sb io=0x220 irq=5 dma=1 dma16=5 mpu_io=0x330 Assim, quando der o comando `modprobe sb' ele ser carregado com as opes acima. Na distribuio `Debian', voc dever criar um
-55-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

3.

4.

arquivo chamado `/etc/modutils/sb' contendo a linha acima, depois execute o `update-modules' para "juntar" todos os arquivos do `/etc/modutils' e criar o `/etc/modules.conf'. Aps carregar o mdulo correto de sua placa de som, seu sistema de som dever estar funcionando. Se voc utiliza uma distribuio `Linux', os dispositivos de som como `/dev/audio', `/dev/dsp', `/dev/mixer' estaro criados e ento poder passar para o prximo passo. Caso no existam, entre no diretrio `/dev' e execute o comando `MAKEDEV audio'. O prximo passo consiste em instalar um programa para controle de volume, tonalidade e outros recursos de sua placa de som. O recomendado o `aumix' por ser simples, pequeno e funcional, e permitindo restaurar os valores dos nveis de volumes na inicializao (isso evita que tenha que ajustar o volume toda vez que iniciar o sistema). Caso o `aumix' aparea na tela, sua placa de som j est funcionando! Caso acesse o sistema como usurio, no se esquea de adicionar seu usurio ao grupo audio para ter permisso de usar os dispositivos de som: `adduser usuario audio' .

3.11.3. Configurando um gravador de CD no Linux ----------------------------------------------Configurar um gravador de CD no `Linux' no tem mistrios, apenas preciso que sejam seguidos passos para que a coisa funcione direito, pois sempre funciona. Se algo no funcionou, ou porque os passos no foram seguidos corretamente, algum problema no hardware, alguma falha no kernel especfica que afeta seu gravador, ou o autor deste guia deu mancada em algo (por favor, relate a falha) :-) O tipo mais complicado de gravador, se tratando de configurao, o IDE, pois seu funcionamento baseado na emulao SCSI. Para usar esta interface, ele precisa ser identificado como um dispositivo SCSI usando emulao SCSI do kernel, isto necessrio porque o mdulo padro ATAPI do kernel para unidades de CD (`ide-cd') no contm todos os comandos necessrios para permitir que uma unidade funcione como gravadora de CD. No `Windows' a coisa tambm funciona desta forma, a unidade emulada como SCSI para fazer a gravao, se voc no sabia disso, tenho certeza que esta gostando da forma como as coisas ficam claras quando se usa `Linux' :-) Caso seu gravador seja IDE, veja Section 3.11.3.1, `Configurando o suporte a um gravador IDE' caso seja um autntico gravador com barramento SCSI, v at Section 3.11.3.2, `Configurando o suporte a um gravador SCSI'. 3.11.3.1. Configurando o suporte a um gravador IDE -------------------------------------------------Para configurar seu gravador de CD IDE para ser usado no `Linux', siga os seguintes passos: 1. Tenha certeza que compilou o suporte as seguintes caractersticas no kernel: Em "ATA/IDE/MFM/RLL support" marque as opes: * Include IDE/ATAPI CDROM support * SCSI emulation support

-56-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Depois em "SCSI support" marque as opes: * SCSI support M SCSI CD-ROM Support M SCSI Generic Support As opes marcadas como "*" sero embutidas no kernel e as "M" como mdulos. Note que ambas as opes "IDE/ATAPI CDROM" e "SCSI Emulation" foram marcadas como embutidas. Isto faz com que o driver ATAPI tenha prioridade em cima do SCSI, mas vou explicar mais adiante como dizer para o kernel para carregar o suporte a SCSI para determinada unidade. Isto til quando temos mais de 1 unidade de CD IDE no sistema e queremos configurar somente o gravador para SCSI, pois alguns aplicativos antigos no se comunicam direito tanto com gravadores SCSI como emulados. Voc tambm pode marcar somente a opo "SCSI Emulation" para que sua(s) unidade(s) seja(m) automaticamente emulada(s) como SCSI. Caso tenha usado esta tcnica, v at a seo Section 3.11.3.3, `Testando o funcionamento'. 2. O prximo passo identificar o dispositivo de CD-Rom atual. Isto feito atravs do comando `dmesg'. Supondo que sua unidade de CD "hdc" (primeiro disco na segunda controladora IDE) e que compilou ambos o suporte a "IDE ATAPI" e "SCSI emulation" no kernel, adicione o argumento "hdc=ide-scsi" no `/etc/lilo.conf' ou no `grub': # Lilo vmlinuz=/vmlinuz append="hdc=ide-scsi" Isto diz para o kernel que a unidade "hdc" usar emulao "ide-scsi". Caso tenha outras unidades de CD no sistema, estas ainda utilizao ATAPI como protocolo de comunicao padro. Execute o `lilo' para gerar novamente o setor de inicializao com as modificaes e reinicie o computador. _OBS:_ Cuidado ao colocar um disco rgido IDE como `hdc'! A linha `hdc=ide-scsi' dever ser retirada, caso contrrio, seu disco rgido no ser detectado. Agora, siga at Section 3.11.3.3, `Testando o funcionamento'. 3.11.3.2. Configurando o suporte a um gravador SCSI --------------------------------------------------Caso tenha um autentico gravador SCSI, no ser preciso fazer qualquer configurao de emulao, a unidade estar pronta para ser usada, desde que seu suporte esteja no kernel. As seguintes opes do kernel so necessrias para funcionamento de gravadores SCSI: Depois * SCSI M SCSI M SCSI em "SCSI support" marque as opes: support CD-ROM Support Generic Support

Alm disso, deve ser adicionado o suporte EMBUTIDO no kernel a sua controladora SCSI. Se o seu disco rgido tambm SCSI, e seu CD est ligado na mesma controladora SCSI, ela j est funcionando e voc poder seguir para o passo Section 3.11.3.3, `Testando o funcionamento'. Caso contrrio carregue o suporte da sua placa adaptadora SCSI antes de seguir para este passo.
-57-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

3.11.3.3. Testando o funcionamento ---------------------------------Para testar se o seu gravador, instale o pacote `cdrecord' e execute o comando: `cdrecord -scanbus' para verificar se sua unidade de CD-ROM detectada. Voc dever ver uma linha como: scsibus0: 0,0,0 0,1,0 0,2,0

0) 'CREATIVE' 'CD-RW RWXXXX 1) * 2) *

' '1.00' Removable CD-ROM

O que significa que sua unidade foi reconhecida perfeitamente pelo sistema e j pode ser usada para gravao. 3.11.4. Configurando o gerenciamento de energia usando o APM -----------------------------------------------------------O APM (_Advanced Power Management_ - _Gerenciamento Avanado de Energia_) permite que sistemas gerenciem caractersticas relacionadas com o uso e consumo de energia do computador. Ele opera a nvel de BIOS e tenta reduzir o consumo de energia de vrias formas quando o sistema no estiver em uso (como reduzindo o clock da CPU, desligar o HD, desligar o monitor, etc.). O uso de advanced power management tambm permite que computadores com fonte de alimentao ATX sejam desligados automaticamente quando voc executa o comando `halt'. Caso sua mquina tenha suporte a _ACPI_, este dever ser usado como preferncia ao invs do APM por ter recursos mais sofisticados (veja Section 3.11.5, `Configurando o gerenciamento de energia usando ACPI'). Para ativar o suporte a APM no `Linux', compile seu kernel com o suporte embutido a APM e tambm a "Advanced Power Management" (seno sua mquina no desligar sozinha no halt). Caso deseje compilar como mdulo, basta depois carregar o mdulo `apm' adicionando no arquivo `/etc/modules'. Depois disso instale o daemon `apmd' para gerenciar as caractersticas deste recurso no sistema. Voc pode desativar o uso de APM de 3 formas: removendo seu suporte do kernel, passando o argumento `apm=off' (quando compilado estaticamente no kernel) ou removendo o nome do mdulo do arquivo `/etc/modules' (quando compilado como mdulo). Depois disso remova o daemon `apmd'. 3.11.5. Configurando o gerenciamento de energia usando ACPI ----------------------------------------------------------O ACPI (_Advanced Configuration and Power Interface_ - _Interface de Configurao e Gerenciamento de Energia Avanado_) uma camada de gerenciamento de energia que opera a nvel de sistema operacional. Apresenta os mesmos recursos que o APM, e outros como o desligamento da mquina por teclas especiais de teclado, controle de brilho e contraste de notebooks, suspend para RAM, suspend para disco, reduo de velocidade de CPU manualmente, monitoramento de perifricos,
-58-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

temperatura, hardwares, etc. Desta forma, o ACPI varia de sistema para sistema em questes relacionadas com suporte a recursos especiais, estes dados so armazenados em tabelas chamadas DSDT. O `Linux' inclui suporte a recursos ACPI genricos entre placas me, recursos especficos devem ser extrados diretamente da BIOS e disassemblados manualmente para a construo de um kernel com suporte especfico a tabela DSDT do hardware (no falarei das formas de se fazer disso aqui, somente do suporte genrico). recomendvel pelo menos o uso do kernel 2.4.21 para suporte a ACPI. Para compilar estaticamente, marque com `Y' a opo ACPI, depois marque os mdulos que voc quer que ele monitore: `button' (boto power), `fan' (ventoinhas), etc. Se compilou como mdulo, adicione o nome do mdulo `acpi' no arquivo `/etc/modules'. No h problema em compilar tambm o suporte a APM, pois no causar problemas com um kernel com ACPI tambm compilado. Caso no saiba quais mdulos ACPI seu sistema aceita, marque o suporte a todos e carregue-os. Aps isto, entre no diretrio `/proc/acpi' e de um `ls' entrando nos diretrios e vendo se existem arquivos dentro deles. Remova o mdulo correspondente daqueles que no tiver contedo. Aps isto, instale o daemon `acpid' e configure-o para monitorar algumas caractersticas do seu sistema. Por padro o `acpid' monitora o boto POWER, assim se voc pressionar o power, seu sistema entrar automaticamente em run-level 0, fechando todos os processos e desligando sua mquina. O suporte a ACPI pode ser desativado de 3 formas: Removendo seu suporte do kernel, passando o argumento `acpi=off' ao kernel (caso esteja compilado estaticamente) ou removendo o mdulo de `/etc/modules' (caso tenha compilado como mdulo. Aps isto, remova o daemon `acpid' do seu sistema. 3.11.6. Ativando WakeUP on Lan -----------------------------Algumas placas me ATX possuem suporte a este interessante recurso, que permite sua mquina ser ligada atravs de uma rede. Isto feito enviando-se uma seqncia especial de pacotes diretamente para o MAC (endereo fsico) da placa de rede usando um programa especial. Para usar este recurso, seu sistema dever ter as seguintes caractersticas: * Placa me ATX * Fonte de alimentao ATX compatvel com o padro 2.0, com fornecimento de pelo menos 720ma de corrente na sada +3v. * Placa de rede com suporte a WakeUP-on-Lan (WOL), voc poder confirmar isto vendo um conector branco de 3 terminais instalado na placa que o local onde o cabo wake-up conectado. * Suporte na BIOS tambm dever ter a opo para WakeUP-on-Lan. Com todos esses tens existentes, instale em uma mquina da rede o pacote `etherwake'. Depois disso, pegue o MAC address a placa de rede da mquina que tem o wakeup on lan e na mquina da rede onde instalou
-59-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

o pacote execute o seguinte comando: ether-wake AA:BB:CC:DD:EE:FF Onde `AA:BB:CC:DD:EE:FF' o endereo MAC da placa de rede. A mquina dever ligar e realizar o procedimento padro de POST normalmente. Algumas das situaes onde o WOL no funciona quando sua rede controlada por Switches (devido a natureza de funcionamento deste equipamentos) ou caso esteja atrs de um roteador que no faz proxy arp.

-------------------------------------------------------------------------------

4. Para quem esta migrando (ou pensando em migrar) do DOS/Windows para o Linux ---------------------------------------------------------------------------Este captulo explica as diferenas e particularidades do sistema `GNU/Linux' comparado ao `DOS/Windows' e uma lista de equivalncia entre comandos e programas `DOS' e `GNU/Linux', que pode servir de comparao para que o usurio possa conhecer e utilizar os comandos/programas `GNU/Linux' que tem a mesma funo no ambiente `DOS/Windows'.

4.1. Quais as diferenas iniciais --------------------------------* Quando entrar pela primeira vez no `GNU/Linux' (ou qualquer outro `UNIX', a primeira coisa que ver ser a palavra `login:' escrita na tela. A sua aventura comea aqui, voc deve ser uma pessoa cadastrada no sistema (ter uma conta) para que poder entrar. No `login' voc digita seu nome (por exemplo, gleydson) e pressiona Enter. Agora ser lhe pedida a senha, repare que a senha no mostrada enquanto digitada, isto serve de segurana e para enganar pessoas que esto prximas de voc "tocando" algumas teclas a mais enquanto digita a senha e fazendo-as pensar que voc usa uma grande senha ;-) (com os asteriscos aparecendo isto no seria possvel). Caso cometa erros durante a digitao da senha, basta pressionar a tecla `Back Space' para apagar o ltimo caracter digitado e terminar a entrada da senha. Pressione Enter, se tudo ocorrer bem voc estar dentro do sistema e ser presenteado com o smbolo # (caso tenha entrado como usurio `root') ou $ (caso tenha entrado como um usurio normal). Existe um mecanismo de segurana que te alerta sobre eventuais tentativas de entrada no sistema por intrusos usando seu `login', faa um teste: entre com seu login e digite a senha errada, na segunda vez entre com a senha correta no sistema. Na penltima
-60-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

linha das mensagens aparece uma mensagem "1 failure since last login", o que quer dizer "1 falha desde o ltimo login". Isto significa que algum tentou entrar 1 vez com seu nome e senha no sistema, sem sucesso. * A conta `root' no tem restries de acesso ao sistema e pode fazer tudo o que quiser, equivalente ao usurio normal do `DOS' e `Windows'. Use a conta `root' somente para manutenes no sistema e instalao de programas, qualquer movimento errado pode comprometer todo o sistema. Para detalhes veja Section 13.6, `A conta root'. * No `GNU/Linux' os diretrio so identificados por uma `/' e no por uma `\' como acontece no `DOS'. Para entrar no diretrio `/bin', voc deve usar `cd /bin'. * Os comandos so `case-sensitive', o que significa que ele diferencia as letras maisculas de minsculas em arquivos e diretrios. O comando `ls' e `LS' so completamente diferentes. * A multitarefa lhe permite usar vrios programas simultaneamente (no pense que multitarefa somente funciona em ambientes grficos, pois isto errado!). Para detalhes veja Chapter 7, `Execuo de programas'. * Os dispositivos tambm so identificados e uma forma diferente que no `DOS' por exemplo: DOS/Windows ------------A: B: C: LPT1 LPT2 LPT3 COM1 COM2 COM3 COM4 Linux --------------/dev/fd0 /dev/fd1 /dev/hda1 /dev/lp0 /dev/lp1 /dev/lp2 /dev/ttyS0 /dev/ttyS1 /dev/ttyS2 /dev/ttyS3

* Os recursos multiusurio lhe permite acessar o sistema de qualquer lugar sem instalar nenhum driver, ou programa gigante, apenas atravs de conexes TCP/IP, como a Internet. Tambm possvel acessar o sistema localmente com vrios usurios (cada um executando tarefas completamente independente dos outros) atravs dos Terminais Virtuais. Faa um teste: pressione ao mesmo tempo a tecla `ALT' e `F2' e voc ser levado para o segundo Terminal Virtual, pressione novamente `ALT' e `F1' para retornar ao anterior. * Para reiniciar o computador, voc pode pressionar CTRL+ALT+DEL (como usurio `root') ou digitar `shutdown -r now'. Veja Section 1.17, `Reiniciando o computador' para detalhes . * Para desligar o computador, digite `shutdown -h now' e espere o aparecimento da mensagem `Power Down' para apertar o boto
-61-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

LIGA/DESLIGA do computador. computador' para detalhes.

Veja Section 1.16, `Desligando o

4.2. Comandos equivalentes entre DOS e Linux -------------------------------------------Esta seo contm os comandos equivalentes entre estes dois sistemas e a avaliao entre ambos. Grande parte dos comandos podem ser usados da mesma forma que no `DOS', mas os comandos `Linux' possuem avanos para utilizao neste ambiente multiusurio/multitarefa. O objetivo desta seo permitir as pessoas com experincia em `DOS' fazer rapidamente no `GNU/Linux' as tarefas que fazem no `DOS'. A primeira coluna tem o nome do comando no `DOS', a segunda o comando que possui a mesma funo no `GNU/Linux' e na terceira coluna as diferenas. DOS -------cls dir Linux Diferenas ------------ -------------------------------------------------clear Sem diferenas. ls -la A listagem no Linux possui mais campos (as permisses de acesso) e o total de espao ocupado no diretrio e livre no disco deve ser visto separadamente usando o comando du e df. Permite tambm listar o contedo de diversos diretrios com um s comando (ls /bin /sbin /...). ls -lR Sem diferenas. ls -tr Sem diferenas. cd Poucas diferenas. cd sem parmetros retorna ao diretrio de usurio e tambm permite o uso de "cd -" para retornar ao diretrio anteriormente acessado. rm Poucas diferenas. O rm do Linux permite especificar diversos arquivos que sero apagados (rm arquivo1 arquivo2 arquivo3). Para ser mostrados os arquivos apagados, deve-se especificar o parmetro "-v" ao comando, e "-i" para pedir a confirmao ao apagar arquivos. mkdir Uma s diferena: No Linux permite que vrios diretrios sejam criados de uma s vez (mkdir /tmp/a /tmp/b...). cp Poucas diferenas. Para ser mostrados os arquivos enquanto esto sendo copiados, deve-se usar a opo "-v", e para que ele pergunte se deseja substituir um arquivo j existente, deve-se usar a opo "-i". echo Sem diferenas. path No Linux deve ser usado ":" para separar os diretrios e usar o comando "export PATH=caminho1:/caminho2:/caminho3:" para definir a varivel de ambiente PATH. O path atual pode ser visualizado atravs do comando "echo $PATH". mv Poucas diferenas. No Linux no possvel renomear vrios arquivos de uma s vez (como "ren *.txt *.bak"). necessrio usar
-62-

dir/s dir/od cd

del

md

copy

echo path

ren

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

type ver date time attrib

scandisk doskey edit

fdisk

format

help interlnk

intersvr keyb

label mem more

move

scan

backup

print

um shell script para fazer isto. Sem diferenas. Poucas diferenas (o uname tem algumas opes a mais). date No Linux mostra/modifica a Data e Hora do sistema. date No Linux mostra/modifica a Data e Hora do sistema. chmod O chmod possui mais opes por tratar as permisses de acesso de leitura, gravao e execuo para donos, grupos e outros usurios. fsck.ext2 O fsck mais rpido e extensivo na checagem. ----A edio de teclas feita automaticamente pelo bash. vi, ae, O edit mais fcil de usar, mas usurio emacs experientes apreciaro os recursos do vi ou o emacs (programado em lisp). fdisk, cfdisk Os particionadores do Linux trabalham com praticamente todos os tipos de parties de diversos sistemas de arquivos diferentes. mkfs.ext2 Poucas diferenas, precisa apenas que seja especificado o dispositivo a ser formatado como "/dev/fd0" ou "/dev/hda10" (o tipo de identificao usada no Linux), ao invs de "A:" ou "C:". man, info Sem diferenas. plip O plip do Linux permite que sejam montadas redes reais a partir de uma conexo via Cabo Paralelo ou Serial. A mquina pode fazer tudo o que poderia fazer conectada em uma rede (na realidade uma rede e usa o TCP/IP como protocolo) inclusive navegar na Internet, enviar e-mails, irc, etc. plip Mesmo que o acima. loadkeys Sem diferenas (somente que a posio das teclas do teclado pode ser editada. Desnecessrio para a maioria dos usurios). e2label necessrio especificar a partio que ter o nome modificado. cat /proc/meminfo Mostra detalhes sobre a quantidade de dados top em buffers, cache e memria virtual (disco). more, less O more equivalente a ambos os sistemas, mas o less permite que sejam usadas as setas para cima e para baixo, o que torna a leitura do texto muito mais agradvel. mv Poucas diferenas. Para ser mostrados os arquivos enquanto esto sendo movidos, deve-se usar a opo "-v", e para que ele pergunte se deseja substituir um arquivo j existente deve-se usar a opo "-i". ----No existem vrus no Linux devido as restries do usurio durante execuo de programas. tar O tar permite o uso de compactao (atravs do parmetro -z) e tem um melhor esquema de recuperao de arquivos corrompidos que j segue evoluindo h 30 anos em sistemas UNIX. lpr O lpr mais rpido e permite at mesmo impresses de grficos ou arquivos compactados cat uname -a
-63-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

vol xcopy

e2label cp -R

diretamente caso seja usado o programa magicfilter. o programa de Spool de impressoras usados no sistema Linux/Unix. Sem diferenas. Pouca diferena, requer que seja usado a opo "-v" para mostrar os arquivos que esto sendo copiados e "-i" para pedir confirmao de substituio de arquivos.

4.2.1. Arquivos de configurao ------------------------------Os arquivos `config.sys' e `autoexec.bat' so equivalentes aos arquivos do diretrio `/etc' especialmente o `/etc/inittab' e arquivos dentro do diretrio /etc/init.d .

4.3. Usando a sintaxe de comandos DOS no Linux ---------------------------------------------Voc pode usar os comandos do pacote `mtools' para simular os comandos usados pelo `DOS' no `GNU/Linux', a diferena bsica que eles tero a letra `m' no inicio do nome. Os seguintes comandos so suportados: * `mattrib' - Ajusta modifica atributos de arquivos * `mcat' - Mostra os dados da unidade de disquete em formato RAW * `mcd' - Entra em diretrios * `mcopy' - Copia arquivos/diretrios * `mdel' - Exclui arquivos * `mdeltree' - Exclui arquivos, diretrios e sub-diretrios * `mdir' - Lista arquivos e diretrios * `mdu' - Mostra o espao ocupado pelo diretrio do DOS * `mformat' - Formatador de discos * `minfo' - Mostra detalhes sobre a unidade de disquetes * `mlabel' - Cria um volume para unidades DOS * `mmd' - Cria diretrios * `mmount' - Monta discos DOS * `mmove' - Move ou renomeia arquivos/subdiretrios * `mpartition' - Particiona um disco para ser usado no DOS * `mrd' - Remove um diretrio * `mren' - Renomeia arquivos * `mtype' - Visualiza o contedo de arquivos (equivalente ao cat) * `mtoolstest' - Exibe a configurao atual do `mtools' * `mshowfat' - Mostra a FAT da unidade * `mbadblocks' - Procura por setores defeituosos na unidade * `mzip' - Altera modo de proteo e ejeta discos em unidades Jaz/ZIP * `mkmanifest' - Cria um shell script para restaurar nomes extensos usados no UNIX * `mcheck' - Verifica arquivos na unidade

4.4. Programas equivalentes entre Windows/DOS e o Linux ------------------------------------------------------Esta seo contm programas equivalentes para quem est vindo do `DOS' e `Windows' e no sabe o que usar no `GNU/Linux'. Esta seo tambm tem por objetivo permitir ao usurio que ainda no usa `GNU/Linux'
-64-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

decidir se a passagem vale a pena vendo se o sistema tem os programas que precisa. Note que esta listagem mostra os programas equivalentes entre o `DOS/Windows' e o `GNU/Linux' cabendo a voc a deciso final de migrar ou no. Lembrando que possvel usar o `Windows', `OS/2', `DOS', `OS/2' e `GNU/Linux' no mesmo disco rgido sem qualquer tipo de conflito. A listagem abaixo pode estar incompleta, se encontrar algum programa que no esteja listado aqui, por favor entre em contato pelo E-Mail <gleydson@guiafoca.org> para inclui-lo na listagem. DOS/Windows ----------MS Word Linux Diferenas ---------------------------------------Open Office, O Open Office possui todos os Corel Word Perfect recursos do Word alm de ter a interface grfica igual, menus e teclas de atalho idnticas ao Word, o que facilita a migrao. Tambm trabalha com arquivos no formato Word97/2000 e no vulnervel a vrus de macro. distribudo gratuitamente e no requer pagamento de licena podendo ser instalado em quantos computadores voc quiser (tanto domsticos como de empresas). Open Office Mesmos pontos do acima e tambm abre arquivos Excel97/2000. Open Office Mesmos pontos do acima. SQL, Oracle, etc Existem diversas ferramentas de conceito para bancos de dados corporativos no Linux. Todos produtos compatveis com outras plataformas. Pine, Mutt, Centenas de programas de E-Mail sylpheed, etc tanto em modo texto como em modo grfico. Instale, avalie e escolha. Netscape, Arena, Os trs primeiros para modo Mozilla, lynx. grfico e o lynx opera em modo texto. LICQ, GAIM, SIM Muito prtico e fcil de operar. Possibilita a mudana completa da aparncia do programa atravs de Skins. A organizao dos menus deste programa outro ponto de destaque. AMSN, GAIM Permite conversar diretamente com usurios do Microsoft MSN. The Gimp Fcil de usar, possui muitos scripts que permitem a criao rpida e fcil de qualquer tipo de efeito profissional pelo usurio mais leigo. Acompanha centenas de efeitos especiais e um belo manual em html com muitas
-65-

MS Excel MS PowerPoint MS Access

MS Outlook

MS Internet Explorer

ICQ

MSN Photo Shop

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

fotos (aproximadamente 20MB) que mostra o que possvel se fazer com ele. Corel Photo Paint Corel Photo Paint Corel Photo-Paint para Linux. winamp xmms Possui todos os recursos do programa para Windows alm de filtros que permite acrescentar efeitos digitais da msica (em tempo real), eco, etc. media player mplayer,playmidi Programas para execuo de xwave, arquivos de msica e videos multimdia. Existem outras alternativas, a escolha depende de seu gosto e da sofisticao do programa. Agente de Sistema cron Pouca diferena. O cron da mais liberdade na programao de tarefas a serem executadas pelo Linux. Mixer aumix, cam Sem diferenas. Bate-Papo talk, ytalk O talk e o ytalk permite a conversa de dois usurios no s atravs de uma rede local, mas de qualquer parte do planeta, pois usa o protocolo tcp/ip para comunicao. Muito til e fcil de usar. MIRC Bitchx, xchat Clientes IRC para Linux IIS, Pers. Web Server Apache O apache o servidor WEB mais usado no mundo (algo em torno de 75% das empresas), muito rpido e flexvel de se configurar. Exchange, NT Mail Sendmail, Postfix, 72% da base de servidores de Exim, Qmail emails no mundo atualmente roda em software livre. Os mais recomendados so o Postfix e o qmail, devido a segurana, velocidade e integridade de mensagem Wingate, MS Proxy Squid, Apache, A migrao de um servidor proxy ip masquerade, para Linux requer o uso de nat, diald, vrios programas separados para exim, que se tenha um resultado profissional. Isto pode parecer incomodo no comeo, mas voc logo perceber que a diviso de servios entre programas mais produtivo. Quando desejar substituir um deles, o funcionamento dos outros no sero afetados. No vou entrar em detalhes sobre os programas citados ao lado, mas o squid um servidor proxy Web (HTTP e HTTPS) completo e tambm apresenta um excelente servio FTP. Possui outros mdulos como dns, ping,
-66-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

MS Frontpage

MS Winsock

ViruScan, TBAV, F-PROT, CPAV.

restries de acesso, limites de tamanho de arquivos, cache, etc. Netscape Composer Sem comentrios... todas so e muitas outras ferramentas para a gerao ferramentas para de grandes Web Sites. O wdm, gerao de contedo por exemplo, usado na gerao WEB (como zope, do site da distribuio Debian php3, php4, wdm, (http://www.debian.org) em 27 htdig) idiomas diferentes. Sem equivalente O Linux tem suporte nativo a tcp/ip desde o comeo de sua existncia e no precisa de nenhuma camada de comunicao entre ele e a Internet. A performance aproximadamente 10% maior em conexes Internet via fax-modem e outras redes tcp/ip. ----No existem vrus no Linux devido as restries ao usurio durante a execuo de programas.

-------------------------------------------------------------------------------

5. Discos e Parties --------------------Este captulo traz explicaes de como manipular discos rgidos e parties no sistema `GNU/Linux' e como acessar seus discos de CD-ROM e parties `DOS', `Windows 95/98' no `GNU/Linux'. Tambm ser ensinado como utilizar o programa `mkfs.ext2' para criar um sistema de arquivos `EXT2' (formatar o disco) e a ferramenta `mkswap' (para criar uma partio ou arquivo de memria virtual).

5.1. Parties -------------So divises existentes no disco rgido que marcam onde comea onde termina um sistema de arquivos. Por causa destas divises, ns podemos usar mais de um sistema operacional no mesmo computador (como o `GNU/Linux', `Windows' e `DOS'), ou dividir o disco rgido em uma ou mais partes para ser usado por um nico sistema operacional. Para gravar os dados, o disco rgido deve ser (usando o fdisk), escolher o tipo da partio Swap_, etc) e depois aquela partio deve ser `mkfs.ext2' (veja Section 5.3, `Partio EXT2 primeiro particionado (_Linux Native_, _Linux formatada com o (Linux Native)').

Aps criada e formatada, a partio ser identificada como um dispositivo no diretrio `/dev' (veja Section 5.12, `Identificao de discos e parties em sistemas Linux') . e dever ser montada (Section 5.13, `Montando (acessando) uma partio de disco') para permitir seu uso no sistema.

-67-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Uma partio de disco no interfere em outras parties existentes, por este motivo possvel usar o `Windows', `GNU/Linux' e qualquer outro sistema operacional no mesmo disco. Para escolher qual deles ser inicializado, veja Chapter 6, `Gerenciadores de Partida (boot loaders)'. Para particionar (dividir) o disco rgido em uma ou mais partes necessrio o uso de um programa de particionamento. Os programas mais conhecidos para particionamento de discos no `GNU/Linux' so `fdisk', `cfdisk' e o `Disk Druid'. Lembre-se: * Quando se apaga uma partio, voc estar apagando TODOS os arquivos existentes nela! * A partio do tipo _Linux Native_ (Tipo 83) a usada para armazenar arquivos no `GNU/Linux'. Para detalhes veja Section 5.3, `Partio EXT2 (Linux Native)'. * A partio do tipo _Linux Swap_ (Tipo 82) usada como memria virtual. Para detalhes veja Section 5.7, `Partio Linux Swap (Memria Virtual)'. * Em sistemas novos, comum encontrar o `Windows' instalado em uma partio que consome TODO o espao do disco rgido. Uma soluo para instalar o `GNU/Linux' apagar a partio `Windows' e criar trs com tamanhos menores (uma para o `Windows', uma para o `GNU/Linux' e outra para a _Memria Virtual do Linux (SWAP)_. Ou criar apenas 2 se voc no quiser mais saber mais do `Windows' ;-) A outra usar o programa `FIPS' para diminuir o tamanho da partio `Windows' (usando o espao livre existente) e criar as 2 parties requeridas pelo `GNU/Linux' no espao restante, sem apagar o `Windows'. Esta tcnica tambm chamada de `Reparticionamento no destrutivo' (e o outro obviamente `Reparticionamento destrutivo'). Caso decida usar o `FIPS', pegue a verso 2.0 ou superior do programa, pois funciona nativamente com sistema de arquivos `FAT32' (voc o encontra no site de sua distribuio `GNU/Linux'). Para mais detalhes sobre discos, parties ou como particionar seu disco, veja algum bom documento sobre particionamento (como a pgina de manual e documentao do `fdisk', `cfdisk' ou `Disk Druid').

5.2. Sistema de Arquivos ----------------------- criado durante a "formatao" da partio de disco (quando se usa o comando `mkfs.ext2'). Aps a formatao toda a estrutura para leitura/gravao de arquivos e diretrios pelo sistema operacional estar pronta para ser usada. Normalmente este passo feito durante a instalao de sua distribuio `GNU/Linux'. Cada sistema de arquivos tem uma caracterstica em particular mas seu propsito o mesmo: Oferecer ao sistema operacional a estrutura necessria para ler/gravar os arquivos/diretrios. Entre os sistemas de arquivos existentes posso citar: * `Ext2' - Usado em parties _Linux Nativas_ para o armazenamento
-68-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

* * * *

de arquivos. identificado pelo cdigo 83. Seu tamanho deve ser o suficiente para acomodar todo os arquivos e programas que deseja instalar no `GNU/Linux' (voc encontra isto no manual de sua distribuio). Para detalhes veja Section 5.3, `Partio EXT2 (Linux Native)'. `Ext3' - Este sistema de arquivos possui melhorias em relao ao ext2, como destaque o recurso de jornaling. Ele tambm identificado pelo tipo 83 e totalmente compatvel com o ext2 em estrutura. O journal mantm um log de todas as operaes no sistema de arquivos, caso acontea uma queda de energia eltrica (ou qualquer outra anormalidade que interrompa o funcionamento do sistema), o `fsck' verifica o sistema de arquivos no ponto em que estava quando houve a interrupo, evitando a demora para checar todo um sistema de arquivos (que pode levar minutos em sistemas de arquivos muito grandes). Para detalhes veja Section 5.5, `Partio EXT3 (Linux Native)'. `Swap' - Usado em parties _Linux Swap_ para oferecer memria virtual ao sistema. Note que altamente recomendado o uso de uma partio Swap no sistema (principalmente se voc tiver menos que 16MB de memria RAM). Este tipo de partio identificado pelo cdigo 82. Para detalhes veja Section 5.7, `Partio Linux Swap (Memria Virtual)'. `proc' - Sistema de arquivos do kernel (veja Section 5.8, `O sistema de arquivos `/proc''). `FAT12' - Usado em disquetes no `DOS' `FAT16' - Usado no `DOS' e oferece suporte at discos de 2GB `FAT32' - Tambm usado no `DOS' e oferece suporte a discos de at 2 Terabytes

5.3. Partio EXT2 (Linux Native) --------------------------------A partio `EXT2' o tipo usado para criar o sistema de arquivos `Linux Native' usado para armazenar o sistema de arquivos `EXT2' (aps a formatao) e permitir o armazenamento de dados. Para detalhes de como criar uma partio EXT2 veja Section 5.3.1, `Criando um sistema de arquivos EXT2 em uma partio'. Este tipo de partio normalmente identificado pelo cdigo 83 nos programas de particionamento de disco. Note que tambm possvel criar um sistema de arquivos `EXT2' em um arquivo (ao invs de uma partio) que poder ser montado e acessado normalmente pelo sistema de arquivos (veja Section 5.3.2, `Criando um sistema de arquivos EXT2 em um arquivo'. Logo que foi inventado, o `GNU/Linux' utilizava o sistema de arquivos _Minix_ (e conseqentemente uma partio _Minix_) para o armazenamento de arquivos. Com a evoluo do desenvolvimento, foi criado o padro _EXT_ (_Extended Filesystem_) e logo evoluiu para o _EXT2_ (_Second Extended Filesystem_) que o usado hoje em dia. Voc deve escolher este tipo de partio para armazenar seus arquivos, o padro atualmente, o mais rpido, no se fragmenta to facilmente pois permite a localizao do melhor lugar onde o arquivo se encaixa no disco, etc. Isto til para grandes ambientes multiusurio onde vrias pessoas gravam/apagam arquivos o tempo todo.
-69-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

5.3.1. Criando um sistema de arquivos EXT2 em uma partio ---------------------------------------------------------O utilitrio usado para formatar uma partio `EXT2' o `mkfs.ext2'. Aps terminar este passo, seu sistema de arquivos `EXT2' estar pronto para ser usado. Aps particionar seu disco rgido e criar uma (ou vrias) parties `EXT2', use o comando: `mkfs.ext2 /dev/hda?' Onde a "?" em `hda?' significa o nmero da partio que ser formatada. A identificao da partio mostrada durante o particionamento do disco, anote se for o caso. `hda' o primeiro disco rgido IDE, `hdb' o segundo disco rgido IDE. Discos SCSI so identificados por `sda?', `sdb?', etc. Para detalhes sobre a identificao de discos, veja Section 5.12, `Identificao de discos e parties em sistemas Linux'. Algumas opes so teis ao `mkfs.ext2': * `-c' Procura blocos danificados na partio antes de criar o sistema de arquivos. * `-L NOME' Coloca um nome (label) no sistema de arquivos. * `-b NUM' Define o tamanho do bloco, em bytes. * `-m NUM' Define a porcentagem de espao em disco reservada para manuteno (por padro reservado para o root, mas isto altervel). Agora para acessar a partio dever ser usado o comando: `mount /dev/hda? /mnt -t ext2' Para mais detalhes veja Section 5.13, `Montando (acessando) uma partio de disco'. Note que possvel criar um sistema de arquivos no disco rgido sem criar uma partio usando `/dev/hda', `/dev/hdb', etc. _EVITE FAZER ISSO!_ Como no estar criando uma partio, o disco estar divido de maneira incorreta, voc no poder apagar o sistema de arquivos completamente do disco caso precise (lembre-se que voc no criou uma partio), e a partio possui uma assinatura apropriada que identifica o sistema de arquivos. O espao padro reservado na partio para o usurio root de 5%. Em sistemas com parties maiores que 3Gb, isso pode representar uma grande quantidade de espao em disco no utilizada por outros usurios. Veja a opo `-m' sobre como fazer esta modificao. Caso j tenha criado a partio, isto pode ser feito no `tune2fs' com a opo `-m'. 5.3.2. Criando um sistema de arquivos EXT2 em um arquivo --------------------------------------------------------70-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

possvel criar um sistema de arquivos EXT2 em um arquivo que poder ser montado e acessado normalmente como se fosse uma partio normal. Isto possvel por causa do recurso `loop' oferecido pelo kernel do `GNU/Linux'. Os dispositivos de `loop' esto disponveis no diretrio `/dev' com o nome `loop?' (normalmente esto disponveis 8 dispositivos de `loop'). Isto possvel usando o comando `dd' e o `mkfs.ext2'. Veja passo a passo como criar o sistema de arquivos `EXT2' em um arquivo: 1. Use o comando `dd if=/dev/zero of=/tmp/arquivo-ext2 bs=1024 count=10000' para criar um arquivo `arquivo-ext2' vazio de 10Mb de tamanho em `/tmp'. Voc pode modificar os parmetros de `of' para escolher onde o arquivo ser criado, o tamanho do arquivo poder ser modificado atravs de `count' Formate o arquivo com `mkfs.ext2 /tmp/arquivo-ext2'. Ele primeiro dir que o arquivo `arquivo-ext2' no um dispositivo de bloco especial (uma partio de disco) e perguntar se deve continuar, responda com `y'. O sistema de arquivos EXT2 ser criado em `/tmp/arquivo-ext2' e estar pronto para ser usado. 3. Monte o arquivo `arquivo-ext2' com o comando: `mount /tmp/arquivo-ext2 /mnt -o loop=/dev/loop1'. Note que foi usado o parmetro `-o loop' para dizer ao comando `mount' para usar os recursos de `loop do kernel' para montar o sistema de arquivos. Confira se o sistema de arquivos `EXT2' em `arquivo-ext2' foi realmente montado no sistema de arquivos digitando `df -T'. Para detalhes, veja Section 10.3, `df'.

2.

4.

Pronto! o que voc gravar para `/mnt' ser gravado dentro do arquivo `/tmp/arquivo-ext2'. Como foi criado um sistema de arquivos `EXT2' em `arquivo-ext2', voc poder usar todos os recursos da partio `EXT2' normal, como permisses de arquivos e diretrios, links simblicos, etc. O uso da opo `loop=/dev/loop1' permite que o dispositivo `/dev/loop1' seja associado ao arquivo `/arquivo-ext2' e assim permitir sua montagem e uso no sistema. * Voc poder usar apenas `-o loop' com o comando `mount', assim o kernel gerenciar automaticamente os dispositivos de `loop'. * Caso faa isto manualmente, lembre-se de usar dispositivos `/dev/loop?' diferentes para cada arquivo que montar no sistema. Pois cada um faz referncia a um nico arquivo.

5.4. Journaling --------------O sistema de journaling grava qualquer operao que ser feita no disco em uma rea especial chamada "journal", assim se acontecer algum problema durante a operao de disco, ele pode voltar ao estado
-71-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

anterior do arquivo, ou finalizar a operao. Desta forma, o journal acrescenta ao sistema de arquivos o suporte a alta disponibilidade e maior tolerncia a falhas. Aps uma falha de energia, por exemplo, o journal analisado durante a montagem do sistema de arquivos e todas as operaes que estavam sendo feitas no disco so verificadas. Dependendo do estado da operao, elas podem ser desfeitas ou finalizadas. O retorno do servidor praticamente imediato (sem precisar a enorme espera da execuo do fsck em parties maiores que 10Gb), garantindo o rpido retorno dos servios da mquina. Outra situao que pode ser evitada com inconsistncias no sistema de arquivos do servidor aps a situao acima, fazendo o servidor ficar em estado 'single user' e esperando pela interveno do administrador. Este captulo do guia explica a utilizao de journaling usando o sistema de arquivos _ext3_ (veja Section 5.5, `Partio EXT3 (Linux Native)' para detalhes).

5.5. Partio EXT3 (Linux Native) --------------------------------O sistema de arquivos _ext3_ faz parte da nova gerao extended file system do `Linux', sendo que seu maior benefcio o suporte a journaling. O uso deste sistema de arquivos comparado ao _ext2_, na maioria dos casos, melhora o desempenho do sistema de arquivos atravs da gravao seqencial dos dados na rea de metadados e acesso mhash a sua rvore de diretrios. A estrutura da partio `ext3' semelhante a `ext2', o journaling feito em um arquivo chamado `.journal' que fica oculto pelo cdigo _ext3_ na partio (desta forma ele no poder ser apagado, comprometendo o funcionamento do sistema). A estrutura idntica da partio _ext3_ com a _ext2_ torna mais fcil a manuteno do sistema, j que todas as ferramentas para recuperao _ext2_ funcionaro sem problemas. 5.5.1. Criando um sistema de arquivos EXT3 em uma partio ---------------------------------------------------------Para criar uma partio _ext3_, utilize o comando `mkfs.ext3' ou o `mkfs.ext2' junto com a opo _-j_. As opes usadas pelo `mkfs.ext3' so idnticas a do `mkfs.ext2' (documentado em Section 5.3.1, `Criando um sistema de arquivos EXT2 em uma partio'). A nica vantagem desta ferramenta comparada ao `mkfs.ext2' que a opo _-j_ automaticamente adicionada a linha de comando para criar um sistema de arquivos com journal. Se voc daqueles que querem ter um controle maior sobre o tamanho do arquivo de journal, use a opo _-J [tam]_ (onde tamanho o tamanho em Megabytes). Quando uma partio _ext3_ criada, o arquivo `.journal' criado no raz da partio, sendo usado para gravar os metadados das transaes de journaling. A estrutura da partio ext2 no difere em nada da ext3, a no ser este arquivo e a opo "has_journal" que passada a
-72-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

partio. Por exemplo, para criar uma partio ext3 em `/dev/hda1': mkfs.ext3 /dev/hda1 ou mkfs.ext2 -j /dev/hda1 Basta agora montar a partio com o comando `mount /dev/hda1 /teste -t ext3' (para montar a partio em `/teste'. Aps isto, modifique o `/etc/fstab' para montar a partio como _ext3_ quando o `Linux' for iniciado. Para mais detalhes veja Section 5.13, `Montando (acessando) uma partio de disco'. ). Caso o suporte a _ext3_ tenha sido compilado no kernel, ele tentar detectar e montar a partio como _ext3_, caso contrrio, ele usar _ext2_. Sua partio agora est montada como _ext3_, para conferir digite: `df -T'. _OBS:_ Quando criar um sistema de arquivos _ext3_ em uma partio raz (`/'), tenha certeza de incluir o suporte a _ext3_ embutido no kernel, caso contrrio a partio ser montada como _ext2_. 5.5.2. Criando um sistema de arquivos EXT3 em um arquivo -------------------------------------------------------As instrues para criar um sistema de arquivos `ext3' em um arquivo no difere muito das instrues de Section 5.3.2, `Criando um sistema de arquivos EXT2 em um arquivo', apenas utilize a opo _-j_ ou _-J [tamanho_em_mb]_ (como explicado em Section 5.5.1, `Criando um sistema de arquivos EXT3 em uma partio'). 5.5.3. Fazendo a converso do sistema de arquivos EXT2 para EXT3 ---------------------------------------------------------------Se voc j possui um uma partio _ext2_ e deseja converte-la para _ext3_ isto poder ser feito facilmente, de forma segura (sem qualquer risco de perda de dados) e voc poder voltar para o sistema ext2 caso deseje (veja Section 5.5.4, `Convertendo de EXT3 para EXT2'). Primeiro, execute o comando `tune2fs' na partio que deseja converter com a opo _-j_ ou _-J [tamanho_journal]_ para adicionar o suporte a Journaling na partio. Este comando poder ser executado com segurana em uma partio _ext2_ montada, aps converter remontar a partio usando os comandos `umount /particao' e `mount /particao'. Aps a converso para _ext3_ desnecessria a checagem peridica do sistema de arquivos (que por padro aps 20 montagens e a cada 30 dias). Voc pode desativar a checagem aps o nmero mximo de montagens com a opo _-c [num_vezes]_, e o nmero de dias mximos antes de verificar novamente com a opo _-i [num_dias]_ (o uso de 0 desativa). Por exemplo: tune2fs -c 0 -i 90 /dev/hda2

-73-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Desativa a checagem aps nmero mximo de montagens (`-c 0') e diz para a partio ser verificada a cada 90 dias (`-i 90'). O ltimo passo modificar o `/etc/fstab' para que a partio seja montada como _ext3_ na inicializao e depois desmontar (`umount /dev/hda2' e remonta-la (mount /dev/hda2) para usar o suporte _ext3_. Confira se ela est usando _ext3_ usando o comando `df -T'. _OBS:_ Caso a partio convertida para _ext3_ seja a raz (`/'), tenha certeza de incluir o suporte a _ext3_ embutido no kernel, caso contrrio, a partio ser montada como _ext2_. 5.5.4. Convertendo de EXT3 para EXT2 -----------------------------------Remover o suporte a _ext3_ de uma partio simples, rpido e seguro. Execute os seguintes passos: 1. Execute o comando `tune2fs -O^has_journal /dev/hdxx' na partio que deseja remover o Journal. Este comando poder ser executado em uma partio montada. 2. Modifique o `/etc/fstab' e altere a partio para _ext2_. 3. Desmonte e monte novamente a partio com os comandos: `umount /dev/hdxx' e `mount /dev/hdxx'. 4. Pronto! a partio agora novamente uma partio _ext2_ normal, confira digitando `df -T'. Pronto, o suporte a _ext3_ foi removido do seu sistema e agora poder usar a partio como _ext2_ normalmente (confira digitando `df -T').

5.6. Sistema de arquivos reiserfs --------------------------------Este um sistema de arquivos alternativo ao _ext2/3_ que tambm possui suporte a journaling. Entre suas principais caractersticas, esto que ele possui tamanho de blocos variveis, suporte a arquivos maiores que 2 Gigabytes (esta uma das limitaes do _ext3_) e o acesso mhash a rvore de diretrios um pouco mais rpida que o _ext3_. Para utilizar `reiserfs', tenha certeza que seu kernel possui o suporta habilitado (na seo `File Systems') e instale o pacote `reiserfsprogs' que contm utilitrios para formatar, verificar este tipo de partio. 5.6.1. Criando um sistema de arquivos reiserfs em uma partio -------------------------------------------------------------Para criar uma partio _reiserfs_, primeiro instale o pacote `reiserfsprogs' (`apt-get install reiserfsprogs'). Para criar uma partio _reiserfs_, primeiro crie uma partio _ext2_ normal, e ento use o comando: `mkreiserfs /dev/hda?' Onde a "?" em `hda?' significa o nmero da partio que ser formatada com o sistema de arquivos _reiserfs_. A identificao da
-74-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

partio mostrada durante o particionamento do disco, anote se for o caso. `hda' o primeiro disco rgido IDE, `hdb' o segundo disco rgido IDE. Discos SCSI so identificados por `sda?', `sdb?', etc. Para detalhes sobre a identificao de discos, veja Section 5.12, `Identificao de discos e parties em sistemas Linux'. Algumas opes so teis ao `mkreiserfs': * `-s [num]' - Especifica o tamanho do arquivo de journal em blocos. O valor mnimo 513 e o mximo 32749. O valor padro 8193. * `-l [NOME]' - Coloca um nome (label) no sistema de arquivos. * `-f' - Fora a execuo do `mkreiserfs'. * `-d' - Ativa a depurao durante a execuo do `mkreiserfs'. Agora para acessar a partio dever ser usado o comando: `mount /dev/hda? /mnt -t reiserfs' Para mais detalhes veja Section 5.13, `Montando (acessando) uma partio de disco'. Note que possvel criar um sistema de arquivos no disco rgido sem criar uma partio usando `/dev/hda', `/dev/hdb', etc. usando a opo `-f' _EVITE FAZER ISSO!_ Como no estar criando uma partio, o disco estar divido de maneira incorreta, voc no poder apagar o sistema de arquivos completamente do disco caso precise (lembre-se que voc no criou uma partio), e a partio possui uma assinatura apropriada que identifica o sistema de arquivos. 5.6.2. Criando um sistema de arquivos reiserfs em um arquivo -----------------------------------------------------------O sistema de arquivos `reiserfs' tambm poder ser criado em um arquivo, usando os mesmos benefcios descritos em Section 5.3.2, `Criando um sistema de arquivos EXT2 em um arquivo'. Para fazer isso execute os seguintes passos em seqncia: 1. Use o comando `dd if=/dev/zero of=/tmp/arquivo-reiserfs bs=1024 count=33000' para criar um arquivo `arquivo-reiserfs' vazio de 33Mb de tamanho em `/tmp'. Voc pode modificar os parmetros de `of' para escolher onde o arquivo ser criado, o tamanho do arquivo poder ser modificado atravs de `count'. Note que o tamanho mnimo do arquivo deve ser de 32Mb, devido aos requerimentos do `reiserfs'. Formate o arquivo com `mkreiserfs -f /tmp/arquivo-reiserfs'. primeiro dir que o arquivo `arquivo-reiserfs' no um dispositivo de bloco especial (uma partio de disco) e perguntar se deve continuar, responda com `y'. O sistema de arquivos ReiserFS ser criado em `/tmp/arquivo-reiserfs' e estar pronto para ser usado. 3. Monte o arquivo `arquivo-reiserfs' com o comando: `mount
-75-

2.

Ele

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

/tmp/arquivo-reiserfs /mnt -t reiserfs -o loop=/dev/loop1'. Note que foi usado o parmetro `-o loop' para dizer ao comando `mount' para usar os recursos de `loop do kernel' para montar o sistema de arquivos. O parmetro `-t reiserfs' poder ser omitido, se desejar. 4. Confira se o sistema de arquivos `ReiserFS' em `arquivo-reiserfs' foi realmente montado no sistema de arquivos digitando `df -T'. Para detalhes, veja Section 10.3, `df'.

Pronto! o que voc gravar para `/mnt' ser gravado dentro do arquivo `/tmp/arquivo-reiserfs'. Voc poder usar todos os recursos de um sistema de arquivos `reiserfs' como permisses de arquivos e diretrios, links simblicos, etc. O uso da opo `loop=/dev/loop1' permite que o dispositivo `/dev/loop1' seja associado ao arquivo `/arquivo-reiserfs' e assim permitir sua montagem e uso no sistema. * Voc poder usar apenas `-o loop' com o comando `mount', assim o kernel gerenciar automaticamente os dispositivos de `loop'. * Caso faa isto manualmente, lembre-se de usar dispositivos `/dev/loop?' diferentes para cada arquivo que montar no sistema. Pois cada um faz referncia a um nico arquivo. 5.6.3. Nomeando uma partio de disco ------------------------------------O comando `e2label' usado para esta funo. `e2label [_dispositivo_] [_nome_]' Onde: _dispositivo_ Partio que ter o nome modificado _nome_ Nome que ser dado a partio (mximo de 16 caracteres). Caso seja usado um nome de volume com espaos, ele dever ser colocado entre "aspas". Se no for especificado um nome, o nome atual da partio ser mostrado. O nome da partio tambm pode ser visualizado atravs do comando `dumpe2fs' (veja Section 5.6.5, `dumpe2fs'). Exemplo: `e2label /dev/sda1 FocaLinux', `e2label /dev/sda1 "Foca Linux"' 5.6.4. Criando o diretrio especial `lost+found' -----------------------------------------------O utilitrio `mklost+found' cria o diretrio especial `lost+found' no diretrio atual. O diretrio `lost+found' criado automaticamente aps a formatao da partio com o `mkfs.ext2', a funo deste diretrio pr-alocar os blocos de arquivos/diretrio durante a execuo do programa `fsck.ext2' na recuperao de um sistema de arquivos (veja Section 23.1, `Checagem dos sistemas de arquivos'). Isto garante que os blocos de disco no precisaro ser diretamente alocados durante a checagem.
-76-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

`mklost+found' OBS: Este comando s funciona em sistemas de arquivos ext2 Exemplo: `cd /tmp;mklost+found;ls -a' 5.6.5. dumpe2fs --------------Mostra detalhes sobre uma partio `Linux'. `dumpe2fs [_opes_] [_partio_]' Onde: _partio_ Identificao da partio que ser usada. _opes_ -b Mostra somente os blocos marcado como defeituosos no sistema de arquivos especificado. Este comando lista diversas opes teis do sistema de arquivos como o tipo do sistema de arquivos, caractersticas especiais, nmero de inodos, blocos livres, tamanho do bloco, intervalo entre checagens automticas, etc. Exemplo: `dumpe2fs /dev/sda1', `dumpe2fs -b /dev/sda1' 5.6.6. Partio EXT2 ou Arquivo? -------------------------------Criar uma partio `EXT2' ou um arquivo usando o `loop'? Abaixo esto algumas consideraes: * A partio `EXT2' o mtodo recomendado para a instalao do `GNU/Linux'. * O desempenho da partio `EXT2' bem melhor se comparado ao arquivo porque acessada diretamente pelo Kernel (SO). * O arquivo `EXT2' til para guardarmos dados confidenciais em disquetes ou em qualquer outro lugar no sistema. Voc pode perfeitamente gravar seus arquivos confidenciais em um arquivo chamado `libBlaBlaBla-2.0' no diretrio `/lib' e ningum nunca suspeitar deste arquivo (acho que no...). Tambm possvel criptografa-lo para que mesmo algum descobrindo que aquilo no uma lib, no poder abri-lo a no ser que tenha a senha (isto coberto no documento `Loopback-encripted-filesystem.HOWTO'). * O uso do arquivo `EXT2' til quando voc est perdendo espao na sua partio `EXT2' e no quer re-particionar seu disco pois teria que ser feita uma re-instalao completa e tem muito espao em um partio de outro SO (como o Windows). Voc poderia facilmente copiar o contedo de `/var', por exemplo, para o arquivo `EXT2' `ext2-l' criado no diretrio Raz do Windows, apagar o contedo de `/var' (liberando muito espao em disco) e ento montar `ext2-l' como `/var'. A partir de agora, tudo o que for gravado em `/var' ser na realidade gravado no arquivo `ext2-l'. Para o sistema acessar o arquivo, deve passar pelo sistema de arquivos `loop' e `FAT32', isto causa um desempenho menor.
-77-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

5.7. Partio Linux Swap (Memria Virtual) -----------------------------------------Este tipo de partio usado para oferecer o suporte a _memria virtual_ ao `GNU/Linux' em adio a _memria RAM_ instalada no sistema. Este tipo de partio identificado pelo tipo 82 nos programas de particionamento de disco para `Linux'. Para detalhes de como criar uma partio `Linux Swap' veja Section 5.7.1, `Criando sistema de arquivos Swap em uma partio'. Somente os dados na memria RAM so processados pelo processador, por ser mais rpida. Desta forma quando voc est executando um programa e a memria RAM comea a encher, o `GNU/Linux' move automaticamente os dados que no esto sendo usados para a partio Swap e libera a memria RAM para a continuar carregando os dados necessrios pelo. Quando os dados movidos para a partio Swap so solicitados, o `GNU/Linux' move os dados da partio Swap para a Memria. Por este motivo a partio Swap tambm chamada `de Troca' ou `memria virtual'. A velocidade em que os dados so movidos da memria RAM para a partio muito alta. Note tambm que possvel criar o sistema de arquivos _Swap_ em um arquivo ao invs de uma partio (veja Section 5.7.2, `Criando um sistema de arquivos Swap em um arquivo'). 5.7.1. Criando sistema de arquivos Swap em uma partio ------------------------------------------------------O programa usado para formatar uma partio Swap o `mkswap'. uso simples: `mkswap /dev/hda?' Novamente veja Section 5.12, `Identificao de discos e parties em sistemas Linux' caso no souber identificar seus discos e parties. O nome do dispositivo da partio `Swap' pode ser visualizado atravs de seu programa de particionamento, voc pode usar o comando `fdisk -l /dev/hda' para listar as parties no primeiro disco rgido e assim verificar qual dispositivo corresponde a partio Swap. A opo `-c' tambm pode ser usada com o `mkswap' para checar se existem agrupamentos danificados na partio. Com a partio Swap formatada, use o comando: `swapon /dev/hda?' para ativar a partio Swap (lembre-se de substituir ? pelo nmero de sua partio Swap). Observaes: Os Kernels do `GNU/Linux' 2.0.xx e anteriores somente suportam parties Swap de at 128MB. Caso precise de mais que isso, crie mais parties Swap ou atualize seu sistema para trabalhar com o kernel 2.2.xx Se utilizar mais que 1 partio `Swap', pode ser til o uso da opo
-78-

Seu

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

`-p NUM' que especifica a prioridade em que a partio Swap ser usada. Pode ser usado um valor de prioridade entre 0 e 32767, parties com nmero maior sero usadas primeiro, sendo que na montagem automtica atravs de "mount -a" podem ser designados nmeros negativos. Procure usar o nmero maior para parties mais rpidas (elas sero acessadas primeiro) e nmeros maiores para parties mais lentas. Caso precise desativar a partio Swap, use o comando: `swapoff /dev/hda?'. 5.7.2. Criando um sistema de arquivos Swap em um arquivo -------------------------------------------------------Tambm possvel criar um arquivo que poder ser usado como memria virtual. Veja passo a passo como fazer isso: 1. Use o comando `dd if=/dev/zero of=/tmp/troca bs=1024 count=16000' para criar um arquivo chamado `troca' vazio de 16Mb de tamanho em `/tmp'. Voc pode modificar os parmetros de `of' para escolher onde o arquivo ser criado, o tamanho do arquivo poder ser modificado atravs de `count'. Execute `mkswap /tmp/troca' para formatar o arquivo. Aps concluir este passo, o sistema de arquivos `Swap' estar criado e pronto para ser usado. Digite `sync' para sincronizar os buffers para o disco, assim voc no ter problemas em um servidor com muito I/O. Ative o arquivo de troca com o comando `swapon /tmp/troca'. Confira se o tamanho da memria virtual foi modificado digitando `cat /proc/meminfo' ou `free'.

2.

3.

4. 5.

Observaes: * Podem ser usadas parties de troca e arquivos de troca juntos, sem problemas. * Caso seu sistema j tenha uma partio de `Swap', recomendvel deixar o acesso ao arquivo `Swap' com uma prioridade menor (usando a opo -p NUM com o comando `swapon'). 5.7.3. Partio Swap ou Arquivo? -------------------------------Criar uma partio de Troca ou um arquivo de troca? vantagens e desvantagens: Abaixo algumas

* A partio Swap mais rpida que o arquivo Swap pois acessada diretamente pelo Kernel. Se o seu computador tem pouca memria (menos que 32Mb) ou voc tem certeza que o sistema recorre freqentemente a memria virtual para executar seus programas, recomendvel usar uma partio Swap. * O arquivo de troca permite que voc crie somente uma partio `Linux Native' e crie o arquivo de troca na partio `EXT2'.

-79-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

* Voc pode alterar o tamanho do arquivo de troca facilmente apagando e criando um novo arquivo como descrito em Section 5.7.2, `Criando um sistema de arquivos Swap em um arquivo'. * possvel criar um arquivo de troca em outros tipos de parties como `FAT16', `FAT32', etc. * O arquivo de troca estar disponvel somente aps o sistema de arquivos que o armazena (`ext2', `fat32', etc) estar montado. Isto um problema para sistemas com pouca memria que dependem do arquivo de troca desde sua inicializao.

5.8. O sistema de arquivos `/proc' --------------------------------- o sistema de arquivos do Kernel do `GNU/Linux'. Ele oferece um mtodo de ler, gravar e modificar dinamicamente os parmetros do kernel, muito til para curiosos (como eu) e programas de configurao. A modificao dos arquivos do diretrio `/proc' o mtodo mais usado para modificar a configurao do sistema e muitos programas tambm dependem deste diretrio para funcionar. Nele voc tem todo o controle do que o seus sistema operacional est fazendo, a configurao dos hardwares, interrupes, sistema de arquivos montado, execuo de programas, memria do sistema, rede, etc. Agora entre no diretrio `/proc' digite `ls' e veja a quantidade de arquivos e diretrios que ele possui, d uma passeada por eles. Abaixo a descrio de alguns deles (todos podem ser visualizados pelo comando `cat'): * `Diretrios com nmeros' - Estes identificam os parmetros de um processo em execuo. Por exemplo, se o PID (identificao do processo) do `inetd' for `115', voc pode entrar no diretrio `115' e verificar as opes usadas para execuo deste programa atravs de cada arquivos existente dentro do diretrio. Alguns so: * `cmdline' - O que foi digitado para iniciar o processo (pode tambm ter sido iniciado atravs de um programa ou pelo kernel). * `environ' - Variveis de Ambiente existentes no momento da execuo do processo. * `status' - Dados sobre a execuo do Processo (PID, status da execuo do programa, memria consumida, memria executvel, UID, GID, etc). * `apm' - Dados sobre o gerenciamento de energia * `cmdline' - Linha de comando usada para inicializar o Kernel `GNU/Linux'. Os parmetros so passados atravs do programa de inicializao, como o `LILO', `LOADLIN', `SYSLINUX'. * `cpuinfo' - Detalhes sobre a CPU do sistema * `devices' - Dispositivos usados no sistema * `dma' - Canais de DMA usados por dispositivos * `filesystems' - Sistemas de arquivos em uso atualmente * `interrupts' - Interrupes usadas por dispositivos * `ioports' - Portas de Entrada e Sada usadas pelos dispositivos do sistema
-80-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

* `kcore' - Este arquivo corresponde a toda a memria RAM em seu sistema. Seu tamanho correspondente a memria RAM do micro * `kmsg' - Permite visualizar mensagens do Kernel (use o comando `cat < kmsg' para visualiza-lo e pressione CTRL+C para cancelar * `loadavg' - Mdia de Carga do sistema * `meminfo' - Dados de utilizao da memria do sistema * `misc' - Outras configuraes * `modules' - Mdulos atualmente carregados no kernel * `mounts' - Sistemas de Arquivos atualmente montados * `pci' - Detalhes sobre dispositivos PCI do sistema * `rtc' - Relgio em Tempo real do sistema * `uptime' - Tempo de execuo do sistema * `version' - Verso atual do Kernel, programa usado na compilao, etc * Diretrio `net' - Dados sobre a rede do sistema * Diretrio `sys' - Dados sobre outras reas do sistema * Diretrio `scsi' - Detalhes sobre dispositivos SCSI do sistema Note que o diretrio `proc' e os arquivos existentes dentro dele esto localizados no diretrio raiz (`/'), mas no ocupa nenhum espao no disco rgido.

5.9. LVM - Logical Volume Manager --------------------------------O `lvm' (_Logical Volume Manager_) faz a associao entre dispositivos/parties fsicas (incluindo discos RAID, MO, mass storages diversos, MD, e loop) e dispositivos lgicos. O mtodo tradicional faz a alocao de todo espao fsico ao tamanho da partio do disco (o mtodo tradicional), o que traz muito trabalho quando o espao esgota, cpia de dados ou planejamento de uso de mquina (que pode mudar com o passar do tempo). O sistema de `lvm' soluciona os seguintes problemas: * Uso eficaz de disco, principalmente quando h pouco espao para criao de parties independentes. * Permite aumentar/diminuir dinamicamente o tamanho das parties sem reparticionamento do disco rgido usando o espao livre em outras parties ou utilizando o espao livre reservado para o uso do LVM. * Uma partio de disco identificada por um nome de volume e no pelo dispositivo. Voc pode ento se referir aos volumes como: usurios, vendas, diretoria, etc. * Sua diviso em 3 camadas possibilita a adio/remoo de mais discos de um conjunto caso seja necessrio mais espao em volumes, etc. * Permite selecionar o tamanho do cluster de armazenamento e a forma que eles so acessados entre os discos, possibilitando garantir a escolha da melhor opo dependendo da forma que os dados sero manipulados pelo servidor. * Permite snapshots dos volumes do disco rgido. As 3 camadas do LVM so agrupadas da seguinte forma: * `PV (Phisical Volume)' - Corresponde a todo o disco rgido/partio ou dispositivo de bloco que ser adicionado ao LVM. Os aplicativos que manipulam o volume fsico, comeam com as letras `pv*'. O espao disponvel no PV dividido em PE (Phisical Extends, ou extenses fsicas). O valor padro do PE de 4MB, possibilitando a criao de um VG de 256Gb.
-81-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Por exemplo: `/dev/hda1' * `VG (Volume Group)' - Corresponde ao grupo de volumes fsicos que fazem parte do LVM. Do grupo de volume so alocados os espaos para criao dos volumes lgicos. Os aplicativos que manipulam o o grupo de volume, comeam com as letras `vg*'. Por exemplo: `/dev/lvmdisk0' `LV (Logical Volume)' - Corresponde a partio lgica criada pelo LVM para gravao de dados. ao invs de ser identificada por nomes de dispositivos, podem ser usados nomes comuns para se referir as parties (tmp,usr,etc.). O Volume lgico a rea onde o sistema de arquivo criado para gravao de dados, seria equivalente a partio em um sistema _SEM LVM_ s que lgica ao invs de fsica. O volume lgico tem seu espao dividido em LE (Logical Extends, ou extenses lgicas) que correspondem aos PE's alocados. Exemplos: `/dev/lvmdisk/usr', `/dev/lvmdisk/tmp', etc. 5.9.1. Representao grfica do LVM ----------------------------------Desenvolvi este desenho para representar a idia de organizao de um sistema LVM para o guia Foca GNU/Linux e apresentar a descrio prtica da coisa: +------[ Grupo de Volume (VG) - lvmdsk ]------+ | +--[ PV - hda1 ]---+ +--[ PV - hdb1 ]--+ | | | PE PE PE PE PE PE| | PE PE PE PE PE | | | +------------------+ +-----------------+ | | | | | | | | | | +-----------------+ | | | | +----------------+ | | | | | | | | | +-[ LV - var ]-+ +-[ LV - home ]-+ | | | LE LE LE LE | | LE LE LE LE | | | +--------------+ +---------------+ | +---------------------------------------------+ O grfico acima representa a seguinte situao: 1. Ns temos dois volumes fsicos representados por `hda1' e `hdb1'. Cada um desses volumes fsicos tem um Phisical Extend (PE) de 4M (o padro). 2. Estes dois volumes fsicos acima representam o espao total do grupo de volume _lvmdisk_ em `/dev/lvmdisk'. 3. Do grupo de volume _lvmdisk_ so criados dois volumes lgicos chamados _var_ e _home_, estando disponveis para particionamento atravs de `/dev/lvmdisk/var' e `/var/lvmdisk/home'. Na prtica, o espao do volume lgico definido alocando-se alguns Phisical Extends (PE) dos volumes fsicos como logical extends (LE) dos volumes lgicos. Desta forma, o tamanho de todos os PEs e LEs existentes dentro de um mesmo grupo de volume devem ser iguais. 5.9.2. Performance do LVM ------------------------Um sistema com LVM tem sua performance um pouco reduzida quanto ao acesso a disco, devido as camadas adicionais de acesso aos dados, sendo afetadas operaes em caracteres e inteligentes de acesso a dados.
-82-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Entretanto, a performance de leitura/gravao de blocos melhorada consideravelmente aps a adoo do LVM. O LVM tambm garante que o sistema no mostre sintomas de paradas durante o esvaziamento de cache de disco, mantendo sempre uma certa constncia na transferncia de dados mesmo em operaes pesadas de I/O no disco. Depende de voc avaliar estes pontos e considerar sua adoo. 5.9.3. Colocando LVM em seu sistema ----------------------------------Nesta seo no tenho a inteno de cobrir todos os detalhes tcnicos da implantao do LVM, a idia aqui fornecer uma referncia bsica e prtica para uso em qualquer sistema normal (desconsiderando usos crticos). A idia aqui mostrar de forma prtica como implantar LVM em sua mquina e preparar seu uso nos discos. Antes de comear, retire QUALQUER CD que estiver inserido na unidade de CD-ROM, pois eles podem causar erro no `pvscan', `pvdisplay', etc. 1. No particionamento, defina as parties do tipo 8E (Linux LVM). A partio Linux LVM exatamente igual a Linux Native (82), a nica vantagem que o LVM utilizar auto deteco para saber quais parties ele deve utilizar no `pvscan'. 2. Instale o pacote `lvm10' e uma imagem de kernel 2.4 que tenha suporte a LVM, ou compile seu prprio kernel (caso goste de mquinas turbinadas :-) 3. Execute o `pvscan' para detectar as parties marcadas como LVM e criar sua configurao em `/etc/lvmtab.d'. _OBS:_ normal o sistema procurar dispositivos de CD-ROM durante a execuo do `pvscan', apenas no deixe um CD na unidade para evitar grandes sustos se estiver desatento com os passos :-) 4. Rode o `pvcreate' no disco ou partio para dizer que ela ser um volume fsico do LVM: `pvcreate /dev/hda1' ou `pvcreate /dev/hda' Em caso de dvida sobre qual a partio LVM, digite: `fdisk -l /dev/hda' (supondo que `/dev/hda' o disco rgido que est configurando o LVM). 5. Rode o pvdisplay /dev/hda1 para verificar se o volume fsico foi criado. Recomendo que deixe a partio raz (`/') de fora do LVM para no ter futuros problemas com a manuteno do seu sistema, a menos que tenha muitas opes de inicializao com suporte a LVM em mos, ou algo mais complexo baseado em initrd :-) 6. Crie o grupo de volume na partio `vgcreate lvmdisk /dev/hda1 /dev/hdb7'... Note que parties de discos diferentes podem fazer parte de um mesmo grupo de volume (VG) do LVM. Caso use o `devfs', ser preciso usar o caminho completo do dispositivo ao invs do link: `vgcreate lvmdisk /dev/ide/host0/bus0/target0/lun0/part1' O valor padro do "Phisical Extend" de 4MB mas pode ser alterado pelo parmetro "-s tamanho", assim o tamanho mximo do grupo de volume ser de 256GB (4MB * 64.000 extends que so suportados por volume lgico). Os valores do Phisical Extend (PE) pode ser de 8k a 16GB. No possvel modificar o tamanho do PE aps ele ser definido. 7. Verifique o grupo de volume (VG) recm criado com o comando: `vgdisplay' ou `vgdisplay /dev/hda6'. Atente para a linha "Free PE / tamanho", que indica o espao livre restante para criar os volumes lgicos (LV).
-83-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

8.

9.

Crie o volume lgico (LV) com o comando: `lvcreate -L1500 -ntmp lvmdisk' Que vai criar uma partio LVM de 1500MB (1,5GB) com o nome _tmp_ (acessvel por `/var/lvmdisk/tmp') dentro do grupo _lvmdisk_. Voc dever fazer isso com as outra parties. Agora resta criar um sistema de arquivos (_ext3_, _reiserfs_, _xfs_, _jfs_, etc) como faria com qualquer partio fsica normal: `mkfs.ext3 /dev/lvmdisk/tmp' `mkfs.reiserfs /dev/lvmdisk/tmp'

_OBS:_ Caso deseje montar automaticamente o volume LVM, coloque o caminho completo do LVM ao invs do volume fsico no `/etc/fstab': `/dev/lvmdisk/tmp'. 5.9.4. Aumentando o tamanho de um volume lgico ----------------------------------------------O processo para aumentar o tamanho do volume lgico consiste em primeiro aumentar o tamanho do VG com o `lvextend' e depois ajustar o tamanho do sistema de arquivos: # Aumenta o espao do volume lgico tmp para 1G lvextend -L1G /dev/lvmdisk/tmp # Aumenta em 200MB o espao no volume lgico tmp lvextend -L+200M /dev/lvmdisk/tmp As unidades `Kk,Mm,Gg,Tt' podem ser usadas para especificar o espao. Aps modificar o volume lgico, ser preciso aumentar o tamanho do sistema de arquivos para ser exatamente igual ao tamanho do LV. Isto depende do seu sistema de arquivos: ext2/3 resize2fs /dev/lvmdisk/tmp O _ext2/3_ ainda vem com o utilitrio `e2fsadm' que executa os dois comandos (`lvextend' e `resize2fs') de uma s vez: `e2fsadm -L+1G /dev/lvmdisk/tmp' _OBS:_ Voc dever desmontar o sistema de arquivos antes de alterar o tamanho de um sistema de arquivos _ext2_ ou _ext3_. Para alterar o tamanho durante a execuo do sistema operacional, necessria a aplicao do patch _ext2online_ no kernel. reiserfs resize_reiserfs -f /dev/lvmdisk/tmp O tamanho do sistema de arquivos `reiserfs' poder ser modificado on-line, assim no precisa parar seu servidor para esta operao. xfs xfs_growfs /tmp Note que deve ser especificado o ponto de montagem ao invs do dispositivo. O sistema de arquivos dever ser montado antes de ser modificado e incluido no `/etc/fstab'. 5.9.5. Diminuindo um volume lgico ---------------------------------Para diminuir o tamanho de um volume lgico, certifique-se de ter calculado o espao corretamente para acomodar todos os dados que j existem na partio. A diferena para o processo de aumentar o LV que neste o sistema de arquivos reduzido primeiro e depois o LV: ext2/3
-84-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

`e2fsadm -L-1G /dev/lvmdisk/tmp' Voc tambm poder usar o `resize2fs' e depois o `lvreduce', mas dever dizer o tamanho em blocos para o `resize2fs' que varia de acordo com o tamanho do sistema de arquivos: resize2fs /dev/lvmdisk/tmp 524288 lvreduce -L-1G /dev/lvmdisk/tmp _OBS:_ Voc dever desmontar o sistema de arquivos antes de alterar o tamanho do sistema de arquivos, a no ser que tenha o patch _ext2online_ aplicado no kernel. reiserfs resize_reiserfs -s-1G /dev/lvmdisk/tmp lvreduce -L-1G /dev/lvmdisk/tmp O tamanho do sistema de arquivos `reiserfs' poder ser modificado on-line, assim no precisa parar seu servidor para a modificao. xfs No possvel diminuir o tamanho de um sistema de arquivos XFS em sua verso atual (12/2003).

5.10. Formatando disquetes -------------------------As subsees seguintes explicaro maneiras de formatar seus disquetes para serem usados no `GNU/Linux' e `DOS/Windows'. 5.10.1. Formatando disquetes para serem usados no Linux ------------------------------------------------------Para formatar disquetes para serem usados no `GNU/Linux' use o comando: `mkfs.ext2 [_-c_] [_/dev/fd0_]' Em alguns sistemas voc deve usar `mke2fs' no lugar de `mkfs.ext2'. A opo `-c' faz com que o `mkfs.ext2' procure por blocos danificados no disquete e `/dev/fd0' especifica a primeira unidade de disquetes para ser formatada (equivalente a `A:' no DOS). Mude para `/dev/fd1' para formatar um disquete da segunda unidade. OBS: Este comando cria um sistema de arquivos _ext2_ no disquete que nativo do `GNU/Linux' e permite usar caractersticas como permisses de acesso e outras. Isto tambm faz com que o disquete NO possa ser lido pelo `DOS/Windows'. Para formatar um disquete no `GNU/Linux' usando o _FAT12_ (compatvel com o DOS/Windows) veja prxima seo. Exemplo: `mkfs.ext2 -c /dev/fd0' 5.10.2. Formatando disquetes compatveis com o DOS/Windows ---------------------------------------------------------A formatao de disquetes `DOS' no `GNU/Linux' feita usando o comando `superformat' que geralmente includo no pacote `mtools'. O `superformat' formata (cria um sistema de arquivos) um disquete para ser usado no `DOS' e tambm possui opes avanadas para a manipulao da unidade, formatao de intervalos de cilindros especficos, formatao de discos em alta capacidade e verificao do disquete.

-85-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

`superformat [opes] [_dispositivo_]' _dispositivo_ Unidade de disquete que ser formatada. Normalmente `/dev/fd0' ou `/dev/fd1' especificando respectivamente a primeira e segunda unidade de disquetes. _opes_ -v [num] Especifica o nvel de detalhes que sero exibidos durante a formatao do disquete. O nvel 1 especifica um ponto mostrado na tela para cada trilha formatada. Veja a pgina de manual do `superformat' para detalhes. -superverify Verifica primeiro se a trilha pode ser lida antes de formata-la. Este o padro. --dosverify, -B Verifica o disquete usando o utilitrio `mbadblocks'. Usando esta opo, as trilhas defeituosas encontradas sero automaticamente marcadas para no serem utilizadas. --verify_later, -V Verifica todo o disquete no final da formatao. --noverify, -f No faz verificao de leitura. -b [trilha] Especifica a trilha inicial que ser formatada. O padro 0. -e [trilha] Especifica a trilha final que ser formatada. Na primeira vez que o `superformat' executado, ele verifica a velocidade de rotao da unidade e a comunicao com a placa controladora, pois os discos de alta densidade so sensveis a rotao da unidade. Aps o teste inicial ele recomendar adicionar uma linha no arquivo `/etc/driveprm' como forma de evitar que este teste seja sempre executado. OBS: Esta linha calculada de acordo com a rotao de usa unidade de disquetes, transferncia de dados e comunicao com a placa controladora de disquete. Desta forma ela varia de computador para computador Note que no necessrio montar a unidade de disquetes para formata-la. Segue abaixo exemplos de como formatar seus disquetes com o `superformat': * `superformat /dev/fd0' - Formata o disquete na primeira unidade de disquetes usando os valores padres. * `superformat /dev/fd0 dd' - Faz a mesma coisa que o acima, mas assume que o disquete de Dupla Densidade (720Kb). * `superformat -v 1 /dev/fd0' - Faz a formatao da primeira unidade de disquetes (`/dev/fd0') e especifica o nvel de detalhes para 1, exibindo um `ponto' aps cada trilha formatada. 5.10.3. Programas de Formatao Grficos ---------------------------------------Alm de programas de formatao em modo texto, existem outros para ambiente grfico (X11) que permitem fazer a mesma tarefa. Entre os diversos programas destaco o `gfloppy' que alm de permitir selecionar se o disquete ser formatado para o `GNU/Linux' (ext2) ou `DOS' (FAT12), permite selecionar a capacidade da unidade de disquetes
-86-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

e formatao rpida do disco.

5.11. Pontos de Montagem -----------------------O `GNU/Linux' acessa as parties existente em seus discos rgidos e disquetes atravs de diretrios. Os diretrios que so usados para acessar (montar) parties so chamados de _Pontos de Montagem_. Para detalhes sobre montagem de parties, veja Section 5.13, `Montando (acessando) uma partio de disco'. No `DOS' cada letra de unidade (C:, D:, E:) identifica uma partio de disco, no `GNU/Linux' os pontos de montagem fazem parte da grande estrutura do sistema de arquivos raiz. Existem muitas vantagens de se usar _pontos de montagem_ ao invs de unidade de disco para identificar parties (mtodo usado no `DOS'): * Voc pode montar a partio no diretrio que quiser. * Em caso de um sistema de arquivos cheio, voc pode copiar o contedo de um grande diretrio para um disco separado, apagar o contedo do diretrio original e montar o disco onde foram copiados os arquivos naquele local (caso no use um sistema de LVM). * O uso de _pontos de montagem_ torna o gerenciamento mais flexvel. * A adio de novas parties ou substituio de discos rgidos no afeta a ordem de identificao dos discos e pontos de montagem (como no acontece no `DOS').

5.12. Identificao de discos e parties em sistemas Linux ----------------------------------------------------------No `GNU/Linux', os dispositivos existentes em seu computador (como discos rgidos, disquetes, tela, portas de impressora, modem, etc) so identificados por um arquivo referente a este dispositivo no diretrio `/dev'. A identificao de discos rgidos no `GNU/Linux' feita da seguinte forma: /dev/hda1 | | || | | ||_Nmero que identifica o nmero da partio no disco rgido. | | | | | |_Letra que identifica o disco rgido (a=primeiro, b=segundo, etc...). | | | |_Sigla que identifica o tipo do disco rgido (hd=ide, sd=SCSI, xt=XT). | |_Diretrio onde so armazenados os dispositivos existentes no sistema. Abaixo algumas identificaes de discos e parties em sistemas Linux: * _/dev/fd0_ - `Primeira unidade de disquetes'. * _/dev/fd1_ - `Segunda unidade de disquetes'.
-87-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

* _/dev/hda_ - `Primeiro disco rgido na primeira controladora IDE do micro (primary master)'. * _/dev/hda1_ - `Primeira partio do primeiro disco rgido IDE'. * _/dev/hdb_ - `Segundo disco rgido na primeira controladora IDE do micro (primary slave)'. * _/dev/hdb1_ - `Primeira partio do segundo disco rgido IDE'. * _/dev/sda_ - `Primeiro disco rgido na primeira controladora SCSI'. * _/dev/sda1_ - `Primeira partio do primeiro disco rgido SCSI'. * _/dev/sdb_ - `Segundo disco rgido na primeira controladora SCSI'. * _/dev/sdb1_ - `Primeira partio do segundo disco rgido SCSI'. * _/dev/sr0_ - `Primeiro CD-ROM SCSI'. * _/dev/sr1_ - `Segundo CD-ROM SCSI'. * _/dev/xda_ - `Primeiro disco rgido XT'. * _/dev/xdb_ - `Segundo disco rgido XT'. As letras de identificao de discos rgidos podem ir alm de `hdb', em meu micro, por exemplo, a unidade de CD-ROM est localizada em `/dev/hdg' (Primeiro disco - quarta controladora IDE). importante entender como os discos e parties so identificados no sistema, pois ser necessrio usar os parmetros corretos para monta-los.

5.13. Montando (acessando) uma partio de disco -----------------------------------------------Voc pode acessar uma partio de disco usando o comando `mount'. `mount [_dispositivo_] [_ponto de montagem_] [_opes_]' Onde: _dispositivo_ Identificao da unidade de disco/partio que deseja acessar (como `/dev/hda1' (disco rgido) ou `/dev/fd0' (primeira unidade de disquetes). _ponto de montagem_ Diretrio de onde a _unidade de disco/partio_ ser acessado. O diretrio deve estar vazio para montagem de um sistema de arquivo. Normalmente usado o diretrio `/mnt' para armazenamento de pontos de montagem temporrios. -t [tipo] Tipo do sistema de arquivos usado pelo _dispositivo_. So
-88-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

aceitos os sistemas de arquivos: * _ext2_ - Para parties `GNU/Linux' usando o Extended File System verso 2 (a mais comum). * _ext3_ - Para parties `GNU/Linux' usando o Extended File System verso 3, com suporte a journaling. * _reiserfs_ - Para parties reiserfs, com suporte a journaling. * _vfat_ - Para parties `Windows 95' que utilizam nomes extensos de arquivos e diretrios. * _msdos_ - Para parties `DOS' normais. * _iso9660_ - Para montar unidades de `CD-ROM'. o padro. * _umsdos_ - Para montar uma partio `DOS' com recursos de parties `EXT2', como permisses de acesso, links, etc. Para mais detalhes sobre opes usadas com cada sistema de arquivos, veja a pgina de manual _mount_. -r Caso for especificada, monta a partio somente para leitura. -w Caso for especificada, monta a partio como leitura/gravao. o padro. Existem muitas outras opes que podem ser usadas com o comando `mount', mas aqui procurei somente mostrar o bsico para "montar" seus discos e parties no `GNU/Linux' (para mais opes, veja a pgina de manual do `mount'). Caso voc digitar `mount' sem parmetros, sero mostrados os sistemas de arquivos atualmente montados no sistema. Esta mesma listagem pode ser vista em `/etc/mtab'. A remontagem de partio tambm muito til, especialmente aps reparos nos sistema de arquivos do disco rgido. Veja alguns exemplos de remontagem abaixo. necessrio permisses de root para montar parties, a no ser que tenha especificado a opo `user' no arquivo `/etc/fstab' (veja Section 5.13.1, `fstab'). Exemplo de Montagem: * Montar uma partio Windows (vfat) de `/dev/hda1' em `/mnt' somente para leitura: `mount /dev/hda1 /mnt -r -t vfat' * Montar a primeira unidade de disquetes `/dev/fd0' em `/floppy': `mount /dev/fd0 /floppy -t vfat' * Montar uma partio DOS localizada em um segundo disco rgido `/dev/hdb1' em `/mnt': `mount /dev/hdb1 /mnt -t msdos'. * Remontar a partio raz como somente leitura: `mount -o remount,rw /' * Remontar a partio raz como _leitura/gravao_ (a opo -n usada porque o `mount' no conseguir atualizar o arquivo `/etc/mtab' devido ao sistema de arquivos `/' estar montado como somente leitura atualmente: `mount -n -o remount,rw /'. 5.13.1. fstab ------------O arquivo `/etc/fstab' permite que as parties do sistema sejam montadas facilmente especificando somente o dispositivo ou o ponto de montagem. Este arquivo contm parmetros sobre as parties que so lidos pelo comando `mount'. Cada linha deste arquivo contm a partio que desejamos montar, o ponto de montagem, o sistema de arquivos usado pela partio e outras opes. `fstab' tem a seguinte
-89-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

forma: Sistema_de_arquivos /dev/hda1 /dev/hda2 /dev/hda3 /dev/hdg Ponto_de_Montagem / /boot /dos /cdrom Tipo ext2 ext2 msdos iso9660 Opes dump ordem defaults 0 1 defaults 0 2 defaults,noauto,rw 0 0 defaults,noauto 0 0

Onde: Sistema de Arquivos Partio que deseja montar. Ponto de montagem Diretrio do `GNU/Linux' onde a partio montada ser acessada. Tipo Tipo de sistema de arquivos usado na partio que ser montada. Para parties `GNU/Linux' use _ext2_, para parties `DOS' (sem nomes extensos de arquivos) use _msdos_, para parties `Win 95' (com suporte a nomes extensos de arquivos) use _vfat_, para unidades de CD-ROM use _iso9660_. Opes Especifica as opes usadas com o sistema de arquivos. Abaixo, algumas opes de montagem para ext2/3 (a lista completa pode ser encontrada na pgina de manual do `mount'): * `defaults' - Utiliza valores padres de montagem. * `noauto' - No monta os sistemas de arquivos durante a inicializao (til para CD-ROMS e disquetes). * `ro' - Monta como somente leitura. * `user' - Permite que usurios montem o sistema de arquivos (no recomendado por motivos de segurana). * `sync' recomendado para uso com discos removveis (disquetes, zip drives, etc) para que os dados sejam gravados imediatamente na unidade (caso no seja usada, voc deve usar o comando Section 10.22, `sync' antes de retirar o disquete da unidade. dump Especifica a frequncia de backup feita com o programa `dump' no sistema de arquivos. 0 desativa o backup. Ordem Define a ordem que os sistemas de arquivos sero verificados na inicializao do sistema. Se usar 0, o sistema de arquivos no verificado. O sistema de arquivos raz que dever ser verificado primeiro o raz "/" (a no ser que voc tenha um sistema de arquivos de outro tipo que no montado dentro do diretrio raz e possui seu suporte embutido no kernel) . Aps configurar o `/etc/fstab', basta digitar o comando `mount /dev/hdg' ou `mount /cdrom' para que a unidade de CD-ROM seja montada. Voc deve ter notado que no necessrio especificar o sistema de arquivos da partio pois o `mount' verificar se ele j existe no `/etc/fstab' e caso existir, usar as opes especificadas neste arquivo. Para maiores detalhes veja as pginas de manual `fstab' e `mount'.

5.14. Desmontando uma partio de disco --------------------------------------Para desmontar um sistema de arquivos montado com o comando `umount',
-90-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

use o comando `umount'. desmontar uma partio.

Voc deve ter permisses de root para

`umount [_dispositivo_/_ponto de montagem_]' Voc pode tanto usar `umount /dev/hda1' como `umount /mnt' para desmontar um sistema de arquivos `/dev/hda1' montado em `/mnt'. _Observao:_ O comando `umount' executa o `sync' automaticamente no momento da desmontagem para garantir que todos os dados ainda no gravados sero salvos.

-------------------------------------------------------------------------------

6. Gerenciadores de Partida (boot loaders) -----------------------------------------_Gerenciadores de Partida_ so programas que carregam um sistema operacional e/ou permitem escolher qual ser iniciado. Normalmente este programas so gravados no _setor de boot_ (inicializao) da partio ativa ou no _master boot record_ (MBR) do disco rgido. Este capitulo explica o funcionamento de cada um dos principais gerenciadores de partida usados no `GNU/Linux', em que situaes recomendado seu uso, as caractersticas, como configura-lo e alguns exemplos de configurao.

6.1. LILO --------O `LILO' (_Linux Loader_) sem dvida o gerenciador de partida padro para quem deseja iniciar o `GNU/Linux' atravs do disco rgido. Ele permite selecionar qual sistema operacional ser iniciado (caso voc possua mais de um) e funciona tanto em discos rgidos _IDE_ como _SCSI_. A seleo de qual sistema operacional e a passagem de parmetros ao kernel pode ser feita automaticamente ou usando o aviso de `boot:' do `LILO'. 6.1.1. Criando o arquivo de configurao do LILO -----------------------------------------------Os dados para a criao do novo _setor de boot_ que armazenar o gerenciador de partida so lidos do arquivo `/etc/lilo.conf' Este arquivo pode ser criado em qualquer editor de textos (como o `ae' ou `vi'). Normalmente ele criado durante a instalao de sua distribuio `GNU/Linux' mas por algum motivo pode ser preciso modifica-lo ou personaliza-lo (para incluir novos sistemas operacionais, mensagens, alterar o tempo de espera para a partida automtica, etc). O arquivo `/etc/lilo.conf' dividido em duas sees: _Geral_ e _Imagens_. A seo _Geral_ vem no inicio do arquivo e contm opes
-91-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

que sero usadas na inicializao do `Lilo' e parmetros que sero passados ao kernel. A seo _Imagens_ contm opes especificas identificando qual a partio que contm o sistema operacional, como ser montado inicialmente o sistema de arquivos, tabela de partio, o arquivo que ser carregado na memria para inicializar o sistema, etc. Abaixo um modelo do arquivo `/etc/lilo.conf' para sistemas que s possuem o `GNU/Linux' instalado: boot=/dev/hda1 compact install=text map=/boot/map vga=normal delay=20 lba32 image=/vmlinuz root=/dev/hda1 label=Linux read-only Para criar um novo gerenciador de partida atravs do arquivo `/etc/lilo.conf' , execute o comando `lilo'. No exemplo acima, o gerenciador de partida ser instalado em `/dev/hda1' (veja Section 5.12, `Identificao de discos e parties em sistemas Linux') , utilizar um setor de boot compacto (compact), modo de vdeo VGA normal (80x25), esperar 2 segundos antes de processar automaticamente a primeira seo `image=' e carregar o kernel `/vmlinux' de `/dev/hda1'. Para detalhes sobre opes que podem ser usadas neste arquivo veja Section 6.1.2, `Opes usadas no LILO'. Para mostrar o aviso de `boot:', voc dever ligar as teclas Caps Lock ou Scrool lock na partida ou pressionar a tecla `Shift' durante os dois segundos de pausa. Outro mtodo incluir a opo `prompt' na seo _global_ para que o aviso de `boot:' seja mostrado automaticamente aps carregar o `Lilo'. Abaixo uma configurao para computadores com mais de um sistema operacional (Usando `GNU/Linux' e `DOS'): boot=/dev/hda1 compact lba32 install=menu map=/boot/map vga=normal delay=20 prompt image=/vmlinuz root=/dev/hda1 label=linux read-only other=/dev/hda2
-92-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

table=/dev/hda label=dos O exemplo acima idntico ao anterior, o que foi acrescentado foi a opo `prompt' na seo _geral_ (para que seja mostrado imediatamente o aviso de `boot:' no momento em que o `LILO' for carregado), e includa uma imagem de disco `DOS' localizado em `/dev/hda2'. No momento da inicializao mostrada a mensagem `boot:' e caso seja digitado `DOS' e pressionado ENTER, o sistema iniciar o `DOS'. Caso a tecla Enter seja pressionada sem especificar a imagem, a primeira ser carregada (neste caso o `GNU/Linux'). Voc pode substituir a palavra `GNU/Linux' da opo `label' por o nmero `1' e `DOS' por `2', desta forma o nmero pode ser digitado para iniciar o sistema operacional. Isto muito til para construir um menu usando a opo `message'. Para detalhes veja Section 6.1.2, `Opes usadas no LILO'. A seo _Geral_ vem do inicio do arquivo at a palavra `delay=20'. partir do primeiro aparecimento da palavra `image', `other' ou `range', tudo o que vier abaixo ser interpretado como imagens de inicializao. A

Por padro, a imagem carregada a especificada por `default=' ou a primeira que aparece no arquivo (caso `default=' no seja especificado). Para carregar o outro sistema (o `DOS'), digite o nome da imagem de disco no aviso de `boot:' (especificada em `label=') que ser carregada. Voc tambm pode passar parmetros manualmente ao kernel digitando o nome da imagem de disco e uma opo do kernel ou atravs do arquivo `/etc/lilo.conf' (veja Section 6.1.2, `Opes usadas no LILO'). O `LILO' pode inicializar o seguintes tipos de imagens: * Imagens do kernel de um arquivo. Normalmente usado para iniciar o `GNU/Linux' pelo disco rgido e especificado pelo parmetro `image='. * Imagens do kernel de um dispositivo de bloco (como um disquete). Neste caso o nmero de setores a serem lidos devem ser especificados na forma _PRIMEIRO-LTIMO_ ou _PRIMEIRO+NMERO de setores a serem lidos_. necessrio especificar o parmetro `image=' e `range=', por exemplo: image=/dev/fd0 range=1+512 Todas as opes do kernel podem ser usadas na inicializao por dispositivo. * O setor de boot de outro sistema operacional (como o `DOS', `OS/2', etc). O setor de partida armazenado junto com a tabela de partio no arquivo `/boot/map'. necessrio especificar o parmetro `OTHER=dispositivo' ou `OTHER=arquivo' e a inicializao atravs de um setor de partida possui algumas opes especiais como o `TABLE=' (para especificar a tabela de partio) e o `MAP-DRIVE=' (identificao da unidade de discos pelo sistema operacional). Veja o exemplo desta configurao abaixo: other=/dev/hda2 table=/dev/hda
-93-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

label=DOS map-drive=0x80 to = 0x81 map-drive=0x81 to = 0x80 Observaes: * Caso o gerenciador de partida seja instalado no MBR do disco rgido (boot=/dev/hda), o setor de boot do antigo sistema operacional ser substitudo, retire uma cpia do setor de boot para um disquete usando o comando `dd if=/dev/hda of=/floppy/mbr bs=512 count=1' no `GNU/Linux' para salvar o setor de boot em um disquete e `dd if=/floppy/mbr of=/dev/hda bs=446 count=1' para restaura-lo. No `DOS' voc pode usar o comando `fdisk /mbr' para criar um novo Master Boot Record. * Aps qualquer modificao no arquivo `/etc/lilo.conf' , o comando `lilo' dever ser novamente executado para atualizar o setor de partida do disco rgido. Isto tambm vlido caso o kernel seja atualizado ou a partio que contm a imagem do kernel desfragmentada. * A limitao de 1024 cilindros do `Lilo' no existe mais a partir da verso 21.4.3 (recomendada, por conter muitas correes) e superiores. * A reinstalao, formatao de sistemas `DOS' e `Windows' pode substituir o setor de partida do HD e assim o gerenciador de partida, tornando impossvel a inicializao do `GNU/Linux'. Antes de reinstalar o `DOS' ou `Windows', verifique se possui um disquete de partida do `GNU/Linux'. Para gerar um novo boot loader, coloque o disquete na unidade e aps o aviso `boot:' ser mostrado, digite `linux root=/dev/hda1' (no lugar de `/dev/hda1' voc coloca a partio raiz do `GNU/Linux'), o sistema iniciar. Dentro do `GNU/Linux', digite o comando `lilo' para gerar um novo setor de partida. Agora reinicie o computador, tudo voltar ao normal. 6.1.2. Opes usadas no LILO ---------------------------Esta seo traz opes teis usadas no arquivo `lilo.conf' com explicaes sobre o que cada uma faz. As opes esto divididas em duas partes: As usadas na seo _Global_ e as da seo _Imagens_ do arquivo `lilo.conf'. `Global' * `backup=[arquivo/dispositivo]' - Copia o setor de partida original para o arquivo ou dispositivo especificado. * `boot=dispositivo' - Define o nome do dispositivo onde ser gravado o setor de partida do `LILO' (normalmente usada a partio ativa ou o Master Boot Record - MBR). Caso no seja especificado, o dispositivo montado como a partio raiz ser usado. * `compact' - Tenta agrupar requisies de leitura para setores seguintes ao sendo lido. Isto reduz o tempo de inicializao e deixa o mapa menor. normalmente recomendado em disquetes.
-94-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

* `default=imagem' - Usa a imagem especificada como padro ao invs da primeira encontrada no arquivo `lilo.conf'. * `delay=[num]' - Permite ajustar o nmero de segundos (em dcimos de segundos) que o gerenciador de partida deve aguardar para carregar a primeira imagem de disco (ou a especificada por `default='). Esta pausa lhe permite selecionar que sistema operacional ser carregado. * `install=interface' - Especifica que interface ser usada para exibio de menu com as opes de inicializao ao usurio. As seguintes opes so permitidas: * `text' - Exibe uma mensagem de texto (exibida atravs do parmetro _message=_) na tela. Esta a recomendada para terminais. * `menu' - Exibe um menu que lhe permite selecionar atravs de uma interface de menu a opo de inicializao. Esta a padro. * `bmp' - Exibe um bitmap grfico com a resoluo de 640x480 com 16 ou 256 cores. * `lba32' - Permite que o `LILO' quebre o limite de 1024 cilindros do disco rgido, inicializando o `GNU/Linux' em um cilindro acima deste atravs do acesso . Note que isto requer compatibilidade com o BIOS, mais especificamente que tenha suporte a chamadas int 0x13 e AH=0x42. recomendado o seu uso. * `map=arquivo-mapa' - Especifica a localizao do arquivo de mapa (`.map'). Se no for especificado, `/boot/map' usado. * `message=arquivo' - Especifica um arquivo que contm uma mensagem que ser mostrada antes do aviso de `boot:'. Nenhuma mensagem mostrada at que seja pressionada a tecla `Shift' aps mostrar a palavra `LILO'. O tamanho da mensagem deve ser no mximo 65535 bytes. O arquivo de mapa deve ser novamente criado caso a mensagem seja retirada ou modificada. Na mensagem, o caracter `FF' (CTRL+L) limpa a tela. * `nowarn' - No mostra mensagens de alerta. * `password=senha' - Permite proteger todas as imagens de disco com uma nica senha. Caso a senha esteja incorreta, o LILO novamente carregado. * `prompt' - Mostra imediatamente o aviso de `boot:' ao invs de mostrar somente quando a tecla `Shift' pressionada. * `verbose=[num]' - Ativa mensagens sobre o processamento do `LILO'. Os nmeros podem ser especificados de 1 a 5, quanto maior o nmero, maior a quantidade de detalhes mostrados. * `timeout=[num]' - Ajusta o tempo mximo de espera (em dcimos de segundos) de digitao no teclado. Se nenhuma tecla pressionada no tempo especificado, a primeira imagem automaticamente carregada. Igualmente a digitao de senha interrompida se o usurio estiver inativo por este perodo.
-95-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Adicionalmente as opes de imagem do kernel `append, ramdisk, read-only, read-write, root e vga' podem ser especificadas na seo _global_. `Opes por Imagem' As opes por imagem iniciam com uma das seguintes opes: `image=', `other=' ou `range='. Opes usadas por cada imagem: * `table=dispositivo' - Indica o dispositivo que contm a tabela de partio para aquele dispositivo. Necessrio apenas para imagens especificadas por `other='. * `unsafe' - No acessa o setor de boot no momento da criao do mapa. Isto desativa algumas checagens, como a checagem da tabela de partio. `unsafe' e `table=' so incompatveis. * `label=[nome]' - Permite especificar um nome para a imagem. Este nome ser usado na linha `boot:' para inicializar o sistema. * `alias=[nome]' - Apelido para a imagem de disco. segundo `label'. como um

* `optional' - Ignora a imagem caso no estiver disponvel no momento da criao do mapa. til para especificar kernels que no esto sempre presentes no sistema. * `password=senha' - Protege a imagem atual com a senha. Caso a senha esteja incorreta, o setor de partida do `Lilo' novamente carregado. * `restricted' - A senha somente pedida para iniciar a imagem se o sistema for iniciado no modo single. Tambm podem ser usados parmetros de inicializao do kernel no arquivo `/etc/lilo.conf', veja a seo Section 6.3, `Parmetros de inicializao passados ao kernel' para maiores detalhes. 6.1.3. Um exemplo do arquivo de configurao lilo.conf -----------------------------------------------------Abaixo um exemplo do arquivo `/etc/lilo.conf' que poder ser usado em instalaes `GNU/Linux' com o `DOS'. boot=/dev/hda1 #Instala o LILO em /dev/hda1 compact install=menu map=/boot/map message=/etc/lilo.message #mensagem que ser mostrada na tela default=1 #Carrega a Imagem especificada por label=1 como padro vga=normal #usa o modo de video 80x25 ao iniciar o Linux delay=20 #aguarda 2 segundos antes de iniciar a imagem padro lba32 #permite quebrar o limite de 1024 cilindros na inicializao prompt #mostra o aviso de "boot:" logo que o LILO carregado image=/vmlinuz root=/dev/hda1 label=1 #especifica o arquivo que contm a primeira imagem #partio onde a imagem acima esta localizada #identificao da imagem de disco
-96-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

read-only password=12345 restricted other=/dev/hda2 table=/dev/hda label=2 password=12345

#monta inicialmente como somente leitura #Usa a senha 12345 #somente quando iniciar com o parmetro single #especifica outro sistema que ser carregado #a tabela de partio dele est em /dev/hda #identificao desta imagem de disco #pede a senha antes de iniciar este sistema

Voc pode usar o exemplo acima como base para construir sua prpria configurao personalizada do `/etc/lilo.conf' mas no se esquea de modificar as tabelas de parties para seu sistema. Se voc usa o `Windows NT 4.0', `Windows NT 5.0 (Windows 2000)' ou o `OS/2', recomendo ler o `DOS+Windows+OS/2-HOWTO'. Aps criar seu arquivo `/etc/lilo.conf' , execute o comando `lilo' e se tudo ocorrer bem, o `LILO' ser instalado.

6.2. GRUB --------(Os detalhes contidos na seo sobre o `GRUB', foram integralmente desenvolvidos por Alexandre Costa <alebyte@bol.com.br> como contribuio ao guia FOCA GNU/Linux.) O `GRUB' (_Grand Unified Boot Loader_) mais uma alternativa como gerenciador de boot e apresenta alguns recursos extras com relao as outras opes disponveis. Ele flexvel, funcional e poderoso, podendo inicializar sistemas operacionais como o `Windows' (9x, ME, NT, 2000 e XP), `Dos', `Linux', `GNU Hurd', `*BSD', `OS/2' e etc. Podemos destacar tambm o suporte aos sistemas de arquivos ext2 (Linux), ext3 e reiserfs (novos sistemas de arquivos journaling do Linux), FAT16 e FAT32 (Win 9x/ME), FFS (Fast File System usado no *BSD), minix (MINIX OS) e etc. Por utilizar o padro Multiboot ele capaz de carregar diversas imagens de boot e mdulos. Por esse motivo ele o nico gerenciador de inicializao capaz de carregar o conjunto de servidores do GNU Hurd. O GRUB tambm permite buscar imagens do kernel pela rede, por cabo seriais, suporta discos rgidos IDE e SCSI, detecta toda a memria RAM disponvel no sistema, tem interface voltada para linha de comandos ou menus de escolha, alm de suportar sistemas sem discos e terminais remotos. Como possui inmeros recursos, ser apresentada sua utilizao bsica, ficando como sugesto ao leitor procurar se aprofundar mais em suas possibilidades de uso e configurao. 6.2.1. Como o GRUB trabalha com discos e parties -------------------------------------------------O GRUB trabalha com uma notao diferente para apontar discos e parties sendo necessrio algumas explicaes antes de prosseguir. Veja a tabela comparativa: No Linux No GRUB
-97-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

/dev/hda /dev/hda1 /dev/hda2 /dev/hdb /dev/hdb1 /dev/hdb2 /dev/sda /dev/sda1 /dev/sda2 /dev/sdb /dev/sdb1 /dev/sdb2 /dev/fd0

(hd0) (hd0,0) (hd0,1) (hd1) (hd1,0) (hd1,1) (hd0) # Disco SCSI ID 0 (hd0,0) # Disco SCSI ID 0, partio 1 (hd0,1) # Disco SCSI ID 0, partio 2 (hd1) # Disco SCSI ID 1 (hd1,0) # Disco SCSI ID 1, partio 1 (hd1,1) # Disco SCSI ID 1, partio 2 (fd0)

_OBS:_ Os discos _IDE_ e _SCSI_ so referenciados ambos como (`hd?') pelo `GRUB'. No h distino entre os discos e de modo geral a identificao de unidades IDE menor do que qualquer tipo de drive SCSI, salvo se voc alterar a seqncia de inicializao (boot) na BIOS. Para saber como o Linux trabalha com parties veja Section 5.12, `Identificao de discos e parties em sistemas Linux'. 6.2.2. Instalando o GRUB -----------------------A instalao do `GRUB' ao contrrio da instalao do `LILO' (Section 6.1, `LILO'), s precisa ser executada uma nica vez. Caso seja necessria alguma mudana como por exemplo adicionar uma nova imagem, esta pode ser feita apenas editando o arquivo de configurao `menu.lst'. 6.2.2.1. No MBR --------------Um mtodo simples de adicionar o `GRUB' para gerenciar seu MBR (_Master Boot Record_) rodando o seguinte comando (como superusurio): # /sbin/grub-install /dev/hda Este comando grava o `GRUB' no MBR do primeiro disco e cria o diretrio `/boot/grub' onde estaro os arquivos necessrios para o seu funcionamento. Neste ponto o `GRUB' j est instalado e quando voc reiniciar seu computador ir se deparar com uma linha de comandos, onde ter que carregar a imagem do kernel manualmente. Mais adiante ser explorada a utilizao desta linha de comando que muito eficiente. Provavelmente voc achar mais interessante copiar o arquivo de configurao de exemplos do `GRUB' e otimiz-lo s suas necessidades. Note que isto no exclui a possibilidade de utilizar a linha de
-98-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

comando, apenas cria uma interface de menus onde voc pode configurar vrias opes de boot de uma forma organizada, automatizada e funcional. Copie este arquivo para o diretrio `/boot/grub' com o seguinte comando: # cp /usr/share/doc/grub/examples/menu.lst /boot/grub Por ser um arquivo de exemplos ser necessrio otimiz-lo de acordo com suas necessidades, o que ser abordado mais a frente. 6.2.3. No disco flexvel (somente linha de comando) --------------------------------------------------Quando criamos um disquete de partida, este funcionar em um sistema qualquer, podendo utilizar este disquete em vrias mquinas diferentes ou em uma mquina em que tenha tido algum problema com o `GRUB' no MBR. Coloque um disquete virgem e digite os seguintes comandos: # dd if=/usr/lib/grub/i386-pc/stage1 of=/dev/fd0 count=1 # dd if=/usr/lib/grub/i386-pc/stage2 of=/dev/fd0 seek=1 Estes comandos permitem que seja apresentada a linha de comando do grub quando este disco for utilizado para boot. 6.2.4. No disco flexvel (com interface de menu) -----------------------------------------------Quando foi criado o disquete de partida anteriormente, este s nos permitia utilizar a linha de comando sendo necessrio carregar o `menu.lst' pelo disco rgido (o qual deve estar presente). Em alguns casos este disco satisfaz as necessidades bsicas mas pode haver um momento em que voc deseje ter um disquete que funcione com vrios sistema e no dependa de um disco fixo. Digite os seguintes comandos: # # # # # # # mke2fs /dev/fd0 mount /dev/fd0 /floppy -t ext2 mkdir /floppy/grub cp /usr/lib/grub/i386-pc/stage[12] /floppy/grub cp /usr/share/doc/grub/examples/menu.lst /floppy/grub umount /floppy /sbin/grub Digite

Este ltimo comando disponibiliza a linha de comando do GRUB. os seguintes comandos:

grub> install (fd0)/grub/stage1 d (fd0) (fd0)/grub/stage2 p (fd0)/grub/menu.lst grub> quit Neste momento o disquete est pronto. Note que o `menu.lst' que foi copiado para ele um arquivo de exemplo, sendo necessrio que voc o configure de acordo com suas necessidades. 6.2.5. Opes do arquivo de configurao ----------------------------------------

-99-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Esta seo descreve o arquivo `menu.lst' com explicaes sobre as opes mais usadas. Este arquivo dividido em parmetros Globais, que afetam o arquivo todo e parmetros que s tem efeito para as imagens do sistema que ser carregado. Algumas opes podem ser passadas para o kernel do Linux no momento do boot, algumas delas tambm sero detalhadas. Parmetros Globais * `timeout' = Define um tempo (em segundos) de espera. Se nenhuma tecla for pressionada, carrega a imagem padro. * `default' = Define qual ser a opo padro que deve ser automaticamente selecionada quando nenhuma outra for especificada em um tempo definido por timeout. * `fallback' = Caso ocorra algum erro inesperado e a opo padro no possa ser carregada, este parmetro define qual a outra opo deve ser utilizada. * `color' = Permite que voc escolha as cores usadas no menu de boot. * `password' = Permite que voc especifique uma senha. Est ser solicitada sempre que houver necessidade de realizar uma funo que no seja carregar as imagens disponveis, como por exemplo acessar a linha de comandos do GRUB. Voc pode utilizar tambm o parmetro password para esconder um arquivo que contenha outras configuraes, como um menu.lst secreto. O arquivo pode ter um nome qualquer. Ex.: password = senha (hd0,0)/boot/grub/secret.conf Voc pode ter vrias entradas do parmetro "password" em um mesmo arquivo sendo que uma delas usada para bloquear o acesso as imagens/linha de comandos e as outras usadas para carregar arquivos de opes do GRUB. Quando voc digitar `p' para entrar com a senha, voc pode digitar a senha que protege as imagens/linha de comandos ou a que utilizada para carregar os arquivos de opes. * `hiddenmenu' = Est opo faz com que o menu de opes no seja mostrado e de boot na imagem especificada por "default" depois de expirado o tempo definido em `timeout'. O usurio pode requisitar o menu com as opes pressionando a tecla <ESC> antes que o tempo definido em timeout expire. Parmetros que afetam apenas as imagens * `title' = Define um texto que ser apresentado no menu de boot para identificar o sistema a ser inicializado. * `root' = Determina qual a partio raiz do sistema a ser inicializada. * `rootnoverify' = Idntica a opo `root', mas no tenta montar a partio-alvo, o que necessrio para alguns sistemas como `Dos' e `Windows'. * `kernel' = Nesta opo voc informa qual o kernel vai ser inicializado. Voc pode passar parmetros diretamente para o kernel tambm. Ex.: kernel (hd0,0)/boot/vmlinuz-2.4.16 vga=6 * `module' = Faz com que algum mdulo necessrio para o boot seja carregado. Lembre-se que estes no so mdulos do kernel (mdulos de som, rede, etc.) e sim mdulos necessrios ao boot de alguns sistemas, como por exemplo o `GNU Hurd'. * `lock' = Quando voc quiser controlar se uma pessoa pode
-100-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

* * *

iniciar um sistema que esteja listado nas opes do menu de boot, voc pode utilizar esta opo que faz com que a senha especificada com o comando "password" seja solicitada no momento em que se tentar carregar a imagem em questo. `pause' = Emite uma mensagem na tela e espera uma tecla ser pressionada. `makeactive' = Torna a partio ativa. Este comando est limitado a parties primrias dos discos. `chainloader' = Alguns sistemas como o Windows ou Dos armazenam seu prprio gerenciador de boot no incio da partio em que ele est instalado. Para efetuar o boot destes sistemas atravs do GRUB, voc precisa pedir para que o gerenciador de boot de tal sistema seja carregado e faa seu trabalho, dando o boot. `hide' e `unhide' = Esconde e mostra partio respectivamente. Estas duas opes so necessrias quando houver mais de uma verso do Dos ou Windows na mquina em parties diferentes, j que estes sistemas detectam automaticamente a partio e quase sempre o fazem de modo errado. Suponha o Windows na primeira partio primria (hd0,0) e o Dos na segunda partio primria (hd0,1). Quando quisermos carregar estes sistemas devemos proceder da seguinte maneira: title Windows hide (hd0,1) unhide (hd0,0) rootnoverify (hd0,0) chainloader +1 makeactive

title Dos hide (hd0,0) unhide (hd0,1) rootnoverify (hd0,1) chainloader +1 makeactive * `map' = Alguns sistemas no permitem ser inicializados quando no esto no primeiro disco (Dos, Win 9x, etc.). Para resolver esta e outras situaes o `GRUB' tem um comando que permite enganar tal sistema mapeando as unidades de disco do modo como lhe for mais conveniente. Imagine que voc tenha o primeiro disco (hd0) com o GNU/Linux instalado e em um outro disco (hd1) com o Windows/Dos instalado. O Windows/Dos no permitem serem inicializados desta forma e como soluo voc poderia usar a seguinte entrada no arquivo de configuraes do GRUB: title Windows unhide (hd1,0) rootnoverify (hd1,0) chainloader +1 map (hd1) (hd0) makeactive Isso faz com que o disco (hd1), onde esta o Windows/Dos, seja apresentado a este sistema como (hd0) "enganado" o mesmo e possibilitando o boot. Parmetros enviados diretamente ao kernel
-101-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Pode ser necessrio passar alguns parmetros para o kernel no momento do boot. Para maiores informaes ver a seo Section 6.3, `Parmetros de inicializao passados ao kernel'. Voc pode passar os parmetros da seguinte maneira: # Exemplo de entrada no 'menu.lst'. title Linux 2.4.16 root (hd0,0) kernel (hd0,0)/boot/vmlinuz-2.4.16 vga=6 mem=512M ramdisk=0 Neste exemplo, a linha com o comando "kernel" usada para indicar qual imagem deve ser carregada. As opes que seguem (vga, mem e ramdisk) so parmetros que devem ser passados diretamente ao kernel do sistema a ser carregado. 6.2.6. Um exemplo de arquivo de configurao -------------------------------------------# Exemplo de arquivo de configurao do GRUB. # Note que voc pode usar o caracter '#' para fazer comentrios. # Se aps 30 segundos nenhuma tecla for pressionada, carrega a imagem padro. timeout 30 # Define a primeira imagem como padro. default 0 # Caso a imagem padro no funcione carrega a imagem definida aqui. fallback 1 # Define as cores que sero usadas no menu. color light-cyan/black white/blue # Permite utilizar uma senha. password minha-senha-secreta password minha-senha (hd0,0)/boot/grub/secret.conf # Para boot com o GNU/Hurd title GNU/Hurd root (hd0,0) kernel /boot/gnumach.gz root=hd0s1 module /boot/serverboot.gz # Para boot com o GNU/Linux title Linux 2.4.16 # Pede a senha configurada em "password" antes de carregar esta imagem. lock root (hd0,0) # Atente as opes passadas diretamente para o kernel (vga, mem, etc.). kernel (hd0,0)/boot/vmlinuz-2.4.16 vga=6 mem=512M ramdisk=0 # Para boot com o Mach (obtendo o kernel de um disquete) title Utah Mach4 multiboot root (hd0,2) pause Insira o disquete agora!!! kernel (fd0)/boot/kernel root=hd0s3 module (fd0)/boot/bootstrap
-102-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

# Para boot com FreeBSD title FreeBSD 3.4 root (hd0,2,a) kernel /boot/loader # Para boot com OS/2 title OS/2 root (hd0,1) makeactive chainloader +1 chainloader /boot/chain.os2 # Para boot com Windows 9x, ME, NT, 2000, XP. title Windows 9x, ME, NT, 2000, XP unhide (hd0,0) rootnoverify (hd0,0) chainloader +1 makeactive # Para instalar o GRUB no disco rgido. title = Instala o GRUB no disco rgido root = (hd0,0) setup = (hd0) # Muda as cores. title Mudar as cores color light-green/brown blink-red/blue 6.2.7. Usando a linha de comandos do GRUB ----------------------------------------O `GRUB' possui inmeros recursos, mas com certeza um dos mais importantes e que merece destaque sua linha de comandos. A maioria dos comandos usados no arquivo de configurao `menu.lst' so vlidos aqui e muitos outros esto disponveis. Uma breve apresentao da linha de comandos ser dada, ficando por conta do leitor se aprofundar o quanto achar necessrio em sua flexibilidade. Quando o `GRUB' inicializado voc pode se deparar com sua linha de comandos ou se possuir o arquivo `menu.lst' configurado, um menu de escolha. Mesmo usando os menus de escolha voc pode utilizar a linha de comandos, bastando para isso seguir as instrues no rodap da tela onde o `GRUB' nos informa que podemos digitar `e' para editar as entradas de boot ou `c' para ter acesso a linha de comandos (lembre-se que pressionar `<ESC>' faz com que voc volte aos menus de escolha). Caso a opo `password' tenha sido especificada no arquivo `menu.lst', ser necessrio antes de acessar as outras opes (que estaro desabilitadas) pressionar `p' e entrar com a senha correta. Agora, com acesso a linha de comandos, voc pode verificar os comandos disponveis pressionando duas vezes a tecla <TAB>. Note que voc tambm pode utilizar esta tecla para completar nomes de comandos bem como parmetros de alguns comandos. Alguns comandos disponveis:
-103-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

* `cat' = Este comando permite verificar o contedo de um arquivo qualquer, o qual deve estar gravado em um dispositivo ligado a sua mquina. Embora seja um recurso til, nenhuma permisso de acesso verificada e qualquer pessoa que tenha acesso a linha de comandos do GRUB pode listar o contedo de arquivos importantes. Para contornar este problema o parmetro `password' utilizado no arquivo `menu.lst' e faz com que uma senha seja solicitada antes de liberar o acesso a linha de comandos. No esquea que ainda possvel utilizar um disquete com o `GRUB' para dar boot na mquina o que permite usar a linha de comandos pelo disquete. Ex.: grub> cat (hd0,0)/etc/passwd * `cmp' = Este comando utilizado para comparar dois arquivos. Ex.: grub> cmp (hd0,0)/arquivo1 (hd0,0)/arquivo2 * `configfile' = Carrega um arquivo de configurao do GRUB. Ex.: grub> configfile (hd0,0)/boot/grub/menu.lst * `displayapm' = Mostra informaes sobre APM. * `displaymem' = Mostra informaes sobre a memria RAM. * `find' = Permite encontrar um arquivo. A sada deste comando disponibiliza o nome completo do caminho para o arquivo e a partio onde o mesmo est localizado. Ex.: grub> find stage1 * `geometry' = Mostra informaes sobre a geometria reconhecida de seu drive e permite que voc escolha a geometria desejada caso esta esteja sendo reconhecida erroneamente. * `help' = help "comando" para ver a ajuda. Ex.: help color * `install' = Instala o GRUB, embora no seja recomendado o uso deste comando diretamente, pois possvel esquecer ou trocar facilmente um parmetro e sobrescrever a tabela de parties de seu disco. Ex.: install (fd0)/grub/stage1 d (fd0) (fd0)/grub/stage2 p (fd0)/grub/menu.lst * `setup' = Voc pode usar este comando para instalar o GRUB. Note que sua sintaxe menos complexa do que a usada em `install'. Ex.: grub> root = (hd0,0) grub> setup = (hd0) * `quit' = Abandona a linha de comandos do GRUB. * `reboot' = Reinicia o computador. * `boot' = Efetua o boot. Suponha o Linux instalado em (hd0,0), podemos passar os seguintes comandos na linha de comandos para efetuar o boot de uma imagem do GNU/Linux: grub> root (hd0,0) grub> kernel (hd0,0)/boot/vmlinuz-2.4.16 vga=6 grub> boot Muitos outros comandos esto disponveis tanto na linha de comandos do `GRUB' quanto no arquivo de configurao `menu.lst'. Estes comandos adicionais podem ser necessrios apenas para algumas pessoas e por isso no sero explicados. 6.2.8. Removendo o GRUB do MBR -----------------------------No existe a necessidade de se remover o `GRUB' do MBR pois no h utilizao para o mesmo vazio. Para substituir o `GRUB' do MBR necessrio apenas que outro gerenciador de boot escreva algo nele. Voc pode seguir o procedimento de instalao do `LILO' para escrever algo no MBR ou usar o comando `fdisk /mbr' do DOS.
-104-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

6.2.9. Como obter informaes mais detalhadas --------------------------------------------Para obter informaes mais detalhadas sobre o `GRUB' recomendado o site oficial do mesmo, o qual est disponvel apenas na lngua inglesa. Os seguintes sites foram utilizados na pesquisa: * Site oficial do GRUB: http://www.gnu.org/software/grub/ * Site Debian-br (http://debian-br.cipsga.org.br/), na parte de suporte, documentao, "Como usar o GRUB: Um guia rpido para usar o GRUB, feito por Vitor Silva Souza e Gustavo Noronha Silva".

6.3. Parmetros de inicializao passados ao kernel --------------------------------------------------Abaixo algumas das opes mais usadas para passar parmetros de inicializao de hardware/caractersticas ao kernel. * `append=string' - Passa os parmetros especificados ao kernel. extremamente til para passar parmetros de hardwares que podem ter problemas na hora da deteco ou para parmetros que precisam ser passados constantemente ao kernel atravs do aviso `boot:'. Exemplo: `append="mem=32m"' * `ramdisk=tamanho' - Especifica o tamanho do disco RAM que ser criado. Caso for igual a zero, nenhum disco RAM ser criado. Se no for especificado, o tamanho do disco RAM usado na imagem de inicializao do kernel ser usada. * `read-only' - Especifica que o sistema de arquivos raiz dever ser montado como somente leitura. Normalmente o sistema de inicializao remonta o sistema de arquivos como leitura/gravao. * `read-write' - Especifica que o sistema de arquivos raiz dever ser montado como leitura e gravao. * `root=dispositivo' - Especifica o dispositivo que ser montado como raiz. Se a palavra `current' usada, o dispositivo atual ser montado como raiz. * `vga=modo' - Especifica o mode de video texto que ser usado durante a inicializao. * `normal' - Usa o modo 80x25 (80 colunas por 25 linhas) * `extended' (ou ext) - Usa o modo de texto 80x50 * `ask' - Pergunta que modo de video usar na inicializao. Os modos de vdeo podem ser obtidos pressionando-se enter quando o sistema perguntar o modo de vdeo. Uma lista mais detalhada de parmetros de inicializao pode ser obtida no documento `Boot-prompt-howto'.

6.4. syslinux
-105-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

------------Outro gerenciador de partida que funciona somente com sistemas de arquivos `DOS'. A principal diferena do `syslinux' em relao ao `LOADLIN' que foi feito especialmente para funcionar em disquetes formatados no `DOS', facilitando a instalao do `GNU/Linux' e para a criao de disquetes de recuperao ou de inicializao. Um disquete gerado pelo `syslinux' lido sem problemas pelo `DOS'/`Windows'. `syslinux [-s] [_dispositivo_]' A opo `-s' instala no disquete uma verso segura, lenta e estpida do `syslinux'. Isto necessrio para algumas `BIOS' problemticas. 6.4.1. Criando um disquete de inicializao com o syslinux ---------------------------------------------------------Siga os passos abaixo para criar um disquete de inicializao com o `syslinux': 1. Formate o disquete no `DOS' ou com alguma ferramenta `GNU/Linux' que faa a formatao de disquetes para serem usados no `DOS'. Copie um ou mais arquivos de `kernel' para o disquete Digite `syslinux /dev/fd0' (lembre-se de usar a opo `-s' se tiver problemas de inicializao). Este comando modificar o setor de partida do disquete e gravar um arquivo chamado `LDLINUX.SYS' no diretrio raiz do disquete. Lembre-se: O disquete deve estar desmontado antes de usar o comando `syslinux', caso o disquete estiver montado uma mensagem ser mostrada e o `syslinux' abortado. Por padro carregado o kernel de nome `GNU/Linux'. Este padro pode ser modificado atravs do arquivo de configurao `SYSLINUX.CFG' que tambm gravado no diretrio raiz do disquete. Veja Section 6.4.2, `O arquivo SYSLINUX.CFG' para detalhes. Se as teclas Caps Lock ou Scrool Lock estiverem ligadas ou Shift, Alt forem pressionadas durante o carregamento do `syslinux', o `syslinux' mostrar um aviso de `boot:' no estilo do `LILO'. O usurio pode ento digitar o nome do kernel seguido de qualquer parmetro para inicializar o `GNU/Linux'. 6.4.2. O arquivo SYSLINUX.CFG ----------------------------Este arquivo criado no diretrio raiz da unidade de disquete e contm as opes que sero usadas para modificar o funcionamento do `syslinux'. Abaixo a listagem de opes que podem ser especificadas neste arquivo: default [kernel] [opes] Indica o nome do kernel e as opes dele que sero usadas na inicializao, caso `syslinux' seja iniciado automaticamente. Caso no for especificado, o assumido para o kernel ser `GNU/Linux' sem nenhuma opo de inicializao.
-106-

2. 3.

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

append [opes] Passa uma ou mais opes ao kernel na inicializao. Elas sero adicionadas automaticamente para inicializaes automticas e manuais do `syslinux'. label [nome] kernel [kernel] append [opes] Nome que identificar o kernel no aviso de `boot:' (idntica a opo `label=' do `LILO'). Se a imagem especificada por `nome' for selecionada, o kernel usado ser o especificado pelo parmetro `kernel' e as opes usadas por `append'. Caso seja passado um hfen `-' ao parmetro `append', os parmetros passados pelo `append' global sero anulados. implicit [valor] Se o [valor] for igual a 0, no carrega a imagem at que seja explicitamente especificada na opo `label'. timeout [tempo] Indica quanto tempo o `syslinux' aguardar antes de inicializar automaticamente (medido em 1/10 de segundos). Caso alguma tecla seja pressionada, a inicializao automtica interrompida. Para desativar esta caracterstica, use 0 como `timeout'. O valor mximo de 35996. font [nome] Especifica uma fonte (em formato `.psf') que ser usada para mostrar as mensagens do `syslinux' (aps o aviso de copyright do programa). Ele carrega a fonte para a placa de vdeo, se a fonte conter uma tabela unicode, ela ser ignorada. Somente funciona em placas EGA e VGA. kbdmap [mapa] Instala um simples mapa de teclado. O mapa de teclados usado muito simples: somente remapeia cdigos conhecidos pela `BIOS', o que significa que somente teclas usadas no teclado padro EUA sero usadas. O utilitrio `keytab-lilo.pl' da distribuio do `lilo' pode ser usado para criar tais mapas de teclado. prompt [valor] Se [valor] for igual a 1, mostra automaticamente o aviso de `boot:' assim que o `syslinux' for iniciado. Caso seja igual a 0, mostra o aviso de `boot:' somente se as teclas Shift ou Alt forem pressionadas ou Caps Lock e Scrool Lock estiverem ativadas. display [arquivo] Mostra o contedo do [arquivo] durante a inicializao do `syslinux'. F1 [arquivo] F2 [arquivo] ... F0 [arquivo] Especifica que arquivos sero mostrados quando as teclas de F1 at F10 forem pressionadas.

-------------------------------------------------------------------------------

7. Execuo de programas ------------------------

-107-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Este captulo explica como executar programas no `GNU/Linux' e o uso das ferramentas de controle de execuo dos programas.

7.1. Executando um comando/programa ----------------------------------Para executar um comando, necessrio que ele tenha permisses de execuo (veja Section 13.2, `Tipos de Permisses de acesso' e Section 8.1, `ls') e que esteja no caminho de procura de arquivos (veja Section 7.2, `path'). No aviso de comando _#_(root) ou _$_(usurio), digite o nome do comando e tecle Enter. O programa/comando executado e receber um nmero de identificao (chamado de PID - Process Identification), este nmero til para identificar o processo no sistema e assim ter um controle sobre sua execuo (ser visto mais adiante neste captulo). Todo o programa recebe uma identificao de usurio (UID) quando executado o que determina quais sero suas permisses de acesso durante sua execuo. O programa normalmente usa o UID do usurio que o executou ou o usurio configurado pelo bit de permisso de acesso SUID caso estiver definido. Existem tambm programas que so executados como root e modificam sua identificao de usurio para algum que tenha menos privilgios no sistema (como o `Apache', por exemplo). Para maiores detalhes veja Chapter 13, `Permisses de acesso a arquivos e diretrios'. Todo o programa executado no `GNU/Linux' roda sob o controle das permisses de acesso. Recomendo ver mais tarde o Chapter 13, `Permisses de acesso a arquivos e diretrios'. Exemplos de comandos: `ls', `df', `pwd'.

7.2. path --------Path o caminho de procura dos arquivos/comandos executveis. O path (caminho) armazenado na varivel de ambiente `PATH'. Voc pode ver o contedo desta varivel com o comando `echo $PATH'. Por exemplo, o caminho `/usr/local/bin:/usr/bin:/bin:/usr/bin/X11' significa que se voc digitar o comando `ls', o interpretador de comandos iniciar a procura do programa `ls' no diretrio `/usr/local/bin', caso no encontre o arquivo no diretrio `/usr/local/bin' ele inicia a procura em `/usr/bin', at que encontre o arquivo procurado. Caso o interpretador de comandos chegue at o ltimo diretrio do path e no encontre o arquivo/comando digitado, mostrada a seguinte mensagem: `bash: ls: command not found' (comando no encontrado). O caminho de diretrios vem configurado na instalao do Linux, mas
-108-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

pode ser alterado no arquivo `/etc/profile'. Caso deseje alterar o caminho para todos os usurios, este arquivo o melhor lugar, pois ele lido por todos os usurios no momento do login. Caso um arquivo/comando no esteja localizado em nenhum dos diretrios do path, voc deve executa-lo usando um `./' na frente do comando. Se deseja alterar o `path' para um nico usurio, modifique o arquivo `.bash_profile' em seu diretrio de usurio (home). _OBSERVAO:_ Por motivos de segurana, no inclua o diretrio atual `$PWD' no `path'.

7.3. Tipos de Execuo de comandos/programas -------------------------------------------Um programa pode ser executado de duas formas: 1. `Primeiro Plano' - Tambm chamado de _foreground_. Quando voc deve esperar o trmino da execuo de um programa para executar um novo comando. Somente mostrado o aviso de comando aps o trmino de execuo do comando/programa. 2. `Segundo Plano' - Tambm chamado de _background_. Quando voc no precisa esperar o trmino da execuo de um programa para executar um novo comando. Aps iniciar um programa em _background_, mostrado um nmero PID (identificao do Processo) e o aviso de comando novamente mostrado, permitindo o uso normal do sistema. O programa executado em background continua sendo executado internamente. Aps ser concludo, o sistema retorna uma mensagem de pronto acompanhado do nmero PID do processo que terminou. Para iniciar um programa em `primeiro plano', basta digitar seu nome normalmente. Para iniciar um programa em `segundo plano', acrescente o caracter `"&"' aps o final do comando. OBS: Mesmo que um usurio execute um programa em segundo plano e saia do sistema, o programa continuar sendo executado at que seja concludo ou finalizado pelo usurio que iniciou a execuo (ou pelo usurio root). Exemplo: `find / -name boot.b &' O comando ser executado em segundo plano e deixar o sistema livre para outras tarefas. Aps o comando `find' terminar, ser mostrada uma mensagem.

7.4. Executando programas em seqncia -------------------------------------Os comandos podem ser executados em seqncia (um aps o trmino do outro) se os separarmos com ";". Por exemplo: `echo primeiro;echo segundo;echo terceiro'

7.5. ps
-109-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

------Algumas vezes til ver quais processos esto sendo executados no computador. O comando `ps' faz isto, e tambm nos mostra qual usurio executou o programa, hora que o processo foi iniciado, etc. `ps [_opes_]' Onde: _opes_ a Mostra os processos criados por voc e de outros usurios do sistema. x Mostra processos que no so controlados pelo terminal. u Mostra o nome de usurio que iniciou o processo e hora em que o processo foi iniciado. m Mostra a memria ocupada por cada processo em execuo. f Mostra a rvore de execuo de comandos (comandos que so chamados por outros comandos). e Mostra variveis de ambiente no momento da inicializao do processo. w Mostra a continuao da linha atual na prxima linha ao invs de cortar o restante que no couber na tela. --sort:_[coluna]_ Organiza a sada do comando `ps' de acordo com a coluna escolhida. Voc pode usar as colunas `pid, utime, ppid, rss, size, user, priority'. Pode ser especificada uma listagem em ordem inversa especificando `--sort:[-coluna]'. Para mais detalhes e outras opes, veja a pgina de manual. As opes acima podem ser combinadas para resultar em uma listagem mais completa. Voc tambm pode usar pipes "|" para `filtrar' a sada do comando `ps'. Para detalhes, veja Section 14.5, `| (pipe)'. Ao contrrio de outros comandos, o comando `ps' no precisa do hfen "-" para especificar os comandos. Isto porque ele no utiliza opes longas e no usa parmetros. Exemplos: `ps', `ps ax|grep inetd', `ps auxf', `ps auxw'.

7.6. top -------Mostra os programas em execuo ativos, parados, tempo usado na CPU, detalhes sobre o uso da memria RAM, Swap, disponibilidade para execuo de programas no sistema, etc. `top' um programa que continua em execuo mostrando continuamente os processos que esto rodando em seu computador e os recursos utilizados por eles. Para sair do `top', pressione a tecla `q'.
-110-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

`top [_opes_]' Onde: -d [tempo] Atualiza a tela aps o [tempo] (em segundos). -s Diz ao `top' para ser executado em modo seguro. -i Inicia o `top' ignorando o tempo de processos zumbis. -c Mostra a linha de comando ao invs do nome do programa. A ajuda sobre o `top' pode ser obtida dentro do programa pressionando a tecla `h' ou pela pgina de manual (`man top'). Abaixo algumas teclas teis: * `espao' - Atualiza imediatamente a tela. * `CTRL'+`L' - Apaga e atualiza a tela. * `h' - Mostra a tela de ajuda do programa. teclas que podem ser usadas com o `top'. mostrado todas as

* `i' - Ignora o tempo ocioso de processos zumbis. * `q' - Sai do programa. * `k' - Finaliza um processo - semelhante ao comando `kill'. Voc ser perguntado pelo nmero de identificao do processo (PID). Este comando no estar disponvel caso esteja usando o `top' com a opo `-s'. * `n' - Muda o nmero de linhas mostradas na tela. Se 0 for especificado, ser usada toda a tela para listagem de processos.

7.7. Controle de execuo de processos -------------------------------------Abaixo algumas comandos e mtodos teis para o controle da execuo de processos no `GNU/Linux'. 7.7.1. Interrompendo a execuo de um processo ---------------------------------------------Para cancelar a execuo de algum processo `rodando em primeiro plano', basta pressionar as teclas `CTRL'+`C'. A execuo do programa ser cancelada e ser mostrado o aviso de comando. Voc tambm pode usar o comando Section 7.7.6, `kill' para interromper um processo sendo executado. 7.7.2. Parando momentaneamente a execuo de um processo -------------------------------------------------------Para parar a execuo de um processo rodando em primeiro plano, basta pressionar as teclas `CTRL'+`Z'. O programa em execuo ser pausado
-111-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

e ser mostrado o nmero de seu job e o aviso de comando. Para retornar a execuo de um comando pausado, use Section 7.7.4, `fg' ou Section 7.7.5, `bg'. O programa permanece na memria no ponto de processamento em que parou quando ele interrompido. Voc pode usar outros comandos ou rodar outros programas enquanto o programa atual est interrompido. 7.7.3. jobs ----------O comando `jobs' mostra os processos que esto parados ou rodando em _segundo plano_. Processos em segundo plano so iniciados usando o smbolo `"&"' no final da linha de comando (veja Section 7.3, `Tipos de Execuo de comandos/programas') ou atravs do comando `bg'. `jobs' O nmero de identificao de cada processo parado ou em segundo plano (job), usado com os comandos Section 7.7.4, `fg' e Section 7.7.5, `bg'. Um processo interrompido pode ser finalizado usando-se o comando `kill %[num]', onde `[num]' o nmero do processo obtido pelo comando `jobs'. 7.7.4. fg --------Permite fazer um programa rodando em segundo plano ou parado, rodar em primeiro plano. Voc deve usar o comando `jobs' para pegar o nmero do processo rodando em segundo plano ou interrompida, este nmero ser passado ao comando `fg' para ativa-lo em primeiro plano. `fg [_nmero_]' Onde _nmero_ o nmero obtido atravs do comando `jobs'. Caso seja usado sem parmetros, o `fg' utilizar o ltimo programa interrompido (o maior nmero obtido com o comando `jobs'). Exemplo: `fg 1'. 7.7.5. bg --------Permite fazer um programa rodando em primeiro plano ou parado, rodar em segundo plano. Para fazer um programa em primeiro plano rodar em segundo, necessrio primeiro interromper a execuo do comando com `CTRL'+ `Z', ser mostrado o nmero da tarefa interrompida, use este nmero com o comando `bg' para iniciar a execuo do comando em segundo plano. `bg [_nmero_]' Onde: _nmero_ nmero do programa obtido com o pressionamento das teclas `CTRL'+`Z' ou atravs do comando `jobs'.

-112-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

7.7.6. kill ----------Permite enviar um sinal a um comando/programa. Caso seja usado sem parmetros, o `kill' enviar um sinal de trmino ao processo sendo executado. `kill [_opes_] [_sinal_] [_nmero_]' Onde: _nmero_ o nmero de identificao do processo obtido com o comando Section 7.5, `ps'. Tambm pode ser o nmero aps o sinal de `%' obtido pelo comando `jobs' para matar uma tarefa interrompida. Veja Section 7.7.3, `jobs'. _sinal_ Sinal que ser enviado ao processo. Se omitido usa `-15' como padro. _opes_ -9 Envia um sinal de destruio ao processo ou programa. Ele terminado imediatamente sem chances de salvar os dados ou apagar os arquivos temporrios criados por ele. Voc precisa ser o dono do processo ou o usurio root para termina-lo ou destru-lo. Voc pode verificar se o processo foi finalizado atravs do comando `ps'. Os tipos de sinais aceitos pelo `GNU/Linux' so explicados em detalhes em Section 7.7.9, `Sinais do Sistema'. Exemplo: `kill 500', `kill -9 500', `kill %1'. 7.7.7. killall -------------Permite finalizar processos atravs do nome. `killall [_opes_] [_sinal_] [_processo_]' Onde: _processo_ Nome do processo que deseja finalizar _sinal_ Sinal que ser enviado ao processo (pode ser obtido usando a opo `-i'). _opes_ -i Pede confirmao sobre a finalizao do processo. -l Lista o nome de todos os sinais conhecidos. -q Ignora a existncia do processo. -v Retorna se o sinal foi enviado com sucesso ao processo. -w Finaliza a execuo do `killall' somente aps finalizar todos os processos. Os tipos de sinais aceitos pelo `GNU/Linux' so explicados em detalhes na Section 7.7.9, `Sinais do Sistema'.
-113-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Exemplo: `killall -HUP inetd' 7.7.8. killall5 --------------Envia um sinal de finalizao para todos os processos sendo executados. `killall5 [_sinal_]' 7.7.9. Sinais do Sistema -----------------------Retirado da pgina de manual `signal'. O `GNU/Linux' suporta os sinais listados abaixo. Alguns nmeros de sinais so dependentes de arquitetura. Primeiro, os sinais descritos no _POSIX 1_: Sinal Valor Ao Comentrio --------------------------------------------------------------------------HUP 1 A Travamento detectado no terminal de controle ou finalizao do processo controlado INT 2 A Interrupo atravs do teclado QUIT 3 C Sair atravs do teclado ILL 4 C Instruo Ilegal ABRT 6 C Sinal de abortar enviado pela funo abort FPE 8 C Exceo de ponto Flutuante KILL 9 AEF Sinal de destruio do processo SEGV 11 C Referncia Invlida de memria PIPE 13 A Pipe Quebrado: escreveu para o pipe sem leitores ALRM 14 A Sinal do Temporizador da chamada do sistema alarm TERM 15 A Sinal de Trmino USR1 30,10,16 A Sinal definido pelo usurio 1 USR2 31,12,17 A Sinal definido pelo usurio 2 CHLD 20,17,18 B Processo filho parado ou terminado CONT 19,18,25 Continuar a execuo, se interrompido STOP 17,19,23 DEF Interromper processo TSTP 18,20,24 D Interromper digitao no terminal TTIN 21,21,26 D Entrada do terminal para o processo em segundo plano TTOU 22,22,27 D Sada do terminal para o processo em segundo plano As letras da coluna `Ao' tem o seguinte significado: * `A' - A ao padro terminar o processo. * `B' - A ao padro ignorar o sinal. * `C' - A ao padro terminar o processo e mostrar o core. * `D' - A ao padro parar o processo. * `E' - O sinal no pode ser pego. * `F' - O sinal no pode ser ignorado. Sinais no descritos no _POSIX 1_ mas descritos na _SUSv2_: Sinal Valor Ao Comentrio ------------------------------------------------------------------------BUS 10,7,10 C Erro no Barramento (acesso incorreto da memria) POLL A Evento executado em Pool (Sys V). Sinnimo de IO PROF 27,27,29 A Tempo expirado do Profiling SYS 12,-,12 C Argumento invlido para a rotina (SVID)
-114-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

TRAP URG VTALRM XCPU XFSZ

5 16,23,21 26,26,28 24,24,30 25,25,31

C B A C C

Captura do trao/ponto de interrupo Condio Urgente no soquete (4.2 BSD) Alarme virtual do relgio (4.2 BSD) Tempo limite da CPU excedido (4.2 BSD) Limite do tamanho de arquivo excedido (4.2 BSD)

(Para os casos SIGSYS, SIGXCPU, SIGXFSZ, e em algumas arquiteturas tambm o SIGGUS, a ao padro do Linux para kernels 2.3.27 e superiores A (terminar), enquanto SYSv2 descreve C (terminar e mostrar dump core).) Seguem vrios outros sinais: Sinal Valor Ao Comentrio -------------------------------------------------------------------IOT 6 C Trao IOT. Um sinnimo para ABRT EMT 7,-,7 STKFLT -,16,A Falha na pilha do processador IO 23,29,22 A I/O agora possvel (4.2 BSD) CLD -,-,18 Um sinnimo para CHLD PWR 29,30,19 A Falha de fora (System V) INFO 29,-,Um sinnimo para SIGPWR LOST -,-,A Perda do bloqueio do arquivo WINCH 28,28,20 B Sinal de redimensionamento da Janela (4.3 BSD, Sun) UNUSED -,31,A Sinal no usado (ser SYS) O "-" significa que o sinal no est presente. Onde trs valores so listados, o primeiro normalmente vlido para o Alpha e Sparc, o do meio para i386, PowerPc e sh, o ltimo para o Mips. O sinal 29 SIGINFO/SIGPWR em um Alpha mas SIGLOST em um Sparc.

7.8. nohup ---------Executa um comando ignorando os sinais de interrupo. O comando poder ser executado at mesmo em segundo plano caso seja feito o logout do sistema. `nohup [_comando que ser executado_]' As mensagens de sada do `nohup' so direcionadas para o arquivo `$HOME/nohup.out'. Exemplo: `nohup find / -uid 0 >/tmp/rootfiles.txt &'.

7.9. nice --------Configura a prioridade da execuo de um comando/programa. `nice [_opes_] [_comando/programa_]' Onde: _comando/programa_ Comando/programa que ter sua prioridade ajustada. _opes_ -n [numero]
-115-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Configura a prioridade que o programa ser executado. Se um programa for executado com maior prioridade, ele usar mais recursos do sistema para seu processamento, caso tenha uma prioridade baixa, ele permitir que outros programas tenham preferncia. A prioridade de execuo de um _programa/comando_ pode ser ajustada de -19 (a mais alta) at 19 (a mais baixa). Exemplo: `nice -n -19 find / -name apropos'.

7.10. fuser ----------Permite identificar e fechar os processos que esto utilizando arquivos e soquetes no sistema. `fuser [_opes_] [_nome_]' Onde: _nome_ Especifica um nome de processo, diretrio, arquivo, etc. _opes_ -k Finaliza os processos acessando o arquivo especificado. O sinal desejado deve ser especificado com a opo `-signal [num]', ou o sinal -9 ser enviado como padro. No possvel matar o prprio processo `fuser'. -i Pergunta antes de destruir um processo. Ser ignorada caso a opo `-k' no seja especificada. -l Lista todos os nomes de sinais conhecidos. -m [nome] Especifica um arquivo em um sistema de arquivos montado ou dispositivo de bloco que est montado. Todos os processos acessando aquele sistema de arquivos sero listados. Diretrios so mostrados seguidos de uma `/' -signal [nmero] Usa o sinal especificado ao invs de -9 (SIGKILL) quando finalizar processos. -u Acrescenta o nome do dono de cada processo ao PID. -v Os processos so mostrados em um estilo idntico ao `ps'.

7.11. tload ----------Representa de forma grfica a carga do sistema. `tload [_opes_]' Onde: _opes_ -s [nmero] Mostra uma escala vertical com espaamento especificado por
-116-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

[nmero]. recomendvel o uso de nmeros entre 1 e 10 para melhor visualizao da escala. -d [nmero] Especifica o intervalo entre atualizaes, em segundos.

7.12. vmstat -----------Mostra estatsticas sobre o uso da memria virtual do sistema. `vmstat [_intervalo_] [_contagem_]' Onde: _intervalo_ Nmero especificado em segundos entre atualizaes. _contagem_ Nmero de vezes que ser mostrado. Se no for especificado nenhum parmetro, o `vmstat' mostra o status da memria virtual e volta imediatamente para a linha de comando. A descrio dos campos do `vmstat' so as seguintes: _Processos_ r Nmero de processos aguardando execuo. b Nmero de processos em espera no interrompveis. w Nmero de processos extrados do arquivo de troca ou caso contrrio em execuo. _Memria_ swpd A quantidade de memria virtual usada em Kb. free Quantidade de memria livre em Kb. buff Quantidade de memria usada como buffer em Kb. _Memria Virtual_ si Quantidade de memria gravada para o disco Kb/s. so Quantidade de memria retirada do disco em Kb/s. _Entrada/Sada_ bi Blocos enviados para um dispositivo de bloco (medido em blocos por segundo). bo Blocos recebidos de um dispositivo de bloco (em blocos por segundo). _Sistema_ in Nmero de interrupes por segundo, incluindo o clock. cs Nmero de mudanas de contexto por segundo. _Porcentagem do total de tempo da CPU_ us Tempo do usurio sy
-117-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Tempo do sistema id Tempo ocioso

7.13. pidof ----------Retorna o PID do processo especificado `pidof [_opes_] [_nome_]' Onde: _nome_ Nome do processo que seja obter o nmero PID _opes_ -s Retorna somente o primeiro PID encontrado. -x Retorna o PID do do shell que est executando o script -o [PID] Ignora o processo com aquele PID. O PID especial %PPID pode ser usado para nomear o processo pai do programa `pidof', em outras palavras OBS: O programa `pidof' um link simblico ao programa `killall5'. Cuidado ao executar o `killall5' as funes e opes so completamente diferentes dependendo da forma como chamado na linha de comando! (veja Section 7.7.8, `killall5' para detalhes.) Exemplo: `pidof -s init'

7.14. pstree -----------Mostra a estrutura de processos em execuo no sistema em forma de rvore. `pstree [_opes_] [_pid_]' Onde: _pid_ Nmero do processo que ter sua rvore listada. Se omitido, lista todos os processos. _opes_ -a Mostra opes passadas na linha de comando. -c Mostra toda a estrutura (inclusive sub-processos do processo pai). -G Usa caracteres grficos no desenho da rvore de processos. -h Destaca o processo atual e seus antecessores. -H [pid] Destaca o processo especificado.
-118-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

-l No faz quebra de linha -n Classifica pelo nmero PID ao invs do nome. -p Mostra o nmero PID entre parnteses aps o nome do processo. -u Mostra tambm o dono do processo. -U Usa o conjunto de caracteres Unicode para o desenho da rvore.

7.15. Fechando um programa quando no se sabe como sair ------------------------------------------------------Muitas vezes quando se esta iniciando no `GNU/Linux' voc pode executar um programa e talvez no saber como fecha-lo. Este captulo do guia pretende ajuda-lo a resolver este tipo de problema. Isto pode tambm ocorrer com programadores que esto construindo seus programas e por algum motivo no implementam uma opo de sada, ou ela no funciona! Em nosso exemplo vou supor que executamos um programa em desenvolvimento com o nome `contagem' que conta o tempo em segundos a partir do momento que executado, mas que o programador esqueceu de colocar uma opo de sada. Siga estas dicas para finaliza-lo: 1. Normalmente todos os programas `UNIX' (o `GNU/Linux' tambm um Sistema Operacional baseado no `UNIX') podem ser interrompidos com o pressionamento das teclas `<CTRL>' e `<C>'. Tente isto primeiro para finalizar um programa. Isto provavelmente no vai funcionar se estiver usando um Editor de Texto (ele vai entender como um comando de menu). Isto normalmente funciona para comandos que so executados e terminados sem a interveno do usurio. Caso isto no der certo, vamos partir para a fora! 2. ;-)

Mude para um novo console (pressionando `<ALT>' e `<F2>'), e faa o _login_ como usurio _root_. Localize o PID (nmero de identificao do processo) usando o comando: `ps ax', aparecero vrias linhas cada uma com o nmero do processo na primeira coluna, e a linha de comando do programa na ltima coluna. Caso aparecerem vrios processos voc pode usar `ps ax|grep contagem', neste caso o `grep' far uma filtragem da sada do comando `ps ax' mostrando somente as linhas que tem a palavra "contagem". Para maiores detalhes, veja o comando Section 10.8, `grep'. Feche o processo usando o comando `kill _PID_', lembre-se de substituir PID pelo nmero encontrado pelo comando `ps ax' acima. O comando acima envia um sinal de trmino de execuo para o processo (neste caso o programa `contagem'). O sinal de trmino mantm a chance do programa salvar seus dados ou apagar os
-119-

3.

4.

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

arquivos temporrios que criou e ento ser finalizado, isto depende do programa. 5. Alterne para o console onde estava executando o programa `contagem' e verifique se ele ainda est em execuo. Se ele estiver parado mas o aviso de comando no est disponvel, pressione a tecla <ENTER>. Freqentemente acontece isto com o comando `kill', voc finaliza um programa mas o aviso de comando no mostrado at que se pressione <ENTER>. Caso o programa ainda no foi finalizado, repita o comando `kill' usando a opo -9: `kill -9 PID'. Este comando envia um sinal de DESTRUIO do processo, fazendo ele terminar "na marra"!

6.

Uma ltima dica: todos os programas estveis (todos que acompanham as boas distribuies `GNU/Linux') tem sua opo de sada. Lembre-se que quando finaliza um processo todos os dados do programa em execuo podem ser perdidos (principalmente se estiver em um editor de textos), mesmo usando o `kill' sem o parmetro `-9'. Procure pginas pages. Chapter a opo de sada de um programa consultando o help on line, as de manual, a documentao que acompanha o programa, info Para detalhes de como encontrar a ajuda dos programas, veja o 27, `Como obter ajuda no sistema'

7.16. Eliminando caracteres estranhos ------------------------------------As vezes quando um programa `mal comportado' finalizado ou quando voc visualiza um arquivo binrio atravs do comando `cat', possvel que o aviso de comando (prompt) volte com caracteres estranhos. Para fazer tudo voltar ao normal, basta digitar `reset' e teclar `ENTER'. No se preocupe, o comando `reset' no reiniciar seu computador (como o boto reset do seu computador faz), ele apenas far tudo voltar ao normal. Note que enquanto voc digitar `reset' aparecero caracteres estranhos ao invs das letras. No se preocupe! Basta digitar corretamente e bater `ENTER' e o aviso de comando voltar ao normal.

-------------------------------------------------------------------------------

8. Comandos para manipulao de diretrio ----------------------------------------Abaixo comandos teis para a manipulao de diretrios.

8.1. ls ------Lista os arquivos de um diretrio.

-120-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

`ls [_opes_] [_caminho/arquivo_] [_caminho1/arquivo1_] ...' onde: _caminho/arquivo_ Diretrio/arquivo que ser listado. _caminho1/arquivo1_ Outro Diretrio/arquivo que ser listado. Podem ser feitas vrias listagens de uma s vez. _opes_ -a, --all Lista todos os arquivos (inclusive os ocultos) de um diretrio. -A, --almost-all Lista todos os arquivos (inclusive os ocultos) de um diretrio, exceto o diretrio atual e o de nvel anterior. -B, --ignore-backups No lista arquivos que terminam com ~ (Backup). --color=PARAM Mostra os arquivos em cores diferentes, conforme o tipo de arquivo. PARAM pode ser: * _never_ - Nunca lista em cores (mesma coisa de no usar o parmetro --color). * _always_ - Sempre lista em cores conforme o tipo de arquivo. * _auto_ - Somente colore a listagem se estiver em um terminal. -d, --directory Lista os nomes dos diretrios ao invs do contedo. -f No classifica a listagem. -F Insere um caracter aps arquivos executveis ('*'), diretrios ('/'), soquete ('='), link simblico ('@') e pipe ('|'). Seu uso til para identificar de forma fcil tipos de arquivos nas listagens de diretrios. -G, --no-group Oculta a coluna de grupo do arquivo. -h, --human-readable Mostra o tamanho dos arquivos em Kbytes, Mbytes, Gbytes. -H Faz o mesmo que `-h', mas usa unidades de 1000 ao invs de 1024 para especificar Kbytes, Mbytes, Gbytes. -l Usa o formato longo para listagem de arquivos. Lista as permisses, data de modificao, donos, grupos, etc. -n Usa a identificao de usurio e grupo numrica ao invs dos nomes. -L, --dereference Lista o arquivo original e no o link referente ao arquivo. -o Usa a listagem longa sem os donos dos arquivos (mesma coisa que -lG). -p Mesma coisa que -F, mas no inclui o smbolo '*' em arquivos executveis. Esta opo tpica de sistemas `Linux'. -R Lista diretrios e sub-diretrios recursivamente. --full-time
-121-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Lista data e hora completa. Classificao da listagem A listagem pode ser classificada usando-se as seguintes opes: -f No classifica, e usa -au para listar os arquivos. -r Inverte a ordem de classificao. -c Classifica pela data de alterao. -X Classifica pela extenso. -U No classifica, lista os arquivos na ordem do diretrio. Uma listagem feita com o comando `ls -la' normalmente mostrada da seguinte maneira: -rwxr-xr-- 1 gleydson user 8192 nov 4 16:00 teste Abaixo as explicaes de cada parte: `-rwxr-xr--' So as permisses de acesso ao arquivo teste. A primeira letra (da esquerda) identifica o tipo do arquivo, se tiver um `d' um diretrio, se tiver um "-" um arquivo normal. As permisses de acesso explicada em detalhes em Chapter 13, `Permisses de acesso a arquivos e diretrios'. `1' Se for um diretrio, mostra a quantidade de sub-diretrios existentes dentro dele. Caso for um arquivo, ser 1. `gleydson' Nome do dono do arquivo `teste'. `user' Nome do grupo que o arquivo `teste' pertence. `8192' Tamanho do arquivo (em bytes). `nov' Ms da criao/ ltima modificao do arquivo. `4' Dia que o arquivo foi criado. `16:00' Hora em que o arquivo foi criado/modificado. Se o arquivo foi criado h mais de um ano, em seu lugar mostrado o ano da criao do arquivo. `teste' Nome do arquivo. Exemplos do uso do comando `ls': * `ls' - Lista os arquivos do diretrio atual. * `ls /bin /sbin' - Lista os arquivos do diretrio /bin e /sbin * `ls -la /bin' - Listagem completa (vertical) dos arquivos do diretrio /bin inclusive os ocultos.

8.2. cd ------Entra em um diretrio. entrar no diretrio. Voc precisa ter a permisso de execuo para

-122-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

`cd [_diretrio_]' onde: _diretrio_ - diretrio que deseja entrar. Exemplos: * Usando `cd' sem parmetros ou `cd ~', voc retornar ao seu diretrio de usurio (diretrio home). * `cd /', retornar ao diretrio raz. * `cd -', retornar ao diretrio anteriormente acessado. * `cd ..', sobe um diretrio. * `cd ../[_diretrio_]', sobe um diretrio e entra imediatamente no prximo (por exemplo, quando voc est em `/usr/sbin', voc digita `cd ../bin', o comando `cd' retorna um diretrio (`/usr') e entra imediatamente no diretrio `bin' (`/usr/bin').

8.3. pwd -------Mostra o nome e caminho do diretrio atual. Voc pode usar o comando pwd para verificar em qual diretrio se encontra (caso seu aviso de comandos no mostre isso).

8.4. mkdir ---------Cria um diretrio no sistema. Um diretrio usado para armazenar arquivos de um determinado tipo. O diretrio pode ser entendido como uma _pasta_ onde voc guarda seus papeis (arquivos). Como uma pessoa organizada, voc utilizar uma pasta para guardar cada tipo de documento, da mesma forma voc pode criar um diretrio `vendas' para guardar seus arquivos relacionados com vendas naquele local. `mkdir [_opes_] [_caminho/diretrio_] [_caminho1/diretrio1_]' onde: _caminho_ Caminho onde o diretrio ser criado. _diretrio_ Nome do diretrio que ser criado. _opes:_ --verbose Mostra uma mensagem para cada diretrio criado. As mensagens de erro sero mostradas mesmo que esta opo no seja usada. Para criar um novo diretrio, voc deve ter permisso de gravao. Por exemplo, para criar um diretrio em /tmp com o nome de `teste' que ser usado para gravar arquivos de teste, voc deve usar o comando `"mkdir /tmp/teste"'. Podem ser criados mais de um diretrio com um nico comando (`mkdir /tmp/teste /tmp/teste1 /tmp/teste2').

-123-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

8.5. rmdir ---------Remove um diretrio do sistema. Este comando faz exatamente o contrrio do `mkdir'. O diretrio a ser removido deve estar vazio e voc deve ter permisso de gravao para remove-lo. `rmdir [_caminho/diretrio_] [_caminho1/diretrio1_]' onde: _caminho_ Caminho _diretrio_ Nome do necessrio removido(s). comando `rm' 9.3, `rm').

do diretrio que ser removido. diretrio que ser removido. que esteja um nvel acima do diretrio(s) que ser(o) Para remover diretrios que contenham arquivos, use o com a opo `-r' (para maiores detalhes, veja Section

Por exemplo, para remover o diretrio `/tmp/teste' voc deve estar no diretrio `tmp' e executar o comando `rmdir teste'.

-------------------------------------------------------------------------------

9. Comandos para manipulao de Arquivos ---------------------------------------Abaixo, comandos utilizados para manipulao de arquivos.

9.1. cat -------Mostra o contedo de um arquivo binrio ou texto. `cat [opes] [_diretrio/arquivo_] [_diretrio1/arquivo1_]' _diretrio/arquivo_ Localizao do arquivo que deseja visualizar o contedo. _opes_ -n, --number Mostra o nmero das linhas enquanto o contedo do arquivo mostrado. -s, --squeeze-blank No mostra mais que uma linha em branco entre um pargrafo e outro. L a entrada padro. O comando `cat' trabalha com arquivos texto. Use o comando `zcat' para ver diretamente arquivos compactados com `gzip'. Exemplo: `cat /usr/doc/copyright/GPL'

9.2. tac
-124-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

-------Mostra o contedo de um arquivo binrio ou texto (como o `cat') s que em ordem inversa. `tac [opes] [_diretrio/arquivo_] [_diretrio1/arquivo1_]' _diretrio/arquivo_ Localizao do arquivo que deseja visualizar o contedo _opes_ -s [string] Usa o [string] como separador de registros. L a entrada padro. Exemplo: `tac /usr/doc/copyright/GPL'.

9.3. rm ------Apaga arquivos. Tambm pode ser usado para apagar diretrios e sub-diretrios vazios ou que contenham arquivos. `rm [_opes_][_caminho_][_arquivo/diretrio_] [_caminho1_][_arquivo1/diretrio1_]' onde: _caminho_ Localizao do arquivo que deseja apagar. Se omitido, assume que o arquivo esteja no diretrio atual. _arquivo/diretrio_ Arquivo que ser apagado. _opes_ -i, --interactive Pergunta antes de remover, esta ativada por padro. -v, --verbose Mostra os arquivos na medida que so removidos. -r, --recursive Usado para remover arquivos em sub-diretrios. Esta opo tambm pode ser usada para remover sub-diretrios. -f, --force Remove os arquivos sem perguntar. -- arquivo Remove arquivos/diretrios que contm caracteres especiais. O separador "--" funciona com todos os comandos do shell e permite que os caracteres especiais como "*", "?", "-", etc. sejam interpretados como caracteres comuns. Use com ateno o comando `rm', uma vez que os arquivos e diretrios forem apagados, eles no podero ser mais recuperados. Exemplos: * `rm teste.txt' - Apaga o arquivo `teste.txt' no diretrio atual. * `rm *.txt' - Apaga todos os arquivos do diretrio atual que terminam com `.txt'. * `rm *.txt teste.novo' - Apaga todos os arquivos do diretrio atual que terminam com `.txt' e tambm o arquivo `teste.novo'.
-125-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

* `rm -rf /tmp/teste/*' - Apaga todos os arquivos e sub-diretrios do diretrio `/tmp/teste' mas mantm o sub-diretrio `/tmp/teste'. * `rm -rf /tmp/teste' - Apaga todos os arquivos e sub-diretrios do diretrio `/tmp/teste', inclusive `/tmp/teste'. * `rm -f -- --arquivo--' - Remove o arquivo de nome `--arquivo--'.

9.4. cp ------Copia arquivos. `cp [_opes_] [_origem_] [_destino_]' onde: _origem_ Arquivo que ser copiado. Podem ser especificados mais de um arquivo para ser copiado usando "Curingas" (veja Section 2.2, `Curingas'). _destino_ O caminho ou nome de arquivo onde ser copiado. Se o destino for um diretrio, os arquivos de origem sero copiados para dentro do diretrio. _opes_ i, --interactive Pergunta antes de substituir um arquivo existente. -f, --force No pergunta, substitui todos os arquivos caso j exista. -r Copia arquivos dos diretrios e subdiretrios da origem para o destino. recomendvel usar -R ao invs de -r. -R, --recursive Copia arquivos e sub-diretrios (como a opo -r) e tambm os arquivos especiais FIFO e dispositivos. -v, --verbose Mostra os arquivos enquanto esto sendo copiados. -s, --simbolic-link Cria link simblico ao invs de copiar. -l, --link Faz o link no destino ao invs de copiar os arquivos. -p, --preserve Preserva atributos do arquivo, se for possvel. -u, --update Copia somente se o arquivo de origem mais novo que o arquivo de destino ou quando o arquivo de destino no existe. -x No copia arquivos que esto localizados em um sistema de arquivos diferente de onde a cpia iniciou. O comando `cp' copia arquivos da ORIGEM para o DESTINO. Ambos origem e destino tero o mesmo contedo aps a cpia. Exemplos: `cp teste.txt teste1.txt' Copia o arquivo `teste.txt' para `teste1.txt'. `cp teste.txt /tmp' Copia o arquivo `teste.txt' para dentro do diretrio `/tmp'.
-126-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

`cp * /tmp' Copia todos os arquivos do diretrio atual para `/tmp'. `cp /bin/* .' Copia todos os arquivos do diretrio `/bin' para o diretrio em que nos encontramos no momento. `cp -R /bin /tmp' Copia o diretrio `/bin' e todos os arquivos/sub-diretrios existentes para o diretrio `/tmp'. `cp -R /bin/* /tmp' Copia todos os arquivos do diretrio `/bin' (exceto o diretrio `/bin') e todos os arquivos/sub-diretrios existentes dentro dele para `/tmp'. `cp -R /bin /tmp' Copia todos os arquivos e o diretrio `/bin' para `/tmp'.

9.5. mv ------Move ou renomeia arquivos e diretrios. O processo semelhante ao do comando `cp' mas o arquivo de origem apagado aps o trmino da cpia. `mv [_opes_] [_origem_] [_destino_]' Onde: _origem_ Arquivo/diretrio de origem. _destino_ Local onde ser movido ou novo nome do arquivo/diretrio. _opes_ -f, --force Substitui o arquivo de destino sem perguntar. -i, --interactive Pergunta antes de substituir. o padro. -v, --verbose Mostra os arquivos que esto sendo movidos. -u, --update Move somente arquivos antigos, ou novos arquivos. O comando `mv' copia um arquivo da _ORIGEM_ para o _DESTINO_ (semelhante ao `cp'), mas aps a cpia, o arquivo de _ORIGEM_ apagado. Exemplos: `mv teste.txt teste1.txt' Muda o nome do arquivo `teste.txt' para `teste1.txt'. `mv teste.txt /tmp' Move o arquivo teste.txt para `/tmp'. Lembre-se que o arquivo de origem apagado aps ser movido. `mv teste.txt teste.new' (supondo que `teste.new' j exista) Copia o arquivo `teste.txt' por cima de `teste.new' e apaga `teste.txt' aps terminar a cpia.

-------------------------------------------------------------------------------

-127-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

10. Comandos Diversos --------------------Comandos de uso diversos no sistema.

10.1. clear ----------Limpa a tela e posiciona o cursor no canto superior esquerdo do vdeo. `clear'

10.2. date ---------Permite ver/modificar a Data e Hora do Sistema. Voc precisa estar como usurio root para modificar a data e hora. Muitos programas do sistema, arquivos de registro (log) e tarefas agendadas funcionam com base na data e hora fornecidas pelo sistema, assim esteja consciente das modificaes que a data/hora pode trazer a estes programas (principalmente em se tratando de uma rede com muitos usurios) . `date MesDiaHoraMinuto[AnoSegundos]' Onde: MesDiaHoraMinuto[AnoSegundos] So respectivamente os nmeros do ms, dia, hora e minutos sem espaos. Opcionalmente voc pode especificar o Ano (com 2 ou 4 dgitos) e os Segundos. +[FORMATO] Define o formato da listagem que ser usada pelo comando `date'. Os seguintes formatos so os mais usados: * `%d' - Dia do Ms (00-31). * `%m' - Ms do Ano (00-12). * `%y' - Ano (dois dgitos). * `%Y' - Ano (quatro dgitos). * `%H' - Hora (00-24). * `%I' - Hora (00-12). * `%M' - Minuto (00-59). * `%j' - Dia do ano (1-366). * `%p' - AM/PM (til se utilizado com %d). * `%r' - Formato de 12 horas completo (hh:mm:ss AM/PM). * `%T' - Formato de 24 horas completo (hh:mm:ss). * `%w' - Dia da semana (0-6). Outros formatos podem ser obtidos atravs da pgina de manual do `date'. Para maiores detalhes, veja a pgina de manual do comando `date'. Para ver a data atual digite: `date' Se quiser mudar a Data para 25/12 e a hora para 08:15 digite: `date 12250815' Para mostrar somente a data no formato dia/ms/ano: `date +%d/%m/%Y'

-128-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

10.3. df -------Mostra o espao livre/ocupado de cada partio. `df [_opes_]' onde: _opes_ -a Inclui sistemas de arquivos com 0 blocos. -h, --human-readable Mostra o espao livre/ocupado em _MB, KB, GB_ ao invs de blocos. -H Idntico a `-h' mas usa 1000 ao invs de 1024 como unidade de clculo. -k Lista em Kbytes. -l Somente lista sistema de arquivos locais. -m Lista em Mbytes (equivalente a --block-size=1048576). --sync Executa o `sync' antes de mostrar os dados. -T Lista o tipo de sistema de arquivos de cada partio -t _tipo_ Lista somente sistema de arquivos do tipo _tipo_. -x _tipo_ No lista sistemas de arquivos do tipo _tipo_. Exemplos: `df', `df -h', `df -t vfat'.

10.4. ln -------Cria links para arquivos e diretrios no sistema. O link um mecanismo que faz referncia a outro arquivo ou diretrio em outra localizao. O link em sistemas `GNU/Linux' faz referncia reais ao arquivo/diretrio podendo ser feita cpia do link (ser copiado o arquivo alvo), entrar no diretrio (caso o link faa referncia a um diretrio), etc. `ln [_opes_] [_origem_] [_link_]' Onde: _origem_ Diretrio ou arquivo de onde ser feito o link. _link_ Nome do link que ser criado. _opes_ -s Cria um link simblico. Usado para criar ligaes com o arquivo/diretrio de destino. -v
-129-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Mostra o nome de cada arquivo antes de fazer o link. -d Cria um hard link para diretrios. Somente o root pode usar esta opo. Existem 2 tipos de links: _simblicos_ e _hardlinks_. * O _link simblico_ cria um arquivo especial no disco (do tipo link) que tem como contedo o caminho para chegar at o arquivo alvo (isto pode ser verificado pelo tamanho do arquivo do link). Use a opo `-s' para criar links simblicos. * O _hardlink_ faz referncia ao mesmo inodo do arquivo original, desta forma ele ser perfeitamente idntico, inclusive nas permisses de acesso, ao arquivo original. Ao contrrio dos links simblicos, no possvel fazer um hardlink para um diretrio ou fazer referncia a arquivos que estejam em parties diferentes. Observaes: * Se for usado o comando `rm' com um link, somente o link ser removido. * Se for usado o comando `cp' com um link, o arquivo original ser copiado ao invs do link. * Se for usado o comando `mv' com um link, a modificao ser feita no link. * Se for usado um comando de visualizao (como o `cat'), o arquivo original ser visualizado. Exemplos: * `ln -s /dev/ttyS1 /dev/modem' - Cria o link `/dev/modem' para o arquivo `/dev/ttyS1'. * `ln -s /tmp ~/tmp' - Cria um link `~/tmp' para o diretrio `/tmp'.

10.5. du -------Mostra o espao ocupado por arquivos e sub-diretrios do diretrio atual. `du [_opes_]' onde: _opes_ -a, --all Mostra o espao ocupado por todos os arquivos. -b, --bytes Mostra o espao ocupado em bytes. -c, --total Faz uma totalizao de todo espao listado. -D No conta links simblicos. -h, --human Mostra o espao ocupado em formato legvel por humanos (Kb, Mb) ao invs de usar blocos. -H Como o anterior mas usa 1000 e no 1024 como unidade de clculo. -k
-130-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Mostra o espao ocupado em Kbytes. -m Mostra o espao ocupado em Mbytes. -S, --separate-dirs No calcula o espao ocupado por sub-diretrios. -x No faz a contagem de diretrios em sistemas de arquivos diferentes do atual. Exemplo: `du -h', `du -hc'.

10.6. find ---------Procura por arquivos/diretrios no disco. `find' pode procurar arquivos atravs de sua data de modificao, tamanho, etc atravs do uso de opes. `find', ao contrrio de outros programas, usa opes longas atravs de um `"-"'. `find [_diretrio_] [_opes/expresso_]' Onde: _diretrio_ Inicia a procura neste diretrio, percorrendo seu sub-diretrios. _opes/expresso_ -name [expresso] Procura pelo nome [expresso] nos nomes de arquivos e diretrios processados. -depth Processa os sub-diretrios primeiro antes de processar os arquivos do diretrio principal. -maxdepth [num] Faz a procura at [num] sub-diretrios dentro do diretrio que est sendo pesquisado. -mindepth [num] No faz nenhuma procura em diretrios menores que [num] nveis. -mount, -xdev No faz a pesquisa em sistemas de arquivos diferentes daquele de onde o comando `find' foi executado. -amin [num] Procura por arquivos que foram acessados [num] minutos atrs. Caso for antecedido por "-", procura por arquivos que foram acessados entre [num] minutos atrs at agora. -atime [num] Procura por arquivos que foram acessados [num] dias atrs. Caso for antecedido por "-", procura por arquivos que foram acessados entre [num] dias atrs e a data atual. -gid [num] Procura por arquivos que possuam a identificao numrica do grupo igual a [num]. -group [nome] Procura por arquivos que possuam a identificao de nome do grupo igual a [nome]. -uid [num] Procura por arquivos que possuam a identificao numrica do usurio igual a [num].
-131-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

-user [nome] Procura por arquivos que possuam a identificao de nome do usurio igual a [nome]. -inum [num] Procura por arquivos que esto localizados no inodo [num]. -links [num] Procura por arquivos que possuem [num] links como referncia. -mmin [num] Procura por arquivos que tiveram seu contedo modificado h [num] minutos. Caso for antecedido por "-", procura por arquivos que tiveram seu contedo modificado entre [num] minutos atrs at agora. -mtime [num] Procura por arquivos que tiveram seu contedo modificado h [num] dias. Caso for antecedido por "-", procura por arquivos que tiveram seu contedo modificado entre [num] dias atrs at agora. -ctime [num] Procura por arquivos que teve seu status modificado h [num] dias. Caso for antecedido por "-", procura por arquivos que tiveram seu contedo modificado entre [num] dias atrs at agora. -nouser Procura por arquivos que no correspondam a identificao do usurio atual. -nogroup Procura por arquivos que no correspondam a identificao do grupo do usurio atual. -perm [modo] Procura por arquivos que possuam os modos de permisso [modo]. Os [modo] de permisso pode ser numrico (octal) ou literal. -used [num] O arquivo foi acessado [num] vezes antes de ter seu status modificado. -size [num] Procura por arquivos que tiverem o tamanho [num]. [num] pode ser antecedido de "+" ou "-" para especificar um arquivo maior ou menor que [num]. A opo -size pode ser seguida de: * `b' - Especifica o tamanho em blocos de 512 bytes. o padro caso [num] no seja acompanhado de nenhuma letra. * `c' - Especifica o tamanho em bytes. * `k' - Especifica o tamanho em Kbytes. -type [tipo] Procura por arquivos do [tipo] especificado. Os seguintes tipos so aceitos: * `b' - bloco * `c' - caracter * `d' - diretrio * `p' - pipe * `f' - arquivo regular * `l' - link simblico * `s' - sockete A maior parte dos argumentos numricos podem ser precedidos por "+" ou "-". Para detalhes sobre outras opes e argumentos, consulte a pgina de manual. Exemplo: * `find / -name grep' - Procura no diretrio raz e sub-diretrios um arquivo/diretrio chamado `grep'.
-132-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

* `find / -name grep -maxdepth 3' - Procura no diretrio raz e sub-diretrios at o 3o. nvel, um arquivo/diretrio chamado `grep'. * `find . -size +1000k' - Procura no diretrio atual e sub-diretrios um arquivo com tamanho maior que 1000 kbytes (1Mbyte). * `find / -mmin 10' - Procura no diretrio raz e sub-diretrios um arquivo que foi modificado h 10 minutos atrs. * `find / -links 4' - Procura no diretrio raz e sub-diretrios, todos os arquivos que possuem 4 links como referncia.

10.7. free ---------Mostra detalhes sobre a utilizao da memria RAM do sistema. `free [_opes_]' Onde: _opes_ -b Mostra o resultado em bytes. -k Mostra o resultado em Kbytes. -m Mostra o resultado em Mbytes. -o Oculta a linha de buffers. -t Mostra uma linha contendo o total. -s [num] Mostra a utilizao da memria a cada [num] segundos. O `free' uma interface ao arquivo `/proc/meminfo'.

10.8. grep ---------Procura por um texto dentro de um arquivo(s) ou no dispositivo de entrada padro. `grep [_expresso_] [_arquivo_] [_opes_]' Onde: _expresso_ palavra ou frase que ser procurada no texto. Se tiver mais de 2 palavras voc deve identifica-la com aspas "" caso contrrio o `grep' assumir que a segunda palavra o arquivo! _arquivo_ Arquivo onde ser feita a procura. _opes_ -A [nmero] Mostra o [nmero] de linhas aps a linha encontrada pelo `grep'. -B [nmero] Mostra o [nmero] de linhas antes da linha encontrada pelo `grep'.
-133-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

-f [arquivo] Especifica que o texto que ser localizado, esta no arquivo [arquivo]. -h, --no-filename No mostra os nomes dos arquivos durante a procura. -i, --ignore-case Ignora diferena entre maisculas e minsculas no texto procurado e arquivo. -n, --line-number Mostra o nome de cada linha encontrada pelo `grep'. -U, --binary Trata o arquivo que ser procurado como binrio. Se no for especificado o nome de um arquivo ou se for usado um hfen "-", `grep' procurar a string no dispositivo de entrada padro. O `grep' faz sua pesquisa em arquivos texto. Use o comando `zgrep' para pesquisar diretamente em arquivos compactados com `gzip', os comandos e opes so as mesmas. Exemplos: `grep "capitulo" texto.txt', `ps ax|grep inetd', `grep "capitulo" texto.txt -A 2 -B 2'.

10.9. head ---------Mostra as linhas iniciais de um arquivo texto. `head [_opes_]' Onde: -c [numero] Mostra o [numero] de bytes do inicio do arquivo. -n [numero] Mostra o [numero] de linhas do inicio do arquivo. Caso no for especificado, o `head' mostra as 10 primeiras linhas. Exemplos: `head teste.txt', `head -n 20 teste.txt'.

10.10. nl --------Mostra o nmero de linhas junto com o contedo de um arquivo. `nl [_opes_] [_arquivo_]' Onde: -f [opc] Faz a filtragem de sada de acordo com [opc]: a Numera todas as linhas. t No numera linhas vazias. n Numera linhas vazias. texto Numera somente linhas que contm o [texto].
-134-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

-v [num] Nmero inicial (o padro 1). -i [num] Nmero de linhas adicionadas a cada linha do arquivo (o padro 1). Exemplos: `nl /etc/passwd', `nl -i 2 /etc/passwd'.

10.11. more ----------Permite fazer a paginao de arquivos ou da entrada padro. O comando `more' pode ser usado como comando para leitura de arquivos que ocupem mais de uma tela. Quando toda a tela ocupada, o `more' efetua uma pausa e permite que voc pressione `Enter' ou `espao' para continuar avanando no arquivo sendo visualizado. Para sair do `more' pressione `q'. `more [_arquivo_]' Onde: _arquivo_ o arquivo que ser paginado. Para visualizar diretamente arquivos texto compactados pelo `gzip' `.gz' use o comando `zmore'. Exemplos: `more /etc/passwd', `cat /etc/passwd|more'.

10.12. less ----------Permite fazer a paginao de arquivos ou da entrada padro. O comando `less' pode ser usado como comando para leitura de arquivos que ocupem mais de uma tela. Quando toda a tela ocupada, o `less' efetua uma pausa (semelhante ao `more') e permite que voc pressione Seta para Cima e Seta para Baixo ou PgUP/PgDown para fazer o rolamento da pgina. Para sair do `less' pressione `q'. `less [_arquivo_]' Onde: _arquivo_ o arquivo que ser paginado. Para visualizar diretamente arquivos texto compactados pelo utilitrio `gzip' (arquivos `.gz'), use o comando `zless'. Exemplos: `less /etc/passwd', `cat /etc/passwd|less'

10.13. sort ----------Organiza as linhas de um arquivo texto ou da entrada padro. A organizao feita por linhas e as linhas so divididas em _campos_ que a ordem que as palavras aparecem na linha separadas por um delimitador (normalmente um espao).

-135-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

`sort [_opes_] [_arquivo_]' Onde: _arquivo_ o nome do arquivo que ser organizado. Caso no for especificado, ser usado o dispositivo de entrada padro (normalmente o teclado ou um "|"). _opes_ -b Ignora linhas em branco. -d Somente usa letras, dgitos e espaos durante a organizao. -f Ignora a diferena entre maisculas e minsculas. -r Inverte o resultado da comparao. -n Caso estiver organizando um campo que contm nmeros, os nmeros sero organizados na ordem aritmtica. Por exemplo, se voc tiver um arquivo com os nmeros 100 10 50 Usando a opo `-n', o arquivo ser organizado desta maneira: 10 50 100 Caso esta opo _no_ for usada com o `sort', ele organizar como uma listagem alfabtica (que comeam de `a' at `z' e do `0' at `9') 10 100 50 -c Verifica se o arquivo j esta organizado. Caso no estiver, retorna a mensagem "disorder on _arquivo_". -o _arquivo_ Grava a sada do comando `sort' no _arquivo_. -m _arquivo1_ _arquivo2_ Combina o contedo de _arquivo1_ e _arquivo2_ gerando um nico arquivo. Os dois arquivos precisam estar ordenados antes de se utilizar esta opo. -i Ignora os caracteres fora da faixa octal ASCII 040-0176 durante a organizao. -t _caracter_ Usa _caracter_ como delimitador durante a organizao de linhas. Por padro usado um _espao em branco_ como delimitador de caracteres. _+num1 -num2_ Especifica qual o campo dentro na linha que ser usado na organizao. O(s) campo(s) usado(s) para organizao estar entre _+num1_ e _+num2_. O delimitador padro utilizado um _espao em branco_ (use a opo `-t' para especificar outro). A contagem iniciada em "0". Caso no for especificada, a organizao feita no primeiro campo. Caso _-num2_ no seja especificado, a organizao ser feita usando a coluna _+num1_
-136-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

at o fim da linha. -k _num1_, _num2_ Esta uma alternativa ao mtodo acima para especificar as chaves de organizao. O uso idntico, mas o delimitador iniciado em "1". Abaixo, exemplos de uso do comando `sort': * `sort `texto.txt'' - Organiza o arquivo `texto.txt' em ordem crescente. * `sort `texto.txt' -r' - Organiza o contedo do arquivo `texto.txt' em ordem decrescente. * `cat `texto.txt'|sort' - Faz a mesma coisa que o primeiro exemplo, s que neste caso a sada do comando `cat' redirecionado a entrada padro do comando `sort'. * `sort -f `texto.txt'' - Ignora diferenas entre letras maisculas e minsculas durante a organizao. * `sort +1 -3 texto.txt' - Organiza o arquivo `texto.txt' usando como referncia a segunda at a quarta palavra (segundo ao quarto campo) que constam naquela linha. * `sort -t : +2 -3 passwd' - Organiza o arquivo `passwd' usando como referncia a terceira at a quarta palavra (terceiro ao quarto campo). Note que a opo `-t' especifica o caracter ":" como delimitador de campos ao invs do espao. Neste caso, o que estiver aps ":" ser considerado o prximo campo.

10.14. tail ----------Mostra as linhas finais de um arquivo texto. `tail [_opes_]' Onde: -c [numero] Mostra o [numero] de bytes do final do arquivo. -n [numero] Mostra o [numero] de linhas do final do arquivo. Exemplos: `tail teste.txt', `tail -n 20 teste.txt'.

10.15. time ----------Mede o tempo gasto para executar um processo (programa). `time [_comando_]' Onde: _comando_ o comando/programa que deseja medir o tempo gasto para ser concludo. Exemplo: `time ls', `time find / -name crontab'.

10.16. touch ------------137-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Muda a data e hora que um arquivo foi criado. Tambm pode ser usado para criar arquivos vazios. Caso o `touch' seja usado com arquivos que no existam, por padro ele criar estes arquivos. `touch [_opes_] [_arquivos_]' Onde: _arquivos_ Arquivos que tero sua data/hora modificados. _opes_ -t MMDDhhmm[ANO.segundos] Usa Minutos (MM), Dias (DD), Horas (hh), minutos (mm) e opcionalmente o ANO e segundos para modificao do(s) arquivos ao invs da data e hora atual. -a, --time=atime Faz o `touch' mudar somente a data e hora do acesso ao arquivo. -c, --no-create No cria arquivos vazios, caso os _arquivos_ no existam. -m, --time=mtime Faz o `touch' mudar somente a data e hora da modificao. -r [arquivo] Usa as horas no [arquivo] como referncia ao invs da hora atual. Exemplos: * `touch teste' - Cria o arquivo `teste' caso ele no existir. * `touch -t 10011230 teste' - Altera da data e hora do arquivo para 01/10 e 12:30. * `touch -t 120112301999.30 teste' - Altera da data, hora ano, e segundos do arquivo para 01/12/1999 e 12:30:30. * `touch -t 12011200 *' - Altera a data e hora do arquivo para 01/12 e 12:00.

10.17. uptime ------------Mostra o tempo de execuo do sistema desde que o computador foi ligado. `uptime'

10.18. dmesg -----------Mostra as mensagens de inicializao do kernel. mensagens da ltima inicializao do sistema. `dmesg|less' So mostradas as

10.19. mesg
-138-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

----------Permite ou no o recebimentos de requisies de `talk' de outros usurios. `mesg [_y/n_]' Onde: _y_ permite que voc receba "talks" de outros usurios. Digite `mesg' para saber se voc pode ou no receber "talks" de outros usurios. Caso a resposta seja "n" voc poder enviar um talk para algum mas o seu sistema se recusar em receber talks de outras pessoas. interessante colocar o comando `mesg y' em seu arquivo de inicializao `.bash_profile' para permitir o recebimento de "talks" toda vez que entrar no sistema. Para detalhes sobre como se comunicar com outros usurios, veja o comando Section 11.8, `talk'.

10.20. echo ----------Mostra mensagens. Este comando til na construo de scripts para mostrar mensagens na tela para o usurio acompanhar sua execuo. `echo [_mensagem_]' A opo `-n' pode ser usada para que no ocorra o salto de linha aps a mensagem ser mostrada.

10.21. su --------Permite o usurio mudar sua identidade para outro usurio sem fazer o logout. til para executar um programa ou comando como root sem ter que abandonar a seo atual. `su [_usurio_]' Onde: _usurio_ o nome do usurio que deseja usar para acessar o sistema. Se no digitado, assumido o usurio `root'. Ser pedida a senha do superusurio para autenticao. Digite `exit' quando desejar retornar a identificao de usurio anterior.

10.22. sync ----------Grava os dados do cache de disco na memria RAM para todos os discos rgidos e flexveis do sistema. O cache um mecanismo de acelerao que permite que um arquivo seja armazenado na memria ao invs de ser imediatamente gravado no disco, quando o sistema estiver ocioso, o
-139-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

arquivo gravado para o disco. O `GNU/Linux' procura utilizar toda memria RAM disponvel para o cache de programas acelerando seu desempenho de leitura/gravao. `sync' O uso do `sync' til em disquetes quando gravamos um programa e precisamos que os dados sejam gravados imediatamente para retirar o disquete da unidade. Mas o mtodo recomendado especificar a opo `sync' durante a montagem da unidade de disquetes (para detalhes veja Section 5.13.1, `fstab'.

10.23. uname -----------Retorna o nome e verso do kernel atual. `uname'

10.24. reboot ------------Reinicia o computador.

10.25. shutdown --------------Desliga/reinicia o computador imediatamente ou aps determinado tempo (programvel) de forma segura. Todos os usurios do sistema so avisados que o computador ser desligado . Este comando somente pode ser executado pelo usurio root ou quando usada a opo `-a' pelos usurios cadastrados no arquivo `/etc/shutdown.allow' que estejam logados no console virtual do sistema. `shutdown [_opes_] [_hora_] [_mensagem_]' _hora_ Momento que o computador ser desligado. Voc pode usar `HH:MM' para definir a hora e minuto, `MM' para definir minutos, `+SS' para definir aps quantos segundos, ou `now' para imediatamente (equivalente a +0). O `shutdown' criar o arquivo `/etc/nologin' para no permitir que novos usurios faam login no sistema (com excesso do root). Este arquivo removido caso a execuo do `shutdown' seja cancelada (opo -c) ou aps o sistema ser reiniciado. _mensagem_ Mensagem que ser mostrada a todos os usurios alertando sobre o reinicio/desligamento do sistema. _opes_ -h Inicia o processo para desligamento do computador. -r Reinicia o sistema -c
-140-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Cancela a execuo do `shutdown'. Voc pode acrescentar uma mensagem avisando aos usurios sobre o fato. -a Permite que os nomes de usurios contidos no arquivo `/etc/shutdown.allow' possam utilizar o `shutdown' para reinicializar/desligar o sistema. Deve ser colocado um nome de usurio por linha. O limite mximo de usurios neste arquivo de 32. Este arquivo til quando o `shutdown' usado para controlar o pressionamento das teclas `CTRL+ALT+DEL' no `/etc/inittab'. -k Simula o desligamento/reinicio do sistema, enviando mensagem aos usurios. -f No executa a checagem do sistema de arquivos durante a inicializao do sistema. Este processo feito gravando-se um arquivo `/fastboot' que interpretado pelos scripts responsveis pela execuo do `fsck' durante a inicializao do sistema. -F Fora a checagem do sistema de arquivos durante a inicializao. gravado um arquivo chamado `/forcefsck' que interpretado pelos scripts responsveis pela execuo do `fsck' durante a inicializao do sistema. -n Faz com que o `shutdown' ignore a execuo do `init' fechando todos os processos. -t [num] Faz com que o `shutdown' envie um sinal de trmino aos processos e aguarde [num] segundos antes de enviar o sinal KILL. O `shutdown' envia uma mensagem a todos os usurios do sistema alertando sobre o desligamento durante os 15 minutos restantes e assim permite que finalizem suas tarefas. Aps isto, o `shutdown' muda o nvel de execuo atravs do comando `init' para 0 (desligamento), 1 (modo monousurio), 6 (reinicializao). recomendado utilizar o smbolo "&" no final da linha de comando para que o `shutdown' seja executado em segundo plano. Quando restarem apenas 5 minutos para o reinicio/desligamento do sistema, o programa `login' ser desativado, impedindo a entrada de novos usurios no sistema. O programa `shutdown' pode ser chamado pelo `init' atravs do pressionamento da combinao das teclas de reinicializao `CTRL+ALT+DEL' alterando-se o arquivo `/etc/inittab'. Isto permite que somente os usurios autorizados (ou o root) possam reinicializar o sistema. Exemplos: * `"shutdown -h now"' - Desligar o computador imediatamente. * `"shutdown -r now"' - Reinicia o computador imediatamente. * `"shutdown 19:00 A manuteno do servidor ser iniciada s 19:00"' - Faz o computador entrar em modo monousurio (init 1) s 19:00 enviando a mensagem _A manuteno do servidor ser iniciada s 19:00_ a todos os usurios conectados ao sistema. * `"shutdown -r 15:00 O sistema ser reiniciado s 15:00 horas"' Faz o computador ser reiniciado (init 6) s 15:00 horas enviando a mensagem _O sistema ser reiniciado s 15:00 horas_ a todos os
-141-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

usurios conectados ao sistema. * `shutdown -r 20' - Faz o sistema ser reiniciado aps 20 minutos. * `shutdown -c' - Cancela a execuo do `shutdown'. * `shutdown -t 30 -r 20' - Reinicia o sistema aps 20 minutos, espera 30 segundos aps o sinal de trmino para enviar o sinal KILL a todos os programas abertos.

10.26. wc --------Conta o nmero de palavras, bytes e linhas em um arquivo ou entrada padro. Se as opes forem omitidas, o `wc' mostra a quantidade de linhas, palavras, e bytes. `wc [_opes_] [_arquivo_]' Onde: _arquivo_ Arquivo que ser verificado pelo comando `wc'. _opes_ -c, --bytes Mostra os bytes do arquivo. -w, --words Mostra a quantidade de palavras do arquivo. -l, --lines Mostra a quantidade de linhas do arquivo. A ordem da listagem dos parmetros nica, e modificando a posio das opes no modifica a ordem que os parmetros so listados. Exemplo: * `wc /etc/passwd' - Mostra a quantidade de linhas, palavras e letras (bytes) no arquivo `/etc/passwd'. * `wc -w /etc/passwd' - Mostra a quantidade de palavras. * `wc -l /etc/passwd' - Mostra a quantidade de linhas. * `wc -l -w /etc/passwd' - Mostra a quantidade de linhas e palavras no arquivo `/etc/passwd'.

10.27. seq ---------Imprime uma seqncia de nmeros comeando em [primeiro] e terminando em [ltimo], utilizando [incremento] para avanar. `seq [_opes_] [_primeiro_] [_incremento_] [_ltimo_]' Onde: _primeiro_ Nmero inicial da seqncia. _incremento_ Nmero utilizado para avanar na seqncia. _ltimo_ Nmero final da seqncia. _opes_ -f, --format=[formato] Formato de sada dos nmeros da seqncia. Utilize o estilo do
-142-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

printf para ponto flutuante (valor padro: %g). -s, --separator=[string] Usa [string] para separar a seqncia de nmeros (valor padro: \n). -w, --equal-width Insere zeros na frente dos nmeros mantendo a seqncia alinhada. Observaes: * Se [primeiro] ou [incremento] forem omitidos, o valor padro 1 ser utilizado. * Os nmeros recebidos so interpretados como nmeros em ponto flutuante. * [incremento] deve ser positivo se [primeiro] for menor do que o ltimo, e negativo caso contrrio. * Quando utilizarmos a opo --format, o argumento deve ser exatamente %e, %f ou %g. Exemplos: `seq 0 2 10', `seq -w 0 10', `seq -f%f 0 10', `seq -s", " 0 10'

10.28. chattr ------------Modifica atributos de arquivos/diretrios. No confunda atributos de arquivo com permisses de acesso (Chapter 13, `Permisses de acesso a arquivos e diretrios'), os atributos so diferentes e definem outras caractersticas especiais para os arquivos/diretrios especificados. `chattr [_opes_] [_atributos_] [_arquivos/diretrios_]' Onde: _arquivos/diretrios_ Arquivos/Diretrios que tero os atributos modificados. Podem ser usados curingas _opes_ -R Modifica atributos em subdiretrios -V Mostra detalhes sobre a modificao de atributos. _atributos_ Os atributos de arquivos/diretrios podem ser especificados da seguinte maneira: * `+' - Adiciona o atributo * `-' - Remove o atributo * `=' - Define o atributo exatamente como especificado Os atributos so os seguintes: * `A' - No modifica a hora de acesso de arquivos. Poder aumentar consideravelmente a performance em Notebooks devido a diminuio de I/O no disco rgido. Quando especificada em diretrios, faz com que todos os arquivos e subdiretrios residentes nele no tenham a hora de acesso modificada. Este atributo funciona apenas em kernels 2.2 e superiores * `a' - Append-Only - Arquivos com este atributo podem somente ser gravados em modo incrementais (o contedo poder somente ser adicionado ao final do arquivo). Eles no podero ser removidos, renomeados e novos links no podero ser criados
-143-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

para estes arquivos. Em diretrios faz com que os arquivos sejam apenas adicionados. Somente o root pode especificar ou retirar este atributo. * `c' - Permite compactao nos arquivos especificados de forma transparente para o usurio. Durante a leitura, o kernel retorna dados descompactados e durante a gravao os dados so compactados e gravados no disco. Este atributo ainda no foi totalmente implementado no cdigo atual do kernel. * `d' - Este atributo no usado pelo kernel, mas faz com que o programa `dump' evitar backup dos arquivos marcados com este atributo. * `i' - Imutvel - Arquivos imutveis no podem ser modificados, os dados tambm no podem ser gravados para estes arquivos, no podem ser removidos, renomeados. At mesmo o usurio root no poder modificar estes arquivos. Em diretrios, faz com que arquivos no possam ser adicionados ou apagados. Somente o usurio root pode especificar ou retirar este atributo. * `s' - O arquivo especificado marcado como "apagamento seguro"; quando o arquivo apagado, seus blocos so zerados e gravados de volta no disco (eliminando qualquer possibilidade de recuperao). * `S' - Faz a gravao imediatamente para o arquivo especificado. como especificar a opo "sync" na montagem do sistema de arquivos ext2, mas afeta somente os arquivos especificados. No tem efeito em diretrios. * `u' - O arquivo especificado marcado como recupervel. Quando o arquivo apagado, seu contedo salvo para permitir futura recuperao. Este atributo ainda no foi implementado totalmente no cdigo atual do kernel. Os atributos de arquivos/diretrios so visualizados atravs do utilitrio `lsattr'. Existem patches para os kernels da srie 2.2 que adicionam o suporte experimental aos atributos "c" e "u". Exemplos: * `chattr * `chattr * `chattr * `chattr

+AacdiSsu teste.txt' - Adiciona todos os atributos =ASs teste.txt' - Define os atributos para "ASs" +i -A teste.txt' - Retira o atributo "A" e adiciona "i" = teste.txt' - Retira todos os atributos

10.29. lsattr ------------Lista atributos de um arquivo/diretrio. modificados atravs do comando `chattr'. Os atributos podem ser

`lsattr [_opes_] [_arquivos/diretrios_]' Onde: _arquivos/diretrios_ Arquivos/diretrios que deseja listar os atributos. usados curingas. _opes_
-144-

Podem ser

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

-a Lista todos os arquivos, incluindo ocultos (iniciando com um "."). -d Lista os atributos de diretrios ao invs de listar os arquivos que ele contm. -R Faz a listagem em diretrios e subdiretrios. -v Mostra verses dos arquivos. Caso seja especificado sem parmetros, o `lsattr' listar os atributos de todos os arquivos e diretrios do diretrio atual. O `lsattr' mostrar mensagens de erro caso seja usado em um diretrio de pontos de montagem ou arquivos que no sejam _ext2_. Exemplo: `lsattr -d', `lsattr -R', `lsattr -R *.txt'

10.30. cut ---------Mostra sees de cada linha do arquivo dependendo das opes passadas ao programa. `cut [_opes_] [_arquivo_]' Onde: _arquivo_ Arquivo que ser verificado pelo comando `cut'. _opes_ -b, --bytes [bytes] Mostra somente a lista de [bytes] do arquivo. -c, --characters [numero] Mostra somente o [nmero] de caracteres no arquivo. semelhante a opo "-b" mas tabs e espaos so tratados como qualquer caracter. -f, --field [campos] Mostra somente a lista de [campos]. -d, --delimite [delimitador] Para uso com a opo -f, os campos so separados pelo primeiro caracter em [delimitador] ao invs de tabulaes. -s Para uso com a opo -f, somente mostra linhas que contm o caracter separador de campos. Devem ser especificadas opes para o funcionamento deste comando. Os bytes, campos e delimitadores podem ser especificados atravs de intervalos de caracteres (usando a-z), atravs de vrgulas (a,b,d) ou da combinao entre eles. * `cut -b 1,3 /etc/passwd' - Pega a primeira e terceira letra (byte) de cada linha do arquivo `/etc/passwd' * `cut -b 1,3-10 /etc/passwd' - Pega a primeira letra (byte) e terceira a dcima letra de cada linha do arquivo `/etc/passwd'. * `cut -c 1,3-10 /etc/passwd' - Pega o primeiro caracter e terceiro ao dcimo caracter de cada linha do arquivo `/etc/passwd'.

-145-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

10.31. cmp ---------Compara dois arquivos de qualquer tipo (binrio ou texto). Os dois arquivos especificados sero comparado e caso exista diferena entre eles, mostrado o nmero da linha e byte onde ocorreu a primeira diferena na sada padro (tela) e o programa retorna o cdigo de sada 1. `cmp [_arquivo1_] [_arquivo2_] [_opes_]' Opes: _arquivo1/arquivo2_ Arquivos que sero comparados. _opes_ -l Mostra o nmero do byte (hexadecimal) e valores diferentes de bytes (octal) para cada diferena. -s No mostra nenhuma diferena, s retorna o cdigo de sada do programa. Use o comando `zcmp' para comparar diretamente arquivos binrios/texto compactados com `gzip'. Exemplo: `cmp teste.txt teste1.txt'.

10.32. dirname -------------Obtm o nome do diretrio atravs do caminho passado ao programa. `dirname [_diretrio/arquivo_]' `dirname /usr/bin/dirname', `dirname /tmp/*'.

10.33. diff ----------Compara dois arquivos e mostra as diferenas entre eles. O comando `diff' usado somente para a comparao de arquivos em formato texto. As diferenas encontradas podem ser redirecionadas para um arquivo que poder ser usado pelo comando `patch' para aplicar as alteraes em um arquivo que no contm as diferenas. Isto til para grandes textos porque possvel copiar somente as modificaes (geradas atravs do diff, que so muito pequenas) e aplicar no arquivo para atualiza-lo (atravs do `patch') ao invs de copiar a nova verso. Este um sistema de atualizao muito usado na atualizao dos cdigo fonte do kernel do `GNU/Linux'. `diff [_diretrio1/arquivo1_] [_diretrio2/arquivo2_] [_opes_]' Opes: _diretrio1/arquivo1 diretrio2/arquivo2_ Arquivos /diretrios que sero comparados.
-146-

Normalmente usado

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

como primeiro arquivo/diretrio o mais antigo e o mais novo como segundo. _opes_ -lines [num] Gera a diferena com [num] linhas de contexto. Por padro o `diff' gera um arquivo com 2 linhas que o mnimo necessrio para o correto funcionamento do `patch'. -a Compara os dois arquivos como arquivos texto. -b Ignora espaos em branco como diferenas. -B Ignora linhas em branco inseridas ou apagadas nos arquivos. -i Ignora diferenas entre maisculas e minsculas nos arquivos. -H Usa anlise heurstica para verificar os arquivos. -N Em uma comparao de diretrios, se o arquivo apenas existe em um diretrio, trata-o como presente mas vazio no outro diretrio. -P Em uma comparao de diretrios, se o arquivos apenas existe no segundo diretrio, trata-o como presente mas vazio no primeiro diretrio. -q Mostra somente se os dois arquivos possuem diferenas. No mostra as diferenas entre eles. -r Compara diretrios e sub-diretrios existentes. -S [nome] Inicia a comparao de diretrios pelo arquivo [nome]. til quando cancelamos uma comparao. -t Aumenta a tabulao das diferenas encontradas. -u Usa o formato de comparao unificado. Use o comando `zdiff' para comparar diretamente arquivos compactados pelo utilitrio `gzip' Use o comando `sdiff' para visualizar as linhas diferentes entre os dois arquivos em formato texto simples. Exemplo: * `diff texto.txt texto1.txt' - Compara o arquivo `texto.txt' com `texto1.txt' e exibe suas diferenas na tela. * `diff -Bu texto.txt texto1.txt' - Compara o arquivo `texto.txt' com `texto1.txt' ignorando linhas em branco diferentes entre os dois arquivos e usando o formato unificado. * `diff texto.txt texto1.txt >texto.diff' - Compara o arquivo `texto.txt' com `texto1.txt' e gera um arquivo chamado `texto.diff' contendo a diferena entre eles. Este arquivo poder ser usado pelo `patch' para aplicar as diferenas existente entre os dois no arquivo `texto.txt'.

-147-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

* `diff -r /usr/src/linux-2.2.13 /usr/src/linux-2.2.14 >patch-2.2.14.diff' - Compara o diretrio e sub-diretrios `linux-2.2.13' e `linux-2.2.14' e grava as diferenas entre eles no arquivo `patch-2.2.14.diff'.

10.34. whereis -------------Localiza o arquivo que contm uma pgina de manual. A pesquisa feita usando-se os caminhos de pginas de manuais configuradas no sistema (normalmente o arquivo `/etc/manpath.config'). `whereis [_comando_]' Exemplo: `whereis ls', `whereis cd'.

10.35. which -----------Mostra a localizao de um arquivo executvel no sistema. A pesquisa de arquivos executveis feita atravs do path do sistema. Para maiores detalhes, veja Section 7.2, `path'. `which [_comando_]' Exemplos: `which ls', `which shutdown', `which which'.

-------------------------------------------------------------------------------

11. Comandos de rede -------------------Este captulo traz alguns comandos teis para uso em rede e ambientes multiusurio.

11.1. who --------Mostra quem est atualmente conectado no computador. Este comando lista os nomes de usurios que esto conectados em seu computador, o terminal e data da conexo. `who [_opes_]' onde: _opes_ -H, --heading Mostra o cabealho das colunas. -i, -u, --idle Mostra o tempo que o usurio est parado em Horas:Minutos. -m, i am Mostra o nome do computador e usurio associado ao nome.
-148-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

equivalente a digitar `who i am' ou `who am i'. -q, --count Mostra o total de usurios conectados aos terminais. -T, -w, --mesg Mostra se o usurio pode receber mensagens via `talk' (conversao). * + O usurio recebe mensagens via talk * - O usurio no recebe mensagens via talk. * ? No foi possvel determinar o dispositivo de terminal onde o usurio est conectado.

11.2. Telnet -----------Permite acesso a um computador remoto. mostrada uma tela de acesso correspondente ao computador local onde deve ser feita a autenticao do usurio para entrar no sistema. Muito til, mas deve ser tomado cuidados ao disponibilizar este servio para evitar riscos de segurana. `telnet [_opes_] [_ip/dns_] [_porta_]' onde: _ip/dns_ Endereo IP do computador de destino ou nome DNS. _porta_ Porta onde ser feita a conexo. Por padro, a conexo feita na porta _23_. _opes_ -8 Requisita uma operao binria de 8 bits. Isto fora a operao em modo binrio para envio e recebimento. Por padro, `telnet' no usa 8 bits. -a Tenta um login automtico, enviando o nome do usurio lido da varivel de ambiente `USER'. -d Ativa o modo de debug. -r Ativa a emulao de rlogin. -l [usurio] Faz a conexo usando [usurio] como nome de usurio. Exemplo: `telnet 192.168.1.1', `telnet 192.168.1.1 23'.

11.3. finger -----------Mostra detalhes sobre os usurios de um sistema. Algumas verses do `finger' possuem bugs e podem significar um risco para a segurana do sistema. recomendado desativar este servio na mquina local. `finger [_usurio_] [_usurio@host_]' Onde:
-149-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

_usurio_ Nome do usurio que deseja obter detalhes do sistema. Se no for digitado o nome de usurio, o sistema mostra detalhes de todos os usurios conectados no momento. _usurio@host_ Nome do usurio e endereo do computador que deseja obter detalhes. -l Mostra os detalhes de todos os usurios conectados no momento. Entre os detalhes, esto includos o _nome do interpretador de comandos_ (shell) do usurio, _diretrio home_, _nome do usurio_, _endereo_, etc. Estes dados so lidos de `/etc/passwd'. -p No exibe o contedo dos arquivos `.plan' e `.project' Se for usado sem parmetros, mostra os dados de todos os usurios conectados atualmente ao seu sistema. Exemplo: `finger', `finger root'.

11.4. ftp --------Permite a transferncia de arquivos do computador remoto/local e vice versa. O file transfer protocol o sistema de transmisso de arquivos mais usado na Internet. requerida a autenticao do usurio para que seja permitida a conexo. Muitos servidores ftp disponibilizam acesso annimo aos usurios, com acesso restrito. Uma vez conectado a um servidor `ftp', voc pode usar a maioria dos comandos do `GNU/Linux' para oper-lo. `ftp [_ip/dns_]' Abaixo alguns dos comandos mais usados no FTP: ls Lista arquivos do diretrio atual. cd [diretrio] Entra em um diretrio. get [arquivo] Copia um arquivo do servidor ftp para o computador local. O arquivo gravado, por padro, no diretrio onde o programa ftp foi executado. hash [on/off] Por padro esta opo est desligada. Quando ligada, faz com que o caracter "#" seja impresso na tela indicando o progresso do download. mget [arquivos] Semelhante ao get, mas pode copiar diversos arquivos e permite o uso de curingas. send [arquivo] Envia um arquivo para o diretrio atual do servidor FTP (voc precisa de uma conta com acesso a gravao para fazer isto). prompt [on/off] Ativa ou desativa a pergunta para a cpia de arquivo. Se estiver como `off' assume sim para qualquer pergunta.
-150-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Exemplo: `ftp ftp.br.debian.org'.

11.5. whoami -----------Mostra o nome que usou para se conectar ao sistema. til quando voc usa vrias contas e no sabe com qual nome entrou no sistema :-) `whoami'

11.6. dnsdomainname ------------------Mostra o nome do domnio de seu sistema.

11.7. hostname -------------Mostra ou muda o nome de seu computador na rede.

11.8. talk ---------Inicia conversa com outro usurio em uma rede local ou Internet. Talk um programa de conversao em tempo real onde uma pessoa v o que a outra escreve. `talk [_usurio_] [_tty_]' ou `talk [_usurio@host_]' Onde: _usurio_ Nome de login do usurio que deseja iniciar a conversao. Este nome pode ser obtido com o comando `who' (veja Section 11.1, `who'). _tty_ O nome de terminal onde o usurio est conectado, para iniciar uma conexo local. _usurio@host_ Se o usurio que deseja conversar estiver conectado em um computador remoto, voc deve usar o nome do usurio@hosname do computador. Aps o `talk' ser iniciado, ele verificar se o usurio pode receber mensagens, em caso positivo, ele enviar uma mensagem ao usurio dizendo como responder ao seu pedido de conversa. Veja Section 11.1, `who'. Para poder fazer a rolagem para cima e para baixo no `talk', pressione `CTRL+P'(Previous - Tela anterior) e `CTRL+N' (Next - Prxima tela).
-151-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Voc deve ter o daemon do `talk' instalado (`talkd') para receber requisies de conversa. Voc deve autorizar o recebimento de talks de outros usurios para que eles possam se comunicar com voc , para detalhes veja o comando Section 10.19, `mesg'.

11.9. ping ---------Verifica se um computador est disponvel na rede. Este comando muito utilizado por alguns programas de conexo e administradores para verificar se uma determinada mquina est conectada na rede e tambm para verificar o tempo de resposta de cada mquina da rede. O `ping' envia pacotes ICMS ECHO_REQUEST para um computador, este quando recebe o pacote envia uma resposta ao endereo de origem avisando que est disponvel na rede. `ping [_opes_][_IP/DNS_]' onde: _IP/dns_ Endereo IP ou nome DNS do endereo. _opes_ -c [num] Envia _num_ pacotes ao computador de destino. -f _Flood ping_. Envia novos pacotes antes de receber a resposta do pacote anterior. Para cada requisio enviada, um "." mostrado na tela e para cada resposta recebida, um backspace mostrado. Somente o usurio root pode utilizar esta opo e pode te auxiliar muito na deteco de erros de transmisso de pacotes em interfaces das mquinas em sua rede. -i [seg] Aguarda [seg] segundos antes de enviar cada pacote. -q No mostra as requisies enquanto so enviadas, somente mostra as linhas de sumrio no inicio e trmino do programa. -s [tamanho] Especifica o tamanho do pacote que ser enviado. -v, --verbose Sada detalhada, tanto os pacotes enviados como recebidos so listados. Exemplo: `ping 192.168.1.1', `ping www.br.debian.org'.

11.10. rlogin ------------Executa um login em uma mquina local ou remota. `rlogin [_opes_] [_IP/DNS_]' onde: _IP/DNS_ Endereo IP ou DNS do computador que ser acessado.
-152-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

opes -l [nome] Entra com o user id [nome] no sistema. `rlogin' usado para executar comandos interativamente no computador de destino (como se voc estivesse sentado diante dele, muito semelhante ao telnet). Para executar comandos no interativamente veja Section 11.11, `rsh'.

11.11. rsh ---------Executa um comando em um computador local ou remoto. `rsh [_opes_] [_IP/DNS_] [_comando_]' Onde: _IP/DNS_ Endereo IP ou nome DNS do computador. _comando_ Comando que ser executado no computador local/remoto. _opes_ -l [nome] Entra no sistema usando o login [nome]. `rsh' usado somente para executar comandos. Para usar um shell interativo veja Section 11.2, `Telnet' e Section 11.10, `rlogin'.

11.12. w -------Mostra quem est conectado no sistema e o que cada um est fazendo. `w [_opes_][_usurio_]' onde: _usurio_ Nome do usurio que deseja ver os detalhes. Se o usurio no for digitado, o comando `w' mostra detalhes de todos os usurios conectados no sistema. _opes_ -h No mostra o cabealho -u Ignora os nomes de usurios enquanto verifica os processo atuais e tempos de CPU. -f Mostra ou oculta o campo _FROM_ na listagem.

11.13. traceroute ----------------Mostra o caminho percorrido por um pacote para chegar ao seu destino. Este comando mostra na tela o caminho percorrido entre os Gateways da rede e o tempo gasto de retransmisso. Este comando til para encontrar computadores defeituosos na rede caso o pacote no esteja
-153-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

chegando ao seu destino. `traceroute [_opes_] [_host/IP de destino_]' Onde: _host/IP destino_ o endereo para onde o pacote ser enviado (por exemplo, www.debian.org). Caso o tamanho do pacote no seja especificado, enviado um pacote de 38 bytes. _opes_ -l Mostra o tempo de vida do pacote (ttl) -m [num] Ajusta a quantidade mximas de ttl dos pacotes. O padro 30. -n Mostra os endereos numericamente ao invs de usar resoluo DNS. -p [porta] Ajusta a porta que ser usada para o teste. A porta padro 33434. -r Pula as tabelas de roteamento e envia o pacote diretamente ao computador conectado a rede. -s [end] Usa o endereo IP/DNS [end] como endereo de origem para computadores com mltiplos endereos IPs ou nomes. -v Mostra mais detalhes sobre o resultado do `traceroute'. -w [num] Configura o tempo mximo que aguardar por uma resposta. O padro 3 segundos. Exemplos: `traceroute www.debian.org', `traceroute www.linux.org'.

11.14. netstat -------------Mostra conexes de rede, tabela de roteamento, estatsticas de interfaces, conexes masquerade, e mensagens. `netstat [_opes_]' Onde: _opes_ -i [interface] Mostra estatsticas da interface [interface]. -M, --masquerade Se especificado, tambm lista conexes masquerade. -n, --numeric Usa endereos numricos ao invs de tentar resolver nomes de hosts, usurios e portas. -c, --continuos Mostra a listagem a cada segundo at que a `CTRL'+`C' seja pressionado. Se no for especificada nenhuma opo, os detalhes das conexes atuais sero mostrados.

-154-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

11.15. wall ----------Envia uma mensagem a todos os usurios do sistema. Este comando faz a leitura de um arquivo ou entrada padro e escreve o resultado em todos os terminais onde existem usurios conectados. Somente o usurio root pode utilizar este comando. `wall [_arquivo_]' Exemplos: `wall /tmp/mensagem.txt', `echo Teste de mensagem enviada a todos os usurios conectados ao sistema|wall'.

-------------------------------------------------------------------------------

12. Comandos para manipulao de contas --------------------------------------Este captulo traz comandos usados para manipulao de conta de usurios e grupos em sistemas `GNU/Linux'. Entre os assuntos descritos aqui esto adicionar usurios ao sistema, adicionar grupos, incluir usurios existente em novos grupos, etc.

12.1. adduser ------------Adiciona um usurio ou grupo no sistema. Por padro, quando um novo usurio adicionado, criado um grupo com o mesmo nome do usurio. Opcionalmente o `adduser' tambm pode ser usado para adicionar um usurio a um grupo (veja Section 12.10, `Adicionando o usurio a um grupo extra'). Ser criado um diretrio home com o nome do usurio (a no ser que o novo usurio criado seja um usurio do sistema) e este receber uma identificao. A identificao do usurio (UID) escolhida ser a primeira disponvel no sistema especificada de acordo com a faixa de UIDS de usurios permitidas no arquivo de configurao `/etc/adduser.conf'. Este o arquivo que contm os padres para a criao de novos usurios no sistema. `adduser [_opes_] [_usurio/grupo_]' Onde: _usurio/grupo_ Nome do novo usurio que ser adicionado ao sistema. _opes_ -disable-passwd No executa o programa `passwd' para escolher a senha e somente permite o uso da conta aps o usurio escolher uma senha. --force-badname Desativa a checagem de senhas ruins durante a adio do novo usurio. Por padro o `adduser' checa se a senha pode ser facilmente adivinhada. --group Cria um novo grupo ao invs de um novo usurio. A criao de
-155-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

grupos tambm pode ser feita pelo comando `addgroup'. -uid [num] Cria um novo usurio com a identificao [num] ao invs de procurar o prximo UID disponvel. -gid [num] Faz com que o usurio seja parte do grupo [gid] ao invs de pertencer a um novo grupo que ser criado com seu nome. Isto til caso deseje permitir que grupos de usurios possam ter acesso a arquivos comuns. Caso estiver criando um novo grupo com `adduser', a identificao do novo grupo ser [num]. --home [dir] Usa o diretrio [dir] para a criao do diretrio home do usurio ao invs de usar o especificado no arquivo de configurao `/etc/adduser.conf'. --ingroup [nome] Quando adicionar um novo usurio no sistema, coloca o usurio no grupo [nome] ao invs de criar um novo grupo. --quiet No mostra mensagens durante a operao. --system Cria um usurio de sistema ao invs de um usurio normal. Os dados do usurio so colocados no arquivo `/etc/passwd' aps sua criao e os dados do grupo so colocados no arquivo `/etc/group'. OBSERVAO: Caso esteja usando senhas ocultas (shadow passwords), as senhas dos usurios sero colocadas no arquivo `/etc/shadow' e as senhas dos grupos no arquivo `/etc/gshadow'. Isto aumenta mais a segurana do sistema porque somente o usurio `root' pode ter acesso a estes arquivos, ao contrrio do arquivo `/etc/passwd' que possui os dados de usurios e devem ser lidos por todos.

12.2. addgroup -------------Adiciona um novo grupo de usurios no sistema. as mesmas do Section 12.1, `adduser'. `addgroup [_usurio/grupo_] [_opes_]' As opes usadas so

12.3. passwd -----------Muda a senha do usurio ou grupo. Um usurio somente pode alterar a senha de sua conta, mas o superusurio (`root') pode alterar a senha de qualquer conta de usurio, inclusive a data de validade da conta, etc. Os donos de grupos tambm podem alterar a senha do grupo com este comando. Os dados da conta do usurio como nome, endereo, telefone, tambm podem ser alterados com este comando. `passwd [_usurio/grupo_] [_opes_]' Onde:
-156-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

_usurio_ Nome do usurio/grupo que ter sua senha alterada. _opes_ -g Se especificada, a senha do grupo ser alterada. Somente o root ou o administrador do grupo pode alterar sua senha. A opo -r pode ser usada com esta para remover a senha do grupo. A opo -R pode ser usada para restringir o acesso do grupo para outros usurios. -x [dias] Especifica o nmero mximo de dias que a senha poder ser usada. Aps terminar o prazo, a senha dever ser modificada. -i Desativa a conta caso o usurio no tenha alterado sua senha aps o tempo especificado por -x. -n [dias] Especifica o nmero mnimo de dias para a senha ser alterada. O usurio no poder mudar sua senha at que [dias] sejam atingidos desde a ltima alterao de senha. -w [num] Nmero de dias antecedentes que o usurio receber o alerta para mudar sua senha. O alerta ocorre [num] dias antes do limite da opo -x, avisando ao usurios quantos dias restam para a troca de sua senha. -l [nome] Bloqueia a conta do usurio [nome]. Deve ser usada pelo root. O bloqueio da conta feito acrescentando um caracter a senha para que no confira com a senha original. -u [nome] Desbloqueia a conta de um usurio bloqueada com a opo -l. -S [nome] Mostra o status da conta do usurio [nome]. A primeira parte o nome do usurio seguido de L(conta bloqueada), NP(sem senha), ou P (com senha), a terceira parte a data da ltima modificao da senha, a quarta parte a perodo mnimo, mximo, alerta e o perodo de inatividade para a senha. Procure sempre combinar letras maisculas, minsculas, e nmeros ao escolher suas senhas. No recomendado escolher palavras normais como sua senha pois podem ser vulnerveis a ataques de dicionrios cracker. Outra recomendao utilizar _senhas ocultas_ em seu sistema (_shadow password_). Voc deve ser o dono da conta para poder modificar a senhas. O usurio root pode modificar/apagar a senha de qualquer usurio. Exemplo: `passwd root'.

12.4. newgrp -----------Altera a identificao de grupo do usurio. Para retornar a identificao anterior, digite `exit' e tecle `Enter'. Para executar um comando com outra identificao de grupo de usurio, use o comando Section 12.9, `sg'. `newgrp _-_ [_grupo_]'
-157-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Onde: _-_ Se usado, inicia um novo ambiente aps o uso do comando `newgrp' (semelhante a um novo login no sistema), caso contrrio, o ambiente atual do usurio mantido. _grupo_ Nome do grupo ou nmero do grupo que ser includo. Quando este comando usado, pedida a senha do grupo que deseja acessar. Caso a senha do grupo esteja incorreta ou no exista senha definida, a execuo do comando negada. A listagem dos grupos que pertence atualmente pode ser feita usando o comando Section 12.12, `id'.

12.5. userdel ------------Apaga um usurio do sistema. Quando usado, este comando apaga todos os dados da conta especificado dos arquivos de contas do sistema. `userdel [_-r_] [_usurio_]' Onde: -r Apaga tambm o diretrio HOME do usurio. OBS: Note que uma conta de usurio no poder ser removida caso ele estiver no sistema, pois os programas podem precisar ter acesso aos dados dele (como UID, GID) no `/etc/passwd'.

12.6. groupdel -------------Apaga um grupo do sistema. Quando usado, este comando apaga todos os dados do grupo especificado dos arquivos de contas do sistema. `groupdel [_grupo_]' Tenha certeza que no existem arquivos/diretrios criados com o grupo apagado atravs do comando `find'. OBS: Voc no pode remover o grupo primrio de um usurio. usurio primeiro. Remova o

12.7. lastlog ------------Mostra o ltimo login dos usurios cadastrados no sistema. mostrado o nome usado no login, o terminal onde ocorreu a conexo e a hora da ltima conexo. Estes dados so obtidos atravs da pesquisa e formatao do arquivo `/var/log/lastlog'. Caso o usurio no tenha feito login, mostrada a mensagem `** Never logged in **' `lastlog [_opes_]'
-158-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Onde: _opes_ -t [dias] Mostra somente os usurios que se conectaram ao sistema nos ltimos [dias]. -u [nome] Mostra somente detalhes sobre o usurio [nome]. A opo -t substitui a opo -u caso sejam usadas.

12.8. last ---------Mostra uma listagem de entrada e sada de usurios no sistema. mostrados os seguintes campos na listagem: * Nome do usurio * Terminal onde ocorreu a conexo/desconexo * O hostname (caso a conexo tenha ocorrido remotamente) ou console (caso tenha ocorrido localmente). * A data do login/logout, a hora do login/down se estiver fora do sistema/ still logged in se ainda estiver usando o sistema * Tempo (em Horas:Minutos) que esteve conectado ao sistema. A listagem mostrada em ordem inversa, ou seja, da data mais atual para a mais antiga. A listagem feita pelo `last' obtida de `/var/log/wtmp'. `last [_opes_]' Onde: _opes_ -n [num] Mostra [num] linhas. Caso no seja usada, todas as linhas so mostradas. -R No mostra o campo HostName. -a Mostra o hostname na ltima coluna. Ser muito til se combinada com a opo -d. -d Usa o DNS para resolver o IP de sistemas remotos para nomes DNS. -x Mostra as entradas de desligamento do sistema e alteraes do nvel de execuo do sistema. O comando `last' pode ser seguido de um argumento que ser pesquisado como uma expresso regular durante a listagem. O comando `last' usa o arquivo `/var/log/wtmp' para gerar sua listagem, mas alguns sistemas podem no possuir este arquivo. O arquivo `/var/log/wtmp' somente usado caso existir. Voc pode
-159-

So

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

cria-lo com o comando `"echo -n >/var/log/wtmp"' ou `touch /var/log/wtmp'. * * * * * `last' - Mostra a listagem geral `last -a' - Mostra a listagem geral incluindo o nome da mquina `last gleydson' - Mostra somente atividades do usurio gleydson `last reboot' - Mostra as reinicializaes do sistema `last tty1' - Mostra todas as atividades no tty1

12.9. sg -------Executa um comando com outra identificao de grupo. A identificao do grupo de usurio modificada somente durante a execuo do comando. Para alterar a identificao de grupo durante sua seo shell, use o comando Section 12.4, `newgrp'. `sg [_-_] [_grupo_] [_comando_]' Onde: `-' Se usado, inicia um novo ambiente durante o uso do comando (semelhante a um novo login e execuo do comando), caso contrrio, o ambiente atual do usurio mantido. `grupo' Nome do grupo que o comando ser executado. `comando' Comando que ser executado. O comando ser executado pelo bash. Quando este comando usado, pedida a senha do grupo que deseja acessar. Caso a senha do grupo esteja incorreta ou no exista senha definida, a execuo do comando negada. Exemplo: `sg root ls /root'

12.10. Adicionando o usurio a um grupo extra --------------------------------------------Para adicionar um usurio em um novo grupo e assim permitir que ele acesse os arquivos/diretrios que pertencem quele grupo, voc deve estar como root e editar o arquivo `/etc/group' com o comando `vigr'. Este arquivo possui o seguinte formato: NomedoGrupo:senha:GID:usurios Onde: NomedoGrupo o nome daquele grupo de usurios. senha Senha para ter acesso ao grupo. Caso esteja utilizando senhas ocultas para grupos, as senhas estaro em `/etc/gshadow'. GID Identificao numrica do grupo de usurio.
-160-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

usuarios Lista de usurios que tambm fazem parte daquele grupo. Caso exista mais de um nome de usurio, eles devem estar separados por vrgula. Deste modo para acrescentar o usurio "joao" ao grupo `audio' para ter acesso aos dispositivos de som do Linux, acrescente o nome no final da linha: "audio:x:100:joao". Pronto, basta digitar `logout' e entrar novamente com seu nome e senha, voc estar fazendo parte do grupo `audio' (confira digitando `groups' ou `id'). Outros nomes de usurios podem ser acrescentados ao grupo `audio' bastando separar os nomes com vrgula. Voc tambm pode usar o comando `adduser' da seguinte forma para adicionar automaticamente um usurio a um grupo: adduser joao audio Isto adicionaria o usurio "joao" ao grupo `audio' da mesma forma que fazendo-se a edio manualmente.

12.11. chfn ----------Muda os dados usados pelo comando Section 11.3, `finger'. `chfn [_usurio_] [_opes_]' Onde: _usurio_ Nome do usurio. _opes_ -f [nome] Muda o nome completo do usurio. -r [nome] Muda o nmero da sala do usurio. -w [tel] Muda o telefone de trabalho do usurio. -h [tel] Muda o telefone residencial do usurio. -o [outros] Muda outros dados do usurio. Caso o nome que acompanha as opes (como o nome completo) contenha espaos, use "" para identifica-lo. Exemplo: `chfn -f "Nome do Usurio root" root'

12.12. id --------Mostra a identificao atual do usurio, grupo primrio e outros grupos que pertence. `id [_opes_] [_usurio_]'
-161-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Onde: _usurio_ o usurio que desejamos ver a identificao, grupos primrios e complementares. _opes_ -g, --group Mostra somente a identificao do grupo primrio. -G, --groups Mostra a identificao de outros grupos que pertence. -n, --name Mostra o nome do usurio e grupo ao invs da identificao numrica. -u, --user Mostra somente a identificao do usurio (user ID). -r, --real Mostra a identificao real de usurio e grupo, ao invs da efetiva. Esta opo deve ser usada junto com uma das opes: -u, -g, ou -G. Caso no sejam especificadas opes, `id' mostrar todos os dados do usurio. Exemplo: `id', `id --user', `id -r -u'.

12.13. logname -------------Mostra seu login (username). `logname'

12.14. users -----------Mostra os nomes de usurios usando atualmente o sistema. Os nomes de usurios so mostrados atravs de espaos sem detalhes adicionais, para ver maiores detalhes sobre os usurios, veja os comandos Section 12.12, `id' e Section 11.1, `who'. `users' Os nomes de usurios atualmente conectados ao sistema so obtidos do arquivo `/var/log/wtmp'.

12.15. groups ------------Mostra os grupos que o usurio pertence. `groups [_usurio_]' Exemplo: `groups', `groups root'

-162-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

-------------------------------------------------------------------------------

13. Permisses de acesso a arquivos e diretrios -----------------------------------------------A permisso de acesso protege o sistema de arquivos Linux do acesso indevido de pessoas ou programas no autorizados. A permisso de acesso do `GNU/Linux' tambm impede que um programa mal intencionado, por exemplo, apague um arquivo que no deve, envie arquivos para outra pessoa ou fornea acesso da rede para que outros usurios invadam o sistema. O sistema `GNU/Linux' muito seguro e como qualquer outro sistema seguro e confivel impede que usurios iniciantes (ou mal intencionados) instalem programas enviados por terceiros sem saber para que eles realmente servem e causem danos irreversveis em seus arquivos, seu micro ou sua empresa. Esta seo pode se tornar um pouco difcil de se entender, ento recomendo ler e ao mesmo tempo prtica-la para uma tima compreenso. No se preocupe, tambm coloquei exemplos para ajuda-lo a entender o sistema de permisses de acesso do ambiente `GNU/Linux'.

13.1. Donos, grupos e outros usurios ------------------------------------O princpio da segurana no sistema de arquivos `GNU/Linux' definir o acesso aos arquivos por donos, grupos e outros usurios: _dono_ a pessoa que criou o arquivo ou o diretrio. O nome do dono do arquivo/diretrio o mesmo do usurio usado para entrar no sistema `GNU/Linux'. Somente o dono pode modificar as permisses de acesso do arquivo. As permisses de acesso do dono de um arquivo somente se aplicam ao dono do arquivo/diretrio. A identificao do dono tambm chamada de user id (UID). A identificao de usurio e o nome do grupo que pertence so armazenadas respectivamente nos arquivos `/etc/passwd' e `/etc/group'. Estes so arquivos textos comuns e podem ser editados em qualquer editor de texto, mas tenha cuidado para no modificar o campo que contm a senha do usurio encriptada (que pode estar armazenada neste arquivo caso no estiver usando senhas ocultas). _grupo_ Para permitir que vrios usurios diferentes tivessem acesso a um mesmo arquivo (j que somente o dono poderia ter acesso ao arquivo), este recurso foi criado. Cada usurio pode fazer parte de um ou mais grupos e ento acessar arquivos que pertenam ao mesmo grupo que o seu (mesmo que estes arquivos tenham outro _dono_). Por padro, quando um novo usurio criado, o grupo ele pertencer ser o mesmo de seu grupo primrio (exceto pelas condies que explicarei adiante) (veja isto atravs do comando `id', veja Section 12.12, `id'). A identificao do grupo chamada de `gid (_group id_)'. Um usurio pode pertencer a um ou mais grupos. Para detalhes de
-163-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

como incluir o usurio em mais grupos veja Section 12.10, `Adicionando o usurio a um grupo extra'. _outros_ a categoria de usurios que no so donos ou no pertencem ao grupo do arquivo. Cada um dos tipos acima possuem trs tipos bsicos de permisses de acesso que sero vistas na prxima seo.

13.2. Tipos de Permisses de acesso ----------------------------------Quanto aos tipos de permisses que se aplicam ao _dono_, _grupo_ e _outros usurios_, temos 3 permisses bsicas: * `r' - Permisso de leitura para arquivos. Caso for um diretrio, permite listar seu contedo (atravs do comando `ls', por exemplo). * `w' - Permisso de gravao para arquivos. Caso for um diretrio, permite a gravao de arquivos ou outros diretrios dentro dele. Para que um arquivo/diretrio possa ser apagado, necessrio o acesso a gravao. * `x' - Permite executar um arquivo (caso seja um programa executvel). Caso seja um diretrio, permite que seja acessado atravs do comando `cd' (veja Section 8.2, `cd' para detalhes). As permisses de acesso a um arquivo/diretrio podem ser visualizadas com o uso do comando `ls -la'. Para maiores detalhes veja Section 8.1, `ls'. As 3 letras (rwx) so agrupadas da seguinte forma: -rwxrwxrwx gleydson users teste Virou uma baguna no? Vou explicar cada parte para entender o que quer dizer as 10 letras acima (da esquerda para a direita): * A primeira letra diz qual o tipo do arquivo. Caso tiver um "d" um diretrio, um "l" um link a um arquivo no sistema (veja Section 10.4, `ln' para detalhes) , um "-" quer dizer que um arquivo comum, etc. * Da segunda a quarta letra (rwx) dizem qual a permisso de acesso ao _dono_ do arquivo. Neste caso _gleydson_ ele tem a permisso de ler (r - read), gravar (w - write) e executar (x execute) o arquivo `teste'. * Da quinta a stima letra (rwx) diz qual a permisso de acesso ao _grupo_ do arquivo. Neste caso todos os usurios que pertencem ao grupo _users_ tem a permisso de ler (r), gravar (w), e tambm executar (x) o arquivo `teste'. * Da oitava a dcima letra (rwx) diz qual a permisso de acesso para os _outros usurios_. Neste caso todos os usurios que no so donos do arquivo `teste' tem a permisso para ler, gravar e executar o programa. Veja o comando Section 13.7, `chmod' para detalhes sobre a mudana das permisses de acesso de arquivos/diretrios.

-164-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

13.3. Etapas para acesso a um arquivo/diretrio ----------------------------------------------O acesso a um arquivo/diretrio feito verificando primeiro se o usurio que acessar o arquivo o seu _dono_, caso seja, as permisses de dono do arquivo so aplicadas. Caso no seja o _dono_ do arquivo/diretrio, verificado se ele pertence ao grupo correspondente, caso pertena, as permisses do _grupo_ so aplicadas. Caso no pertena ao _grupo_, so verificadas as permisses de acesso para os outros usurios que no so _donos_ e no pertencem ao _grupo_ correspondente ao arquivo/diretrio. Aps verificar aonde o usurio se encaixa nas permisses de acesso do arquivo (se ele o _dono_, pertence ao _grupo_, ou _outros usurios_), verificado se ele ter permisso acesso para o que deseja fazer (ler, gravar ou executar o arquivo), caso no tenha, o acesso negado, mostrando uma mensagem do tipo: "Permission denied" (permisso negada). O que isto que dizer que mesmo que voc seja definir o acesso do _dono_ (atravs do comando leitura (r) mas o acesso dos _outros usurios_ gravao, voc somente poder ler este arquivo podero ler/grava-lo. o dono do arquivo e `chmod') como somente como leitura e mas os outros usurios

As permisses de acesso (leitura, gravao, execuo) para donos, grupos e outros usurios so independentes, permitindo assim um nvel de acesso diferenciado. Para maiores detalhes veja Section 13.2, `Tipos de Permisses de acesso'. Lembre-se: Somente o dono pode modificar um arquivo/diretrio! Para mais detalhes veja os comandos Section 13.9, `chown' e Section 13.8, `chgrp'.

13.4. Exemplos prticos de permisses de acesso ----------------------------------------------Abaixo dois exemplos prticos de `Exemplo de acesso a um arquivo' acesso a um diretrio'. Os dois para uma perfeita compreenso do 13.4.1. Exemplo de acesso a um arquivo -------------------------------------Abaixo um exemplo e explicao das permisses de acesso a um arquivo no `GNU/Linux' (obtido com o comando `ls -la', explicarei passo a passo cada parte: -rwxr-xr-- 1 gleydson user 8192 nov 4 16:00 teste `-rwxr-xr--' Estas so as permisses de acesso ao arquivo `teste'. Um conjunto de 10 letras que especificam o tipo do arquivo, permisso do dono do arquivo, grupo do arquivo e outros usurios. Veja a explicao detalhada sobre cada uma abaixo:
-165-

permisso de acesso: Section 13.4.1, e a Section 13.4.2, `Exemplo de exemplos so explicados passo a passo assunto. Vamos a prtica!

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

_-_rwxr-xr-A primeira letra (do conjunto das 10 letras) determina o tipo do arquivos. Se a letra for um _d_ um diretrio, e voc poder acessa-lo usando o comando `cd'. Caso for um _l_ um link simblico para algum arquivo ou diretrio no sistema (para detalhes veja o comando Section 10.4, `ln' . Um _-_ significa que um arquivo normal. -_rwx_r-xr-Estas 3 letras (da segunda a quarta do conjunto das 10 letras) so as permisses de acesso do _dono_ do arquivo `teste'. O dono (neste caso _gleydson_) tem a permisso para ler (r), gravar (w) e executar (x) o arquivo `teste'. -rwx_r-x_r-Estas 3 letras (da quinta a stima do conjunto das 10 letras) so as permisses de acesso dos usurios que pertencem ao _grupo user_ do arquivo `teste'. Os usurios que pertencem ao grupo _user_ tem a permisso somente para ler (r) e executar (x) o arquivo `teste' no podendo modifica-lo ou apaga-lo. -rwxr-x_r--_ Estas 3 letras (da oitava a dcima) so as permisses de acesso para usurios que _no_ so _donos_ do arquivo `teste' e que _no_ pertencem ao grupo _user_. Neste caso, estas pessoas somente tero a permisso para ver o contedo do arquivo `teste'. _gleydson_ Nome do dono do arquivo `teste'. _user_ Nome do grupo que o arquivo `teste' pertence. `teste' Nome do arquivo. 13.4.2. Exemplo de acesso a um diretrio ---------------------------------------Abaixo um exemplo com explicaes das permisses de acesso a um diretrio no `GNU/Linux': drwxr-x--- 2 gleydson user 1024 nov 4 17:55 exemplo `drwxr-x---' Permisses de acesso ao diretrio `exemplo'. um conjunto de 10 letras que especificam o tipo de arquivo, permisso do dono do diretrio, grupo que o diretrio pertence e permisso de acesso a outros usurios. Veja as explicaes abaixo: _d_rwxr-x--A primeira letra (do conjunto das 10) determina o tipo do arquivo. Neste caso um diretrio porque tem a letra _d_. d_rwx_r-x--Estas 3 letras (da segunda a quarta) so as permisses de acesso do _dono_ do diretrio `exemplo'. O dono do diretrio (neste caso _gleydson_) tem a permisso para listar arquivos do diretrio (r), gravar arquivos no diretrio (w) e entrar no diretrio (x). drwx_r-x_--Estas 3 letras (da quinta a stima) so as permisses de acesso dos usurios que pertencem ao _grupo user_. Os usurios que pertencem ao grupo _user_ tem a permisso
-166-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

somente para listar arquivos do diretrio (r) e entrar no diretrio (x) `exemplo'. drwxr-x_---_ Estas 3 letras (da oitava a dcima) so as permisses de acesso para usurios que _no_ so _donos_ do diretrio `exemplo' e que _no_ pertencem ao grupo _user_. Com as permisses acima, nenhum usurio que se encaixe nas condies de _dono_ e _grupo_ do diretrio tem a permisso de acessa-lo. _gleydson_ Nome do dono do diretrio `exemplo'. _user_ Nome do grupo que diretrio `exemplo' pertence. `exemplo' Nome do diretrio. Para detalhes de como alterar o dono/grupo de um arquivo/diretrio, veja os comandos Section 13.7, `chmod', Section 13.8, `chgrp' e Section 13.9, `chown'. _OBSERVAES_: * O usurio `root' no tem nenhuma restrio de acesso ao sistema. * Se voc tem permisses de gravao no diretrio e tentar apagar um arquivo que voc no tem permisso de gravao, o sistema perguntar se voc confirma a excluso do arquivo apesar do modo leitura. Caso voc tenha permisses de gravao no arquivo, o arquivo ser apagado por padro sem mostrar nenhuma mensagem de erro (a no ser que seja especificada a opo -i com o comando `rm'). * Por outro lado, mesmo que voc tenha permisses de gravao em um arquivo mas no tenha permisses de gravao em um diretrio, a excluso do arquivo ser negada. Isto mostra que levado mais em considerao a permisso de acesso do diretrio do que as permisses dos arquivos e sub-diretrios que ele contm. Este ponto muitas vezes ignorado por muitas pessoas e expem seu sistema a riscos de segurana. Imagine o problema que algum usurio que no tenha permisso de gravao em um arquivo mas que a tenha no diretrio pode causar em um sistema mal administrado.

13.5. Permisses de Acesso Especiais -----------------------------------Em adio as trs permisses bsicas (rwx), existem permisses de acesso especiais (stX) que afetam arquivos executveis e diretrios: * `s' - Quando usado na permisso de acesso do _Dono_, ajusta a identificao efetiva do usurio do processo durante a execuo de um programa, tambm chamado de _bit setuid_. No tem efeito em diretrios. Quando `s' usado na permisso de acesso do _Grupo_, ajusta a identificao efetiva do grupo do processo durante a execuo de um programa, chamado de _bit setgid_. identificado pela letra `s' no lugar da permisso de execuo do grupo do arquivo/diretrio. Em diretrios, fora que os arquivos criados dentro dele pertenam ao mesmo grupo do diretrio, ao invs do grupo primrio que o usurio pertence. Ambos _setgid_ e _setuid_ podem aparecer ao mesmo tempo no mesmo arquivo/diretrio. A permisso de acesso especial `s' somente
-167-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

pode aparecer no campo _Dono_ e _Grupo_. * `S' - Idntico a "s". Significa que no existe a permisso "x" (execuo ou entrar no diretrio) naquele lugar. Um exemplo o chmod 2760 em um diretrio. * `t' - Salva a imagem do texto do programa no dispositivo swap, assim ele ser carregado mais rapidamente quando executado, tambm chamado de _stick bit_. Em diretrios, impede que outros usurios removam arquivos dos quais no so donos. Isto chamado de colocar o diretrio em modo `append-only'. Um exemplo de diretrio que se encaixa perfeitamente nesta condio o `/tmp', todos os usurios devem ter acesso para que seus programas possam criar os arquivos temporrios l, mas nenhum pode apagar arquivos dos outros. A permisso especial `t', pode ser especificada somente no campo outros usurios das permisses de acesso. * `T' - Idntico a "t". Significa que no existe a permisso "x" naquela posio (por exemplo, em um chmod 1776 em um diretrio). * `X' - Se voc usar `X' ao invs de `x', a permisso de execuo somente afetada se o arquivo j tiver permisses de execuo. Em diretrios ela tem o mesmo efeito que a permisso de execuo `x'. * Exemplo da permisso de acesso especial `X': 1. Crie um arquivo `teste' (digitando `touch teste') e defina sua permisso para `rw-rw-r--' (`chmod ug=rw,o=r teste' ou `chmod 664 teste'). 2. Agora use o comando `chmod a+X teste' 3. digite `ls -l' 4. Veja que as permisses do arquivo no foram afetadas. 5. agora digite `chmod o+x teste' 6. digite `ls -l', voc colocou a permisso de execuo para os outros usurios. 7. Agora use novamente o comando `chmod a+X teste' 8. digite `ls -l' 9. Veja que agora a permisso de execuo foi concedida a todos os usurios, pois foi verificado que o arquivo era executvel (tinha permisso de execuo para outros usurios). 10. Agora use o comando `chmod a-X teste' 11. Ele tambm funcionar e remover as permisses de execuo de todos os usurios, porque o arquivo `teste' tem permisso de execuo (confira digitando `ls -l'). 12. Agora tente novamente o `chmod a+X teste' 13. Voc deve ter reparado que a permisso de acesso especial `X' semelhante a `x', mas somente faz efeito quanto o arquivo j tem permisso de execuo para o dono, grupo ou outros usurios. Em diretrios, a permisso de acesso especial `X' funciona da mesma forma que `x', at mesmo se o diretrio no tiver nenhuma permisso de acesso (`x').

13.6. A conta root -----------------_Esta seo foi retirada do Manual de Instalao da Debian_.

-168-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

A conta root tambm chamada de _super usurio_, este um login que no possui restries de segurana. A conta root somente deve ser usada para fazer a administrao do sistema, e usada o menor tempo possvel. Qualquer senha que criar dever conter de 6 a 8 caracteres (em sistemas usando crypto) ou at frases inteiras (caso esteja usando MD5, que garante maior segurana), e tambm poder conter letras maisculas e minsculas, e tambm caracteres de pontuao. Tenha um cuidado especial quando escolher sua senha root, porque ela a conta mais poderosa. Evite palavras de dicionrio ou o uso de qualquer outros dados pessoais que podem ser adivinhados. Se qualquer um lhe pedir senha root, seja extremamente cuidadoso. Voc normalmente nunca deve distribuir sua conta root, a no ser que esteja administrando um computador com mais de um administrador do sistema. Utilize uma conta de usurio normal ao invs da conta root para operar seu sistema. Porque no usar a conta root? Bem, uma razo para evitar usar privilgios root por causa da facilidade de se cometer danos irreparveis como root. Outra razo que voc pode ser enganado e rodar um programa _Cavalo de Tria_ -- que um programa que obtm poderes do _super usurio_ para comprometer a segurana do seu sistema sem que voc saiba.

13.7. chmod ----------Muda a permisso de acesso a um arquivo ou diretrio. Com este comando voc pode escolher se usurio ou grupo ter permisses para ler, gravar, executar um arquivo ou arquivos. Sempre que um arquivo criado, seu dono o usurio que o criou e seu grupo o grupo do usurio (exceto para diretrios configurados com a permisso de grupo `"s"', ser visto adiante). `chmod [_opes_] [_permisses_] [_diretrio/arquivo_]' Onde: _diretrio/arquivo_ Diretrio ou arquivo que ter sua permisso mudada. _opes_ -v, --verbose Mostra todos os arquivos que esto sendo processados. -f, --silent No mostra a maior parte das mensagens de erro. -c, --change Semelhante a opo -v, mas s mostra os arquivos que tiveram as permisses alteradas. -R, --recursive Muda permisses de acesso do _diretrio/arquivo_ no diretrio atual e sub-diretrios. ugoa+-=rwxXst * _ugoa_ - Controla que nvel de acesso ser mudado. Especificam, em ordem, usurio (u), grupo (g), outros (o), todos (a).
-169-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

* _+-=_ - _+_ coloca a permisso, _-_ retira a permisso do arquivo e _=_ define a permisso exatamente como especificado. * rwx - _r_ permisso de leitura do arquivo. _w_ permisso de gravao. _x_ permisso de execuo (ou acesso a diretrios). `chmod' no muda permisses de links simblicos, as permisses devem ser mudadas no arquivo alvo do link. Tambm podem ser usados cdigos numricos octais para a mudana das permisses de acesso a arquivos/diretrios. Para detalhes veja Section 13.10, `Modo de permisso octal'. DICA: possvel copiar permisses de acesso do arquivo/diretrio, por exemplo, se o arquivo `teste.txt' tiver a permisso de acesso `r-xr-----' e voc digitar `chmod o=u', as permisses de acesso dos outros usurios (o) sero idnticas ao do dono (u). Ento a nova permisso de acesso do arquivo `teste.txt' ser `r-xr--r-x' Exemplos de permisses de acesso: `chmod g+r *' Permite que todos os usurios que pertenam ao grupo dos arquivos (g) tenham (+) permisses de leitura (r) em todos os arquivos do diretrio atual. `chmod o-r teste.txt' Retira (-) a permisso de leitura (r) do arquivo `teste.txt' para os outros usurios (usurios que no so donos e no pertencem ao grupo do arquivo `teste.txt'). `chmod uo+x teste.txt' Inclui (+) a permisso de execuo do arquivo `teste.txt' para o dono e outros usurios do arquivo. `chmod a+x teste.txt' Inclui (+) a permisso de execuo do arquivo `teste.txt' para o dono, grupo e outros usurios. `chmod a=rw teste.txt' Define a permisso de todos os usurios exatamente (=) para leitura e gravao do arquivo `teste.txt'.

13.8. chgrp ----------Muda o grupo de um arquivo/diretrio. `chgrp [_opes_] [grupo] [arquivo/diretrio]' Onde: _grupo_ Novo grupo do _arquivo/diretrio_. _arquivo/diretrio_ Arquivo/diretrio que ter o grupo alterado. _opes_ -c, --changes Somente mostra os arquivos/grupos que forem alterados. -f, --silent No mostra mensagens de erro para arquivos/diretrios que no puderam ser alterados. -v, --verbose
-170-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Mostra todas as mensagens e arquivos sendo modificados. -R, --recursive Altera os grupos de arquivos/sub-diretrios do diretrio atual.

13.9. chown ----------Muda dono de um arquivo/diretrio. usado para mudar o grupo. Opcionalmente pode tambm ser

`chown [_opes_] [dono.grupo] [diretrio/arquivo]' onde: _dono.grupo_ Nome do _dono.grupo_ que ser atribudo ao _diretrio/arquivo_. O grupo opcional. _diretrio/arquivo_ Diretrio/arquivo que o dono.grupo ser modificado. _opes_ -v, --verbose Mostra os arquivos enquanto so alterados. -f, --supress No mostra mensagens de erro durante a execuo do programa. -c, --changes Mostra somente arquivos que forem alterados. -R, --recursive Altera dono e grupo de arquivos no diretrio atual e sub-diretrios. O _dono.grupo_ pode ser especificado usando o nome de grupo ou o cdigo numrico correspondente ao grupo (GID). Voc deve ter permisses de gravao no diretrio/arquivo para alterar seu dono/grupo. * `chown joao teste.txt' - Muda o dono do arquivo `teste.txt' para `joao'. * `chown joao.users teste.txt' - Muda o dono do arquivo `teste.txt' para `joao' e seu grupo para `users'. * `chown -R joao.users *' - Muda o dono/grupo dos arquivos do diretrio atual e sub-diretrios para `joao/users' (desde que voc tenha permisses de gravao no diretrios e sub-diretrios).

13.10. Modo de permisso octal -----------------------------Ao invs de utilizar os modos de permisso `+r', `-r', etc, pode ser usado o modo octal para se alterar a permisso de acesso a um arquivo. O modo octal um conjunto de oito nmeros onde cada nmero define um tipo de acesso diferente. mais flexvel gerenciar permisses de acesso usando o modo octal ao invs do comum, pois voc especifica diretamente a permisso do dono, grupo, outros ao invs de gerenciar as permisses de cada um separadamente. Abaixo a lista de permisses de acesso octal:
-171-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

`0' - Nenhuma permisso de acesso. Equivalente a -rwx. `1' - Permisso de execuo (x). `2' - Permisso de gravao (w). `3' - Permisso de gravao e execuo (wx). `4' - Permisso de leitura (r). `5' - Permisso de leitura e execuo (rx). `6' - Permisso de leitura e gravao (rw). `7' - Permisso de leitura, gravao e execuo. Equivalente a +rwx. O uso de um deste nmeros define a permisso de acesso do _dono_, _grupo_ ou _outros usurios_. Um modo fcil de entender como as permisses de acesso octais funcionam, atravs da seguinte tabela: 1 = Executar 2 = Gravar 4 = Ler * Para Dono e Grupo, multiplique as permisses acima por x100 e x10. e para as permisses de acesso especiais: 1000 = Salva imagem do texto no dispositivo de troca 2000 = Ajusta o bit setgid na execuo 4000 = Ajusta o bit setuid na execuo Basta agora fazer o seguinte: * Somente permisso de execuo, use 1. * Somente a permisso de leitura, use 4. * Somente permisso de gravao, use 2. * Permisso de leitura/gravao, use 6 (equivale a 2+4 / Gravar+Ler). * Permisso de leitura/execuo, use 5 (equivale a 1+4 / Executar+Ler). * Permisso de execuo/gravao, use 3 (equivale a 1+2 / Executar+Gravar). * Permisso de leitura/gravao/execuo, use 7 (equivale a 1+2+4 / Executar+Gravar+Ler). * Salvar texto no dispositivo de troca, use 1000. * Ajustar bit setgid, use 2000. * Ajustar bip setuid, use 4000. * Salvar texto e ajustar bit setuid, use 5000 (equivale a 1000+4000 / Salvar texto + bit setuid). * Ajustar bit setuid e setgid, use 6000 (equivale a 4000+2000 / setuid + setgid). Vamos a prtica com alguns exemplos: "chmod 764 teste" Os nmeros so interpretados da _direita para a esquerda_ como permisso de acesso aos _outros usurios_ (4), _grupo_ (6), e _dono_ (7). O exemplo acima faz os _outros usurios_ (4) terem acesso somente leitura (r) ao arquivo `teste', o _grupo_ (6) ter a permisso de leitura e gravao (w), e o _dono_ (7) ter permisso de leitura, gravao e execuo (rwx) ao arquivo `teste'. Outro exemplo: "chmod 40 teste"

* * * * * * * *

-172-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

O exemplo acima define a permisso de acesso dos _outros usurios_ (0) como nenhuma, e define a permisso de acesso do _grupo_ (4) como somente leitura (r). Note usei somente dois nmeros e ento a permisso de acesso do _dono_ do arquivo `no' modificada (leia as permisses de acesso da direita para a esquerda!). Para detalhes veja a lista de permisses de acesso em modo octal no inicio desta seo. "chmod 751 teste" O exemplo acima define a permisso de acesso dos _outros usurios_ (1) para somente execuo (x), o acesso do _grupo_ (5) como leitura e execuo (rx) e o acesso do _dono_ (7) como leitura, gravao e execuo (rwx). "chmod 4751 teste" O exemplo acima define a permisso de acesso dos _outros usurios_ (1) para somente execuo (x), acesso do _grupo_ (5) como leitura e execuo (rx), o acesso do _dono_ (7) como leitura, gravao e execuo (rwx) e ajusta o bit setgid (4) para o arquivo `teste'.

13.11. umask -----------A umask (_user mask_) so 3 nmeros que definem as permisses iniciais do `dono', `grupo' e `outros usurios' que o arquivo/diretrio receber quando for criado ou copiado. Digite `umask' sem parmetros para retornar o valor de sua umask atual. A umask tem efeitos diferentes caso o arquivo que estiver sendo criado for _binrio_ (um programa executvel) ou _texto_ Veja a tabela a seguir para ver qual a mais adequada a sua situao: --------------------------------------------| | ARQUIVO | DIRETRIO | | UMASK |----------------------| | | | Binrio | Texto | | |------------------------------|------------| | 0 | r-x | rw| rwx | | 1 | r-| rw| rw| | 2 | r-x | r-| r-x | | 3 | r-| r-| r-| | 4 | --x | -w| -wx | | 5 | --| -w| -w| | 6 | --x | --| --x | | 7 | --| --| --| --------------------------------------------Um _arquivo texto_ criado com o comando `umask 012;touch texto.txt' receber as permisses `-rw-rw-r--', pois 0 (dono) ter permisses `rw-', 1 (grupo), ter permisses `rw-' e 2 (outros usurios) tero permisses `r--'. Um _arquivo binrio_ copiado com o comando `umask 012;cp /bin/ls /tmp/ls' receber as permisses `-r-xr--r-x' (confira com a tabela acima). Por este motivo preciso um pouco de ateno antes de escolher a
-173-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

umask, um arquivos, padro da padro no

valor mal escolhido poderia causar problemas de acesso a diretrios ou programas no sendo executados. O valor umask na maioria das distribuies atuais 022. A umask sistema Debian a 022 .

A umask de grande utilidade para programas que criam arquivos/diretrios temporrios, desta forma pode-se bloquear o acesso de outros usurios desde a criao do arquivo, evitando recorrer ao `chmod'.

-------------------------------------------------------------------------------

14. Redirecionamentos e Pipe ---------------------------Esta seo explica o funcionamento dos recursos de direcionamento de entrada e sada do sistema `GNU/Linux'.

14.1. > ------Redireciona a sada de um programa/comando/script para algum dispositivo ou arquivo ao invs do dispositivo de sada padro (tela). Quando usado com arquivos, este redirecionamento cria ou substitui o contedo do arquivo. Por exemplo, voc pode usar o comando `ls' para listar arquivos e usar `ls >listagem' para enviar a sada do comando para o arquivo `listagem'. Use o comando `cat' para visualizar o contedo do arquivo `listagem'. O mesmo comando pode ser redirecionado para o segundo console `/dev/tty2' usando: `ls >/dev/tty2', o resultado do comando `ls' ser mostrado no segundo console (pressione `ALT' e `F2' para mudar para o segundo console e `ALT' e `F1' para retornar ao primeiro).

14.2. >> -------Redireciona a sada de um programa/comando/script para algum dispositivo ou final de arquivo ao invs do dispositivo de sada padro (tela). A diferena entre este redirecionamento duplo e o simples, se caso for usado com arquivos, adiciona a sada do comando ao final do arquivo existente ao invs de substituir seu contedo. . Por exemplo, voc pode acrescentar a sada do comando `ls' ao arquivo `listagem' do captulo anterior usando `ls / >>listagem'. Use o comando `cat' para visualizar o contedo do arquivo `listagem'.

14.3. < -------

-174-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Direciona a entrada padro de arquivo/dispositivo para um comando. Este comando faz o contrrio do anterior, ele envia dados ao comando. Voc pode usar o comando `cat <teste.txt' para enviar o contedo do arquivo `teste.txt' ao comando `cat' que mostrar seu contedo ( claro que o mesmo resultado pode ser obtido com `cat teste.txt' mas este exemplo serviu para mostrar a funcionalidade do <).

14.4. << -------Este redirecionamento serve principalmente para marcar o fim de exibio de um bloco. Este especialmente usado em conjunto com o comando `cat', mas tambm tem outras aplicaes. Por exemplo: cat << final este arquivo ser mostrado at que a palavra final seja localizada no inicio da linha final

14.5. | (pipe) -------------Envia a sada de um comando para a entrada do prximo comando para continuidade do processamento. Os dados enviados so processados pelo prximo comando que mostrar o resultado do processamento. Por exemplo: `ls -la|more', este comando faz a listagem longa de arquivos que enviado ao comando `more' (que tem a funo de efetuar uma pausa a cada 25 linhas do arquivo). Outro exemplo o comando `"locate find|grep bin/"', neste comando todos os caminhos/arquivos que contm _find_ na listagem sero mostrados (inclusive man pages, bibliotecas, etc.), ento enviamos a sada deste comando para `grep bin/' para mostrar somente os diretrios que contm binrios. Mesmo assim a listagem ocupe mais de uma tela, podemos acrescentar o `more': `locate find|grep bin/|more'. Podem ser usados mais de um comando de redirecionamento (<, >, |) em um mesmo comando.

14.6. Diferena entre o "|" e o ">" ----------------------------------A principal diferena entre o "|" e o ">", que o Pipe envolve processamento entre comandos, ou seja, a sada de um comando enviado a entrada do prximo e o ">" redireciona a sada de um comando para um arquivo/dispositivo. Voc pode notar pelo exemplo acima (`ls -la|more') que ambos `ls' e `more' so comandos porque esto separados por um "|"! Se um deles no existir ou estiver digitado incorretamente, ser mostrada uma
-175-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

mensagem de erro. Um resultado diferente seria obtido usando um `">"' no lugar do `"|"'; A sada do comando `ls -la' seria gravada em um arquivo chamado `more'.

14.7. tee --------Envia o resultado do programa para a sada padro (tela) e para um arquivo ao mesmo tempo. Este comando deve ser usado com o pipe "|". `_comando_|tee [_arquivo_]' Exemplo: `ls -la|tee listagem.txt', a sada do comando ser mostrada normalmente na tela e ao mesmo tempo gravada no arquivo `listagem.txt'.

-------------------------------------------------------------------------------

15. Rede -------Este captulo descreve o que uma rede, os principais dispositivos de rede no `GNU/Linux', a identificao de cada um, como configurar os dispositivos, escolha de endereos IP, roteamento. Parte deste captulo, uns 70% pelo menos, baseado no documento NET3-4-HOWTO. (seria perda de tempo reescrever este assunto pois existe um material desta qualidade j disponvel).

15.1. O que uma rede ---------------------Rede a conexo de duas ou mais mquinas com o objetivo de compartilhar recursos entre uma mquina e outra. Os recursos podem ser: * Compartilhamento do contedo de seu disco rgido (ou parte dele) com outros usurios. Os outros usurios podero acessar o disco como se estivesse instalado na prpria mquina). Tambm chamado de servidor de arquivos. * Compartilhamento de uma impressora com outros usurios. Os outros usurios podero enviar seus trabalhos para uma impressora da rede. Tambm chamado de servidor de impresso. * Compartilhamento de acesso a Internet. Outros usurios podero navegar na Internet, pegar seus e-mails, ler noticias, bate-papo no IRC, ICQ atravs do servidor de acesso Internet. Tambm chamado de servidor Proxy. * Servidor de Internet/Intranet. Outros usurios podero navegar nas pginas Internet localizadas em seu computador, pegar e-mails, usar um servidor de IRC para chat na rede, servidor de ICQ, etc Com os tens acima funcionando possvel criar permisses de acesso
-176-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

da rede, definindo quem ter ou no permisso para acessar cada compartilhamento ou servio existente na mquina (www, ftp, irc, icq, etc), e registrando/avisando sobre eventuais tentativas de violar a segurana do sistema, firewalls, pontes, etc. Entre outras ilimitadas possibilidades que dependem do conhecimento do indivduo no ambiente `GNU/Linux', j que ele permite muita flexibilidade para fazer qualquer coisa funcionar em rede. A comunicao entre computadores em uma rede feita atravs do _Protocolo de Rede_.

15.2. Protocolo de Rede ----------------------O protocolo de rede a linguagem usada para a comunicao entre um computador e outro. Existem vrios tipos de protocolos usados para a comunicao de dados, alguns so projetados para pequenas redes (como o caso do NetBios) outros para redes mundiais (TCP/IP que possui caractersticas de roteamento). Dentre os protocolos, o que mais se destaca atualmente o TCP/IP devido ao seu projeto, velocidade e capacidade de roteamento.

15.3. Endereo IP ----------------O _endereo IP_ so nmeros que identificam seu computador em uma rede. Inicialmente voc pode imaginar o IP como um nmero de telefone. O IP compostos por quatro bytes e a conveno de escrita dos nmeros chamada de "notao decimal pontuada". Por conveno, cada interface (placa usada p/ rede) do computador ou roteador tem um endereo IP. Tambm permitido que o mesmo endereo IP seja usado em mais de uma interface de uma mesma mquina mas normalmente cada interface tem seu prprio endereo IP. As Redes do Protocolo Internet so seqncias contnuas de endereos IP's. Todos os endereos dentro da rede tem um nmero de dgitos dentro dos endereos em comum. A poro dos endereos que so comuns entre todos os endereos de uma rede so chamados de _poro da rede_. Os dgitos restantes so chamados de _poro dos hosts_. O nmero de bits que so compartilhados por todos os endereos dentro da rede so chamados de _netmask_ (mscara da rede) e o papel da _netmask_ determinar quais endereos pertencem ou no a rede. Por exemplo, considere o seguinte: ----------------Endereo do Host Mscara da Rede Poro da Rede Poro do Host ----------------Endereo da Rede Endereo Broadcast ------------------------------192.168.110.23 255.255.255.0 192.168.110. .23 --------------192.168.110.0 192.168.110.255 ---------------177-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Qualquer endereo que finalizado em zero em sua _netmask_, revelar o _endereo da rede_ que pertence. O endereo e rede ento sempre o menor endereo numrico dentro da escalas de endereos da rede e sempre possui a _poro host_ dos endereos codificada como zeros. O endereo de _broadcast_ um endereo especial que cada computador em uma rede "escuta" em adio a seu prprio endereo. Este um endereo onde os datagramas enviados so recebidos por todos os computadores da rede. Certos tipos de dados como informaes de roteamento e mensagens de alerta so transmitidos para o endereo _broadcast_, assim todo computador na rede pode recebe-las simultaneamente. Existe dois padres normalmente usados para especificar o endereo de _broadcast_. O mais amplamente aceito para usar o endereo `mais alto' da rede como endereo broadcast. No exemplo acima este seria 192.168.110.255. Por algumas razes outros sites tem adotado a conveno de usar o `endereo de rede' como o endereo broadcast. Na prtica no importa muito se usar este endereo, mas voc deve ter certeza que todo computador na rede esteja configurado para escutar o mesmo _endereo broadcast_. 15.3.1. Classes de Rede IP -------------------------Por razes administrativas aps algum pouco tempo no desenvolvimento do protocolo IP alguns grupos arbitrrios de endereos foram formados em redes e estas redes foram agrupadas no que foram chamadas de _classes_. Estas classes armazenam um tamanho padro de redes que podem ser usadas. As faixas alocadas so: +--------------------------------------------------------+ | Classe | Mscara de | Endereo da Rede | | | Rede | | +--------------------------------------------------------+ | A | 255.0.0.0 | 0.0.0.0 - 127.255.255.255 | | B | 255.255.0.0 | 128.0.0.0 - 191.255.255.255 | | C | 255.255.255.0 | 192.0.0.0 - 223.255.255.255 | |Multicast| 240.0.0.0 | 224.0.0.0 - 239.255.255.255 | +--------------------------------------------------------+ O tipo de endereo que voc deve utilizar depende exatamente do que estiver fazendo. 15.3.2. Para instalar uma mquina usando o Linux em uma rede existente ---------------------------------------------------------------------Se voc quiser instalar uma mquina `GNU/Linux' em uma rede TCP/IP existente ento voc deve contactar qualquer um dos administradores da sua rede e perguntar o seguinte: * Endereo IP de sua mquina * Endereo IP da rede * Endereo IP de broadcast * Mscara da Rede IP * Endereo do Roteador * Endereo do Servidor de Nomes (DNS)
-178-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Voc deve ento configurar seu dispositivo de rede `GNU/Linux' com estes detalhes. Voc no pode simplesmente escolhe-los e esperar que sua configurao funcione. 15.3.3. Endereos reservados para uso em uma rede Privada --------------------------------------------------------Se voc estiver construindo uma rede privada que nunca ser conectada a Internet, ento voc pode escolher qualquer endereo que quiser. No entanto, para sua segurana e padronizao, existem alguns endereos IP's que foram reservados especificamente para este propsito. Eles esto especificados no RFC1597 e so os seguintes: +---------------------------------------------------------+ | ENDEREOS RESERVADOS PARA REDES PRIVADAS | +---------------------------------------------------------+ | Classe | Mscara de | Endereo da Rede | | de Rede | Rede | | +---------+---------------+-------------------------------+ | A | 255.0.0.0 | 10.0.0.0 - 10.255.255.255 | | B | 255.255.0.0 | 172.16.0.0 - 172.31.255.255 | | C | 255.255.255.0 | 192.168.0.0 - 192.168.255.255 | +---------------------------------------------------------+ Voc deve decidir primeiro qual ser a largura de sua rede e ento escolher a classe de rede que ser usada.

15.4. Interface de rede ----------------------As interfaces de rede no `GNU/Linux' esto localizadas no diretrio `/dev' e a maioria criada dinamicamente pelos softwares quando so requisitadas. Este o caso das interfaces `ppp' e `plip' que so criadas dinamicamente pelos softwares. Abaixo a identificao de algumas interfaces de rede no Linux (a `?' significa um nmero que identifica as interfaces seqencialmente, iniciando em 0): * `eth?' - Placa de rede Ethernet e WaveLan. * `ppp?' - Interface de rede PPP (protocolo ponto a ponto). * `slip?' - Interface de rede serial * `eql' - Balanceador de trfego para mltiplas linhas * `plip?' - Interface de porta paralela * `arc?e, arc?s' - Interfaces Arcnet * `sl?, ax?' - Interfaces de rede AX25 (respectivamente para kernels 2.0.xx e 2.2.xx. * `fddi?' - Interfaces de rede FDDI. * `dlci??, sdla?' - Interfaces Frame Relay, respectivamente para para dispositivos de encapsulamento DLCI e FRAD. * `nr?' - Interface Net Rom * `rs?' - Interfaces Rose * `st?' - Interfaces Strip (Starmode Radio IP) * `tr?' - Token Ring Para maiores detalhes sobre as interfaces acima, consulte o documento _NET3-4-HOWTO_.

-179-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

15.4.1. A interface loopback ---------------------------A interface _loopback_ um tipo especial de interface que permite fazer conexes com voc mesmo. Todos os computadores que usam o protocolo TCP/IP utilizam esta interface e existem vrias razes porque precisa fazer isto, por exemplo, voc pode testar vrios programas de rede sem interferir com ningum em sua rede. Por conveno, o endereo IP 127.0.0.1 foi escolhido especificamente para a loopback, assim se abrir uma conexo telnet para 127.0.0.1, abrir uma conexo para o prprio computador local. A configurao da interface loopback simples e voc deve ter certeza que fez isto (mas note que esta tarefa normalmente feita pelos scripts padres de inicializao existentes em sua distribuio). ifconfig lo 127.0.0.1 Caso a interface loopback no esteja configurada, voc poder ter problemas quando tentar qualquer tipo de conexo com as interfaces locais, tendo problemas at mesmo com o comando `ping'. 15.4.2. Atribuindo um endereo de rede a uma interface (ifconfig) ----------------------------------------------------------------Aps configurada fisicamente, a interface precisa receber um endereo IP para ser identificada na rede e se comunicar com outros computadores, alm de outros parmetros como o endereo de _broadcast_ e a _mscara de rede_. O comando usado para fazer isso o `ifconfig' (interface configure). Para configurar a interface de rede Ethernet (`eth0') com o endereo 192.168.1.1, mscara de rede 255.255.255.0, podemos usar o comando: ifconfig eth0 192.168.1.1 netmask 255.255.255.0 up O comando acima ativa a interface de rede. A palavra `up' pode ser omitida, pois a ativao da interface de rede o padro. Para desativar a mesma interface de rede, basta usar usar o comando: ifconfig eth0 down Digitando `ifconfig' so mostradas todas as interfaces ativas no momento, pacotes enviados, recebidos e colises de datagramas. Para mostrar a configurao somente da interface eth0, use o comando: `ifconfig eth0' Em sistemas `Debian', o arquivo correto para especificar os dados das interfaces o `/etc/network/interfaces' (veja Section 24.8, `Arquivo `/etc/network/interfaces''). Para mais detalhes, veja a pgina de manual do `ifconfig' ou o _NET3-4-HOWTO_.

15.5. Roteamento ---------------Roteamento quando uma mquina com mltiplas conexes de rede decide
-180-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

onde entregar os pacotes IP que recebeu, para que cheguem ao seu destino. Pode ser til ilustrar isto com um exemplo. Imagine um simples roteador de escritrio, ele pode ter um link intermitente com a Internet, um nmero de segmentos ethernet alimentando as estaes de trabalho e outro link PPP intermitente fora de outro escritrio. Quando o roteador recebe um datagrama de qualquer de suas conexes de rede, o mecanismo que usa determina qual a prxima interface deve enviar o datagrama. Computadores simples tambm precisam rotear, todos os computadores na Internet tem dois dispositivos de rede, um a interface _loopback_ (explicada acima) o outro um usado para falar com o resto da rede, talvez uma ethernet, talvez uma interface serial PPP ou SLIP. OK, viu como o roteamento funciona? cada computador mantm uma lista de regras especiais de roteamento, chamada _tabela de roteamento_. Esta tabela contm colunas que tipicamente contm no mnimo trs campos, o primeiro o _endereo de destino_, o segundo o _nome da interface_ que o datagrama deve ser roteado e o terceiro opcionalmente o _endereo IP_ da outra mquina que levar o datagrama em seu prximo passo atravs da rede. No `GNU/Linux' voc pode ver a tabela de roteamento usando um dos seguintes comandos: cat /proc/net/route route -n netstat -r O processo de roteamento muito simples: um datagrama (pacote IP) recebido, o endereo de destino (para quem ele ) examinado e comparado com cada item da tabela de roteamento. O item que mais corresponder com o endereo selecionado e o datagrama direcionado a interface especificada. Se o campo _gateway_ estiver preenchido, ento o datagrama direcionado para aquele computador pela interface especificada, caso contrrio o endereo de destino assumido sendo uma rede suportada pela interface. 15.5.1. Configurando uma rota no Linux -------------------------------------A configurao da rota feita atravs da ferramenta `route'. Para adicionar uma rota para a rede 192.168.1.0 acessvel atravs da interface eth0 basta digitar o comando: route add -net 192.168.1.0 eth0 Para apagar a rota acima da _tabela de roteamento_, basta substituir a palavra `add' por `del'. A palavra `net' quer dizer que 192.168.1.0 um endereo de rede (lembra-se das explicaes em Section 15.3, `Endereo IP'?)) para especificar uma mquina de destino, basta usar a palavra `-host'. Endereos de mquina de destino so muito usadas em conexes de rede apenas entre dois pontos (como ppp, plip, slip). Por padro, a interface especificada como ltimo argumento. Caso a interface precise especifica-la em outro lugar, ela dever ser precedida da opo `-dev'.
-181-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Para adicionar uma rota padro para um endereo que no se encontre na tabela de roteamento, utiliza-se o _gateway padro da rede_. Atravs do gateway padro possvel especificar um computador (normalmente outro gateway) que os pacotes de rede sero enviados caso o endereo no confira com os da tabela de roteamento. Para especificar o computador 192.168.1.1 como _gateway padro_ usamos: route add default gw 192.168.1.1 eth0 O _gateway padro_ pode ser visualizado atravs do comando `route -n' e verificando o campo `gateway'. A opo `gw' acima, especifica que o prximo argumento um endereo IP (de uma rede j acessvel atravs das tabelas de roteamento). O computador _gateway_ est conectado a duas ou mais redes ao mesmo tempo. Quando seus dados precisam ser enviados para computadores fora da rede, eles so enviados atravs do computador _gateway_ e o _gateway_ os encaminham ao endereo de destino. Desta forma, a resposta do servidor tambm enviada atravs do _gateway_ para seu computador ( o caso de uma tpica conexo com a Internet). A nossa configurao ficaria assim: route add -net 192.168.1.0 eth0 route add default gw 192.168.1.1 eth0 Para mais detalhes, veja a pgina de manual do `route' ou o _NET3-4-HOWTO_.

15.6. Resolvedor de nomes (DNS) ------------------------------_DNS_ significa Domain Name System (sistema de nomes de domnio). O _DNS_ converte os nomes de mquinas para endereos IPs que todas as mquinas da Internet possuem. Ele faz o mapeamento do nome para o endereo e do endereo para o nome e algumas outras coisas. Um mapeamento simplesmente uma associao entre duas coisas, neste caso um nome de computador, como www.cipsga.org.br, e o endereo IP desta mquina (ou endereos) como 200.245.157.9. O _DNS_ foi criado com o objetivo de tornar as coisas mais fceis para o usurio, permitindo assim, a identificao de computadores na Internet ou redes locais atravs de nomes ( como se tivssemos apenas que decorar o nome da pessoa ao invs de um nmero de telefone). A parte responsvel por traduzir os nomes como `www.nome.com.br' em um endereo IP chamada de _resolvedor de nomes_. O _resolvedor de nomes_ pode ser um banco de dados local (controlador por um arquivo ou programa) que converte automaticamente os nomes em endereos IP ou atravs de _servidores DNS_ que fazem a busca em um banco de dados na Internet e retornam o endereo IP do computador desejado. Um servidor DNS mais difundido na Internet o `bind'. Atravs do DNS necessrio apenas decorar o endereo sem precisar se preocupar com o endereo IP (alguns usurios simplesmente no sabem
-182-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

que isto existe...). documento DNS-HOWTO. 15.6.1. O que um nome? ------------------------

Se desejar mais detalhes sobre _DNS_, veja o

Voc deve estar acostumado com o uso dos nomes de computadores na Internet, mas pode no entender como eles so organizados. Os nomes de domnio na Internet so uma estrutura hierrquica, ou seja, eles tem uma estrutura semelhante aos diretrios de seu sistema. Um _domnio_ uma famlia ou grupo de nomes. Um domnio pode ser colocado em um _sub-domnio_. Um _domnio principal_ um domnio que no um sub-domnio. Os domnios principais so especificados na RFC-920. Alguns exemplos de domnios principais comuns so: * `COM' - Organizaes Comerciais * `EDU' - Organizaes Educacionais * `GOV' - Organizaes Governamentais * `MIL' - Organizaes Militares * `ORG' - Outras Organizaes * `NET' - Organizaes relacionadas com a Internet * `Identificador do Pas' - So duas letras que representam um pas em particular. Cada um dos domnios principais tem sub-domnios. Os domnios principais baseados no nome do pas so freqentemente divididos em sub-domnios baseado nos domnios `.com', `.edu', `.gov', `.mil' e `.org'. Assim, por exemplo, voc pode finaliza-lo com: `com.au' e `gov.au' para organizaes comerciais e governamentais na Austrlia; note que isto no uma regra geral, as organizaes de domnio atuais dependem da autoridade na escolha de nomes de cada domnio. Quando o endereo no especifica o domnio principal, como o endereo `www.unicamp.br', isto quer dizer que uma organizao acadmica. O prximo nvel da diviso representa o nome da organizao. Subdomnios futuros variam em natureza, freqentemente o prximo nvel do sub-domnio baseado na estrutura departamental da organizao mas ela pode ser baseada em qualquer critrio considerado razovel e significantes pelos administradores de rede para a organizao. A poro mais a esquerda do nome sempre o nome nico da mquina chamado _hostname_, a poro do nome a direita do hostname chamado _nome de domnio_ e o nome completo chamado _nome do domnio completamente qualificado_ (_Fully Qualified Domain Name_). Usando o computador `www.debian.org.br' como exemplo: * `br' - Pas onde o computador se encontra * `org' - Domnio principal * `debian' - Nome de Domnio * `www' - Nome do computador A localizao do computador `www.debian.org.br' atravs de servidores DNS na Internet obedece exatamente a seqncia de procura acima. Os administradores do domnio `debian.org.br' podem cadastrar quantos sub-domnios e computadores quiserem (como `www.non-us.debian.org.br' ou `cvs.debian.org.br'). 15.6.2. Arquivos de configurao usados na resoluo de nomes -------------------------------------------------------------183-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Abaixo a descrio dos arquivos usados no processo de resolver um nome no sistema `GNU/Linux'. 15.6.2.1. /etc/resolv.conf -------------------------O `/etc/resolv.conf' o arquivo de configurao principal do cdigo do resolvedor de nomes. Seu formato um arquivo texto simples com um parmetro por linha e o endereo de servidores DNS externos so especificados nele. Existem trs palavras chaves normalmente usadas que so: domain Especifica o nome do domnio local. search Especifica uma lista de nomes de domnio alternativos ao procurar por um computador, separados por espaos. A linha search pode conter no mximo 6 domnios ou 256 caracteres. nameserver Especifica o endereo IP de um servidor de nomes de domnio para resoluo de nomes. Pode ser usado vrias vezes. Como exemplo, o `/etc/resolv.conf' se parece com isto: domain maths.wu.edu.au search maths.wu.edu.au wu.edu.au nameserver 192.168.10.1 nameserver 192.168.12.1 Este exemplo especifica que o nome de domnio a adicionar ao nome no qualificado (i.e. hostnames sem o domnio) `maths.wu.edu.au' e que se o computador no for encontrado naquele domnio ento a procura segue para o domnio `wu.edu.au' diretamente. Duas linhas de nomes de servidores foram especificadas, cada uma pode ser chamada pelo cdigo resolvedor de nomes para resolver o nome. 15.6.2.2. /etc/host.conf -----------------------O arquivo `/etc/host.conf' o local onde possvel configurar alguns tens que gerenciam o cdigo do resolvedor de nomes. O formato deste arquivo descrito em detalhes na pgina de manual resolv+. Em quase todas as situaes, o exemplo seguinte funcionar: order hosts,bind multi on Este arquivo de configurao diz ao resolvedor de nomes para checar o arquivo `/etc/hosts' (parmetro `hosts') antes de tentar verificar um _servidor de nomes_ (parmetro `bind') e retornar um endereo IP vlido para o computador procurado e _multi on_ retornar todos os endereos IP resolvidos no arquivo `/etc/hosts' ao invs do primeiro. Os seguintes parmetros podem ser adicionados para evitar ataques de IP spoofing: nospoof on spoofalert on

-184-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

O parmetro _nospoof on_ ativa a resoluo reversa do nome da biblioteca resolv (para checar se o endereo pertence realmente quele nome) e o _spoofalert on_ registra falhas desta operao no `syslog'. 15.6.2.3. /etc/hosts -------------------O arquivo `/etc/hosts' faz o relacionamento entre um nome de computador e endereo IP local. Recomendado para IPs constantemente acessados e para colocao de endereos de virtual hosts (quando deseja referir pelo nome ao invs de IP). A incluso de um computador neste arquivo dispenda a consulta de um servidor de nomes para obter um endereo IP, sendo muito til para mquinas que so acessadas frequentemente. A desvantagem de fazer isto que voc mesmo precisar manter este arquivo atualizado e se o endereo IP de algum computador for modificado, esta alterao dever ser feita em cada um dos arquivos `hosts' das mquinas da rede. Em um sistema bem gerenciado, os nicos endereos de computadores que aparecero neste arquivo sero da interface loopback e os nomes de computadores. # /etc/hosts 127.0.0.1 192.168.0.1

localhost loopback maquina.dominio.com.br

Voc pode especificar mais que um nome de computador por linha como demonstrada pela primeira linha, a que identifica a interface loopback. Certifique-se de que a entrada do nome de domnio neste arquivo aponta para a interface de rede e no para a interface loopback, ou ter problema com o comportamento de alguns servios. _OBS:_ Caso encontre problemas de lentido para resolver nomes e at para executar os aplicativos (como o `mc', etc), verifique se existem erros neste arquivo de configurao. Estes sintomas se confundem com erros de memria ou outro erro qualquer de configurao de hardware, e somem quando a interface de rede desativada (a com o IP no loopback). Isto causados somente pela m configurao do arquivo `/etc/hosts'. O bom funcionamento do `Unix' depende da boa ateno do administrador de sistemas para configurar os detalhes de seu servidor. 15.6.2.4. /etc/networks ----------------------O arquivo `/etc/networks' tem uma funo similar ao arquivo `/etc/hosts'. Ele contm um banco de dados simples de nomes de redes contra endereos de redes. Seu formato se difere por dois campos por linha e seus campos so identificados como: Nome_da_Rede Endereo_da_Rede

Abaixo um exemplo de como se parece este arquivo: loopnet localnet amprnet 127.0.0.0 192.168.1.0 44.0.0.0

-185-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Quando usar comandos como `route', se um destino uma rede e esta rede se encontra no arquivo `/etc/networks', ento o comando `route' mostrar o _nome da rede_ ao invs de seu endereo. 15.6.3. Executando um servidor de nomes --------------------------------------Se voc planeja executar um servidor de nomes, voc pode fazer isto facilmente. Por favor veja o documento `DNS-HOWTO' e quaisquer documentos includos em sua verso do BIND (Berkeley Internet Name Domain).

15.7. Servios de Rede ---------------------_Servios de rede_ o que est disponvel para ser acessado pelo usurio. No TCP/IP, cada servio associado a um nmero chamado _porta_ que onde o servidor espera pelas conexes dos computadores clientes. Uma porta de rede pode se referenciada tanto pelo nmero como pelo nome do servio. Abaixo, alguns exemplos de portas padres usadas em servios TCP/IP: * `21' - FTP (transferncia de arquivos) * `23' - Telnet (terminal virtual remoto) * `25' - Smtp (envio de e-mails) * `53' - DNS (resolvedor de nomes) * `79' - Finger (detalhes sobre usurios do sistema) * `80' - http (protocolo www - transferncia de pginas Internet) * `110' - Pop-3 (recebimento de mensagens) * `119' - NNTP (usado por programas de noticias) O arquivo padro responsvel pelo mapeamento do nome dos servios e das portas mais utilizadas o `/etc/services' (para detalhes sobre o seu formato, veja a Section 15.9.1, `/etc/services'). 15.7.1. Servios iniciados como Daemons de rede ----------------------------------------------Servios de rede iniciados como _daemons_ ficam residente o tempo todo na memria `esperando' que algum se conecte (tambm chamado de _modo standalone_). Um exemplo de _daemon_ o servidor proxy `squid' e o servidor web `Apache' operando no modo _daemon_. Alguns programas servidores oferecem a opo de serem executados como _daemons_ ou atravs do _inetd_. recomendvel escolher _daemon_ se o servio for solicitado freqentemente (como o caso dos servidores web ou proxy). Para verificar se um programa est rodando como _daemon_, basta digitar `ps ax' e procurar o nome do programa, em caso positivo ele um _daemon_. Normalmente os programas que so iniciados como daemons possuem seus prprios recursos de segurana/autenticao para decidir quem tem ou no permisso de se conectar. 15.7.2. Servios iniciados atravs do inetd
-186-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

------------------------------------------Servios iniciados pelo _inetd_ so carregados para a memria somente quando so solicitados. O controle de quais servios podem ser carregados e seus parmetros, so feitos atravs do arquivo `/etc/inetd.conf'. Um _daemon_ chamado `inetd' l as configuraes deste arquivo e permanece residente na memria, esperando pela conexo dos clientes. Quando uma conexo solicitada, o daemon _inetd_ verifica as permisses de acesso nos arquivos `/etc/hosts.allow' e `/etc/hosts.deny' e carrega o programa servidor correspondente no arquivo `/etc/inetd.conf'. Um arquivo tambm importante neste processo o `/etc/services' que faz o mapeamento das portas e nomes dos servios. Alguns programas servidores oferecem a opo de serem executados como _daemons_ ou atravs do _inetd_. recomendvel escolher _inetd_ se o servio no for solicitado freqentemente (como o caso de servidores `ftp', `telnet', `talk', etc). 15.7.2.1. /etc/inetd.conf ------------------------O arquivo `/etc/inetd.conf' um arquivo de configurao para o daemon servidor _inetd_. Sua funo dizer ao `inetd' o que fazer quando receber uma requisio de conexo para um servio em particular. Para cada servio que deseja aceitar conexes, voc precisa dizer ao _inetd_ qual daemon servidor executar e como executa-lo. Seu formato tambm muito simples. um arquivo texto com cada linha descrevendo um servio que deseja oferecer. Qualquer texto em uma linha seguindo uma "#" ignorada e considerada um comentrio. Cada linha contm sete campos separados por qualquer nmero de espaos em branco (tab ou espaos). O formato geral o seguinte: servio tipo_soquete proto opes.num usurio caminho_serv. opes_serv.

servio o servio relevante a este arquivo de configurao pego do arquivo `/etc/services'. tipo_soquete Este campo descreve o tipo do soquete que este item utilizar, valores permitidos so: `stream', `dgram', `raw', `rdm', ou `seqpacket'. Isto um pouco tcnico de natureza, mas como uma regra geral, todos os servios baseados em _tcp_ usam `stream' e todos os protocolos baseados em _udp_ usam `dgram'. Somente alguns tipos de daemons especiais de servidores usam os outros valores. protocolo O protocolo considerado vlido para esta item. Isto deve bater com um item apropriado no arquivo `/etc/services' e tipicamente ser tcp ou udp. Servidores baseados no Sun RPC (_Remote Procedure Call_), utilizam rpc/tcp ou rpc/udp. opes Existem somente duas configuraes para este campo. A configurao deste campo diz ao _inetd_ se o programa servidor de
-187-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

rede libera o soquete aps ele ser iniciado e ento se inetd pode iniciar outra cpia na prxima requisio de conexo, ou se o inetd deve aguardar e assumir que qualquer servidor j em execuo pegar a nova requisio de conexo. Este um pequeno truque de trabalho, mas como uma regra, todos os servidores tcp devem ter este parmetro ajustado para _nowait_ e a maior parte dos servidores udp deve t-lo ajustado para _wait_. Foi alertado que existem algumas excesses a isto, assim deixo isto como exemplo se no estiver seguro. O _nmero_ especificado aps o "." opcional e define a quantidade mxima de vezes que o servio poder ser executado durante 1 minuto. Se o servio for executado mais vezes do que este valor, ele ser automaticamente desativado pelo inetd e uma mensagem ser mostrada no log do sistema avisando sobre o fato. Para reativar o servio interrompido, reinicie o `inetd' com: `killall -HUP inetd'. O valor padro `40'. usurio Este campo descreve que conta de usurio usurio no arquivo `/etc/passwd' ser escolhida como _dono_ do daemon de rede quando este for iniciado. Isto muito til se voc deseja diminuir os riscos de segurana. Voc pode ajustar o usurio de qualquer item para o usurio _nobody_, assim se a segurana do servidor de redes quebrada, a possibilidade de problemas minimizada. Normalmente este campo ajustado para _root_, porque muitos servidores requerem privilgios de usurio root para funcionarem corretamente. caminho_servidor Este campo o caminho para o programa servidor atual que ser executado. argumentos_servidor Este campo inclui o resto da linha e opcional. Voc pode colocar neste campo qualquer argumento da linha de comando que deseje passar para o daemon servidor quando for iniciado. Uma dica que pode aumentar significativamente a segurana de seu sistema comentar (colocar uma `#'no inicio da linha) os servios que no sero utilizados. Abaixo um modelo de arquivo `/etc/inetd.conf' usado em sistemas `Debian': # /etc/inetd.conf: veja inetd(8) para mais detalhes. # # Banco de Dados de configuraes do servidor Internet # # # Linhas iniciando com "#:LABEL:" ou "#<off>#" no devem # ser alteradas a no ser que saiba o que est fazendo! # # # Os pacotes devem modificar este arquivo usando update-inetd(8) # # <nome_servio> <tipo_soquete> <proto> <opes> <usurio> <caminho_servidor> <args> # #:INTERNO: Servios internos #echo stream tcp nowait root internal #echo dgram udp wait root internal #chargen stream tcp nowait root internal
-188-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

#chargen #discard #discard #daytime #daytime time #time

dgram stream dgram stream dgram stream tcp dgram udp

udp wait root internal tcp nowait root internal udp wait root internal tcp nowait root internal udp wait root internal nowait root internal wait root internal

#:PADRES: Estes so servios padres. #:BSD: Shell, login, exec e #shell stream tcp #login stream tcp #exec stream tcp talk dgram udp ntalk dgram udp talk so protocolos BSD. nowait root /usr/sbin/tcpd /usr/sbin/in.rshd nowait root /usr/sbin/tcpd /usr/sbin/in.rlogind nowait root /usr/sbin/tcpd /usr/sbin/in.rexecd wait.10 nobody.tty /usr/sbin/tcpd /usr/sbin/in.talkd wait.10 nobody.tty /usr/sbin/tcpd /usr/sbin/in.ntalkd

#:MAIL: Mail, news e servios uucp. smtp stream tcp nowait.60 mail #:INFO: Servios informativos

/usr/sbin/exim exim -bs

#:BOOT: O servio Tftp oferecido primariamente para a inicializao. Alguns sites # o executam somente em mquinas atuando como "servidores de inicializao". #:RPC: Servios baseados em RPC #:HAM-RADIO: servios de rdio amador #:OTHER: Outros servios

15.8. Segurana da Rede e controle de Acesso -------------------------------------------Deixe-me iniciar esta seo lhe alertando que a segurana da rede em sua mquina e ataques maliciosos so uma arte complexa. Uma regra importante : "No oferea servios de rede que no deseja utilizar". Muitas distribuies vem configuradas com vrios tipos de servios que so iniciados automaticamente. Para melhorar, mesmo que insignificantemente, o nvel de segurana em seu sistema voc deve editar se arquivo `/etc/inetd.conf' e comentar (colocar uma "#") as linhas que contm servios que no utiliza. Bons candidatos so servios tais como: `shell', `login', `exec', `uucp', `ftp' e servios de informao tais como `finger', `netstat' e `sysstat'. Existem todos os tipos de mecanismos de segurana e controle de acesso, eu descreverei os mais importantes deles. 15.8.1. /etc/ftpusers --------------------O arquivo `/etc/ftpusers' um mecanismo simples que lhe permite bloquear a conexo de certos usurios via _ftp_. O arquivo
-189-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

`/etc/ftpusers' lido pelo programa daemon ftp (_ftpd_) quando um pedido de conexo recebido. O arquivo uma lista simples de usurios que no tem permisso de se conectar. Ele se parece com: # /etc/ftpusers - login de usurios bloqueados via ftp root uucp bin mail 15.8.2. /etc/securetty ---------------------O arquivo `/etc/securetty' lhe permite especificar que dispositivos `tty' que o usurio _root_ pode se conectar. O arquivo /etc/securetty lido pelo programa login (normalmente `/bin/login'). Seu formato uma lista de dispositivos `tty' onde a conexo permitida, em todos os outros, a entrada do usurio _root_ bloqueada. # /etc/securetty - terminais que o usurio root pode se conectar tty1 tty2 tty3 tty4 15.8.3. O mecanismo de controle de acessos tcpd ----------------------------------------------O programa `tcpd' que voc deve ter visto listado no mesmo arquivo `/etc/inetd.conf', oferece mecanismos de registro e controle de acesso para os servios que esta configurado para proteger. Ele um tipo de firewall simples e fcil de configurar que pode evitar tipos indesejados de ataques e registrar possveis tentativas de invaso. Quando executado pelo programa inetd, ele l dos arquivos contendo regras de acesso e permite ou bloqueia o acesso ao servidor protegendo adequadamente. Ele procura nos arquivos de regras at que uma regra confira. Se nenhuma regra conferir, ento ele assume que o acesso deve ser permitido a qualquer um. Os arquivos que ele procura em seqncia so: `/etc/hosts.allow' e `/etc/hosts.deny'. Eu descreverei cada um destes arquivos separadamente. Para uma descrio completa desta facilidade, voc deve verificar a pgina de manual apropriada (hosts_access (5) um bom ponto de partida). 15.8.3.1. /etc/hosts.allow -------------------------O arquivo `/etc/hosts.allow' um arquivo de configurao do programa `/usr/sbin/tcpd'. O arquivo `hosts.allow' contm regras descrevendo que hosts tem permisso de acessar um servio em sua mquina. O formato do arquivo muito simples:

-190-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

# /etc/hosts.allow # # lista de servios: lista de hosts : comando lista de servios uma lista de nomes de servios separados por vrgula que esta regra se aplica. Exemplos de nomes de servios so: `ftpd', `telnetd' e `fingerd'. lista de hosts uma lista de nomes de hosts separada por vrgula. Voc tambm pode usar endereos IP's aqui. Adicionalmente, voc pode especificar nomes de computadores ou endereo IP usando caracteres coringas para atingir grupos de hosts. Exemplos incluem: `gw.vk2ktj.ampr.org' para conferir com um endereo de computador especfico, `.uts.edu.au' para atingir qualquer endereo de computador finalizando com aquele string. Use 200.200.200. para conferir com qualquer endereo IP iniciando com estes dgitos. Existem alguns parmetros especiais para simplificar a configurao, alguns destes so: `ALL' atinge todos endereos, `LOCAL' atinge qualquer computador que no contm um "." (ie. est no mesmo domnio de sua mquina) e `PARANOID' atinge qualquer computador que o nome no confere com seu endereo (falsificao de nome). Existe tambm um ltimo parmetro que tambm til: o parmetro `EXCEPT' lhe permite fazer uma lista de excees. Isto ser coberto em um exemplo adiante. comando um parmetro opcional. Este parmetro o caminho completo de um comando que dever ser executado toda a vez que esta regra conferir. Ele pode executar um comando para tentar identificar quem esta conectado pelo host remoto, ou gerar uma mensagem via E-Mail ou algum outro alerta para um administrador de rede que algum est tentando se conectar. Existem um nmero de expanses que podem ser includas, alguns exemplos comuns so: %h expande o endereo do computador que est conectado ou endereo se ele no possuir um nome, %d o nome do daemon sendo chamado. Se o computador tiver permisso de acessar um servio atravs do `/etc/hosts.allow', ento o `/etc/hosts.deny' no ser consultado e o acesso ser permitido. Como exemplo: # /etc/hosts.allow # # Permite que qualquer um envie e-mails in.smtpd: ALL # Permitir telnet e ftp somente para hosts locais e myhost.athome.org.au in.telnetd, in.ftpd: LOCAL, myhost.athome.org.au # Permitir finger para qualquer um mas manter um registro de quem in.fingerd: ALL: (finger @%h | mail -s "finger from %h" root) Qualquer modificao no arquivo `/etc/hosts.allow' entrar em ao aps reiniciar o daemon _inetd_. Isto pode ser feito com o comando `kill -HUP [pid do inetd]', o `pid' do _inetd_ pode ser obtido com o comando `ps ax|grep inetd'.

-191-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

15.8.3.2. /etc/hosts.deny ------------------------O arquivo `/etc/hosts.deny' um arquivo de configurao das regras descrevendo quais computadores no tem a permisso de acessar um servio em sua mquina. Um modelo simples deste arquivo se parece com isto: # /etc/hosts.deny # # Bloqueia o acesso de computadores com endereos suspeitos ALL: PARANOID # # Bloqueia todos os computadores ALL: ALL A entrada `PARANOID' realmente redundante porque a outra entrada nega tudo. Qualquer uma destas linhas pode fazer uma segurana padro dependendo de seu requerimento em particular. Tendo um padro _ALL: ALL_ no arquivo _/etc/hosts.deny_ e ento ativando especificamente os servios e permitindo computadores que voc deseja no arquivo `/etc/hosts.allow' a configurao mais segura. Qualquer modificao no arquivo `/etc/hosts.deny' entrar em ao aps reiniciar o daemon _inetd_. Isto pode ser feito com o comando `kill -HUP [pid do inetd]', o `pid' do _inetd_ pode ser obtido com o comando `ps ax|grep inetd'. 15.8.3.3. /etc/hosts.equiv e /etc/shosts.equiv ---------------------------------------------O arquivo `/etc/hosts.equiv' usado para garantir/bloquear certos computadores e usurios o direito de acesso aos servios "r*" (rsh, rexec, rcp, etc) sem precisar fornecer uma senha. O `/etc/shosts.equiv' equivalente mas lido somente pelo servio ssh. Esta funo til em um ambiente seguro onde voc controla todas as mquinas, mesmo assim isto um perigo de segurana (veja nas observaes). O formato deste arquivo o seguinte: #Acesso + Mquina maquina2.dominio.com.br maquina4.dominio.com.br maquina1.dominio.com.br Usurio usuario2 usuario2 +@usuarios

O primeiro campo especifica se o acesso ser permitido ou negado caso o segundo e terceiro campo confiram. Por razes de segurana deve ser especificado o FQDN no caso de nomes de mquinas. Grupos de rede podem ser especificados usando a sintaxe "+@grupo". Para aumentar a segurana, no use este mecanismo e encoraje seus usurios a tambm no usar o arquivo `.rhosts'. _ATENO_ O uso do sinal "+" sozinho significa permitir acesso livre a qualquer pessoa de qualquer lugar. Se este mecanismo for mesmo
-192-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

necessrio, tenha muita ateno na especificao de seus campos. Evita tambm A TODO CUSTO uso de nomes de usurios (a no ser para negar o acesso), pois fcil forjar o login, entrar no sistema tomar conta de processos (como por exemplo do servidor `Apache' rodando sob o usurio `www-data' ou at mesmo o _root_), causando enormes estragos. 15.8.3.4. Verificando a segurana do TCPD e a sintaxe dos arquivos -----------------------------------------------------------------O utilitrio `tcpdchk' til para verificar problemas nos arquivos `hosts.allow' e `hosts.deny'. Quando executado ele verifica a sintaxe destes arquivos e relata problemas, caso eles existam. Outro utilitrio til o `tcpdmatch', o que ele faz permitir que voc simule a tentativa de conexes ao seu sistema e observar ser ela ser permitida ou bloqueada pelos arquivos `hosts.allow' e `hosts.deny'. importante mostrar na prtica como o `tcpdmatch' funciona atravs de um exemplo simulando um teste simples em um sistema com a configurao padro de acesso restrito: * O arquivo `hosts.allow' contm as seguintes linhas: ALL: 127.0.0.1 in.talkd, in.ntalkd: ALL in.fingerd: 192.168.1. EXCEPT 192.168.1.30 A primeira linha permite o loopback (127.0.0.1) acessar qualquer servio TCP/UDP em nosso computador, a segunda linha permite qualquer um acessar os servidor TALK (ns desejamos que o sistema nos avise quando algum desejar conversar) e a terceira somente permite enviar dados do `finger' para computadores dentro de nossa rede privada (exceto para 192.168.1.30). * O arquivo `hosts.deny' contm a seguinte linha: ALL: ALL Qualquer outra conexo ser explicitamente derrubada. Vamos aos testes, digitando: "tcpdmatch in.fingerd 127.0.0.1" (verificar se o endereo 127.0.0.1 tem acesso ao finger): client: server: matched: access: address 127.0.0.1 process in.fingerd /etc/hosts.allow line 1 granted

Ok, temos acesso garantido com especificado pela linha 1 do `hosts.allow' (a primeira linha que confere usada). Agora "tcpdmatch in.fingerd 192.168.1.29": client: server: address process 192.168.1.29 in.fingerd
-193-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

matched: access:

/etc/hosts.allow line 3 granted Agora

O acesso foi permitido atravs da linha 3 do `hosts.allow'. "tcpdmatch in.fingerd 192.168.1.29": client: server: matched: access: address 192.168.1.30 process in.fingerd /etc/hosts.deny line 1 denied

O que aconteceu? como a linha 2 do `hosts.allow' permite o acesso a todos os computadores 192.168.1.* exceto 192.168.1.30, ela no bateu, ento o processamento partiu para o `hosts.deny' que nega todos os servios para qualquer endereo. Agora um ltimo exemplo: "tcpdmatch in.talkd www.debian.org" client: server: matched: access: address www.debian.org process in.talkd /etc/hosts.allow line 2 granted

Ok, na linha 2 qualquer computador pode te chamar para conversar via talk na rede, mas para o endereo DNS conferir com um IP especificado, o `GNU/Linux' faz a resoluo DNS, convertendo o endereo para IP e verificando se ele possui acesso. No lugar do endereo tambm pode ser usado a forma `daemon@computador' ou `cliente@computador' para verificar respectivamente o acesso de daemons e cliente de determinados computadores aos servios da rede. Como pode ver o TCPD ajuda a aumentar a segurana do seu sistema, mas no confie nele alm do uso em um sistema simples, necessrio o uso de um firewall verdadeiro para controlar minuciosamente a segurana do seu sistema e dos pacotes que atravessam os protocolos, roteamento e as interfaces de rede. Se este for o caso aprenda a trabalhar a fundo com firewalls e implemente a segurana da sua rede da forma que melhor planejar. 15.8.4. Firewall ---------------Dentre todos os mtodos de segurana, o _Firewall_ o mais seguro. A funo do Firewall bloquear determinados tipos de trfego de um endereo ou para uma porta local ou permitir o acesso de determinados usurios mas bloquear outros, bloquear a falsificao de endereos, redirecionar trfego da rede, ping da morte, etc. A implementao de um bom firewall depender da experincia, conhecimentos de rede (protocolos, roteamento, interfaces, endereamento, masquerade, etc), da rede local, e sistema em geral do Administrador de redes, a segurana de sua rede e seus dados dependem da escolha do profissional correto, que entenda a fundo o TCP/IP, roteamento, protocolos, servios e outros assuntos ligados a rede. Freqentemente tem se ouvido falar de empresas que tiveram seus sistemas invadidos, em parte isto devido a escolha do sistema
-194-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

operacional indevido mas na maioria das vezes o motivo a falta de investimento da empresa em polticas de segurana, que algumas simplesmente consideram a segurana de seus dados e sigilo interno como uma `despesa a mais'. Um bom firewall que recomendo o `ipchains', `Sinus' e o `TIS'. Particularmente gosto muito de usar o `ipchains' e o `Sinus' e possvel fazer coisas inimaginveis programando scripts para interagirem com estes programas...

15.9. Outros arquivos de configurao relacionados com a rede ------------------------------------------------------------15.9.1. /etc/services --------------------O arquivo `/etc/services' um banco de dados simples que associa um nome amigvel a humanos a uma porta de servio amigvel a mquinas. um arquivo texto de formato muito simples, cada linha representa um item no banco de dados. Cada item dividido em trs campos separados por qualquer nmero de espaos em branco (tab ou espaos). Os campos so: nome name Uma palavra simples que representa o nome do servio sendo descrito. porta/protocolo Este campo dividido em dois sub-campos. * `porta' - Um nmero que especifica o nmero da porta em que o servio estar disponvel. Muitos dos servios comuns tem designados um nmero de servio. Estes esto descritos no RFC-1340. * `protocolo' - Este sub-campo pode ser ajustado para _tcp_ ou _udp_. importante notar que o item _18/tcp_ muito diferente do item _18/udp_ e que no existe razo tcnica porque o mesmo servio precisa existir em ambos. Normalmente o senso comum prevalece e que somente se um servio esta disponvel em ambos os protocolos _tcp_ e _udp_, voc precisar especificar ambos. apelidos Outros nomes podem ser usados para se referir a entrada deste servio. comentrio Qualquer texto aparecendo em uma linha aps um caracter "#" ignorado e tratado como comentrio. 15.9.2. /etc/protocols ---------------------O arquivo `/etc/protocols' um banco de dados que mapeia nmeros de identificao de protocolos novamente em nomes de protocolos. Isto usado por programadores para permiti-los especificar protocolos por nomes em seus programas e tambm por alguns programas tal como _tcpdump_ permitindo-os mostrar _nomes_ ao invs de _nmeros_ em sua
-195-

porta/protocolo

apelido

# comentrio

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

sada.

A sintaxe geral deste arquivo : nomeprotocolo nmero apelidos

-------------------------------------------------------------------------------

16. Kernel e Mdulos -------------------Este captulo descreve em detalhes o que o kernel, mdulos, sua configurao e programas relacionados.

16.1. O Kernel ------------- o sistema operacional (o `Linux'), ele que controla os dispositivos e demais perifricos do sistema (como memria, placas de som, vdeo, discos rgidos, disquetes, sistemas de arquivos, redes e outros recursos disponveis). Muitos confundem isto e chamam a distribuio de sistema operacional. Isto errado! O _kernel_ faz o controle dos perifricos do sistema e para isto ele deve ter o seu suporte includo. Para fazer uma placa de som _Sound Blaster_ funcionar, por exemplo, necessrio que o kernel oferea suporte a este placa e voc deve configurar seus parmetros (como interrupo, I/O e DMA) com comandos especficos para ativar a placa e faze-la funcionar corretamente. Existe um documento que contm quais so os perifricos suportados/ no suportados pelo `GNU/Linux', ele se chama `Hardware-HOWTO'. Suas verses so identificadas por nmeros como 2.0.36, 2.0.38, 2.1.10, 2.2.12, as verses que contm um nmero par entre o primeiro e segundo ponto so verses estveis e que contm nmeros mpares neste mesmo local so verses instveis (em desenvolvimento). Usar verses instveis no quer dizer que ocorrer travamentos ou coisas do tipo, mas algumas partes do kernel podem no estar testadas o suficiente ou alguns controladores podem ainda estar incompletos para obter pleno funcionamento. Se opera sua mquina em um ambiente crtico, prefira pegar verses estveis do kernel. Aps inicializar o sistema, o kernel e seus arquivos podem ser acessados ou modificados atravs do ponto de montagem `/proc'. detalhes veja Section 5.8, `O sistema de arquivos `/proc''.

Para

Caso voc tenha um dispositivo (como uma placa de som) que tem suporte no `GNU/Linux' mas no funciona veja Section 16.3, `Como adicionar suporte a Hardwares e outros dispositivos no kernel'.

16.2. Mdulos ------------So partes do kernel que so carregadas somente quando so solicitadas por algum aplicativo ou dispositivo e descarregadas da memria quando
-196-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

no so mais usadas. Este recurso til por 2 motivos: Evita a construo de um kernel grande (esttico) que ocupe grande parte da memria com todos os drivers compilados e permite que partes do kernel ocupem a memria somente quando forem necessrios. Os mdulos do kernel esto localizados no diretrio `/lib/modules/verso_do_kernel/*' (onde `verso_do_kernel' a verso atual do kernel em seu sistema, caso seja `2.2.10' o diretrio que contm seus mdulos ser `/lib/modules/2.2.10'. Os mdulos so carregados automaticamente quando solicitados atravs do programa `kmod' ou manualmente atravs do arquivo `/etc/modules' , `insmod' ou `modprobe'. Ateno: No compile o suporte ao seu sistema de arquivos raz como mdulo, isto o tornar inacessvel.

16.3. Como adicionar suporte a Hardwares e outros dispositivos no kernel -----------------------------------------------------------------------Quando seu hardware no funciona mas voc tem certeza que suportado pelo `GNU/Linux', preciso seguir alguns passos para faze-lo funcionar corretamente: * Verifique se o kernel atual foi compilado com suporte ao seu dispositivo. Tambm possvel que o suporte ao dispositivo esteja compilado como mdulo. D o comando `dmesg' para ver as mensagens do kernel durante a inicializao e verifique se aparece alguma coisa referente ao dispositivo que deseja instalar (alguma mensagem de erro, etc). Caso no aparecer nada possvel que o driver esteja compilado como mdulo, para verificar isto entre no diretrio `/lib/modules/versao_do_kernel' e veja se encontra o mdulo correspondente ao seu dispositivo (o mdulo da placa _NE 2000_ tem o nome de `ne.o' e o da placa _Sound Blaster_ de `sb.o', por exemplo). Caso o kernel no tiver o suporte ao seu dispositivo, voc precisar recompilar seu kernel ativando seu suporte. Veja Section 16.11, `Recompilando o Kernel'. * Caso seu hardware esteja compilado no kernel, verifique se o mdulo correspondente est carregado (com o comando `lsmod'). Caso no estiver, carregue-o com o `modprobe' (por exemplo, `modprobe sb io=0x220 irq=5 dma=1 dma16=5 mpuio=0x330'), para detalhes veja Section 16.8, `modprobe'. O uso deste comando dever ativar seu hardware imediatamente, neste caso configure o mdulo para ser carregado automaticamente atravs do programa `modconf' ou edite os arquivos relacionados com os mdulos (veja Section 16.12, `Arquivos relacionados com o Kernel e Mdulos'). Caso no tenha sucesso, ser retornada uma mensagem de erro.

16.4. kmod ---------Este o programa usado para carregar os mdulos automaticamente


-197-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

quando so requeridos pelo sistema. Ele um daemon que funciona constantemente fazendo a monitorao, quando verifica que algum dispositivo ou programa est solicitando o suporte a algum dispositivo, ele carrega o mdulo correspondente. Ele pode ser desativado atravs da recompilao do kernel, dando um `kill' no processo ou atravs do arquivo `/etc/modules' (veja Section 16.12.1, `/etc/modules'. Caso seja desativado, preciso carregar manualmente os mdulos atravs do `modprobe' ou `insmod'.

16.5. lsmod ----------Lista quais mdulos esto carregados atualmente pelo kernel. O nome `lsmod' uma contrao de `ls'+`mdulos' - Listar Mdulos. A listagem feita pelo `lsmod' uma alternativa ao uso do comando `cat /proc/modules'. A sada deste comando tem a seguinte forma: Module nls_iso8859_1 nls_cp437 ne 8390 Size 8000 3744 6156 8390 Pages 1 1 2 2 Used by 1 (autoclean) 1 (autoclean) 1 [ne] 0

A coluna _Module_ indica o nome do mdulo que est carregado, a coluna _Used_ mostra qual mdulos est usando aquele recurso. O parmetro _(autoclean)_ no final da coluna indica que o mdulo foi carregado manualmente (pelo `insmod' ou `modprobe') ou atravs do `kmod' e ser automaticamente removido da memria quando no for mais usado. No exemplo acima os mdulos _ne_ e _8390_ no tem o parmetro _(autoclean)_ porque foram carregados pelo arquivo `/etc/modules' (veja Section 16.12.1, `/etc/modules'). Isto significa que no sero removidos da memria caso estiverem sem uso. Qualquer mdulo carregado pode ser removido manualmente atravs do comandos `rmmod'.

16.6. insmod -----------Carrega um mdulo manualmente. Para carregar mdulos que dependem de outros mdulos para que funcionem, voc duas opes: Carregar os mdulos manualmente ou usar o `modprobe' que verifica e carrega as dependncias correspondentes. A sintaxe do comando : `insmod [_mdulo_] [_opes_mdulo_]' Onde: mdulo o nome do mdulo que ser carregado. opes_mdulo Opes que sero usadas pelo mdulo. Variam de mdulo para
-198-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

mdulo, alguns precisam de opes outros no, tente primeiro carregar sem opes, caso seja mostrada uma mensagem de erro verifique as opes usadas por ele. Para detalhes sobre que opes so suportadas por cada mdulo, veja a sua documentao no cdigo fonte do kernel em `/usr/src/linux/Documentation' Exemplo: `insmod ne io=0x300 irq=10'

16.7. rmmod ----------Remove mdulos carregados no kernel. Para ver atualmente carregados no kernel digite `lsmod' coluna o nome do mdulo. Caso um mdulo tenha tentar remover suas dependncias, uma mensagem alertando que o mdulo est em uso. Exemplo: `rmmod ne' os nomes dos mdulos e verifique na primeira dependncias e voc de erro ser mostrada

16.8. modprobe -------------Carrega um mdulo e suas dependncias manualmente. Este comando permite carregar diversos mdulos e dependncias de uma s vez. O comportamento do `modprobe' modificado pelo arquivo `/etc/modules.conf' . A sintaxe deste comando : `modprobe [_mdulo_] [_opes_mdulo_]' Onde: mdulo o nome do mdulo que ser carregado. opes_mdulo Opes que sero usadas pelo mdulo. Variam de mdulo para mdulo, alguns precisam de opes outros no, tente primeiro carregar sem opes, caso seja mostrada uma mensagem de erro verifique as opes usadas por ele. Para detalhes sobre que opes so suportadas por cada mdulo, veja a sua documentao no cdigo fonte do kernel em `/usr/src/linux/Documentation' Nem todos os mdulos so carregados corretamente pelo `modprobe', o `plip', por exemplo, mostra uma mensagem sobre porta I/O invlida mas no caso seja carregado pelo `insmod'. Exemplo: `modprobe ne io=0x300 irq=10', `modprobe sb io=0x220 irq=5 dma=1 dma16=5 mpuio=0x330'

16.9. depmod -----------Verifica a dependncia de mdulos. As dependncias dos mdulos so verificadas pelos scripts em `/etc/init.d' usando o comando `depmod -a' e o resultado gravado no arquivo `/lib/modules/versao_do_kernel/modules.dep'. Esta checagem serve para
-199-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

que todas as dependncias de mdulos estejam corretamente disponveis na inicializao do sistema. O comportamento do `depmod' pode ser modificado atravs do arquivo `/etc/modules.conf' . possvel criar a dependncia de mdulos imediatamente aps a compilao do kernel digitando `depmod -a [_verso_do_kernel_]'. Exemplo: `depmod -a'

16.10. modconf -------------Este programa permite um meio mais fcil de configurar a ativao de mdulos e opes atravs de uma interface atravs de menus. Selecione a categoria de mdulos atravs das setas acima e abaixo e pressione enter para selecionar os mdulos existentes. Sero pedidas as opes do mdulo (como DMA, IRQ, I/O) para que sua inicializao seja possvel, estes parmetros so especficos de cada mdulo e devem ser vistos na documentao do cdigo fonte do kernel no diretrio `/usr/src/linux/Documentation'. Note que tambm existem mdulos com auto-deteco mas isto deixa o sistema um pouco mais lento, porque ele far uma varredura na faixa de endereos especificados pelo mdulo para achar o dispositivo. As opes so desnecessrias em alguns tipos de mdulos. As modificaes feitas por este programa so gravadas no diretrio `/etc/modutils' em arquivos separados como `/etc/modutils/alias' alias de mdulos, `/etc/modutils/modconf' - opes usadas por mdulos, `/etc/modutils/paths' - Caminho onde os mdulos do sistema so encontrados. Dentro de `/etc/modutils' ainda encontrado um sub-diretrio chamado `arch' que contm opes especficas por arquiteturas. A sincronizao dos arquivos gerados pelo `modconf' com o `/etc/modules.conf' feita atravs do utilitrio `update-modules'. Ele normalmente executado aps modificaes nos mdulos feitas pelo `modconf'.

16.11. Recompilando o Kernel ---------------------------Ser que vou precisar recompilar o meu kernel? voc deve estar se perguntando agora. Abaixo alguns motivos para esclarecer suas dvidas: * Melhora o desempenho do kernel. O kernel padro que acompanha as distribuies `GNU/Linux' foi feito para funcionar em qualquer tipo de sistema e garantir seu funcionamento e inclui suporte a praticamente tudo. Isto pode gerar desde instabilidade at uma grade pausa do kernel na inicializao quando estiver procurando pelos dispositivos que simplesmente no existem em seu computador! A compilao permite escolher somente o suporte aos dispositivos existentes em seu computador e assim diminuir o tamanho do kernel, desocupar a memria RAM com dispositivos que nunca usar
-200-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

e assim voc ter um desempenho bem melhor do que teria com um kernel pesado. * Incluir suporte a alguns hardwares que esto desativados no kernel padro (SMP, APM, Firewall, drivers experimentais, etc). * Se aventurar em compilar um kernel (sistema operacional) personalizado em seu sistema. * Impressionar os seus amigos, tentando coisas novas. Sero necessrios uns 70Mb de espao em disco disponvel para copiar e descompactar o cdigo fonte do kernel e alguns pacotes de desenvolvimento como o `gcc', `cpp', `binutils', `gcc-i386-gnu', `bin86', `make', `dpkg-dev', `perl', `kernel-package' (os trs ltimos somente para a distribuio `Debian'). Na distribuio `Debian', o melhor mtodo atravs do `kernel-package' que faz tudo para voc (menos escolher o que ter o no o suporte no kernel) e gera um pacote `.deb' que poder ser usado para instalar o kernel em seu sistema ou em qualquer outro que execute a `Debian' ou distribuies baseadas (`Corel Linux', `Libranet', etc). Devido a sua facilidade, a compilao do kernel atravs do `kernel-package' muito recomendado para usurios iniciantes e para aqueles que usam somente um kernel no sistema ( possvel usar mais de dois ao mesmo tempo, veja o processo de compilao manual adiante neste captulo). Siga este passos para recompilar seu kernel atravs do `kernel-package': 1. Descompacte o cdigo fonte do kernel (atravs do arquivo linux-2.2.XX) para o diretrio `/usr/src'. Caso use os pacotes da `Debian' eles tero o nome de `kernel-source-2.2.XX', para detalhes de como instalar um pacote, veja Section 19.1.2, `Instalar pacotes'. Aps isto, entre no diretrio onde o cdigo fonte do kernel foi instalado com `cd /usr/src/linux' (este ser assumido o lugar onde o cdigo fonte do kernel se encontra). Como usurio `root', digite `make config'. Voc tambm pode usar `make menuconfig' (configurao atravs de menus) ou `make xconfig' (configurao em modo grfico) mas precisar de pacotes adicionais para que estes dois funcionem corretamente. Sero feitas perguntas sobre se deseja suporte a tal dispositivo, etc. Pressione `Y' para incluir o suporte diretamente no kernel, `M' para incluir o suporte como mdulo ou `N' para no incluir o suporte. Note que nem todos os drivers podem ser compilados como mdulos. Escolha as opes que se encaixam em seu sistema. se estiver em dvida sobre a pergunta digite `?' e tecle Enter para ter uma explicao sobre o que aquela opo faz. Se no souber do que se trata, recomendo incluir a opo (pressionando `Y' ou `M'. Este passo pode levar entre 5 minutos e 1 Hora (usurios que esto fazendo isto pela primeira vez tendem a levar mais tempo lendo e conhecendo os recursos que o `GNU/Linux' possui, antes de tomar
-201-

2.

3.

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

qualquer deciso). No se preocupe se esquecer de incluir o suporte a alguma coisa, voc pode repetir o passo `make config' (todas as suas escolhas so gravadas no arquivo `.config'), recompilar o kernel e instalar em cima do antigo a qualquer hora que quiser. 4. Aps o `make config' chegar ao final, digite `make-kpkg clean' para limpar construes anteriores do kernel. Agora compile o kernel digitando `make-kpkg --revision=teste.1.0 kernel-image'. A palavra `teste' pode ser substituda por qualquer outra que voc quiser e nmero da verso `1.0' serve apenas como controle de suas compilaes (pode ser qualquer nmero). Observao: No inclua hfens (`-') no parmetro --revision, use somente pontos. 6. Agora aps compilar, o kernel ser gravado no diretrio superior (..) com um nome do tipo `kernel-image-2.2.10-i386_teste.1.0.deb'. Basta voc digitar `dpkg -i kernel-image-2.2.10-i386_teste.1.0.deb' e o `dpkg' far o resto da instalao do kernel para voc e perguntar se deseja criar um disquete de inicializao (recomendvel). Reinicie seu computador, seu novo kernel iniciar e voc j perceber a primeira diferena pela velocidade que o `GNU/Linux' iniciado (voc inclui somente suporte a dispositivos em seu sistema). O desempenho dos programas tambm melhorar pois cortou o suporte a dispositivos/funes que seu computador no precisa. Caso alguma coisa sair errada, coloque o disquete que gravou no passo anterior e reinicie o computador para fazer as correes. Para recompilar o kernel usando o mtodo padro, siga os seguintes passos: 1. Descompacte o cdigo fonte do kernel (atravs do arquivo linux-2.2.XX) para o diretrio `/usr/src'. O cdigo fonte do kernel pode ser encontrado em ftp://ftp.kernel.org/. 2. Aps isto, entre no diretrio onde o cdigo fonte do kernel foi instalado com `cd /usr/src/linux' (este ser assumido o lugar onde o cdigo fonte do kernel se encontra). 3. Como usurio `root', digite `make config'. Voc tambm pode usar `make menuconfig' (configurao atravs de menus) ou `make xconfig' (configurao em modo grfico) mas precisar de pacotes adicionais. Sero feitas perguntas sobre se deseja suporte a tal dispositivo, etc. Pressione `Y' para incluir o suporte diretamente no kernel, `M' para incluir o suporte como mdulo ou `N' para no incluir o suporte. Note que nem todos os drivers podem ser compilados como mdulos. Escolha as opes que se encaixam em seu sistema. se estiver em dvida sobre a pergunta digite `?' e tecle Enter para ter uma explicao sobre o que aquela opo faz. Se no souber do que se trata, recomendo incluir a opo (pressionando `Y' ou `M'. Este passo pode levar entre 5 minutos e 1 Hora (usurios que esto
-202-

5.

7.

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

4. 5. 6.

7.

8.

fazendo isto pela primeira vez tendem a levar mais tempo lendo e conhecendo os recursos que o `GNU/Linux' possui antes de tomar qualquer deciso). No se preocupe se esquecer de incluir o suporte a alguma coisa, voc pode repetir o passo `make config', recompilar o kernel e instalar em cima do antigo a qualquer hora que quiser. Digite o comando `make dep' para verificar as dependncias dos mdulos. Digite o comando `make clean' para limpar construes anteriores do kernel. Digite o comando `make zImage' para iniciar a compilao do kernel esttico (outro comando compila os mdulos). Aguarde a compilao, o tempo pode variar dependendo da quantidade de recursos que adicionou ao kernel, a velocidade de seu computador e a quantidade de memria RAM disponvel. Caso tenha acrescentado muitos tens no Kernel, possvel que o comando `make zImage' falhe no final (especialmente se o tamanho do kernel esttico for maior que 505Kb). Neste caso use `make bzImage'. A diferena entre _zImage_ e _bzImage_ que o primeiro possui um limite de tamanho porque descompactado na memria bsica (recomendado para alguns Notebooks), j a _bzImage_, descompactada na memria estendida e no possui as limitaes da _zImage_. Aps terminada a compilao do kernel esttico, execute `make modules' para compilar os mdulos referentes quele kernel. A velocidade de compilao pode variar de acordo com os motivos do passo anterior. A compilao neste ponto est completa, voc agora tem duas opes para instalar o kernel: Substituir o kernel anterior pelo recm compilado ou usar os dois. A segunda questo recomendvel se voc no tem certeza se o kernel funcionar corretamente e deseja iniciar pelo antigo no caso de alguma coisa dar errado. Se voc optar por substituir o kernel anterior: 1. recomendvel renomear o diretrio `/lib/modules/verso_do_kernel' para `/lib/modules/verso_do_kernel.old', isto ser til para restaurao completa dos mdulos antigos caso alguma coisa der errado. 2. Execute o comando `make modules_install' para instalar os mdulos do kernel recm compilado em `/lib/modules/verso_do_kernel'. 3. Copie o arquivo `zImage' que contm o kernel de `/usr/src/linux/arch/i386/boot/zImage' para `/boot/vmlinuz-2.XX.XX' (_2.XX.XX_ a verso do kernel anterior) 4. Verifique se o link simblico `/vmlinuz' aponta para a verso do kernel que compilou atualmente (com `ls -la /'). Caso contrrio, apague o arquivo `/vmlinuz' do diretrio raz e crie um novo link com `ln -s /boot/vmlinuz-2.XX.Xx /vmlinuz' apontando para o kernel correto. 5. Execute o comando `lilo' para gerar um novo setor de partida no disco rgido. Para detalhes veja Section 6.1, `LILO'. 6. Reinicie o sistema (`shutdown -r now'). 7. Caso tudo esteja funcionando normalmente, apague o diretrio antigo de mdulos que salvou e o kernel antigo de `/boot'. Caso algo tenha dado errado e seu sistema no inicializa,
-203-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

inicie a partir de um disquete, apague o novo kernel, apague os novos mdulos, renomeie o diretrio de mdulos antigos para o nome original, ajuste o link simblico `/vmlinuz' para apontar para o antigo kernel e execute o `lilo'. Aps reiniciar seu computador voltar como estava antes. Se voc optar por manter o kernel anterior e selecionar qual ser usado na partida do sistema (til para um kernel em testes): 1. Execute o comando `make modules_install' para instalar os mdulos recm compilados do kernel em `/lib/modules/versao_do_kernel'. 2. Copie o arquivo `zImage' que contm o kernel de `/usr/src/linux/arch/i386/boot/zImage' para `/boot/vmlinuz-2.XX.XX' (_2.XX.XX_ a verso do kernel anterior) 3. Crie um link simblico no diretrio raz (`/') apontando para o novo kernel. Como exemplos ser usado `/vmlinuz-novo'. 4. Modifique o arquivo `/etc/lilo.conf' para incluir a nova imagem de kernel. Por exemplo: Antes da modificao: boot=/dev/hda prompt timeout=200 delay=200 map=/boot/map install=menu image = /vmlinuz root = /dev/hda1 label = 1 read-only Depois da modificao: boot=/dev/hda prompt timeout=200 delay=200 map=/boot/map install=menu image = /vmlinuz root = /dev/hda1 label = 1 read-only image = /vmlinuz-new root = /dev/hda1 label = 2 read-only Se voc digitar `1' no aviso de `boot:' do `Lilo', o kernel antigo ser carregado, caso digitar `2' o novo kernel ser carregado. Para detalhes veja Section 6.1.1, `Criando o arquivo de configurao do LILO' e Section 6.1.3, `Um exemplo do arquivo de configurao lilo.conf'. Execute o comando `lilo' para gravar o novo setor de boot
-204-

5.

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

para o disco rgido. Reinicie o computador Carregue o novo kernel escolhendo a opo `2' no aviso de `boot:' do `Lilo'. Caso tiver problemas, escolha a opo `1' para iniciar com o kernel antigo e verifique os passos de configurao (o arquivo `lilo.conf' foi modificado corretamente?. Em alguns casos (como nos kernels empacotados em distribuies `GNU/Linux') o cdigo fonte do kernel gravado em um diretrio chamado `kernel-source-xx.xx.xx'. recomendvel fazer um link com um diretrio `GNU/Linux', pois o padro usado pelas atualizao do cdigo fonte atravs de patches (veja Section 16.13, `Aplicando Patches no kernel'). 6. 7. Para criar o link simblico, entre em `/usr/src' e digite: `ln -s kernel-source-xx.xx.xx linux'. Se quiser mais detalhes sobre a compilao do kernel, consulte o documento _kernel-howto_.

16.12. Arquivos relacionados com o Kernel e Mdulos --------------------------------------------------Esta seo descreve os arquivos usados pelo kernel e mdulos, a funo de cada um no sistema, a sintaxe, etc. 16.12.1. /etc/modules --------------------A funo deste arquivo carregar mdulos especificados na inicializao do sistema e mant-los carregado todo o tempo. til para mdulos de placas de rede que precisam ser carregados antes da configurao de rede feita pela distribuio e no podem ser removidos quando a placa de rede estiver sem uso (isto retiraria seu computador da rede). Seu contedo uma lista de mdulos (um por linha) que sero carregados na inicializao do sistema. Os mdulos carregados pelo arquivo `/etc/modules' pode ser listados usando o comando `lsmod' (veja Section 16.5, `lsmod'. Se o parmetro `auto' estiver especificado como um mdulo, o `kmod' ser ativado e carregar os mdulos somente em demanda, caso seja especificado `noauto' o programa `kmod' ser desativado. O `kmod' ativado por padro nos nveis de execuo 2 ao 5. Ele pode ser editado em qualquer editor de textos comum ou modificado automaticamente atravs do utilitrio `modconf'. 16.12.2. modules.conf --------------------O arquivo `/etc/modules.conf' permite controlar as opes de todos os mdulos do sistema. Ele consultado pelos programas `modprobe' e `depmod'. As opes especificadas neste arquivo facilita o gerenciamento de mdulos, evitando a digitao de opes atravs da
-205-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

linha de comando. Note que recomendado o uso do utilitrio `modconf' para configurar quaisquer mdulos em seu sistema e o utilitrio `update-modules' para sincronizao dos arquivos gerados pelo `modconf' em `/etc/modutils' com o `/etc/modules.conf' (geralmente isto feito automaticamente aps o uso do `modconf'). Por este motivo no recomendvel modifica-lo manualmente, a no ser que seja um usurio experiente e saiba o que est fazendo. Veja Section 16.10, `modconf' Por exemplo: adicionando as linhas: alias sound sb options sb io=0x220 irq=5 dma=1 dma16=5 mpuio=0x330 permitir que seja usado somente o comando `modprobe sb' para ativar a placa de som.

16.13. Aplicando Patches no kernel ---------------------------------_Patches_ so modificaes geradas pelo programa `diff' em que servem para atualizar um programa ou texto. Este recurso muito til para os desenvolvedores, pois podem gerar um arquivo contendo as diferenas entre um programa antigo e um novo (usando o comando `diff') e enviar o arquivo contendo as diferenas para outras pessoas. As pessoas interessadas em atualizar o programa antigo, podem simplesmente pegar o arquivo contendo as diferenas e atualizar o programa usando o `patch'. Isto muito usado no desenvolvimento do kernel do `GNU/Linux' em que novas verses so lanadas freqentemente e o tamanho kernel completo compactado ocupa cerca de 18MB. Voc pode atualizar seu kernel pegando um patch seguinte a verso que possui em ftp://ftp.kernel.org/. Para aplicar um patch que atualizar seu kernel 2.2.13 para a verso 2.2.14 voc deve proceder da seguinte forma: * Descompacte o cdigo fonte do kernel 2.2.13 em `/usr/src/linux' ou certifique-se que existe um link simblico do cdigo fonte do kernel para `/usr/src/linux'. * Copie o arquivo `patch-2.2.14.gz' de ftp://ftp.kernel.org/ para `/usr/src'. * Use o comando `gzip -dc patch-2.2.14|patch -p0 -N -E' para atualizar o cdigo fonte em `/usr/src/linux' para a verso 2.2.14. Alternativamente voc pode primeiro descompactar o arquivo `patch-2.2.14.gz' com o `gzip' e usar o comando `patch -p0 -N -E <patch-2.2.14' para atualizar o cdigo fonte do kernel. O `GNU/Linux' permite que voc obtenha o mesmo resultado atravs de diferentes mtodos, a escolha somente sua. Caso deseja atualizar o kernel 2.2.10 para 2.2.14, como no exemplo acima, voc dever aplicar os patches em seqncia (do patch 2.2.11 ao 2.2.14). Vale a pena observar se o tamanho total dos patches
-206-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

ultrapassa ou chega perto o tamanho do kernel completo.

-------------------------------------------------------------------------------

17. Arquivos e daemons de Log ----------------------------A atividade dos programas so registradas em arquivos localizados em `/var/log' . Estes arquivos de registros so chamados de _logs_ e contm a data, hora e a mensagem emitida pelo programa (violaes do sistema, mensagens de erro, alerta e outros eventos) entre outros campos. Enfim, muitos detalhes teis ao administrador tanto para acompanhar o funcionamento do seu sistema, comportamento dos programas ou ajudar na soluo e preveno de problemas. Alguns programas como o `Apache', `exim', `ircd' e `squid' criam diversos arquivos de log e por este motivo estes so organizados em sub-diretrios (a mesma tcnica usada nos arquivos de configurao em `/etc', conforme a padro FHS atual).

17.1. Formato do arquivo de log ------------------------------Um arquivo de log normalmente composto pelos seguintes campos: Data|Hora|Mquina|daemon|mensagem O campo _mquina_ o nome do computador que registrou a mensagem (a mquina pode atuar como um servidor de logs registrando mensagens de diversos computadores em sua rede). O campo _daemon_ indica qual programa gravou a _mensagem_. O uso dos utilitrios do console pode ajudar muito na pesquisa e monitorao dos logs, por exemplo, para obter todas as mensagens do daemon `kernel' da estao de trabalho `wrk1', eliminando os campos "wrk1" e "kernel": cat /var/log/*|grep 'wrk1'|grep 'kernel'|awk '{print $1 $2 $3 $6 $7 $8 $9 $10 $11 $12}' Os parmetros "$1", "$2" do comando `awk' indica que campos sero listados, (omitimos $4 e $5 que so respectivamente "wrk1" e "kernel").

17.2. Daemons de log do sistema ------------------------------Os daemons de log do sistema registram as mensagens de sada do kernel (`klogd') e sistema (`syslogd') nos arquivos em `/var/log' . A classificao de qual arquivo em `/var/log' receber qual tipo de mensagem controlado pelo arquivo de configurao `/etc/syslog.conf' atravs de _facilidades_ e _nveis_ (veja Section 17.2.1.1, `Arquivo de configurao `syslog.conf'' para detalhes).
-207-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

17.2.1. syslogd --------------Este daemon controla o registro de logs do sistema. `syslogd [_opes_]' _opes_ -f Especifica um arquivo de configurao alternativo ao `/etc/syslog.conf'. -h Permite redirecionar mensagens recebidas a outros servidores de logs especificados. -l [computadores] Especifica um ou mais computadores (separados por ":") que devero ser registrados somente com o nome de mquina ao invs do FQDN (nome completo, incluindo domnio). -m [minutos] Intervalo em _minutos_ que o syslog mostrar a mensagem `--MARK--'. O valor padro padro 20 minutos, 0 desativa. -n Evita que o processo caia automaticamente em background. Necessrio principalmente se o `syslogd' for controlado pelo `init'. -p [soquete] Especifica um soquete UNIX alternativo ao invs de usar o padro `/dev/log'. -r Permite o recebimento de mensagens atravs da rede atravs da porta UDP 514. Esta opo til para criar um servidor de logs centralizado na rede. Por padro, o servidor `syslog' rejeitar conexes externas. -s [domnios] Especifica a lista de domnios (separados por ":") que devero ser retirados antes de enviados ao log. Na distribuio `Debian', o daemon `syslogd' iniciado atravs do script `/etc/init.d/sysklogd'. 17.2.1.1. Arquivo de configurao `syslog.conf' ----------------------------------------------O arquivo de configurao `/etc/syslog.conf' possui o seguinte formato: facilidade.nvel destino

A _facilidade_ e _nvel_ so separadas por um "." e contm parmetros que definem o que ser registrado nos arquivos de log do sistema: * `facilidade' - usada para especificar que tipo de programa est enviando a mensagem. Os seguintes nveis so permitidos (em ordem alfabtica): * `auth' - Mensagens de segurana/autorizao ( recomendvel usar authpriv ao invs deste). * `authpriv' - Mensagens de segurana/autorizao (privativas).
-208-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

* `cron' - Daemons de agendamento (`cron' e `at'). * `daemon' - Outros daemons do sistema que no possuem facilidades especficas. * `ftp' - Daemon de ftp do sistema. * `kern' - Mensagens do kernel. * `lpr' - Subsistema de impresso. * `local0 a local7' - Reservados para uso local. * `mail' - Subsistema de e-mail. * `news' - Subsistema de notcias da USENET. * `security' - Sinnimo para a facilidade `auth' (evite usa-la). * `syslog' - Mensagens internas geradas pelo `syslogd'. * `user' - Mensagens genricas de nvel do usurio. * `uucp' - Subsistema de UUCP. * `*' - Confere com todas as facilidades. Mais de uma facilidade pode ser especificada na mesma linha do `syslog.conf' separando-as com ",". * `nvel' - Especifica a importncia da mensagem. Os seguintes nveis so permitidos (em ordem de importncia invertida; da mais para a menos importante): * `emerg' - O sistema est inutilizvel. * `alert' - Uma ao deve ser tomada imediatamente para resolver o problema. * `crit' - Condies crticas. * `err' - Condies de erro. * `warning' - Condies de alerta. * `notice' - Condio normal, mas significante. * `info' - Mensagens informativas. * `debug' - Mensagens de depurao. * `*' - Confere com todos os nveis. * `none' - Nenhuma prioridade. Alm destes nveis os seguintes sinnimos esto disponveis: * `error' - Sinnimo para o nvel err. * `panic' - Sinnimo para o nvel emerg. * `warn' - Sinnimo para o nvel warning. * `destino' - O destino das mensagens pode ser um arquivo, um pipe (se iniciado por um "|"), um computador remoto (se iniciado por uma "@"), determinados usurios do sistema (especificando os logins separados por vrgula) ou para todos os usurios logados via `wall' (usando "*"). Todas as mensagens com o nvel especificado e superiores a esta especificadas no `syslog.conf' sero registradas, de acordo com as opes usadas. Conjuntos de _facilidades_ e _nveis_ podem ser agrupadas separando-as por ";". OBS1: Sempre use TABS ao invs de espaos para separar os parmetros do `syslog.conf'. OBS2: Algumas facilidades como `security', emitem um beep de alerta no sistema e enviam uma mensagem para o console, como forma de alerta ao administrador e usurios logados no sistema. Existem ainda 4 caracteres que garantes funes especiais: "*", "=", "!" e "-": * "*" - Todas as mensagens da _facilidade_ especificada sero redirecionadas. * "=" - Somente o _nvel_ especificado ser registrado.
-209-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

* "!" - Todos os _nveis_ especificados e maiores NO sero registrados. * "-" - Pode ser usado para desativar o sync imediato do arquivo aps sua gravao. Os caracteres especiais "=" e "!" podem ser combinados em uma mesma regra. Exemplo: Veja abaixo um exemplo de um arquivo `/etc/syslog.conf' padro de sistemas `Debian' # # Primeiro alguns arquivos de log padres. Registrados por facilidade # auth,authpriv.* *.*;auth,authpriv.none cron.* daemon.* kern.* lpr.* mail.* user.* uucp.* /var/log/auth.log -/var/log/syslog /var/log/cron.log -/var/log/daemon.log -/var/log/kern.log -/var/log/lpr.log /var/log/mail.log -/var/log/user.log -/var/log/uucp.log

# # Registro de logs do sistema de mensagens. Divididos para facilitar # a criao de scripts para manipular estes arquivos. # mail.info -/var/log/mail.info mail.warn -/var/log/mail.warn mail.err /var/log/mail.err # Registro para o sistema de news INN # news.crit /var/log/news/news.crit news.err /var/log/news/news.err news.notice -/var/log/news/news.notice # # Alguns arquivos de registro "pega-tudo". # So usadas "," para especificar mais de uma prioridade (por # exemplo, "auth,authpriv.none") e ";" para especificar mais de uma # facilidade.nvel que ser gravada naquele arquivo. # Isto permite deixar as regras consideravelmente menores e mais legveis # *.=debug;\ auth,authpriv.none;\ news.none;mail.none -/var/log/debug *.=info;*.=notice;*.=warn;\ auth,authpriv.none;\ cron,daemon.none;\ mail,news.none -/var/log/messages # # Emergncias so enviadas para qualquer um que estiver logado no sistema. Isto # feito atravs da especificao do "*" como destino das mensagens e so # enviadas atravs do comando wall.
-210-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

# *.emerg

# # Eu gosto de ter mensagens mostradas no console, mas somente em consoles que # no utilizo. # #daemon,mail.*;\ # news.=crit;news.=err;news.=notice;\ # *.=debug;*.=info;\ # *.=notice;*.=warn /dev/tty8 # O pipe /dev/xconsole usado pelo utilitrio "xconsole". Para usa-lo, # voc deve executar o "xconsole" com a opo "-file": # # $ xconsole -file /dev/xconsole [...] # # NOTA: ajuste as regras abaixo, ou ficar maluco se tiver um um site # muito movimentado... # daemon.*;mail.*;\ news.crit;news.err;news.notice;\ *.=debug;*.=info;\ *.=notice;*.=warn |/dev/xconsole # A linha baixo envia mensagens importantes para o console em que # estamos trabalhando logados (principalmente para quem gosta de ter # controle total sobre o que est acontecendo com seu sistema). *.err;kern.debug;auth.notice;mail.crit /dev/console 17.2.2. klogd ------------Este daemon controla o registro de mensagens do kernel. Ele monitora as mensagens do kernel e as envia para o daemon de monitoramento `syslogd', por padro. `klogd [_opes_]' _opes_ -d Ativa o modo de depurao do daemon -f [arquivo] Envia as mensagens do kernel para o arquivo especificado ao invs de enviar ao daemon do `syslog' -i Envia um sinal para o daemon recarregar os smbolos de mdulos do kernel. -I Envia um sinal para o daemon recarregar os smbolos estticos e de mdulos do kernel. -n Evita a operao em segundo plano. til se iniciado pelo `init' -k [arquivo] Especifica o arquivo que contm os smbolos do kernel. Exemplos deste arquivo esto localizados em `/boot/System.map-xx.xx.xx'. A especificao de um arquivo com a opo `-k' necessria se desejar
-211-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

que sejam mostradas a tabela de smbolos ao invs de endereos numricos do kernel.

17.3. logger -----------Este comando permite enviar uma mensagem nos log do sistema. A mensagem enviada aos logs via daemon `syslogd' ou via soquete do sistema, possvel especificar a prioridade, nvel, um nome identificando o processo, etc. Seu uso muito til em shell scripts ou em outros eventos do sistema. `logger [_opes_] [_mensagem_]' Onde: _mensagem_ Mensagem que ser enviada ao daemon _syslog_ _opes_ -i Registra o PID do processo -s Envia a mensagem ambos para a sada padro (STDOUT) e syslog. -f [arquivo] Envia o contedo do arquivo especificado como _mensagem_ ao syslog. -t [nome] Especifica o nome do processo responsvel pelo log que ser exibido antes do PID na mensagem do syslog. -p [prioridade] Especifica a prioridade da mensagem do syslog, especificada como `facilidade.nvel'. Veja os tipos de prioridade/nveis em Section 17.2.1.1, `Arquivo de configurao `syslog.conf''. O valor padro _prioridade.nvel_ _user.notice_ Mais detalhes sobre o funcionamento sobre o daemon de log do sistema `syslogd', pode ser encontrado em Section 17.2.1, `syslogd' Exemplos: `logger -i -t focalinux Teste teste teste', `logger -i -f /tmp/mensagem -p security.emerg'

-------------------------------------------------------------------------------

18. Compactadores ----------------Esta seo explica o que so e como usar programas compactadores no `GNU/Linux', as caractersticas de cada um, como identificar um arquivo compactado e como descompactar um arquivo compactado usando o programa correspondente. A utilizao de arquivos compactados mtodo til principalmente para reduzir o consumo de espao em disco ou permitir grandes quantidades de texto serem transferidas para outro computador atravs de disquetes.

-212-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

18.1. Extenses de arquivos compactados --------------------------------------As extenses identificam o tipo de um arquivo e assim o programa o programa necessrio para trabalhar com aquele tipo de arquivo. Existem dezenas de extenses que identificam arquivos compactados. Quando um arquivo (ou arquivos) compactado, uma extenso correspondente ao programa usado adicionada ao nome do arquivo (caso o arquivo seja compactado pelo `gzip' receber a extenso `.gz', por exemplo). Ao descompactar acontece o contrrio: a extenso retirada do arquivo. Abaixo segue uma listagem de extenses mais usadas e os programas correspondentes: * `.gz' - Arquivo compactado pelo `gzip'. Use o programa `gzip' para descompacta-lo (para detalhes veja Section 18.2, `gzip'). `.bz2' - Arquivo compactado pelo `bzip2'. Use o programa `bzip2' para descompacta-lo (para detalhes veja Section 18.4, `bzip2'). * `.Z' - Arquivo compactado pelo programa `compress'. programa `uncompress' para descompacta-lo. * `.zip' - Arquivo compactado pelo programa `zip'. `unzip' para descompacta-lo. * `.rar' - Arquivo compactado pelo programa `rar'. `rar' para descompacta-lo. Use o

Use o programa

Use o programa

* `.tar.gz' - Arquivo compactado pelo programa `gzip' no utilitrio de arquivamento `tar'. Para descompacta-lo, voc pode usar o `gzip' e depois o `tar' ou somente o programa `tar' usando a opo `-z'. Para detalhes veja Section 18.2, `gzip' e Section 18.3, `tar'. * `.tgz' - Abreviao de `.tar.gz'. * `.tar.bz2' - Arquivo compactado pelo programa `bzip2' no utilitrio de arquivamento `tar'. Para descompacta-lo, voc pode usar o `bzip2' e depois o `tar' ou somente o programa `tar' usando a opo `-j'. Para detalhes veja Section 18.4, `bzip2' e Section 18.3, `tar'. * `.tar.Z' - Arquivo compactado pelo programa `compress' no utilitrio de arquivamento `tar'. Para descompacta-lo, voc pode usar o `uncompress' e depois o `tar' ou somente o programa `tar' usando a opo `-Z'. Para detalhes veja Section 18.3, `tar'.

18.2. gzip --------- praticamente o compactador padro do `GNU/Linux', possui uma tima taxa de compactao e velocidade. A extenso dos arquivos compactados pelo `gzip' a `.gz', na verso para `DOS', `Windows NT' usada a extenso `.z'. `gzip [_opes_] [_arquivos_]'
-213-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Onde: arquivos Especifica quais arquivos sero compactados pelo `gzip'. Caso seja usado um `-', ser assumido a entrada padro. Curingas podem ser usados para especificar vrios arquivos de uma s vez (veja Section 2.2, `Curingas'). Opes -d, --decompress [arquivo] Descompacta um arquivo. -f Fora a compactao, compactando at mesmo links. -l [arquivo] Lista o contedo de um arquivo compactado pelo `gzip'. -r Compacta diretrios e sub-diretrios. -c [arquivo] Descompacta o arquivo para a sada padro. -t [arquivo] Testa o arquivo compactado pelo `gzip'. -[num], --fast, --best Ajustam a taxa de compactao/velocidade da compactao. Quanto melhor a taxa menor a velocidade de compactao e vice versa. A opo `--fast' permite uma compactao rpida e tamanho do arquivo maior. A opo `--best' permite uma melhor compactao e uma velocidade menor. O uso da opo `-[nmero]' permite especificar uma compactao individualmente usando nmeros entre 1 (menor compactao) e 9 (melhor compactao). til para buscar um bom equilibro entre taxa de compactao/velocidade (especialmente em computadores muito lentos). Quando um arquivo compactado pelo `gzip', automaticamente acrescentada a extenso `.gz' ao seu nome. O `gzip' tambm reconhece arquivos compactados pelos programas `zip', `compress', `compress -H' e `pack'. As permisses de acesso dos arquivos so tambm armazenadas no arquivo compactado. Exemplos: * `gzip -9 texto.txt' - Compacta o arquivo `texto.txt' usando a compactao mxima (compare o tamanho do arquivo compactado usando o comando `ls -la'). * `gzip -d texto.txt.gz' - Descompacta o arquivo `texto.txt' * `gzip -c texto.txt.gz' - Descompacta o arquivo `texto.txt' para a tela * `gzip -9 *.txt' - Compacta todos os arquivos que terminam com `.txt' * `gzip -t texto.txt.gz' - Verifica o arquivo `texto.txt.gz'.

18.3. tar --------Na verdade o `tar' no um compactador e sim um "arquivador" (ele junta vrios arquivos em um s), mas pode ser usado em conjunto com um compactar (como o `gzip' ou `zip') para armazena-los compactados. O `tar' tambm muito usado para cpias de arquivos especiais ou
-214-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

dispositivos do sistema. comum encontrar arquivos com a extenso `.tar', `.tar.gz', `.tgz', `.tar.bz2', `.tar.Z', `.tgZ', o primeiro um arquivo normal gerado pelo `tar' e todos os outros so arquivos gerados atravs `tar' junto com um programa de compactao (`gzip' (`.gz'), `bzip2' (`.bz2') e `compress' (`.Z'). `tar [_opes_] [_arquivo-destino_] [_arquivos-origem_]' Onde: arquivo-destino o nome do arquivo de destino. Normalmente especificado com a extenso `.tar' caso seja usado somente o arquivamento ou `.tar.gz'/`.tgz' caso seja usada a compactao (usando a opo `-z'). arquivos-origem Especifica quais arquivos/diretrios sero compactados. opes -c, --create Cria um novo arquivo `.tar' -t, --list Lista o contedo de um arquivo `.tar' -u, --update Atualiza arquivos compactados no arquivo `.tar' -f, --file [HOST:]F Usa o arquivo especificado para gravao ou o dispositivo `/dev/rmt0'. -j, --bzip2 Usa o programa `bzip2' para processar os arquivos do `tar' -l, --one-file-system No processa arquivos em um sistema de arquivos diferentes de onde o `tar' foi executado. -M, --multi-volume Cria/lista/descompacta arquivos em mltiplos volumes. O uso de arquivos em mltiplos volumes permite que uma grande cpia de arquivos que no cabe em um disquete, por exemplo, seja feita em mais de um disquete. -o Grava o arquivo no formato VT7 ao invs do ANSI. -O, --to-stdout Descompacta arquivos para a sada padro ao invs de gravar em um arquivo. --remove-files Apaga os arquivos de origem aps serem processados pelo `tar'. -R, --record-number Mostra o nmero de registros dentro de um arquivo `tar' em cada mensagem. --totals Mostra o total de bytes gravados com a opo `--create'. -v Mostra os nomes dos arquivos enquanto so processados. -V [NOME] Inclui um [NOME] no arquivo `tar'. -W, --verify Tenta verificar o arquivo gerado pelo `tar' aps grava-lo. x Extrai arquivos gerados pelo `tar' -X [ARQUIVO]
-215-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Tenta apagar o [ARQUIVO] dentro de um arquivo compactado `.tar'. -Z Usa o programa `compress' durante o processamento dos arquivos. -z Usa o programa `gzip' durante o processamento dos arquivos. --use-compress-program [PROGRAMA] Usa o [PROGRAMA] durante o processamento dos arquivos. Ele deve aceitar a opo `-d'. -[0-7][lmh] Especifica a unidade e sua densidade. A extenso precisa ser especificada no arquivo de destino para a identificao correta: * Arquivos gerados pelo `tar' precisam ter a extenso `.tar' * Caso seja usada a opo `-j' para compactao, a extenso dever ser `.tar.bz2' * Caso seja usada a opo `-z' para compactao, a extenso dever ser `.tar.gz' ou `.tgz' * Caso seja usada a opo `-Z' para a compactao, a extenso dever ser `.tar.Z' ou `.tgZ' importante saber qual qual o tipo de compactador usado durante a gerao do arquivo `.tar' pois ser necessrio especificar a opo apropriada para descompacta-lo (para detalhes veja Section 18.1, `Extenses de arquivos compactados'). Exemplos: * `tar -cf index.txt.tar index.txt' - Cria um arquivo chamado `index.txt.tar' que armazenar o arquivo `index.txt'. Voc pode notar digitando `ls -la' que o arquivo `index.txt' foi somente arquivado (sem compactao), isto til para juntar diversos arquivos em um s. * `tar -xf index.txt.tar' - Desarquiva o arquivo `index.txt' criado pelo comando acima. * `tar -czf index.txt.tar.gz index.txt' - O mesmo que o exemplo de arquivamento anterior, s que agora usado a opo `-z' (compactao atravs do programa `gzip'). Voc agora pode notar digitando `ls -la' que o arquivo `index.txt' foi compactado e depois arquivado no arquivo `index.txt.tar.gz' (voc tambm pode chama-lo de `index.txt.tgz' que tambm identifica um arquivo `.tar' compactado pelo `gzip') * `tar -xzf index.txt.tar.gz' - Descompacta e desarquiva o arquivo `index.txt.tar.gz' criado com o comando acima. * `gzip -dc index.tar.gz | tar -xf -' - Faz o mesmo que o comando acima s que de uma forma diferente: Primeiro descompacta o arquivo `index.txt.tar.gz' e envia a sada do arquivo descompactado para o `tar' que desarquivar o arquivo `index.txt'. * `tar -cjf index.txt.tar.bz2 index.txt' - Arquiva o arquivo `index.txt' em `index.txt.tar.bz2' compactando atravs do `bzip2' (opo -j). * `tar -xjf index.txt.tar.bz2' - Descompacta e desarquiva o arquivo `index.txt.tar.bz2' criado com o comando acima. * `bzip2 -dc index.txt.tar.bz2 | tar -xf -' - Faz o mesmo que o comando acima s que de uma forma diferente: Primeiro descompacta o arquivo `index.txt.tar.bz2' e envia a sada do arquivo descompactado para o `tar' que desarquivar o arquivo `index.txt'. * `tar -t index.txt.tar' - Lista o contedo de um arquivo `.tar'.
-216-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

* `tar -tz index.txt.tar.gz' - Lista o contedo de um arquivo `.tar.gz'.

18.4. bzip2 ---------- um novo compactador que vem sendo cada vez mais usado porque consegue atingir a melhor compactao em arquivos texto se comparado aos j existentes (em conseqncia sua velocidade de compactao tambm menor; quase duas vezes mais lento que o `gzip'). Suas opes so praticamente as mesmas usadas no `gzip' e voc tambm pode usa-lo da mesma forma. A extenso dos arquivos compactados pelo `bzip2' a `.bz2' `bzip2 [_opes_] [_arquivos_]' Onde: arquivos Especifica quais arquivos sero compactados pelo `bzip2'. Caso seja usado um `-', ser assumido a entrada padro. Curingas podem ser usados para especificar vrios arquivos de uma s vez (veja Section 2.2, `Curingas'). Opes -d, --decompress [arquivo] Descompacta um arquivo. -f Fora a compactao, compactando at mesmo links. -l [arquivo] Lista o contedo de um arquivo compactado pelo `bzip2'. -r Compacta diretrios e sub-diretrios. -c [arquivo] Descompacta o arquivo para a sada padro. -t [arquivo] Testa o arquivo compactado pelo `bzip2'. -[num], --fast, --best Ajustam a taxa de compactao/velocidade da compactao. Quanto melhor a taxa menor a velocidade de compactao e vice versa. A opo `--fast' permite uma compactao rpida e tamanho do arquivo maior. A opo `--best' permite uma melhor compactao e uma velocidade menor. O uso da opo `-[nmero]' permite especificar uma compactao individualmente usando nmeros entre 1 (menor compactao) e 9 (melhor compactao). til para buscar um bom equilibro entre taxa de compactao/velocidade (especialmente em computadores muito lentos). Quando um arquivo compactado pelo `bzip2', automaticamente acrescentada a extenso `.bz2' ao seu nome. As permisses de acesso dos arquivos so tambm armazenadas no arquivo compactado. Exemplos: * `bzip2 -9 texto.txt' - Compacta o arquivo `texto.txt' usando a compactao mxima (compare o tamanho do arquivo compactado usando o comando `ls -la'). * `bzip2 -d texto.txt.bz2' - Descompacta o arquivo `texto.txt' * `bzip2 -c texto.txt.bz2' - Descompacta o arquivo `texto.txt' para
-217-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

a sada padro (tela) * `bzip2 -9 *.txt' - Compacta todos os arquivos que terminam com `.txt' * `bzip2 -t texto.txt.bz2' - Verifica o arquivo `texto.txt.bz2'.

-------------------------------------------------------------------------------

19. Sistema de gerenciamento de pacotes --------------------------------------Este captulo ensina a operao bsica do programa de manipulao de pacotes `Debian', a instalao, remoo, consulta e checagem de arquivos `.deb'.

19.1. dpkg ---------O `dpkg' (Debian Package) o programa responsvel pelo gerenciamento de pacotes em sistemas `Debian'. Sua operao feita em modo texto e funciona atravs de comandos, assim caso deseje uma ferramenta mais amigvel para a seleo e instalao de pacotes, prefira o `dselect' (que um front-end para o `dpkg') ou o `apt' (veja Section 19.2, `apt'). `dpkg' muito usado por usurios avanados da `Debian' e desenvolvedores para fins de instalao, manuteno e construo de pacotes. 19.1.1. Pacotes --------------Pacotes `Debian' so programas colocados dentro de um arquivo identificados pela extenso `.deb' incluindo arquivos necessrios para a instalao do programa, um sistemas de listagem/checagem de dependncias, scripts de automatizao para remoo parcial/total do pacote, listagem de arquivos, etc. Um nome de pacote tem a forma `nome-verso_reviso.deb' 19.1.2. Instalar pacotes -----------------------Use o comando: `dpkg -i [`NomedoPacote']' (ou _--install_) para instalar um pacote em seu sistema. Talvez ele pea que seja instalado algum pacote que depende para seu funcionamento. Para detalhes sobre dependncias veja Section 19.1.3, `Dependncias'. preciso especificar o nome completo do pacote (com a verso e reviso). 19.1.3. Dependncias -------------------Dependncias so pacotes requeridos para a instalao de outro pacote. Na `Debian' cada pacote contm um programa com uma certa funo. Por exemplo, se voc tentar instalar o pacote de edio de textos
-218-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

`supertext' que usa o programa `sed', voc precisar verificar se o pacote `sed' est instalado em seu sistema antes de tentar instalar o `supertext', caso contrrio, o pacote `supertext' pedir o `sed' e no funcionar corretamente. Note que o pacote `supertext' apenas um exemplo e no existe (pelo menos at agora :-). O programa `dselect' faz o trabalho de checagem de dependncias automaticamente durante a instalao dos pacotes. A colocao de cada programa em seu prprio pacote parece ser uma dificuldade a mais para a instalao manual de um certo programa. Mas para os desenvolvedores que mantm os mais de _8710_ pacotes existentes na distribuio `Debian', um ponto fundamental, porque no preciso esperar uma nova verso do `supertext' ser lanada para instalar a verso mais nova do pacote `sed'. Por este motivo tambm uma vantagem para o usurio. 19.1.4. Listar pacotes existentes no sistema -------------------------------------------Use o comando: `dpkg -l [pacote]' (_--list_) para isto. Na listagem de pacotes tambm ser mostrado o "status" de cada um na coluna da esquerda, acompanhado do nome do pacote, verso e descrio bsica. Caso o nome do [pacote] seja omitido, todos os pacotes sero listados. recomendado usar "dpkg -l|less" para ter um melhor controle da listagem (pode ser longa dependendo da quantidade de programas instalados). 19.1.5. Removendo pacotes do sistema -----------------------------------Use o comando: `dpkg -r `NomedoPacote'' (_--remove_) para remover um pacote do sistema completamente. Somente necessrio digitar o nome e verso do pacote que deseja remover, no sendo necessrio a reviso do pacote. O comando `dpkg -r' no remove os arquivos de configurao criados pelo programa. Para uma remoo completa do programa veja Section 19.1.6, `Removendo completamente um pacote'. 19.1.6. Removendo completamente um pacote ----------------------------------------Use o comando: `dpkg -P [`NomedoPacote'|-a]' (_--purge_) para remover um pacote e todos os diretrios e arquivos de configurao criados. No necessrio especificar a reviso do pacote. O comando `dpkg--purge' pode ser usado aps uma remoo normal do pacote (usando `dpkg -r'). Caso voc usar diretamente o comando `dpkg --purge', `dpkg' primeiro remover o pacote normalmente (como explicado em Section 19.1.5, `Removendo pacotes do sistema') e aps removido apagar todos os arquivos de configurao. Caso especifique a opo _-a_ (ou sua equivalente _--pending_) no
-219-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

lugar do nome do pacote, todos os pacotes marcados para remoo sero removidos completamente do sistema. Note que o `dpkg --purge' somente remove arquivos de configurao conhecidos pelo pacote. Em especial, os arquivos de configurao criados para cada usurio do sistema devem ser removidos manualmente. Seria pedir demais que o `dpkg' tambm conhecesse os usurios de nosso sistema ;-). 19.1.7. Mostrar descrio do pacote ----------------------------------Use o comando: `dpkg -I `NomedoPacote'' (_--info_) para mostrar a descrio do pacote. Entre a descrio so mostradas as dependncias do pacote, pacotes sugeridos, recomendados, descrio do que o pacote faz, tamanho e nmero de arquivos que contm. 19.1.8. Procura de pacotes atravs do nome de um arquivo -------------------------------------------------------Use o comando: `dpkg -S `arquivo'' (_--search_) para saber de qual `pacote' existente no sistema o `arquivo' pertence. 19.1.9. Status do pacote -----------------------Use o comando: `dpkg -s `pacote'' (_--status_) para verificar o status de um pacote em seu sistema, se esta ou no instalado, configurado, tamanho, dependncias, maintainer, etc. Se o pacote estiver instalado no sistema, o resultado ser parecido com o do comando `dpkg -c [pacote]' (_--contents_). 19.1.10. Procurando pacotes com problemas de instalao ------------------------------------------------------A checagem de pacotes com este tipo de problema pode ser feita atravs do comando: `dpkg -C' (_--audit_) Ser listado todos os pacotes com algum tipo de problema, verifique os detalhes do pacote com `"dpkg -s"' para decidir como corrigir o problema. 19.1.11. Mostrando a lista de pacotes do sistema -----------------------------------------------Use o comando: `dpkg --get-selections' para obter uma lista de seleo dos pacotes em seu sistema. A listagem mostrada na sada padro, que pode ser facilmente redirecionada para um arquivo usando `dpkg --get-selections >dpkg.lista'.

-220-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

A listagem obtida com este comando muito til para repetir os pacotes usados no sistema usando o `dpkg --set-selections'. 19.1.12. Obtendo uma lista de pacotes para instalar no sistema -------------------------------------------------------------Use o comando: `dpkg --set-selections <arquivo' para obter a lista de pacotes que sero instalados no sistema. O uso do `dpkg --get-selections' e `dpkg --set-selections' muito til durante uma necessidade de reinstalao do sistema `GNU/Linux' ou repetir a instalao em vrias mquinas sem precisar selecionar algumas dezenas entre os milhares de pacotes no `dselect'. Aps obter a lista com `dpkg --get-selections', use `dpkg --set-selections <arquivo' e ento entre no `dselect' e escolha a opo `INSTALL', todos os pacotes obtidos via `dpkg --set-selections' sero automaticamente instalados. 19.1.13. Configurando pacotes desconfigurados --------------------------------------------Pacotes esto desconfigurados quando, por algum motivo, a instalao do mesmo no foi concluda com sucesso. Pode ter faltado alguma dependncia, acontecido algum erro de leitura do arquivo de pacote, etc. Quando um erro deste tipo acontece, os arquivos necessrios pelo pacote podem ter sido instalados, mas os scripts de configurao ps-instalao no so executados. Use o comando: `dpkg --configure [_NomedoPacote_]' Para configurar um pacote. O _NomedoPacote_ no precisa conter a reviso do pacote e extenso. 19.1.14. Listando arquivos de um pacote --------------------------------------Use o comando: `dpkg -c `arquivo'' (_--contents_) para obter a listagem dos arquivos contidos no pacote. necessrio digitar o nome completo do pacote. O comando `dpkg -c' til para listarmos arquivos de pacotes que no esto instalados no sistema. Para obter a listagem de arquivos de pacotes j instalados no sistema, use o comando: `dpkg -L `arquivo''. necessrio digitar somente o nome do pacote (sem a reviso e extenso).

19.2. apt --------O `apt' sistema de gerenciamento de pacotes de programas que possui resoluo automtica de dependncias entre pacotes, mtodo fcil de instalao de pacotes, facilidade de operao, permite atualizar
-221-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

facilmente sua distribuio, etc. Ele funciona atravs de linha de comando sendo bastante fcil de usar. Mesmo assim, existem interfaces grficas para o `apt' como o `synaptic' (modo grfico) e o `aptitude' (modo texto) que permitem poderosas manipulaes de pacotes sugeridos, etc. O `apt' pode utilizar tanto com arquivos locais como remotos na instalao ou atualizao, desta maneira possvel atualizar toda a sua distribuio `Debian' via `ftp' ou `http' com apenas 2 simples comandos! recomendvel o uso do mtodo `apt' no programa `dselect' pois ele permite a ordem correta de instalao de pacotes e checagem e resoluo de dependncias, etc. Devido a sua facilidade de operao, o `apt' o mtodo preferido para os usurios manipularem pacotes da `Debian'. O `apt' exclusivo da distribuio `Debian' e distribuies baseadas nela e tem por objetivo tornar a manipulao de pacotes poderosa por qualquer pessoa e tem dezenas de opes que podem ser usadas em sua execuo ou configuradas no arquivo `/etc/apt/apt.conf'. Explicarei aqui como fazer as aes bsicas com o `apt', portanto se desejar maiores detalhes sobre suas opes, veja a pgina de manual `apt-get'. 19.2.1. O arquivo `/etc/apt/sources.list' ----------------------------------------Este arquivo contm os locais onde o `apt' encontrar os pacotes, a distribuio que ser verificada (stable, testing, unstable, Woody, Sarge) e a seo que ser copiada (main, non-free, contrib, non-US). _Woody_(Debian 3.0) e _Sarge_(Debian 3.1) so os nomes das verses enquanto _stable_ e _unstable_ so links para as verses _estvel_ e _testing_ respectivamente. Se desejar usar sempre uma distribuio estvel (como a _Woody_), modifique o arquivo `sources.list' e coloque _Woody_ como distribuio. Caso voc desejar estar sempre atualizado mas uma pessoa cuidadosa e deseja ter sempre a ltima distribuio estvel da `Debian', coloque _stable_ como verso. Assim que a nova verso for lanada, os links que apontam de _stable_ para _Woody_ sero alterados apontando para _Sarge_ e voc ter seu sistema atualizado. Abaixo um exemplo simples de arquivo `/etc/apt/sources.list' com explicao das sees: deb http://www.debian.org/debian stable main contrib non-free deb http://nonus.debian.org/debian-non-US stable non-US Voc pode interpretar cada parte da seguinte maneira: * `deb' - Identifica um pacote da Debian. A palavra `deb-src' identifica o cdigo fonte. * `http://www.debian.org/debian' - Mtodo de acesso aos arquivos da `Debian', site e diretrio principal. O caminho pode ser `http://', `ftp://', `file:/'. * `stable' - Local onde sero procurados arquivos para atualizao. Voc pode tanto usar o nome de sua distribuio (_Woody_, _Sarge_) ou sua classificao (_stable_, _testing_ ou _unstable_.
-222-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Note que _unstable_ recomendada somente para desenvolvedores, mquinas de testes e se voc tem conhecimentos para corrigir problemas. Nunca utilize _unstable_ em ambientes de produo ou servidores crticos, use a _stable_. * `main contrib non-us' - Sees que sero verificadas no site remoto. Note que tudo especificado aps o nome da distribuio ser interpretado como sendo as sees dos arquivos (main, non-free, contrib, non-US). As linhas so processadas na ordem que esto no arquivo, ento recomendvel colocar as linhas que fazem referncia a pacotes locais primeiro e mirrors mais perto de voc para ter um melhor aproveitamento de banda. O caminho percorrido pelo `apt' para chegar aos arquivos ser o seguinte: http://www.debian.org/debian/dists/stable/main/binary-i386 http://www.debian.org/debian/dists/stable/non-free/binary-i386 http://www.debian.org/debian/dists/stable/contrib/binary-i386 Voc notou que o diretrio `dists' foi adicionado entre `http://www.debian.org/debian' e `stable', enquanto as sees _main_, _non-free_ e _contrib_ so processadas separadamente e finalizando com o caminho `binary-[arquitetura]', onde _[arquitetura]_ pode ser _i386, alpha, sparc, powerpc, arm_, etc. dependendo do seu sistema. Entendendo isto, voc poder manipular o arquivo `sources.list' facilmente. _OBS:_ Caso tenha mais de uma linha em seu arquivo `sources.list' de onde um pacote pode ser instalado, ele ser baixado da primeira encontrada no arquivo. recomendvel colocar primeiro repositrios locais ou mais perto de voc, como recomendado nesta seo. 19.2.1.1. Endereos de servidores e mirrors nacionais da `Debian' ----------------------------------------------------------------Segue abaixo uma relao de servidores que podem ser colocados em seu arquivo `sources.list': Endereo -------ftp://ftp.debian.org.br ftp://ftp.br.debian.org ftp://ftp.debian.org ftp://download.sourceforge.net ftp://ftp.quimica.ufpr.br ftp://download.unesp.br 19.2.1.2. Um modelo de arquivo `sources.list' --------------------------------------------Voc pode copiar o modelo do `sources.list' abaixo para ser usado em sua distribuio `Stable' ou personaliza-lo modificando a distribuio utilizada e servidores: # Arquivos principais da stable deb ftp://ftp.debian.org.br/debian stable main non-free contrib # Non-US da Stable deb ftp://ftp.debian.org.br/debian-non-US stable/non-US main non-free contrib
-223-

Diretrio Principal --------- --------/debian /debian /debian /debian /debian /linux/debian

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

# Atualizaes propostas para Stable main e non-US deb ftp://ftp.debian.org.br/debian dists/proposed-updates/ deb ftp://ftp.debian.org.br/debian-non-US dists/proposed-updates/ # Atualizaes de segurana da Stable deb ftp://nonus.debian.org/debian-security stable/updates main # # # # # Ximian um conjunto de pacotes atualizados freqentemente e compatveis com a distribuio Debian. Entre estes programas esto o Gimp 1.2 e outros mais atuais e compatveis com a Debian. Para usa-los inclua a seguinte linha no seu sources.list deb ftp://spidermonkey.ximian.com/pub/red-carpet/binary/debian-22-i386/ ./

# Kde 1 e 2 # deb ftp://kde.tdyc.com/pub/kde/debian woody main crypto optional qt1apps 19.2.2. O arquivo `/etc/apt/apt.conf' ------------------------------------Voc pode especificar opes neste arquivo que modificaro o comportamento do programa `apt' durante a manipulao de pacotes (ao invs de especificar na linha de comando). Se estiver satisfeito com o funcionamento do programa `apt', no necessrio modifica-lo. Para detalhes sobre o formato do arquivo, veja a pgina de manual do `apt.conf'. Na pgina de manual do `apt-get' so feitas referncias a parmetros que podem ser especificados neste arquivo ao invs da linha de comando. 19.2.3. Copiando a lista de pacotes disponveis ----------------------------------------------O `apt' utiliza uma lista de pacotes para verificar se os pacotes existentes no sistema precisam ou no ser atualizados. A lista mais nova de pacotes copiada atravs do comando `apt-get update'. Este comando pode ser usado com alguma freqncia se estiver usando a distribuio stable e sempre se estiver usando a unstable (os pacotes so modificados com muita freqncia). Sempre utilize o `apt-get update' antes de atualizar toda a distribuio. 19.2.4. Utilizando CDs oficiais/no-oficiais/terceiros com o apt ---------------------------------------------------------------Para usar CDs da `Debian' ou de programas de terceiros, use o seguinte comando com cada um dos CDs que possui: apt-cdrom add Este comando adicionar automaticamente uma linha para cada CD no arquivo `/etc/apt/sources.list' e atualizar a lista de pacotes em `/var/state/apt/lists'. Por padro, a unidade acessada atravs de `/cdrom' usada. Use a opo `-d /dev/scd?' para especificar um outra unidade de CDs (veja Section 5.12, `Identificao de discos e parties em sistemas Linux' para detalhes sobre essa identificao). Durante a instalao de um novo programa, o `apt' pede que o CD
-224-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

correspondente seja inserido na unidade e pressionado <Enter> para continuar. O mtodo acesso do `apt' atravs de CDs inteligente o bastante para instalar todos os pacotes necessrios daquele CD, instalar os pacotes do prximo CD e iniciar a configurao aps instalar todos os pacotes necessrios. `Observao:' - CDs de terceiros ou contendo programas adicionais tambm podem ser usados com o comando "apt-cdrom add". 19.2.5. Instalando novos pacotes -------------------------------Use o comando `apt-get install [pacotes]' para instalar novos pacotes em sua distribuio. Podem ser instalados mais de um pacotes ao mesmo tempo separando os nomes por espaos. Somente preciso especificar o nome do pacote (sem a verso e reviso). Se preciso, o `apt' instalar automaticamente as dependncias necessrias para o funcionamento correto do pacote. Quando pacotes alm do solicitado pelo usurio so requeridos para a instalao, o `apt' mostrar o espao total que ser usado no disco e perguntar ao usurio se ele deseja continuar. Aps a instalao, o pacote ser automaticamente configurado pelo `dpkg' para ser executado corretamente em seu sistema. 19.2.6. Removendo pacotes instalado ----------------------------------Use o comando `apt-get remove [pacotes]' para remover completamente um pacote do sistema. Podem ser removidos mais de um pacote ao mesmo tempo separando os nomes dos pacotes com espaos. O `apt-get remove' remove completamente o pacote mas mantm os arquivos de configurao, exceto se for adicionada a opo `--purge'. preciso especificar somente o nome do pacote (sem a verso e reviso). 19.2.7. Atualizando sua distribuio -----------------------------------O `apt' tem uma grande caracterstica: Atualizar toda a sua distribuio de uma forma inteligente e segura. O `apt' l a listagem de pacotes disponveis no servidor remoto, verifica quais esto instalados e suas verses, caso a verso do pacote seja mais nova que a j instalada em seu sistema, o pacote ser imediatamente atualizado. A cpia dos arquivos pelo `apt' pode ser feita via `FTP', `HTTP' ou atravs de uma cpia local dos arquivos no disco rgido (um _mirror_ local). Em nenhuma circunstncia os pacotes existentes em seu sistema sero removidos ou sua configurao apagada durante um `upgrade' na distribuio. Os arquivos de configurao em `/etc' que foram modificados so identificados e podem ser mantidos ou substitudos por verses existentes nos pacotes que esto sendo instalado, esta escolha feita por voc. Se estiver atualizando a Debian Potato (2.2) para Woody (3.0) (ou verso superior), execute os seguintes comandos antes de
-225-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

iniciar a atualizao: export LANG=C export LC_ALL=C export LC_MESSAGES=C para retornar as variveis de localizao ao valor padro (ingls). Isto necessrio por causa de modificaes no sistema de locales, e o excesso de mensagens de erro do perl causaram alguns problemas em meus testes. Aps isto, a atualizao da distribuio `Debian' pode ser feita atravs de dois simples comandos: apt-get update #Para atualizar a lista de pacotes (obrigatrio) apt-get -f dist-upgrade #Para atualizar a distribuio A opo `-f' faz com que o `apt' verifique e corrija automaticamente problemas de dependncias entre pacotes. Recomendo executa o comando `apt-get -f --dry-run dist-upgrade|less' para ver o que vai acontecer sem atualizar a distribuio, se tudo ocorrer bem, retire o `--dry-run' e v em frente. A distribuio usada na atualizao pode ser: * `Para a mesma verso que utiliza' - Para quem deseja manter os pacotes sempre atualizados entre revises, copiar pacotes que contm correes para falhas de segurana (veja a pgina web em http://www.debian.org/ para acompanhar o boletim de segurana). * `Para uma distribuio stable' - Mesmo que o acima, mas quando uma nova distribuio for lanada, o link simblico de stable ser apontado para prxima distribuio, atualizando instantaneamente seu sistema. * `Para a distribuio testing' - Atualiza para a futura distribuio `Debian' que ser lanada, como a _unstable_, mas seus pacotes passam por um perodo de testes de 2 semanas na _unstable_ antes de serem copiados para esta. * `unstable' - Verso em desenvolvimento, recomendada somente para desenvolvedores ou usurios que conhecem a fundo o sistema `GNU/Linux' e saibam resolver eventuais problemas que apaream. A unstable uma distribuio em constante desenvolvimento e podem haver pacotes problemticos ou com falhas de segurana. Aps o perodo de desenvolvimento, a distribuio unstable se tornar frozen. * `frozen' - Verso congelada, nenhum pacote novo aceito e somente so feitas correes de falhas. Aps todas as falhas estarem corrigidas, a distribuio `frozen' se tornar `stable' A distribuio que ser usada na atualizao pode ser especificada no arquivo `/etc/apt/sources.list' (veja a seo correspondente acima). Caso o mtodo de atualizao usado seja via HTTP ou FTP, ser necessrio usar o comando `apt-get clean' para remover os pacotes copiados para seu sistema (para detalhes veja a seo seguinte). 19.2.8. Removendo pacotes baixados pelo `apt' --------------------------------------------Use o comando `apt-get clean' para apagar qualquer arquivo baixado durante uma atualizao ou instalao de arquivos com o `apt'. Os
-226-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

arquivos baixados residem em `/var/cache/apt/archives' (download completo) e `/var/cache/apt/archives/partial' (arquivos sendo baixados - parciais). Este local de armazenamento especialmente usado com o mtodo http e ftp para armazenamento de arquivos durante o download para instalao (todos os arquivos so primeiro copiados para serem instalados e configurados). O `apt-get clean' automaticamente executado caso seja usado o mtodo de acesso `apt' do `dselect'. 19.2.9. Procurando por pacotes atravs da descrio --------------------------------------------------O utilitrio `apt-cache' pode ser usado para esta funo. Ele tambm possui outras utilidades interessante para a procura e manipulao da lista de pacotes. Por exemplo, o comando `apt-cache search clock' mostrar todos os pacotes que possuem a palavra <clock> na descrio do pacote. 19.2.10. Procurando um pacote que contm determinado arquivo -----------------------------------------------------------Suponha que algum programa esteja lhe pedindo o arquivo `perlcc' e voc no tem a mnima idia de que pacote instalar no seu sistema. O utilitrio `auto-apt' pode resolver esta situao. Primeiro instale o pacote `auto-apt' e execute o comando `auto-apt update' para que ele copie o arquivo `Contents-i386.gz' que ser usado na busca desses dados. Agora, basta executar o comando: auto-apt search perlcc para que ele retorne o resultado: usr/bin/perlcc interpreters/perl

O pacote que contm este arquivo o `perl' e se encontra na seo `interpreters' dos arquivos da `Debian'. Para uma pesquisa que mostra mais resultados (como `auto-apt search a2ps'), interessante usar o grep para filtrar a sada: auto-apt search a2ps|grep bin/ usr/bin/psmandup text/a2ps usr/bin/pdiff text/a2ps usr/bin/psset text/a2ps usr/bin/composeglyphs text/a2ps usr/bin/a2psj text/a2ps-perl-ja usr/bin/a2ps text/a2ps usr/bin/fixps text/a2ps usr/bin/ogonkify text/a2ps usr/bin/fixnt text/a2ps usr/bin/card text/a2ps
-227-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

usr/bin/texi2dvi4a2ps

text/a2ps

Sero mostrados somente os binrios, diretrios de documentao, manpages, etc. no sero mostradas. 19.2.11. Modos eficazes de compilao do cdigo fonte para a Debian ------------------------------------------------------------------O `Debian' como qualquer distribuio de Linux, possui o diretrio `/usr/local' que segundo a FHS o local apropriado para colocao de programas que no fazem parte da distribuio, que seria no caso o de fontes compilados manualmente. Um dos grandes trabalhos de quem pega o cdigo fonte para compilao a instalao de bibliotecas de desenvolvimento para a compilao ocorrer com sucesso. O `auto-apt' facilita magicamente o processo de compilao da seguinte forma: durante o passo `./configure' no momento que pedida uma bibliotecas, dependncia, etc. o `auto-apt' para o processo, busca por pacotes no repositrio da `Debian', pergunta qual pacote ser instalado (caso tenha mais de uma opo), instala e retorna o `./configure' do ponto onde havia parado. Para fazer isso, execute o comando: auto-apt run ./configure E ele se encarregar do resto :-) 19.2.12. Verificando pacotes corrompidos ---------------------------------------Use o comando `apt-get check' para verificar arquivos corrompidos. correo feita automaticamente. A lista de pacotes tambm atualizada quando utiliza este comando. 19.2.13. Corrigindo problemas de dependncias e outros erros -----------------------------------------------------------Use o comando `apt-get -f install' (sem o nome do pacote) para que o `apt-get' verifique e corrija problemas com dependncias de pacotes e outros problemas conhecidos. A

-------------------------------------------------------------------------------

20. Personalizao do Sistema ----------------------------Este captulo ensina como personalizar algumas caractersticas de seu sistema `GNU/Linux'.

20.1. Variveis de Ambientes --------------------------- um mtodo simples e prtico que permite a especificao de opes de
-228-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

configurao de programas sem precisar mexer com arquivos no disco ou opes. Algumas variveis do `GNU/Linux' afetam o comportamento de todo o Sistema Operacional, como o idioma utilizado e o path (veja Section 7.2, `path') . Variveis de ambientes so nomes que contm algum valor e tem a forma `Nome=Valor'. As variveis de ambiente so individuais para cada usurio do sistema ou consoles virtuais e permanecem residentes na memria RAM at que o usurio saia do sistema (logo-off) ou at que o sistema seja desligado. As variveis de ambiente so visualizadas/criadas atravs do comando `set' ou `echo $NOME' (apenas visualiza) e exportadas para o sistemas com o comando `export NOME=VALOR'. Nos sistemas `Debian', o local usado para especificar variveis de ambiente o `/etc/environment' (veja Section 20.8, `Arquivo `/etc/environment''). Todas as variveis especificadas neste arquivos sero inicializadas e automaticamente exportadas na inicializao do sistema. Exemplo: Para criar uma varivel chamada `TESTE' que contenha o valor `123456' digite: `export TESTE=123456'. Agora para ver o resultado digite: `echo $TESTE' ou `set|grep TESTE'. Note que o `$' que antecede o nome `TESTE' serve para identificar que se trata de uma varivel e no de um arquivo comum.

20.2. Modificando o Idioma usado em seu sistema ----------------------------------------------O idioma usado em seu sistema pode ser modificado facilmente atravs das variveis de ambiente. Atualmente a maioria dos programas esto sendo _localizados_. A localizao um recurso que especifica arquivos que contm as mensagens do programas em outros idiomas. Voc pode usar o comando `locale' para listar as variveis de localizao do sistema e seus respectivos valores. As principais variveis usadas para determinar qual idioma os programas `localizados' utilizaro so: * `LANG' - Especifica o idioma_PAIS local. Podem ser especificados mais de um idioma na mesma varivel separando-os com `:', desta forma caso o primeiro no esteja disponvel para o programa o segundo ser verificado e assim por diante. A lngua Inglesa identificada pelo cdigo `C' e usada como padro caso nenhum locale seja especificado. Por exemplo: `export LANG=pt_BR', `export LANG=pt_BR:pt_PT:C' * `LC_MESSAGES' - Especifica o idioma que sero mostradas as mensagens dos programas. Seu formato o mesmo de `LANG'. * `LC_ALL' - Configura todas as variveis de localizao de uma s vez. Seu formato o mesmo de `LANG'. As mensagens de localizao esto localizadas em arquivos individuais de cada programa em `/usr/share/locale/[Idioma]/LC_MESSAGES' . Elas so geradas atravs de arquivos `potfiles' (arquivos com a extenso `.po' ou `.pot' e so gerados catlogos de mensagens `.mo'. As variveis de ambiente podem ser especificadas no arquivo `/etc/environment' desta forma as variveis sero carregadas toda a vez que seu sistema for iniciado. Voc tambm pode especificar as variveis de localizao em seu arquivos de inicializao `.bash_profile', `.bashrc' ou `.profile' assim toda a vez que entrar
-229-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

no sistema, as variveis de localizao personalizadas sero carregadas. Siga as instrues a seguir de acordo com a verso de sua distribuio `Debian': Debian 3.0 Acrescente a linha `pt_BR ISO-8859-1' no arquivo `/etc/locale.gen', rode o utilitrio `locale-gen' para gerar os locales e acrescente as variveis de localizao no arquivo `/etc/locales.def' seguindo a forma: export LANG=pt_BR export LC_ALL=pt_BR export LC_MESSAGES=pt_BR Note que o arquivo `/etc/environment' tambm pode ser usado para tal tarefa, mas o `locales.def' foi criado especialmente para lidar com variveis de localizao na `Debian' 3.0. Debian 2.2 Coloque estas variveis no arquivo `/etc/environment' (veja um exemplo deste arquivo em Section 20.8, `Arquivo `/etc/environment''), assim toda a vez que seu sistema for iniciado as variveis de localizao sero carregadas e exportadas para o sistema, estando disponveis para todos os usurios. Para as mensagens e programas do X-Window usarem em seu idioma local, preciso colocar as variveis no arquivo `~/.xserverrc' do diretrio home de cada usurio e dar a permisso de execuo neste arquivo (`chmod 755 .xserverrc'). Lembre-se de incluir o caminho completo do arquivo executvel do seu gerenciador de janelas na ltima linha deste arquivo (sem o `&' no final), caso contrrio o Xserver ser finalizado logo aps ler este arquivo. Abaixo exemplos de localizao com as explicaes: * `export LANG=pt_BR' - Usa o idioma pt_BR como lngua padro do sistema. Caso o idioma Portugues do Brasil no esteja disponvel, C usado (Ingls). * `export LANG=C' - Usa o idioma Ingls como padro ( a mesma coisa de no especificar `LANG', pois o idioma Ingls usado como padro). * `export LANG=pt_BR:pt_PT:es_ES:C' - Usa o idioma Portugus do Brasil como padro, caso no esteja disponvel usa o Portugus de Portugal, se no estiver disponvel usa o Espanhol e por fim o Ingls. recomendvel usar a varivel `LC_ALL' para especificar o idioma, desta forma todos os outras variveis (`LANG, MESSAGES, LC_MONETARY, LC_NUMERIC, LC_COLLATE, LC_CTYPE e LC_TIME') sero configuradas automaticamente.

20.3. alias ----------Permite criar um apelido a um comando ou programa. Por exemplo, se voc gosta de digitar (como eu) o comando `ls --color=auto' para ver uma listagem longa e colorida, voc pode usar o comando `alias' para facilitar as coisas digitando: `alias ls='ls --color=auto'' (no se esquea da meia aspa 'para identificar o comando'). Agora quando voc digitar `ls', a listagem ser mostrada com cores.
-230-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Se voc digitar `ls -la', a opo `-la' ser adicionada no final da linha de comando do alias: `ls --color=auto -la', e a listagem tambm ser mostrada em cores. Se quiser utilizar isto toda vez que entrar no sistema, veja Section 20.5, `Arquivo `.bash_profile'' e Section 20.6, `Arquivo `.bashrc''.

20.4. Arquivo `/etc/profile' ---------------------------Este arquivo contm comandos que so executados para _todos_ os usurios do sistema no momento do login. Somente o usurio root pode ter permisso para modificar este arquivo. Este arquivo lido antes do arquivo de configurao pessoal de cada usurio (`.profile'(root) e `.bash_profile'). Quando carregado atravs de um shell que requer login (nome e senha), o `bash' procura estes arquivos em seqncia e executa os comandos contidos, caso existam: 1. `/etc/profile' 2. `~/.bash_profile' 3. `~/.bash_login' 4. `~/.profile' Ele _ionterrompe_ a pesquisa assim que localiza o primeiro arquivo no diretrio do usurio (usando a sequncia acima). Por exemplo, se voc tem o arquivo `~/.bash_login' e `~/.bash_profile' em seu diretrio de usurio, ele processar o `/etc/profile' e aps isto o `~/.bash_profile', mas nunca processar o `~/.bash_login' (a menos que o `~/.bash_profile' seja apagado ou renomeado). Caso o `bash' seja carregado atravs de um shell que no requer login (um terminal no X, por exemplo), o seguinte arquivo executado: `~/.bashrc'. Observao: Nos sistemas Debian, o profile do usurio root est configurado no arquivo `/root/.profile'. A razo disto porque se o `bash' for carregado atravs do comando `sh', ele far a inicializao clssica deste shell lendo primeiro o arquivo `/etc/profile' e aps o `~/.profile' e ignorando o `.bash_profile' e `.bashrc' que so arquivos de configurao usados somente pelo `Bash'. Exemplo, inserindo a linha `mesg y' no arquivo `/etc/profile' permite que todos os usurios do sistema recebam pedidos de `talk' de outros usurios. Caso um usurio no quiser receber pedidos de `talk', basta somente adicionar a linha `mesg n' no arquivo pessoal `.bash_profile'.

20.5. Arquivo `.bash_profile' ----------------------------Este arquivo reside no diretrio pessoal de cada usurio. executado por shells que usam autenticao (nome e senha). `.bash_profile' contm comandos que so executados para o usurio no momento do login no sistema aps o `/etc/profile'. Note que este um arquivo oculto pois tem um "." no inicio do nome.
-231-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Por exemplo colocando a linha: `alias ls='ls --colors=auto'' no `.bash_profile', cria um apelido para o comando `ls --colors=auto' usando `ls', assim toda vez que voc digitar `ls' ser mostrada a listagem colorida.

20.6. Arquivo `.bashrc' ----------------------Possui as mesmas caractersticas do `.bash_profile' mas executado por shells que no requerem autenticao (como uma seo de terminal no X). Os comandos deste arquivo so executados no momento que o usurio inicia um shell com as caractersticas acima. Note que este um arquivo oculto pois tem um "." no inicio do nome.

20.7. Arquivo `.hushlogin' -------------------------Deve ser colocado no diretrio pessoal do usurio. Este arquivo faz o `bash' pular as mensagens do `/etc/motd', nmero de e-mails, etc. Exibindo imediatamente o aviso de comando aps a digitao da senha.

20.8. Arquivo `/etc/environment' -------------------------------Armazena as variveis de ambiente que so exportadas para todo o sistema. Uma varivel de ambiente controla o comportamento de um programa, registram detalhes teis durante a seo do usurio no sistema, especificam o idioma das mensagens do sistema, etc. Exemplo do contedo de um arquivo `/etc/environment': LANG=pt_BR LC_ALL=pt_BR LC_MESSAGES=pt_BR

20.9. Diretrio `/etc/skel' --------------------------Este diretrio contm os modelos de `.bashrc' que sero copiados para o momento que for criada uma conta no precisar configurar estes arquivos arquivos `.bash_profile' e diretrio pessoal dos usurios no sistema. Desta forma voc no separadamente para cada usurio.

-------------------------------------------------------------------------------

21. Impresso -------------

-232-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Este capitulo descreve como imprimir em seu sistema `GNU/Linux' e as formas de impresso via spool, rede, grfica, etc. Antes de seguir os passos descritos neste captulo, tenha certeza que seu kernel foi compilado com o suporte a impressora paralela ativado, caso contrrio at mesmo a impresso direta para a porta de impressora falhar. Para detalhes veja Section 16.11, `Recompilando o Kernel' .

21.1. Portas de impressora -------------------------Uma porta de impressora o local do sistema usado para se comunicar com a impressora. Em sistemas `GNU/Linux', a porta de impressora identificada como `lp0, lp1, lp2' no diretrio `/dev', correspondendo respectivamente a `LPT1', `LPT2' e `LPT3' no `DOS' e `Windows'. Recomendo que o suporte a porta paralela esteja compilado como mdulo no kernel.

21.2. Imprimindo diretamente para a porta de impressora ------------------------------------------------------Isto feito direcionando a sada ou o texto com `>' diretamente para a porta de impressora no diretrio `/dev'. Supondo que voc quer imprimir o texto contido do arquivo `trabalho.txt' e a porta de impressora em seu sistema `/dev/lp0', voc pode usar os seguintes comandos: * `cat trabalho.txt >/dev/lp0' - Direciona a sada do comando `cat' para a impressora. * `cat <trabalho.txt >/dev/lp0'. Faz a mesma coisa que o acima. * `cat -n trabalho.txt >/dev/lp0' - Numera as linhas durante a impresso. * `head -n 30 trabalho.txt >/dev/lp0' - Imprime as 30 linhas iniciais do arquivo. * `cat trabalho.txt|tee /dev/lp0' - Mostra o contedo do `cat' na tela e envia tambm para a impressora. Os mtodos acima servem somente para imprimir em modo texto (letras, nmeros e caracteres semi-grficos).

21.3. Imprimindo via spool -------------------------A impresso via spool tem por objetivo liberar logo o programa do servio de impresso deixando um outro programa especifico tomar conta. Este programa chamado de _daemon de impresso_, normalmente o `lpr' ou o `lprng' (recomendado) em sistemas `GNU/Linux'. Logo aps receber o arquivo que ser impresso, o programa de spool gera um arquivo temporrio (normalmente localizado em `/var/spool/lpd') que ser colocado em fila para a impresso (um trabalho ser impresso aps o outro, em seqncia). O arquivo temporrio gerado pelo programa de spool apagado logo aps concluir a impresso.

-233-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Antes de se imprimir qualquer coisa usando os daemons de impresso, preciso configurar os parmetros de sua impressora no arquivo `/etc/printcap'. Um arquivo `/etc/printcap' para uma impressora local padro se parece com o seguinte: lp|Impressora compatvel com Linux :lp=/dev/lp0 :sd=/var/spool/lpd/lp :af=/var/log/lp-acct :lf=/var/log/lp-errs :pl#66 :pw#80 :pc#150 :mx#0 :sh possvel tambm compartilhar a impressora para a impresso em sistemas remotos, isto ser visto em uma seo separada neste guia. Usando os exemplos anteriores da seo `Imprimindo diretamente para uma porta de impressora', vamos acelerar as coisas: * `cat trabalho.txt |lpr' - Direciona a sada do comando `cat' para o programa de spool `lpr'. * `cat <trabalho.txt |lpr'. Faz a mesma coisa que o acima. * `cat -n trabalho.txt |lpr' - Numera as linhas durante a impresso. * `head -n 30 trabalho.txt |lpr' - Imprime as 30 linhas iniciais do arquivo. A fila de impresso pode ser controlada com os comandos: * `lpq' - Mostra os trabalhos de impresso atuais * `lprm' - Remove um trabalho de impresso Ou usado o programa de administrao `lpc' para gerenciar a fila de impresso (veja a pgina de manual do `lpc' ou digite `?' ao iniciar o programa para detalhes). OBS1: Se a impressora no imprimir ou no for possvel compartilhar a porta de impressora paralela com outros dispositivos (tal como o _plip_), verifique se o mdulo _parport_pc_ foi carregado e com os valores de irq e I/O corretos (por exemplo, `modprobe parport_pc io=0x378 irq=7'). Muitas vezes sua porta paralela pode funcionar sem problemas durante a impresso, mas se ao utilizar plip ocorrerem erros, a causa pode ser essa. Na distribuio `Debian', use o programa `modconf' para configurar os valores permanentemente para o mdulo parport_pc. OBS2: Se tiver mais de uma impressora instalada na mquina, ser necessrio especificar a opo "-P impressora" para especificar qual impressora deseja imprimir/controlar.

21.4. Impresso em modo grfico ------------------------------A impresso em modo grfico requer que conhea a marca e modelo de sua impressora e os mtodos usados para imprimir seus documentos. Este guia abordar somente a segunda recomendao :-)

-234-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

21.4.1. Ghost Script -------------------O mtodo mais usados pelos aplicativos do `GNU/Linux' para a impresso de grficos do _Ghost Script_. O Ghost Script (chamado de _gs_) um interpretador do formato _Pos Script_ (arquivos `.ps') e pode enviar o resultado de processamento tanto para a tela como impressora. Ele est disponvel para diversas plataformas e sistema operacionais alm do `GNU/Linux', inclusive o `DOS', `Windows', `OS/2', etc. O formato `.ps' esta se tornando uma padronizao para a impresso de grficos em `GNU/Linux' devido a boa qualidade da impresso, liberdade de configurao, gerenciamento de impresso feito pelo _gs_ e por ser um formato universal, compatveis com outros sistemas operacionais. Para imprimir um documento via Ghost Script, voc precisar do pacote `gs', `gsfonts' (para a distribuio `Debian' e distribuies baseadas, ou outros de acordo com sua distribuio Linux) e suas dependncias. A distribuio `Debian' vem com vrios exemplos Pos Script no diretrio `/usr/share/doc/gs/example' que so teis para o aprendizado e testes com o Ghost Script. Hora da diverso: * Copie os arquivos `tiger.ps.gz' e `alphabet.ps.gz' do diretrio `/usr/share/doc/gs/examples' (sistemas `Debian') para `/tmp' e descompacte-os com o comando `gzip -d tiger.ps.gz e gzip -d alphabet.ps.gz'. Se a sua distribuio no possui arquivos de exemplo ou voc no encontra nenhuma referncia de onde se localizam, mande um e-mail que os envio os 2 arquivos acima (so 32Kb). * O Ghost Script requer um monitor EGA, VGA ou superior para a visualizao dos seus arquivos (no tenho certeza se ele funciona com monitores CGA ou Hrcules Monocromtico) . Para visualizar os arquivos na tela digite: gs tiger.ps gs alphabet.ps Para sair do `Ghost Script' pressione `CTRL+C'. Neste ponto voc deve ter visto um desenho de um tigre e (talvez) letras do alfabeto. Se o comando `gs alphabet.ps' mostrou somente uma tela em branco, voc se esqueceu de instalar as fontes do Ghost Script (esto localizadas no pacote `gsfonts' na distribuio Debian). * Para imprimir o arquivo `alphabet.ps' use o comando: gs -q -dSAFER -dNOPAUSE -sDEVICE=epson -r240x72 -sPAPERSIZE=legal -sOutputFile=/dev/lp0 alphabet.ps O arquivo `alphabet.ps' deve ser impresso. Caso aparecerem mensagens como `Error: /invalidfont in findfont' no lugar das letras, voc se esqueceu de instalar ou configurar as fontes do Ghost Script. Instale o pacote de fontes (`gsfonts' na `Debian') ou verifique a documentao sobre como configurar as fontes. Cada uma das opes acima descrevem o seguinte: * `-q, -dQUIET' - No mostra mensagens de inicializao do Ghost Script. * `-dSAFER' - uma opo para ambientes seguros, pois desativa a operao de mudana de nome e deleo de arquivo e permite somente a abertura dos arquivos no modo somente leitura.
-235-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

* `-dNOPAUSE' - Desativa a pausa no final de cada pgina processada. * `-sDEVICE=dispositivo' - Dispositivo que receber a sada do Ghost Script. Neste local pode ser especificada a marca o modelo de sua impressora ou um formato de arquivo diferente (como pcxmono, bmp256) para que o arquivo `.ps' seja convertido para o formato designado. Para detalhes sobre os dispositivos disponveis em seu Ghost Script, digite `gs --help|less' ou veja a pgina de manual. Normalmente os nomes de impressoras e modelos so concatenados, por exemplo, bjc600 para a impressora _Canon BJC 600_, epson para impressoras padro epson, stcolor para _Epson Stylus color_, etc. O Hardware-HOWTO contm referncias sobre hardware suportados pelo `GNU/Linux', tal como impressoras e sua leitura pode ser til. * `-r<ResH>x<ResV>' - Define a resoluo de impresso (em dpi) Horizontal e Vertical. Os valores dependem de sua impressora. * `-sPAPERSIZE=tamanho' - Tamanho do papel. Podem ser usados a4, legal, letter, etc. Veja a pgina de manual do gs para ver os outros tipos suportados e suas medidas. * `-sOutputFile=dispositivo' - Dispositivo que receber a sada de processamento do gs. Voc pode especificar * `arquivo.epson' - Nome do arquivo que receber todo o resultado do processamento. O `arquivo.epson' ter toda a impresso codificada no formato entendido por impressoras epson e poder ser impresso com o comando `cat arquivo.epson >/dev/lp0'. Uma curiosidade til: possvel imprimir este arquivo em outros sistemas operacionais, tal como o `DOS' digitando: `copy /b arquivo.eps prn' (lembre-se que o `DOS' tem um limite de 8 letras no nome do arquivo e 3 na extenso. Voc deve estar compreendendo a flexibilidade que o `GNU/Linux' e suas ferramentas permitem, isso s o comeo. * `impressao%d.epson' - Nome do arquivo que receber o resultado do processamento. Cada pgina ser gravada em arquivos separados como `impressao1.epson', `impressao2.epson'. Os arquivos podem ser impressos usando os mesmos mtodos acima. * `/dev/lp0' para uma impressora em `/dev/lp0' * `-' para redirecionar a sada de processamento do `gs' para a sada padro. til para usar o gs com pipes `|'. * `\|lpr' - Envia a sada do Ghost Script para o daemon de impresso. O objetivo deixar a impresso mais rpida. Se voc curioso ou no esta satisfeito com as opes mostradas acima, veja a pgina de manual do `gs'.

21.5. Magic Filter -----------------O _Magic Filter_ um filtro de impresso inteligente.


-236-

Ele funciona

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

acionado pelo spool de impresso (mais especificamente o arquivo `/etc/printcap') e permite identificar e imprimir arquivos de diversos tipos diretamente atravs do comando `lpr arquivo'. um timo programa e _ALTAMENTE RECOMENDADO_ se voc deseja apenas clicar no boto imprimir e deixar os programas fazerem o resto :-) A inteno do programa justamente automatizar os trabalhos de impresso e spool. A maioria dos programas para ambiente grfico X11, incluindo o Netscape, Word Perfect, Gimp e Star Office trabalham nativamente com o `magicfilter'. 21.5.1. Instalao e configurao do Magic Filter ------------------------------------------------O Magic Filter encontrado no pacote `magicfilter' da distribuio `Debian' e baseadas. Sua configurao pode ser feita com o programa `magicfilterconfig' que torna o processo de configurao rpido e fcil para quem no conhece a sintaxe do arquivo `/etc/printcap' ou no tem muitas exigncias sobre a configurao detalhada da impressora. Aps instalar o `magicfilter' reinicie o daemon de impresso (se estiver usando a `Debian', entre no diretrio `/etc/init.d' e como usurio `root' digite `./lpr restart' ou `./lprng restart'). Para testar o funcionamento do `magicfilter', digite `lpr alphabet.ps' e `lpr tiger.ps', os arquivos sero enviados para o `magicfilter' que identificar o arquivo como _Pos Script_, executar o Ghost Script e retornar o resultado do processamento para o daemon de impresso. O resultado ser visto na impressora. Se tiver problemas, verifique se a configurao feita com o `magicfilterconfig' est correta. Caso precise re-configurar o `magicfilter', digite `magicfilterconfig --force' (lembre-se que a opo --force substitui qualquer configurao personalizada que tenha adicionado ao arquivo `/etc/printcap'). 21.5.2. Outros detalhes tcnicos sobre o Magic Filter ----------------------------------------------------Durante a configurao do `magicfilter', a seguinte linha adicionada ao arquivo `/etc/printcap': :if=/etc/magicfilter/epson9-filter No tenho nenhum contrato de divulgao com a _epson_ :-) estou usando esta marca de impressora porque a mais tradicional e facilmente encontrada. A linha que comea com `:if' no `magicfilter' identifica um arquivo de filtro de impresso. O arquivo `/etc/magicfilter/epson9-filter' criado usando o formato do magicfilter, e no difcil entender seu contedo e fazer algumas modificaes:

-237-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

#! /usr/sbin/magicfilter # # Magic filter setup file for 9-pin Epson (or compatible) printers # # This file is in the public domain. # # This file has been automatically adapted to your system. # # wild guess: native control codes start with ESC 0 \033 cat # PostScript 0 %! filter /usr/bin/gs -q -dSAFER -dNOPAUSE -r120x72 -sDEVICE=epson -sOutputFile=- - -c quit 0 \004%! filter /usr/bin/gs -q -dSAFER -dNOPAUSE -r120x72 -sDEVICE=epson -sOutputFile=- - -c quit # PDF 0 %PDF fpipe /usr/bin/gs -q -dSAFER -dNOPAUSE -r120x72 -sDEVICE=epson -sOutputFile=- $FILE -c quit # TeX DVI 0 \367\002 fpipe /usr/bin/dvips -X 120 # compress'd data 0 \037\235 pipe /bin/gzip # 0 0 0 0

-Y 72

-R -q -f

-cdq

packed, gzipped, frozen and SCO LZH data \037\036 pipe /bin/gzip -cdq \037\213 pipe /bin/gzip -cdq \037\236 pipe /bin/gzip -cdq \037\240 pipe /bin/gzip -cdq pipe /usr/bin/bzip2 -cdq

0 BZh # 0 0 0 0 0

troff documents .\?\?\040 fpipe `/usr/bin/grog -Tps $FILE` .\\\" fpipe `/usr/bin/grog -Tps $FILE` '\\\" fpipe `/usr/bin/grog -Tps $FILE` '.\\\" fpipe `/usr/bin/grog -Tps $FILE` \\\" fpipe `/usr/bin/grog -Tps $FILE` Voc deve ter notado que para cada tipo de arquivo existe o respectivo programa que executado, basta voc modificar as opes usadas nos programas neste arquivo (como faria na linha de comando) para afetar o comportamento da impresso. Por exemplo, modificando a resoluo para -r240x72 no processamento de arquivos Pos Script (gs), a impressora passar a usar esta resoluo.

-------------------------------------------------------------------------------

22. Configurao do sistema --------------------------Este captulo traz explicaes sobre algumas configuraes teis que
-238-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

podem ser feitas no sistema. Neste documento assumimos que o kernel do seus sistema j possui suporte a pgina de cdigo 860 (Portuguesa) e o conjunto de caracteres `ISO-8859-1'.

22.1. Acentuao ---------------Permite que o `GNU/Linux' use a acentuao. A acentuao do modo texto independente do modo grfico; voc pode configurar tanto um como o outro ou ambos. Para maiores detalhes veja Section 22.1.1, `Acentuao em modo Texto' e/ou Section 22.1.2, `Acentuao em modo grfico'. Note que os mapas de teclado usados em modo texto so diferentes dos usados em modo grfico. Geralmente os mapas de teclados para o modo grfico tem uma letra `X' no nome. 22.1.1. Acentuao em modo Texto -------------------------------Caso sua distribuio `Debian' esteja acentuando corretamente no modo texto voc no precisar ler esta seo. Antes de prosseguir, verifique se voc possui o pacote `kbd' ou `console-data' instalado em seu sistema com o comando: `dpkg -l kbd'. Caso no existam, alguns programas de configurao e arquivos de fontes no estaro disponveis. Siga os passos abaixo para colocar e acentuao em funcionamento para o modo Texto na `Debian': _Mapa de Teclados_ Debian 2.2 (Potato) Verifique se possui o arquivo de _mapa de teclado_ correspondente ao seu modelo. Um mapa de teclado so arquivos com a extenso `.map' ou `.kmap' que fazem a traduo do cdigo enviado pelo teclado para um caracter que ser exibido na tela alm de outras funes como o "Dead Keys" (pressionamento de uma tecla que no gera nenhum caracter mas afetar o prximo caracter gerado - como na acentuao, quando voc aperta o `'' no aparece nada mas aps apertar a letra `A' um caracter `' exibido. A combinao `'' + `A' um _Dead Key_ e est definido no arquivo do mapa de teclados). Os tipos de teclados mais usados aqui no Brasil so o _padro EUA_ e o _ABNT2_. O teclado _padro EUA_ o modelo usado nos Estados Unidos e voc precisar apertar `''+`C' para gerar um _Cedilha ()_, enquanto o teclado ABNT2 possui todas as teclas usadas no Brasil (semelhante a uma mquina de escrever) e o _Cedilha_ possui sua prpria tecla aps a letra `L'. O mapa de teclados correspondente ao teclado _padro EUA_ o `br-latin1' enquanto o _ABNT2_ o `br-abnt2'. Se no tiver o arquivo correspondente ao seu teclado ou no encontra-lo, voc poder copia-lo de http://www.guiafoca.org/download/outros/Consolemaps_tar.gz, este arquivo possui 3 mapas de teclados para os 2 teclados
-239-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Brasileiros mais usados e um de Portugal (raramente usado no Brasil). Descompacte o arquivo `Consolemaps_tar.gz' para um local em seu sistema (por exemplo: `/tmp') com o comando: `tar -xzvf Consolemaps_tar.gz'. Note que este arquivo serve somente para a configurao no modo texto (console), veja a seo seguinte para configurar a acentuao no modo grfico. Debian 3.0 (Woody) Digite `dpkg-reconfigure console-data'. Aps a tela inicial, selecione a opo `Select Keymap from Arch List', `qwerty' e selecione os passos seguintes de acordo com seu tipo de teclado: * `Us Internacional' - Selecione `US American' na lista de opes e em seguida `Standard' e `US International (ISO-8859-1)'. * `ABNT2 (com cedilha)' - Selecione `Brazilian' na lista de opes. _Configurando o Mapa de Teclados_ Se o arquivo do mapa de teclados possuir a extenso `.gz', descompacte-o com o comando: `gzip -dc _arquivo.gz_>/etc/kbd/default.map' ou `gzip -d _arquivo.gz_' para descompactar e depois o comando `cp _arquivo.kmap_ /etc/kbd/default'. Se o arquivo possuir a extenso `.tar.gz', descompacte-o com o comando: `tar -zxvf _arquivo.tar.gz_' e depois use o comando `cp _arquivo.kmap_ /etc/kbd/default'. Faa isto substituindo _arquivo.gz_ ou _arquivo.tar.gz_ com o nome do arquivo compactado que contm o mapa de teclados. Voc pode manter o arquivo `/etc/kbd/default.map.gz', pois este arquivo lido pelos scripts de inicializao da `Debian' somente se o arquivo `/etc/kbd/default.map' no for encontrado. Se desejar usar o comando `loadkeys', voc precisa copiar o mapa de teclados para um local conhecido no sistema, ento copie o arquivo `arquivo.kmap' para `/usr/share/keymaps/i386/qwerty' (em sistemas Debian) ou algum outro local apropriado. Note que o arquivo pode ser compactado pelo `gzip' e copiado para `/usr/share/keymaps/i386/qwerty' que ser lido sem problemas pelo sistema encarregado de configurar o teclado e acentuao. _Configurando a fonte de Tela_ Descomente a linha `CONSOLE_FONT=iso01.f16' e modifique-a para `CONSOLE_FONT=lat1u-16.psf' no arquivo `/etc/kbd/config'. Esta linha diz ao sistema que _fonte_ deve carregar para mostrar os caracteres na tela. A fonte de caracteres deve ser compatvel com o idioma local, pois nem todas suportam caracteres acentuados. A fonte prefervel para exibir os caracteres acentuados a `lat1u-16', o `-16' no nome do arquivo significa o tamanho da fonte. As fontes de tela esto disponveis no diretrio `/usr/share/consolefonts'. Neste ponto voc pode verificar se o seu sistema esta reconhecendo corretamente a acentuao entrando no editor de
-240-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

textos `ae' e digitando: `'. Se todos os acentos apareceram corretamente, parabns! voc j passou pela parte mais difcil. Agora o prximo passo a acentuao no `Bash'. _Acentuao no aviso de comando (`bash')_ Para acentuar no `Bash' (interpretador de comandos) necessrio alterar o arquivo `/etc/inputrc' e fazer as seguintes modificaes: 1. Descomente a linha: `"#set convert-meta off"' voc faz isto apagando o smbolo "#" antes do nome. Um comentrio faz com que o programa ignore linha(s) de comando. muito til para descrever o funcionamento de comandos/programas (voc vai encontrar muito isso no sistema `GNU/Linux', tudo muito bem documentado). 2. Inclua a seguinte linha no final do arquivo: set meta-flag on 3. O contedo deste arquivo deve ficar assim: set convert-meta off set input-meta on set output-meta on 4. Digite `exit' ou pressione `CTRL'+`D' para fazer o logout. Entre novamente no sistema para que as alteraes faam efeito.

Pronto! voc j esta acentuando em modo texto!. Talvez seja necessrio que faa alguma alterao em arquivos de configurao de outros programas para que possa acentuar corretamente (veja se existe algum arquivo com o nome correspondente ao programa no diretrio `/etc'). A distribuio `Debian' tambm traz o utilitrio `kbdconfig' que tambm faz a configurao do mapa de teclados de forma interativa e gravando automaticamente o mapa de teclados em `/etc/kbd/default.map.gz'. Se preferir usar o `kbdconfig' ainda ser necessrio executar os passos acima para habilitao da fonte `lat1u-16' e acentuao no `bash'. 22.1.2. Acentuao em modo grfico ---------------------------------A acentuao no modo grfico feita de maneira simples: _Mapa de Teclados_ Verifique se possui o arquivo de mapa de teclado para o modo grfico que corresponde ao seu teclado. Um arquivo de mapa de teclado faz a traduo do cdigo enviado pelo teclado para um caracter que ser exibido na tela. Este tipo de arquivo identificado com a extenso `.map'. Se no tiver este arquivo ou no encontra-lo, voc pode copia-lo de http://www.guiafoca.org/download/outros/Xmodmaps_tar.gz, este
-241-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

arquivo possui 3 mapas de teclados para os 2 teclados Brasileiros mais usados e um de Portugal. Descompacte o arquivo `Xmodmaps_tar.gz' para um local em seu sistema (por exemplo: `/tmp') com o comando: `tar -xzvf Xmodmaps-tar.gz'. Note que os mapas de teclado do `Xmodmaps_tar.gz' somente servem para a configurao no modo grfico (X-Window). _Acentuao no X_ Para acentuar no X voc precisar descompactar e copiar o arquivo de mapa de teclado adequado ao seu computador em cima do arquivo `/etc/X11/Xmodmap' que j est em seu sistema. No meu caso, eu usei o seguinte comando (aps descompactar o arquivo): `"cp `Xmodmap.us+' `/etc/X11/Xmodmap'"'. Agora voc precisa reiniciar o servidor X para que as alteraes faam efeito (ou digite `xmodmap /etc/X11/Xmodmap' no `xterm' para aplicar as alteraes na seo atual). Os passos descritos at aqui funcionaro para pessoas que iniciam o X pelo prompt (usando o comando `startx', `xinit', etc), veja o passo seguinte para acentuar pelo `XDM'. _Acentuao no XDM_ Para acentuar no `XDM', inclua as seguintes linhas no arquivo `/etc/X11/xdm/Xsetup_0': sysmodmap=/etc/X11/Xmodmap if [ -r $sysmodmap ]; then xmodmap $sysmodmap fi

22.2. Nmero de Cores do ambiente grfico ----------------------------------------O nmero de cores do ambiente grfico pode ser alterado facilmente. Por padro, a maioria das instalaes e distribuies `GNU/Linux' vem com apenas 16 cores (4 bits) porque um nmero de cores suportado por qualquer placa de vdeo, sem modificaes especiais. A configurao de mais de 16 cores exige que voc tenha escolhido o modelo correto de sua placa de vdeo (usando o programa `xf86config' (na Debian 2.2) ou digitando `dpkg-reconfigure xserver-svga' (na Debian 3.0)). Por exemplo, minha placa de vdeo uma `Trident 9680' na tela de seleo do programa `xf86config' eu escolhi `Trident 9680 Generic' (cdigo 671 no servidor X 3.3.6) que o driver que permite o uso de todas as cores permitidas por esta placa e tambm usar os recursos de acelerao que ela oferece. Voc pode utilizar o programa `xviddetect' para obter o modelo de sua placa de vdeo e o servidor X correspondente a ela, basta digitar `xviddetect' na linha de comando. O comando `dpkg-reconfigure xserver-svga' da Debian 3.0 (Woody) mais flexvel e possui uma facilidade maior de configurao, inclusive auto-detectando seu chipset de vdeo e configurando seu monitor de acordo com o tamanho da tela (em polegadas). Com uma configurao correta possvel atingir at 32 bits de cores (pocket pixel) no X. A configurao do X utiliza o _nmero de bits_
-242-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

ao invs do nmero de cores na sua configurao. comparativa: Bits ------4 bits 8 bits 16 bits 24 bits 32 bits

Abaixo uma tabela

Nmero Max. Cores Memria mnima requerida na Placa de Vdeo ----------------- ----------------------------------------16 cores 256Kb 256 cores 512Kb 32.384/65536 cores 1MB 16 milhes de cores (pixel menor) 1MB 16 milhes de cores 1MB

Lembre-se que a tabela acima leva em considerao a resoluo de vdeo de 640x480. Caso utilizar uma resoluo de 800x600, 1024x768 ou superior, os requerimentos de _memria de vdeo_ para mostrar o nmero de cores da tabela acima sero maiores. Para mostrar 1024x768 - 16 milhes de cores sero necessrios 2MB de memria de vdeo, por exemplo. A resoluo de 24 bits normalmente traz problemas em alguns chipsets, considere a utilizao da resoluo de 16 ou 32 bits. O uso de uma resoluo de vdeo como 800x600 ou superior, tambm depende do monitor de vdeo. Nem todos os monitores VGA e SVGAs do mercado suportam resolues acima de 640x480. OBS: Se tiver escolha, prefira placas de vdeo independentes da placa me. Normalmente as placas de vdeo on-board usam parte da memria RAM como memria de vdeo (memria compartilhada) e isto diminui a performance de vdeo e a performance do sistema porque se voc estiver usando 2MB de memria de vdeo, ter 2 MB a menos para executar seus programas. O preo destas placas geralmente diminui na proporo do desempenho que oferecem. Uma boa escolha para uma melhor qualidade e maior velocidade _16 bits_. O motivo disto que quanto maior a qualidade e a resoluo, mais tempo ser levado para os pixels serem atualizados no monitor. Veja abaixo como configurar o nmero de cores para quem esta iniciando o X-Window pelo modo texto e `XDM'. 22.2.1. Configurando o nmero de cores para quem inicia pelo prompt ------------------------------------------------------------------Aps configurar corretamente a resoluo de vdeo aceita pelo seu servidor X com `xf86config' ou `dpkg-reconfigure xserver-svga' (Debian 3.0) use o comando `startx -- -bpp 8' no lugar de `startx'. Note que estou usando 256 cores como exemplo (veja a tabela acima), se quiser usar mais cores e sua placa de vdeo tiver memria suficiente, use 16, 24 ou 32. Os usurios de distribuies baseadas na `Debian 2.2' tambm tem o `anXious' (um programa em linguagem `Perl') que permite fazer a configurao no modo texto atravs de menus. Para a Debian 3.0 (Woody) o comando `dpkg-reconfigure xserver-svga' o mais fcil e rpido, ele detecta sua placa de vdeo e configura seu monitor de acordo com o tamanho de tela, alm de permitir configuraes detalhadas se selecionar a opo "Avanado" de configurao. Uma maneira mais prtica de iniciar sempre com uma mesma resoluo incluir um `alias' no arquivo `.bashrc' em seu diretrio: `alias startx='startx -- -bpp 8''

-243-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Desta forma toda a vez que se digitar `startx', ser executado o comando da direita do sinal de igual. OBS: Se alguma coisa der errado e a imagem aparecer distorcida ou simplesmente no aparecer, no se desespere! Pressione simultaneamente `CTRL+ALT+Back Space', esta a combinao de teclas finaliza imediatamente o servidor X. 22.2.2. Configurando o nmero de cores para quem inicia pelo XDM ---------------------------------------------------------------Assumindo que o seu arquivo `/etc/X11/XF86Config' foi gerado corretamente, modifique o arquivo `/etc/X11/xdm/Xservers' e alterar o final da linha colocando `-bpp resoluo'. Por exemplo, a ltima linha de meu arquivo `Xservers' era: :0 local /usr/bin/X11/X vt7 eu a modifiquei para :0 local /usr/bin/X11/X vt7 -bpp 16 Pronto, basta reiniciar o servidor X (usando `CTRL+ALT+Back Space') ou reiniciando atravs do arquivo `/etc/init.d/xdm' usando `xdm restart' e seu sistema passar a usar 65.000 cores de vdeo. OBS: Lembre-se de salvar todos os seus arquivos antes de reiniciar o servidor X, pois todos os programas que estiverem abertos no sistema sero imediatamente fechados. 22.2.3. Ajustando o alinhamento da imagem no X e outras configuraes --------------------------------------------------------------------Aps voc ter criado o arquivo de configurao do X com o `xf86config' (modo texto), `dpkg-reconfigure xserver-svga' ou `XF86Setup' (modo grfico), possvel que a configurao precise de um ajuste fino para o alinhamento correto da imagem no monitor. Muitos monitores modernos possuem teclas para esta funo, mas desde que monitor esteja com sua imagem aparecendo corretamente em modo texto, o ajuste dever ser feito no servidor X. Este ajuste feito atravs do utilitrio `xvidtune'. Entre no modo grfico como usurio `root', abra o `xterm' e digite `xvidtune' uma tela aparecer com um aviso sobre o uso do programa, clique em `OK'. Recomendo que ative o boto `AUTO' para que a tela v se ajustando na medida que voc mexe nos ajustes. Para restaurar a configurao anterior, pressione o boto `Restore' (no faz efeito caso o boto `Apply' tenha sido pressionado). Clicando em `Quit', voc sai do `xvidtune' sem salvar a configurao. Quando estiver satisfeito com a sua configurao/alinhamento da imagem, clique em `Apply', a configurao escolhida estar salva. 22.2.4. Sobre o nmero de cores para jogos que funcionam no X ------------------------------------------------------------A maioria dos jogos se recusam a funcionam com uma quantidade de cores
-244-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

maior do que 8 bits. Se voc instalar algum jogo e ao tentar executa-lo simplesmente no acontecer nada ou mostrar uma mensagem de erro, modifique o nmero de cores para 8 bits, provavelmente o problema estar ai. Lembre-se: Quanto mais cores usar e maior for sua resoluo, mais lento ficar a velocidade de vdeo. Por este motivo alguns jogos se recusam a funcionar com mais de 8 bits de cores.

-------------------------------------------------------------------------------

23. Manuteno do Sistema ------------------------Este captulo descreve como fazer a manuteno de seu sistema de arquivos e os programas de manuteno automtica que so executados periodicamente pelo sistema.

23.1. Checagem dos sistemas de arquivos --------------------------------------A checagem do sistema de arquivos permite verificar se toda a estrutura para armazenamento de arquivos, diretrios, permisses, conectividade e superfcie do disco esto funcionando corretamente. Caso algum problema exista, ele poder ser corrigido com o uso da ferramenta de checagem apropriada. As ferramentas de checagem de sistemas de arquivos costumam ter seu nome iniciado por `fsck' e terminados com o nome do sistema de arquivos que verifica, separados por um ponto: * `fsck.ext2' - Verifica o sistema de arquivos `EXT2' ou `EXT3'. Pode tambm ser encontrado com o nome `e2fsck'. * `fsck.ext3' - Um alias para `fsck.ext3'. * `fsck.minix' - Verifica o sistema de arquivos `Minix'. * `fsck.msdos' - Verifica o sistema de arquivos `Msdos'. tambm ser encontrado com o nome `dosfsck'. Pode

Para verificar um sistema de arquivos necessrio que ele esteja desmontado caso contrrio poder ocorrer danos em sua estrutura. Para verificar o sistema de arquivos raz (que no pode ser desmontado enquanto o sistema estiver sendo executado) voc precisar inicializar atravs de um disquete e executar o `fsck.ext2'. 23.1.1. fsck.ext2 ----------------Este utilitrio permite verificar erros em sistemas de arquivos `EXT2' e `EXT3' (_Linux Native_). `fsck.ext2 [_opes_] [_dispositivo_]'

-245-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Onde: dispositivo o local que contm o sistema de arquivos `EXT2/EXT3' que ser verificado (parties, disquetes, arquivos). opes -c Faz o `fsck.ext2' verificar se existem agrupamentos danificados na unidade de disco durante a checagem. -d Debug - Mostra detalhes de processamento do `fsck.ext2'. -f Fora a checagem mesmo se o sistema de arquivos aparenta estar em bom estado. Por padro, um sistema de arquivos que aparentar estar em bom estado no so verificados. -F Grava os dados do cache no disco antes de iniciar. -l [arquivo] Inclui os blocos listados no [arquivo] como blocos defeituosos no sistema de arquivos. O formato deste arquivo o mesmo gerado pelo programa `badblocks'. -L [arquivo] Faz o mesmo que a opo `-l', s que a lista de blocos defeituosos do dispositivo completamente limpa e depois a lista do [arquivo] adicionada. -n Faz uma verificao de `somente leitura' no sistema de arquivos. Com esta opo possvel verificar o sistema de arquivos montado. Ser assumido `no' para todas as perguntas e nenhuma modificao ser feita no sistema de arquivos. Caso a opo `-c' seja usada junto com `-n', `-l' ou `-L', o sistema de arquivos ser verificado e permitir somente a atualizao dos setores danificados no alterando qualquer outra rea. -p Corrige automaticamente o sistema de arquivos sem perguntar. recomendvel fazer isto manualmente para entender o que aconteceu, em caso de problemas com o sistema de arquivos. -v Ativa o modo verbose (mais mensagens so mostradas durante a execuo do programa). -y Assume `sim' para todas as questes. Caso sejam encontrados arquivos problemticos e estes no possam ser recuperados, o `fsck.ext2' perguntar se deseja salva-los no diretrio `lost+found'. Este diretrio encontrado em todas as parties _ext2_. No h risco de usar o `fsck.ext3' em uma partio `EXT2'. Aps sua execuo mostrado detalhes sobre o sistema de arquivos verificado como quantidade de blocos livres/ocupados e taxa de fragmentao. Exemplos: `fsck.ext2 /dev/hda2', `fsck.ext2 -f /dev/hda2', `fsck.ext2 -vrf /dev/hda1'.

23.2. reiserfsck ----------------246-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Verifica um sistema de arquivos `reiserfs' em sistema de arquivos. `reiserfsck [_opes_] [_dispositivo_]' _dispositivo_ Dispositivo que contm o sistema de arquivos `reiserfs' que ser verificado. _opes_ -a Mostra detalhes sobre o sistema de arquivos e sai -j arquivo Especifica um arquivo de Journal alternativo usado pelo sistema de arquivos. -q quiet No exibe mensagens sobre o status da checagem do sistema de arquivos. -S Constri a rvore de todos os blocos do dispositivo. O `reiserfsck' possui outros modos de operao alm de checagem (o padro), para detalhes veja a pgina de manual do programa. Exemplos: `reiserfsck /dev/hda1', `reiserfsck -S /tmp/arq-reiserfs'.

23.3. fsck.minix ---------------Verifica o sistema de arquivos _minix_ em um dispositivo. `fsck.minix [_opes_] [_dispositivo_]' Onde: dispositivo Partio, disquete ou arquivo que contm o sistema de arquivos `Minix' que ser verificado opes -f Verifica o sistema de arquivos mesmo se ele estiver perfeito. -r Permite reparo manual do sistema de arquivos -a Permite um reparo automtico do sistema de arquivos. recomendado fazer o reparo manual. -v Verbose - Mostra detalhes durante a execuo do programa -s Exibe detalhes sobre os blocos de root. Exemplo: `fsck.minix -f /dev/hda8', `fsck.minix -vf /dev/hda8'

23.4. badblocks --------------Procura blocos defeituosos em um dispositivo. Note que este _apenas_ pesquisa por blocos defeituosos, sem alterar a configurao do disco.
-247-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Para marcar os blocos defeituosos para no serem mais usados, utilize a opo `-l' do `fsck' (veja Section 23.1.1, `fsck.ext2'). `badblocks [_opes_] [_dispositivo_]' Onde: dispositivo Partio, disquete ou arquivo que contm o sistema de arquivos que ser verificado. opes -b [tamanho] Especifica o [tamanho] do bloco do dispositivo em bytes -o [arquivo] Gera uma lista dos blocos defeituosos do disco no [arquivo]. Este lista pode ser usada com o programa `fsck.ext2' junto com a opo `-l'. -s Mostra o nmero de blocos checados durante a execuo do `badblocks'. -v Modo verbose - So mostrados mais detalhes. -w Usa o modo leitura/gravao. Usando esta opo o `badblocks' procura por blocos defeituosos gravando alguns padres (0xaa, 0x55, 0xff, 0x00) em cada bloco do dispositivo e comparando seu contedo. Nunca use a opo `-w' em um dispositivo que contm arquivos pois eles sero apagados! Exemplo: `badblocks -s /dev/hda6', `badblocks -s -o bad /dev/hda6'

23.5. defrag -----------Permite desfragmentar uma unidade de disco. A fragmentao o armazenamento de arquivos em reas no seqenciais (uma parte armazenada no comeo a outra no final, etc), isto diminui o desempenho da unidade de disco porque a leitura dever ser interrompida e feita a movimentao da cabea para outra regio do disco onde o arquivo continua, por este motivo discos fragmentados tendem a fazer um grande barulho na leitura e o desempenho menor. A desfragmentao normalmente desnecessria no `GNU/Linux' porque o sistema de arquivos _ext2_ procura automaticamente o melhor local para armazenar o arquivo. Mesmo assim, recomendvel desfragmentar um sistema de arquivos assim que sua taxa de fragmentao subir acima de 10%. A taxa de fragmentao pode ser vista atravs do `fsck.ext2'. Aps o `fsck.ext2' ser executado mostrada a taxa de fragmentao seguida de `non-contiguos'. A ferramenta de desfragmentao usada no `GNU/Linux' o `defrag' que vem com os seguintes programas: * `e2defrag' - Desfragmenta sistemas de arquivos _Ext2_. * `defrag' - Desfragmenta sistemas de arquivos _Minix_. * `xdefrag' - Desfragmenta sistemas de arquivos _Xia_. O sistema de arquivos deve estar desmontado ao fazer a
-248-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

desfragmentao. Se quiser desfragmentar o sistema de arquivos raz (`/'), voc precisar inicializar atravs de um disquete e executar um dos programas de desfragmentao apropriado ao seu sistema de arquivos. A checagem individual de fragmentao em arquivos pode ser feita com o programa `frag'. ATENO: Retire cpias de segurana de sua unidade antes de fazer a desfragmentao. Se por qualquer motivo o programa de desfragmentao no puder ser completado, voc poder perder dados! `e2defrag [_opes_] [_dispositivo_]' Onde: dispositivo Partio, arquivo, disquete que contm o sistema de arquivos que ser desfragmentado. -d Debug - sero mostrados detalhes do funcionamento -n No mostra o mapa do disco na desfragmentao. til quando voc inicializa por disquetes e recebe a mensagem "Failed do open term Linux" ao tentar executar o `e2defrag'. -r Modo somente leitura. O defrag simular sua execuo no sistema de arquivos mas no far nenhuma gravao. Esta opo permite que o defrag seja usado com sistema de arquivos montado. -s Cria um sumrio da fragmentao do sistema de arquivos e performance do desfragmentador. -v Mostra detalhes durante a desfragmentao do sistema de arquivos. Caso mais de uma opo -v seja usada, o nvel de detalhes ser maior. -i [arquivo] Permite definir uma lista de prioridades em que um arquivo ser gravado no disco, com isto possvel determinar se um arquivo ser gravado no comeo ou final da unidade de disco. Esta lista lida do [arquivo] e deve conter uma lista de prioridades de -100 a 100 para cada inodo do sistema de arquivos. Arquivos com prioridade alta sero gravados no comeo do disco. Todos os inodos tero prioridade igual a zero caso a opo `-i' no seja usada ou o inodo no seja especificado no [arquivo]. O [arquivo] dever conter uma srie de linhas com um nmero (inodo) ou um nmero prefixado por um sinal de igual seguido da prioridade. -p [numero] Define o [numero] de buffers que sero usados pela ferramenta de desfragmentao na realocao de dados, quanto mais buffers mais eficiente ser o processo de realocao. O nmero depende de quantidade memria RAM e Swap voc possui. Por padro 512 buffers so usados correspondendo a 512Kb de buffer (em um sistema de arquivos de blocos com 1Kb). Exemplo: `e2defrag -n -v /dev/hdb4', `e2defrag -r /dev/hda1'

23.6. Verificando e marcando setores danificados em um HD


-249-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

--------------------------------------------------------Um dos sintomas de um disco rgido que contm setores danificados (bad blocks) a mudana repentina do sistema de arquivos para o modo somente leitura, o aparecimento de diversas mensagens no syslog indicando falha de leitura do hd, uma pausa se segundos no sistema junto com o led de atividade de disco ligado. Se isto acontece com voc, uma forma de solucionar este inconveniente executar o teste na superfcie fsica do disco para procurar e marcar os blocos problemticos como defeituosos. Em alguns casos, os blocos defeituosos ocorrem isoladamente no disco rgido, no aumentando mais sua quantidade, entretanto, se o nmero de blocos danificados em seu disco est crescendo em um curto espao de tempo, comece a pensar na troca do disco rgido por um outro. Existem empresas que recuperam HDs mas pelo valor cobrado por se tratar de um servio delicado, s compensa caso voc no tenha o backup e _realmente_ precisa dos dados do disco. Para fazer uma checagem de HD no sistema de arquivos `ext2' ou `ext3', proceda da seguinte forma: * Se possvel, faa um backup de todos os dados ou dos dados essenciais da partio ser checada. * Inicie o sistema por um disquete de boot ou CD de recuperao. Este passo til pois em alguns casos, pode ocorrer a perda de interrupo do disco rgido e seu sistema ficar paralisado. S o mtodo de checar o HD usando um disquete de boot lhe far agendar uma parada no sistema e notificar os usurios, evitando srios problemas do que fazendo isto com um sistema em produo. * Execute o `badblocks' usando a opo `-o' para gravar os possveis blocos defeituosos encontrados para um arquivo: `badblocks -v -o blocos-defeituosos.lista /dev/hd??'. Substitua o dispositivo `/dev/hd??' pelo dispositivo que deseja verificar. A checagem do `badblocks' dever ser feita para cada partio existente no disco rgido. O tempo de checagem depender da velocidade do disco rgido, velocidade do barramento, cabo de dados utilizado, velocidade de processamento e claro, do estado do disco rgido (quantos setores defeituosos ele tem). * Aps concluir o `badblocks', veja se foram encontrados blocos defeituosos. Caso tenha encontrado, siga para o prximo passo. * Para marcar os blocos encontrados pelo `badblocks' como defeituosos, execute o comando: `fsck.ext3 -l blocos-defeituosos.lista -f /dev/hd??'. Substitua o dispositivo, pelo dispositivo que verificou com o `badblocks'. O arquivo `blocos-defeituosos.list' contm a lista de blocos gerada pelo `badblocks' que sero marcados como defeituosos. Para mais detalhes sobre as opes de checagem usada pelos programas, veja Section 23.4, `badblocks' e Section 23.1.1, `fsck.ext2'.

23.7. Limpando arquivos de LOGS ------------------------------Tudo que acontece em sistemas `GNU/Linux' pode ser registrado em arquivos de log em `/var/log', como vimos anteriormente. Eles so
-250-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

muito teis por diversos motivos, para o diagnstico de problemas, falhas de dispositivos, checagem da segurana, alerta de eventuais tentativas de invaso, etc. O problema quando eles comeam a ocupar muito espao em seu disco. Verifique quantos Megabytes seus arquivos de LOG esto ocupando atravs do comando `cd /var/log;du -hc'. Antes de fazer uma limpeza nos arquivos de LOG, necessrio verificar se eles so desnecessrios e s assim zerar os que forem dispensveis. No recomendvel apagar um arquivo de log pois ele pode ser criado com permisses de acesso indevidas (algumas distribuies fazem isso). Voc pode usar o comando: `echo -n >arquivo' ou o seguinte shell script para zerar todos os arquivos de LOG de uma s vez (as linhas iniciante com `#' so comentrios): #! /bin/sh cd /var/log for l in `ls -p|grep '/'`; do echo -n >$l &>/dev/null echo Zerando arquivo $l... done echo Limpeza dos arquivos de log concluda! Copie o contedo acima em um arquivo com a extenso `.sh', d permisso de execuo com o `chmod' e o execute como usurio `root'. necessrio executar este script para zerar arquivos de log em subdiretrios de `/var/log', caso sejam usados em seu sistema. Algumas distribuies, como a `Debian' GNU/Linux, fazem o arquivamento automtico de arquivos de LOGs em arquivos `.gz' atravs de scripts disparados automaticamente pelo `cron'. ATENO: LEMBRE-SE QUE O SCRIPT ACIMA APAGAR TODOS OS ARQUIVOS DE LOGs DO SEU SISTEMA SEM POSSIBILIDADE DE RECUPERAO. TENHA ABSOLUTA CERTEZA DO QUE NO PRECISAR DELES QUANDO EXECUTAR O SCRIPT ACIMA!

23.8. Recuperando parties apagadas -----------------------------------Caso tenha apagado uma partio acidentalmente ou todas as parties do seu disco, uma forma simples de recuperar todos os seus dados simplesmente recriar todas as parties com o tamanho _EXATAMENTE_ igual ao existente anteriormente. Isto deve ser feito dando a partida com um disquete ou CD de inicializao. Aps recriar todas as parties e seus tipos (83, 82 8e, etc), execute novamente o lilo para recriar o setor de boot do HD e garantir que a mquina dar o boot. A recuperao desta forma possvel porque quando se cria ou apaga uma partio, voc est simplesmente delimitando espao onde cada sistema de arquivos gravar seus dados, sem fazer nenhuma alterao dentro dele. Assim, tambm til manter uma cpia dos tamanhos usados durante o processo de criao das parties para ser usado como recuperao em uma possvel emergncia.

23.9. Recuperando a senha de root perdida


-251-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

----------------------------------------Uma situao que voc deve ter se deparado (ou algum dia ainda vai se deparar) precisar alterar a senha de root e no sabe ou no lembra a senha atual. Esta situao tambm pode ser encontrada quando ocorre uma falha de disco, falha eltrica, reparos em uma mquina que no detm sua manuteno, etc. A melhor notcia que a alterao da senha de root possvel e no apresenta problema qualquer para o sistema. Existem vrias formas para se fazer isto, a forma que descreverei abaixo assume que voc tem acesso a um outro dispositivo de partida que no seja o HD do Linux (_CD-ROM_, _disquetes_, _outro disco rgido_, etc). Assim, mesmo que encontre uma senha de BIOS em uma mquina, poder colocar o disco rgido em outra mquina e executar estes procedimentos. _OBS:_ Estes procedimentos tens fins didticos e administrativos, no sendo escritos com a inteno de fornecer mal uso desta tcnica. Entender a exposio de riscos tambm ajuda a desenvolver novas tcnicas de defesa para sistemas crticos, e estas so totalmente possveis e as mais usadas documentadas neste guia. * Como primeiro passo consiga um CD de partida ou disquete de uma distribuio `Linux'. Normalmente os mesmos CDs que usou para instalar sua distribuio tambm so desenvolvidos para permitir a manuteno do sistema, contendo ferramentas diversas e um terminal virtual disponvel para trabalhos manuais (tanto de instalao como manuteno). * V at a BIOS da mquina e altere a ordem de inicializao para que seu sistema inicialize a partir do disquete ou CD-ROM (dependendo do mtodo escolhido no passo anterior). * Inicialize a partir do Disquete/CD-ROM. * Na maioria dos casos voc provavelmente estar utilizando o CD-ROM que usou para instalar sua distribuio. Imediatamente quando o programa de instalao for iniciado, pressione _ALT_+_F2_ para alternar para o segundo terminal virtual do sistema. O segundo terminal esta sempre disponvel nas distribuies distribuies `Debian', `Red Hat', `Conectiva', `Fedora', etc. * O prximo passo ser montar sua partio raz para ser possvel alterar sua senha de root. Para isto, crie um diretrio onde a partio ser montada (por exemplo, `/target') e execute o comando mount: `mount /dev/hda1 /target' (assumindo que `/dev/hda1' a partio que contm seu sistema de arquivos raz (`/'). * Entre no diretrio `/target' (`cd /target') e torne-o seu diretrio raz atual com o comando: `chroot .'. * digite `passwd' e entre com a nova senha de superusurio. * saia do `chroot' digitando `exit' * Digite `sync' para salvar todas as alteraes pendentes para o disco e reinicie o sistema (pressionando-se as teclas `CTRL+ALT+DEL', `init 6', `reboot'). * Retire o CD da unidade de discos e altere sua BIOS para dar a partida a partir do disco rgido. * Teste e verifique se a senha de root foi alterada. Normalmente as distribuies seguem o padro FHS, mantendo binrios de administrao necessrios para recuperao do sistema em caso de panes dentro da partio `/', se este no for o caso de sua distribuio (hoje em dia raro), voc ter que montar sistemas de arquivos
-252-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

adicionais (como o `/usr', `/var') ou ento o comando `passwd' no ser encontrado ou ter problemas durante sua execuo.

23.10. Tarefas automticas de manuteno do sistema --------------------------------------------------Os arquivos responsveis pela manuteno automtica do sistema se encontram em arquivos individuais localizados nos diretrios `/etc/cron.daily', `/etc/cron.weekly' e `/etc/cron.montly'. A quantidade de arquivos depende da quantidade de pacotes instalado em seu sistema, porque alguns programam tarefas nestes diretrios e no possvel descrever todas, para detalhes sobre o que cada arquivo faz veja o cabealho e o cdigo de cada arquivo. Estes arquivos so executados pelo `cron' atravs do arquivo `/etc/crontab'. Voc pode programar quantas tarefas desejar, para detalhes veja Section 23.11, `cron' e Section 23.12, `at'. Alguns programas mantm arquivos do `cron' individuais em `/var/spool/cron/crontabs' que executam comandos periodicamente.

23.11. cron ----------O `cron' um daemon que permite o agendamento da execuo de um comando/programa para um determinado dia/ms/ano/hora. muito usado em tarefas de arquivamento de logs, checagem da integridade do sistema e execuo de programas/comandos em horrios determinados. As tarefas so definidas no arquivo `/etc/crontab' e por arquivos individuais de usurios em `/var/spool/cron/crontabs/[usurio]' (criados atravs do programa `crontab'). Adicionalmente a distribuio `Debian' utiliza os arquivos no diretrio `/etc/cron.d' como uma extenso para o `/etc/crontab'. Para agendar uma nova tarefa, basta editar o arquivo `/etc/crontab' com qualquer editor de texto (como o `ae' e o `vi') e definir o ms/dia/hora que a tarefa ser executada. No necessrio reiniciar o daemon do `cron' porque ele verifica seus arquivos a cada minuto. Veja a seo Section 23.11.1, `O formato de um arquivo crontab' para entender o formato de arquivo `cron' usado no agendamento de tarefas. 23.11.1. O formato de um arquivo crontab ---------------------------------------O arquivo `/etc/crontab' tem o seguinte formato: 52 | | | | | | | | 18 | | | | | | | | 1 | | | | | | | | * * root run-parts --report /etc/cron.montly | | | | | | | \_Comando que ser executado | | | | | \_ UID que executar o comando | | | \_ Dia da semana (0-7) | \_ Ms (1-12)
-253-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

| | | | | \_ Dia do Ms (1-31) | | | \_ Hora | \_ Minuto Onde: Minuto Valor entre 0 e 59 Hora Valor entre 0 e 23 Dia do Ms Valor entre 0 e 31 Ms Valor entre 0 e 12 (identificando os meses de Janeiro a Dezembro) Dia da Semana Valor entre 0 e 7 (identificando os dias de Domingo a Sbado). Note que tanto 0 e 7 equivalem a Domingo. usurio O usurio especificado ser usado para executar o comando (o usurio dever existir). comando Comando que ser executado. Podem ser usados parmetros normais usados na linha de comando. Os campos do arquivo so separados por um ou mais espaos ou tabulaes. Um asterisco `*' pode ser usado nos campos de data e hora para especificar todo o intervalo disponvel. O hfen `-' serve para especificar perodos de execuo (incluindo a o nmero inicial/final). A vrgula serve para especificar lista de nmeros. Passos podem ser especificados atravs de uma `/'. Veja os exemplos no final desta seo. O arquivo gerado em `/var/spool/cron/crontabs/[usurio]' pelo `crontab' tem o mesmo formato do `/etc/crontab' exceto por no possuir o campo `usurio (UID)', pois o nome do arquivo j identifica o usurio no sistema. Para editar um arquivo de usurio em `/var/spool/cron/crontabs' ao invs de editar o `/etc/crontab' use `crontab -e', para listar as tarefas daquele usurio `crontab -l' e para apagar o arquivo de tarefas do usurio `crontab -r' (adicionalmente voc pode remover somente uma tarefa atravs do `crontab -e' e apagando a linha correspondente). OBS: No esquea de incluir uma linha em branco no final do arquivo, caso contrrio o ltimo comando no ser executado. O `cron' define o valor de algumas variveis automaticamente durante sua execuo; a varivel `SHELL' definida como `/bin/sh', `PATH' como `/usr/bin:/bin', `LOGNAME', `MAILTO' e `HOME' so definidas atravs do arquivo `/etc/passwd'. Os valores padres destas variveis podem ser substitudos especificando um novo valor nos arquivos do `cron'. Exemplos de um arquivo `/etc/crontab':

-254-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

SHELL=/bin/sh PATH=/sbin:/bin:/usr/sbin:/usr/bin 00 10 * * * root sync # Executa o comando sync todo o dia as 10:00 00 06 * * 1 root updatedb # Executa o comando updatedb toda segunda-feira as 06:00. 10,20,40 * * * * root runq # Executa o comando runq todos os dias e a toda a hora em 10, 20 e 40 minutos. */10 * * * * root fetchmail # Executa o comando fetchmail de 10 em 10 minutos todos os dias 15 0 25 12 * root echo "Feliz Natal"|mail john # Envia um e-mail as 0:15 todo o dia 25/12 para john desejando um feliz natal. 30 5 * * 1-6 root poff # Executa o comando poff automaticamente as 5:30 de segunda-feira a sbado.

23.12. at --------O `at' agenda tarefas de forma semelhante ao `cron' com uma interface que permite a utilizao de linguagem natural nos agendamentos. Sua principal aplicao no uso de tarefas que sejam disparadas somente uma vez. Uma caracterstica deste programa a execuo de aplicativos que tenham passado de seu horrio de execuo, muito til se o computador desligado com freqncia ou quando ocorre uma interrupo no fornecimento de energia. Para utilizar o `at', instale-o com o comando: `apt-get install at'. O prximo passo criar os arquivos `/etc/at.allow' e `at.deny'. Estes arquivos so organizados no formato de um usurio por linha. Durante o agendamento, verificado primeiro o arquivo `at.allow' (lista de quem pode executar comandos) e depois o `at.deny' (lista de quem NO pode executar comandos). Caso eles no existam, o agendamento de comandos permitido a todos os usurios. Abaixo seguem exemplos do agendamento atravs do comando `at': echo ls | at 10am today Executa as 10 da manha de hoje echo ls | at 10:05 today Executa as 10:05 da manha de hoje echo ls | at 10:05pm today Executa as 10:05 da noite de hoje echo ls | at 22:05 today Executa as 22:05 da noite de hoje echo ls | at 14:50 tomorrow Executa o comando amanh as 14:50 da tarde echo ls | at midnight Executa o comando a meia noite de hoje echo ls | at midnight tomorrow Executa o comando a meia noite de amanh echo ls | at noon Executa o comando de tarde (meio dia). at -f comandos.txt teatime Executa os comandos especificados no arquivo "comandos.txt" no horrio do caf da tarde (as 16:00 horas). at -f comandos.txt +3 minutes
-255-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Executa os comandos especificados no arquivo "comandos.txt" daqui a 3 minutos. Tambm pode ser especificado "hours" ou "days". at -f comandos.txt tomorrow +3 hours Executa os comandos especificados no arquivo "comandos.txt" daqui a 3 horas no dia de amanh. (se agora so 10:00, ela ser executada amanh as 13:00 da tarde). Todas as tarefas agendadas so armazenadas em arquivos dentro do diretrio `/var/spool/cron/atjobs'. A sintaxe de comandos para gerenciar as tarefas semelhante aos utilitrios do `lpd': Para ver as tarefas, digite `atq'. Para remover uma tarefa, use o comando `atrm' seguido do nmero da tarefa obtida pelo `atq'.

-------------------------------------------------------------------------------

24. Principais arquivos de configurao do diretrio `/etc' ----------------------------------------------------------Este captulo descreve a funo, parmetros e exemplos de utilizao de alguns arquivos/diretrios de configurao em `/etc'. Estes arquivos esto disponveis por padro na instalao bsica do `GNU/Linux', o que assegura um mximo de aproveitamento deste captulo. No sero descritos aqui arquivos de configurao especficos de servidores ou daemons (com exceo do `inetd').

24.1. Diretrio `/etc/alternatives' ----------------------------------Este diretrio contm links para diversos aplicativos padres utilizados pelo sistema. Dentre eles so encontrados links para o `editor' do sistema e o `xterm' padro usado pelo sistema. Por exemplo, se voc quiser usar o editor `jed' ao invs do `ae' ou `vi', remova o link `editor' com o comando `rm editor', localize o arquivo executvel do `jed' com `which jed' e crie um link para ele `ln -s /usr/bin/jed editor'. De agora em diante o editor padro usado pela maioria dos aplicativos ser o `jed'.

24.2. Arquivo `/etc/default/devpts' ----------------------------------Este arquivo contm algumas configuraes para os pseudo terminais em `/dev/pts'.

24.3. Arquivo `/etc/default/rcs' -------------------------------Contm variveis padres que alteram o comportamento de inicializao dos scripts em `/etc/rcS.d' Por exemplo, se quiser menos mensagens na inicializao do sistema, ajuste o valor da varivel `VERBOSE' para `no'.

-256-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

OBS: Somente modifique aquilo que tem certeza do que est fazendo, um valor modificado incorretamente poder causar falhas na segurana de sua rede ou no sistemas de arquivos do disco.

24.4. Arquivo `/etc/kbd/config' ------------------------------Este arquivo contm configuraes padres do pacote `kbd' para as fontes de tela e mapas de teclado usados pelo sistema. A fonte de tela especificada neste arquivo (as fontes disponveis no sistema esto localizadas em `/usr/share/consolefonts'). O arquivo do mapa de teclados pode ser copiado para o diretrio `/etc/kbd' com o nome `default.kmap' para que seja utilizado na inicializao do sistema ou escolhido interativamente atravs do utilitrio `kbdconfig'.

24.5. Diretrio `/etc/menu-methods' ----------------------------------Este diretrio contm uma lista de arquivos que so executados pelo programa `update-menu' para criar os menus dos programas.

24.6. Arquivo `/etc/menu-methods/menu-translate' -----------------------------------------------Este arquivo permite fazer a traduo de nomes de menus, identificao ou ttulos usados no ambiente grfico.

24.7. Arquivo `/etc/networks' ----------------------------Este local contm as configuraes das interfaces (placas) de rede do sistema e outras opes teis para a configurao/segurana da rede.

24.8. Arquivo `/etc/network/interfaces' --------------------------------------Este o arquivo de configurao usado pelos programas `ifup' e `ifdown', respectivamente para ativar e desativas as interfaces de rede. O que estes utilitrios fazem na realidade carregar os utilitrios `ifconfig' e `route' atravs dos argumentos passados do arquivo `/etc/network/interfaces', permitindo que o usurio iniciante configure uma interface de rede com mais facilidade. Abaixo um exemplo do arquivo `interfaces' o seguinte: iface eth0 inet static address 192.168.1.1 netmask 255.255.255.0
-257-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

network 192.168.1.0 broadcast 192.168.1.255 As interfaces e roteamentos so configurados na ordem que aparecem neste arquivo. Cada configurao de interface inicia com a palavra chave `iface'. A prxima palavra o nome da interface que deseja configurar (da mesma forma que utilizada pelos comandos `ifconfig' e `route'). Voc pode tambm usar `IP aliases' especificando `eth0:0' mas tenha certeza que a interface real (`eth0') inicializada antes. A prxima palavra especifica a familia de endereos da interface; Escolha `inet' para a rede TCP/IP, `ipx' para interfaces IPX e `IPv6' para interfaces configuradas com o protocolo IPV6. A palavra `static' especifica o mtodo que a interface ser configurada, neste caso uma interface com endereo esttico (fixo). Outros mtodos e seus parmetros so especificados abaixo (traduzido da pgina do arquivo `interfaces'): O mtodo _loopback_ usado para configurar a interface _loopback_ (lo) IPv4. O mtodo _static_ usado para configurar um endereo IPv4 fixo para a interface. As opes que podem ser usadas com o mtodos _static_ so as seguintes (opes marcadas com * no final so requeridas na configurao): address _endereo_ * Endereo IP da Interface de rede (por exemplo, 192.168.1.1). netmask _mscara_ * Mscara de rede da Interface de rede (por exemplo, 255.255.255.0). broadcast _endereo_ Endereo de Broadcast da interface (por exemplo, 192.168.1.255). network _endereo_ Endereo da rede (por exemplo, 192.168.0.0). gateway _endereo_ Endereo do gateway padro (por exemplo, 192.168.1.10). O gateway o endereo do computador responsvel por conectar o seu computador a outra rede. Use somente se for necessrio em sua rede. O mtodo _dhcp_ Este mtodo usado para obter os parmetros de configurao atravs de um servidor DHCP da rede atravs das ferramentas: `dhclient', `pump' (somente Kernels 2.2.x) ou `dpcpcp' (somente kernels 2.0.x e 2.2.x) hostname _nome_ Nome da estao de trabalho que ser requisitado. (pump, dhcpcd) leasehours _leasttime_ Lease time preferida em horas (pump) leasetime _leasetime_ Lease time preferida em segundos (dhcpcd) vendor _vendedor_
-258-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Identificador do vendedor (dhcpcd) cliente _identificao_ Identificao do cliente (dhcpcd) O mtodo _bootp_ Este mtodo pode ser usado para obter um endereo via `bootp': bootfile `arquivo' Diz ao servidor para utilizar `arquivo' como arquivo de inicializao server _endereo_ Especifica o endereo do servidor `bootp'. hwaddr _endereo_ Usa _endereo_ como endereo de hardware no lugar do endereo original. Algumas opes se aplicam a todas as interfaces e so as seguintes: noauto No configura automaticamente a interface quando o `ifup' ou `ifdown' so executados com a opo `-a' (normalmente usada durante a inicializao ou desligamento do sistema). pre-up `comando' Executa o `comando' antes da inicializao da interface. up `comando' Executa o `comando' aps a interface ser iniciada. down `comando' Executa o `comando' antes de desativar a interface. pre-down `comando' Executa o `comando' aps desativar a interface. Os comandos que so executados atravs das opes _up_, _pre-up_ e _down_ podem aparecer vrias vezes na mesma interface, eles so executados na seqncia que aparecem. Note que se um dos comandos falharem, nenhum dos outros ser executado. Voc pode ter certeza que os prximos comandos sero executados adicionando `|| true' ao final da linha de comando.

24.9. Arquivo `/etc/networks/options' ------------------------------------Este arquivo contm opes que sero aplicadas as interfaces de rede durante a inicializao do sistema. Este arquivo lido pelo script de inicializao `/etc/init.d/network' que verifica os valores e aplica as modificaes apropriadas no kernel.

24.10. Arquivo `/etc/networks/spoof-protect' -------------------------------------------Permite especificar os endereos IPs locais e interfaces de rede que sero protegidas contra a tcnica de IP spoofing (falsificao de endereo IP).

24.11. Diretrio `/etc/pam.d' ----------------------------Este diretrio possui arquivos de configurao de diversos mdulos PAM
-259-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

existentes em seu sistema.

24.12. Diretrio `/etc/ppp' --------------------------Contm arquivos de configurao usados pelo daemon pppd para fazer uma conexo com uma rede PPP externa, criados manualmente ou atravs do `pppconfig'.

24.13. Diretrio `/etc/security' -------------------------------Este diretrio contm arquivos para controle de segurana e limites que sero aplicados aos usurios do sistema. O funcionamento de muitos dos arquivos deste diretrio depende de modificaes nos arquivos em `/etc/pam.d' para habilitar as funes de controle, acesso e restries.

24.14. Arquivo `/etc/security/access.conf' ----------------------------------------- lido no momento do login do usurio e permite definir quem ter acesso ao sistema e de onde tem permisso de acessar sua conta. O formato deste arquivo so 3 campos separados por `:', cada linha contendo uma regra de acesso. O primeiro campo deve conter o caracter `+' ou `-' para definir se aquela regra permitir (+) ou bloquear(-) o acesso do usurio. O segundo campo deve conter uma lista de logins, grupos, usurio@computador ou a palavra `ALL' (confere com tudo) e `EXCEPT' (excesso). O terceiro campo deve conter uma lista de terminais tty (para logins locais), nomes de computadores, nomes de domnios (iniciando com um `.'), endereo IP de computadores ou endereo IP de redes (finalizando com `.'). Tambm pode ser usada a palavra `ALL', `LOCAL' e `EXCEPT' (atinge somente mquinas locais conhecidas pelo sistema). Abaixo um exemplo do `access.conf' # Somente permite o root entrar em tty1 # -:ALL EXCEPT root:tty1 # bloqueia o logins do console a todos exceto whell, shutdown e sync. # -:ALL EXCEPT wheel shutdown sync:console # Bloqueia logins remotos de contas privilegiadas (grupo wheel). # -:wheel:ALL EXCEPT LOCAL .win.tue.nl # Algumas contas no tem permisso de acessar o sistema de nenhum lugar:
-260-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

# -:wsbscaro wsbsecr wsbspac wsbsym wscosor wstaiwde:ALL # Todas as outras contas que no se encaixam nas regras acima, podem acessar de # qualquer lugar

24.15. Arquivo `/etc/security/limits.conf' -----------------------------------------Defini limites de uso dos recursos do sistema para cada usurio ou grupos de usurios. Os recursos so descritos em linhas da seguinte forma: #<dominio> <tipo> <item> <valor>

O `domnio' pode ser um nome de usurio, um grupo (especificado como `@grupo') ou o curinga `*'. O `tipo' pode ser `soft' para o limite mnimos e `hard' para o limite mximo. O campo `item' pode ser um dos seguintes: * `core' - limita o tamanho do arquivo core (KB) * `data' - tamanho mximo de dados (KB) * `fsize' - Tamanho mximo de arquivo (KB) * `memlock' - Espao mximo de endereos bloqueados na memria (KB) * `nofile' - Nmero mximo de arquivos abertos * `rss' - Tamanho mximo dos programas residentes (KB) * `stack' - Tamanho mximo de pilha (KB) * `cpu' - Tempo mximo usado na CPU (MIN) * `nproc' - Nmero mximo de processos * `as' - Limite de espao de endereos * `maxlogins' - Nmero mximo de logins deste usurio * `priority' - Prioridade que os programas deste usurio sero executados Abaixo um exemplo de arquivo `/etc/security/limits.conf': #<dominio> * * @student @faculty @faculty ftp @student <tipo> soft hard hard soft hard hard <item> core rss nproc nproc nproc nproc maxlogins <valor> 0 10000 20 20 50 0 4

24.16. Arquivo `/etc/crontab' ----------------------------Arquivo que contm a programao de programas que sero executados em horrios/datas programadas. Veja Section 23.11, `cron' para mais detalhes sobre o formato deste arquivo e outras opes.

-261-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

24.17. Arquivo `/etc/fstab' --------------------------Contm detalhes para a montagem dos sistemas de arquivos do sistema. Veja Section 5.13.1, `fstab' para detalhes sobre o formato deste arquivo.

24.18. Arquivo `/etc/group' --------------------------Lista de grupos existentes no sistema. Veja Section 12.10, `Adicionando o usurio a um grupo extra' para mais detalhes sobre o formato deste arquivo.

24.19. Arquivo `/etc/gshadow' ----------------------------Senhas ocultas dos grupos existentes no sistema (somente o usurio `root' pode ter acesso a elas). Use o utilitrio `shadowconfig' para ativar/desativar o suporte a senhas ocultas.

24.20. Arquivo `/etc/host.conf' ------------------------------Veja Section 15.6.2.2, `/etc/host.conf'.

24.21. Arquivo `/etc/hostname' -----------------------------Arquivo lido pelo utilitrio `hostname' para definir o nome de sua estao de trabalho.

24.22. Arquivo `/etc/hosts' --------------------------Banco de dados DNS esttico que mapeia o nome ao endereo IP da estao de trabalho (ou vice versa). Veja Section 15.6.2.3, `/etc/hosts' para mais detalhes sobre o formato deste arquivo.

24.23. Arquivo `/etc/hosts.allow' --------------------------------Controle de acesso do wrapper TCPD que permite o acesso de determinadas de determinados endereos/grupos aos servios da rede. Veja Section 15.8.3.1, `/etc/hosts.allow' para detalhes sobre o formato deste arquivo.

24.24. Arquivo `/etc/hosts.deny' --------------------------------262-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Controle de acesso do wrapper TCPD que bloqueia o acesso de determinados endereos/grupos aos servios da rede. Este arquivo somente lido caso o `/etc/hosts.allow' no tenha permitido acesso aos servios que contm. Um valor padro razoavelmente seguro que pode ser usado neste arquivo que serve para a maioria dos usurios domsticos : ALL: ALL caso o acesso ao servio no tenha sido bloqueado no `hosts.deny', o acesso ao servio permitido. Veja Section 15.8.3.2, `/etc/hosts.deny' para detalhes sobre o formato deste arquivo.

24.25. Arquivo `/etc/hosts.equiv' --------------------------------Veja Section 15.8.3.3, `/etc/hosts.equiv e /etc/shosts.equiv'.

24.26. Arquivo `/etc/inetd.conf' -------------------------------Veja Section 15.7.2.1, `/etc/inetd.conf'.

24.27. Arquivo `/etc/inittab' ----------------------------Este o arquivo de configurao utilizado pelo programa `init' para a inicializao do sistema. Para mais detalhes sobre o formato deste arquivo, consulte a pgina de manual do _inittab_.

24.28. Arquivo `/etc/inputrc' ----------------------------Este arquivo contm parmetros para a configurao do teclado. Veja o final da seo Section 22.1.1, `Acentuao em modo Texto' e a pgina de manual do _inputrc_ para mais detalhes.

24.29. Arquivo `/etc/isapnp.conf' --------------------------------Gerado pelo utilitrio `pnpdump' e utilizado pelo utilitrio `isapnp' para configurar os recursos de hardware dos dispositivos Plug-and-Play no `GNU/Linux'.

24.30. Arquivo `/etc/isapnp.gone' --------------------------------Contm uma lista de endereos reservados que no devero ser usados
-263-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

pelo `isapnp'.

24.31. Arquivo `/etc/issue' --------------------------Contm um texto ou mensagem que ser mostrada antes do login do sistema.

24.32. Arquivo `/etc/issue.net' ------------------------------Mesma utilidade do `/etc/issue' mas mostrado antes do login de uma seo `telnet'. Outra diferena que este arquivo aceita os seguintes tipos de variveis: * `%t' - Mostra o terminal tty atual. * `%h' - Mostra o nome de domnio completamente qualificado (FQDN). * `%D' - Mostra o nome do domnio NIS. * `%d' - Mostra a data e hora atual. * `%s' - Mostra o nome do Sistema Operacional. * `%m' - Mostra o tipo de hardware do computador. * `%r' - Mostra a reviso do Sistema Operacional. * `%v' - Mostra a verso do Sistema Operacional. * `%%' - Mostra um simples sinal de porcentagem (%).

24.33. Arquivo `/etc/lilo.conf' ------------------------------Arquivo de configurao do gerenciador de partida `lilo'. Veja Section 6.1, `LILO' e Section 6.1.3, `Um exemplo do arquivo de configurao lilo.conf'.

24.34. Arquivo `/etc/login.defs' -------------------------------Definies de configurao para o pacote login

24.35. Arquivo `/etc/modules' ----------------------------Veja Section 16.12.1, `/etc/modules'.

24.36. Arquivo `/etc/modules.conf' ---------------------------------Veja Section 16.12.2, `modules.conf'.

24.37. Arquivo `/etc/motd' -------------------------Mostra um texto ou mensagem aps o usurio se logar com sucesso no
-264-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

sistema. Tambm usado pelo telnet, ftp, e outros servidores que requerem autenticao do usurio (nome e senha).

24.38. Arquivo `/etc/mtab' -------------------------Lista os sistemas de arquivos montados atualmente no sistema. funo idntica ao `/proc/mounts'. Sua

24.39. Arquivo `/etc/networks' -----------------------------Veja Section 15.6.2.4, `/etc/networks'.

24.40. Arquivo `/etc/passwd' --------------------------- o arquivo mais cobiado por Hackers porque contm os dados pessoais do usurio como o login, uid, telefone e senha (caso seu sistema esteja usando senhas ocultas, a senha ter um `*' no lugar e as senhas reais estaro armazenadas no arquivo `/etc/shadow').

24.41. Arquivo `/etc/printcap' -----------------------------Banco de dados de configurao da impressora, usado por daemons de impresso como o `lpr' e `lprng'.

24.42. Arquivo `/etc/protocols' ------------------------------Veja Section 15.9.2, `/etc/protocols'.

24.43. Arquivo `/etc/resolv.conf' --------------------------------Veja Section 15.6.2.1, `/etc/resolv.conf'.

24.44. Arquivo `/etc/serial.conf' --------------------------------Configuraes das portas seriais do sistema. Veja a pgina de manual do _serial.conf_ e a pgina de manual do utilitrio `setserial' para detalhes de como configurar adequadamente a taxa de transmisso serial conforme seu dispositivo.

24.45. Arquivo `/etc/services' ------------------------------

-265-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Veja Section 15.9.1, `/etc/services'.

24.46. Arquivo `/etc/shadow' ---------------------------Este arquivo armazena as senhas criptografadas caso estiver usando o recurso de senhas ocultas. Este arquivo somente pode ser lido pelo usurio `root'.

24.47. Arquivo `/etc/shells' ---------------------------Contm uma lista de interpretadores de comando (shells) vlidos no sistema.

24.48. Arquivo `/etc/syslog.conf' --------------------------------Contm configuraes para definir o que ser registrado nos arquivos de log em `/var/log' do sistema. Veja a pgina de manual _syslog.conf_ e dos programas `klog' e `syslogd' para entender o formato usado neste arquivo.

24.49. Arquivo `/etc/timezone' -----------------------------Contm a sua localizao para clculo correto do seu fuso-horrio local.

-------------------------------------------------------------------------------

25. Conectando seu computador a Internet ---------------------------------------Este captulo descreve como configurar seu sistema para se conectar a Internet, navegar, enviar/receber mensagens, etc.

25.1. Conectando-se a Internet -----------------------------Conectar-se a Internet atravs da `Debian' fcil, e todo o trabalho de configurao pode ser feito atravs do programa `pppconfig' ou modificando manualmente os arquivos em `/etc/ppp'. Para criar uma conexo internet atravs do `pppconfig', entre como usurio root no sistema, digite `pppconfig' e siga os passos de configurao (esta configurao serve para usurios domsticos e assume que voc possui o kernel com suporte a PPP): 1. No primeiro menu, escolha a opo `Create' para criar uma nova conexo. As outras opes disponveis so `Change' para
-266-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

modificar uma conexo a Internet criada anteriormente, `Delete' para apagar uma conexo. A opo `Quit' sai do programa. 2. Agora o sistema perguntar qual ser o nome da conexo que ser criada. O nome `provider' o padro, e ser usado caso digite `pon' para iniciar uma conexo internet sem nenhum argumento. O prximo passo especificar como os servidores de nomes sero acessados. Escolha `Static' se no tiver nenhum tipo de rede local ou `None' para usar os servidores especificados no arquivo `/etc/resolv.conf'. Aperte a tecla `TAB' e tecle `ENTER' para seguir para o prximo passo. 4. Agora digite o endereo do servidor DNS especificado pelo seu provedor de acesso. Um servidor DNS converte os nomes como `www.blablabla.com.br' para o endereo IP correspondente para que seu computador possa fazer conexo. Tecle `ENTER' para seguir para o prximo passo. 5. Voc pode digitar um endereo de um segundo computador que ser usado na resoluo de nomes DNS. Siga as instrues anteriores caso tiver um segundo servidor de nomes ou `ENTER' para continuar. Agora voc precisar especificar qual o mtodo de autenticao usado pelo seu provedor de acesso. O _Password Autentication Protocol_ usado pela maioria dos provedores de acesso. Desta forma escolha a opo `PAP' Agora entre com o seu login no provedor de acesso, ou seja, o nome para acesso ao sistema que escolheu no momento que fez sua assinatura. Agora especifique a sua senha. O prximo passo ser especificar a taxa de transmisso da porta serial do micro. O valor de 115200 deve funcionar com todas as configuraes mais recentes. Uma configurao serial DTE detalhada pode ser feita com a ferramenta `setserial'. 10. Agora ser necessrio selecionar o modo de discagem usado pelo seu fax-modem. Escolha `tone' para linha digital e `pulse' se possuir uma linha telefnica analgica. Pressione `TAB' e tecle `ENTER' para prosseguir. 11. Agora digite o nmero do telefone para fazer conexo com o seu provedor de acesso. O prximo passo ser a identificao do seu fax-modem, escolha `YES' para que seja utilizada a auto-deteco ou `NO' para especificar a localizao do seu fax-modem manualmente.
-267-

3.

6.

7.

8. 9.

12.

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

13.

Se voc quiser especificar mais detalhes sobre sua configurao, como strings de discagem, tempo de desconexo, auto-discagem, etc., faa isto atravs do menu `Advanced'. Escolha a opo `Finished' para salvar a sua configurao e retornar ao menu principal. Escolha a opo `Quit' para sair do programa.

Pronto! todos os passos para voc se conectar a Internet esto concludos, basta digitar `pon' para se conectar e `poff' para se desconectar da Internet. Caso tenha criado uma conexo com o nome diferente de `provider' voc ter que especifica-la no comando `pon' (por exemplo, `pon provedor2'). A conexo pode ser monitorada atravs do comando `plog' e os pacotes enviados/recebidos atravs do `pppconfig'. Para uma navegao mais segura, recomendvel que leia e compreenda alguns tens que podem aumentar consideravelmente a segurana do seu sistema em Section 15.8, `Segurana da Rede e controle de Acesso', Section 15.8.3.1, `/etc/hosts.allow', Section 15.8.3.2, `/etc/hosts.deny'. A seo Section 15.6.2.1, `/etc/resolv.conf' pode ser tambm til.

25.2. Navegando na Internet --------------------------Existem diversos tipos de navegadores web para `GNU/Linux' e a escolha depende dos recursos que pretende utilizar (e do poder de processamento de seu computador). Para navegar na Internet com muitos recursos, voc pode usar o navegador `Netscape Navigator', ele suporta plug-ins, java, flash, etc. Voc tambm tem a escolha do `Mozilla' que inspirou a criao do `Netscape'. O `Arena' uma boa alternativa para aqueles que desejam um navegador em modo grfico, mas eles no tem suporte a Java e Frames. Os usurios e administradores de servidores que operam em modo texto podem optar pelo `Lynx'.

25.3. Recebimento de E-Mails atravs do `fetchmail' -------------------------------------------------- o programa mais tradicional no servios _pop3_, _imap_, _pop2_, mensagens de seu servidor _pop3_ arquivos de e-mails dos usurios recebimento de mensagens atravs dos etc. no `GNU/Linux'. Ele pega as e as entrega ao MDA local ou nos do sistema em `/var/mail'

Todo o funcionamento do `fetchmail' controlado pelo arquivo `~/.fetchmailrc'. Segue abaixo um modelo padro deste arquivo: poll pop3.seuprovedor.com.br protocol pop3
-268-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

user gleydson password sua_senha keep fetchall is gleydson here Este arquivo lido pelo `fetchmail' na ordem que foi escrito. Veja a explicao abaixo sobre o arquivo exemplo: * A palavra `poll' especifica o servidor de onde suas mensagens sero baixadas, o servidor especificado no exemplo `pop3.seuprovedor.com.bt'. A palavra `skip' pode ser especificada, mas as mensagens no servidor especificado por `skip' somente sero baixadas caso o nome do servidor de mensagens for especificado atravs da linha de comando do `fetchmail'. * `protocol' o protocolo que ser usado para a transferncia de mensagens do servidor. O `fetchmail' utilizar a auto-deteco de protocolo caso este no seja especificado. * `user' define o nome do usurio no servidor pop3.seuprovedor.com.br, que no exemplo acima `gleydson'. * `password' define a senha do usurio `gleydson' (acima), especificada como `sua_senha' no exemplo. * `keep' opcional e serve para no apagar as mensagens do servidor aps baixa-las (til para testes e acesso a uma nica conta de e-mail atravs de vrios locais, como na empresa e sua casa por exemplo). * `fetchall' baixa todas as mensagens do provedor marcadas como lidas e no lidas. * `is gleydson here' um modo de especificar que as mensagens obtidas de `pop3.seuprovedor.com.br' do usurio `gleydson' com a senha `sua_senha' sero entregues para o usurio local `gleydson' no diretrio `/var/mail/gleydson'. As palavras `is' e `here' so completamente ignoradas pelo `fetchmail', servem somente para dar um tom de linguagem natural na configurao do programa e da mesma forma facilitar a compreenso da configurao. Se possuir vrias contas no servidor `pop3.seuprovedor.com.br', no necessrio repetir toda a configurao para cada conta, ao invs disso especifique somente os outros usurios do mesmo servidor: poll pop3.seuprovedor.com.br protocol pop3 user gleydson password sua_senha keep fetchall is gleydson here user conta2 password sua_senha2 fetchall is gleydson here user conta3 password sua_senha3 fetchall is gleydson here Note que todos os e-mails das contas `gleydson', `conta2' e `conta3' do servidor de mensagens `pop3.seuprovedor.com.br' so entregues ao usurio local `gleydson' (arquivo `/var/mail/gleydson'). Agora voc pode usar um programa MUA como o `mutt' ou `pine' para ler localmente as mensagens. O armazenamento de mensagens no diretrio `/var/mail' preferido pois permite a utilizao de programas de notificao de novos e-mais como o `comsat', `mailleds', `biff', etc. Tambm possvel utilizar um processador de mensagens ao invs do MTA para a entrega de mensagens. O programa `procmail' um exemplo de processador de mensagens rpido e funcional que pode separar as mensagens em arquivos de acordo com sua origem, destino, assunto, enviar respostas automticas, listas de discusso, envio de arquivos atravs de requisio, etc. Veja Section 25.3.1, `Processamento de mensagens atravs do procmail' para detalhes.

-269-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Para mais detalhes sobre outras opes especficas de outros protocolos, checagem de mensagens, criptografia, etc, veja a pgina de manual do `fetchmail'. 25.3.1. Processamento de mensagens atravs do procmail -----------------------------------------------------O processamento de mensagens pode ser usado para inmeras finalidades, dentre elas a mais comum separar uma mensagem em arquivos/diretrios de acordo com sua origem, prioridade, assuntos, destinatrio, contedo, etc., programar auto-respostas, programa de frias, servidor de arquivos, listas de discusso, etc. O `procmail' um programa que rene estas funes e permitem muito mais, dependendo da habilidades e conhecimento das ferramentas `GNU/Linux' para saber integra-las corretamente. Toda a operao do `procmail' controlada pelo arquivo `/etc/procmailrc' e `~/.procmailrc'. Abaixo um modelo do arquivo `~/.procmailrc' usado para enviar todas as mensagens contendo a palavra `GNU/Linux' no assunto para o arquivo `mensagens-linux': PATH=/usr/bin:/bin:/usr/local/bin: MAILDIR=$HOME/Mail DEFAULT=$MAILDIR/mbox LOGFILE=$MAILDIR/log :0: * ^Subject:.*Linux mensagens-linux A varivel de ambiente `MAILDIR' especifica o diretrio que sero armazenadas as mensagens e logs das operaes do `procmail'. A varivel `DEFAULT' especifica a caixa de correio padro onde todas as mensagens que no se encaixam nas descries do filtro do `procmailrc' sero enviadas. A varivel `LOGFILE' especifica o arquivo que registrar todas as operaes realizadas durante o processamento de mensagens do `procmail'. O arquivo `mensagens-linux' criado dentro do diretrio especificado por `MAILDIR'. Para que o `procmail' entre em ao toda vez que as mensagens forem baixadas via `fetchmail', preciso modificar o arquivo `.fechmailrc' e incluir a linha `mda /usr/bin/procmail -d %T' no final do arquivo e retirar as linhas `is [usuriolocal] here' para que o processamento das mensagens seja feita pelo MDA local (neste caso, o `procmail'). Se quiser que o `procmail' seja executado pelo MDA local, basta criar um arquivo `~/.forward' no diretrio do usurio e incluir a linha `exec /usr/bin/procmail' (note que em algumas implementaes do `exim', o `procmail' executado automaticamente caso um arquivo `~/.procmailrc' seja encontrado, caso contrrio ser necessrio adicionar a linha "/usr/bin/procmail" ao arquivo `~/.forward' (somente `exim'). Para mais detalhes, veja a pgina de manual do `procmail', `procmailrc' e HOWTOs relacionados com e-mails no `GNU/Linux'.
-270-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

-------------------------------------------------------------------------------

26. X Window (ambiente grfico) ------------------------------Este captulo do guia traz explicaes sobre o ambiente grfico X Window System.

26.1. O que X Window? ---------------------- um sistema grfico de janelas que roda em uma grande faixa de computadores, mquinas grficas e diferentes tipos de mquinas e plataformas Unix. Pode tanto ser executado em mquinas locais como remotas atravs de conexo em rede.

26.2. A organizao do ambiente grfico X Window -----------------------------------------------Em geral o ambiente grfico X Window dividido da seguinte forma: * `O Servidor X' - o programa que controla a exibio dos grficos na tela, mouse e teclado. Ele se comunica com os programas cliente atravs de diversos mtodos de comunicao. O servidor X pode ser executado na mesma mquina que o programa cliente esta sendo executado de forma transparente ou atravs de uma mquina remota na rede. * `O gerenciador de Janelas' - o programa que controla a aparncia da aplicao. Os gerenciadores de janelas (window managers) so programas que atuam entre o servidor X e a aplicao. Voc pode alternar de um gerenciador para outro sem fechar seus aplicativos. Existem vrios tipos de gerenciadores de janelas disponveis no mercado entre os mais conhecidos posso citar o `Window Maker (feito por um Brasileiro)', o `After Step', `Gnome', `KDE', `twm' (este vem por padro quando o servidor X instalado), `Enlightenment', `IceWm', etc. A escolha do seu gerenciador de janelas pessoal, depende muito do gosto de cada pessoa e dos recursos que deseja utilizar. * `A aplicao cliente' - o programa sendo executado. Esta organizao do ambiente grfico X traz grandes vantagens de gerenciamento e recursos no ambiente grfico UNIX, uma vez que tem estes recursos voc pode executar seus programas em computadores remotos, mudar totalmente a aparncia de um programa sem ter que fecha-lo (atravs da mudana do gerenciador de janelas), etc.

-271-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

26.3. Iniciando o X ------------------O sistema grfico X pode ser iniciado de duas maneiras: * `Automtica' - Usando o programa `xdm' que um programa que roda no ambiente grfico X e apresenta uma tela pedindo nome e senha para entrar no sistema (login). Aps entrar no sistema, o X executar um dos gerenciadores de janelas configurados. * `Manual' - Atravs do comando `startx', ou `xinit' (note que o `startx' e `xstart' so scripts que fazem uma configurao completa do ambiente e as vezes tambm a segurana antes de executar o `xinit') . Neste caso o usurio deve entrar com seu nome e senha para entrar no modo texto e ento executar um dos comandos acima. Aps executar um dos comandos acima, o servidor X ser iniciado e executar um dos gerenciadores de janelas configurados no sistema.

26.4. Servidor X ---------------Como dito acima, o servidor X controla o teclado, mouse e a exibio dos grficos em sua tela. Para ser executado, precisa ser configurado atravs do arquivo `/etc/X11/XF86Config' ou usando o utilitrio `xf86config' (modo texto). A finalizao do servidor X feita atravs do pressionamento simultneo das teclas `CTRL', `ALT', `Back Space'. O servidor X imediatamente terminado e todos os gerenciadores de janelas e programas clientes so fechados. CUIDADO: Sempre utilize a opo de sada de seu gerenciador de janelas para encerrar normalmente uma seo X11 e salve os trabalhos que estiver fazendo antes de finalizar uma seo X11. A finalizao do servidor X deve ser feita em caso de emergncia quando no se sabe o que fazer para sair de um gerenciador de janelas ou de um programa mal comportado. Recomendo fazer a leitura de Section 7.15, `Fechando um programa quando no se sabe como sair' caso estiver em dvidas de como finalizar um programa mal comportado ou que no sabe como sair.

-------------------------------------------------------------------------------

27. Como obter ajuda no sistema ------------------------------Dvidas so comuns durante maneiras de se obter ajuda O `GNU/Linux' um sistema imaginar fazer ou aprender aprendizado. Abaixo segue o uso do `GNU/Linux' e existem vrias e encontrar a resposta para algum problema. bem documentado, provavelmente tudo o que j esta disponvel para leitura e algumas formas teis para encontrar a
-272-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

soluo de sua dvida, vale a pena conhece-las.

27.1. Pginas de Manual ----------------------As _pginas de manual_ acompanham quase todos os programas `GNU/Linux'. Elas trazem uma descrio bsica do comando/programa e detalhes sobre o funcionamento de opo. Uma pgina de manual visualizada na forma de texto nico com rolagem vertical. Tambm documenta parmetros usados em alguns arquivos de configurao. A utilizao da pgina de manual simples, digite: `man [_seo_] [_comando/arquivo_]' _onde:_ _seo_ a seo de manual que ser aberta, se omitido, mostra a _primeira_ seo sobre o comando encontrada (em ordem crescente). _comando/arquivo_ Comando/arquivo que deseja pesquisar. A navegao dentro das pginas de manual feita usando-se as teclas: * q - Sai da pgina de manual * PageDown ou f - Rola 25 linhas abaixo * PageUP ou w - Rola 25 linhas acima * SetaAcima ou k - Rola 1 linha acima * SetaAbaixo ou e - Rola 1 linha abaixo * r - Redesenha a tela (refresh) * p ou g - Inicio da pgina * h - Ajuda sobre as opes da pgina de manual * s - Salva a pgina de manual em formato texto no arquivo especificado (por exemplo: `/tmp/ls'). Cada seo da pgina de manual contm explicaes sobre uma determinada parte do sistema. As sees so organizadas em diretrios separados e localizadas no diretrio `/usr/man'. Os programas/arquivos so classificados nas seguintes sees: 1. 2. 3. Programas executveis ou comandos internos Chamadas do sistema (funes oferecidas pelo kernel) Chamadas de Bibliotecas (funes dentro de bibliotecas do sistema) Arquivos especiais (normalmente encontrados no diretrio `/dev') Formatos de arquivos e convenes (`/etc/inittab' por exemplo). Jogos Pacotes de macros e convenes (por exemplo `man') Comandos de Administrao do sistema (normalmente usados pelo root)

4. 5. 6. 7. 8.

-273-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

9.

Rotinas do kernel (no padres)

A documentao de um programa tambm pode ser encontrada em 2 ou mais categorias, como o caso do arquivo `host_access' que documentado na seo 3 (bibliotecas) e 5 (formatos de arquivo). Por este motivo necessrio digitar `man 5 hosts_access' para ler a pgina sobre o formato do arquivo, porque o comando `man' procura a pgina de manual nas sees em ordem crescente e a digitao do comando `man hosts_access' abriria a seo 3. As pginas de manual contm algumas regras para facilitar a compreenso do comando: * Texto Negrito - Deve ser digitado exatamente como mostrado * [bla bla bla] - Qualquer coisa dentro de `[]' so opcionais Exemplo, `man ls', `man 5 hosts_access'.

27.2. Info Pages ---------------Idntico as pginas de manual, mas usada navegao entre as pginas. Se pressionarmos <Enter> em cima de uma palavra destacada, a `info pages' nos levar a seo correspondente. A _info pages_ til quando sabemos o nome do comando e queremos saber para o que ele serve. Tambm traz explicaes detalhadas sobre uso, opes e comandos. Para usar a info pages, digite: `info [_comando/programa_]' Se o nome do _comando/programa_ no for digitado, a info pages mostra a lista de todos os manuais de _comandos/programas_ disponveis. A navegao da info pages feita atravs de nomes marcados com um "*" (hipertextos) que se pressionarmos <Enter>, nos levar at a seo correspondente. A _info pages_ possui algumas teclas de navegao teis: * q - Sai da info pages * ? - Mostra a tela de ajuda (que contm a lista completa de teclas de navegao e muitos outras opes). * n - Avana para a prxima pgina * p - Volta uma pgina * u - Sobre um nvel do contedo (at checar ao ndice de documentos) * m - Permite usar a localizao para encontrar uma pgina do `info'. Pressione `m', digite o comando e tecle <Enter> que ser levado automaticamente a pgina correspondente. * d - Volta ao ndice de documentos. Existem muitos outras teclas de navegao teis na info pages, mas estas so as mais usadas. Para mais detalhes, entre no programa `info' e pressione `?'. Exemplo, `info cvs'.

27.3. Help on line


-274-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

-----------------Ajuda rpida, til para sabermos quais opes podem ser usadas com o comando/programa. Quase todos os comandos/programas `GNU/Linux' oferecem este recurso que til para consultas rpidas (e quando no precisamos dos detalhes das pginas de manual). til quando se sabe o nome do programa mas deseja saber quais so as opes disponveis e para o que cada uma serve. Para acionar o _help on line_, digite: `[_comando_] --help' _comando_ - o comando/programa que desejamos ter uma explicao rpida. O Help on Line no funciona com comandos internos (embutidos no Bash), para ter uma ajuda rpida sobre os comandos internos, veja Section 27.4, `help'. Por exemplo, `ls --help'.

27.4. help ---------Ajuda rpida, til para saber que opes podem ser usadas com os _comandos internos_ do interpretador de comandos. O comando `help' somente mostra a ajuda para comandos internos, para ter uma ajuda similar para comandos externos, veja Section 27.3, `Help on line'. Para usar o `help' digite: `help [_comando_]' Por exemplo, `help echo', `help exit'

27.5. apropos/whatis -------------------Apropos procura por _programas/comandos_ atravs da descrio. til quando precisamos fazer alguma coisa mas no sabemos qual comando usar. Ele faz sua pesquisa nas pginas de manual existentes no sistema e lista os comandos/programas que atendem a consulta. Para usar o comando `apropos' digite: `apropos [_descrio_]' Digitando `apropos copy', ser mostrado todos os comandos que tem a palavra `copy' em sua descrio (provavelmente os programas que copiam arquivos, mas podem ser mostrados outros tambm).

27.6. locate -----------Localiza uma palavra na estrutura de arquivos/diretrios do sistema. til quando queremos localizar onde um comando ou programa se encontra (para copia-lo, curiosidade, etc). A pesquisa feita em um
-275-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

banco de dados construdo com o comando `updatedb' sendo feita a partir do diretrio raz `/' e sub-diretrios. Para fazer uma consulta com o `locate' usamos: `locate [_expresso_]' A _expresso_ deve ser o nome de um arquivo diretrio ou ambos que sero procurados na estrutura de diretrios do sistema. Como a consulta por um programa costuma localizar tambm sua pgina de manual, recomendvel usar _"pipes"_ para filtrar a sada do comando (para detalhes veja Section 14.5, `| (pipe)' . Por exemplo, para listar os diretrios que contm o nome "_cp_": `locate cp'. Agora mostrar somente arquivos binrios, usamos: `locate cp|grep bin/'

27.7. which ----------Localiza um programa na estrutura de diretrios do path. muito semelhante ao `locate', mas a busca feita no `path' do sistema e somente so mostrados arquivos executveis . `which [_programa/comando_]'.

27.8. Documentao de Programas ------------------------------So documentos instalados junto com os programas. Alguns programas tambm trazem o _aviso de copyright, changelogs, modelos, scripts, exemplos e FAQs (perguntas freqntes)_ junto com a documentao normal. Seu princpio o mesmo do How-to; documentar o programa. arquivos esto localizados em: `/usr/doc/`[_programa_]''. _Programa_ o nome do programa ou comando procurado. Estes

27.9. FAQ --------_FAQ_ um arquivo de perguntas e respostas mais freqntes sobre o programa. Os arquivos de FAQ esto localizados em: `/usr/doc/FAQ/`[_programa_]''. _Programa_ o nome do programa ou comando procurado.

27.10. RFC's ------------

-276-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

So textos que contm normas para a padronizao dos servios e protocolos da Internet (como a porta padro de operao, comandos que devem ser utilizados, respostas) e outros detalhes usados para padronizar o uso de servios Internet entre as mais diversas plataformas de computadores, com o objetivo de garantir a perfeita comunicao entre ambos. As RFC's podem ser obtidas de http://rfc.net. O arquivo de uma RFC segue o formato `RFC+Nmero', onde `RFC' descreve que o documento uma RFC e `Nmero' o seu nmero de identificao, como o documento `RFC1939' que documenta o funcionamento e comandos do protocolo POP3. Os arquivos de RFC's podem ser encontrados no pacote `doc-rfc' da distribuio `Debian' e baseadas . Segue abaixo o ndice principal do diretrio de RFC's que poder ser usado para localizar RFC's especficas de um determinado servio/assunto: 0001 PADRES OFICIAIS DO PROTOCOLO INTERNET. J. Reynolds, R. Braden. Maro 2000. (Formato: TXT=86139 bytes) (Deixa obsoleto RFC2500, RFC2400, RFC2300, RFC2200, RFC2000, RFC1920, RFC1880, RFC1800, RFC1780, RFC1720, RFC1610, RFC1600, RFC1540, RFC1500, RFC1410, RFC1360, RFC1280, RFC1250, RFC1200, RFC1140, RFC1130, RFC1100, RFC1083) (Tambm RFC2600) 0002 Nmeros designados. J. Reynolds, J. Postel. (Formato: TXT=458860 bytes) (Tambm RFC1700) 0003 Requerimentos do sistema. R. Braden. Outubro 1989. TXT=528939 bytes) (Tambm RFC1122, RFC1123) 0004 Requerimentos do Gateway. R. Braden, J. Postel. (Formato: TXT=125039 bytes) (Tambm RFC1009) 0005 Protocolo Internet. J. Postel. Setembro 1981. (Formato: TXT=241903 bytes) (Tambm RFC0791, RFC0950, RFC0919, RFC0922, RFC792, RFC1112) 0006 User Datagram Protocol. J. Postel. TXT=5896 bytes) (Tambm RFC0768) 0007 Transmission Control Protocol. J. Postel. September 1981. (Formato: TXT=172710 bytes) (Tambm RFC0793) 0008 Protocolo Telnet. J. Postel, J. Reynolds. Maio 1983. (Formato: TXT=44639 bytes) (Tambm RFC0854, RFC0855) 0009 File Transfer Protocol. J. Postel, J.
-277-

Outubro 1994.

(Formato:

Junho 1987.

Agosto 1980.

(Formato:

Reynolds.

Outubro 1985.

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

(Formato: TXT=148316 bytes) (Tambm RFC0959) 0010 SMTP Service Extensions. J. Klensin, N. Freed, M. Rose, E. Stefferud & D. Crocker. Novembro 1995. (Formato: TXT=23299 bytes) (Deixa obsoleto RFC1651) (Tambm RFC821, RFC1869) 0011 Standard for the format of ARPA Internet text messages. D. Crocker. 13-Ago-1982. (Formato: TXT=109200 bytes) (Deixa obsoleto RFC1653) (Tambm RFC0822) 0012 Network Time Protocol. D. Mills. TXT=193 bytes) (Tambm RFC1119) 0013 Domain Name System. P. Mockapetris. Novembro 1987. TXT=248726 bytes) (Tambm RFC1034, RFC1035) 0014 Mail Routing and the Domain System. C. Partridge. 1986. (Formato: TXT=18182 bytes) (Tambm RFC0974) 0015 Simple Network Management Protocol. Schoffstall, J. Davin. Maio 1990. (Tambm RFC1157) 0016 Structure of Management Information. M. Rose, K. McCloghrie. Maio 1990. (Formato: TXT=82279 bytes) (Deixa obsoleto RFC1065) (Tambm RFC1155) 0017 Management Information Base. K. McCloghrie, M. Rose. March 1991. (Formato: TXT=142158 bytes) (Deixa obsoleto RFC1158) (Tambm RFC1213) 0018 Exterior Gateway Protocol. D. Mills. TXT=63836 bytes) (Tambm RFC0904) 0019 NetBIOS Service Protocols. NetBIOS Working Group. Maro 1987. (Formato: TXT=319750 bytes) (Tambm RFC1001, RFC1002) 0020 Echo Protocol. J. Postel. bytes) (Tambm RFC0862) 0021 Discard Protocol. J. Postel. bytes) (Tambm RFC0863) 0022 Character Generator Protocol. J. Postel.
-278-

Setembro 1989.

(Formato:

(Formato:

Janeiro

J. Case, M. Fedor, M. (Formato: TXT=72876 bytes)

Abril 1984.

(Formato:

Maio 1983.

(Formato: TXT=1237

Maio 1983.

(Formato: TXT=1239

Maio 1983.

(Formato:

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

TXT=6842 bytes) (Tambm RFC0864) 0023 Quote of the Day Protocol. J. Postel. TXT=1676 bytes) (Tambm RFC0865) 0024 Active Users Protocol. J. Postel. TXT=2029 bytes) (Tambm RFC0866) 0025 Daytime Protocol. J. Postel. bytes) (Tambm RFC0867) 0026 Time Server Protocol. J. Postel. TXT=3024 bytes) (Tambm RFC0868) 0027 Binary Transmission Telnet Option. J. Postel, J. Reynolds. Maio 1983. (Formato: TXT=8965 bytes) (Tambm RFC0856) 0028 Echo Telnet Option. J. Postel, J. Reynolds. (Formato: TXT=10859 bytes) (Tambm RFC0857) 0029 Suppress Go Ahead Telnet Option. J. Postel, J. Reynolds. 1983. (Formato: TXT=3712 bytes) (Tambm RFC0858) 0030 Status Telnet Option. J. Postel, J. Reynolds. (Formato: TXT=4273 bytes) (Tambm RFC0859) 0031 Timing Mark Telnet Option. J. Postel, J. (Formato: TXT=7881 bytes) (Tambm RFC0860) 0032 Extended Options List Telnet Option. J. Postel, J. Reynolds. Maio 1983. (Formato: TXT=3068 bytes) (Tambm RFC0861) 0033 Trivial File Transfer Protocol. K. Sollins. (Formato: TXT=24599 bytes) (Tambm RFC1350) 0034 Routing Information Protocol. C. Hedrick. (Formato: TXT=91435 bytes) (Tambm RFC1058) 0035 ISO Transport Service on top of the TCP (Version: 3). M. D. Cass. Maio 1978. (Formato: TXT=30662 bytes) (Tambm RFC1006) 0036 Transmission of IP and ARP over FDDI Networks.
-279-

Maio 1983.

(Formato:

Maio 1983.

(Formato:

Maio 1983.

(Formato: TXT=2289

Maio 1983.

(Formato:

Maio 1983.

Maio

Maio 1983.

Reynolds.

Maio 1983.

Julho 1992.

Junho 1988.

Rose,

D.

Katz.

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Janeiro 1993. 0037

(Formato: TXT=22077 bytes) (Tambm RFC1390)

An Ethernet Address Resolution Protocol. David C. Plummer. Novembro 1982. (Formato: TXT=21556 bytes) (Tambm RFC0826) 0038 A Reverse Address Resolution Protocol. Ross Finlayson, Timothy Mann, Jeffrey Mogul, Marvin Theimer. Junho 1984. (Formato: TXT=9345 bytes) (Tambm RFC0903) 0039 Interface Message Processor: Especificaes para a Interconexo de um computador e um IMP (Revisado). BBN. Dezembro 1981. (fora de linha) 0040 Host Access Protocol specification. Bolt Beranek and Newman. Agosto 1993. (Formato: TXT=152740 bytes) (Deixa obsoleto RFC0907) (Tambm RFC1221) 0041 Standard for the transmission of IP datagrams over Ethernet networks. C. Hornig. Abril 1984. (Formato: TXT=5697 bytes) (Tambm RFC0894) 0042 Standard for the transmission of IP datagrams over experimental Ethernetnetworks. J. Postel. Abril 1984. (Formato: TXT=4985 bytes) (Tambm RFC0895) 0043 Standard for the transmission of IP datagrams over IEEE 802 networks. J. Postel, J.K. Reynolds. Agosto 1993. (Formato: TXT=34359 bytes) (Deixa obsoleto RFC0948) (Tambm RFC1042) 0044 DCN Local-Network Protocols. D.L. Mills. Agosto 1993. (Formato: TXT=65340 bytes) (Tambm RFC0891) 0045 Internet Protocol on Network System's HYPERchannel: Protocol Specification. K. Hardwick, J. Lekashman. Augosto 1993. (Formato: TXT=100836 bytes) (Tambm RFC1044) 0046 Transmitting IP traffic over ARCNET networks. D. Provan. Agosto 1993. (Formato: TXT=16565 bytes) (Deixa obsoleto RFC1051) (Tambm RFC1201) 0047 Nonstandard for transmission of IP datagrams over serial lines: SLIP. J.L. Romkey. Agosto 1993. (Formato: TXT=12578 bytes) (Tambm RFC1055) 0048 Standard for the transmission of IP datagrams over NetBIOS
-280-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

networks. L.J. McLaughlin. bytes) (Tambm RFC1088) 0049

Agosto 1993.

(Formato: TXT=5579

Standard for the transmission of 802.2 packets over IPX networks. L.J. McLaughlin. Agosto 1993. (Formato: TXT=7902 bytes) (Tambm RFC1132) 0050 Definitions of Managed Objects for the Ethernet-like Interface Types. F. Kastenholz. Julho 1994. (Formato: TXT=39008, bytes) (Deixa obsoleto RFC1623, RFC1398) (Tambm RFC1643) 0051 The Point-to-Point Protocol (PPP). W. Simpson, Editor. Julho 1994. (Formato: TXT=151158 bytes) (Deixa obsoleto: RFC1549) (Tambm RFC1661, RFC1662) 0052 The Transmission of IP Datagrams over the SMDS Service. D. Piscitello, J. Lawrence. Maro 1991. (Formato: TXT=24662 bytes) (Tambm RFC1209) 0053 Post Office Protocol - Version 3. J. Myers & M. Rose. Maio 1996. (Formato: TXT=47018 bytes) (Deixa Obsoleto: RFC1725) (Tambm RFC1939) 0054 OSPF Version 2. J. Moy. bytes) (Tambm RFC2328) 0055 Multiprotocol Interconnect over Frame Relay. C. Brown, A. Malis. Setembro 1998. (Formato: TXT=74671 bytes) (Deixa Obsoleto: RFC1490, RFC1294) (Tambm RFC2427) 0056 RIP Version 2. G. Malkin. Novembro 1998. (Formato: TXT=98462 bytes) (Atualiza RFC1723, RFC1388) (Tambm RFC2453) 0057 RIP Version 2 Protocol Applicability Statement. G. Malkin. Novembro 1994. (Formato: TXT=10236 bytes) (Tambm RFC1722) 0058 Structure of Management Information Version 2 (SMIv2. K. McCloghrie, D. Perkins, J. Schoenwaelder. Abril 1999. (Formato: TXT=89712 bytes) (Deixa Obsoleto RFC1902) (Tambm RFC2578, RFC2579) 0059 Remote Network Monitoring Management Information Base. S. Waldbusser. Maio 2000. (Formato: TXT=198676 bytes) (Deixa Obsoleto RFC1757) (Tambm RFC2819) Abril 1998. (Formato: TXT=447367

-281-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

-------------------------------------------------------------------------------

28. Apndice -----------Este captulo contm consideraes sobre o guia Foca GNU/Linux.

28.1. Sobre este guia --------------------Esta guia foi criado com a inteno de servir como referncia a usurios _Iniciantes_ e que esto tendo o primeiro contato com o sistema operacional `GNU/Linux', _Intermedirios_ que j conhecem o bsico sobre o funcionamento deste sistema operacional e j esto acostumados com os comandos, execuo de programas e diretrios, ou com referncia de consulta rpida. A verso que esta lendo agora foi gerada com as seguintes opes: * Descrio detalhada de comandos * Opes usadas em comandos e programas * Observaes * Exemplos para a melhor compreenso do assunto discutido. e contm o(s) nvel(is) de aprendizado (Iniciante, Intermedirio e Avanado): * Iniciante * Intermedirio O _Foca GNU/Linux_ atualizado freqentemente, por este motivo recomendo que preencha a ficha do aviso de atualizaes na pgina web em Pgina Oficial do guia Foca GNU/Linux (http://www.guiafoca.org) no fim da pgina principal. Aps preencher a ficha do aviso de atualizaes, eu te enviarei um e-mail sobre o lanamento de novas verses do guia e o que foi modificado, desta forma voc poder decidir em copia-la caso a nova verso contm modificaes que considera importantes. Verses diferentes deste guia podem ser geradas a partir do cdigo fonte SGML ou obtidas atravs da home page principal (para detalhes veja Section 28.4, `Onde encontrar a verso mais nova do guia?').

28.2. Sobre o Autor ------------------Gleydson Mazili da Silva Capixaba, nascido em Vila Velha, tem 25 anos. Amante de eletrnica desde criana, foi atraido para a informtica atravs da curiosidade em hardware, no demorando muito para recupera-los ou especificar corretamente dimensionamento e outras caractersticas. Se dedica ao sistema `Linux' desde 1997. Curioso por natureza e determinado a testar ferramentas a fundo avaliando pontos fortes e fracos de cada uma. Logo que iniciou em `Linux' passou a estudar exaustivamente aspectos tcnicos de distribuies e rede em `Linux'/`BSD' e largando de vez o Windows (que s usava para rodar mais de uma seo DOS e ter rede na mquina).
-282-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Entre coisas que gosta de fazer/implementar em `Linux': possibilidade de pesquisa e atualizao de conhecimento constante, nveis de segurana da informao (tanto fsico e lgico), firewalls, redes virtuais, integrao de sistemas, forense computacional, documentao de processos, desenvolvimento de ferramentas GPL para a comunidade, depurao, hacks baseados em sniffing para facilitar a vida dos outros, desenvolvimento de documentaes, etc. Um dos desenvolvedores da distribuio _Liberdade_, _CAETECT_, _Debian-BR_ e desenvolvedor oficial da distribuio _Debian_. Atuou como tradutor do LDP-BR, traduzindo vrios HOW-TOs importantes para a comunidade Linux Brasileira. um dos administradores do projeto CIPSGA, cuidando de uma infinidade de servios que o projeto oferece a comunidade que deseja estrutura para hospedar, fortalecer e manter projetos em software livre. Trabalhou para algumas empresas do Esprito Santo na implantao de sistemas em software livre e seu ltimo trabalho foi atuando como consultor em servidores GNU/Linux para a compania e processamento de dados de Campinas (IMA), sediada no CPQD. No concorda totalmente com certificaes, acreditando que a pessoa deva tem em mente procurar pontos fracos quando notar dificuldade na avaliao e melhora-los. Mesmo assim possui certificao LPI nvel 2 e um ISO9001 internacional, obtendo 2o lugar no ranking Brasileiro.

28.3. Referncias de auxlio ao desenvolvimento do guia ------------------------------------------------------* As sees sobre comandos/programas foram construdas aps uso, teste e observao das opes dos comandos/programas, help on line, pginas de manual, info pages e documentao tcnica do sistema. * How-tos do Linux (principalmente o _Networking Howto_, _Security-Howto_) ajudaram a formar a base de desenvolvimento do guia e desenvolver algumas sees (verses _Intermedirio_ e _Avanado_ somente). * Todos os exemplos e sees descritivas do guia so de minha autoria. * Manual de Instalao da _Debian GNU/Linux_ - Os captulos contendo materiais extrados do manual de instalao da Debian so muito teis e explicativos, seria desnecessrio reescrever um material como este. O texto claro e didaticamente organizado, o documento aborda detalhes tcnicos teis sobre hardwares em geral e o Linux ausentes nos manuais de outras distribuies Linux.

28.4. Onde encontrar a verso mais nova do guia? -----------------------------------------------Novas verses deste guia, avisos de lanamento, outros nveis de aprendizado (Iniciante, Intermedirio e Avanado), verses para outras distribuies Linux podem ser encontradas em: Pgina Oficial do guia Foca GNU/Linux (http://www.guiafoca.org).
-283-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

Se quiser receber notificaes de novas verses por E-Mail, envie uma mensagem para <gleydson@guiafoca.org> pedindo para ser includo na lista de atualizaes do guia ou preencha o formulrio encontrado no final da Home Page do guia (recomendado).

28.5. Colaboradores do Guia --------------------------Entre as principais colaboraes at a verso atual, posso citar as seguintes: * `Djalma Valois <djalma@cipsga.org.br>' - Pela recente hospedagem do Foca GNU/Linux. Estou muito feliz vendo o Foca GNU/Linux fazendo parte de um projeto to positivo como o CIPSGA para o crescimento e desenvolvimento do software livre nacional. * `Bakurih <bakurih@yahoo.com>' - Reviso inicial do documento. * `Eduardo Marcel Maan <macan@debian.org>' - Pela antiga hospedagem na pgina do metainfo. * `Michelle Ribeiro <michelle@cipsga.org.br>' - Por dispensar parte de seu atencioso tempo enviando revises e sugestes que esto melhorando bastante a qualidade do guia. Entre eles detalhes que passaram despercebidos durante muito tempo no guia e pgina principal. E tambm por cuidar do fonte do guia ;-) * `Augusto Campos <brain@matrix.com.br>' - Descrio sobre a distribuio `Suse' . * `Paulo Henrique Baptista de Oliveira <baptista@linuxsolutions.com.br>' - Pelo apoio moral oferecido durante os freqentes lanamentos do guia, acompanhamento e divulgao. * `Diego Abadan <diego@hipernet.ufsc.br>' - Envio de correes significativas, novos endereos de listas de discusso. * `Alexandre Costa <alebyte@bol.com.br>' - Envio de centenas de patches ortogrficos nas verses Iniciante e Intermedirio do guia que passaram desapercebidas durante vrias verses do guia... * `Christoph Simon <ciccio@prestonet.com.br>' - Pela pesquisa e a gigantesca coletnea de textos sobre o Linux enviada. Eles esto sendo muito teis tanto para mim quanto no desenvolvimento do guia. * `Gustavo Noronha <dockov@zaz.com.br>' - Vem enviando freqentes correes, contribuies construtivas ao desenvolvimento alm de apoio ao desenvolvimento do guia . Vale a pena destaca-lo por sua atual dedicao junto a distribuio Debian/GNU, sua traduo e a comunidade Open Source.
-284-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

* `Pedro Zorzenon Neto <pzn@debian.org>' - Envio de diversas atualizaes para o nvel Avanado, principalmente sobre o firewall iptables.

28.6. Marcas Registradas -----------------------Todas as marcas registradas citadas neste guia so propriedades de seus respectivos autores.

28.7. Futuras verses --------------------Estes so os materiais que pretendo adicionar em futuras verses do guia: * Acrescentar mais detalhes sobre o sistema grfico X-Window. * Entre outros tens que venho estudando para verificar se encaixam no perfil do guia. Esta uma futura implementao que venho estudando para acompanhar o crescimento do guia. Sugestes so bem vindas e podem ser enviadas para <gleydson@guiafoca.org>.

28.8. Chave Pblica PGP ----------------------Chaves PGP so usadas para criptografar arquivos, e-mails ou qualquer outra coisa que desejamos que somente uma pessoa tenha acesso. O PGP segue o padro de chave pblica/privada; a chave pblica distribuda a todos e a chave privada permanece na posse do criador para que ele seja o nico a ter acesso aos dados criptografados aps digitar a "frase de acesso" correta. Minha chave PGP segue abaixo, ela tambm pode ser encontrada em http://pgp.ai.mit.edu. Se voc deseja saber mais sobre o PGP, recomendo um excelente documento encontrado na seo `Apostilas' em http://www.cipsga.org.br/ -----BEGIN PGP PUBLIC KEY BLOCK----Version: GnuPG v1.0.6 (GNU/Linux) Comment: For info see http://www.gnupg.org mQGiBDl7WYgRBACsQNtIozvf8XId+xEpF2D1x7nqgFdJyn1QA2VzXg0/OZ9DewXj qr7ChEIoyyzAmxBSubE/jdtkAb9+2LsE9+OXgzJvBc4luYpv+HG2IXlMPujI9drO ubLlK6xqPiakBgqBTS74rp/ZEEAGQsr0sug7b8nsXHMk+spyGkjsU8pPWwCgltai 4vfmBDMZMqBYvUoksVxbaKcD/ApAMghgE53KAAKFtwXI0o7K1DJmdZBufCvGDbEB Y3MVS4BI+aXxoP5zQpEmQ5+lYOZ8RjPL9pNUJa9nOQtjf7Kiw/41BPDtlZXCeRR5 OcQTit0lYRCLGam7FZ22uliwh0h/3lpf4olMff3qeLqv1DECbo8Qsdn6yxynLihE OA9kA/9K1sqiIl/+gXM3/Sjz8EcrwQNklV3MoaETbDmukbXcOEUjdqfFr1xARM5W 8SKoVrWO5y1oa1e9XcQuK6g8c7KeJsK/GEWYiRwX2X2AqdBC2ZzVfJSmgpguZJHn ltMdYZhPwZaCsNPdQSlem3UrGupL0pbpT7PqkvyAHBH2itB9X7RKR2xleWRzb24g
-285-

C:\Documents and Settings\lima\My Documents\e-books\FOCA\focalinux12-lpi-txt\index.txt

quinta-feira, 12 de fevereiro de 2009 11:06

TWF6aW9saSBkYSBTaWx2YSAoQ2hhdmUgUEdQIFBlc3NvYWwpIDxnbGV5ZHNvbkBl c2NlbHNhbmV0LmNvbS5icj6IVgQTEQIAFgUCOXtZiAQLCgQDAxUDAgMWAgECF4AA CgkQpWvD35hbooFdwgCfQijPTW5VH+Cep1HIBvyuw9uMg7wAoI/RYW0tkjjnhrgH 8+Zqx6AgGlQ/iEYEEBECAAYFAjnlrPAACgkQoUSye+uc2tWZPgCfVgR4lbd8XPBm bjPupLzB3EYAPI8AoJomkfsgz+NuUZy1mD6pI1Ptc/fDiEYEEBECAAYFAjm4FfUA CgkQco65AkzGCoF34gCgsVcH4b3s6kfCtjD7iMMhkubnDnUAoL2UiorB3Z/m3f9A RZiRMhQUclMRiEYEEBECAAYFAjm4ITAACgkQt1anjIgqbEupXgCg1/NjvT562Hgt /ft5JETOf3yOFywAn1SmK3unyhMU5GU9d49MNM3fNgBtiEYEEBECAAYFAjnFWrYA CgkQORwuc54x+1t8VQCeMZTCla98rrI60EnlkAvb9AaScm4AnA4V795vcVlr3ix9 f6fcl5YGamKciEYEEBECAAYFAjvSF6sACgkQUZATEoypqPVQ7wCbBTRiSGGMzMTd KJotfRKf5aoUAr0AoIAX0oE5XEEFm7Ea0IQqG91T9TvXtDtHbGV5ZHNvbiBNYXpp b2xpIGRhIFNpbHZhIChEZXZlbG9wZXIpIDxnbGV5ZHNvbkBkZWJpYW4ub3JnPohX BBMRAgAXBQI7BR7fBQsHCgMEAxUDAgMWAgECF4AACgkQpWvD35hbooESRACcCliY yxR02KEBYs8cxKav9L0wlzwAn2Z9DWAbqi9Mv4fqPqZ7mViSMRbeiEYEEBECAAYF AjsauX0ACgkQt1anjIgqbEvBEACffJxYfK22YPQ8ZkcjIc85BCiPLuUAnRq1EE9i ukdUHPUo0vzHBeiN355miEYEEBECAAYFAjxEY28ACgkQGERS+iaKCE2fgwCeNGNV Mpa1EWgXF+Hj15gidVjaVCAAn187X6eATJAVzspveNSf/Ny1iuFnuQENBDl7WasQ BACxhBiSFOGa8tv7MOn0XVa6WCViBuQs9QJx2ZnMrx/KssRHMsNXnps+i+zVENqr 1Lz5zPpP7eWgrUy6B7/V9R4LV8nwHC1lZrR/1xyJ6G5j9RLSbYInZCLIAFUMlAar iTThMhvXM+Pf7SXPj+ivrP9EYPSLxqTs1K/dWAbrDK/QiwADBQP9Hgc3EOw+7luB /bXWssQp70bF9yvZLCGOgIE/rZIbOXumXkPlV7FTDgv+h47Bgcj2KDPEM98LUyxG GcJAmrC9gWH7mYEUFNn1bGD+qHRwJ7+xj45NXBJDOBbHzTDS8QhacCRGW1CvRVgP 8ycPDOv/hmGfAJEzqzUkSO1uBcPmmXSIRgQYEQIABgUCOXtZqwAKCRCla8PfmFui gQHnAJ4kDKHKvG9s9OjGV6RvszTDGE51igCcCZn0rO/Si0ek97bTCIusQzJF/pA= =bvnT -----END PGP PUBLIC KEY BLOCK-----

-------------------------------------------------------------------------------

Guia Foca GNU/Linux Gleydson Mazioli da Silva <gleydson@cipsga.org.br>

Verso 5.45 - domingo, 29 de Outubro de 2006

-286-

Вам также может понравиться