Slackware Linux Essentials O Guia Oficial do Slackware Linux

Projeto de tradu¸˜o do Slackbook para Portuguˆs do Brasil ca e Slackbookptbr - http://slackbookptbr.sf.net Vers˜o: 1.0.2 a

ii Slackware Linux Essentials Segunda Edi¸˜o ca Publica¸˜o: Maio 2005 ca isbn: 1-57176-338-4 Slackware Linux Essentials, Second Edition Copyright c 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Slackware Linux, Inc. All rights reserved. Printed in Canada. Published by Slackware Linux, Inc., 1164 Claremont Drive, Brentwood, CA 94513 Lead Author, Second Edition: Alan Hicks. Editors, Second Edition: Murray Stokely and FuKang Chen. Authors, First Edition: Chris Lumens, David Cantrell, and Logan Johnson. Print History: June, 2000 First Edition May, 2005 Second Edition Slackware Linux is a registered trademark of Patrick Volkerding and Slackware Linux, Inc. Linux is a registered trademark of Linus Torvalds. America Online and AOL are registered trademarks of America Online, Inc. in the United States and/or other countries. Apple, FireWire, Mac, Macintosh, Mac OS, Quicktime, and TrueType are trademarks of Apple Computer, Inc., registered in the United States and other countries. IBM, AIX, EtherJet, Net?nity, OS/2, PowerPC, PS/2, S/390, and ThinkPad are trademarks of International Business Machines Corporation in the United States, other countries, or both. IEEE, POSIX, and 802 are registered trademarks of Institute of Electrical and Electronics Engineers, Inc. in the United States. Intel, Celeron, EtherExpress, i386, i486, Itanium, Pentium, and Xeon are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries. Microsoft, IntelliMouse, MS-DOS, Outlook, Windows, Windows Media and Windows NT are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries. Netscape and the Netscape Navigator are registered trademarks of Netscape Communications Corporation in the U.S. and other countries. Red Hat, RPM, are trademarks or registered trademarks of Red Hat, Inc. in the United States and other countries. XFree86 is a trademark of The XFree86 Project, Inc. Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this document, and Slackware Linux, Inc. was aware of the trademark claim, the designations have been followed by the ”’tm”’ or the R symbol.

Sum´rio a
1 Uma Introdu¸˜o ao Slackware Linux ca 1.1 O que ´ o Linux ? . . . . . . . . . . e 1.2 Uma palavrinha sobre GNU . . . . . 1.3 O que ´ o Slackware? . . . . . . . . . e 1.4 C´digo Aberto e Software Livre . . . o 2 Ajuda 2.1 Ajuda 2.1.1 2.1.2 2.1.3 2.2 Ajuda 2.2.1 2.2.2 2.2.3 5 5 5 5 6 9 9 9 10 10 10 10 11 11 13 13 13 14 14 14 15 16 16 16 17 17 19 20 20 21 21 22 22 23 24 31 31 31 32 33 35 35 36 38

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

do Sistema . . . . . . . . . . . . . . . man . . . . . . . . . . . . . . . . . . O diret´rio /usr/doc/ . . . . . . . . o HOWTOs e mini-HOWTOs . . . . . Online . . . . . . . . . . . . . . . . . O Site Oficial e os F´rums de Ajuda o Suporte por E-mail . . . . . . . . . . Sites n˜o-oficiais e F´runs de ajuda . a o

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

3 Instala¸˜o ca 3.1 Obtendo o Slackware . . . . . . . . . 3.1.1 A caixa com os discos Oficiais 3.1.2 Atrav´s da Internet . . . . . e 3.2 Requisitos para Instala¸˜o . . . . . . ca 3.2.1 As S´ries do Software . . . . e 3.2.2 M´todos de Instala¸˜o . . . . e ca 3.2.3 Disco de Boot . . . . . . . . . 3.2.4 Disco de Root . . . . . . . . . 3.2.5 Disco Complementar . . . . . 3.2.6 Criando os discos . . . . . . . 3.3 Particionamento . . . . . . . . . . . 3.4 O programa setup . . . . . . . . . . 3.4.1 HELP . . . . . . . . . . . . . 3.4.2 KEYMAP . . . . . . . . . . . 3.4.3 ADDSWAP . . . . . . . . . . 3.4.4 TARGET . . . . . . . . . . . 3.4.5 SOURCE . . . . . . . . . . . 3.4.6 SELECT . . . . . . . . . . . 3.4.7 INSTALL . . . . . . . . . . . 3.4.8 CONFIGURE . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . .

4 Configura¸˜o do Sistema ca 4.1 Vis˜o Geral do Sistema . . . . . . . . . . . . . . . . . a 4.1.1 Layout do Sistema de Arquivos . . . . . . . . . 4.1.2 Encontrando Arquivos . . . . . . . . . . . . . . 4.1.3 O Diret´rio /etc/rc.d/ . . . . . . . . . . . . . . o 4.2 Selecionando um Kernel . . . . . . . . . . . . . . . . . 4.2.1 O diret´rio /kernels no CD-ROM do Slackware o 4.2.2 Compilando um Kernel a partir do c´digo-fonte o 4.2.3 Utilizando os M´dulos do Kernel . . . . . . . . o iii

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . .

. . . . . . . . . . . . . . .2 Paginadores: more. . . . . . . . . . . . . . . . . . . . . . . . . . . . .3. . . a 8. . . . . . . . . . . . . . . . . . . . . . . . .1. . . . . . . . . . . . . . . . . ca 5. . . . 8. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8. . . . . . . . . 9. . . . . . . . o 9. . . .1 Screen . . . . . . . . . . . . . . . . . . . .5 xdm .1 pppsetup . . . . . .1 Navega¸˜o: ls. . . . . . . . . . . . .2 LOADLIN . . .2. . . . . . . . . . . 5. . . . . . ´ SUMARIO 39 39 39 40 40 40 41 41 42 43 44 45 45 45 46 47 47 48 49 51 51 54 54 56 57 61 61 63 64 64 68 69 69 69 69 70 70 71 72 72 72 74 74 75 77 77 78 80 81 83 85 85 85 86 87 87 . . . . . . . . . . . . . 10 Manipulando arquivos e diret´rios o 10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10. . . . . . . . . . . . . . . . . . . . . . . a 8. . . . . . . . . .3 Modems . . . .6. . . . . .2 Placas de Rede Local (10/100/1000Base-T and Base-2) 5. . . . . . . . . .2 Permiss˜es . . . . . . . . . . . . . . . . . . .1 Vari´veis de Ambiente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca 5. . . . . . . . . . . . . . . .1 Introdu¸˜o: netconfig ´ seu amigo. . . . . . . . . . . . . . . . 8 O Shell 8. . . . . . . . . . . . . . . 5. . . . . . . . . . . . . . . 6. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 Windows 7. . . . . . . . . .2. . . . 5. .1 LILO . . . . . . . . . . . . . . . . . . . . . . . . . . .2 IP Est´tico . . . . . . . . . .1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . do . . .iv 5 Configura¸˜o de Rede ca 5. . . . . . . . . . . . . . . . . . . .2 Configura¸˜o da rede sem fio . . . 7. . . . . . . . . . . .3. . . . . . . 8. . . . . . 6. ca e 5. . .5 Montagem NFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3 Redirecionamento de Entrada e Sa´ e Uso do Pipe ıda 8. . . . . . . . . . . . . . . . . . . . . . . a 8. . . . . . .5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5 Wireless . . . . . . . . . . . . . . . . . . . . . . . . . . . 5. . . . . . . .5. . . . . . . 8. . . . . . . . . . . 7. . . . . . . . .3 Dual Boot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3 Links . . .1 Suporte ao Hardware . . . . . . . . . . . . . . X . . . . . . . . . . . . . . . . . . . . 9 Estrutura do Sistema de 9. . . . . . .3. . . . . .4 Montando Dispositivos 9.3 xinitrc . . . . . . . . . . . .2 Root: O Super Usu´rio . 10. . . . . . . . . . . . . . . . .2. . . . . . . . . . .2 cd . . . . . . . . . . . . . . . . . . . . . . . . . 5. . . . . . . . . . . . . . . o 5. .3. . . . . . . . . . . . . . . . . . . . . . . .1 Os Usu´rios . . . . . .1 DHCP . . . . .4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5. . . . . . . . . . . . . . . 8. . a 5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ca 5. . . . . . . . . . . . . . . . . . . . . . . . . . .3 Configura¸˜o TCP/IP . . . . . . . . . . . . . . . . . . . . . . . . . .2 xorgsetup . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 xorgconfig . . . . . . . . .2. . . . . .2 Substitui¸˜o de Meta-Caracteres . . . . . . . . . 6. . . .4 xwmconfig . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . less e most . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 Processo de Boot 7. . . . 8. . . . . . . . . . . . . . . . ca 8. . . . . . . . . .2 A Linha de Comando . . . . . . 5. . . . . . . . . . . . . . . . . . . . . . . . . .2 Completando Linhas de Comando com o TAB . .2. . . . . . . . . .3 pwd . . . . . . . . .3. . . . . . . . . . . . . .4. . . . . . . . . . . . . . . . . . .1 ls . . . . . . . . . . .6. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 Executando Programas . . . . . . . . . . . . . . . . . . . . . . . . . . . e pwd . . . . . .3 O Bourne Again Shell (bash) . . . . . . . . . . . . . . . . . . .3 Configurando a rede . . . . . . . . . . . . . 5. . . . . Arquivos . . . . 10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1. . . . . . . . . . ca 10.1 Entrando no Sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2 Configura¸˜o do Hardware de Rede . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5. . . . . . . . . .5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 Propriedade . . . . . . . . . . . cd. . . . . . . . . . . . . . . . . . . .2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9. . . 6 Configurara¸˜o ca 6. .6 Sistemas de Arquivo de Rede . . . . . . . . .3. .2 Linux .2. . . . . . . . . . . . . . . . . . . . . . .4 PPP . . . . . . . . . . . .1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2 Network File System (NFS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4 PCMCIA . . . . . . . . . . . . . .1. . . . . . 6. . . . . . . . . . . . . . . . . . . . . . . .1 SMB/Samba/CIFS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5. . . . . . . . 7. . . . .4 Terminais Virtuais . . . .1 Carregando os M´dulos de Rede . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . 13. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2 Mudando senhas . . . . . . . . . . . . . . . . . . . . . . . . . . .2 Primeiro plano (foregrounding) 11. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2 mkdir . . . . . . . . . . . . . . . . . . . . . . . ıda 10. . . . . . . . . 10. . . . . . . . . . . . . . . . . . . . . . . . . 10. . . . . . . . . . . . . . . . . . . . . . . .5. . . . . . . . . . . . . . . . .4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8 Navegadores . . . .5. . . . . . . . . . . . . . . . . .8. . .3. . 10. . . . . . . . . . . . . . . . . .6 10. . . . 13. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3 mutt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13. . . . . . . . . . . 13. . . . . . . . . . . . . . . . a ıcil 12. . . . . . . . . . . 13. . . . . . . .10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13. . . . . . . . . . . .3 wget . . . . . . . . . . . . . . . . . . . . . . . . . .2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 host . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4 nail . . . 12 O Essencial em Administra¸˜o de Sistema ca 12. . . . . . . . . . . . . . .7 email .10. . . .1 cat .2 talk . . . . . . . . . . . 13. . . . . . . . . . . . . . . . . . . . . . . . . .4. . . . . . . . .7 11 Controle de Processos 11. . .1 Segundo Plano (background) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 ftp . . . . .´ SUMARIO 10.5. 12. . . . . .2 rmdir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . v 87 87 88 88 88 88 89 89 89 89 89 90 90 90 91 91 93 93 94 94 97 99 101 101 101 104 105 106 107 111 111 111 112 112 112 113 114 114 115 116 116 116 117 118 119 120 120 120 121 122 122 123 124 124 124 125 10. . . . . . . . .3. . . . . . . . . . . . . . . . . . . . . . . . 13. . . . .1. . . . . . . . . .7. . . . . o modo dif´ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 Outras utilidades do telnet 13. . . . . .10. . . . . . . . . . .7. . . . . . . .2 nslookup . . . . . . . . . . . . . . 13. . . . . . . . . . . . . . 13. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10Conversando com outras pessoas . .2. . . . . . . . . . . . . . . . . . . . . . . . . . . . 13. . . . . . . . . . . . .1 touch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13. . . . . . . . 11. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 pine . . .4 10. . . . . . . . . . . . . . . . . . . . . . . . Exclus˜o: rm e rmdir . . . . . . . . 13. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10. . . . . . . . . 11. . . . . . . . . . . . . . .2 traceroute . . . . . . . . . . . . . . . . . . . ca a 12. . . . . . Copiar e mover . . . . . 10. . . . . .3. . . . . . . . . . . . a 10. . . . . . . . . . . . . . . . . . . . . . . . . .3. . . . . . . . . . . . . . . . . . . .2 elm . . . . . . . . . . . . . . . . . . . . .3 ytalk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4 kill . . . . . . . . . . . . . . . . . . . . a 12. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3 Desligando o sistema apropriadamente . . . . . . . . . . . . . . . . . . . . . . . . .3 ps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10. . .2 ncftp .1 cp . . . ca 10. . . . . . . . . . . . . . . 13. . .3 most . . . . . . . . . .8. . . . . . . . . . . . . . . . .2 mv . . . . . . . . . 13 Comandos de rede b´sicos a 13. . . . . . . . . . . . . . . . . . . . . .6. . . . . . . . . . . . . . . . 10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2 echo .1 rm . .4 finger . . . . . . . . . . . . . . . . . . . . . . . . . Sa´ Simples: cat e echo .1. . . . . . . . .6 O ssh (Secure Shell) . . . . . . . . . . . . . . . 13. . . . . . . . . . . . . .9. . . . . . . . . . . .2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13.3 dig . . . . . . . . . . . . . . . . . . . . . . . 13. . . . . . . . 13. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 more . . . . 13. . . . . . .8. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 ping . 13. . . . . . . 13. . . . . . . . . . . . . . . . .3 Ferramentas DNS . . . . . . . . . . . . . . . . . . . .1 Usu´rios e Grupos . . . . . . . . . . . . . . . . . .3 Mudando a Informa¸˜o do Usu´rio . . . . . . . . . . . . . . . . . .9. . . . . . . . . . . . . .7. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2 less . . . . .3 10. . . . . . . 13. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5 telnet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6. . . . . . . . . . .3. . . . . . . . . . . .5 10. . . . . . . . . . . . . . . . . . . .1 Scripts fornecidos . . . . . . . . . . . . . . .2 Usu´rios e Grupos. . 11. . . . . . . . . . . 12.1. . . . . . . . . . . . . . . . . .1 lynx . . . .9 Clientes FTP . . . . . . . . . . . . . . . . . . . . . 13. .5 top . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 wall . Cria¸˜o: touch e mkdir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2 links . . . . 13. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Apelidando arquivos com ln . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .3 Mantendo-se Atualizado . . . . . . . . . . . . . . . . 18. . . . . . . . . . . . . . . .1. . . . . . . . . . . . . . . . . . . . . . . 18. . . . .2 Servi¸os iniciados pelos scripts de inicializa¸˜o (init scripts) c ca 14. . . . . . . . . . . . . . . . . . . . . . ca 16. . . . .2. . . . . . . . . . . . . . . . . . . . . . . . . . . .1 Iniciando o vi . . . . . . . . . . . .4 upgradepkg . . . . . . . . . . . . .2 Utilit´rios de Pacotes . . . . . . . . ca 16. . . . . . . . . . . . . . .2 O diret´rio /patches . . . . . . . . . . . . . . . . . . . .1 Vantagens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1. . . . . . . . . . . . . . . . . . . . . . . . .1 gzip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3. . .2 Modo de inser¸˜o .1 Iniciado o Emacs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15. . . . . . . . .4 zip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18. . . . . . . . .1 Saindo do Emacs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19. . ca a 17. . . . . . . . . . . .2. . . . . . . . . . . . . .1 Desabilitando Servi¸os . . . . . . . . . . . 17. . . . . . . . . . . . . . . . . . . . . . . . 15. . . . . . . . . . . . . . . . .2 Obtendo o ZipSlack 19. . 16 Vi 16. . . . . . . . . . . . . . . . . . ca 19. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16. . . . . o 15 Arquivos Agrupados e Compactados 15. . . . . . . . . . . . . . . . . . . . 17. . . . . . . . . . . . . . . . . . . . . . . . . . . . . c 14. . . . .1 O que ´ o ZipSlack? e 19. . . . . . . . . . . . . . . .5 rpm2tgz/rpm2targz . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14. . . . . . . . . . . . 18. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2. . . . . . . . . . . . . . . . . . .3. .2. . . . . . . . . . . . . . . . . . . . . .1. . . . . . . . .4 Criando Tags e Tagfiles (para configura¸˜o) ca 19 ZipSlack 19. . . . . . . . . . . .3 tar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14. .1 Modo de Comando 16. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a 18. . . . . . . . . . 14. . . . . . . . . . . . .vi 14 Seguran¸a c 14. . . . . . . . . . .2. . . . . . . . . . . . . . . . . . . . . . . 17 Emacs 17. . . . . . . . c 14. . . . . . . . . . . . . . . . . . . . . 17. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 Servi¸os iniciados com o inetd . . . . . .1 pkgtool . . .4 Salvando Arquivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 Abrindo Arquivos . . . . . . . . . . . . . . . . . . . . . . . . . . .3. . . . . . . . . . .3.6 Configura¸˜o do vi . . 18. . . . . . . . . . . . . .2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a 18. . . . . . .1 iptables . . . . . .1 explodepkg . . . . . . . . . . . . . . . . . . . . . . . . . . .2 makepkg . . . . .1. . . 14.3 Bootando o ZipSlack 20 Gloss´rio a . . . . . . . . . . . .2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2 Controle de Acesso ao Host . . . . . . . . . . . .3 Modos . . . . . . . . . . . . . . . . .3. . . . . .3. . . . . . . . . . . . .1 Instala¸˜o . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 Lista de emails slackware-security . . . . . . . . . . . . . . . . . . . . . . . . . . . 16. . . . . 18.3 SlackBuild Scripts . . . . 16. . . . . . . . . . . . . . . . . . . . . . . . . .2 Desvantagens 19. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18. . . . 16. . . . . . . . . . . . . . . . . . .2 installpkg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16. . . . . . . . . .3 Abrindo Arquivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2 Modos . . . . .2. . . . . . . . . . . . . . . . . . . . . . . . .5 Encerrando o vi . . . . . . . . . . . . . .5 Salvando Arquivos . . . . . . . . . . . . . . . .4 Edi¸˜o B´sica . . . . . . . . . . . . . . 18. . . . . . . . . . . . 14. . . . . . . . . . . . . . . .3 removepkg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 Gerenciamento de Pacotes do Slackware 18. . . . . . .7 Comandos do Vi . . . . . . . . 17.1 Teclas de Comando . . . . . 18. .2. . . . . . . . . . .2 Buffers . . . . . . . . . . . . . . . .2 bzip2 . . . . . . .1.2 tcpwrappers . . . . 17. . . . . . . . .5. .3 Criando Pacotes . . . . . . . ´ SUMARIO 127 127 127 128 128 128 130 130 130 131 133 133 133 134 136 137 137 139 139 140 140 141 141 142 142 145 145 146 146 147 147 148 149 149 151 151 152 152 153 154 154 155 155 155 155 155 156 157 157 157 157 157 158 158 159 . . .1 Vis˜o Geral do Formato de um Pacote . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . 165 TERMS AND CONDITIONS . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 21. . . . . . . . . . . . . . . . . . . . . . . . . .´ SUMARIO 21 The 21. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 How to Apply These Terms to Your New Programs . . . . . . . . . . . . . . . . . . . . .2 21. . . .3 vii GNU General Public License 165 Preamble . 171 e . .1 Contribuidores para o Portuguˆs do Brasil . . . . . . . 169 22 Contributing Authors 171 22. . . . . . . . .

viii ´ SUMARIO .

O cap´ ıtulo sobre Sistema de janela X. comecemos com o show. ca • Cap´ ıtulo 4. n´s certamente tentamos fazˆ-lo o mais interesa a e ca o e sante poss´ ıvel. foi atualizado com novas informa¸˜es sobre o Kernel ca co 2. sobre como instalar redes seguras no Slackware. Claro. Ele foi e projetado para ser est´vel. Ele explica como manter um sistema Slackware ca Linux seguro. N´s tamb´m esperamos que o empreste para os seus amigos quando eles vierem perguntar o e sobre o sistema operacional Linux que vocˆ est´ usando. O cap´ ıtulo ”Gerˆnciamento de Pacotes”. a e ca Este livro foi feito para que vocˆ comece com o sistema operacional Slackware Linux. que refletem as mudan¸as de como c a c o Slackware amadureceu. Instala¸˜o ca . a Como vocˆ ganhar´ experiˆncia com o Slackware. Este cap´ ca e ıtulo agora est´ repleto de grandes a mudan¸as. foi atualizado com informa¸˜es sobre scripts do e co SlackBuild. • Existem ainda muitas outras mudan¸as. e a Mesmo que esse livro n˜o v´ fazer vocˆ pular de emo¸˜o. e DHCP. foi real¸ado com informa¸˜es sobre utilit´rios de redes a c co a adicionais.x do Linux. Emacs. e a instala¸˜o a partir do CD. Cap´ ıtulo 3. Cap´ ıtulo 2. O cap´ ıtulo Configura¸˜o do Sistema. • Cap´ ıtulo 18. Este cap´ ıtulo agora cobre tamb´m o gerenciador gr´fico de login xdm. resultado de v´rios anos de trabalho duro dos membros dedicados do Projeto de e ca a Documenta¸˜o do Slackware. O cap´ ıtulo sobre Configura¸˜o de Rede foi expandido. e os Movimentos de Software Livre e C´digo o o Aberto. com explica¸˜es adicionais do Samba. Com alguma sorte dar´ um filme. A se¸˜o ”redes sem fio”tamb´m foi adicionada. O cap´ ıtulo Instala¸˜o foi modificado com novas fotos da tela do instalador. e tamb´m uma poderosa esta¸˜o de trabalho. A seguir est˜o as mudan¸as de maior valor nesta nova edi¸˜o: ca a c ca • Cap´ ıtulo 3. • Cap´ ıtulo 17. • Cap´ ıtulo 14. n´s esperamos tamb´m que vocˆ possa aprender com a o e e ele e o ache util. Seguran¸a. c • Cap´ ıtulo 6. O cap´ ıtulo ”comandos de rede b´sicos”.6. ´ um novo cap´ e ıtulo desta edi¸˜o. ´ um novo cap´ c e ıtulo desta edi¸˜o. Organiza¸˜o deste Livro ca Cap´ ıtulo 1.´ SUMARIO 1 Pref´cio a P´ blico Alvo u O sistema operacional Slackware Linux ´ uma poderosa plataforma baseada em computadores i386. esperamos que vocˆ busque este livro para ser uma refee a e e rˆncia acess´ e ıvel. Ajuda • Descreve os recursos de ajuda dispon´ ıveis no sistema Slackware Linux e na internet. altera¸˜es decorca co rentes no conjunto de discos. Introdu¸˜o ca • Fornece um material introdut´rio sobre o Slackware Linux. ´ E agora. e a • Cap´ ıtulo 13. mas mostraremos rapidamente do que ela ´ capaz dando o ca e conhecimento para trabalhar com o b´sico do sistema. ca co NFS. foi substancialmente re-escrito para sistemas baseados no Xorg. um editor poderoso ca para Unix. Isto n˜o siginifica que e a iremos abordar cada detalhezinho da distribui¸˜o. de menor e maior importˆncia. Mudan¸as da Primeira Edi¸˜o c ca Esta ´ a segunda edi¸˜o. • Cap´ ıtulo 5. Ele descreve como usar o Emacs. seguro e funcional como servidor.

Cap´ ıtulo 16. Licen¸a P´blica Geral GNU c u • Descreve os termos de licen¸a sob os quais o Linux Slackware e este livro podem ser copiados e distribu´ c ıdos. Cap´ ıtulo 9. rede a a wireless. Configura¸˜o do Sistema ca • Descreve os importantes arquivos de configura¸˜o e fala sobre a recompila¸˜o do kernel. a Cap´ ıtulo 7. Gerenciamento de Pacotes do Slackware • Descreve os utilit´rios de empacotamento do Slackware e o processo usado para criar pacotes padronizados a e tagfiles. Cap´ ıtulo 6. O Shell • Descreve a poderosa interface de linha de comando do linux. Emacs • Descreve o poderoso editor de texto Emacs. Seguran¸a c • Descreve v´rias ferramentas diferentes dispon´ a ıveis para ajud´-lo a manter seguro seu sistema Slackware. Cap´ ıtulo 19. Cap´ ıtulo 11. Configura¸˜o da Rede ca • Descreve como conectar uma m´quina Slackware Linux ` rede. Arquivos Compactados • Descreve compress˜es diferentes e utilidades de arquivos dispon´ o ıveis no Linux. Fala sobre TCP/IP. vi • Descreve o poderoso editor de texto vi. Manipulando Arquivos e Diret´rios o • Descreve os comandos usados para manipular arquivos e diret´rios atrav´s da interface de linha de coo e mando. O Sistema de Janelas X • Descreve como instalar o Sistema gr´fico de Janelas X no Slackware. a a Appendix A. incluindo dono de arquivos. permiss˜es. Cap´ ıtulo 15. ca ca Cap´ ıtulo 5. desligar o ca a a sistema corretamente e muito mais. Fala tamb´m sobre a dupla e inicializa¸˜o com o sistema operacional Microsoft Windows. Cap´ ıtulo 10. Estrutura do Sistema de Arquivos • Descreve a estrutura do sistema de arquivos. Cap´ ıtulo 12. Cap´ ıtulo 14. Fundamentos para Administra¸˜o do Sistema ca • Descreve a administra¸˜o b´sica de tarefas do sistema como adicionar e remover usu´rios. ZipSlack • Descreve a vers˜o ZipSlack do Linux que pode ser usada a partir do Windows sem precisar instal´-la. Cap´ ıtulo 18.2 ´ SUMARIO • Descreve o processo de instala¸˜o passo-a-passo com fotos de tela para lhe mostrar como fazˆ-la por meio ca e de ilustra¸oes. ca Cap´ ıtulo 8. usados para gerenciar e aplicativos sendo executados paralelamente. a incluindo iptables e tcpwrappers. Controle de Processos • Descreve os poderosos comandos de gerˆnciamento de processos do Slackware. Cap´ ıtulo 17. e muito mais. Inicializa¸˜o ca • Descreve o processo pelo qual o computador inicia no Slackware Linux. e liga¸˜es simb´lio co o cas(links). Comandos B´sicos de Rede a • Descreve a cole¸˜o de clientes de rede inclu´ ca ıdos no Slackware. c˜ Cap´ ıtulo 4. . Cap´ ıtulo 13. PPP/dial-up.

e o Charlie Law. Muitos outros contribuiram c . N˜o seria poss´ para mim e a ıvel produzir este trabalho do zero. Volkerding pelo Slackware. indicam que o comando pode ser usado em uma conta de usu´rio c a normal. • Negrito – Uma fonte em negrito ´ usada para entrada de dados do usu´rio nos exemplos. bem como e Carl Inglis pela hospedagem inicial do site. Muitas pessoas merecem nossos agradecimentos por seus atos de ajuda: Keith Keller por seu trabalho em rede wireless. para ganhar privil´gio de super-usu´rio. como: a Ctrl + Alt + Del Desse modo o usu´rio deve digitar as teclas Ctrl.Fontes em it´lico s˜o usada para comandos. por exemplo: Ctrl+X. Morgan Landry. a sintaxe C-shell ´ usada para ajustar as vari´veis de e a ambiente e outros comandos de shell. Simon Williams por seu cap´ ca ıtulo sobre seguran¸a. e a Entrada do Usu´rio a Teclas s˜o mostradas em negrito para se destacarem de outros textos. A menos que seja conhecido de outra c forma. diversas conven¸˜es foram seguidas durante todo o a co livro. Logan Johnson. Uma lista incompleta inclui: Jacob Anhoej. nada disso teria acontecido. a Teclas que possuem certo objetivo por serem digitadas em sequˆncia que ir˜o ser separadas por v´ e a ırgulas. s˜o mostradas com ‘+’ entre as teclas. e David Cantrell. Jurgen Phillippaerts pelos comandos b´sicos c a de rede. John Yast. e os termos t´cnicos de primeiro a a e uso. A menos que seja conhecido de outra forma. indica que o comando que deve ser usado pelo super-usu´rio no c a Slackware.root.i of=/dev/fd0 Exemplos come¸ando com &prompt. Joost Kremers por seu maravilhoso trabalho escrito sem colaboradores da se¸˜o Emacs.1. Sally Welch. Sem contar outros que nos enviaram ca e sugest˜es e reparos.su. $ top Agradecimentos Este projeto ´ o acumulo de meses de trabalho de muitas pessoas dedicadas. Tenho tamb´m de agradecer Keith Keller por hospedar a lista de emails desse projeto. Sem sua estrutura inicial. estes comandos podem ser executados de uma janela de ”Prompt de Comandos”do ambiente moderno do Microsoft Windows. tenho que agradecer a ´ a Patrick J. Cibao Cu Ali G Colibri pela inspira¸˜o e o ponta-p´ inicial. Exemplos Exemplos come¸ando com E:/> indica um comando MS-DOS R . e Chris Lumens pelo Fundamentos do Slackware Linux 1a Edi¸ao. ou iniciar com uma conta normal e a e usar &man. texto enfatizado. Combina¸˜es de teclas que possuem a co certo objetivo por serem digitadas simultaneamente.i Exemplos come¸ando com &prompt.user. D:> rawrite a: bare.´ SUMARIO 3 Conven¸˜es usadas neste livro co Para fornecer uma consistente e f´cil leitura do texto. e a # dd if=bare. Ctrl+S Significaria que ´ esperado que o usu´rio digite as teclas Ctrl e X simultaneamente e ent˜o digite as teclas Ctrl e a a e S simultaneamente. Conven¸˜es Tipogr´ficas co a • It´lico a . Vocˆ pode iniciar uma sess˜o como root para digitar o comando. Alt. e Del ao mesmo tempo. Por ultimo mas n˜o menos importante.

Alan Hicks. Espero que me perdoem por minha mem´ria a o fraca. Maio 2005 .4 ´ SUMARIO com pequenas e grandes partes desse projeto e n˜o foram listadas.

Intitularam seu esfor¸o GNU. que s˜o softwares a ´ bastante populares usado em servidores de internet. E importante lembrar que o termo ”Linux” realmente se refere ao kernel . Por esta raz˜o muitos dos membros da Free Software Foundation sugerem fervorosamente a que seu trabalho deve ser dado o mesmo cr´dito que o kernel Linux e ainda que todas as distribui¸˜es de Linux e co devem se referir a ele como distribui¸˜es de GNU/Linux. N´s chamamos a o cada pacote de uma distribui¸˜o Linux. ´ porque estava apoiado sobre ombros de gigantes. Aquilo tudo ´ realmente o Linux: Controla as opera¸˜es e e co do seu computador e certifica-se de que todos os seus programas se comportam. o que pode ser um pouco confuso. do gcc ao gnutar est˜o ainda na base de cada distribui¸˜o a ca principal do Linux. a e 1. se n˜o milhares. Ele procurava aprender sobre a arquitetura do processador 386. Ele roda programas como Sendmail. Hoje muitas ferramentas da GNU.Cap´ ıtulo 1 Uma Introdu¸˜o ao Slackware Linux ca 1.3 O que ´ o Slackware? e O Slackware. mas como Isaac c c Newton disse uma vez. Sun’s SPARC e UltraSPARC. Ele iniciou u o projeto porque procurava rodar um sistema operacional baseado em Unix mas n˜o possuia muito dinheiro. um acrˆnimo recursivo que significa simplesmente GNU’s Not Unix. u c u o e ca c (veja C´digo Aberto e Software Livre e Apˆndice A para uma explica¸˜o da licen¸a. o n´cleo do sistema operacional.o n´cleo do sistema operacional. de programadores em e a todo o mundo desenvolve o Linux. quando vemos ”Linux”o o ca termo pode estar se referindo tanto ao kernel quanto ` distribui¸˜o inteira. Ele foi portado para rodar em uma variedade de arquiteturas. a al´m disso. e a ca o termo ”GNU/Linux”muitas vezes n˜o ´ usado por ser longo demais. ca 1. foi a primeira distribui¸˜o Linux a alcan¸ar um uso bastante difundido. 5 .) Hoje o linux cresceu como um dos principais jogadores no mercado de sistema operacional. discos r´ o ıgidos e perif´ricos. mem´ria. Volkerding usou o SLS Linux. c o O Software da GNU funciona sobre o kernel do Linux desde o 1o dia. e BIND. corringindo os bugs que encontrava. criado por Patrick Volkerding no fim de 1992. e sim esclarecer a terminologia a e a para os ne´fito. como um projeto pessoal em 1991. s´ a guerra santa entre Emacs e vi gera e u o mais brigas.2 Uma palavrinha sobre GNU O projeto do Kernel Linux come¸ou com um esfor¸o pessoal de Linus Torvalds em 1991. O Linux ´ liberado livre de cobran¸a e e c para o p´blico assim qualquer pessoa pode ajudar estudando-o e fazendo melhorias sobre a licen¸a p´blica geral.1 O que ´ o Linux ? e Linus Torvalds criou o Linux. Uma das poucas distribui¸˜es dispon´ co ıveis naquele tempo era a SLS Linux de Soft Landing Systems. e Motorola’s PowerPC chips (atrav´s Apple Macintosh e computadores IBM RS/6000. Apache.) centenas. O compilador gcc foi usado usado para compilar o kernel. incluindo HP/Compaq’s Alpha. Existem v´rias companhias e a indiv´ ıduos que empacotam o kernel e v´rios programas juntos para fazer um sistema operacional.”Se consegui enxergar mais longe. ca c Volkerding iniciou o aprendizado no linux quando precisou de um interpretador de LISP para um projeto. co O prefixo ”GNU”em ”GNU/Linux”´ o tema de in´meras flamewars.” e Quando Linus Torvalds criou o Kernel a Free Software Foundation tinha estabelecido j´ a id´ia do software coa e laborativo. Este n´cleo ´ respons´vel por controlar o processador do u u e a seu computador. Quando vemos ”GNU/Linux”isso quer dizer uma distribui¸˜o Linux. e inicialmente lan¸ado para o mundo em 17 de c Julho de 1993. O objetivo deste livro n˜o ´ alimentar as chamas da discuss˜o.

Naturalmente. Ao longo. Os ca a seguidores deste movimento preferem basear seus argumentos nos m´ritos econˆmicos e t´cnicos de fazer o c´digo e o e o fonte livremente dispon´ ıvel. Isto garante o que uma vez que um programa ´ aberto ` comunidade. vocˆ pode e cobrar pelo software livre. na qual permite que os usu´rios facilmente adicionem.6 CAP´ ITULO 1. O movimento o de Software livre (n´s come¸aremos em instantes) que est´ trabalhando com o objetivo de fazer todo o software o c a livre das restri¸˜es da propriedade intelectual. O cr´dito o a co e do autor n˜o pode ser usados como um car´ter de propaganda para o programa. para redistribuir o c´digo fonte e a o o para compartilhar de quaisquer modifica¸˜es que vocˆ fizer.cada vers˜o s´ ´ a a e a oe lan¸ada quando realmente est´ pronta. Os Servidores Slackware aumentam os neg´cios. mas tomadas uma aproxima¸˜o mais pragm´tica a elas. decidiu juntar todos estes bugfixes em sua pr´pria distribui¸˜o privada que ele e seus amigos o ca poderiam usar. mas n˜o como cerveja gr´tis. sendo breve. Em contraste com a GPL. e ´ livre para fazer modificac˜es e o e o no programa e aquelas modifica¸˜es feitas tamb´m estar˜o dispon´ co e a ıveis na forma de c´digo fonte. a Na linha de frente do jovem movimento de c´digo aberto. Essencialmente. ou sem nenhum. N˜o tenta imitar o a o e ca a Windows. UMA INTRODUCAO AO SLACKWARE LINUX ¸˜ Eventualmente. A fim de garantir esta liberdade. aumentando a capacidade para os usu´rios o a do servidor. Vocˆ poder´ encontrar ca a a ca e a desktops com Slackware funcionando quase todos com um gerenciador de janelas ou com ambiente de trabalho. removam ou atualizem um e a programa ou o seu sistema inteiro. Imuniza tamb´m o autor da a a e responsabilidade para os danos que podem se levados pelo uso do software. a licen¸a p´blica co e c u geral da GNU (GPL) foi criado. Patrick adicionou coisas novas ao Slackware. o software ter o c´digo aberto disponivel c ca o e o . existem dois principais movimentos ideol´gicos em atividade. Os Softwares lan¸ado sobre a licen¸a BSD permitem e ca o c c redistribuir em c´digo fonte ou em bin´rio uma forma de providenciar apenas algumas condi¸˜es. Esta distribui¸˜o privada ganhou rapidamente a popularidade.) a e o Outra licen¸a popular ´ a licen¸a BSD. :ˆ) 1. n˜o pode ser fechado exceto pelo consentimento de cada e a a autor de cada parte do c´digo (mesmo as modifica¸˜es) dentro dele. tamb´m com o conceito ca a a e de gerˆnciamento de pacote.4 C´digo Aberto e Software Livre o Dentro da comunidade Linux. n˜o no pre¸o que a e o a c vocˆ paga pelo software. ao inv´s disso ele p˜e os usu´rios no controle e mostra para eles exatamente o que a e o a est´ acontecendo. a um programa de instala¸˜o amig´vel para o usu´rio e baseado em um sistema de menu. A OSI ´ uma organiza¸˜o que existe unicamente o e ca para avan¸ar a sustenta¸˜o para o software de c´digo aberto. Seu desenvolvimento n˜o ´ acelerado artificialmente para cumprir prazos . A express˜o usada com frequˆncia e a e ´ livre como um discurso. A GPL. O software livre ´ mais que uma ideologia. A maioria dos programas para o Linux o co est˜o licenciados sob a GPL. O e que permite que o Slackware ser´ usado por v´rios anos ´ a sua simplicidade e estabilidade. assim que Volkerding decidiu ca nome´-lo para Slackware e distribui-lo publicamente. Os seguidores deste movimento acreditam que as restri¸oes imco c pedem as melhorias tecnicas e o trabalho contr´rio ao bem da comunidade. A parte livre est´ na liberdade que vocˆ tem com o c´digo fonte. prover que qualquer um que distribui um programa compilado que seja licenciado sob a GPL deve tamb´m fornecer o c´digo fonte. para estudar e modificar o c´digo fonte. a ´ E importante notar que a GPL n˜o diz qualquer coisa sobre o pre¸o. uma vez que algu´m o vendeu. ou tenha dado um programa compilado e e licenciado sob a GPL s˜o obrigados a fornecer tamb´m o c´digo fonte. Esta liberdade incluem a liberdade para a executar o programa sem uma raz˜o. a a a n´s dir´ o ıamos isso. tenta ser o mais similar ao Unix poss´ ıvel. H´ muitas raz˜es porque o Slackware ´ a distribui¸˜o Linux mais antiga em atividade. O movimento de c´digo aberto est´ a o a trabalhando praticamente com os mesmos objetivos. T˜o ´ a c a ımpar como pode soar. o software livre ´ uma tentativa de e a a e garantir determinados direitos para os usu´rios e desenvolvedores. uma organiza¸˜o de levantamento e ca de fundos para o projeto GNU. Os usu´rios de Slackware s˜o entre todos usu´rios os mais satisfeitos com o Linux. c a O Slackware ´ para as pessoas que gostam de aprender e fazer com o sistema exatamente o que quer. a a O movimento de software livre ´ dirigido pela Free Software Foundation. No extremo oposto da vis˜o est˜o os grupos que desejam manter um controle em exesso sobre seus softwares. Muito dos softwares inclu´ no ıdo Slackware Linux s˜o licenciados pela BSD. Ele n˜o esconde seus processos atr´s de uma interface a a gr´fica de apontar e clicar. a licen¸a BSD n˜o imp˜e nenhuma exic e c c a o gˆncia para a libera¸˜o do c´digo fonte de um programa. (entretanto. melhor que os princ´ ıpios morais e ´ticos que dirigem o movimento de Software Lie vre. isto ´. O Slackware atuala a e mente possui uma reputa¸˜o de um servidor est´vel e uma r´pida esta¸˜o de trabalho.

4. elas n˜o s˜o a a a mesma coisa. incluindo uma para a Free Software c Foundation. e c . N˜o oferecem uma licen¸a espec´ a c ıfica. o a a s˜o oferecidas a oportunidade de fornecer sua pr´pria licen¸a e de tˆ-la certificada por esta organiza¸˜o. CODIGO ABERTO E SOFTWARE LIVRE 7 perfeitamente para ler e executar o programa. Muitas companhias c o c querem liberar o c´digo fonte. a c o A ideia atr´s da OSI ´ trazer mais companhias para o c´digo aberto permitindo que escrevam suas pr´prias a e o o licen¸as de c´digo aberto e tenham aquelas licen¸as certificadas pela Open Source Initiative. A c Open Source Initiative busca dar suporte para todas a licen¸as abertas.´ 1. mas o fato de que dois grupos ideologicamente diferentes est˜o trabalhando a a para o mesmo objetivo. isso dar cr´dito aos esfor¸os de cada um. mas n˜o querem usar a GPL. Desde que n˜o podem radicalmente mudar a GPL. A Free Software Foundation usa uma licen¸a espec´ c ıfica e fornece o software sob esta licen¸a. Toda a sustenta¸˜o aberta das buscas da Open Source Initiative para abrir o c´digo fonte. As regi˜es em que cada uma discute fazendo o c´digo fonte livremente dispon´ o o ıvel dividem `s vezes os dois movimentos. inluindo ca o a Free Software Foundation. mas em substitui¸˜o suca portam os v´rios tipos de licen¸as de c´digos abertos. a o c e ca Quando a Free Software Foundation e a Open Source Initiative trabalharem para se ajudarem.

8 CAP´ ITULO 1. UMA INTRODUCAO AO SLACKWARE LINUX ¸˜ .

a Vocˆ deve imaginar a grande quantidade de p´ginas de manual que podem ser rapidamente criadas. hd.1. com a finalidade de encontrar uma informa¸˜o mais f´cil no sistema. em nosso exemplo esse seria o comando imagin´rio comando.. Quando a e a vocˆ instala o Slackware vocˆ tem a op¸˜o de instalar os pacotes da s´rie F que inclui FAQs e HOWTOs. sd) Formatos de Arquivos e protocolos (ex. vocˆ ver´ bastante comandos. Alguns e e ca e programas tamb´m possuem ajuda sobre outras op¸˜es. e ca a O comando whatis d´ uma descri¸˜o muito breve dos comandos do sistema.. e a e Exemplo: 9 . ou apenas verificar quais op¸˜es est˜o dispon´ co a ıveis para serem utilizadas em um determinado comando. ca e ´ a co Se¸˜o ca Se¸˜o ca Se¸˜o ca Se¸˜o ca Se¸˜o ca Se¸˜o ca Se¸˜o ca Se¸˜o ca Se¸˜o ca Conte´do u Comandos de usu´rios (somente introdu¸˜o) a ca hamadas do Sistema Chamadas de bibliotecas C Dispositivos (ex. Talvez vocˆ queira saber mais op¸˜es que possam ser utilizadas em um e co determinado comando. tornariae a se confuso e complicado at´ mesmo para um usu´rio avan¸ado.. ou simplesmente saber como um hardware trabalha. nroff. O n´mero especifica que a man ´ documentada na se¸˜o e e u e ca 1 (comandos de usu´rios). e a programas e referˆncias de fun¸˜es de bibliotecas referˆnciadas pelo n´mero da se¸˜o do man. Este sistema esteve dispon´ co ıvel por um longo tempo. Felizmente. (ex.Cap´ ıtulo 2 Ajuda Muitas vezes vocˆ precisa de ajuda para um comando espec´ e ıfico. ascii) co Administra¸˜o do sistema (somente introdu¸˜o) ca ca 1 2 3 4 5 6 7 8 Em adicional ao comando man(1).. para iniciar um programa. etc.1 Ajuda do Sistema man O comando man (abrevia¸˜o de manual ) ´ a forma tradicional de documenta¸˜o online dos sistemas operaca e ca cionais Unix e Linux.1 2. `s p´ginas de manual s˜o divididas e a c a a a em se¸˜es numeradas. pacotes macro. arquivos de configura¸˜o e uso. Devido a isso. existem os comandos whatis(1) e apropos(1) que est˜o dispon´ a ıveis para vocˆ. a ca e e Exemplo: $ whatis whatis whatis (1) . s˜o escritas para a grande a maioria dos programas e s˜o distribu´ a ıdas com o pr´prio software. uma esp´cie de referˆncia. vocˆ pode especificar que vocˆ quer a documenta¸˜o da se¸˜o 1 do man com o a e e ca ca comando man 1 man. Especificar a se¸˜o ´ util quando existe manuais em v´rias se¸˜es com o mesmo nome. wtmp. e co ca 2. e co e u ca Por exemplo: Vocˆ pode fazer uma referˆncia ao man(1). Composto de Linhas formatadas especialmente.search the whatis database for complete words O comando apropos ´ usado para procurar a p´gina de manual que contˆm uma determinada palavra. Executando man comando ser´ mostrada a o a man page para o programa especificado. existem v´rias maneiras de vocˆ obter ajuda para o que est´ procurando. as man page. nfs) Jogos (somente introdu¸˜o) ca Conven¸˜es. /etc/passwd.

o ca Esses arquivos s˜o exatamente .) 2. .1. que ´ uma abrevia¸˜o para Frequently e ca e ca Asked Questions (em portuguˆs seria Perguntas mais Frequentes) e Estes documentos s˜o escritos no estilo de Perguntas e Respostas. ca e a o Esses arquivos s˜o muito uteis quando vocˆ est´ com alguma d´vida e n˜o sabe como resolver o problema.com/phorum.3 HOWTOs e mini-HOWTOs O verdadeiro esp´ ırito da comunidade de C´digo Aberto cria uma grande cole¸˜o de HOWTO/mini-HOWTO. a ´ e a u a Cobrem uma grande variedade de assuntos.Xircom Creditcard Netwave device driver oggdec (1) . . Geralmente toda documenta¸ao que vˆm com o software ´ instaco c c e e lada no sistema no diret´rio /usr/doc/.com. e $vers˜o// ´ (obviae e a co a e mente) a vers˜o do software que est´ instalado em seu sistema.11 device driver Caso queira alguma informa¸˜o adicional para algum destes comandos.a sampling utility that dumps CD audio data into wav sound files netwave cs (4) . leia a p´gina de manual para maiores ca a detalhes. Ap´s o co o cancelamento do f´rum do slackware no site www. diversos outros sites ofereceram-se para o o possuir o f´rum para Slackware. arquivos de licen¸a. A mesma s´rie de pacotes inclui uma cole¸˜o de pacotes de FAQs.1. ent˜o o Pat cancelou o f´rum.1 O Site Oficial e os F´rums de Ajuda o • Site Oficial do Slackware O site Oficial do Slackware Linux algumas vezes fica desatualizado.userlocal.org como sendo o f´rum o a oficial para o Slackware Linux. Os FAQs podem ser muito util quando a ´ se procura algo onde se queira ter respostas r´pidas para algo.documentos e guias descrevendo como deve ser feito algo.Lucent WaveLAN/IEEE 802.AT&T GIS WaveLAN ISA device driver wavelan cs (4) .simple decoder. existe e ca e ca uma grande variedade de documenta¸˜o dispon´ que vocˆ pode obter para aprender. ca instru¸˜es de uso. vocˆ os encontrar´ instalados do diret´tio /usr/doc/Linux-FAQs/. a a Por exemplo. Cada programa geralmente instala sua documenta¸˜o na seguinte ordem: o ca /usr/doc/$programa-$vers˜o/ a Onde $programa ´ o nome do programa que vocˆ est´ querendo obter informa¸˜es.2 O diret´rio /usr/doc/ o A grande maioria dos softwares que instalamos vem com algum tipo de documenta¸˜o: arquivos README. Por´m co ´ o o e manter o f´rum come¸ou a dar muito trabalho.10 $ apropos wav CAP´ ITULO 2. mas n˜o cobrem os assuntos de maneira detalhada. e co o 2.slackware. o c a o o Pode-se encontrar algumas informa¸˜es antigas desse f´rum em www. ca ıvel e 2. para ler a documenta¸˜o do comando man(1) vocˆ digitaria cd no: ca e $ cd /usr/doc/man-$vers˜o/ a Caso ao ler as informa¸˜es da p´gina de manual vocˆ n˜o encontre informa¸˜es apropriadas o pr´ximo passo co a e a co o ´ buscar informa¸˜es no diret´rio /usr/doc/. Caso vocˆ decida a e instalar os HOWTO. eles ser˜o instalados no diret´rio /usr/doc/Linux-HOWTOs/ e os mini-HOWTOs em a o /usr/doc/Linux-mini-HOWTOs/.AT&T GIS WaveLAN PCMCIA device driver wvlan cs (4) .2 Ajuda Online Al´m da documenta¸˜o que ´ fornecida com a instala¸˜o do Sistema Operacional Slackware Linux. Ogg Vorbis file to PCM audio file (WAV or RAW) wavelan (4) . Existia um f´rum ativo de ajuda. etc. mas contˆm uma grande variedade de e informa¸˜es importantes sobre as ultimas vers˜es do Slackware.2. Caso vocˆ decida instalar os FAQs durante a a e instala¸˜o. Bom material! a 2. ent˜o o Pat endossou o www. AJUDA cdda2wav (1) .linuxquestions.

ao inv´s de vocˆ receber v´rias a a e e e a mensagens durante o dia. Outros endere¸os de e-mail e inforc e e c ma¸˜es de contato s˜o listados no site oficial. co a Lista de E-mail do Projeto Slackware Linux Existem algumas listas de e-mail dispon´ ıveis em forma de sum´rio ou formul´rio normal. e as listas a a possuem um tr´fego baixo.google. A descri¸˜o das listas est´ ca a abaixo (use o nome abaixo para o inscrever-se na lista).google. co co slackware-security A lista de e-mail slackware-security informa assuntos relacionados ` seguran¸a. Entretanto. ainda est˜o dispon´ e a ıveis para inscri¸˜o a lista slackware-announce-digest ca ou slackware-security-digest. Caso vocˆ queira.com) . 2. deve ser mantido entre os colaboradores (e a grande maioria dos a usu´rios) do Slackware A velha escola. assim como o Unix funciona.com/lists/archive/ slackware-announce A lista de e-mail slackware-announce ´ utilizada para anunciar novas vers˜es. encontra as e ultimas informa¸˜es sobre o kernel com o t´ ´ co ıtulo: N˜o aceite substitutos. O endere¸o de e-mail para suporte t´cnico ´: support@slackware. obviamente n´s ajudamos de uma forma melhor `queles que precisam de nossa o a ajuda. muitos usu´rios encontram pouca vantagem em receber o sum´rio da a a a lista. Muitas vezes uma busca.2.com) O mestre do Kung-Fu para sites de busca.com com a frase subscribe [nome da lista] no corpo da mensagem. Isto ´. vocˆ tamb´m pode encontrar muie e e tas informa¸˜es sobre Slackware.3 Sites n˜o-oficiais e F´runs de ajuda a o Sites Google (www. As listas est˜o disponiveis no formato de sum´rio.2 Suporte por E-mail A todos que compram o conjunto oficial de CDs do projeto ´ oferecido suporte livre via e-mail pelo desene volvedor. Isso significa que n´s preferimos ajudar `queles que tˆm um interesse a o a e sincero e est˜o dispostos a ajudar no processo. Verifique as instru¸˜es para saber como se inscrever. envie uma mensagem para: majordomo@slackware. N´s faremos sempre o melhor para ajudar quem nos envia um a o e-mail.google.com. Absolutamente vocˆ. Slackware tamb´m ´ um sistema operacional e e gen´rico. Exploits e a c outras vulnerabilidades que perten¸am diretamente ao Slackware s˜o postadas na lista imediac a tamente. vocˆ receber´ apenas uma mensagem com todo o conte´do criado e a u no dia. isso que est´ sendo dito.2. pode trazer co informa¸˜es t´cnicas relacionadas com o Linux.2. a a co Para inscrever em uma lista de e-mail. AJUDA ONLINE 11 2.2. por isso. em BSD. Os arquivos da lista de e-mail podem ser encontrador no site do Slackware em: http://slackware.com/bsd) Procura especificamente por BSD. Vocˆ pode iniciar sua busca nas respostas simples. Por favor verifique a documenta¸˜o e o site (especialmente os FAQs e talvez algum f´rum ca o listado abaixo) antes de enviar um e-mail.com/linux) Procura especificamente por Linux Google:BSD (www. Por favor. principais e o atualiza¸˜es e outras informa¸˜es em geral. a Google:Linux (www.google. co e Google:Groups (groups. seria menos e-mail e que ter´ ıamos que responder. A lista de e-mail do Slackware n˜o permite que usu´rios postem mensagem.

o a F´rum Slackware o ”Um local para efetuar download e obter ajuda sobre Linux.ca. (n˜o confunda com a AOL! ) ´ um dos a e lugares mais ativos para encontrar ajuda sobre problemas com o Slackware.os.12 CAP´ ITULO 2. experiˆncias em primeira e m˜o e artigos interessantes. alguns participam (ativamente) com experiˆncia pelo fato de ajudar bastante. co e userlocal Um tesouro virtual de conhecimento.linux. mas tendem a serem preenchidos com as grandes base de conhecimento de outras pessoas.linux.org O f´rum oficial de usu´rios de Slackware. Aprenda a e ignorar trolls e identifique ajuda de pessoas que realmente utilizam esse recurso. AJUDA Busca por informa¸˜es nas mensagens de d´cadas da Usenet. Como cada grupo.san-francisco. Existem poucos grupos dedicados ao Slackware Linux.us/perl/fom] FAQ Outras FAQ Grupos de usu´rios (NNTP) A USENET tem sido por muito tempo o lugar onde os geeks a buscam ajuda e ajudem uns aos outros.slackware. . mais conhecida como aols. bom conselheiro. alt.slackware wombat. O primeiro lugar que vocˆ ouvir´ com freq¨ˆncia sobre a e a ue o desenvolvimento de Slackware no mundo.os.os.slackware alt. Recursos Web linuxquestions.linux.” [alt.

tais como os ambientes ca a gr´ficos KDE e GNOME. O fato ca e a ´ que o Slackware possui um programa de instala¸˜o mais r´pido em rela¸˜o ` qualquer outra e ca a ca a distribui¸˜o Linux. A maneira preferida para a compra desses produtos ´ na loja oficial do Slackware. ca 3. O terceiro e o quarto CD inclui a a todos os c´digos fontes de todos os programas do Slackware. O primeiro disco contˆm todo o software necess´rios para um e a sistema b´sico e o gerenciados de janelas X. Devido ao programa de instala¸˜o vocˆ instalar´ rapidamente o sistema. vocˆ pode compra-lo ou efetuar o download gratu´ atrav´s da Internet. e e co Informa¸oes de Contato na Slackware Linux. que s˜o pacotes n˜o essenciais ao sistema. a ıvel O jogo consiste em 4 discos. c˜ Method Telephone Site Email Postal Contact Details 1-(925) 674-0783 http://store. Brentwood.Cap´ ıtulo 3 Instala¸˜o ca Antes que vocˆ possa usar o Slackware Linux. e • http://store.1.1 3. Alguns pacotes novos s˜o inclusos no segundo CD incluindo a s´rie a a e de pacotes extra. ser´ necess´rio vocˆ obtˆ-lo e instal´-lo.com orders@slackware.1 Obtendo o Slackware A caixa com os discos Oficiais O conjunto de CDs oficial do Slackware Linux CD est´ dispon´ na Slackware Linux.slackware. CA 94513 13 . dessa o forma vocˆ poder´ se exibir como um verdadeiro geek. caso seja necess´rio efetuar uma a ca o a manuten¸˜o de reparo na m´quina. Obter e a a e e a o Slackware ´ f´cil. um a e e CD boot´vel que instala na RAM uma instala¸˜o provis´ria. desde que vocˆ tenha conhecimento b´sico sobre seu comca e e a e a putador e esteja disposto a aprender algumas coisas.com 1164 Claremont Drive. Inc. Tamb´m ´ poss´ e e ıvel comprar um kit contendo os 4 discos e uma c´pia deste Livro. A compra dos CDs est˜o dispon´ e a a ıveis a um custo bem acess´ ıvel. O programa de instala¸˜o o conduzir´ ca a passo-a-passo. Este CD possui alguns pacotes. junto com a edi¸˜o original desse o ca livro. isto ´. e a e ıto e A instala¸˜o tamb´m ´ muito f´cil.com Vocˆ tambˆm pode solicitar informa¸˜es por e-mail. O segundo CD ´ um disco adicional.slackware. Inc.

por´m isso necesita de um pouco de trabalho.TXT localizado na ´rvore da distibui¸˜o. por´m hoje essas s´ries s˜o usadas basica e e e a camente para categorizar os pacotes incluso no Slackware. leia o arquivo LOWMEM. vocˆ precisar´ de um disquete e uma unidade de e a e a disquete para fazer a instala¸˜o via NFS atrav´s de uma rede. Essas s´ries s˜o chamadas de conjunto de discos devido terem sido planejadas e e a para a instala¸˜o do sistema atrav´s de disquetes. necessita da seguinte configura¸˜o: ca Hardware Processador Mem´ria o Espa¸o em Disco c Drive de CD Necess´rio a 586 32 MB RAM 1GB 4x CD-ROM ´ Caso vocˆ tenha um CD boot´vel. Vocˆ pode enviar suas perguntas por a e email. O site oficial do Projeto Slackware Linux Project ´ o endere¸o: e c http://www.14 CAP´ ITULO 3. discos r´ o ıgidos pequenos e CPUs com pouco poder de processamento. A lista completa dos mirros podem ser encontradas no site http://www. vocˆ n˜o ir´ precisar de um disquete. Al´m disso tamb´m ´ necess´rio ca e e e e a uma placa de rede para esse tipo de instala¸˜o.2.slackware. Mas por ıvel a a favor. Antes de enviar um e-mail para suporte primeiramente leia a ajuda.1 As S´ries do Software e Por raz˜es de simplicidade. INSTALACAO ¸˜ 3. mas caso vocˆ fa¸a uma instala¸˜o completa vocˆ ir´ e e c ca e a precisar cerca de 2Gb de espa¸o em disco e mais um espa¸o para armazenar seus arquivos pesc c soais. os softwares (pacotes) que acompanham o Slackware s˜o dividio a dos em s´ries. para a ca obter algumas dicas uteis. Como dito anaa a teriormente.com/ A localiza¸˜o do FTP prim´rio para o Slackware Linux ´: ca a e ftp://ftp.slackware. Para maiores informa¸˜es consulte a se¸˜o NFS. n˜o existe limite de banda. ca co ca O espa¸o em disco necess´rio. mas a prioridade ser´ `s perguntas referentes ` compras do kit oficial.slackware. ca . c O Slackware pode ser instalado em sistemas com pouca mem´ria RAM.1. e Se este for o seu caso. est´ aberto para uso geral. ´ um pouco complicado especificar. Hoje n˜o ´ mais poss´ fazer a a e ıvel instala¸˜o apenas com disquetes. considere a op¸˜o de utilizar um mirror mais pr´ximo ` vocˆ para efetuar o download do ca o a e Slackware. e o tempo ´ muito limitado para poder atender a o e todos. O espa¸o recomendado c a e c para uma instala¸˜o m´ ca ınima ´ de 1GB.2 Requisitos para Instala¸˜o ca Uma instala¸˜o m´ ca ınima do Slackware. ´ 3. O fato ´ que muitos usu´rios a a ca e a instalam o Slackware em um disco realmente pequeno com 100Mb de espa¸o. n´s recebemos muitos e-mails.2 Atrav´s da Internet e Slackware Linux est´ totalmente Livre na Internet.com/getslack. E claro que se e a e a a vocˆ n˜o possuir uma unidade de CD-ROM. 3.com/pub/slackware/ O ftp dispon´ no site. A maioria dos usu´rios n˜o fazem a instala¸˜o completa.

2. XAP Aplica¸˜es gr´ficas que n˜o fazem parte de um ambiente de desktop principal (como por exem co a a Y Jogos de console BSD 3. leitor de news e alguns outros. TclX. ca L Bibliotecas. Inc.2. a K O c´digo fonte do kernel do Linux.1. O Slackware Linux era instalado com apenas dois disquetes. F FAQs. Caso contr´rio. ou quando se utiliza a instala¸˜o via NFS. a NFS . Para esse tipo de equipamento ´ recomendado as vers˜es 4.2 M´todos de Instala¸˜o e ca Disquete Quando era poss´ ıvel. X Sistema base para o X Window. A partir da vers˜o 8. o KDE O ambiente gr´fico K. e ca ca co Veja a se¸˜o 3.0 (a mais a e o popular para isso) e a 7. Bibliotecas dinˆmicas lincadas necess´rias para muitos outros programas. telnet. As s´ries A e N podiam ser totalmente instaladas. e TkDesk. Contˆm uma grande parte dos softwares utilizados para se ter um sistema e AP Diversos aplicativos que n˜o necessitam de um Servidor X. Caso. REQUISITOS PARA INSTALACAO ¸˜ 15 A seguir vocˆ encontra uma breve descri¸˜o de cada s´rie de pacotes. a D Ferramentas de desenvolvimento de programas. que n˜o a e ca a trabalha com algumas BIOS (esse problema ´ enfrentado por todas distribui¸˜es Linux atuale co mente). vocˆ poder´ utilizar um ca a a e a e a disquete de boot. era poss´ fazer uma c ca e a ıvel parte da instala¸˜o utilizando disquetes.1.3 e a se¸˜o 3. debugadores. (veja a se¸˜o Obtendo o e a ca Slackware) a instala¸˜o ficar´ mais f´cil para vocˆ. por´m o e tamanho dos pacotes de alguns softwares cresceram (especificamente alguns softwares) ent˜o a houve o abandono for¸ado da instala¸˜o via disquete. Caso vocˆ for utilizar a ca e um disquete para instalar (em um equipamento mais velho). a a N Programas de Rede. programas de e-mail. Tk. o ca e que fornecia um sistema b´sico para instalar o restante da distribui¸˜o.0 do Slackware. HOWTOs e outros tipos de documenta¸˜o. criado pela Slackware Linux. Se este for o seu caso. quando isso n˜o ´ poss´ e a e ıvel atrav´s de uma unidade de CD-ROM. um novo m´todo de cria¸˜o de CDs de BOOT foi adotado.2. Um ambiente gr´fico que possui muitas caracter´ a a ısticas visuais em com KDEI Pacotes de internacionaliza¸˜o para o ambiente KDE. caso seja necess´rio. e ca CD-ROM Se vocˆ tiver um CD boot´vel.5 fornecem informa¸˜es de como criar um disquete de boot. At´ a vers˜o 7. recomendamos que vocˆ utilize um disquete. ´ recomend´vel que vocˆ utilize e a e uma vers˜o mais antiga. T Sistema de formata¸˜o de documentos teTeX. Daemons. vocˆ tenha um hardware espec´ e ıfico. Observe que o disquete ainda ´ utilizado para realizar o boot.3. um disco de boot espec´ ıfico poder´ a ser utilizado.2. ca TCL Ferramenta de Linguagem de comando. interpretadores E GNU Emacs. e ca e S´rie dos Pacotes e S´rie e Conte´ do u A Base do Sistema. Compiladores. ca GNOME O ambiente gr´fico GNOME.

´ recomend´vel a e a que vocˆ utilize uma placa de rede. Os discos complementares s˜o encontrados no diret´tio ra´ da ´rvore de a a o ız a distribui¸˜o.5 Disco Complementar Um disco complementar ´ necess´rio caso vocˆ utilize uma instala¸˜o via NFS ou se vocˆ tiver e a e ca e um cart˜o PCMCIA.i (para dispositivos IDE ou scsi. INSTALACAO ¸˜ NFS (Sistemas de Arquivos de Rede) ´ uma maneira de utilizar sistemas de arquivos em e m´quinas remotas. e 3. pcmcia. com os nomes network. a ı-lo .dsk e sbootmgr. Ele contˆm uma imagem e ca e compactada do Kernel que ´ utilizada para controlar o hardware durante a instala¸˜o. um prompt de comando solicitar´ que vocˆ insira o disco de root. Ele pea a dir´ outras op¸˜es de boot e pode ser uma forma conveniente de contornar uma BIOS com bugs.TXT localizado na ´rvore da distribui¸˜o. install.dsk. O disco de restaura¸˜o ´ uma imagem ca e pequena que funciona com 4MB de RAM. Entretanto. ca Tamb´m ´ poss´ executar o NFS atrav´s de um m´todo como o PLIP (sobre uma porta e e ıvel e e paralela). instalar um sistema atrav´s de uma porta e e paralela ´ algo muito lento. a co O disco de root ir´ instru´ a usar discos complementares quando ele for carregado. e sbootmgr. O disco sbootmgr.16 CAP´ ITULO 3. que ´ coberto e a e na se¸˜o Network File System (NFS).dsk e pcmcia.dsk foram adicionados.dsk. naturalmente. este disco ´ necess´rio. A lista e a completa dos discos de boot e a descri¸˜o completa de cada um s˜o encontradas no arquivo ca a bootdisks/README. requer um certo conhecimento do NFS. ca co Ap´s o boot. Vocˆ ter´ que fazer dois discos de root.2. A instala¸˜o via NFS permite que vocˆ instale o Slackware ` partir de uma a ca e a outra m´quina de sua rede.2. Os discos de boot s˜o localizados e e a a no diret´rio bootdisks/ da ´rvore da distribui¸˜o. As imagens do disco de root s˜o encontradas ca e a a a na ´rvore da distribui¸˜o.dsk ´ utilizado para carregar outros dispositivos. Tamb´m s˜o necess´rios.2.4 Disco de Root Os discos de root contˆm o programa de instala¸˜o e um sistema de arquivos que ´ utilizado e ca e durante a instala¸˜o.dsk. Entretanto. a ca e a vocˆ tamb´m pode encontrar os discos network.2.Disco de Boot para instru¸˜es de como fazer um disco de boot. Isto. Inclui alguns utilit´rios b´sicos de rede e o editor vi a a para reparos r´pidos. Apesar de tudo.2. Ao mee ca nos que vocˆ esteja utilizando um CD. SLIP. rescue.s (para dispositivos SCSI) para o boot. o a e 3. A m´quina que vocˆ estiver utilizando para a instala¸˜o precisa ser a a e ca configurada de modo a exportar a ´rvore de distribui¸˜o do Slackwware para a m´quina que a ca a vocˆ est´ instalando.1 e install.3 Disco de Boot O disco de boot ´ um disquete utilizado para iniciar a instala¸˜o. o a ca Existem diversos discos de boot que vocˆ pode utilizar (s˜o aproximadamente 16). outros discos complemenca tares como rescue. Veja a se¸˜o 3. e PPP (exceto sobre uma conex˜o via modem). Aqui. Use a e este disco se o seu CD-ROM boot´vel n˜o quiser dar boot com os CDs do Slackware.dsk.dsk. Recentemente.3 . e e 3. a maioria das pesa ca soas utilizam a imagem bare.

a Quando terminar o carregamento do disco de root. A primeira coisa que vocˆ deve fazer ´ examinar o seu esquema a e e de parti¸˜es atual. No Linux. execute cfdisk (8) ou fdisk (8). o prim´rio slave ´ /dev/hdb. a ca Comece executando o fdisk para o seu disco r´ ıgido.i of=/dev/fd0 Se estiver utilizando um sistema operacional Microsoft. O programa cfdisk possui uma interface mais amig´vel do que o programa fdisk. uma para o seu sistema de co arquivos root (/ ) e uma para a ´rea de troca (swap). Dependendo do e sistema que est´ usando para criar os discos. Segue abaixo uma r´pida explica¸˜o do programa fdisk.6 Criando os discos Caso tenha escolhido uma imagem de boot. mas no formato /dev/sdX. O primeiro disco r´ a ıgido IDE (prim´rio master) ´ /dev/hda.3. ANTES DE (BACKUP) DE TODAS AS INFORMACOES QUE VOCE ¸ ˜ REMOVER A PARTICAO ONDE ELAS ESTAO ARMAZENADAS.i e a sua unidade de disquete ´ o /dev/fd0. vocˆ necessita de um disquete. mas lhe faltam alguns a recursos. vocˆ precisar´ do programa RAe a WRITE.i e o seu dispositivo de disquete ´ a unidade A:. duas parti¸˜es. Fa¸a isso digitando p** no prompt do fdisk : co c Command (m for help): p Ser˜o exibidos todos os tipos de informa¸˜es sobre o seu sistema de parti¸˜es atual. No prompt do shell. no m´ ca ınimo. abra o prompt e do DOS e digite: C: rawrite a: bare. aparecer´ um prompt de login. o comando que vocˆ e e dever´ utilizar para criar um disquete com a imagem bare. e assim por diante. n˜o foi?). Recomendamos a cria¸˜o de.3 Particionamento Ap´s a inicializa¸˜o com a sua m´ preferida. ser´ necess´rio particionar o seu disco r´ o ca ıdia a a ıgido. A parti¸˜o do disco ´ onde o sistema de arquivos do Linux ser´ criado e onde o Slackware ser´ ca e a a instalado. Se vocˆ estiver utilizando a a e um Linux (ou um outro sistema Unix) vocˆ utilizar´ o comando dd (1). Suponhamos que vocˆ e a e esteja usando a imagem bare.3. em vez dos discos r´ ıgidos possu´ ırem letras de drive. o processo ser´ diferente.i ´: a e $ dd if=bare.EXE.i 3. eles s˜o representados por um arquivo. A a co co maioria das pessoas seleciona uma unidade livre para a instala¸˜o e ent˜o remove as parti¸˜es ca a co existentes para dar espa¸o para as parti¸˜es do Linux. o fdisk mostra um prompt (pensou que haveria um menu.2. PARTICIONAMENTO 17 3. Discos SCSI a e a e seguem o mesmo sistema. ¸˜ . c co ´ ´ AVISO: E EXTREMAMENTE IMPORTANTE FAZER UMA COPIA DE SEGURANCA ¸ ˜ ˆ QUEIRA MANTER. Inicie o fdisk informando o seu disco r´ ıgido: # fdisk /dev/hda Como em todos os bons programas para o Unix. Suponhamos que a o esteja usando a imagem bare. Entre no a sistema como root (sem senha). que est´ incluso no mesmo diret´rio das imagens de disquete.

vamos ficar com apenas estas duas parti¸˜es: / e swap. O primeiro ´ para um desktop. c o c a Na tabela de informa¸˜es da parti¸˜o h´ um n´mero da parti¸˜o. vocˆ desenvolver´ uma metodologia que ca e a funcione bem para vocˆ. /home. co Agora podemos criar as parti¸˜es com o comando n: co Command (m for help):n Command action e extended p primary partition (1-4) p Partition number (1-4)}: 1 First cylinder (0-1060. crie uma parti¸˜o para o / e uma para swap.) Ent˜o. Isto criar´ uma parti¸˜o de 64 megabytes a ca para swap. (Na verdade.18 CAP´ ITULO 3. default 1060):+64M Assegure-se de ter criado parti¸˜es prim´rias. geralmente substituo a parti¸˜o /usr/local ca por uma parti¸˜o /var. Ela come¸ar´ ca u ca a c a no cilindro 0 e. ıvel e Command (m for help): n Command action e extended p primary partition (1-4) . Por enquanto. Observe que os esquemas de particionamento do Unix s˜o a causa de acaloradas a discuss˜es. Digitamos d para removˆ-las: e Command (m for help): d Partition number (1-4): 1 Repita este processo para cada uma das parti¸˜es. o tamanho. e o tipo. Removeremos todas as parti¸˜es co a co deste drive para criar as do Linux. Por conven¸˜o se usa uma parti¸˜o de swap com o dobro do tamanho da RAM do ca ca seu sistema. estaremos prontos para co o e criar as do Linux. Muitos servidores diferentes armazenam informa¸˜es nesta parti¸˜o e ca co ca mantˆ-la separada do / traz benef´ e ıcios quanto ao desempenho. Assim posso re-instalar ou atualizar tudo que est´ co a instalado em / sem remover os meus arquivos de dados no /home ou os meus aplicativos personalizados compilados no /usr/local. Em servidores. o tamanho da parti¸˜o de swap depende da quantidade de RAM do ca seu sistema. portanto sempre a a ca fa¸a uma c´pia de seguran¸a (backup) antes de alter´-las. Decidimos criar uma parti¸˜o para o nosso sistema de arquivos root e uma ca para o swap. Com o tempo. A primeira parti¸˜o ser´ a nossa parti¸˜o co a ca a ca swap. e que a maioria dos usu´rios lhe dir´ qual a melhor forma. INSTALACAO ¸˜ N˜o existe uma forma f´cil de recuperar dados de uma parti¸˜o removida. para o cilindro final. /. digitamos +64M. No m´ o a a ınimo. Fa¸o a e c 4 parti¸˜es. Diremos ao fdisk para tornar a parti¸˜o n´mero 1 uma parti¸˜o prim´ria. H´ co ca a u ca a mais informa¸˜es. Ap´s removˆ-las. default 0): 0 Last cylinder or +size or +sizeM or +sizeK (0-1060. mas n˜o se preocupe com isso por enquanto. e swap. e Eu uso dois esquemas b´sicos de particionamento. definimos a parti¸˜o prim´ria n´mero 2 come¸ando no primeiro cilindro a ca a u c dispon´ e indo at´ o final do drive. /usr/local.

3.4. O PROGRAMA SETUP

19

p Partition number (1-4): 2 First cylinder (124-1060, default 124):124 Last cylinder or +size or +sizeM or +sizeK (124-1060, default 1060):}1060

Est´ quase pronto. Precisamos alterar o tipo da primeira parti¸˜o para tipo 82 (Linux swap). a ca Digite t para alterar o tipo, selecione a primeira parti¸˜o, e digite 82. Antes de gravar as suas ca altera¸˜es em disco, dˆ uma ultima olhada na nova tabela de parti¸˜es. Use o p no fdisk para co e ´ co exibir a tabela de parti¸˜es. Se tudo parecer estar bem, digite w para salvar as suas altera¸˜es co co e sair do fdisk.

3.4

O programa setup

Uma vez criada as parti¸˜es, vocˆ est´ pronto para instalar o Slackware. O pr´ximo passo da co e a o instala¸˜o ´ executar o programa setup. Para execut´-lo simplesmente digite setup no prompt. ca e a O setup possui um sistema de menu na qual permite que vocˆ instale os pacotes do Slackware e e configure seu sistema.

O processo de instala¸˜o ´ algo do tipo: Selecione as op¸˜es de acordo como elas s˜o listadas ca e co a ´ claro que vocˆ pode mudar a ordem de escolha das op¸˜es, n˜o seguindo no programa setup. (E e co a passo-a-passo o programa.) Os itens do menu s˜o selecionados usando as teclas seta para cima a e seta para baixo, e os bot˜es Okay e Cancel s˜o usados para proseguir ou para voltar. Como o a alternativa, vocˆ pode escolher a op¸˜o desejada, teclando a letra correspondente destacada do e ca menu para cada op¸˜o. Para selecionar as op¸˜es (estas s˜o indicadas com [X] ) utiliza-se a ca co a barra de espa¸o. c ´ E claro que vocˆ pode ver mais descri¸˜es na se¸˜o help do setup, por´m acreditamos que o e co ca e seu tempo vale dinheiro.

20

CAP´ ITULO 3. INSTALACAO ¸˜

3.4.1

HELP

Caso seja a primeira vez que vocˆ esteja instalando o Slackware, vocˆ pode dar uma olhada e e na tela de ajuda. Assim ter´ uma descri¸˜o de cada parte do programa setup (assim como a ca estamos descrevendo) e instru¸˜es para navega¸˜o e para o restante da instala¸˜o. co ca ca

3.4.2

KEYMAP

Caso necessite de um teclado diferente do padr˜o americano qwerty, vocˆ dever´ alter´-lo a e a a nessa se¸˜o. Existe uma grande quantidade de modelos de teclado que poder´ escolher. ca a

3.4. O PROGRAMA SETUP

21

3.4.3

ADDSWAP

Caso vocˆ tenha criado uma parti¸˜o de swap (voltar ` se¸˜o 3.3), ´ aqui que vocˆ dever´ e ca a ca e e a habilit´-la para utilizar. As parti¸˜es de swap existentes em seu disco ser˜o exibidas automaa co a ticamente, permitindo que vocˆ selecione, pelo menos uma, para formatar e habilitar. e

3.4.4

TARGET

Na se¸˜o target vocˆ formatar´ suas parti¸˜es e mapear´ os pontos de montagens dos sisca e a co a temas de arquivos. Uma lista com as parti¸˜es de seu disco r´ co ıgido s˜o mostradas. Para cada a parti¸˜o, poder´ escolher formatar ou n˜o. Dependendo do kernel utilizado, vocˆ poder´ esca a a e a colher os seguintes sistemas de arquivos reiserfs (padr˜o), ext3, ext2, jfs e xfs. A maioria das a pessoas utilizam reiserfs ou ext3. Em um futuro pr´ximo n´s poderemos ter o suporte ` reiserfs4. o o a A parti¸˜o a ser selecionada ´ onde o sistera root (/ )dever´ ser instalado. Ap´s isso, vocˆ ca e a o e

quanto para o servidor NFS (n˜o h´ um c a a a servi¸o de resolu¸˜o de nomes no disco de instala¸˜o). o e A op¸˜o CD-ROM permite a instala¸˜o a partir de um CD-ROM. Monte o sistema de arquivos em um local de sua escolha antes de executar a instala¸˜o.4.2. INSTALACAO ¸˜ poder´ escolher e mapear cada parti¸˜o para cada sistema de arquivos de acrodo com a sua a ca escolha. Assegure-se de ter o CD do Slackware no seu drive antes de come¸ar a busca. e a e ıvel a deve-se usar endere¸os IP tanto para a sua m´quina. e sistemas de arquivos FAT. ca e ent˜o especifique esse local aqui. Naturalmente. NFS. Note que ´ obrigat´ria a instala¸˜o da s´rie A para ter um sistema a base funcional. a 3. ou um diret´rio pr´-montado.6 SELECT A se¸˜o Select permite escolher as s´ries de software que desejamos instalar.5 SOURCE A se¸˜o Source ´ onde selecionamos a m´ ca e ıdia a partir da qual o Slackware ser´ instalado. pontos de montagem NFS sobre PLIP. a Atualmente. Note tamb´m que n˜o ´ poss´ usar nomes de m´quina (hostnames).22 CAP´ ITULO 3. Todas as outras s´ries s˜o opcionais.) 3. O diret´rio pr´-montado oferece maior flexibilidade. h´ quatro op¸˜es dispon´ a co ıveis. vocˆ pode querer que a sua terceira parti¸˜o /dev/hda3. seja o sistemas e ca de arquivos para o home. Isto ´ apenas um exemplo.1. Essas s´ries ca e e ca e o ca e s˜o descritas na se¸˜o 3. S˜o elas: CD-ROM. H´ a op¸˜o de procurar ca ca a ca automaticamente um drive de CD-ROM ou exibir uma lista da qual pode-se escolher o tipo do drive.dsk para dar suporte para a sua placa de rede. e a . c A op¸˜o NFS pede informa¸˜es da sua rede e de seu servidor NFS. O servidor NFS j´ ca co a deve estar configurado. uma parti¸˜o no disco r´ a ca ıgido.4. Use este m´todo para instalar a partir o e e de dispositivos como Jaz disks. (Por exemplo. deve ser usado o disquete c ca ca network. crie os pontos de montagens de acordo e com o seu gosto.

e ca A op¸˜o full (completo) instala todos os pacotes das s´ries escolhidas na se¸˜o select. O PROGRAMA SETUP 23 3.3. Esta op¸˜o instala todos os pacotes requeridos pelas o ca e ca s´ries selecionadas.4. pedir´ que e a a vocˆ volte e complete as outras se¸˜es do programa de instala¸˜o. E claro que esta op¸˜o tamb´m ´ a o ca e e que ocupa maior espa¸o no disco r´ c ıgido. and ”select”. menu. newbie. a se¸˜o co ca install permite selecionar pacotes dentre as s´ries de software escolhidas.4. N˜o ca e ca a h´ mais perguntas. e tag path. ”source”. expert. Se n˜o. Este ´ o m´todo de instala¸˜o mais f´cil. custom. Em todos os outros pacotes h´ um prompt onde podemos selecionar Yes e a .7 INSTALL Considerando que tenhamos passado pelas se¸˜es ”target”. Esta se¸˜o permite escolher e co ca ca dentre seis diferentes m´todos de instala¸˜o: //full. j´ que n˜o ´ necess´rio tomar a e e ca a a a e a ´ quaisquer decis˜es quanto aos pacotes a instalar de fato. A pr´xima op¸˜o ´ newbie (novato).

Isto ´ util ca a ca e´ para se instalar um grande n´mero de m´quinas rapidamente. veja a se¸˜o 18. Simplesmente selecione os pacotes ıvel de cada s´rie que deseja que sejam instalados. agora que os paca co a cotes j´ foram instalados. c ca Se selecionar pacotes demais para a quantidade de espa¸o livre no dispositivo alvo. permitindo a sele¸˜o dos pacotes a ca a ser instalados. a a . uma coisa ou outra abaixo vai acontecer. INSTALACAO ¸˜ (sim). a Para os usu´rios mais avan¸ados. sendo que ent˜o o kernel padr˜o e a a ser´ instalado e o processo continuar´. Contudo. se necess´rio. uma tela com um menu aparecer´. Ou vocˆ pode decidir pular. Recomendamos esta op¸˜o para os novos usu´rios. veja a se¸˜o 18. Ap´s escolher o seu m´todo de instala¸˜o. sempre ser´ exibido o conte´do abaixo: a u Kernel selection (Sele¸˜o do kernel) ca Aqui vocˆ dever´ escolher um kernel para ser instalado. aparece e a a c ca e um menu. Os pacotes requeridos n˜o aparecem nesse menu.24 CAP´ ITULO 3. O que vocˆ vˆ depende em grande parte de que programas foram a e e instalados. a e a o e As op¸˜es custom e tag path tamb´m s˜o para usu´rios avan¸ados. do CD-ROM do Slackware. Para maiores informa¸˜es.8 CONFIGURE A se¸˜o configure permite fazer algumas configura¸˜es b´sicas do sistema. j´ que e a ca a a ela assegura que os pacotes desejados sejam instalados. ´ exibida uma descri¸˜o e o tamanho de cada pacote para ajudar e e e ca a decidir se o mesmo ´ necess´rio. Yes e No fazem o ´bvio. ´ a e poss´ controlar exatamente o que entra em seu sistema. Estas op¸˜es permitem co e a a c co a instala¸˜o com base em tag files personalizados criados na ´rvore da distribui¸˜o. vocˆ ter´ c e a ´ problemas. Se tiver selecionado full. ou Skip (pular).4. Se tiver o e ca selecionado full ou menu. No (n˜o). Vocˆ pode instalar o kernel do disco e a e de boot usado na instala¸˜o. os pacotes come¸ar˜o a ser instalados no destino c a imediatamente. ou de outro disquete que vocˆ (sempre ca e se antecipando) tiver preparado. co ca 3. a instala¸˜o oferece a op¸˜o expert. Observe que ´ poss´ e ıvel que o espa¸o em disco acabe durante a instala¸˜o. E mais seguro selecionar alguns programas e adicionar mais depois. E poss´ a ıvel remover da sele¸˜o pacotes que s˜o ca a absolutamente necess´rios. a partir do qual pode-se selecionar todos os pacotes n˜o requeridos que se deseja a instalar. e a e a j´ que ´ muito f´cil dar um tiro no pr´prio p´. a Isto pode ser feito facilmente usando as ferramentas de gerenciamento de pacotes do Slackware. os pacotes ser˜o instalados at´ que se alcance um a e pacote opcional. a Menu ´ uma vers˜o mais r´pida e mais avan¸ada da op¸˜o newbie. Em cada s´rie. Para maiores informa¸˜es sobre u a co ca o uso de tag files. Isto n˜o ´ recomendado para os novos usu´rios. ela ´ um pouco mais lenta e devido `s perguntas. Contudo. Isto permite total a c ca ca ´ controle sobre quais pacotes s˜o instalados. Por outro lado.4. Al´m disso. Se tiver selecionado newbie. enquanto Skip pula para a pr´xima a o o s´rie de software. o que resulta em um sistema entrar em colapso.

simplesmente (como ´ de se esperar) grava um kernel no disquete. cria um disco de boot do ca ıvel e e ´ claro. que. Mais especificamente. em qual porta serial ele est´. se vocˆ possui um a co e modem. e. de modo que n˜o ser´ criado um disco de boot.3.1 para maiores informa¸˜es. O PROGRAMA SETUP 25 Make a boot disk (Fazer um disco de boot) Provavelmente ser´ uma boa id´ia fazer um disco de boot para usar no futuro. ent˜o. criar um dos dois tipos de disco de boot. Vocˆ ter´ a a e e a op¸˜o de formatar um disquete e.4. a . E simplesmente continuar. Veja LILO na se¸˜o 7. Uma e op¸˜o mais flex´ (e altamente recomendada) ´ lilo. vocˆ tamb´m pode decidir ca co e e lilo. simple (simples). a a Modem Ser˜o solicitadas informa¸˜es sobre o seu modem. O primeiro ca a tipo. ´ claro. se possuir.

a lista (extremamente longa) est´ em ordem alfab´tica.26 CAP´ ITULO 3. sentimos muito. e vocˆ est´ no a e e a final dela. Mouse Esta sub-se¸˜o simplesmente pergunta que tipo de mouse vocˆ tem. e se vocˆ quer ter suca e e porte ao mouse no console com o gpm(8) habilitado na inicializa¸˜o. Timezone (Fuso hor´rio) a Aqui ´ bem direto: ser´ perguntado em qual fuso hor´rio vocˆ est´. INSTALACAO ¸˜ As pr´ximas sub-se¸˜es de configura¸˜o podem aparecer ou n˜o. ca . dependendo se os seus o co ca a pacotes correspondentes tiverem sido instalados. Se estiver no hor´rio e a a e a a Zulu.

4. A maioria dos PCs n˜o est˜o. O PROGRAMA SETUP 27 Hardware clock (Rel´gio de hardware) o Esta sub-se¸˜o pergunta se o rel´gio de hardware do seu computador est´ ajustado no Tempo ca o a Universal Coordenado (UTC ou GMT). ent˜o provavelmente vocˆ a a a e deve dizer ”no”(n˜o). .3. a Font A sub-se¸˜o font permite que se escolha dentre de uma lista de fontes personalizadas para o ca console.

ca ız .28 CAP´ ITULO 3. a op¸˜o expert ´ uma melhor escolha. vocˆ poder´ o a a ca e a escolher onde o LILO ser´ instalado.1 para maie ca ores informa¸˜es). O LILO pode ficar na MBR (Master Boot Record) do seu a disco r´ ıgido. ou em um disquete. a n˜o ser que vocˆ saiba o que est´ fazendo e que tenha a a e a e a uma ´tima raz˜o para n˜o instalar o LILO. a op¸˜o simple (sim´ ca ples) deve funcionar perfeitamente. A terceira op¸˜o. INSTALACAO ¸˜ LILO ca Aqui ´ perguntado sobre a instala¸˜o do LILO (o LInux LOader. co Se o Slackware for o unico sistema operacional em seu computador. veja a se¸˜o 7. no superbloco da sua parti¸˜o ra´ do Linux. n˜o ´ recomendada. do not install ca co ca (n˜o instalar).5 para maiores informa¸˜es sobre dual-boot. Se o modo de instala¸˜o for ”expert”. Se houver dual-boot. ca e Veja a se¸˜o 7.

provavelmente est´ ser´ uma boa id´ia.1 para maiores ca ca e ca informa¸˜es. a ultima coisa que ser´ feita na se¸˜o a ´ a ca configure ser´ perguntar se vocˆ quer continuar e criar uma senha para o root. . N˜o importa quais pacotes tenham sido instalados. co X Window Manager (Gerenciador de Janelas do X) ca Esta sub-se¸˜o permite a escolha de um gerenciador de janelas padr˜o para o X. Veja a se¸˜o 5. O PROGRAMA SETUP 29 Network Na verdade. como tudo mais no Slackware. Veja se¸˜o ca a 5. a sub-se¸˜o de configura¸˜o network ´ o netconfig. Por raz˜es de a e o seguran¸a.4. vocˆ c a a e e decide.1 para maiores detalhes sobre o X e gerenciadores de janelas. todavia.3.

INSTALACAO ¸˜ .30 CAP´ ITULO 3.

Windows ou de um sistema Macintosh (com a exce¸˜o do Mac OS X que ´ baseado no ca e Unix). Este conceito pode soar estranho. o kernel era simplesmente armazenado sob o o 31 .1. O kernel ´ armazenado aqui desde a vers˜o 8. cp.Arquivos que s˜o utilizados pelo Linux Loader (LILO). mas estas se¸˜es o ajudar˜o a ficar familiarizado com o seu layout. Cada parti¸˜o em seu sistema ´ montado como ca e ´ um diret´rio dentro do diret´rio principal. como uma parti¸˜o pode ser montada para qualquer diret´rio. ca boot . E tudo sem precisar mover nada de lugar. ´ uma boa id´ia e c e e entender como o sistema ´ organizado e que comandos podem ser utilizados para procurar por e ´ arquivos e programas. mas isso torna sua vida mais f´cil quando a vocˆ quer adicionar mais espa¸o. Vocˆ pode co ´ o e relacionar isto com o drive C: do ambiente DOS. vamos dizer que vocˆ ficou sem espa¸o em disco e c e c no diret´rio /home. Muitas pessoas ao instalarem o Slackware criam uma unica parti¸˜o raiz. Sob o Linux.1 do co o ca e a Slackware. vocˆ poder´ avan¸ar na configura¸˜o das partes ca e a c ca mais avan¸adas do sistema. E como se vocˆ tivesse um disco r´ o o e ıgido expans´ ıvel. se vocˆ precisar´ compilar um kernel otimizado e e e a quais os passos que dever˜o ser seguidos. Por exemplo. c Abaixo. para identificar a a as diferentes parti¸˜es. ´ o e a ca o ca e na forma de atualiza¸˜o de pacotes que fornecemos. e a co o bin . e uma barra (/ ). e assim por diante) s˜o armazenados a aqui. Logo de in´ ıcio. o ´ ca Bem. Coisas a ca como o shell e os comandos do sistema de arquivos (ls. vocˆ s´ precisa ir at´ a ca o e o e loja mais pr´xima e comprar um disco r´ o ıgido novo e mont´-lo como /home. n˜o s˜o utilizados letras para os drivers. Este cap´ a ıtulo ir´ familiariz´-lo com a organiza¸˜o do a a ca sistema e a configura¸˜o de arquivos. Em vers˜es anteriores do Slackware. Isso representa um a a conjunto m´ ınimo de programas requeridos pelo usu´rio para a utiliza¸˜o do sistema. vocˆ ir´ encontrar as descri¸˜es dos diret´rios mais importantes sob o Slackware.Programas essenciais para os usu´rios s˜o armazenados aqui. de modo que vocˆ co a e facilmente poder´ configurar seu sistema para as suas necessidades.1 Layout do Sistema de Arquivos A primeira diferen¸a marcante entre o Slackware Linux e um sistema DOS ou Windows ´ o c e sistema de arquivos. O diret´rio /bin tamb´m n˜o recebe modifica¸˜o ap´s a instala¸˜o. Chamamos o diret´rio principal de diret´rio root (ou ra´ e o mesmo ´ representado por o o ız). Esse diret´rio tamb´m recebe a o e pequenas modifica¸˜es ap´s a instala¸˜o. Se isso acontecer. a 4. Um sistema Linux ´ significativamente diferente de um sistema ca e DOS.Cap´ ıtulo 4 Configura¸˜o do Sistema ca Antes de vocˆ poder configurar as partes mais avan¸adas do seu sistema. existe apenas um unico diret´rio principal. E bom saber tamb´m. Assim.1 Vis˜o Geral do Sistema a ´ E importante entender como um sistema Linux ´ montado antes de mergulhar nos v´rios e a aspectos de sua configura¸˜o. Vocˆ agora colocou a e mais espa¸o em seu sistema. c 4.

32

CAP´ ITULO 4. CONFIGURACAO DO SISTEMA ¸˜

diret´rio / , por´m a pr´tica comum ´ montar o kernel e os arquivos relacionados aqui, para o e a e facilitar o dual-booting (ou boot duplo). dev - Tudo no Linux ´ tratado como arquivo, inclusive dispositivos de hardware como as e portas seriais, discos r´ ıgidos, e scanners. Em ordem de acessar esses dispositivos, um arquivo especial chamado de dispositivo de conex˜o tem de estar presente. Todos os dispositivos de a conex˜o s˜o armazenados no diret´rio /dev. Vocˆ vai descobrir que isso ´ verdade atrav´s dos a a o e e e muitos sistemas operacionais baseados em Unix. etc - Esse diret´rio mant´m os arquivos de configura¸˜o do sistema. Todos os arquivos o e ca de configura¸˜o do X Window, o banco de dados do usu´rio, at´ o sistema de inicializa¸˜o de ca a e ca scripts. Com o tempo, o administrador do sistema ficar´ bastante familizado com este diret´rio. a o home - O Linux ´ um sistema operacional multi-usu´rio. A cada usu´rio no sistema ´ e a a e dado uma conta e um diret´rio unico para seus arquivos pessoais. Este diret´rio ´ chamado o ´ o e de diret´rio ra´ do usu´rio. O diret´rio /home ´ fornecido como localiza¸˜o padr˜o para os o ız a o e ca a diret´rios ra´ do usu´rio. o ız a lib - As bibliotecas do sistema que s˜o necess´rias para opera¸˜es b´sicas do sistema s˜o a a co a a armazenadas aqui. A biblioteca C, o carregador dinˆmico, as bibliotecas ncurses e os m´dulos a o do kernel est˜o entre as coisas aqui armazenadas. a mnt - Este diret´rio cont´m pontos de montagem tempor´rios para discos r´ o e a ıgidos em operaca ¸˜o ou drives remov´ ıveis. Aqui vocˆ encontrar´ os pontos de montagem para o seus drives de e a CD-ROM e de disquete. opt - Pacotes de software opcionais. A id´ia por tr´s do diret´rio /opt ´ que cada pacote e a o e de software instalado no diret´rio /opt/pacote de software, que seja f´cil de remover depois. O o a Slackware distribui algumas coisas no diret´rio /opt (como o KDE em /opt/kde), por´m vocˆ o e e ´ livre para adicionar qualquer coisa que queira ao diret´rio /opt. e o proc - Este ´ um diret´rio unico. Ele n˜o ´ realmente parte do sistema de arquivos, mas sim e o ´ a e um sistema de arquivos virtual que provˆ acesso as informa¸˜es do kernel. V´rios peda¸os de e co a c informa¸˜o que o kernel quer que vocˆ conhe¸a s˜o transportados a vocˆ atrav´s de arquivos ca e c a e e no diret´rio /proc. Vocˆ pode enviar informa¸˜o para o kernel atrav´s desses mesmos arquivos. o e ca e Tente o comando cat /proc/cpuinfo. root - O administrador do sistema ´ conhecido como root no sistema. O diret´rio ra´ do e o ız usu´rio root ´ mantido em /root em vez de /home/root. A raz˜o ´ simples. O que acontece se o a e a e diret´rio /home estiver em uma parti¸˜o diferente do diret´rio / e n˜o puder ser montado? O o ca o a usu´rio //root ir´ querer logar e repara o problema. Se o seu diret´rio de usu´rio ra´ estiver a a o a ız no sistema de arquivos danificado, ser´ meio dif´ para ele conseguir logar-se. a ıcil sbin - Programas essenciais que s˜o rodados pelo usu´rio root e durante o processo de boot a a do sistema s˜o mantidos aqui. Usu´rios normais n˜o ir˜o rodar programas neste diret´rio. a a a a o tmp - Local de armazenagem tempor´ria. Todos os usu´rios possuem acesso de leitura e a a escrita neste diret´rio. o usr - Este ´ o maior diret´rio em um sistema Linux. Tudo o mais vem aqui, programas, e o documenta¸˜o, o c´digo-fonte do kernel, e o sistema X Window. Este ´ o diret´rio que vocˆ ca o e o e mais ir´ gostar de estar instalando programas. a var - Arquivos de log do sistema, informa¸˜es de cache, e arquivos protegidos de programas co s˜o armazenados aqui. Este ´ o diret´rio para mudan¸as freq¨entes de informa¸˜o. a e o c u ca Vocˆ agora deve ter uma boa no¸˜o para quais diret´rios cont´m o que no sistema de arquivos. e ca o e Informa¸˜es mais detalhadas sobre o layout do sistema de arquivos est˜o dispon´ co a ıveis nas p´ginas a de manual do hier(7). A pr´xima se¸˜o ir´ ajud´-lo a encontrar arquivos espec´ o ca a a ıficos com facilidade, ent˜o vocˆ n˜o precisar´ fazer isso de forma bra¸al. a e a a c 4.1.2 Encontrando Arquivos

Agora vocˆ sabe o que cada diret´rio principal cont´m, mas isso realmente n˜o ajuda em nada e o e a a encontrar coisas. Eu creio que vocˆ poderia ir olhando atrav´s dos diret´rios, por´m existem e e o e

˜ 4.1. VISAO GERAL DO SISTEMA

33

maneiras r´pidas de fazer isso. Existem quatro comandos principais de busca de arquivos a dispon´ ıveis no Slackware. which O primeiro ´ o comando which(1). O comando which ´ geralmente usado para achar de e e forma r´pida a localiza¸˜o de um programa. Ele apenas procura seu PATH e retorna a primeira a ca instˆncia encontrada e o caminho do diret´rio do mesmo. Pegue este exemplo: <code> $ which a o bash /bin/bash </code> Pelo que vocˆ j´ viu do bash ele est´ no diret´rio /bin. Este ´ um comando de busca muito e a a o e limitado, j´ que o mesmo s´ procura pelo PATH. a o whereis O comando whereis(1) trabalha de forma similar ao comando which, mas pode tamb´m e procurar por p´ginas de manual e arquivos fontes. Um comando whereis para procurar pelo a programa bash iria retornar: <code> $ whereis bash bash: /bin/bash /usr/bin/bash /usr/man/man1/bash.1.gz </code> Este comando n˜o apenas nos diz onde atualmente o programa est´ localizado, mas tamb´m a a e onde a sua documenta¸˜o online est´ armazenada. Ainda assim, este comando ´ limitado. O ca a e que aconteceria se vocˆ precisasse procurar por um arquivo de configura¸˜o espec´ e ca ıfico? Vocˆ e n˜o poderia utilizar o comando which ou o whereis para isso. a find O comando find (1) permite ao usu´rio procurar o sistema de arquivos com um rico arsenal a de op¸˜es de busca. Usu´rios poderiam especificar uma busca com espress˜es regulares no nome co a o do arquivo, alcance de modifica¸˜es ou tempo de cria¸˜o, ou outra propriedade avan¸ada. Por co ca c exemplo, para procurar pelo arquivo xinitrc padr˜o em um sistema, o comando a seguir poderia a ser utilizado. <code> $ find / -name xinitrc /var/X11R6/lib/xinit/xinitrc </code> O comando find ir´ demorar um pouco no processo, desde que ele vai varrer tudo na ´rvore a a de diret´rios ra´ E se este comando estiver rodando por um usu´rio normal, ir˜o aparecer o ız. a a v´rias mensagens erro de permiss˜o negada para os diret´rios em que apenas o usu´rio root a a o a pode ver. Por´m se o comando find encontra qualquer arquivo, isto ´ bom. Se ele pudesse ser e e pelo menos um pouco mais r´pido... a slocate O comando slocate(1) procura no sistema de arquivos inteiro, assim como o comando find pode fazer, por´m ele procura em um banco de dados em vez do atual sistema de arquivos. O e banco de dados est´ programado para ser atualizado toda manh˜, ent˜o vocˆ ter´ de algum a a a e a modo uma lista atualizada dos arquivos de seu sistema. Vocˆ pode rodar manualmente o e comando updatedb(1) para atualizar o banco de dados slocate (antes de rodar na m˜o o comando a updatedb, vocˆ precisa primeiro rodar o comando su para virar o usu´rio root). Aqui est´ um e a a exemplo do comando slocate em a¸˜o: ca <code> $ slocate xinitrc # we don’t have to go to the root /var/X11R6/lib/xinit/xinitrc /var/X11R6/lib/xinit/xinitrc.fvwm2 /var/X11R6/lib/xinit/xinitrc.openwin /var/X11R6/lib/xinit/xinitrc. </code> N´s conseguimos mais do que est´vamos procurando, e de forma r´pida tamb´m. Com esses o a a e comandos, vocˆ ser´ capaz de encontrar qualquer coisa que estiver procurando em seu sistema e a Linux. 4.1.3 O Diret´rio /etc/rc.d/ o

Os arquivos de inicializa¸˜o do sistema s˜o armazenados no diret´rio /etc/rc.d. O Slackware ca a o utiliza o layout estilo BSD para estes arquivos de inicializa¸˜o ao contr´rio dos scripts de ca a inicializa¸˜o do System V, a qual tende a tornar as mudan¸as na configura¸˜o mais dif´ ca c ca ıceis sem estar utilizando um programa especificamente desenhado para esta fun¸˜o. Nos scripts de ca inicializa¸˜o do BSD, cada runlevel ´ um arquivo rc simples. No System V, cada runlevel ´ ca e e

34

CAP´ ITULO 4. CONFIGURACAO DO SISTEMA ¸˜

dado a seu pr´prio diret´rio, a qual cont´m in´meros scripts de inicializa¸˜o. Isto provˆ uma o o e u ca e estrutura organizada que ´ f´cil de manter. e a Existem v´rias categorias de arquivos de inicializa¸˜o. Estes s˜o o sistema de inicializa¸˜o, a ca a ca runlevel, inicializa¸˜o de rede, e a compatibilidade com o System V. Pela tradi¸˜o, n´s iremos ca ca o amontoar todas as outras coisas em uma nova categoria. Inicializa¸˜o do Sistema ca O primeiro programa a rodar sobre o Slackware, al´m do kernel Linux, ´ o init(8). Este e e programa lˆ o arquivo /etc/inittab(5) para ver como carrega o sistema. Ele roda o script e /etc/rc.d/rc.S para preparar o sistema antes de ir para o n´ de execu¸˜o desejado. O arquivo ıvel ca rc.S habilita sua mem´ria virtual, monta seu sistema de arquivos, limpa certos diret´rios de log, o o inicializa os dispositivos Plug and Play, carrega os m´dulos do kernel, configura os dispositivos o PCMCIA, ativa as portas seriais, e os scripts de inicializa¸˜o do System V (se encontrado). ca Obviamente o rc.S possui muitos recursos, mas existe alguns scripts no diret´rio /etc/rc.d que o o rc.S ir´ chamar para completar seu trabalho: a rc.S - Este ´ o atual script do sistema de inicializa¸˜o. e ca rc.modules - Carrega os m´dulos do kernel. Coisas como sua placa de rede, suporte a PPP, o e outras coisas s˜o carregadas aqui. Se este script acha o rc.netdevice, correr´ tudo bem. a a rc.pcmcia - Investiga e configura qualquer dispositivo PCMCIA que vocˆ possa ter em seu e sistema. Isto ´ bem util para usu´rios de laptops, que provavelmente possuem um modem ou e ´ a rede PCMCIA. rc.serial - Configura suas portas seriais rodando os comandos apropriados do setserial. rc.sysvinit - Procura pelos scripts de inicializa¸˜o do System V para o runlevel desejado e ca os inicializa. Este assunto ´ discutido em maiores detalhes abaixo. e Scripts de inicializa¸˜o do Runlevel ca Ap´s o sistema de inicializa¸˜o estar completo, o comando init vai para a inicializa¸˜o do o ca ca runlevel. Um runlevel descreve o n´ em que a sua m´quina ir´ rodar. Isso soa redundante? ıvel a a Bem, o runlevel comunica ao init se vocˆ estar´ aceitando logins de multi-usu´rios ou apenas e a a de um unico usu´rio, independente se vocˆ vai utilizar os servi¸os de rede ou n˜o, e se vocˆ ´ a e c a e estar´ utilizando o X Window System ou o comando agetty(8) para manipular os logins. Os a arquivos abaixo definem os diferentes runlevels no Slackware Linux. rc.0 - Desliga o sistema (runlevel 0). Por padr˜o, este runlevel est´ linkado ao rc.6. a a rc.4 - Inicializa¸˜o multi-usu´rio (runlevel 4), por´m no X11 com o KDM, GDM, ou XDM ca a e como o gerenciador de login. rc.6 - Reinicializa o sistema (runlevel 6). rc.K - Inicializa o sistema em modo mono-usu´rio (runlevel 1). a rc.M - Modo multi-usu´rio (runlevels 2 e 3), por´m com o login em modo texto padr˜o. a e a Este ´ o runlevel padr˜o no Slackware. e a Inicializa¸˜o de rede ca Os Runlevels 2, 3, e 4 ir˜o inicializar os servi¸os de rede. Os seguintes arquivos s˜o respona c a s´veis pela inicializa¸˜o do sistema: a ca rc.inet1 - Criado pelo netconfig, este arquivo ´ respons´vel pela configura¸˜o da atual intere a ca face de rede. rc.inet2 - Roda depois do rc.inet1 e inicializa os servi¸os de rede b´sicos. c a rc.atalk - Inicializa os servi¸os AppleTalk. c rc.httpd - Inicializa o servidor Apache. Como alguns outros scripts, este pode ser utilizado para parar e reiniciar um servi¸o. O rc.httpd toma argumentos de parada, inicio, ou reinicio. c rc.news - Inicializa o servidor de news. Compatibilidade com System V A compatibilidade com o System V init foi introduzida no Slackware 7.0. Muitas outras distribui¸˜es Linux fazem uso deste estilo, em vez do estilo BSD. Basicamente a cada runlevel co ´ dado um sub-diret´rio para os scripts do init, do contr´rio do estilo BSD que d´ um script de e o a a inicializa¸˜o para cada runlevel. ca

co 4. como nos kernels terminados em . o gpm ir´ causar problemas para o mouse quando a for usado sobre o X Windows. Os kernels que terminam com . controle de processos.2.Cont´m todos os comandos espec´ e ıficos de inicializa¸˜o do seu sistema. Os o o sub-diret´rios possuem o mesmo nome que o seu disco de boot que o acompanha.1 O diret´rio /kernels no CD-ROM do Slackware o Os kernels pr´-compilados est˜o dispon´ e a ıveis no diret´rio /kernels no CD-ROM do Slackware o ou no site de FTP no diret´rio principal do Slackware. a rc. Permite que vocˆ possa copiar e c ca e colar no console do Linux.2 Selecionando um Kernel O kernel ´ a parte do sistema operacional que provˆ acesso ao hardware. Este script ca ´ inicializado ap´s todas as outras inicializa¸˜es terem sido realizadas. Isso ´ tudo que h´ para instalar um novo kernel.gpm . ca Outros Arquivos Os scripts descritos abaixo s˜o os outros scripts de inicializa¸˜o do sistema.i. ent˜o a documenta¸˜o em cada diret´rio ´ o c´digo-fonte o a c a ca o e o do mesmo. e o co Para habilitar um script. a ca rc. e u rc. O kernel cont´m suporte para seus dispositivos de hardware. SELECIONANDO UM KERNEL 35 O script rc.map bzImage config Prop´sito o O arquivo de mapas do sistema para este kernel A imagem do kernel atual O arquivo-fonte de configura¸˜o para este kernel ca Para utilizar um kernel. e O Slackware provˆ mais de uma d´zia de kernels pr´-compilados que vocˆ poder´ utilizar. Seja qualquer uma das op¸˜es que for escolhida. Rode o /sbin/lilo(8) para instalar o LILO para este novo kernel. . Ocasionalmente.2.d e inicializ´-los.Inicializa os servi¸os de habilita¸˜o do mouse. ent˜o tudo de que vocˆ precisa fazer a e ´ editar seus conte´dos.sysvinit ir´ procurar por todos os scripts de inicializa¸˜o do System V que vocˆ a ca e tenha em /etc/rc. se o runlevel for apropriado. a e a Os kernels que terminam com um . tente tirar a e permiss˜o de execu¸˜o deste arquivo parando o servidor gpm. Ele fica ca vazio depois de uma instala¸˜o limpa.local . ent˜o e a escolher um kernel para o seu sistema ´ um passo muito importante. Para desabilitar um script.i s˜o kernels IDE.2. Em cada o sub-diret´rio vocˆ ir´ encontrar os seguintes arquivos: o e a Arquivo System. Eles s˜o rodados a ca a tipicamente de um dos principais scripts descritos acima. copie os arquivos System. Os kernels dispon´ o ıveis mudam sempre que novas vers˜es s˜o lan¸adas. e 4. Se vocˆ tiver problemas com o uso do mouse no X. esta reservado para administradores locais. a Eles incluem todo o suporte a IDE. remova a permiss˜o de execu¸˜o do a ca ca mesmo. e e e todo o sistema de controle. O diret´rio /kernels possui sub-diret´rios para cada kernel disponibilizado. e u e e a cada qual com um conjunto padr˜o de drivers gen´ricos e alguns drivers espec´ a e ıficos. Isto ´ util para certos pacotes a e´ de software que instalam os scripts de inicializa¸˜o no System V.font . e ent˜o reinicie seu sistema.4. Vocˆ pode e rodar um dos kernels pr´-compilados ou pode construir seu pr´prio kernel a partir do c´digoe o o fonte. vocˆ precisar´ ter certeza que o seu co e a kernel tenha o suporte ao hardware que vocˆ possui. tudo que vocˆ precisa fazer ´ adicionar permiss˜es de execu¸˜o a e e o ca ele com o comando chmod.map e config para o seu diret´rio /boot e o copie a imagem do kernel para /boot/vmlinuz.s s˜o kernels com suporte a SCSI. veja a se¸˜o 9. Para maiores informa¸˜es sobre o comando chmod. al´m de terem o suporte e a SCSI. Sendo assim.Carrega as fontes customiz´veis para o console. eles n˜o incluem suporte a a a SCSI na base do seu kernel.

a Construir seu pr´prio kernel n˜o ´ t˜o dif´ assim.2 Compilando um Kernel a partir do c´digo-fonte o A quest˜o ”Devo compilar um kernel para meu sistema?” ´ sempre questionado por usu´rios a e a novatos. vers˜o P&R (Perguntas e Respostas)) # make a menuconfig (menu dirigido. e o GNU e binutils.36 CAP´ ITULO 4. Vocˆ ir´ querer ter e ca e a certeza que possui a s´rie D instalada. Qualquer a o o um com um sistema SMP definitivamente ir´ querer compilar um kernal com suporte a SMP. Vocˆ ir´ o a e a querer compilar um kernel para o seu sistema apenas se vocˆ precisar fazer um upgrade de e seu atual kernel para um que n˜o esteja atualmente disponibilizado para o slcakware. Este far´ e a diversas perguntas e. Em geral.2. que n˜o esteja presente no c´digo nativo no c´digo-fonte do seu kernel. muitos usu´rios acham que um kernel customizado rodar´.x ca a <code> $ su .kernel. ´ uma boa id´ia ter a s´rie D inteira instalada se vocˆ planeja fazer qualquer e e e e tipo de desenvolvimento. A resposta ´ sempre talvez. A maioria dos usu´rios pode utilizar um kernel pr´a e compilado e seus m´dulos carreg´veis para terem um sistema totalmente funcional.config e a j´ que esse comando ir´ apagar ele sem nenhum aviso): a a <code> # make mrproper</code> Agora vocˆ pode configurar o kernel para o seu sistema. ıvel Compila¸˜o do Kernel Linux vers˜o 2. CONFIGURACAO DO SISTEMA ¸˜ 4. O m´todo que a e maior parte dos usu´rios preferem ´ o de sistema de menu. A primeira ´ o original sistema de perguntas-e-respostas em modo texto.org/mirrors. O primeiro passo ´ ter certeza que o a e a ıcil e vocˆ tem o c´digo-fonte do kernel instalado no seu sistema. ou se a vocˆ estiver adicionando novas funcionalidades ao seu kernel para dar suporte a um hardware e espec´ ıfico. existe uma ferramenta de a e ´ configura¸˜o gr´fica do kernel. o GNU make. vers˜o baseado em texto) # make xconfig (vers˜o baseado em X. Existem poucas ocasi˜es onde vocˆ ir´ precisar compilar e o e a um kernel espec´ ıfico para o seu sistema. O a ca problema deste m´todo ´ se vocˆ errar algo. Vocˆ tamb´m pode baixar a ultima vers˜o do c´digo-fonte do kernel e e ´ a o dispon´ em http://www. O kernel atual oferece 3 maneiras de e fazer isso. a Tamb´m.4. acredito que vocˆ v´ querer fazer um backup do arquivo . Escolha uma de sua preferˆncia e digite o comando apropriado: ca a e <code> # make config (baseado em texto. ter´ de recome¸ar tudo do in´ e e e a c ıcio.Password: # cd /usr/src/linux </code> A primeira etapa ´ trazer o c´digo-fonte do kernel ao seu estado de base. Tenha certeza de ter instalado e o os pacotes da s´rie K durante o processo de instala¸˜o do seu Slackware. especificamente o compilador C. N´s emitimos este e o o comando para fazer isso (nota. a a certifique-se que vocˆ est´ primeiramente no X) </code> e a . ir´ construir um arquivo de configura¸˜o. Vocˆ achar´ util compilar e a a e a´ o kernel com otimiza¸˜es para o processador espec´ co ıfico de sua m´quina. Por ultimo. baseado nas suas respostas.

´ altamente e e ca e recomendado que vocˆ habilite o modo descritivo de novo.4. <code> # make bzImage V=1</code> . o e <code> # make bzImage </code> Isso pode demorar um pouco. os comandos abaixo devem ser digitados: <code> # mv /boot/vmlinuz /boot/vmlinuz. Kernel Linux Vers˜o 2. SELECIONANDO UM KERNEL 37 menu de configura¸˜o do kernel ca Os usu´rios novatos provavelmente ir˜o achar o comando menuconfig mais f´cil de usar. vocˆ ir´ querer construir todas as partes do kernel que vocˆ marcou para serem e a e modulares. Ele ir´ escrever os arquivos de configura¸˜o necess´rios. Vocˆ agora j´ pode reiniciar com o seu ca e a novo kernel. execute o comando a o /sbin/lilo para instalar o novo bloco de inicializa¸˜o.6. Para instalar o kernel em e o um sistema Slackware. dependendo da velocidade de sua CPU. Ap´s configurar seu kernel.conf e adicionar uma se¸˜o para a inicializa¸˜o de e a ca ca seu kernel antigo em caso do novo kernel n˜o funcionar. <code> # make modules</code> Vocˆ agora pode instalar o kernel e seus m´dulos que compilou.old # cat arch/i386/boot/bzImage > /vmlinuz # mv /boot/System. saia e co a o do programa de configura¸˜o. Vocˆ pode fazer isso modificando a e e op¸˜o V=1 na constru¸˜o. N˜o ´ mais necess´rio rodar os e c a e a comandos make dep e make clean. por´m tem seus contras.2. mas ´ imca e e portante que vocˆ entenda as diferen¸as antes de pesquisar. Ap´s ter feito isso.map # make modules install </code> Vocˆ ir´ querer editar o arquivo /etc/lilo. Tamb´m. Ap´s construir a imagem ca e a ca o do kernel. Durante o processo de constru¸˜o.6 kernel ´ levemente diferente do kernel 2.map /boot/System. Isso permite a vocˆ ter mais informa¸˜es da sa´ da compila¸˜o que ca ca e co ıda ca poder´ ajudar um desenvolvedor de kernel ou outro amigo entendido a te ajudar na resolu¸˜o a ca deste problema.2.map. Se vocˆ tiver problemas na constru¸˜o do kernel. Agora ca a ca a n´s podemos preparar a ´rvore do c´digo-fonte do kernel para uma constru¸˜o: o a o ca <code> # make dep # make clean </code> A pr´xima etapa ´ compilar o kernel. As a a a telas de ajuda provˆm explica¸˜es de v´rias partes do kernel.6.x a A compila¸˜o do kernel 2. o processo de compila¸˜o do kernel n˜o ´ mais e ca a e em modo descritivo na s´rie 2.map /boot/System. Isso resulta em uma constru¸˜o de processos de f´cil entendie ca a mento.4 ou 2. Primeiro tente emitir o comando bzImage abaixo. vocˆ poder´ ver as mensagens geradas pela compila¸˜o.old # cp System.

Para maiores informa¸˜es o a co sobre o kmod e como ele ´ configurado. e Vocˆ ir´ precisar do pacote de c´digo-fonte do kernel.38 CAP´ ITULO 4. CONFIGURACAO DO SISTEMA ¸˜ 4. veja o arquivo /usr/src/linux/Documentation/kmod. mesmo se o o e sistema estiver rodando. Para remover e o o um m´dulo.txt. O kmod ´ uma op¸˜o do kernel que habilita o kernel e ca para carregar automaticamente os m´dulos que s˜o requisitados.org.2. vocˆ usa o comando rmmod (1). utilize o comando lsmod (1): o <code> # lsmod Module Size Used by parport pc 7220 0 parport 7844 0 [parport pc] </code> Vocˆ pode ver aqui que eu s´ tenho o m´dulo da porta paralela carregado. Maiores informa¸˜es podem ser encontradas nas p´ginas de manual para cada um desses co a comandos. Eles permitem a vocˆ extender o suporte ao hardware pelo seu kernel e sem precisar usar outro kernel ou mesmo compilar um novo.3 Utilizando os M´dulos do Kernel o Os m´dulos do kernel ´ outra defini¸˜o para os drivers de dispositivo que podem ser inseridos o e ca em um kernel em uso. Para ver a lista dos m´dulos atualmente ativos. Isso torna a atualiza¸˜o de drivers mais f´cil para os administradores ca a de sistema. Os m´dulos podem tamb´m ser carregados e descarregados a qualquer hora. ou baixar o c´digo-fonte do kernel de e a o o http://kernel. o o a Slackware inclui o kmod em seu kernel. Eles a a o a utilizam o auto-carregamento do kernel para o gerenciamento de m´dulos. Este ca e arquivo ´ muito bem documentado e oferece exemplos para a maior parte dos componentes de e hardware. o a o a Eles podem ser carregados na inicializa¸˜o do sistema atrav´s do arquivo rc. um antigo removido. e V´rios usu´rios nunca tiveram que carregar ou descarregar m´dulos de kernel na m˜o. tudo isso sem precisar reiniciar sua m´quina. Os m´dulos podem ser carregados pelos comano e o dos modprobe(1) ou insmod (1). a Os m´dulos s˜o armazenados no diret´rio /lib/modules/vers˜o do kernel do seu sistema. al´m do arquivo rc. e .modules. Por padr˜o. e o novo ser carregado o em seu lugar. modprobe ´ normalmente mais seguro porque ele ir´ carregar e a qualquer m´dulo dos dispon´ o ıveis que possuam dependˆncias com o carregamento atual. Um novo m´dulo pode ser compilado.modules.

olhar uma e a configura¸˜o funcional pode ser util. co 5. Via de co e regra vocˆ ficar´. se vocˆ permitir. • Se vocˆ ainda est´ aprendendo o sistema operacional Linux ou o Slackware. a e a primeira coisa que vocˆ precisar´ ´ de uma placa de rede compat´ com o Linux. consulte o Projeto de Documenta¸˜o do Linux e/ou a documenta¸˜o do ca ca kernel para informa¸˜es sobre o status atual da placa de rede que vocˆ deseja utilizar). vocˆ deve revisar a configura¸˜o e ca e ca pessoalmente.1 Introdu¸˜o: netconfig ´ seu amigo. ca e Quando vocˆ instala inicialmente o Slackware.Cap´ ıtulo 5 Configura¸˜o de Rede ca 5. Tendo dito isso. Vocˆ precisa e ae ıvel e ter um pouco de cuidado e se certificar de que sua placa ´ verdadeiramente compat´ com e ıvel o Linux (por favor. Recomenda-se fortemente que vocˆ revise seus arquivos de configura¸˜o e e ca por duas raz˜es: o • Vocˆ nunca deve confiar que um programa de configura¸˜o ir´ configurar corretamente seu e ca a computador. Isso permitir´ que vocˆ possa corrigir posteriormente problemas provenientes de ca a e configura¸˜es erradas realizadas pelo sistema. sugerimos ainda que vocˆ consulte algumas e das v´rias listas de hardwares compat´ a ıveis com o Linux (como por exemplo The GNU/Linux 39 . cita ca a c onde eles devem ser usados.2 Configura¸˜o do Hardware de Rede ca Uma vez que seu desejo ´ conectar sua m´quina com o Slackware em algum tipo de rede. a • Ele faz uma breve explana¸˜o acerca dos v´rios tipos de esquemas de endere¸amento. Se vocˆ usa um programa de configura¸˜o. a a Em geral o netconfig ir´ realizar cerca de 80% do trabalho de configurar sua conex˜o de rede a a LAN. o programa setup chama o programa netconfig. e O netconfig tem como objetivo realizar para vocˆ as seguintes fun¸˜es: e co • Ele te pergunta o nome do seu computador e o nome do dom´ ınio sob o qual o seu computador est´ na rede. provavelmente muito surpreso com o n´mero de placas de rede suportadas e a u sob os kernels mais modernos. e lhe pergunta qual esquema de endere¸amento IP vocˆ deseja c e usar para configurar sua placa de rede: – IP est´tico a – DHCP – Loopback • Ele ent˜o se oferece para detectar alguma placa de rede para configur´-la. Vocˆ vai saber no m´ ca ´ e ınimo qual a aparˆncia da confie gura¸˜o.

Rodar o rc.40 CAP´ ITULO 5.modules padr˜o inclui uma se¸˜o de suporte a perif´ricos a ca e de rede.2. Se vocˆ deseja trabalhar com seu modem no Linux.1 Carregando os M´dulos de Rede o Os m´dulos do kernel s˜o carregados durante a inicializa¸˜o do sistema s˜o carregados pelo o a ca a arquivo rc. ou pelo carregador autom´tico de m´dulos do kernel iniciado pelo a o /etc/rc.3 Modems Assim como as placas de redes locais. Se isso n˜o ocorreu o problema mais prov´vel deve ser o carregamento do a a m´dulo incorreto para a placa em quest˜o (n˜o s˜o conhecidos casos onde para diferentes gerao a a a co ¸˜es de um mesmo tipo/fam´ de placas de um mesmo fabricante sejam necess´rios m´dulos ılia a o diferentes).d/. ca Abaixo do bloco do ”if” est´ uma lista de perif´ricos de rede e linhas com o comando moda e probe comentadas.modules. a partir de agora. e 5. o e a 5. Procure o seu perif´rico e descomente a linha com o modprobe correspone dente. Gra¸as aos esfor¸os da Intel e de fabricantes de placas-m˜e de todo o mundo.modules como root ir´.hotplug. Se vocˆ tˆm certeza que o m´dulo que vocˆ quer carregar ´ o correto. WinModems n˜o possuem algumas fun¸˜es de hardware a a co caracter´ ısticas dos pr´prios modems: as fun¸˜es de responsabilidade desse hardware espec´ o co ıfico . ou ent˜o moa dems internos PCI. /etc/rc. Esse script ´ criado e a e se a tentativa de auto-configura¸˜o do perif´rico de rede executada pelo setup obteve sucesso ca e durante a instala¸˜o. ´ de VITAL importˆncia e e a perquisar o modem que vocˆ pretende comprar.modules e procurar por esta se¸˜o. poder´ notar que ele verifica e ca a inicialmente a existˆncia do arquivo execut´vel rc. e o a Note que alguns m´dulos (como o do driver ne2000) precisam de parˆmetros.2. e ent˜o salve o arquivo. sua pr´xima e e o e e o melhor a¸˜o seria consultar a documenta¸˜o do m´dulo para verificar se o m´dulo exige ou n˜o ca ca o o a algum(uns) parˆmetro(s) espec´ a ıfico(s) no momento em que o m´dulo ´ iniciado. O arquivo rc. E a o a a poss´ que o /sbin/netconfig tenha encontrado e configurado com sucesso sua placa no seu ıvel arquivo rc. se n˜o a maioria. ou quando consultar a documenta¸˜o do kernel instalado na sua m´quina. At´ pouco tempo atr´s a maioria dos modems eram placas com barramento ISA. carregar o a a driver do seu perif´rico de rede (assim como qualquer outro m´dulo listado e n˜o comentado). Quando vocˆ visitar as listas de Hardware Compat´ com o Linux dispon´ e ıvel ıveis na Internet. Muitos. c c a finalmente modems ISA fazem parte do passado.2 Placas de Rede Local (10/100/1000Base-T and Base-2) Esse subt´ ıtulo abrange todas as placas de rede internas ISA ou PCI. o e 5. modems podem ter v´rias op¸˜es de barramento sua co portadas.d. sendo comum atualmente que a maioria dos modems sejam modems externos que se conectam por uma porta serial ou USB. Um pequeno tempo HOWTO) que est˜o dispon´ extra gasto em pesquisa podem economizar dias ou at´ semanas tentando resolver problemas e com placas n˜o compat´ a ıveis totalmente com o Linux. preste aten¸˜o em ca a ca qual m´dulo que vocˆ ir´ precisar para suportar sua placa de rede. tenha certeza que o a vocˆ selecionou a linha correta. CONFIGURACAO DE REDE ¸˜ Beginners Group Hardware Compatibility Links e The Linux Documentation Project Hardware a ıveis na Internet antes de comprar sua placa. particularmente se vocˆ tem inten¸˜o de come e ca prar um modem PCI. de e a 8 ou 16 bits.netdevice em /etc/rc. dos modems PCI atualmente dispon´ a ıveis nas prateleiras das lojas s˜o WinModems. Se vocˆ abrir o rc.d/rc.2.netdevice. Drivers para essas ´ placas s˜o acessados via m´dulos carreg´veis do kernel conforme dito no par´grafo anterior.

opts (para uma placa Ethernet) ou e a o /etc/pcmcia/wireless.opts (se vocˆ tem uma placa de rede sem fio). mas informa¸˜es a respeito do seu perif´rico de rede co e podem ser obtidas com um ifconfig -a. e a Se vocˆ deseja ter absoluta certeza de que o modem que vocˆ est´ comprando ir´ trabalhar e e a a com o Linux.0. Vocˆ ainda n˜o estar´ pronto para se o e a a comunicar utilizando sua placa de rede. ca H´ v´rios sites que oferecem drivers e assistˆncia para configura¸˜o de perif´ricos baseados a a e ca e em WinModems.3. CONFIGURACAO TCP/IP ¸˜ 41 geralmente s˜o descarregadas sobre a CPU pelo driver do modem e pelo sistema operacional a Windows. compre um modem de hardware externo que se conecta ` porta serial do seu a PC. Como a maioria dos e arquivos de configura¸˜o do Slackware. o a 5. Com toda certeza esses ir˜o trabalhar melhor e apresentar menos problemas para instaa lar e dar manuten¸˜o. vocˆ ter´ a oportunidade de instalar o pacote ca e a pcmcia (na s´rie ”A” de pacotes). Os m´dulos e drivers dispon´ o o ıveis podem ser encontrados no diret´rio /lib/modules/‘uname -r‘/pcmcia.5.4 PCMCIA Como parte da instala¸˜o do seu Slackware. Isso significa que eles n˜o tem a interface serial padr˜o que o PPPD estar´ esperando a a a quando vocˆ disca para o seu Provedor de Acesso ` Internet. Conexant e Rockwell. Como os softwares a necess´rios para esses perif´ricos n˜o fazem parte do Slackware. Vocˆ precisar´ editar o arquivo /etc/pcmcia/network.1 Mask:255. a co e 5.0 UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:2234 errors:0 dropped:0 overruns:0 frame:0 . esses dois arquivos s˜o muito bem comentados e isso ca a torna f´cil a tarefa de determinar que modifica¸˜es vocˆ precisa fazer. e variam de driver para driver. E a cote pcmcia instala apenas o software gen´rico necess´rio para trabalhar com placas PCMCIA e a ˜ no Slackware. sua placa de rede deve estar f´ ısicamente instalada no seu computador. Vocˆ possivelmente preo e cisar´ de algumas experiˆncias para encontrar o m´dulo que ir´ trabalhar com sua placa de a e o a rede. a e a n´s n˜o iremos entrar em detalhes.0. e os m´dulos relevantes do kernel devem estar carregados.0.9 Mb) Interrupt:5 Base address:0x8400 lo Link encap:Local Loopback inet addr:127.2. Ele NAO instala qualquer driver ou m´dulo.3 Configura¸˜o TCP/IP ca Nesse momento. em detrimento de precisarem de energia externa e tenderem a custar mais.0. incluindo os de chipset Lucent. Esse pacote cont´m as aplica¸˜es e arquivos de configura¸˜o e e co ca ´ importante notar que o panecess´rios para trabalhar com placas PCMCIA no Slackware. Alguns usu´rios relatam sucessos na configura¸˜o e instala¸˜o de drivers para a ca ca v´rios Winmodems.5 Mb) TX bytes:9337924 (8. # ifconfig -a eth0 Link encap:Ethernet HWaddr 00:A0:CC:3C:60:A4 UP BROADCAST NOTRAILERS RUNNING MULTICAST MTU:1500 Metric:1 RX packets:110081 errors:1 dropped:0 overruns:0 frame:0 TX packets:84931 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 RX bytes:114824506 (109.

´ um m´todo pelo qual um endere¸o IP pode ser atribu´ a um computador quando e e c ıdo esse ´ ligado. O dhcpcd ir´ tamb´m controlar a quantidade a c a a e de tempo de aloca¸˜o restante para o endere¸o IP atual. qual rota pegar.1 DHCP DHCP (Dynamic Host Configuration Protocol ou Protocolo de Configura¸˜o Dinˆmica de ca a Host).16 c u Posso peg´-lo novamente? a Servidor: Sim.10. O servidor ir´ responder a essa requisi¸˜o com um endere¸o a ca c IP do seu conjunto. . o servidor ir´ atender o pedido. um novo a a endere¸o ser´ atribu´ c a ıdo.8 Kb) TX bytes:168758 (164.8 Kb) Se vocˆ digitar /sbin/ifconfig. co etc. pode ser que vocˆ n˜o veja a interface eth0. n~o pode: pegue o 192. Quando o cliente ´ iniciado.d/rc. a c a Uma vez que existem muitas formas diferentes de configurar uma rede. pode (ou N~o.10. c ca Ent˜o. e Cliente: Obrigado. e solicitar´ ao servidor uma re-atribui¸˜o do mesmo endere¸o IP novamente a ca c na pr´xima negocia¸˜o. Uma vez que o tempo de aloca¸˜o para o ca ca endere¸o IP dado expire. durante um tempo de aloca¸˜o. a a Cliente: Obrigado. vocˆ ir´ notar que o /sbin/dhcpcd ´ chamado mais ou menos no meio do e a e script. Assim. sem a op¸˜o -a. a negocia¸˜o se parece com o que segue: ca Cliente: H´ algum servidor DHCP dispon´vel na rede local? a ı Servidor: Sim.168. O DHCP ca ca ca a pode ainda controlar informa¸˜es relacionadas.3. Aqui estou eu. Eu peguei o 192. Isso ir´ for¸ar a o di´logo mostrado acima. ´ 5.12 dessa vez). ele envia uma requisi¸˜o na rede local para que e e ca um servidor DHCP lhe atribua um endere¸o IP. O cliente DHCP no Linux ´ o /sbin/dhcpcd. e ir´ contactar automaticamente o ca c a servidor DHCP com uma requisi¸˜o para renova¸˜o da aloca¸˜o quando necess´rio. o cliente aceitar´ o endere¸o IP enviado pelo servidor e ir´ configurar a interface que a a c a requireu com o endere¸o IP. Cliente: H´ algun servidor DHCP dispon´vel na rede local? a ı Servidor: Sim. Se poss´ o ca ıvel. chamado de servidor DHCP. h´. Entretanto. Redes est´ticas s˜o configuradas para que cada a a a a n´ (nomenclatura geek para objetos que com um endere¸o IP) sempre tenha o mesmo endere¸o o c c IP. Se vocˆ carregar o /etc/rc. CONFIGURACAO DE REDE ¸˜ TX packets:2234 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:168758 (164. h´. h´ ainda um macete manual que o cliente DHCP usa c a para negociar o endere¸o IP que ser´ a ele atribu´ c a ıdo. Aqui estou eu.168. o cliente precisa contactar novamente o servidor e repetir a negocia¸˜o. Da ´ltima vez que conversamos. e ca e a o que indica que sua placa de rede ainda n˜o tem um endere¸o IP v´lido ou uma rota. Redes dinˆmicas s˜o configuradas de forma que o endere¸o IP para cada n´ seja controlado a a c o por um unico servidor. a Cliente: Eu preciso de um endere¸o IP. O servidor DHCP tem um conjunto (ou esc copo) de endere¸os IP dispon´ c ıveis. todas elas podem ser reduzidas a dois tipos: Est´tica e Dinˆmica.42 CAP´ ITULO 5.10 por 19200 segundos. O cliente ir´ lembrar seu ultimo endere¸o a ´ c IP a ele atribu´ ıdo.inet1 em seu e e editor de texto favorito. c Servidor: Voc^ pode pegar o 192. a Cliente: Eu preciso de um endere¸o IP. mas se n˜o for. como qual o servidor ntp usar.

mas o que vocˆ consegue fazer de bom se vocˆ n˜o o e e e a consegue traduzir nomes para endere¸os IP? Ningu´m merece digitar 72. por exemplo para servidores internos de uma rede local. Apenas execute o netconfig e selecione DHCP e quando oferecido.conf Se vocˆ planeja atribuir um endere¸o IP ao seu novo Slackware.conf. Isso c a a c o ´ usado em qualquer caso em que o administrador n˜o deseje que as informa¸˜es relacionadas e a co ao IP mudem. e e e ele obedece.conf c o entra no jogo.d/rc.d/rc. qualquer servidor conectado ` Internet. em geral vocˆ n˜o precisar´ digitar nada aqui.9.3.conf e mude a vari´vel relacionada a a ` sua placa de rede para ”YES”. No /etc/rc. al´m dos autores conseguiriam memorie e ´ ı zar esse endere¸o IP? N´s precisamos configurar o DNS.3. Para cada placa de rede.conf. pois seu servidor DHCP ir´ especificar e a a a qual gateway usar. vocˆ tem um gateway padr˜o. 5. vocˆ atribui um endere¸o IP a c a e c e esquece :). Com o endere¸amento IP est´tico. ou coloque ca a ca ”YES” no USE DHCP.conf Muito bem.d/rc. apenas insira a informa¸˜o correta do IP. Se vocˆ tem mais de uma placa de rede e n˜o deseja que a eth0 seja configue a rada via DHCP. e c /etc/rc. (Tecnicamente o servidor DHCP apenas diz ao dhcpcd o quˆ colocar aqui. CONFIGURACAO TCP/IP ¸˜ 43 Configurar DHCP no Slackware ´ simples. Al´m disso.112 no navegador c e para entrar no www. vocˆ pode ter a e c e a e dez milh˜es de reais (nos dˆ um pouco). se vocˆ precisa atualizar manualmente sua lista de servidores DNS.d/rc. o servidor DHCP pode se encarregar de atualizar esse a arquivo para vocˆ. a e vocˆ ir´ notar: e a # Primary network interface card (eth0) IPADDR[0]="" NETMASK[0]="" USE_DHCP[0]="" DHCP_HOSTNAME[0]="" E. Outras m´quinas saber˜o que vocˆ sempre ter´ um certo endere¸o IP e poder˜o a a e a c a contactar vocˆ no endere¸o de sempre. mais abaixo: GATEWAY= Nesse caso.5. nossa tarefa ser´ meramente colocar a informa¸˜o correta entre as aspas duplas. e .slackbook.inet1.inet1 no momento do boot para configurar as a a placas de rede.) No entanto. apenas edite o arquivo /etc/rc.d/rc. e roteadores. /etc/resolv. Se vocˆ configurar e a co e sua conex˜o de rede usando o DHCP. Ent˜o vocˆ tem um endere¸o IP. Todas as comunica¸˜es a a co entre seu computador e outros computadores na Internet devem passar atrav´s do gateway. Se vocˆ est´ usando co e a DHCP. a ca Essas vari´veis s˜o chamadas pelo /etc/rc. ou ent˜o pode tamb´m editar o /etc/rc. Provavelmente vocˆ j´ tem as op¸˜es apropriadas no /etc/resolv. vocˆ pode fazˆ-lo atrav´s do e c e e e script netconfig.inet1.2 IP Est´tico a Endere¸os IP est´ticos s˜o endere¸os fixos que s´ mudam se modificadas manualmente.inet1. A vari´vel DEFAULT GW configura a rota padr˜o para o Slackware.conf. O Slackware ir´ iniciar as interfaces com a informa¸˜o colocada na ordem em que elas forem encontradas.234.org. no e caso de nenhuma outra rota ser especificada para elas (as comunica¸˜es).inet1. mas como? E a´ que o /etc/resolv. quem.

14. # ping -c 1 store PING store.101. N´s e a o vamos abordar algumas poucas ferramentas para ajud´-lo(a) a configurar.168.44 CAP´ ITULO 5.32. A diretiva nameserver nos indica qual servidor DNS procurar.254 search lizella.251 ms /etc/hosts Agora que n´s temos um DNS trabalhando bem.1 localhost locahost.net A primeira linha ´ simples.32 foobar.66. o que podemos fazer se desejamos identio ficar nosso servidor DNS.slackware. 1 packets received.slackware.251/0.0.localdomain 192.14. a .233. vocˆ pode buscar http://store.0.1.50.101 redtail 172.0. e e Configurar o seu sistema para utilizar chamar via PPP um servidor remoto ´ muito f´cil. conforme seu a c e a gosto. embora o SLIP seja ainda utilizado ocasionalmente. CONFIGURACAO DE REDE ¸˜ vocˆ precisar´ editar manualmente o /etc/resolv.slackware.251 ms 1 packets transmitted.0.66.50.com” estava indicado na sua diretiva search.conf. a e A segunda linha ´ um pouco mais interessante.1 (sempre e o e c reservado para o localhost).153 : icmp_seq=0 ttl=64 time=0.com (69.1.153): 56 data bytes 64 bytes from 69. O Slackware ir´ alegremente checar um depois do outro at´ um deles retornar a busca.com Nele vocˆ pˆde notar que o localhost tˆm como endere¸o IP relativo o 127.com e para 172. c # cat /etc/hosts 127. redtail ´ apontado para 192.com apenas apontando e seu navegador para http://store. e o foobar. Isso lhe permite contactar outra m´quina tendo apenas a primeira parte da sua FQDN (Fully Qualified Domain a Name.slackware.168. ou adicionar uma entrade de DNS em uma m´quina que n˜o est´ no a a a DNS? O Slackware inclui o arquivo salvador /etc/hosts.168. que cont´m uma lista local de nomes e DNS e endere¸os IP para os quais eles apontam.233.conf nameserver 192. Segue um examplo: e a # cat /etc/resolv. O m´todo mais comum ´ o PPP. se ”slackware. 0% packet loss round-trip min/avg/max = 0. e Por necessidade eles sempre s˜o endere¸os IP. Vocˆ pode ter v´rios listados aqui. A diretiva search nos d´ uma lista de dom´ e a ınio de nomes para assumir quando nenhum DNS requisitado for encontrado. 5.1. ou Dom´ ınio de Nome Totalmente Qualificado).251/0. Por exemplo.4 PPP A maioria das pessoas continuam se conectando ` Internet atrav´s de algum tipo de conex˜o a e a discada.

que vocˆ poder´ aceitar na maioria dos casos. ele criar´ um programa ppp-go e um programa ppp-off.5.5. WIRELESS 45 5. Ent˜o e a a digite pppsetup para execut´-lo. a a e a Ap´s rodar o programa. podem haver a a circunstˆncias onde vocˆ precisar´ preparar um conjunto de valores a serem usados pelo daemon a e a do PPP. e o n´mero de telefone do ca u seu provedor. tanto com um m´dulo e e o como com suporte direto (built in) no kernel. a conex˜o PPP. Coisas como o seu modem. Todas as informa¸˜es de configura¸˜o ficam em /etc/ppp.1 Suporte ao Hardware O suporte ao hardware de placas sem fio ´ dado atrav´s do kernel. as quais vocˆ precisar´ responder apropriadaa e o e a mente. NOTA: A maioria desses arquivos n˜o estar˜o l´ at´ depois da execu¸˜o do pppsetup. e o a Esse script ´ executado pelo pppd quando ocorre sucesso em uma conex˜o ppp. as placas mais recentes utilizam esse suporte com m´dulos. Os dois programas est˜o em a a /usr/sbin e precisam de privil´gios de root para serem executados. a exemplo das redes cabeadas tradicionais. Geralmente. Sendo assim. a Existem trˆs passos b´sicos no processo de configura¸˜o de uma placa de rede sem fio: e a ca • Suporte ao hardware das placas de rede sem fio • Configura¸˜o da placa para conectar um ponto de acesso sem fio ca • Configura¸˜o da rede ca 5. Aqui est´ uma lista do que co ca a vocˆ pode encontrar para diferentes arquivos: e ip-down ip-up options options. tenha certeza que vocˆ est´ logado como root.4.5 Wireless As redes sem fio ainda s˜o coisas relativamente novas no mundo dos computadores mesmo a com o grande crescimento no n´mero de pessoas que compram laptops e esperam encontrar u redes por onde passem.vocˆ pode determinar o m´dulo aproprioado e carreg´-lo u e o a . as redes sem fio n˜o s˜o ainda e a a a t˜o bem suportadas no Linux. a a a e ca 5. a string de inicializa¸˜o do modem. rodar o pppsetup ser´ o suficiente. Infelizmente. Um log dos seus dados de entrada. Ele compartilha a aparˆncia e parece muito semelhante ao nosso programa e netconfig. sem se preocuparem com o seu velho cabo de par tran¸ado. co ca Op¸˜es gerais de configura¸˜o do pppd quando executado no modo de discagem por de co ca Os comandos enviados para o modem. Eles s˜o o a a usados para iniciar e parar. Para executar o programa. respectivamente. Entretanto.txt Esse script ´ executado pelo pppd ap´s o encerramento da conex˜o PPP. quando executou o pppsetup.5.demand pppscript pppsetup. Vocˆ ir´ ver uma tela como essa: a e a O programa apresentar´ uma s´rie de quest˜es. e /etc/ppp Para a maioria dos usu´rios.1 pppsetup O Slackware inclui um programa chamado pppsetup para configurar seu sistema para usar sua conta discada. E essa c tendˆncia n˜o parece estar diminuindo o ritmo. Coloq e a Op¸˜es gerais para configura¸˜o do pppd. Alguns itens ter˜o um valor padr˜o.

d/rc. junto com o iwconfig.wireless. vocˆ pode estudar VPNs ou IPSec. 5. digite man iwconfig no terminal) do iwconfig se vocˆ precisa de mais e informa¸˜es.conf a a a correspondem aos parˆmetros do iwconfig.) Se vocˆ for audacioso pode modificar o arquivo de forma e que apenas as vari´veis necess´rias sejam utilizadas. incluindo todas as chaves utilizadas (preferencialco a mente em hexadecimal) AVISO: UMA NOTA A RESPEITO DO WEP.modules.5. a Se vocˆ tem apenas uma sequˆncia de caracteres. mas ´ muito e e melhor do que n˜o usar nada.com/personal/Jean Tourrilhes/Linux/. CONFIGURACAO DE REDE ¸˜ via /etc/rc. se funcionar. e CHANNEL. S˜o lidos pelo rc. pode usar. ser´ poss´ trabalhar de forma base e a ıvel tante confidencial. execute o rc.conf. ca a a e Uma vez que vocˆ tenha coletado as informa¸˜es acima.wireless e utilizados nos comandos a a iwconfig apropriados. vocˆ precisar´ configurar o seu ponto de acesso sem fio.hpl. o ifconfig para desativ´e a las enquanto estiver testando sua rede sem fio.inet1.wireless. uma vez que seu ponto de acesso e o iwconfig estar˜o com a chave acordada. O netconfig pode n˜o detectar sua placa de rede sem fio. vocˆ pode editar o rc. Nesse caso pode ser necess´rio algum trabalho a a para descobr´ (ou coloque sua chave do ponto de acesso em hexadecimal). Pontos de acesso e a sem fio possuem uma pequena varia¸˜o em suas terminologias.conf e adicionar e suas informa¸˜es. em co a http://www. pode ter certeza que o seu ponto de acesso e e a traduzir´ para uma chave em hexadecimal. Vocˆ e a e pode tamb´m configurar seu ponto de acesso para n˜o publicar sua ID de dom´ e a ınio/ESSID. Uma discuss˜o mais completa a respeito de pol´ a ıticas de redes sem fio est´ al´m do escopo desta a e se¸˜o. e assumindo que vocˆ usou o mode co e probe para carregar o driver apropriado no kernel. para ter certeza de n˜o estar havendo nenhuma a . Vocˆ pode testar sua rede sem fio com as ferramentas padr˜es e o de testes.hp. se desejar. se isso for necess´rio ` sua ca e a a placa. ent˜o ca ca a vocˆ talvez precise se mexer um pouco para se acostumar ao seu hardware.46 CAP´ ITULO 5. e. como o ping. ou o nome da rede (chamado de ESSID pelo iwconfig) • O canal que o ponto de acesso utiliza • As informa¸˜es relativas ` criptografia. Os nomes das vari´veis no rc. como sempre vocˆ pode ler o manual e e (com poderes de root. Se vocˆ deseja um grau avan¸ado de seguran¸a na sua rede sem a e c c fio. vocˆ e e precisar´ pelo menos das seguintes informa¸˜es: a co • A ID do dom´ ınios.wireless. novamente como root. Nesa ses casos vocˆ provavelmente precisar´ determinar pessoalmente qual o m´dulo da sua placa. mas uma busca r´pida no Google retornar´ mais do que vocˆ esperava aprender. ı-la Uma vez que vocˆ modificou o rc.2 Configura¸˜o da rede sem fio ca A vasta maioria desse trabalho ´ feito pelo iwconfig. Um esfor¸o m´ co e c ınimo seria modificar a se¸˜o gen´rica com a sua ESSID. O WEP ´ bastante fraco. (Tente n˜o configurar o CHANNEL. e ent˜o rode e a o rc.wireless como root. O arquivo rc. co Antes de tudo.wireless. Se vocˆ tem sua chave em hexadecimal. e a o Procure mais informa¸˜es sobre drivers para o kernel de v´rias placas de rede sem fio. o que ´ o ideal. e formas de configura¸˜o. Ambos est˜o fora do escopo deste documento. Se vocˆ tem uma interfaces que usem cabo. configure a o a o CHANNEL de forma apropriada. ´timo! Se n˜o funcionar. Em geral.conf ´ um pouco desorganizado. KEY.

6.d/rc. Isso vai lhe ensinar uma maneira r´pida e direta para configurar o wifi para aquelas vezes em que vocˆ mesmo procura por sinal a e de Internet em um caf´. ou nos ´ ıcones do Meus Locais Rede nos computadores com Windows. Vocˆ pode tamb´m desejar testar o efeito das suas mudan¸as quando da a e e c reinicializa¸˜o do sistema. o fator b´sico que nos leva a ligar umcomputador em uma rede ´ a possibilia e dade de acessar informa¸˜es.5. saber em qual computador um dado arquivo est´ armazenado. . vocˆ j´ deve ter uma conex˜o TCP/IP trabalhando na sua rede. Depois disso vocˆ ir´ especificar a chave criptogr´fica (se existir) usada na e a a sua rede sem fio. eles apenas precia ´ sam saber que ele existe e como peg´-lo. n´s precisaremos usar o FTP ou o SCP para tranfer´ o ı-los para l´ e para c´. mas apenas com o TCP/IP e ıo instalado. E responsabilidade do sistema operacional gerenciar o a acesso a arquivos atrav´s do sistema de arquivos dispon´ e dos sistemas de arquivo de rede.wireless para sua rede padr˜o. especifique que canal usar (se necess´rio). a Idealmente. vamos dar e a uma breve olhada no iwconfig para ver como ele trabalha. as funcionalidades dispon´ ıveis ser˜o muito rudimentares. n´s tamb´m o e gostar´ ıamos de acessar arquivos em outras m´quinas Unix. N˜o podemos a a a navegar por arquivos em nosso computador Slackware a partir de um vizinho na rede. n´s temos certeza que vocˆ ´ esperto o e o ee bastante para isso. Ter o TCP/IP instalado e functional no seu novo sistema Slackware ´ um bom inic´ para tal. Vocˆ deve e a a e estar conseguindo enviar pings para outros computadores na sua rede interna e. e O primeiro passo ´ dizer ` sua interface wireless em qual rede entrar.6 Sistemas de Arquivo de Rede Nesse ponto. Da mesma forma. e o Como sabemos. Enquanto algumas pessoas podem colocar seu computador numa co rede apenas para se divertir nela. 5. a maioria deseja compartilhar arquivos e impressoras. a # iwconfig eth0 essid "mynetwork" # iwconfig eth0 key XXXXXXXXXXXXXXXXXXXXXXXXXXX # iwconfig eth0 channel n Isso encerra nosso assunto sobre redes sem fio. Sim. 5. Simplesmente e consulte a primeira parte desse cap´ ıtulo. ca Agora que vocˆ viu como editar o /etc/rc. deve tamb´m conseguir ’pingar’ computadores da pr´pria Internet. Finalmente.3 Configurando a rede Isso ´ feito exatamente da mesma maneira como era feito nas redes cabeadas. aeroporto ou qualquer outro hot spot wifi. Elas desejam poder acessar documentos na Internet ou jogar online. n´s gostar´ o ıamos de poder usar um sistema de arquivos de rede que nos permitisse acessar transparentemente nossos arquivos em outros computadores. e ıvel Os dois sistemas de arquivo de rede utilizados mais comumente s˜o o SMB (que ´ implementado a e pelo Samba) e o NFS. hotel. Para compartilhar arquia vos. se vocˆ configue rou corretamente o gateway. o co a na verdade. Tenha certeza que e a vocˆ substituiu a ”eth0” com qualquer outra interface que a sua placa de rede use e trocou a e ”mynetwork” para o essid que vocˆ deseja usar. Os programas que n´s usamos para interagir com informa¸˜es armazenadas em nosso computador n˜o precisam.5. SISTEMAS DE ARQUIVO DE REDE 47 confus˜o de interface. desejando ficar online.

virtualmente. que foi e inicialmente utilizado pela IBM em seus produtos gerentes de redes locais. ou pelo nome do dom´ ınio que vocˆ esteja usando localmente. a e e a Uma vez que o Samba ´ t˜o bem documentado.txt and WinNT. CONFIGURACAO DE REDE ¸˜ 5. Vocˆ vai se sentir mais confort´vel se editar seu co e a smb. n˜o iremos e a a reescrever a documenta¸˜o aqui.O e projeto Samba existe desde 1991.1 SMB/Samba/CIFS O SMB (de Server Message Block) ´ um descendente do antigo protocolo NetBIOS. A Microsoft tamb´m sempre se interessou bastante pelo NetBIOS e seus sucessores (NetBEUI. eg: LINUX2 workgroup = MYGROUP Substitua o nome do grupo de trabalho (workgroup) pelo grupo de trabalho da sua rede.conf ´ repartido em m´ltiplas se¸˜es: uma se¸˜o para compartilhamento.conf de forma a refletir as configura¸˜es da sua rede local. security = user Muito provavelmente vocˆ vai querer implementar o n´ de seguran¸a por usu´rio no seu e ıvel c a Slackware. # You may wish to use password encryption. SMB e CIFS).9. e modifica¸˜o. outras s˜o v´lidas apenas fora da se¸˜o global. se nea ca ca cess´rio. ca a O smb.18. NOTE: To get the behaviour of # Samba-1. Sugerimos a modifica¸˜o dos co ca itens listados abaixo: [global] # workgroup = NT-Domain-Name or Workgroup-Name. cobrir rapidamente os pontos b´sicos. conforme mencionamos acima. Atualmente o SMB ´ o m´todo preferido para come e partilhamento de arquivos e servi¸os de impress˜o sobre uma rede para. ca e a Exemplos de compartilhamento s˜o configurados para sua visualiza¸˜o.conf . Se vocˆ precisa ter um controle preciso.txt. See # security_level. quando ele foi escrito originalmente para ligar um IBM PC rodando NetBIOS com um servidor Unix. you’ll need to use "security = share". Win95. e # server string is the equivalent of the NT Description field server string = Samba Server< Esse ser´ o nome do seu Slackware. devido seu suporte ao Windows.txt in the Samba # documentation. Please read # ENCRYPTION. toda a c a popula¸˜o mundial.6. Lembrea ca a a ca se que a se¸˜o global pode ser sobreposta por qualquer outra se¸˜o. e uma se¸˜o e u co ca ca global para op¸˜es de configura¸˜o que v´lida para todo o escopo do Samba. quando mostrado na pasta de computadores vizinhos (ou a Meus Locais de Rede). Algumas op¸˜es co ca a co s˜o aceitas apenas na se¸˜o global.txt for details. o man (manual) do smb. # Security mode. um dos mais arquivos de ca e configura¸˜o mais bem comentado e documentado que vocˆ ir´ encontrar em qualquer lugar. # Do not enable this option unless you have read those documents encrypt passwords = yes . Consulte as p´ginas do ca ca a manual (man pages) para mais informa¸˜es.48 CAP´ ITULO 5. Iremos. ca O arquivo de configura¸˜o do Samba ´ o /etc/samba/smb. Most people will want user level security. no entanto.conf ´ indispens´vel.

com o comando adduser. Se vocˆ carregar o /etc/exports ca e e padr˜o em um editor. Entretanto. Ao mesmo tempo que ele ´ significativamente mais f´cil de ca e a adquirir e rodar. XP. c a a e A configura¸˜o do NFS ´ controlada pelo arquivo /etc/exports.no_root_squash) /projects proj*. e Note que quando usamos o comando adduser para adicionar um nome de m´quina precisamos a p´s-fixar um sinal de d´lar (”$”) ao nome da m´quina. Se houver falhas o o o no processo de inser¸˜o do nome da m´quina com o adduser teremos como resultado um erro.6. O NFS ´ um protocolo que n˜o a e a implementa autentica¸˜o. isso n˜o ´ feito com o o o a a e smbpasswd. vocˆ ver´ um exemplo encontrado e a na man page (manual) do arquivo exports: # sample /etc/exports file / master(rw) trusty(rw. ou da adi¸˜o de usu´rios ca ca a ca a da m´quina (o SMB requer que vocˆ adicione os nomes dos computadores com NETBIOS como a e m´quinas usu´rias.2 Network File System (NFS) O NFS (ou Sistema de Arquivos de Redes) foi originalmente escrito pela Sun para sua implementa¸˜o do Unix.5. quando comparado ao SMB.O pr´prio smbpasswd se responsabiliza pelo sinal de d´lar p´s-fixo.domain(rw) /usr *.all_squash. 2000. A seguir. o Solaris. mas elas n˜o s˜o comuns at´ a presente data. se quisermos exportar o diret´rio /home/diretorio o para a esta¸˜o de trabalho pc1. ca O SMB ´ um protocolo de autentica¸˜o.6. a fim de usar este servi¸o. podemos simplesmente adicionar a linha: ca /home/diretorio pc1(rw) no nosso /etc/exports. Precisaremos adicionar uma linha no arquivo de exporta¸˜o para cada diret´rio que ca o quisermos exportar.local. N´s avisamos ao servidor samba que os a c o usu´rios e senhas v´lidos est˜o v´lidos com o comando smbpasswd. a # smbpasswd -a user Adicionando um nome de m´quina ao arquivo /etc/samba/private/smbpasswd. ca a quando adicionarmos o nome da m´quina no samba.0.anongid=100) /pub (ro.anonuid=150.domain(ro) @trusted(rw) /home/joe pc001(rw. A e e principal vunerabilidade no NFS ´ que ele ´ facilmente atingido por t´cnicas de spoof de usu´e e e a rios ou identificadores de grupo de uma m´quina para outra. com uma lista das esta¸˜es de trabalho clientes para as quais desejemos co permitir o acesso aos arquivos. tamb´m ´ significativamente menos seguro. SISTEMAS DE ARQUIVO DE REDE 49 Se as senhas criptografadas n˜o est˜o ativadas. ver´ um arquivo em branco com duas linhas comentadas na parte mais a a superior. o que significa que ´ necess´rio a entrada de um e ca e a usu´rio e senha corretos. Vers˜es futuras do protocolo NFS est˜o elaborando melhorias de ca o a seguran¸a. e 2003. A princ´ ıpio. Por hora. vocˆ n˜o poder´ usar o Samba com os a a e a a Windows NT 4. O smbpasswd realiza um a a a a par de testes de verifica¸˜o quando da adi¸˜o tradicional de usu´rios. Vocˆ pode realizar isso de maneira simples.local. a a Adicionando um usu´rio ao arquivo /etc/samba/private/smbpasswd.all_squash) .insecure. a # adduser machine 5. a # smbpasswd -a -m machine ´ E importante notar que um dado usu´rio ou nome de m´quina precisam existir previamente a a no arquivo /etc/passwd. restringindo que computares podem autenticar). o sistema operacional Windows n˜o requer a encripta¸˜o para compartilhamento de arquivos.

Isso mapeia o UID para qualquer usu´rio que alegue ser e ca root para um UID diferente. Coisas Ruins (tm) podem e devem ocorrer. como segue: # exportfs -o rw. O NFS assume que um dado usu´rio em uma m´quina tem o mesmo user ID (n´mero interno a a u ao sistema operacional. Como vocˆ pode ver. se algu´m. e a maioria delas est´ representada claraa mente nesse exemplo. a o Vocˆ pode obter mais informa¸˜es no manual (man page) do arquivo exports. cada diret´rio o a ´ montado com a op¸˜o root squash. e co . ca a e e arbitrariamente.no\_root\_squash pc1:/home/diretorio Essa linha exporta o diret´rio /home/diretorio para o computador ”pc1” e concede acesso de o leitura/escrita ` m´quina de nome pc1. em um dado computador). um UID (user ID) ´ e passada como parte da requisi¸˜o de leitura/escrita. Como uma cerca-viva protetora contra isso. com o UID igual a ”0” (UID do root) ter´ os mesmo privil´gios de root no servidor. o que significa que qualquer usu´rio do pc1. prevenindo ent˜o o acesso de root a arquivos ou pastas no diret´rio a o exportado. CONFIGURACAO DE REDE ¸˜ Como vocˆ pode ver.50 CAP´ ITULO 5. Esse UID ´ tratatada da mesma forma de ca e uma requisi¸˜o de leitura/escrita originada na m´quina local. mas os autores recomendam sua especifica¸˜o individualmente para todos os diret´rios c ca o no /etc/exports. vocˆ e est´ se referindo a um arquivo em um diret´rio. A s´ a e ıntaxe parece mesmo um pouco estranha (geralmente quando um diret´rio ´ especificado na s´ o e ıntaxe computador:/diretorio/arquivo. A op¸˜o root squash para estar inicialmente habilitada como uma medida de seguca ran¸a. Vocˆ pode tamb´m exportar um diret´rio diretamente utilizando a linha de comando no e e o servidor usando o comando exportfs. h´ v´rias op¸˜es dispon´ e a a co ıveis. Quando uma a a consulta de leitura ou escrita de um cliente NFS para um servidor NFS. que identifica um usu´rio) em todas as m´quinas na rede. A t´ a a ıtulo de informa¸˜o o servidor NFS n˜o invocar´ o ca a a a root squash. especificar um dado UID quando recursos acessam um sistema remoto.

como acelera¸˜o ou renderiza¸˜o 3-D via hardware. Os dois principais componentes s˜o o servidor e o gerenciador de janelas. Esse arquivo cont´m a a e ´ um arquivo de configura¸˜o muitos detalhes sobre seu dispositivo de v´ ıdeo. Felizmente. o ca Caso isso n˜o funcione ou vocˆ queira obter as vantagens das caracter´ a e ısticas de alta-performance de sua placa.conf. O servidor a a fornece as fun¸˜es de baixo n´ para interagir com seu dispositivo de v´ co ıvel ıdeo. mouse e monitor. A vantagem disso ´ que vocˆ pode ter muitas interfaces de usu´rio diferentes. mas. assim v´ em frente e aperte ENTER.1 xorgconfig Esta ´ uma interface simples orientada a menus que ´ similar ao instalador do Slackware. a e e a simplesmente trocando o gerenciador de janelas que vocˆ usa. ca e Iremos mencionar alguns deles aqui. a Primeiramente. Ela deve estar correta. os quais usam interfaces de programa¸˜o diferentes. Para configurar o X. e e Ela pede ao servidor X que analize sua placa e ent˜o crie o melhor arquivo de configura¸˜o a ca inicial que pode ser feito. co Este ´ um programa modo-texto de configura¸˜o do X. Aqui est´ um ”passo-a-passo”utilizando o xorgconfig. ´ independente do sistema operacional.0. existem programas para ajudar na cria¸˜o de um para vocˆ. logo ap´s a instala¸˜o. suportam os padr˜es ca o b´sicos de v´ a ıdeo. vocˆ ser´ capaz de a e a iniciar o X utilizando o comando startx. Para continuar. xorgconfig vai propor que verifique se vocˆ configurou a vari´vel de ambiente e a PATH corretamente. 6. baseado na informa¸˜o obtida. conhecidos como VESA e se sua placa est´ entre essas. sendo dessa forma espec´ ıfico para cada sistema. a qual. O X ´ o c e e respons´vel por fornecer uma interface para o usu´rio. E ca muito complexo. o qual foi desenvolvido para ade ca ministradores de sistemas experientes. O motivo dessa complexidade ´ o grande e n´mero de dispostivos de v´ u ıdeo dispon´ ıveis para a arquitetura PC. a co pressione ENTER.Cap´ ıtulo 6 Configurara¸˜o do X ca Come¸ando com o Slackware-10. muitas das placas. diferentemente do Windows ou a a do MacOS. O gerenciador de janelas est´ acima do servidor e provˆ a interface a e do usu´rio. felizmente. o Ambiente de Janelas X ´ fornecido pelo Xorg.conf ´ um ca e bom ponto de partida para a maioria dos sistemas (e deve funcionar sem modifica¸˜es). O arquivo /etc/X11/xorg. ser´ necess´rio criar o arquivo /etc/X11/xorg. hoje em dia. e Configurar o X pode ser uma tarefa complexa. inicie o programa: # xorgconfig Esta tela apresentar´ uma tela cheia de informa¸˜es sobre o xorgconfig. e O Sistema X Window ´ implementado atrav´s de diversos programas executados no ambiente e e do usu´rio. a 51 . ent˜o ser´ necess´rio reconfica ca a a a gurar o X.

essas a co op¸˜es estar˜o descritas em detalhes na tela. ca ca Se vocˆ estiver executando o GPM (o servidor de mouse do Linux) no modo de repeti¸˜o. Em seguida. Em alguns casos (especialmente com o ”busmice”) isso pode e funcionar melhor. /dev/mouse. Caso seu mouse serial n˜o esteja listado. ou caso seu mouse somente tenha dois bot˜es (Emulate3Buttons permite a o simula¸˜o do bot˜o do meio atrav´s do pressionamento de ambos os bot˜es simultaneamente). a a .52 CAP´ ITULO 6. entre com o nome do arquivos de dispositivo de seu mouse. Use-as caso o bot˜o do meios de seu mouse n˜o co a a a funcionse sob o X. a a deve funcionar desde que a liga¸˜o tenha sido escolhida durante a configura¸˜o do Slackware. vocˆ e ca e poder´ configurar o tipo de seu mouse para /dev/gpmdata. e a xorgconfig ir´ lhe perguntar se deseja ativar as op¸˜es ChordMiddle e Emulate3Buttons. mas muitos dos usu´rios n˜o devem fazer isso. diga ”y”. ca a a o Ent˜o. a selecione o protocolo Microsoft – ´ o mais comum e provavelmente funcionar´.digite isso se n˜o estiver certo. Caso precise disso. A maioria dos usu´rios podem dizer ”n-.Configura¸˜o do Mouse ca Selecione o seu mouse a partir do menu apresentado. a escolha padr˜o. de modo que o X obt´m informa¸˜es a e co de seu mouse atrav´s do gpm(8). a a O xorgconfig vai lhe perguntar se eseja habilitar o conjunto de teclas especiais. CONFIGURARACAO DO X ¸˜ xorgconfig .

Digite o que quiser nestas trˆs linhas (incluindo nada). pressione ENTER.6.Sincronia Horizontal Na pr´xima se¸˜o vocˆ informar´ o intervalo de sincronia horizontal de seu monitor.conf. a ca isso poder´ danific´-lo.1. e . Tenha cautela para n˜o exceder a especifica¸˜o de seu monitor. xorgconfig ir´ lhe pedir para entrar com os textos para a identifica¸˜o do a ca tipo do monitor no arquivo xorg.Sincronia Vertical Especifique o intervalo de sincronia vertical de seu monitor (vocˆ poder´ encontrar isso no e a manual do monitor). XORGCONFIG 53 xorgconfig . Para o ca e a iniciar a configura¸˜o de seu monitor. Vocˆ ver´ uma lista de tipos de ca e a monitores – escolha um deles. a a xorgconfig .

3 xinitrc O xinit(1) ´ o programa que inicia o X. fazendo que 1024x768 (ou qualquer outro modo que prefira) seja o padr˜o. CONFIGURARACAO DO X ¸˜ xorgconfig . ele ´ chamado pelo startx (1). a Para executar o xorgsetup.conf. digite sobre a mesma caso deseje. o c ca O arquivo original ser´ renomeado para /etc/X11/xorg. vocˆ ser´ e a a e a perguntado se deseja salvar uma c´pia de seguran¸a da configura¸˜o atual antes de continuar. a Vocˆ tamb´m ser´ perguntado sobre a resolu¸˜o que deseja usar. ent˜o. e e a caso vocˆ n˜o encontre a placa exata que possui.conf e reajustar os modos. Provavelmente vocˆ vai querer vˆ-lo.2 xorgsetup O segundo caminho para configurar o X ´ usar o xorgsetup. de forma que depois vocˆ poder´ editar o arquivo o c e a /etc/X11/xorg.backup. Seu arquivo de configura¸˜o. xorgconfig vai perguntar se vocˆ quer que o arquivo de configura¸˜o seja e ca salvo.xinitrc. ir´ funcionar bem. utilizar os e e a ca valores padr˜es pode ser legal para come¸ar. a Nesse momento. u a a Em seguinda. a 6. Diga que sim e o arquivo de configura¸˜o ser´ salvo. determina ca quais programas (incluindo especialmente os gerenciadores de janela) s˜o executados quando o a X inicia. entre no sistema como root e digite: # xorgsetup Caso vocˆ j´ tenha um arquivo /etc/X11/xorg.conf (por j´ ter configurado o X).Video Card Agora vocˆ ter´ a oportunidade de olhar no banco de dados os tipos de placas de v´ e a ıdeo. O xorgconfig vai pedir um texto descri¸˜o sobre sua placa de v´ ca ıdeo. no entanto. ent˜o vocˆ n˜o deve ter e e a e a notado-o (e provavelmente nem precisava). Vocˆ poder´ iniciar o X com o comando startx ca e a 6.54 CAP´ ITULO 6. completando o processo de configuca a ra¸˜o. ent˜o responda ”y”e selecione sua placa na lista exibida. experimente selecionar uma que use o mesmo e a chipset (n´cleo) e. xinit primeiramente verifica seu diret´rio pessoal em busca do arquivo . Caso o . Novamente. informe ao xorgconfig quanto de RAM possui sua placa de v´ ıdeo. um programa de configura¸˜o e ca um – tanto quanto m´gico – que vem com o Slackware. por exemplo. prov´velmente.

Vocˆ pode usar qualquer um a a e deles. na qual est´ executando este script xinitrc. XINITRC 55 o arquivo seja encontrado.Xresources sysmodmap=/usr/X11R6/lib/X11/xinit/. .v 1. copie o arquivo padr˜o /var/X11R6/lib/xinit/xinitrc ca a para ˜/. substituindo as suas linhas pelo que vocˆ desejar. os quais correspondem aos v´rios gerenciadores de janela e interfaces do usu´rio. then xrdb -merge $userresources fi if [ -f $usermodmap ]. caso deseje.3.Xmodmap sysresources=/usr/X11R6/lib/X11/xinit/. um rel´gio e trˆs terminais. Note que o exec c o e antes do ultimo xterm sobrep˜e a shell em execu¸˜o. quando o usu´rio fechar o xterm.* em /var/X11R6/lib/xinit.4 91/08/22 11:41:34 rws Exp $ userresources=\$HOME/. then xrdb -merge $sysresources fi if [ -f $sysmodmap ].Xresources usermodmap=\$HOME/.Xmodmap # junta os mapas de teclas padr~o a if [ -f $sysresources ].xinitrc e o edite. onde v´rios programas s˜o executados. caso contr´rio. /var/X11R6/lib/xinit/xinitrc (o padr˜o e a a global do sistema) ´ utilizado. A parte a a co interessante do arquivo ´ o final. a sess˜o do X ir´ terminar.cpp. a a a Para personalizar a incializa¸˜o do X. ´ executado.6. ´ o ca a com o comando xterm(1). then xmodmap $sysmodmap fi if [ -f $userresources ]. then xmodmap $usermodmap fi \# inicia alguns programas legais twm & xclock -geometry 50x50-1+1 & xterm -geometry 80x50+494+51 & xterm -geometry 80x20+494-0 & exec xterm -geometry 80x66+0+0 -name login Todos aqueles blocos ”if”s˜o para mesclar v´rias configura¸˜es de outros arquivos. O final do meu ´ e e simples: # Inicia o gerenciador de janelas: exec startkde Note que existem diversos arquivos xinitrc. Segue um exemplo simples do arquivo xinitrc: e #!/bin/sh # \$XConsortium: xinitrc. Esta sess˜o do X vai e a a a come¸ar com o gerenciador de janelas twm(1). Assim.

menus podem aparecer em difea co rentes lugares. outros para personaliza¸˜o e a ca outros para se obter o m´ximo de desempenho. dea a senhados para executar poucas aplica¸˜es gr´ficas. Em resposta. obviamente. Para facilitar a sele¸˜o de ambientes de ´rea de trabalho. A funcionalidade. programas podem ter diferentes bot˜es e caixas de checagem. Alguns s˜o feitos para emular outros sistemas. quase que exclusivamente. que v˜o desde a barra de tarefas e gerenciadores de arquivo at´ jogos e suites de co a e escrit´rio. no entanto. a falta de tal consistˆncia em aplica¸˜es e co baseadas no X se tornou uma barreira para sua aceita¸˜o. e e Em adi¸˜o aos ambientes GNOME e KDE. o X recentemente ganhou uma grande base de usu´rios no co a a desktop. programa de manipula¸˜o de imagens GNU). uma barra de ca a rolagem pode n˜o parecer igual em duas aplica¸˜es diferentes. dois projetos de c´digo ca o aberto foram formados: o K Desktop Environment (conhecido como KDE) e o GNU Network Object Model Environment (mais difundido como GNOME). o Unix foi usado. a Obviamente. muito do gerenciamento de arquivos e do sistema foi conduzido via linha de comando. Diversos vendedores (Sun Microsystems. A melhor parte. As interfaces gr´ficas tendiam para ser. a ca usabilidade e detalhes de ambos n˜o ´ rival de nenhum outro sistema operacional dispon´ a e ıvel. escritas com os mesmos Toolkits da interface e integradas para prover uma ´rea de o a trabalho uniforme e consistente. uma ´rea de trabalho integrada e uma grande cole¸˜o de aplicativos. O e o resultado em cada caso. tais como programas CAD e renderizadores co a de imagem. A diferen¸a entre o KDE e GNOME s˜o de longe. Muitos usu´rios.56 CAP´ ITULO 6. Silicaon Graphics. uma biblioteca gr´fica originalmente a desenvolvida para o GIMP (em portuguˆs. etc) foram vendendo esta¸˜es que tentavam ter uma aparencia (”look and feel”) coesiva. grandes. A escolha ´ sua. mecher com todos e decidir qual vocˆ gostou e e mais. Eles se parecem diferente um c a do outro por causa da utiliza¸˜o de diferentes Toolkits. CONFIGURARACAO DO X ¸˜ 6. Assim. havia um grande o intervalo de cores e estas eram especificadas no c´digo de cada toolkit. Como os usu´rios eram o a primariamente t´cnicos profissionais. e a Com o advento de sistemas operacionais gratuitos baseados no Unix e o crescente n´mero u e variedade de aplica¸˜es gr´ficas. Como e ca projetos separados. O Slackware tamb´m incluiu um ca a e programa chamado xwmconfig que pode ser utilizado para selecionar o ambiente de ´rea de a trabalho ou gerenciador de janelas. Veja a seguir sua execu¸˜o: ca $ xwmconfig . Cada um tem uma variedade de aplica¸˜es. Dessa forma. Somente os t´cnicos estavam ca co e familiarizados com o uso de um sistema operacional Unix (e suas varia¸˜es) e as interfaces para co o usu´rio refletiam esse fato. mas a grande variedade co de Toolkits (conjunto de componentes para uma interface gr´fica) usadas por desenvolvedores a levou para a dissolu¸˜o da uniformidade dos ambientes gr´ficos. de longe. esqueletos. ´ que esses ambientes avan¸ados s˜o gratuitos. o KDE e o GNOME tˆm seus pr´prios desenvolvedores e analistas. Isso significa e c a que vocˆ pode ter um ou ambos (sim! ao mesmo tempo). o Slackware inclui uma grande cole¸˜o de gerenca ca ciadores de janela. est˜o acostumados com a aparˆncia consistente fornea a e cida pelo Microsoft Windows ou pelo Apple MacOS. Existe uma variedade um tanto quanto grande. no entando. com a exce¸˜o das poderosas esta¸˜es de trabalho. vocˆ pode instalar quantos quiser e. como sistema operacional para servidores. isso n˜o importava muito.4 xwmconfig Durante anos. tem sido fundamentalmente o mesmo: um ambiente consistente. O KDE se baseia na biblioteca gr´fica ca a QT (da Trolltech AS) enquanto o GNOME usa a GTK.

kdm ´ o gerenciador de login a e gr´fico do KDE. Finalmente.5 xdm Como Linux se tornou mais e mais usual como um sistema operacional de ´rea de trabalho. a a Para isso. vocˆ precisar´ inicializar no n´ de execu¸˜o (runca e a ıvel ca level) 4.org. e nem todos v˜o querer o ambiente selecionado por vocˆ na instala¸˜o. N´ ıveis de execu¸˜o s˜o um modo de dizer ao init(8) para fazer algo diferente. vamos discutir co e como iniciar o sistema no modo gr´fico. # Estes s~o os n´veis de execu¸~o padr~o do Slackware: a ı ca a # 0 = desligamento # 1 = modo de usu´rio singular a # 2 = n~o utilizado (mas configurado da mesma forma que o n´vel de execu¸o 3) a ı c # 3 = modo multi-usu´rio (n´vel de execu¸~o padr~o no Slackware) a ı ca a # 4 = X11 com KDM/GDM/XDM (gerenciadores de login) # 5 = inutilizado (mas configura para fazer o mesmo que o n´vel 3 ı . e atribuir um e a gerenciador de login gr´fico. uma vez que diferentes usu´rios podem usar diferentes ambientes de a a ´rea de trabalho.xdm(1). e o ca /etc/inittab. Quaisquer que sejam a sua escolha vai permitir que vocˆ entre no sistema como e qualquer usu´rio e escolha qual ambiente de trabalho deseja usar. a muitos usu´rios acharam interessante o computador ligar diretamente no ambiente gr´fico.5. a a 6. O Slackware vem com trˆs ferramentas de login gr´fico. Somente selecione da lista o qual deseja. ent˜o se todos os trˆs est˜o instalados vocˆ pode fazer a a e a e algumas edi¸˜es para selecionar o gerenciador de sua preferˆncia. a e ca Ent˜o apenas inicie o X e estar´ pronto. vocˆ precisar´ dizer ao Slackware para inicializar diretamente no X. Ele ´ constantemente a a e encontrado. XDM 57 Vocˆ receber´ uma lista de todos os ambientes de ´rea de trabalho e gerenciadores de janelas e a a dispon´ ıveis no sistema. O xdm ´ o gerenciador de login gr´fico que vem com o sistema X. Cada usu´rio precisar´ a a executar este programa.6. a e a kdm e gdm(1). N´s fazemos isso alterando o arquivo de configura¸˜o do init. quando ca a o sistema operacional ´ iniciado. O Slackware n˜o inclui um bom programa. mas n˜o possui tantos recursos como os alternativos. para selecionar a qual gerenciador de login ser´ utilizado. o Ambiente de ´rea de Trabalho K. a Infelizmente. Mas primeiro. gdm ´ o gerenciador de login a a e do GNOME. como o xwmconfig. a A fim de iniciar o X na inicializa¸˜o.

acho que ele que vai entrar em a¸~o: ca if [ -x /usr/X11R6/bin/xdm ]. vocˆ pode somente comentar as linhas dos gerenciadores de login que n˜o quer e a usar. N´s vamos discutir chmod em Estrutura do Sistema de Arquivos.4 primeiro checa se o gdm ´ execut´vel. then # exec /usr/X11R6/bin/xdm -nodaemon # fi . caso seja. Este ıvel ca arquivos inicia o X e chama o gerenciador de login que vocˆ escolheu. then exec /opt/kde/bin/kdm -nodaemon fi # Se tudo que tivermos for o XDM. vocˆ pode remover a permiss˜o de execu¸˜o dos arquivos que n˜o deseja e a ca a usar.4. somente mudaremos o 3 para o 4. then exec /usr/bin/gdm -nodaemon fi # N~o existe? OK. Opcionalmente. then exec /usr/X11R6/bin/xdm -nodaemon fi Como vocˆ pode ver aqui.58 CAP´ ITULO 6. # Tenta utilizar o gerenciador de login do GNOME: # if [ -x /usr/bin/gdm ]. Vocˆ e e a e pode encontrar mais sobre removepkg em Gerenciamento de Pacotes do Slackware. e e a Em segundo lugar na lista vem o kdm. Agora. then # exec /usr/bin/gdm -nodaemon # fi # N~o existe? OK. executa-o.d/rc. acho que ele que vai entrar em a¸~o: ca # if [ -x /usr/X11R6/bin/xdm ]. e vamos explicar eles ap´s em rc. o # Tenta utilizar o gerenciador de login do GNOME: if [ -x /usr/bin/gdm ]. Uma forma de escolher o gerenciador de login ´ simplesmente removendo os quais vocˆ n˜o quer usar utilizando o removepkg. e. rc. ent~o tenta utilizar o gerenciador de login do KDE: a a if [ -x /opt/kde/bin/kdm ]. CONFIGURARACAO DO X ¸˜ # 6 = reinicializa¸~o ca # n´vel de execu¸~o padr~o (N~o configurar para 0 ou 6) ı ca a a id:3:initdefault: A fim de fazer o Slackware inicializar no modo gr´fico. a # n´vel de execu¸~o padr~o (N~o configurar para 0 ou 6) ı ca a a id:4:initdefault: Agora o Slackware vai inicializar no n´ de execu¸˜o 4 e executar o /etc/rc.4. then exec /opt/kde/bin/kdm -nodaemon fi # Se tudo que tivermos for o XDM. o <code># chmod -x /usr/bin/gdm</code> Finalmente. como vamos e escolher os gerenciadores de login? Existem alguns modos de fazer isso. e finalmente o xdm. ent~ tenta utilizar o gerenciador de login do KDE: a a if [ -x /opt/kde/bin/kdm ].

o interpretador de comandos (nesse caso o bash) n˜o vai se importar em checar isso. a a . XDM 59 Qualquer linha precedida por um sustenido (#) s˜o consideradas coment´rios e o interpretador a a de comandos passa silenciosamente por elas. No entando.6. mesmo se o gdm est´ instalado e ´ a e execut´vel.5.

60 CAP´ ITULO 6. CONFIGURARACAO DO X ¸˜ .

e sim todas as vezes que o LILO ´ instalado. Muitos usu´rios a instalam o Slackware em seus computadores e pronto. o GRUB ainda n˜o conseguiu este legado. Apesar do GRUB e a e ıdo ca funcionar bem e incluir algumas funcionalidades que o LILO n˜o possui. Aqui tamb´m vemos alguns cen´rios t´ e a ıpicos de dual boot e como configur´-los. substituindo o DOS e a chamando o Linux. Ele e permite uma extensa gama de configura¸˜es pode ser usado facilmente para dar boot em outros co sistemas operacionais. a e O GRUB n˜o est´ inclu´ nem ´ suportado oficialmente pelo Slackware. Muitos erros ca ca do LILO acontecem quando se faz altera¸˜es no arquivo lilo. ´ o gerenciador de boot mais usado em sistemas Linux. os dois gerenciadores de boot inclu´ a ıdos no Slackware.conf manualmente. O Slackware inclui o LILO e c a o LOADLIN para inicializar o Slackware Linux. J´ que n˜o ´ inclu´ no Slackware. O LILO funciona a partir de uma parti¸˜o de ca um disco r´ ıgido. o LILO funciona melhor. ou de um disquete.Cap´ ıtulo 7 Processo de Boot O processo de boot de seu sistema Linux pode tanto ser f´cil quanto dif´ a ıcil. O liloconfig ajuda a montar o arquivo de configura¸˜o para co ca que vocˆ possa instalar o LILO em seu sistema. consulte a documenta¸˜o do GRUB. Se preferir editar o /etc/lilo. da MBR de um disco r´ ıgido. e a ca Esta sess˜o cobre o uso do LILO e do LOADLIN.conf (5) Ele n˜o ´ lido toda vez e co a e que o computador ´ inicializado. O LOADLIN funciona a partir de uma linha de comando DOS. Este utilit´rio ´ executado pela primeira vez durante o processo de configura¸˜o. O LILO deve ser e e reinstalado no setor de boot sempre que houver uma altera¸˜o na configura¸˜o. o que o torna uma ferramenta vers´til. ou LILO.1 LILO O Linux Loader. O Slackware Linux possui um utilit´rio de configura¸˜o na forma de menu chamado lilocona ca fig. n˜o a a a e ıdo a vamos discutir sobre ele aqui. e 61 . o LILO realiza todas a as tarefas essenciais de um sistema de boot de forma confi´vel e comprovada. mas se esquece de reexecutar co o lilo para instalar essas altera¸˜es. Outro utilit´rio popular para inicializar o Linux ´ o GRUB. a O LILO lˆ suas configura¸˜es a partir do arquivo /etc/lilo. o simples ato de dar boot na m´quina pode ser uma dor a de cabe¸a. Se vocˆ quiser usar o GRUB (talvez tenha vindo com outro e sistema Linux e vocˆ queira us´-lo para dual boot). mas vocˆ a e ca e pode cham´-lo mais tarde digitando liloconfig na linha de comando. Por ser mais a recente.conf. Eles simplesmente o ligam e j´ est´ a a pronto para ser usado. Para a maioria dos usu´rios. Para outros. a 7. O Slackware mana a ıdo e t´m o padr˜o ”testado e aprovado” em tudo o que ´ inclu´ na distribui¸˜o.

A desvantagem ´ que o LILO apenas carrega se o seu drive a e com o Linux for o primeiro drive em seu sistema. selecione onde quer que ele seja instalado. Selecionando simple. Ao chamar pela primeira vez o liloconfig. Isto mant´m o gerenciador de boot completamente fora do e seu disco r´ ıgido. Por e ca outro lado. co • Disquete Este m´todo ´ ainda mais seguro do que o anterior. Esta resolu¸˜o tamb´m ´ usada pelo frame buffer do e ca e e servidor XFree86. PROCESSO DE BOOT a reinstala¸˜o do LILO envolve simplesmente a digita¸˜o de /sbin/lilo (como root) na linha de ca ca comando. se quiser usar o Slackware. e a houver outros sistemas operacionais em seu computador. a op¸˜o expert (avan¸ado) ´ mais r´pida se vocˆ estiver familiarizado com o LILO ca c e a e e o Linux. A lista abaixo explica os locais de instala¸˜o: e ca • Root Esta op¸˜o instala o LILO no in´ de sua parti¸˜o ra´ Esta ´ a maneira mais segura se n˜o ca ıcio ca ız. ´ por este motivo que muitos preferem criar e uma pequena parti¸˜o /boot como o primeiro driver em seus sistemas. a co e As edi¸˜es recentes do LILO eliminaram esse problema. vocˆ somente conseguir´ iniciar o seu e a . selecione normal para manter o modo texto padr˜o de 80x25 em uso. a configura¸˜o do LILO ´ iniciada. escolha a op¸˜o simple (simples). o ca Provavelmente este ´ o passo mais importante. ele ser´ como: a liloconfig Se esta for a primeira vez que vocˆ configura o LILO. ca e Se o seu kernel estiver compilado com suporte a frame buffer.62 CAP´ ITULO 7. O LILO n˜o conseguia inicializar kernels em parti¸˜es al´m do limite do cilindro 1024. Isto permite que o kernel ca e o LILO sejam instalados no in´ do drive. Desse modo. onde o LILO consegue encontr´-los. o liloconfig pergunta qual resolu¸˜o de v´ ca ıdeo vocˆ gostaria de usar. a Na pr´xima parte da configura¸˜o do LILO. Ele cria um disquete que vocˆ pode usar e e e para dar boot no seu sistema Linux. Ela assegura que outros gerenciadores de boot n˜o sejam sobreescritos. Se vocˆ n˜o quiser usar o console em um modo de v´ e a ıdeo especial. Algumas ıcio a vers˜es anteriores do LILO continham uma falha infame conhecida como ”limite do cilindro o 1024”.

• MBR Este m´todo ´ escolhido quando o Slackware ´ o unico sistema operacional em seu come e e ´ putador. ter´ que fazer outro para inicializar o o e a seu sistema.2 LOADLIN A outra op¸˜o para a inicializa¸˜o que vem com o Slackware Linux ´ o LOADLIN. LOADLIN 63 sitema usando este disquete. AVISO: Esta op¸˜o sobreescreve qualquer outro gerenciador de boot que porventura exista ca na MBR.conf. o gerenciador de boot n˜o est´ mais a e a a contido no computador. ´ apresentado um menu especial. ´ f´cil configurar um gerenciador de boot ca e a que funcione. Ap´s a sele¸˜o do local de instala¸˜o. e ajustar o LILO para passar parˆmetros especiais ao kernel durante o a boot. Se vocˆ perder o seu disquete. a . O menu expert se parece com a figura abaixo: liloconfig . propensos a dar defeitos. E pronto. 7. adiconar outros sistemas operacionais c no seu menu de boot. Os disquetes s˜o conhecidos a o a por serem fr´geis.2.Menu Expert Qualquer que seja a configura¸˜o do seu sistema. Este ´ o m´todo recomendado para a instala¸˜o do LILO e funciona em quase e e ca qualquer sistema. As falhas deste sistema s˜o ´bvias.7. O liloconfig torna essa tarefa uma moleza. ou se o LILO for usado para escolher entre m´ltiplos sistemas operacionais em seu u computador. Este menu e permite fazer ajustes avan¸ados no arquivo /etc/lilo. Ele requer que o kernel do Linux esteja na parti¸˜o DOS para que o LOAca ca DLIN possa carreg´-lo e inicializar o sistema adequadamente. O LOca ca e ADLIN ´ um execut´vel DOS que pode ser usado para iniciar o Linux a partir de um sistema e a DOS em execu¸˜o. Se escolher o modo expert. Al´m disso. o liloconfig cria o arquivo de configura¸˜o e instala o ca ca ca o LILO.

CHOICE /C:12 "Selection? -&gt. Pode-se e´ ca adicionar um menu ao seu arquivo AUTOEXEC. mas esta sess˜o abranger´ duas delas. assim inicializando o seu sistema Slackware. em caso de haver dificuldades para configurar o seu sistema. 7.1 Windows Provavelmente o cen´rio mais comum de dual boot ´ com o MS Windows e o Linux. 7.ZIP. o LOADLIN ´ copiado para o diret´rio home do usu´rio root e o a como um arquivo .. e O exemplo abaixo do arquivo AUTOEXEC.3 Dual Boot Muitos usu´rios configuram os seus computadores para inicializar o Slackware Linux e outro a sistema operacional (o que se chama dual boot).C:\ CLS ECHO Selecione o sistema operacional: ECHO. tal como /dev/hda2 ou ca algo semelhante. o a ca O LOADLIN ´ util quando se deseja fazer um menu de boot em sua parti¸˜o DOS.BAT para o Windows 95 cria um menu de boot satisfat´rio: o @ECHO OFF SET PROMPT=$P$G SET PATH=C:\WINDOWS. PROCESSO DE BOOT Durante o processo de boot.. CD \LINUX LOADLIN C:\LINUX\VMLINUZ ROOT=<dispositivo da parti¸~o root> RO ca GOTO END :END Especifique a sua parti¸˜o root com o nome do dispositivo no Linux. Vocˆ tamb´m pode usar o LOADLIN a partir da linha de comando. H´ a e a v´rias maneiras de se configurar a inicializa¸˜o. A documenta¸˜o do LOADLIN possui muitos exemplos ca sobre o seu uso.C:\WINDOWS\COMMAND. a ca a a .. N˜o h´ um processo de instala¸˜o autom´tica para o LOADLIN. WIN GOTO END :LINUX ECHO Iniciando o Slackware Linux. ´ a a ca a e necess´rio copiar o kernel do Linux (geralmente /boot/vmlinuz ) e o arquivo LOADLIN do dia ret´rio home do usu´rio root para a parti¸˜o do DOS. Descrevemos v´rios cen´rios t´ a a ıpicos de dual boot abaixo.64 CAP´ ITULO 7. ECHO [1] Slackware Linux ECHO [2] Windows 95 ECHO..BAT para permitir a escolha entre o Linux e o DOS.3. Escolhendo o Linux o LOADLIN ´ executado. Simplese e mente use-o como no exemplo acima. " IF ERRORLEVEL 2 GOTO WIN IF ERRORLEVEL 1 GOTO LINUX :WIN CLS ECHO Iniciando o Windows 95.

No menu. O Linux sempre oferece controle sobre o que. adicione a sua parti¸˜o Linux e ca a sua parti¸˜o Windows (ou DOS). o Com as suas parti¸˜es prontas. Felizmente. a Digamos que o unico drive no seu sistema seja um disco r´ ´ ıgido IDE de 40GB. DUAL BOOT 65 ` As vezes. comece a instala¸˜o do Windows. ´ muito importante compreender ca e que os sistemas operacionais devem ser instalados em uma determinada ordem para que o dual boot funcione. Na verdade n˜o h´ uma forma ”correta” de fazer. Ele pode iniciar praticamente qualquer coisa. e Inicie uma nova configura¸˜o do LILO. assim destruindo u ca . a Usando o LOADLIN Este m´todo pode ser usado se o LILO n˜o funcionar em seu sistema. Este m´todo tamb´m ´ ideal para o usu´rio que reinstala o Windows e e e a freq¨entemente. Assim que este passo estiver completo. O espa¸o de swap adequado ´ alvo de muitas c e discuss˜es inflamadas no IRC e na Usenet. Portanto. O LILO deve ser carregado e exibir um menu que permite a escolha entre os sistemas operacionais instalados. Depois que estiver confico ca gurado e funcionando. As p´ginas de manual do lilo(8) e do a lilo. e assim por diante. o Linux. A regra geral ´ usar o dobro da quantidade de mem´ria RAM. ao configurar um sistema com dual boot se cria um plano perfeito em rela¸˜o a ca onde tudo vai ficar. Talvez ca ca vocˆ prefira escolher o modo expert para instalar o LILO. Haver´ um problema ao tentar iniciar o Linux. ent˜o. Suponhamos tamb´m que vocˆ queira deixar a metade do espa¸o para o Windows e a outra metade para o e e c Linux. se for o caso.Registro Principal de Inicializa¸˜o). ele sobreescreve A MBR. ca O LILO ´ um gerenciador de boot altamente configur´vel. Prefira instalar na MBR para que possa ser usado ca para escolher entre ambos os sistemas operacionais. ´ aconselh´vel instaca e a lar o Linux por ultimo. co Usando o LILO A maioria dos usu´rios preferem usar o LILO para escolher entre o Linux e o Windows. pode instalar o LILO. instale o Linux.3. o a a mas a regra acima deve ser satisfat´ria. O Windows deve ser instalado primeiro. ´ gravado na MBR e (Master Boot Record . a Como foi citado acima. instale primeiramente o Windows. j´ que ele sempre grava seu ´ a gerenciador de boot na MBR. h´ outra maneira de fazer dual boot entre o Linux e o Windows.conf (5) fornecem informa¸˜es mais detalhadas. co E se o LILO n˜o funcionar? H´ casos onde o LILO n˜o funciona em uma m´quina espec´ a a a a ıfica. A cada reinstala¸˜o do Windows. ca Reinicie o seu computador. mas se confunde a ordem de instala¸˜o. A instala¸˜o do LILO requer aten¸˜o especial. Selecione o nome do Sistema Operacional que deseja carregar (esses nomes foram escolhidos na configura¸˜o do LILO). e. ou se vocˆ n˜o quie a e a ser configurar o LILO. a 20GB 1GB 19GB Windows boot (C:) Linux root (/) Linux /usr (/usr) Vocˆ deve separar tamb´m um espa¸o adequado para uma parti¸˜o de troca (swap) para o e e c ca Linux. sobreescrevendo as configura¸˜es porventura gravadas pelo Linux. Ele n˜o se limita a iniciar o Linux e a a ou o DOS.7. Um sistema com 64MB e o deve ter 128MB de swap.

Windows echo. durante a instala¸˜o do Slackware.SYS C:\> edit MSDOS. assegure-se ca a a ca de pular a configura¸˜o do LILO. De volta ao Windows. Ent˜o. temos que assegurar que o sistema esteja configurado para n˜o iniciar na interface gr´fica. vocˆ n˜o quer fazer isso. echo 1 . choice /c:12 "Selection? -> " if errorlevel 2 goto WIN if errorlevel 1 goto LINUX :LINUX cls echo "Iniciando o Linux. O exemplo abaixo mostra como fazer isso: a # # # # # # # # mkdir /win mount -t vfat /dev/hda1 /win mkdir /win/linux cd /root cp loadlin* /win/linux cp /boot/vmlinuz /win/linux cd /win/linuz unzip loadlin16a.SYS Adicione esta linha ao arquivo: BootGUI=0 Agora salve o arquivo e saia do editor. vocˆ n˜o est´ sujeito a esse problema. a a C:\> cd \ C:\> attrib -r -a -s -h MSDOS. O LOADLIN depende de que a co e a a parti¸˜o do Windows seja inicializ´vel. a o a ca Copie tamb´m a imagem do seu kernel para a parti¸˜o do Windows. A maior desca e a a vantagem ´ que o LOADLIN somente pode ser usado para iniciar o Linux. copie o arquivo loadlinX.. ca Ap´s a instala¸˜o dos sistemas operacionais. Ap´s isso. os sistemas operacionais podem ser instalados em qualquer ordem. tal como 16a) do diret´rio home do usu´rio root para a sua parti¸˜o Windows. Agora edite o C:\AUTOEXEC. Para isso funcionar.. e Com o LOADLIN.66 CAP´ ITULO 7.zip ´ E criado um diret´rio C:\LINUX em sua parti¸˜o Windows (supondo que seja /dev/hda1 ) o ca e tudo que ´ necess´rio ao LOADLIN ´ copiado. Com o LOADLIN.zip (onde X ´ o n´o ca e u mero da vers˜o. O exemplo abaixo mostra como deve ser um bloco de menu de boot no AUTOEXEC. ´ e ca e necess´rio estar no Linux. Cuidado para n˜o fazer instala¸˜es na MBR.BAT : cls echo System Boot Menu echo. abra uma janela do DOS. ´ necess´rio reiniciar o Windows e a e o e a para configurar um menu de boot.BAT para que possamos adicionar um menu de boot." . PROCESSO DE BOOT a instala¸˜o do LILO. Primeiro.Linux echo 2 .

lnx bs=1 count=512 S´ isso. que a apresentava muito mais problemas do que o dual boot entre o Windows 9x e o Linux. Para isso. a parti¸˜o root e ca do Linux. O LILO j´ consegue iniciar o Windows co a a NT/2000/XP/2003 h´ v´rios anos. As ferramentas necess´rias para esse m´todo s˜o fornecidas com o Slackware Linux. co Esta ´ a situa¸˜o de dual boot menos comum. Pegar os primeiros 512 bytes da parti¸˜o ca do Linux ´ mais f´cil do que parece. se vocˆ estiver usando uma m´quina antiga. H´ a e a a v´rios outros gerenciadores de boot no mercado. Se vocˆ tiver a e formatado o drive do Windows NT como FAT. O Linux n˜o possui suporte est´vel para grava¸˜o em sistemas NTFS. e que inicialmente queremos que seja montada somente para leitura. Agora vocˆ precisa copiar o bootsect. Aqui ocorre o e ca outro problema. O ultimo passo ´ adicionar uma op¸˜o no menu de boot do Windows NT.lnx do Linux para C:\BOOTSECT. Supondo que a sua e a e parti¸˜o Linux seja /dev/hda2. assim como deve ser a instala¸˜o do ca ca Linux. pode simplesmente mont´-lo no Linux e copiar a o arquivo. Se vocˆ a a ca e tiver instalado o Windows NT e formatado o seu drive como NTFS. fica mais complicado. ser´ necess´rio copiar esse a a arquivo para um disquete com FAT e ent˜o ler a partir dele no Windows NT.. mas esses devem funcionar ma maioria das a configura¸˜es de dual boot. No Windows NT.7. Dizemos qual kernel carregar.ini C:\> edit boot.LNX no Windows NT.lnx para a parti¸˜o do Windows NT. este a a e a procedimento pode ser necess´rio. o que requeria que os usu´rios do Linux alterassem a NTLDR. Contudo. digite o comando: ca # dd if=/dev/hda2 of=/tmp/bootsect. copie o /tmp/bootsect.INI sob o Windows NT para adicionar uma op¸˜o para o Linux ca A instala¸˜o do Windows NT deve ser bem direta.." win goto END :END A linha principal ´ a que chama o LOADLIN. vocˆ precisa estar no Linux. Nos velhos tempos do o LILO n˜o conseguia e ca a iniciar o Windows NT. a • Instale o Windows NT • Instale o Linux.3. Esteja ciente de que as instru¸˜es abaixo est˜o ultrapassadas. De qualquer modo. C:\WINNT> cd \ C:\> attrib -r -a -s -h boot. DUAL BOOT 67 cd \linux loadlin c:\linux\vmlinuz root=/dev/hda2 ro goto END :WIN cls echo "Iniciando o Windows. A partir desse ponto.ini . ´ e ca abra um terminal. assegurando-se de que o LILO seja instalado no superbloco da parti¸˜o ca do Linux • Coloque os primeiros 512 bytes da parti¸˜o root do Linux na parti¸˜o do Windows NT ca ca • Edite o C:\BOOT.

isso realmente ´ feito. . Selecione-a para iniciar o Linux.68 CAP´ ITULO 7. 7.2 Linux Sim.lnx="Slackware Linux" Salve as altera¸˜es e saia do editor.3. PROCESSO DE BOOT Adicione esta linha ao final do arquivo: C:\bootsect.conf. este ´ o cen´rio de dual boot mais simples. aparecer´ uma op¸˜o para co a ca o Linux no menu. Definitivamente. Isso ´ e tudo. Ao reiniciar o Windows NT. e e a Pode-se simplesmente usar o LILO e adicionar mais entradas no arquivo /etc/lilo.

ningu´m disse nada sobre um login. o protocolo de link de comunica¸˜o espacial ainda n˜o tem suporte e ca a no kernel do Linux. E o que ´ darkstar? N˜o se preocupe..1. barras a e de rolagem. Ser´ pedida uma e a senha. e realmente a e e a ele ´.1 Os Usu´rios a Entrando no Sistema Ent˜o vocˆ iniciou o Linux. Em um ambiente de linha de comando. e ´ Imediatamente ap´s entrar no sistema (o que ´ visto neste cap´ o e ıtulo). Isso a´ . a 8. veja a p´gina de manual do bash(1).. O root ´ o que chamamos de ”super usu´rio”. o root ´ vocˆ. darkstar login: H˜. e a e e Isso simplesmente n˜o ´ permitido. Para maiores a informa¸˜es sobre qualquer t´pico deste cap´ co o ıtulo. e ningu´m desobedece o root.8 do kernel finalmente tenha suporte a esse protocolo t˜o e a esperado. a e ca ele deve ser exibido em vez de darkstar. a interface ´ apresentada por um programa que cria janelas.1. provaa e e a velmente vocˆ n˜o abriu acidentalmente um link de comunica¸˜o espacial com a lua artificial e a ca do Imp´rio. simplesmente pressione enter.4.. Se vocˆ tiver especificado um nome para o seu computador durante a configura¸˜o. E o que ´ melhor. a interface com o usu´rio a ´ apresentada por um shell. ca e ao shell mais comum entre os usu´rios do Linux . Talvez a s´rie 2.vocˆ entrou! a ı e 8. no mundo Unix e dos sistemas operacionais semelhantes (como o Linux). e e e e 69 . os usu´rios s˜o colocados a a em um shell e podem fazer o seu trabalho.) N˜o. darkstar ´ apenas o nome de um dos nossos computadores. mas o que importa por enquanto ´ saber que o a e root ´ o maior usu´rio de todos.18 Last login: Wed Jan 1 15:59:14 -0500 2005 on tty6. ´ essa senha que ser´ pee ca e a dida. Veremos maiores detalhes depois.Cap´ ıtulo 8 O Shell Em um ambiente gr´fico.1 8. Se for a sua primeira vez. se vocˆ tiver criado uma durante o processo de configura¸˜o. menus. o root ´ onipotente e onisciente. que interpreta os comandos e geralmente torna as coisas uteis. h´ usu´rios a a e usu´rios.o Bourne Again Shell (bash). etc. Quanto ao login. Se n˜o.. quem ou o que ´ o root? E o que est´ fazendo com uma conta em meu sistema? e a Bem.2 Root: O Super Usu´rio a Ok. (Infelizmente. e seu nome aparece a e por padr˜o. e est´ olhando para algo que se parece com isso: a e a Welcome to Linux 2. Este cap´ ıtulo serve como uma introdu¸˜o ao shell. vocˆ deve entrar como root.

. na verdade ele est´ no direca a t´rio /bin: /bin/su o executaria perfeitamente. sem precisar de senha. a maioria dos shells possui o PATH ou algo muito parecido com o a PATH. desde que saiba a sua senha: su logan. isso significa que o programa que tentou executar n˜o est´ em seu PATH. permitiria que a vocˆ fosse eu. digitar apenas su funciona? Afinal. E s´ usar o comando su(1). e NOTA: O root pode dar o su para qualquer usu´rio. certo? Como o sistema sabia? A resposta est´ na e a vari´vel de ambiente PATH . assim o a que encontrou algum.1. ent˜o. a Lembre-se. entre no sistema e continue daqui. Cada comando que vocˆ executa (que n˜o ´ fun¸˜o nativa do shell) reside em um e a e ca arquivo em algum lugar. contudo. Vocˆ pode querer ir direto para a se¸˜o e 12.2. vocˆ n˜o disse que ele estava em /bin. a 8. tamb´m. quando vocˆ executou su. e Por exemplo. pode quebrar tudo o que desejar. mas n˜o ´ para isso que servem. .) Discutiremos as vari´veis de a a ambiente com maiores detalhes em vari´veis de ambiente. o Por que. procurando em cada um o arquivo execut´vel chamado su que pudesse executar. a e a Poderia tamb´m estar em /usr/local/share. que o ”. lembra-se do comando su da se¸˜o acima? Bem. para procurar os programas a e o que vocˆ tenta executar.” ´ um atalho para o diret´rio atual. se der um erro de ”Command not found” (comando n˜o encontrado). a e Ent˜o. Vocˆ executa um programa simplesmente especificando o caminho e completo at´ ele. o seu shell percorreu sua lista de die a e ret´rios. O SHELL Legal. e alguns fazem um zumbido maravilhoso quando est˜o ligados.70 CAP´ ITULO 8. que o root pode e u e e ca por sua natureza. E acho que podemos concordar que ser usado a a e como batente para portas n˜o ´ o que trouxe popularidade aos computadores pessoais.. Vocˆ ter´ que informar a senha de root a e a e se tornar´ o root at´ que dˆ o comando exit ou logout. ele o executou. isso ´ muito legal. n˜o h´ problemas se vocˆ decidir que quer se tornar o root enquanto est´ no o a a e a ´ o sistema como outro usu´rio. por exemplo. Isto acontece sempre que vocˆ executa um programa sem e especificar o caminho completo para ele. A sabedoa a ria popular diz que ´ melhor s´ se tornar o super usu´rio quando for absolutamente necess´rio.2 8.1 e ver como adicionar um usu´rio.1 A Linha de Comando Executando Programas N˜o h´ muito o que fazer sem executar um programa. isso tamb´m vale para a e e programas. lembra-se de que quase tudo no Linux ´ um arquivo? Bem. ent˜o se vocˆ estivesse em e e o a e /bin. e./su funcionaria como um caminho completo expl´ ıcito. O problema ´. . e o a a de forma a minimizar a possibilidade de estragar algo acidentalmente. Essa vari´vel basicamente cont´m uma lista de diret´rios. a a a ´ (E claro que isso seria verdadeiro se o programa n˜o existisse. Vocˆ tamb´m pode se tornar qualquer a e e e e outro usu´rio usando o su. Ent˜o. ent˜o. hein? Se vocˆ estiver em d´vida: sim. A prop´sito. deve dar para apoiar algo com o seu a a computador ou manter uma porta aberta.

txt ex3.txt para combinar com o ?. aA.a-d]1 A1 a1 b1 c1 d1 .2.txt.txt /tmp ´ trabalhoso demais. Por a ca ´ exemplo. ser´ substitu´ a ıdo. ”2”. que um diret´rio cont´m os 8 seguina e a ım. a e ”3”. Tamb´m podemos separar entradas individuais e usando v´ ırgulas.2. obter´ ıamos resultados incorretos. aC. E o e muito mais f´cil digitar cp ex?.txt /tmp. e podemos encontr´-los rapidamente com o [ ]. $ ls [A-a]1 A1 B1 C1 D1 a1 Tamb´m pode combinar h´ e v´ e ıfen ırgula. Isto ´ assustador. pegar os nossos trˆs arquivos originais.a]1 A1 a1 Observe que se inclu´ ıssemos um h´ em vez de uma v´ ıfen ırgula. Ent˜o se aqueles u a trˆs arquivos fossem os unicos no diret´rio. ent˜o A e B vˆm antes u e u a e de a e b. inclusive 0.5. Queremos encontrar apenas os arquivos que terminam com n´meros. o e ca Vocˆ quer copiar todos estes arquivos (usando o comando cp visto na se¸˜o 10. Felizmente. n˜o h´ um e e a a caractere em ex. digitar cp ex1.significando todos os valores entre 1 e 4. O que disse? Isto ainda d´ muito trabalho? Vocˆ est´ certo.txt. contudo. $ ls a[1. o * substitui ”qualquer n´mero de caracteres”. digamos /tmp. a2.2.8.txt. por exemplo. Quaisquer caracteres dentro dos e colchetes substituem de acordo com o padr˜o informado em [ ] para encontrar combina¸˜es. Como j´ e a foi mencionado. o [ ] far´ isso para n´s. se quis´ssemos os arquivos a1 e A1. u a o $ ls a[1-4] a1 a2 a3 a4 Mas o que realmente queremos ´ apenas os arquivos a1. Suponha. $ ls [A. o ? combina com qualquer um dos caracteres ”1”. poder´ e ´ o ıamos simplesmente dizer cp * /tmp e pegar todos com um s´ golpe. a4. a3.txt /tmp. somente iria. Queremos copiar o ex. o que significa que a ´ diferente de A e que s´ s˜o relacionados em sua u e o a mente. As letras mai´sculas sempre vˆm antes das letras min´sculas. aB. tamb´m temos o *.Bem.txt. a $ ls [A. A LINHA DE COMANDO 71 8. e quanto as letras? O Linux distingue entre mai´se a u culas e min´sculas. Bem. e aD . o O cp ex?.txt. os mais a comuns s˜o * e ?. temos leis a e a e trabalhistas para nos proteger deste tipo de coisa. Estes caracteres s˜o chamados de meta-caracteres. o e tes arquivos: a1. o ? geralmente substitui qualquer caractere unico.4] a1 a2 a4 Sei que agora vocˆ est´ pensando: . que tamb´m exista um arquivo chamado ex.2 Substitui¸˜o de Meta-Caracteres ca Quase todo shell reconhece alguns caracteres como substitutos ou abrevia¸˜es que significam co que qualquer caracter encaixa aqui.txt ex2. a co Parece confuso? N˜o ´ t˜o ru´ Suponha. e ex3. Por conven¸˜o. a2 e a4 ? no exemplo anterior usae mos . suponha que esteja em um diret´rio com trˆs arquivos: ex1. ex2. O cp ex* /tmp faz isso a para n´s.txt. ent˜o ele ficaria de fora. a Outro meta-caractere comum ´ o par de colchetes [ ]. ´ claro. por sua vez. mas n˜o o hejaz.1) para outro e ´ diret´rio. Dando continuidade ao nosso exemplo anterior. e cada um.txt e o e um chamado hejaz.

O SHELL 8.) a $ ps > blargh Sabe o que ´ isso? Estou executando o ps para ver quais processos est˜o em execu¸˜o. a Exemplo: Listando as Vari´veis de Ambiente com o set a . e as adiciona ao arquivo blargh. 8. que significa. e h´ muito para se lembrar.. ıda a assim como o ”>”. vai ficar ıda mais legal.3.3. como o seu prompt deve ser. Mas espere. $ ps >> blargh Este ´ o terceiro redirecionador mais usado.) a u Tamb´m h´ o operador ”<”. A parte legal ´ > blargh. pegue a sa´ do ps e mande para um arquivo chamado blargh. ele ser´ criado. se este arquivo existir. muitos pequenos detae a lhes que fazem diferen¸a nas suas intera¸˜es normais com v´rios programas (alguns dos quais c co a vocˆ n˜o deve nem ter ouvido falar).1 O Bourne Again Shell (bash) Vari´veis de Ambiente a Um sistema Linux ´ uma fera complexa.txt > unixfile. Se n˜o. o nome da e a m´quina.3 Redirecionamento de Entrada e Sa´ e Uso do Pipe ıda (L´ vem algo legal. que significa pegue a entrada a partir do sa´ mas n˜o ´ usado e a ıda. a u $ fromdos < dosfile. a Veja a p´gina de manual do bash(1) para encontrar informa¸˜es mais detalhadas sobre a co redirecionamento. a grosso a modo. exceto pelo fato de e que o ”>>” adiciona a sa´ do ps ao final do arquivo blargh.. ent˜o posso subir ou descer a p´gina ıda e a a conforme a minha vontade. Essa n˜o ´ a parte legal.2.txt O redirecionamento fica mesmo divertido quando come¸a a ser combinado: c $ ps | tac >> blargh Isso executa o ps. apenas tenha o cuidado de se lembrar de que eles s˜o interpretados da esquerda para a direita. dizendo a ele que tipo de terminal est´ sendo usado.72 CAP´ ITULO 8. $ ps | less Este pega a sa´ do ps e a manda atrav´s do less. (O ”>” substitui o conte´do atual do arquivo blargh. reverte as linhas de sua sa´ ıda. a e t˜o freq¨entemente. o ps e a ca ca a e e est´ na se¸˜o 11. ele faz o mesmo que o ”>”.3 8. Ningu´m precisa passar um monte de op¸˜es para cada e a e co programa que ´ executado. Vocˆ pode e empilhar quantos redirecionadores desejar.

8. provaa a velmente n˜o ´ um shell muito util). se VARIAVEL n˜o existia. provavelmente ser´ redefinida em e a a uma outra sess˜o. A n˜o ser que seja u a a a a algo que vocˆ definiu explicitamente naquela sess˜o do shell. j´ era. vocˆ d´ ` vari´vel de ambiente VARIe a e aa a AVEL o valor ”algum valor”. passa a existir. de forma que s´ acontece em co a a a o um sistema Linux. deixaremos a p´gina de manual do bash(1) cobrir esses detalhes. assim como seus a valores. como um mecanismo de ajuda. Como a maioria das fun¸˜es nativas do bash.) a $ export \textbf{VARIAVEL=algum\_valor} O comando export ´ realmente pr´tico. Observe nesse exemplo a vari´vel PATH que foi discutida acima. Praticamente qualquer shell possui vari´veis de ambiente (se n˜o. echo $PATH exibe ıcio a o valor de PATH. a a O ambiente define as condi¸˜es nas quais os programas s˜o executados.:/usr/local/ssh2/bin:/usr/local/ssh1/bin: /usr/share/texmf/bin:/usr/local/sbin:/usr/sbin:/home/logan/bin . o usu´rio pode alterar e brincar com elas. Usando-o. Isso n˜o ´ t˜o bom se vocˆ estiver apenas tentando adicionar a a e a e um diret´rio ` sua vari´vel PATH. adicione um $ ao in´ do nome da vari´vel. Se VARIAVEL j´ a a possuir um valor. bem. O BOURNE AGAIN SHELL (BASH) 73 $ set PATH=/usr/local/lib/qt/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin:/usr/openwin/bin: :/usr/local/ssh2/bin:/usr/local/ssh1/bin:/usr/share/texmf/bin:/usr/local/sbin:/usr/sbin: PIPESTATUS=([0]="0") PPID=4978 PS1=’\h:\w\$ ’ PS2=’> ’ PS4=’+ ’ PWD=/home/logan QTDIR=/usr/local/lib/qt REMOTEHOST=ninja. no meu caso: $ echo \$PATH /usr/local/lib/qt/bin:/usr/local/bin:/usr/bin:/bin:/usr/X11R6/bin: /usr/openwin/bin:/usr/games:. O Exemplo acima mostra um trecho da sa´ de um comando set executado em um ıda dos computadores do autor. (N˜o se preocupe. vocˆ provavelmente quer fazer alguma coisa como: o a a e $ export PATH=\$PATH:\textbf{/um/novo/diretorio} Observe o uso de $PATH aqui: quando se quer que o bash interprete uma vari´vel (substitu´ a ıla por seu valor). $ unset VARIAVEL O comando unset remove as vari´veis que vocˆ indicar. os usu´rios contam com o que se chama de ambiente. O bash esquece que a vari´vel j´ existiu. a Os programas de cada um destes diret´rios podem ser executados simplesmente digitando-se o o nome do arquivo. apagando tanto a vari´vel quanto o a e a seu conte´do. e algumas destas deco a fini¸˜es s˜o vari´veis. Neste caso. tamb´m pode fazer v´rias outras coisas co e a (com parˆmentros). entrea a tanto.3. Por exemplo.tdn SHELL=/bin/bash Ent˜o. Daremos uma vis˜o geral dos comandos do bash para a a e ´ a manipula¸˜o das suas vari´veis de ambiente. ca a O set sozinho exibe todas as vari´veis de ambiente definidas atualmente.

O /usr/src cont´m dois subdiret´rios: /usr/src/linux e /usr/src/sendmail. Nem todos n´s podemos ter m´ltiplos teclados. O SHELL 8.3. Ent˜o simplesmente digito ls /usr/src/l. a combina¸˜o o c e ca .2 Completando Linhas de Comando com o TAB (Aqui vai outra coisa legal. cada ca e tecla de fun¸˜o corresponde a um deles. ca o a e a Quer dizer. talvez vocˆ esteja digie tando explicitamente. Obviamente. Felizmente. e o bash nos salva do item (5) (Ningu´m gosta de uma interface de linha de comando). a e a n˜o ´? E vocˆ pode entrar no sistema quantas vezes quiser simultaneamente. mas este sistema ´ multi-usu´rio. Eu disse que era legal. come¸ando pelo s´timo (Alt+F7) e assim por diante. a Pressionando Alt e uma tecla de fun¸˜o.4 Terminais Virtuais Vocˆ est´ no meio de um trabalho e decide que precisa fazer outra coisa. o Slackware tem logins em 6 terminais ca a virtuais.) • Usar uma interface de linha de comando significa digitar muito. Posso parar aqui. podemos determinar que (4) ningu´m gosta de digitar. Talvez esteja em seu PATH. A capacidade de completar linhas de comando com o TAB funciona assim: Vocˆ est´ e a digitando o nome de um arquivo. Vocˆ poderia e a e simplesmente parar o que est´ fazendo e alternar as tarefas. Tudo que se precisa ´ digitar o suficiente do nome do arquivo para e identific´-lo de forma unica. e o bash me d´ o comando ls /usr/src/linux. Se eu o digitar /usr/src/l e pressionar TAB. e Vocˆ est´ perguntando como o bash consegue esta proeza maravilhosa? Al´m da expans˜o e a e a de meta-caracteres discutido acima. provavelmente nem queremos ter. e A partir dos itens 2 e 3. No X. oferecendo ”terminais virtuais”. e o Linux se d´ bem nesse caso. e o bash exibe uma rela¸˜o de diret´rios que combinam com o que j´ digitei at´ ent˜o. as pessoas podem gostar de interfaces de linha de ca a comando). Alt+F2 te leva ao segundo. suponha que existam dois diret´rios /usr/src/linux e /usr/src/linux-old . Ent˜o pressione a tecla TAB. o bash apresenta a capacidade de completar linhas de comando com o TAB. menos digita¸˜o (e ent˜o. a • Ningu´m gosta de trabalho. 8. O restante das teclas de fun¸˜o s˜o reservadas para sess˜es do X. Sobra para a a e ca o software. a Agora. ou posso pressionar TAB novamente. Cada sess˜o do X usa ca a o a seu pr´prio VT. e vou ter /usr/src/linux. vocˆ pode alternar entre os terminais virtuais. Por padr˜o. mouse e monitores para cada a o u m´quina. pressiono a a a tecla TAB. e o Quero ver o que est´ em /usr/src/linux. etc. o bash preenche tanto quanto consegue.74 CAP´ ITULO 8. n˜o pode? Ent˜o a e e a a por que teria que fazer uma coisa de cada vez? N˜o precisa. O bash descobre o que vocˆ a ´ a e quer e termina a digita¸˜o para vocˆ! ca e Veja o exemplo. • Digitar d´ trabalho. ou ”VTs”. Alt+F3 ao terceiro. hardware n˜o ´ a solu¸˜o.

Todos os comandos do screen a o s˜o precedidos por Crtl+A.redtail(Detached) 1225.pts-1. Ctrl+A+P alterna para o terminal anterior. .pts-1. (maiores detalhes abaixo). Diferentemente dos termica a nais virtuais padr˜o. assim. O comando screen -r relaciona todas as sess˜es atuais do screen `s quais vocˆ ca o a e pode retornar. posso retornar ` minha sess˜o do screen e a a a reiniciar exatamente de onde parei.redtail(Detached) 1195.host" to resume one of them.pts-1. Ctrl+Alt+F3 te levar´ a a ao terceiro terminal virtual. O comando screen -r 1212 retorna ` primeira sess˜o listada. se estiver no ca e ıda ca X e quiser voltar a um console de texto (sem sair de sua sess˜o no X). Mencionei anteriormente que a a isso era util para sess˜es remotas. TERMINAIS VIRTUAIS 75 Alt+Tecla de Fun¸˜o ´ substitu´ por Ctrl+Alt+Tecla de Fun¸˜o.sanctuary (Dead ???) Remove dead screens with ’screen -wipe’. o que pode ser terr´ ıvel para o seu servidor. Ao executar o a screen. Ctrl+A+C cria uma nova sess˜o do terminal. uma breve apresenta¸˜o aparece. O screen ´ um emulae dor de terminal que possui capacidades semelhantes `s de um terminal virtual.redtail(Detached) 17146.8. desconectando a minha sess˜o se a minha conex˜o a a cair. a a Ctrl+A+N alterna para o pr´ximo terminal. Assim que a minha conex˜o for restaurada. e a minha conex˜o ca´ pro algum motivo como falta de energia local. Por exemplo. o que ´ especialmente util em e o e ´ sess˜es remotas por ssh e telnet. Usar o screen evita isso.4.) a a 8. Ctrl+A+D sai da tela atualmente o em execu¸˜o.pts-1. o que quer que a ısse eu estivesse fazendo naquele momento seria perdido instantaneamente. Se eu tivesse logado em um servidor Slackware remoto por ´ o ssh. $ screen -r There are several suitable screens on: 1212.]tty. Type "screen [-d] -r [pid.1 Screen E quanto `s situa¸˜es onde n˜o h´ terminais virtuais? E ent˜o? Felizmente.4. o screen possui seus pr´prios comandos. o O screen tamb´m permite sair e retornar a sess˜es do screen. (Alt+F7 te leva de volta ` primeira sess˜o do X. ent˜o um terminal abre. o Slackware a co a a a inclui um belo gerenciador de tela oportunamente chamado de screen.

O SHELL .76 CAP´ ITULO 8.

a a ”N´s podemos mudar facilmente os donos de um arquivo com os comandos chown(1) (que o significa mudar o propriet´rio”) e chgrp(1) (que significa ”mudar o grupo”). t˜o bem quanto os aspectos co ca a multi-usu´rio do sistema de arquivos. como os ´ links e a montagem de parti¸˜es NFS. h´ mais e a o e a sobre sistemas de arquivos que apenas a estrutura de diret´rios. Essa se¸˜o explica tudo isso.Cap´ ıtulo 9 Estrutura do Sistema de Arquivos N´s j´ discutimos previamente sobre a estrutura de diret´rios no Slackware Linux. A partir o a o deste ponto. Para mudar o dono a de um arquivo para daemon. Por´m. Todo o aspecto do sistema ´ multiusu´rio. o O Linux ´ um sistema operacional multi-usu´rio. N´s podemos ver que o usu´rio e a o a ”root”e o grupo ”bin”s˜o os propriet´rios desse arquivo. n´s podemos usar o comando chown: o # chown daemon /usr/bin/wc Para mudar o grupo que possui um arquivo para ”root”. O sistema armazena informa¸˜es sobre quem possui um arquivo co e quem pode ler este arquivo. A maneira mais f´cil a a de ver essa informa¸˜o ´ com o comando ls: ca e $ ls -l /usr/bin/wc -rwxr-xr-x 1 root bin 7368 Jul 30 1999 /usr/bin/wc N´s estamos interessados na terceira e quarta colunas (da esquerda para a direita). Essas o colunas cont´m o nome do usu´rio e grupo que possui o arquivo. Isso inclui qual usu´rio e grupo possui um determinado arquivo. Existem outras partes unicas sobre o sistema de arquivos. vocˆ est´ apto a encontrar arquivos e diret´rios que precisar. e a e a inclusive o sistema de arquivos. n´s podemos usar o comando chgrp: o # chgrp root /usr/bin/wc N´s podemos utilizar o comando chown para especificar as propriedades de usu´rio e grupo o a para um arquivo: # chown daemon:root /usr/bin/wc 77 . a 9.1 Propriedade O sistema de arquivos armazena informa¸˜es sobre o dono de cada arquivo e diret´rio no co o sistema.

e co ca a ca o bit controle. ca o . No Slackware. identifica¸˜o de grupo (group ID).com. escreve. permiss˜o do propriet´rio. Os valores octais associados aos modos de permiss˜o s˜o (eles possuem letras a a associadas que s˜o mostradas por programas como o comando ls e podem ser utilizadas pelo a comando chmod ): Valores de Permiss˜o Octais a Tipo de Permiss˜o a ”bit”controle identifica¸˜o de usu´rio ca a identifica¸˜o de grupo ca leitura escrita execu¸˜o ca Valor Octal Valor Letra 1 t 4 s 2 s 4 r 2 w 1 x Vocˆ adiciona os valores octais para cada grupo de permiss˜es. grupo. no lugar do dois-pontos. o comando chmod interpretaria mr. os administradores s˜o alertados para evitarem esses nomes de usu´rios. Algumas ca e ´ a vezes vocˆ precisa corrigir as propriedades em arquivos e em n´s de dispositivos (device nodes). o usu´rio poderia ter usado um ponto. vocˆ utilizar´ ”6”na por¸˜o referente ` pera e a ca a miss˜o do grupo. O uso do e ponto ´ obsoleto e poder´ ser removido em futuras vers˜es do comando chown para permitir e a o nomes de usu´rios que contenham ponto.78 CAP´ ITULO 9. o dois-pontos ´ considerado a melhor forma. e outros) s˜o mostradas a seguir. mesmo que vocˆ seja o unico usu´rio do sistema. S˜o eles. e e A informa¸˜o de permiss˜o ´ armazenada na forma de quatro d´ ca a e ıgitos octais. N´s vemos que o propriet´rio a a o a possui permiss˜es de leitura. cada um especificando diferentes conjuntos de permiss˜es. entretanto. o a a Com elas. Os quatro d´ a ıgitos octais s˜o utilizados para armazenar infora ma¸˜es especiais como identifica¸˜o de usu´rio (user ID).2 Permiss˜es o As permiss˜es s˜o outra parte importante do aspecto multi-usu´rio do sistema de arquivos.jones@example. se vocˆ quer e o e que o grupo tenha permiss˜o de ”leitura”e ”escrita”. e executa arquivos. e o 9. a As permiss˜es padr˜es do bash s˜o: o o a $ ls -l /bin/bash -rwxr-xr-x 1 root bin 477692 Mar 21 19:57 /bin/bash O primeiro tra¸o pode ser substitu´ por um ”d”se for um diret´rio. Esses nomes de usu´rio tendem a ser muito populares a a com Servidores Windows Exchange e s˜o encontrados com maior freq¨ˆncia em endere¸os de a ue c a e-mail como: mr. permiss˜o do mundo. Em nosso exemplo. E todo o mundo possui permiss˜es de leitura e escrita (r-x). a A defini¸˜o de quem ´ o dono de um determinado arquivo ´ uma parte muito importante ca e e na utiliza¸˜o de um sistema Linux. O rea sultado teria sido o mesmo. escrita e execu¸˜o (rwx). As trˆs permiss˜es c ıdo o e o de grupo (propriet´rio. permiss˜o de o a a a a grupo e. O grupo possui apenas permiss˜o de o ca a leitura e execu¸˜o (r-x). porque alguns scripts utilizam o ponto para indicar o nome e o a grupo de um arquivo ou diret´rio. Por exemplo. vocˆ pode alterar quem lˆ.jones o como usu´rio ”mr”e grupo ”jones”. ESTRUTURA DO SISTEMA DE ARQUIVOS No exemplo acima.

escrita e execu¸˜o. a e $ umask 0022 $ umask 0077 $ touch tempfile $ ls -l tempfile -rw-------. para for¸ar a identifica¸˜o do usu´rio (user ID) e a identific ca a ca¸˜o de grupo (group ID). Para o u a e o propriet´rio que possui permiss˜o de leitura. Aplique esses valores juntos ao chmod dessa maneira: $ chmod 755 /tmp/exemplo $ ls -l /tmp/exemplo -rwxr-xr-x 1 david users 0 Apr 19 11:21 /tmp/exemplo Agora vocˆ deve estar pensando. ”Por que n´s n˜o criamos o arquivo com essas permiss˜es e o a o desde o in´ ıcio?”Bem. Para permiss˜o de leitura e execu¸˜o ter´ a ca ıamos o valor 5. e controla quais permiss˜es s˜o ıdo o a designadas ` arquivos criados recentemente. e ca Este comando vem inclu´ com a maioria dos shells do Unix. s´ que em modo reverso. n´s usamos o 6 na primeira coluna: ca o $ chmod 6755 /tmp/exemplo $ ls -l /tmp/exemplo -rwsr-sr-x 1 david users 0 Apr 19 11:21 /tmp/exemplo Se os valores octais confundem vocˆ. Acrescente os n´meros octais para a permiss˜o que vocˆ quer. O bash possui uma implementa¸˜o chamada umask. Por exemplo.˜ 9.3. adicione os n´meros juntos e identifique-os o u na primeira coluna. O seu e a e valor padr˜o ´ 0022.1 david users 0 Apr 19 11:21 tempfile Olhe a p´gina do manual do bash para maiores informa¸˜es. vocˆ pode usar letras com o chmod. N´s discutimos sobre as implementa¸˜es do bash a o co ca e a com maior profundidade na se¸˜o 8. vamos criar um arquivo chamado exemplo: o $ touch /tmp/exemplo $ ls -l /tmp/exemplo -rw-rw-r--.1 david users 0 Apr 19 11:21 /tmp/exemplo N´s usaremos o comando chmod (1) (que significa ”mudar o modo”) para alterar as permiso s˜es do arquivo exemplo. a co Para aplicar permiss˜es especiais com o chmod. PERMISSOES 79 Como n´s configuramos as permiss˜es de um outro arquivo para que elas fiquem semelhantes o o as permiss˜es do bash? Primeiro. Os grupos de e e permiss˜o s˜o representados como: a a Propriet´rio a Grupo Mundo Todas acima u g o a .1. n´s ter´ a a ca o ıamos o valor 7. Vocˆ especifica os o e valores octais que vocˆ n˜o deseja que estejam presentes nos arquivos rec´m-criados. O comando umask ´ utilizado de forma razo´vel. a resposta ´ simples.2. Ele funciona de maneira bastante similar ao chmod.

ele ´ executado sob o seu grupo atual. co e c n˜o ´ ruim utilizar as permiss˜es de identifica¸˜o de usu´rio e de grupo. Eles s´ podem existir dentro de a a o um unico sistema de arquivos e s´ s˜o removidos quando o nome real ´ removido do sistema. a e o ca a 9. vocˆ pode ter arquivos existindo em v´a e a rios locais e podendo ser acessados por v´rios nomes. s´ que para o grupo.3 Links Links s˜o ponteiros entre arquivos. Ambas as maneiras ir˜o u a gerar o mesmo resultado na aplica¸˜o das permiss˜es. O mesmo ´ verdade a e o a e para o grupo. Isto ´. Normalmente. Isso ´ trivial utilizando as letras. ´ o a e Eles s˜o uteis em alguns casos. Em alguns casos as letras s˜o mais poderosas. e e $ ls -l /tmp/ -rwxr-xr-x 1 alan -rwxr-x--1 alan ----r-xr-x 1 alan users users users 0 Apr 19 11:21 /tmp/exemplo0 0 Apr 19 11:21 /tmp/exemplo1 0 Apr 19 11:21 /tmp/exemplo2 0 Apr 19 11:21 /tmp/exemplo0 0 Apr 19 11:21 /tmp/exemplo1 0 Apr 19 11:21 /tmp/exemplo2 $ chmod g-rwx /tmp/exemplo -rwx---r-x 1 alan users -rwx-----1 alan users -------r-x 1 alan users N´s mencionamos as permiss˜es de identifica¸˜o de usu´rio (user ID) e a identifica¸˜o de o o ca a ca grupo (group ID) em v´rias partes acima. e o que vocˆ vˆ frequentemente sendo utilie zado em shell script. Vocˆ pode estar se perguntando o que s˜o essas a e a permiss˜es. este est´ operando sob a sua conta o e a de usu´rio. vocˆ pode for¸ar o programa para sempre rodar como o a ca a e c propriet´rio do programa (como o ”root”). Quando vocˆ roda um programa. pois as permiss˜es de identifica¸˜es de usu´rio e de grupo dos proo co a gramas podem abrir brechas de seguran¸a no seu sistema.80 CAP´ ITULO 9. Com os links. por´m muitos usu´rios acham o link dinˆmico muito mais vera ´ e a a s´til. Com a e e permiss˜o de identifica¸˜o de usu´rio. quando vocˆ roda um programa. ele tem todas as permiss˜es que o seu usu´rio possui. Resumindo. n´s precisamos utilizar v´rias linhas de comando: o a $ chmod a+rx /tmp/exemplo $ chmod u+w /tmp/exemplo $ chmod ug+s /tmp/exemplo Algumas pessoas preferem utilizar as letras em vez dos n´meros. a . Se vocˆ freq¨entemente for¸a as c e u c permiss˜es de usu´rio para os programas que pertencem ao usu´rio root. n˜o existe a a uma maneira f´cil de alterar um grupo de permiss˜es e preservar outros em arquivos e diret´a o o rios. Por exemplo. ESTRUTURA DO SISTEMA DE ARQUIVOS Para fazer o descrito acima. vocˆ pode ver como isso cria um grande problema de seguran¸a. A permiss˜o de identifica¸˜o de grupo faz a mesma a a ca coisa. ca o u a e e O formato octal ´ freq¨entemente mais r´pido. Como o usu´rio root n˜o possui resa a tri¸˜es no sistema. a Links est´ticos s˜o nomes para um arquivo em particular. quando vocˆ usa o formato octal. apenas use o bom senso. vocˆ est´ permitindo o a a e a que qualquer um utilize o programa e o utilize como root. Existem dois tipos de links: est´ticos e a a dinˆmicos. o Seja cuidadoso com isso.

a o e c uma s´rie de verifica¸˜es pr´vias ir´ prever a cria¸˜o de links simb´licos nessa situa¸˜o. o Os links n˜o possuem seu pr´prio conjunto de permiss˜es ou propriedades. Vocˆ pode adicionar ou remover links simb´licos sem afetar o arquivo e o atual. A remo¸˜o de links ´ feita utilizando o e ca e comando rm. e a e fstab Vamos dar uma olhada em um exemplo do arquivo /etc/fstab: $ cat /etc/fstab /dev/sda1 /dev/sda2 /dev/sda4 /dev/sdb1 /dev/sdb3 none / /usr/local /home swap /export /dev/pts ext2 ext2 ext2 swap ext2 devpts defaults defaults defaults defaults defaults gid=5. O comando ln ´ utilizado para criar links.1. um embaixo do outro. eu estava o trabalhando em uma m´quina que teimava em falhar nos backups em fita toda noite. O software para o o backup manteve anexado ` fita esses mesmos diret´rios. em particular. Alguns dispositivos s˜o montados automaticamente quando vocˆ inicializa o seu computaa e dor.9. a a Aqui est´ um exemplo comum: a $ ls -l /bin/sh lrwxrwxrwx 1 root root 4 Apr 6 12:34 /bin/sh -> bash O shell sh sob o Slackware ´ atualmente o bash. todos os drives e dispositivos em seu come ca putador s˜o um sistema de arquivos enorme. por´m refletem a o o e os arquivos aos quais eles apontam. ele tamb´m pode apontar para um diret´rio. Ele ´ na verdade um pequeno arquivo contendo apenas as informae co ¸˜es que ele necessita. com os links simb´licos. 9. at´ ficar sem espa¸o.mode=620 1 1 1 0 1 0 1 1 1 0 1 0 . Dois a links simb´licos tinham sido feitos para dois diret´rios. Os usu´rios do Slackware usam mais os links dinˆmicos. Tudo o que vocˆ quiser que seja a e montado automaticamente precisa ter uma entrada neste arquivo. V´rias parti¸˜es em seu disco r´ a a co ıgido. mas o e co e a ca o ca nosso era um caso especial.1. pode apontar para um arquivo fora do a e o seu sistema de arquivos. vocˆ ter´ que executar um comando toda vez que vocˆ quiser montar um dispositivo. CD-ROMs.4. Para os outros dispositivos. Normalmente. tamb´m chamado de link simb´lico. E desde que um link simb´lico ´ na verdade um arquivo pequeno contendo sua pr´pria o e o ´ informa¸˜o. e disquetes s˜o todos alocados em uma mesma ´rvore. maior profundidade no Cap´ ´ E muito importante ter cuidado. Esses comandos ser˜o discutidos com e a ıtulo 10. Ao anexar todos esses drives ao sisa a tema de arquivos para que possam ser acessados. Esses dispositivos est˜o listados no arquivo /etc/fstab. Uma vez.4 Montando Dispositivos Como foi pr´viamente discutido na se¸˜o 4. vocˆ precisa utilizar os comandos mount(1) e e umount(1). E bastante comum ver o /var/tmp ca e o atualmente como um link simb´lico para /tmp por exemplo. MONTANDO DISPOSITIVOS 81 O link dinˆmico.

e um drive de CD-ROM. e o diret´rio /cdrom e o ´ o local no sistema de arquivos onde o drive ser´ montado. co Quando vocˆ instala o Slackware Linux. Vocˆ pode utilizar. eu terei de co a utilizar muitas op¸˜es junto ao comando mount: co $ mount -t iso9660 -o ro /dev/cdrom /cdrom Esta linha de comando inclui a mesma informa¸˜o que o exemplo do fstab tinha. ou outro dispositivo remov´ e ıvel. Para os sistemas ca e de arquivos normais do Linux. e a Antes que vocˆ possa remover um disquete. A terceira coluna ´ o tipo de sistema de arquivo do dispositivo. Neste caso. com exce¸˜o no caso de uma a o ca parti¸˜o swap. vocˆ ter´ que desmont´-lo. Eu poderia utilizar o comando mount desta forma: ca $ mount /cdrom Desde que haja uma entrada no arquivo fstab para esse ponto de montagem. mount e umount Anexar outro dispositivo ao seu sistema de arquivos ´ f´cil. Verifique o manual do fstab(5) para maiores informa¸˜es. com algumas op¸˜es. o comando mount sabe quais op¸˜es utilizar. As duas ultimas co ´ colunas s˜o utilizadas para o fsck e outros comandos que precisam manipular os dispositivos. Drives a de CD-ROM s˜o iso9660. Entretanto. a a A quarta coluna ´ uma listagem de op¸˜es que se aplicam ao sistema de arquivos montado. A op¸˜o <option>-t iso9660</option> o ca ´ o tipo de sistema de arquivos do dispositivo a ser montado. tanto e o caminho para o dispositivo montado quanto o ponto de montagem. que esteja atualmente montado. ele seria o sistema e de arquivos iso9660. que ´ usado normalmente pelos drivers de CD-ROM. como argumento para o . e co O padr˜o (defaults) pode ser usado sem problemas com quase todos os dispositivos. estes ser˜o ext2 (segundo sistema de arquivos extendido). Existem muitas op¸˜es que e ca co podem ser utilizadas. mesmo ca assim n´s iremos explicar todas as partes do comando. Por exemplo. a para dispositivos de somente leitura vocˆ deve colocar a op¸˜o ro. ESTRUTURA DO SISTEMA DE ARQUIVOS none /proc /dev/fd0 /mnt /dev/cdrom/mnt/cdrom proc ext2 iso9660 defaults defaults ro 0 0 0 0 0 0 A primeira coluna ´ o nome do dispositivo. A segunda coluna informa aonde o dispositivo ser´ montado. Isto ´ feito utilizando o comando umount. CD-ROM. Esse deve ser o nome de um diret´rio. um drive de disquete. e a a e N˜o pergunte para onde o ”n”foi porque n´s n˜o poder´ a o a ıamos te contar. Tudo o que vocˆ tem que fazer e a e ´ utilizar o comando mount. Caso n˜o haja uma entrada para este dispositivo. a Verifique o manual para essas informa¸˜es. e dispositivos baseados no Windows ser˜o do tipo msdos ou vfat.82 CAP´ ITULO 9. A op¸˜o <option>-o e ca ro</option> diz ao comando para montar o dispositivo com capacidade para apenas efetuar leituras. O caminho /dev/cdrom ´ o nome do dispositivo a ser montado. os dispositivos s˜o cinco parti¸˜es e a co espalhadas por dois discos r´ ıgidos SCSI. Nesse caso. dois sistemas de arquivos que n˜o precisam de disa positivos. Utilizar o comando mount pode ser mais e co simples se o dispositivo possui uma entrada no arquivo /etc/fstab. o programa de instala¸˜o ir´ criar a maior parte do e ca a arquivo fstab. vamos dizer que eu queira montar o meu driver de CD-ROM e o arquivo fstab se parece com o exemplo citado na se¸˜o anterior.

algumas vezes. o o a ca a Veja a se¸˜o 5. Por exemplo. N´s podemos utilizar o NFS para compartilhar um a e o conjunto de diret´rios de usu´rios entre todas as esta¸˜es de trabalho. mas pode ser utilizado para adicionar partes ao sistema de arquivos montado. O problema de pegar a mesma c´pia o a o o para cada m´quina ´ resolvido pelo NFS. Ambientes Unix enormes. ame bos os comandos podem ser utilizados: # umount /dev/cdrom # umount /cdrom 9. conjuntos de diret´rios de usu´rios.5 Montagem NFS NFS significa Network Filesystem (Sistema de arquivos de rede). nfsd (8). Ele n˜o ´ realmente parte a e do sistema de arquivos real. Ent˜o as esta¸˜es de trao a co a co balho montam o diret´rio que o NFS compartilhou como se estivesse nas suas pr´prias m´quinas.9. se vocˆ quer desmontar o CD-ROM do exemplo anterior. e o reposit´rio de e-mail.2 e as p´ginas do manual para exports(5). e mountd (8) para maiores informa¸˜es. precisam compartilhar os mesmos programas. MONTAGEM NFS 83 comando umount.5. co .6.

84 CAP´ ITULO 9. ESTRUTURA DO SISTEMA DE ARQUIVOS .

a e ıvel Portanto. e assim por diante.1 Navega¸˜o: ls. E claro que temos uma interface gr´fica no Slackware. ´ que n˜o se pode dizer ıda. A se¸˜o a seguir explica os comandos corriqueiros do gerenciamento de arquivos e provˆ ca e exemplos de como eles s˜o usados. vocˆ especificaria uma lista longa: ca a o e $ ls -l 85 . e permiss˜es. O ls pode tamb´m ser usado para conseguir outras informa¸˜es nos arquivos. cd. Existem muitos outros comandos. e co para ver a data de cria¸˜o. vocˆ poderia usar esses comandos: o e $ cd / $ ls bin cdr boot cdrom dev etc home lib lost+found mnt root proc sbin suncd usr tmp var vmlinuz O problema que muita gente tem com a sa´ do comando anterior.Cap´ ıtulo 10 Manipulando arquivos e diret´rios o O Linux tenta ser o mais parecido com o Unix poss´ ıvel. Usu´rios DOS e Windows ir˜o notar a simio a a laridade com o comando dir.Tradicionalmente. Al´m disso. mas estes ir˜o ajudar a a vocˆ a come¸ar. 10.1 10.1. Para a o ver o que existe em seu diret´rio raiz. Alguns usu´rios preferem o ls adicionado e o e a a um identificador para cada listagem. os sistemas ope´ racionais Unix tem sido orientados pela linha de comando. ´ importante entender alguns dos comandos b´sicos dos comandos de gerenciamento e a de arquivos. como essa: $ ls -FC bin/ cdr/ boot/ cdrom/ dev/ etc/ home/ lib/ lost+found/ proc/ sbin/ mnt/ root/ suncd/ usr/ tmp/ var/ vmlinuz Diret´rios tˆm uma barra (/) no final do nome. e pwd ca ls Esse comando lista arquivos em um diret´rio. os comandos est˜o explicados resumidamente. propriet´rio. arquivos execut´veis tˆm um asterisco no o e a e final do nome. ls(1) ir´ listar os arquivos no diret´rio atual. Ele mesmo. e a facilmente o que ´ um diret´rio e o que ´ um arquivo. Por exemplo. Vocˆ encontrar´ e c e a e a mais detalhes nas man pages de cada comando. mas a linha de comando ´ ainda o principal n´ de controle do sistema.

1. e ca a e o O comando cd n˜o ´ igual a outros comandos.3. MANIPULANDO ARQUIVOS E DIRETORIOS drwxr-xr-x drwxr-xr-x drwxr-xr-x drwxr-xr-x drwxr-xr-x drwxr-xr-x drwxr-xr-x drwxr-xr-x drwxr-xr-x drwxr-xr-x dr-xr-xr-x drwxr-x--x drwxr-xr-x drwxr-xr-x drwxrwxrwt drwxr-xr-x drwxr-xr-x 2 2 2 14 4 10 8 3 2 2 62 12 2 5 4 21 18 root root root root root root root root root root root root root root root root root bin 4096 May root 4096 Feb root 4096 Feb root 6144 Oct root 28672 Mar root 4096 Mar root 4096 Mar root 4096 Jan root 16384 Nov root 4096 Oct root 0 Mar root 4096 Feb bin 4096 Feb root 2048 Oct root 487424 Mar root 4096 Aug root 4096 Mar 7 24 18 23 5 8 8 23 1 6 4 26 17 25 7 24 8 09:11 03:55 01:10 18:37 18:01 03:32 03:31 21:29 08:53 12:47 15:32 02:06 02:02 10:51 20:42 03:04 03:32 bin/ boot/ cdr/ cdrom/ dev/ etc/ home/ lib/ lost+found/ mnt/ proc/ root/ sbin/ suncd/ tmp/ usr/ var/ Suponhamos que vocˆ queira uma lista dos arquivos ocultos no diret´rio atual. boot .86 ´ CAP´ ITULO 10.O comando e o seguinte listaria isso. N˜o esque¸a co a c que pode combinar as op¸˜es que vocˆ passa para o ls. Isso pode n˜o fazer nenhum sentido a pra vocˆ agora. Coa e e ca a mandos integrados do shell ser˜o discutidos na se¸˜o 8.pwrchute_tmp cdrom home dev lib cdr etc mnt proc lost+found sbin usr suncd var root tmp vmlinuz Arquivos comen¸ando com um ponto (chamados de arquivos ponto) s˜o ocultados quando c a vocˆ executa o ls.2 cd O comando cd ´ usado para mudar o diret´rio de trabalho. Ele ´ um comando integrado do shell. Vocˆ simplesmente digita cd e o e seguido do nome do caminho para mudar.. bin . c o o Tamb´m executando o cd sem nenhuma op¸˜o mover´ vocˆ para o seu diret´rio pessoal.1. Basicamente isso significa que n˜o existe man page para esse comando. Vocˆ somente ver´ esses arquivos se passar a op¸˜o -a. $ ls -a . co e 10. Ao e a . Aqui est˜o alguns exemplos: a darkstar:~$ cd /bin darkstar:/bin$ cd usr bash: cd: usr: No such file or directory darkstar:/bin$ cd /usr darkstar:/usr$ ls bin darkstar:/usr$ cd bin darkstar:/usr/bin$ Note que sem come¸ar com a barra (/) ele tenta mudar para um diret´rio no diret´rio atual. e e a ca Existem muitas outras op¸˜es que podem ser encontradas nos manuais online.

ca 10. Pressionando a tecla enter ir´ avan¸ar c o a a c a sa´ em uma linha.2.2. pipe ( | ) seguido do more: ıda $ ls -l $|$ more Esse ´ o caractere pipe (shift + \).1 Paginadores: more. Por exemplo: $ cd /bin $ pwd /bin $ cd /usr $ cd bin $ pwd /usr/bin 10. so use more less if you want less more.3. o less ´ mais que o more. ent˜o o exemplo anterior serve aqui tamb´m. Muitas vezes a sa´ de um comando e a ca ıda em particular ´ muito grande para caber em apenas uma tela. Os comandos individualmente e n˜o sabem como fazer caber as sa´ a ıdas em telas separadas. but more more than more is. n˜o apenas o ls. Pipe ´ tamb´m visto na e a e e se¸˜o 8. e a e Ent˜o. a co a 10.1. O comando less (1) prove essa funcionalidade. LESS E MOST 87 inv´s disso.2. vocˆ tem que usar o help do shell. Just Krammer define esses comandos com o seguinte trocadilho: a e ”less is more. O comando more quebra a sa´ numa tela unica e espera que vocˆ pressione a ıda ´ e barra de espa¸os antes de continuar na pr´xima p´gina. Como segue: e e $ help cd Ser˜o mostradas as op¸˜es para o cd e como us´-las. so more is less less. Vocˆ e e ıda e pode ”pipar”qualquer coisa atrav´s do comando more.2 less O comando more ´ mais simples.2. mas n˜o permite que vocˆ volte para uma p´gina j´ exie a e a a bida. less e most more more (1) ´ como chamamos um utilit´rio de pagina¸˜o. PAGINADORES: MORE. Aqui segue um bom exemplo: ıda $ cd /usr/bin $ ls -l Isso deveria rolar a tela um pouco.3 pwd O comando pwd ´ usado para mostrar a sua localiza¸˜o atual.” . O pipe ´: pegue a sa´ do ls e alimente o more. Eles deixam esse trabalho para os paginadores. a e e Ele ´ usado do mesmo jeito que o comando more. Para parar a sa´ tela por tela. O more n˜o provˆ um jeito de vocˆ voltar.2 10.10. Para usar o comando pwd e ca basta digitar pwd.

10. e o O comando cat tem muitos usos e os mostrados aqui s˜o apenas alguns. e most ´ capaz de vizualizar qualquer n´mero de arquivos. O comando most tem muitas op¸˜es. file2. vocˆ simplesmente lista os arquivos depois do comando cat e ent˜o redireciona e a a sa´ para um novo arquivo. Outro uso comum para o cat ´ copiar arquivos.88 ´ CAP´ ITULO 10. Desde que o cat a faz uso extensivo de entradas e sa´ ıdas padr˜o. Enquanto os outros paginadores podem apenas mostrar um arquivo por vez. O comando cat funciona com entrada padr˜o e sa´ padr˜o. o most (1) vai al´m.2 echo O comando echo (1) mostra o texto especificado na tela. Vocˆ precisa especificar a string e que vai ser mostrada depois do comando. ıda a O comando cat tamb´m pode ser usado para exibir arquivos. Por exemplo: a e $ cat file1 file2 file3 > bigfile Esse comando pega o conte´do dos arquivos file1. Ele foi originalmente desenhado para mesclar arquivos e ca de textos em outro. Vocˆ pode passar a op¸˜o -n para suprimir a e ca impress˜o de uma nova linha. Vocˆ pode copiar e e qualquer arquivo usando o cat. mas pode ser usado em muitos outros prop´sitos. at´ que cada janela de arquivo tenha e u e pelo menos duas linhas aparecendo. confira as p´ginas co a de manual para mais detalhes. A nova sa´ ´ u ıda e enviada para a sa´ padr˜o. 10.2. como segue: $ cat /bin/bash $>$ \~{}/mybash O programa /bin/bash ´ copiado para o seu diret´rio /home e nomeado como mybash. A op¸˜o -e vai causar a procura por caracteres escape na string a ca e execut´-las. Para mesclar dois ou mais o arquivos em um. como segue: $ cat file1 $|$ more Esse comando ir´ mostrar o arquivo file1 e ”pip´-lo”atrav´s do comando more para que vocˆ a a e e apenas veja uma tela por vez.3 10. ele ´ ideal para usar em scripts shell ou parte de a e outros comandos complexos. a .1 Sa´ Simples: cat e echo ıda cat cat (1) ´ a abrevia¸˜o de concatenar. e file3 e mescla. Se less ´ mais do que more. most a e e ´ mais do que less. Por padr˜o o comando echo ir´ mostrar a string e a a imprimir a nova linha de caracteres depois dele.3. ıda a ıda a ent˜o vocˆ deve usar os caracteres de redirecionamento do shell.3 most Onde more e o less n˜o conseguem ir. MANIPULANDO ARQUIVOS E DIRETORIOS 10.3. Muitas pessoas usam o cat em e arquivos de textos junto com os comandos more ou less.

O exemplo acima falhar´ se ca a o a /usr/local n˜o existir. co 10.4 10.4.10. Se o arquivo especificado n˜o existir. A op¸˜o -p ir´ criar /usr/local e /usr/local/hejaz : a ca a $ mkdir -p /usr/local/hejaz 10.5 10. ca a o comando touch criar´ um arquivo vazio. como segue: e e $ mkdir /usr/local/hejaz A op¸˜o -p ir´ dizer ao mkdir para criar qualquer diret´rio pai.2 mkdir O comando mkdir ir´ criar um novo diret´rio. Para marcar um arquivo com a data atual. e a o o $ mkdir hejaz Vocˆ tamb´m pode especificar o caminho. e muitas outras op¸˜es.A man-page mostra isso em detalhes. Por e ca exemplo: $ cp hejaz /tmp Isso copia o arquivo hejaz do diret´rio atual para o diret´rio /tmp. qual hora usar.1 Copiar e mover cp O comando cp (1) copia arquivos. para isso: a . a Um uso comum ´ usar o cp para copiar um arquivo de uma localiza¸˜o para outra.5. Esse exemplo criar´ o diret´rio hejaz no diret´rio atual.4. vocˆ a e poderia usar esse comando: $ ls -al file1 -rw-r--r-1 root $ touch file1 $ ls -al file1 -rw-r--r-1 root root 9779 Feb 7 21:41 file1 root 9779 Feb 8 09:17 file1 Existem muitas outras op¸˜es para o comando touch para especificar qual data que vocˆ co e quer modificar.1 Cria¸˜o: touch e mkdir ca touch O comando touch ´ usado para mudar a data de um arquivo. o o Muitos usu´rios preferem manter a data do arquivo. Vocˆ pode mudar a data e e de acesso e a data de modifica¸˜o com esse comando. ent˜o vocˆ deve dar uma olhada na p´ginal co a e a de manual antes de us´-lo. Usu´rios do DOS ir˜o notar a similaridade com o comando a a copy. CRIACAO: TOUCH E MKDIR ¸˜ 89 10.4. Existem muitas op¸˜es para o comando cp. Vocˆ simplesmente especifica o diret´rio a a o e o ser criado quando vocˆ executa o mkdir.

use o comando cp -p. vocˆ usaria esse comando: o u o e $ cp -R \textit{mydir} /tmp Isso copiar´ o diret´rio mydir para o diret´rio /tmp. $ ls -l file -rw-r--r-1 root $ cp -p file /tmp $ ls -l /tmp/file -rw-r--r-1 root vlad 4 Jan 1 15:27 file vlad 4 Jan 1 15:27 file O comando cp tem muitas outras op¸˜es que s˜o mostradas em detalhes nas p´ginas de co a a manual.2 mv O comando mv (1) move os arquivos de um lugar para outro. vocˆ poder´ ter uma mensagem de erro de o ca e a permiss˜o negada. isso pode ser uma tarefa complicada (e certamente cara) al´m e de estar fora do escopo desse livro. 10. Para for¸ar a remo¸˜o do arquivo n˜o importando com nada.6. a e co 10. a o o Tamb´m se vocˆ quiser copiar um diret´rio ou um arquivo e mante-lo com as permiss˜es e e o o antigas.6 10. datas e deixa-lo exatamente o mesmo. MANIPULANDO ARQUIVOS E DIRETORIOS $ cp -a hejaz /tmp Isso assegura que a data n˜o ser´ modificada na c´pia. a a O comando rm pode ser muito perigoso se vocˆ n˜o se cuidar. especifique o nome dele quando vocˆ executar o rm: ´ e $ rm file1 Se o arquivo tiver as permiss˜es de grava¸˜o. Enquanto as vezes ´ poss´ e a e ıvel recuperar um arquivo removido. n˜o? a $ mv oldfile /tmp/newfile O comando mv tem poucas op¸˜es na linha de comando que s˜o detalhadas nas p´ginas de co a a manual Na pr´tica.5. Simples o bastante. como segue: . a a o Para c´pia recursiva do conte´do de um diret´rio para outro. Para remover um unico arquivo. o comando mv ´ raramente usado com op¸˜es de linha de comando. passe a op¸˜o a c ca a ca -f.90 ´ CAP´ ITULO 10. a o Os usu´rios do DOS notar˜o em ambos a similaridade com os comandos del e o deltree.1 Exclus˜o: rm e rmdir a rm O comando rm (1) remove arquivos e ´rvores de diret´rio.

o c a ca Se vocˆ quiser fazer um link simb´lico do diret´rio /var/media/mp3 e colocar esse link no seu e o o diret´rio home. Mas existe u e a um comando mesmo assim: # rm -rf / Seja cauteloso com o comando rm. ele a o ir´ tentar remover o /tmp. Vocˆ realmente n˜o quer fazer isso. Vocˆ tamb´m pode especificar um caminho o a a e e e completo de um diret´rio a ser removido. como esse exemplo mostra: o $ rmdir /tmp/hejaz Esse exemplo ir´ tentar remover o diret´rio hejaz dentro do diret´rio /tmp. a 10.3.6. que s˜o discutidas nas p´ginas de manual. e e o o ca $ rmdir -p /tmp/hejaz Isso primeiro ir´ tentar remover o diret´rio hejaz dentro do /tmp.7 Apelidando arquivos com ln O comando ln (1) ´ usado para criar links entre arquivos. O diret´rio deve estar vazio o o antes de poder ser removido. Existem v´rias op¸˜es e o e a co na linha de comando. a o o Vocˆ tamb´m pode remover um diret´rio e todos os diret´rios pai passando a op¸˜o -p. o rmdir dir´ a vocˆ. Esses links podem ser hard links e ou links simb´licos. vocˆ faria isso: o e $ ln -s /var/media/mp3 \~{}/mp3 . O comando rmdir ir´ continuar isso at´ ocorrer um erro ou at´ que a a e e a ´rvore especificada seja removida. Esse ´ um bom exemplo o e e de como remover conte´dos inteiros do seu hd. vocˆ pode atirar no seu pr´prio p´. A s´ ıntaxe ´ simples: e $ rmdir $<$directory$>$ Esse exemplo ir´ remover o subdiret´rio hejaz no diret´rio atual: a o o $ rmdir hejaz Se esse diret´rio n˜o existir.7. Caso tenha sucesso.10. APELIDANDO ARQUIVOS COM LN 91 $ rm -f file1 Para remover um diret´rio inteiro. a a 10.2 rmdir O comando rmdir (1) remove diret´rios do sistema de arquivos. vocˆ pode usar o -r e o -f juntos. A diferen¸a entre os dois tipos de links ser˜o discutidos na se¸˜o 9.

e a ca o o ca e op¸˜o final ´ como chamar o link. Hard e a a e e ca links normalmente n˜o podem se referir a diret´rios ou sistema de arquivos. A pr´xima op¸˜o ´ o caminho do link. Nesse caso. e ´ ca Fazer um hard link ´ t˜o f´cil quanto.92 ´ CAP´ ITULO 10. Para criar um hard a o link de /usr/bin/email para /usr/bin/mutt. o comando apenas ir´ criar um arquivo chamado ca e a mp3 no seu diret´rio home que aponta para o /var/media/mp3. Vocˆ pode chamar o link do o e que vocˆ quiser apenas mudando a ultima op¸˜o. apenas digite o trecho a seguir: # ln /usr/bin/mutt /usr/bin/email . Tudo que vocˆ tem que fazer ´ tirar a op¸˜o -s. MANIPULANDO ARQUIVOS E DIRETORIOS A op¸˜o -s diz para o ln fazer um link simb´lico.

vocˆ retorna ao prompt de comando. pressione Control+z. Uma vez suspenso o a processo. mas vocˆ precisar´ utilizar o mesmo terminal para executar outros comandos. Ele momentaneamente ca p´ra de rodar. 11. e a a a a Vocˆ tem controle sobre todos os processos iniciados por vocˆ. incluindo aqueles iniciados por outros usu´rios. bem a e a como de comandos do shell. A seguinte e a linha de comando ir´ iniciar o programa amp em segundo plano: a $ amp *. um mp3 player da linha de comando.mp3 & O programa ser´ executado normalmente e vocˆ retornar´ ao prompt de comando. Adicionalmente. para tocar um diret´rio cheio de arquivos o mp3. a e a Outra maneira de colocar um processo em segundo plano ´ fazˆ-lo durante a sua execu¸˜o. Suspender um processo significa pausar a sua execu¸˜o. mas pode ser iniciado novamente a qualquer momento. Vocˆ inicia o processo suspenso em segundo e e plano digitando: $ bg 93 . Cada processo pertence a um usu´rio em particular. Processos que a a a vocˆ inicia pertencer˜o ao seu usu´rio. Estes processos v˜o desde a e a o ambiente gr´fico X at´ programas de sistema (chamados ”daemons”) que s˜o iniciados durante a e a o boot do computador. digamos que vocˆ queira a e e usar o amp. e A primeira maneira de se colocar um processo em segundo plano ´ adicionando o ˆ comercial e e (&) ` linha de comando quando vocˆ iniciar o programa. e e ca Primeiro. Chamamos isso de executar o programa em segundo plano. Processos podem ser controlados e monitorados atrav´s de v´rios programas.1 Segundo Plano (background) Os programas iniciados ` partir da linha de comando s˜o executados em primeiro plano a a (foreground). Entretanto h´ ıda a diversas situa¸˜es em que ser´ necess´rio executar o programa sem que o terminal fique preso ` co a a a sua execu¸˜o. Por exemplo. Processo iniciados por outros usu´rios pertencer˜o a eles. o usu´rio e e a root tem controle sobre todos os processo do sistema. Durante sua execu¸˜o. Processos que a s˜o iniciados no boot geralmente s˜o executados como usu´rio root ou nobody.Cap´ ıtulo 11 Controle de Processos Cada programa que est´ sendo executado ´ chamado de processo. inicie um programa. Isto permite ver toda a sa´ do programa e interagir com ele. Isso suspender´ ca a o processo. e h´ v´rias maneiras ca a a de fazˆ-lo.

Apenas digitando fg a e trar´ para o primeiro plano o ultimo processo que foi colocado em segundo plano. O n´mero ´ um tipo a a u e de ID para todos os processos em segundo plano.3 ps Agora vocˆ sabe alternar entre v´rios processos iniciados ` partir da linha de comando.Stopped [3]+ Stopped vim amp man ps Isto mostra uma lista de todos os processos que est˜o em segundo plano. ´ poss´ e e ıvel trazˆ-lo para e primeiro plano. ser´ ıvel a o a necess´rio saber qual processo vocˆ deseja trazer para o primeiro plano. Mas ent˜o como listar todos e ca a esses programas? Bem. a 11.2 Primeiro plano (foregrounding) Se vocˆ necessitar interagir com um processo em segundo plano. vocˆ pode trazˆ-lo de volta e e digitando: $ fg Se o programa ainda n˜o terminou sua execu¸˜o. Enviar processos para o segundo plano pode a a ser muito util se vocˆ tiver apenas um terminal aberto em uma conex˜o discada. e a e Se quiser trazer para primeiro plano o vim. Para uma listagem co . Quando isto acontece. ´ E poss´ ter v´rios processos em segundo plano de uma s´ vez. o bash possui um comando para listar esses processos.94 CAP´ ITULO 11. E se vocˆ a ´ e tiver uma lista enorme de processos em segundo plano? Por sorte. Ele ´ o jobs e o seu resultado ´: e e $ jobs [1] Stopped [2]. vocˆ receber´ uma mensagem como esta: e a [1]+ Done /bin/ls $LS_OPTIONS Informando que o processo em segundo plano (neste caso o ls . vocˆ deve digitar: e $ fg 1 e o vim rapidamente retornar´ ` console. Neste caso. Como vocˆ pode a e ver. mas iremos apresentar apenas algumas das mais importantes.que n˜o ´ um exemplo muito a e interessante) foi terminado. vocˆ pode utilizar o comando ps(1). Algumas vezes o programa terminar´ sua execu¸˜o a a ca enquanto estiver em segundo plano. ıvel ´ 11. Ser´ pos´ e a a s´ executar diversos programas naquele unico terminal. periodicamente alternando entre eles. todos est˜o parados. Isto significa que os processos est˜o suspensos. Se existe apenas um processo em segundo plano. Este comando tem uma por¸˜o e ca de op¸˜es. Sabe e a a tamb´m que existem muitos processos em execu¸˜o todo o tempo. ent˜o ele tomar´ o terminal e vocˆ n˜o a ca a a e a ter´ mais acesso ao prompt de comando. O ID seguido de um sinal de adi¸˜o (man ca ps) ´ o processo que ser´ trazido para primeiro plano se vocˆ apenas digitar fg. CONTROLE DE PROCESSOS Agora o processo suspenso est´ rodando em segundo plano.

Muitas vezes essa lista ser´ bem curta: a Resultado padr˜o do ps a $ ps PID TTY TIME CMD 7923 ttyp0 00:00:00 bash 8059 ttyp0 00:00:00 ps Embora n˜o sejam muitos processos. Existem muitos processos em execu¸˜o todo o tempo. o pr´ximo ser´ o menor valor que estiver livre. a informa¸˜o ´ interessante. Vocˆ ter´ as mesmas colua ca e e a nas usando o ps sem parˆmetros. Iremos discuti-las brevemente. sem nenhuma op¸˜o de linha de comando ou informa¸˜o similar. Ent˜o. Quando um e e ıdo o processo ´ finalizado (ou interrompido. ent˜o abreviarei a sa´ u c a ıda: $ ps PID 1 2 3 4 5 -ax TTYSTAT ? S ? SW ? SW ? SW ? SW TIME 0:03 0:13 0:14 0:00 0:17 COMMAND init [3] [kflushd] [kupdate] [kpiod] [kswapd] . Isto e a ca inclui os processos em primeiro plano (incluindo a´ qualquer shell que vocˆ esteja usando e. Como vocˆ pode ver. A coluna TIME indica quanto tempo de CPU o processo tem consumido. Isto provavelmente resultar´ em uma longa lista de procesca co a sos (cinq¨enta e cinco no meu laptop enquanto escrevo esta senten¸a). veja as p´ginas de manual do ps. Isso indica que est˜o sendo executados remotamente a a ou a partir de alguma variedade de terminal X. isto pode significar que algo est´ errado. a e c o a A coluna TTY indica em qual terminal o processo est´ sendo executado. Para cada processo ´ atribu´ o pr´ximo PID livre. a Apenas digitando ps vocˆ ter´ uma lista dos programas em execu¸˜o no seu terminal. Tamb´m s˜o listados os processos que vocˆ est´ executando em segundo o e a e a plano. Ent˜o. o pr´prio ps). Ele apenas lista o nome b´sico do e a programa.3. a a Finalmente. Para obter essa ca ca informa¸˜o ser´ necess´rio usar uma das muitas op¸˜es do ps. como vocˆ ver´ na pr´xima se¸˜o). Todos os processos em execu¸˜o tˆm um identificador unico e ca e ´ que vai de 1 at´ 32767. ´ ı e e claro. Sobre as p´ginas de manual veja detalhes em Se¸˜es a a co das p´ginas de Manual. ambos proa ca e cessos listados s˜o executados em ttyp0. Executando o ps a sem parˆmetros ser˜o listados apenas os programas em execu¸˜o no terminal corrente. o PID ´ o ID do processo. a coluna CMD mostra o que ´ o programa.11. a a ca a o que significa tudo aquilo? Bem. e e a o ca Quando o PID m´ximo ´ alcan¸ado. Se vocˆ e notar mais do que v´rios minutos na coluna TIME. a coluna TIME deve mostrar muito ca a menos tempo para cada processo do que ele atualmente necessita para ser executado. Lembre-se que o Linux ´ um sistema operacional ca e multi-tarefa. e cada um desses utiliza ca uma pequena por¸˜o do tempo do processador. ca a a co Vocˆ pode conseguir uma listagem completa do que est´ em execu¸˜o no seu sistema usando e a ca a combina¸˜o adequada de op¸˜es. Isso ´ diferente e do tempo gasto para execu¸˜o do processo. ele libera o PID. n˜o importa quantos processos estejam em execu¸˜o. PS 95 completa. ent˜o a a ca a todos os processos ter˜o a mesma informa¸˜o na coluna TTY.

0 0. CONTROLE DE PROCESSOS 11 ? S 30 ? SW 50 ? S 54 ? S 57 ? S 59 ? S 61 ? S 63 ? S 65 ? S 67 ? S 69 ? S 77 ? S 79 ? S 94 ? S 106 tty1 108 tty3 109 tty4 110 tty5 111 tty6 [output cut] 0:00 0:01 0:00 0:00 0:00 0:00 0:04 0:00 0:00 0:00 0:00 0:00 0:01 0:00 S0:08 SW SW SW SW /sbin/kerneld [cardmgr] /sbin/rpc.0 0. Esses n˜o est˜o anexados a nenhum terminal em particular. BIND. de um modo em geral. vocˆ ver´ muitos desses processos no seu sistema tamb´m. O W corresponde a esperando uma chamada.0 root 2 0. Freq¨entemente esses processos recusam-se a morrer. Isso n˜o ´ uma coisa boa. Entretanto.portmap /usr/sbin/syslogd /usr/sbin/klogd -c 3 /usr/sbin/inetd /usr/local/sbin/sshd /usr/sbin/rpc.misc -bash 0:00 [agetty] 0:00 [agetty] 0:00 [agetty] 0:00 [agetty] Muitos desses processos s˜o iniciados durante o boot na maioria dos sistemas. Primeiro. Vocˆ pode ler mais a respeito do SIGKILL na pr´xima se¸˜o sobre o e o ca kill. Eu fiz algumas a poucas modifica¸˜es no meu sistema. D corresponde a um processo que est´ a a e a irreversivelmente parado. R significa que o processo ´ execut´vel. apache e NFS. Ela mostra o status do processo. Estes s˜o listados agora co ca a entre colchetes como dos PIDs 108 ao 110. retornando uma resposta assim que s˜o demandados.0 VSZ 344 0 0 RSS 80 0 0 TTY ? ? ? STAT S SW SW START Mar02 Mar02 Mar02 TIME 0:03 0:13 0:14 COMMAND init [3] [kflushd] [kupdate] . Um processo morto ´ indicado com um X. S corresponde a a parado (”sleeping”): o processo est´ esperando algo acontecer. mesmo quando u recebem um SIGKILL. essas op¸˜es exibem as op¸˜es da linha de comando que originou o processo em execu¸˜o. tente isto: e co ca $ ps -aux USER PID %CPU %MEM root 1 0. Z corresponde a um processo a zumbi. e e a Se vocˆ deseja ver ainda mais informa¸˜es sobre os processos em execu¸˜o. h´ uma nova coluna: STAT. co co ca Recentemente. Como vocˆ pode e a e e ver. Tamb´m temos algumas colunas a mais e outros e dados interessantes.0 root 3 0.0 0. vocˆ perceber´ que muitos desses processos s˜o listados como em execu¸˜o no tty e a a ca ”?”. ca a Segundo. e Um processo indicado por um T ´ rastreado ou parado. deixando e e o processo filho para tr´s. o processo que o originou) morreu. os quais n˜o s˜o vinculados a nenhum terminal. uma vulnerabilidade do kernel no ptrace fez com que n˜o seja permitida a exibia ca ¸˜o das op¸˜es de linha de comando de muitos processos em execu¸˜o. Um processo zumbi ´ aquele cujo pai (isto ´.mountd /usr/sbin/rpc.96 CAP´ ITULO 11.nfsd /usr/sbin/crond -l10 /usr/sbin/atd -b 15 -l 1 /usr/sbin/apmd gpm -m /dev/mouse -t ps2 /usr/sbin/automount /auto file /etc/auto. ent˜o isso poder´ variar dependendo da sua quilometraco a a gem. Isto ´ muito comum com proa a e cessos executados pelo sistema (”daemons”). aguardam a pela requisi¸˜o de um cliente. a a ”Daemons”comuns s˜o sendmail. Eles.

vocˆ dever´ fazer o seguinte: e a $ kill 4747 Perceba que vocˆ ter´ de ser o dono do processo para poder interrompˆ-lo. Ainda h´ mais informa¸˜es que podem ser mostradas para cada processo.0 0.1 0. Por exemplo. programas comportam-se mal e vocˆ precisar´ coloca-los ”na linha”.0 0.11.0 root 63 0.0 root 79 0.5 0.0 0 0 1044 1160 1076 1360 1276 1332 1540 1796 1812 1172 1048 1100 1396 1820 1048 1048 1048 1048 0 0 44 0 120 192 152 60 312 72 68 260 316 152 280 680 0 0 0 0 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? tty1 tty3 tty4 tty5 tty6 SW SW S SW S S S S S S S S S S S S SW SW SW SW Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 Mar02 0:00 0:17 0:00 0:01 0:00 0:00 0:00 0:00 0:04 0:00 0:00 0:00 0:00 0:01 0:00 0:08 0:00 0:00 0:00 0:00 [kpiod] [kswapd] /sbin/kerneld [cardmgr] /sbin/rpc. ou se vocˆ s´ estiver cansado de vˆ-lo em execu¸˜o. para interromper o ´ ca processo 4747.2 0.0 0.2 0. isso ´ uma e grande quantidade de informa¸˜o que pode estar ` m˜o para um administrador de sistemas. Para conseguir o e a PID utilize o comando ps que foi discutido na ultima se¸˜o. /usr/sbin/rpc.2 0.0 [output cut] 0.0 root 5 0. a ue 11. mas funciona. VSZ e RSS). ca a a Isso tamb´m traz ` tona outro ponto: a informa¸˜o exibida ´ limitada ` largura da tela o que e a ca e a n˜o permite que vocˆ a veja completamente. /usr/sbin/cron /usr/sbin/apmd gpm /usr/sbin/auto -bash [agetty] [agetty] [agetty] [agetty] Isso ´ que ´ quantidade de informa¸˜o! Basicamente foram inclu´ e e ca ıdas informa¸˜es como qual co o usu´rio iniciou o processo.0 root 61 0. Entretanto as op¸˜es mostradas acima s˜o as a co a mais populares e ser˜o usadas com mais freq¨ˆncia.0 0.4.0 root 30 0.0 root 59 0. Se vocˆ tivesse permiss˜o para interromper processos iniciados por outros a c e a .0 0. e o e ca Para interromper um processo vocˆ precisar´ saber seu PID ou seu nome.0 root 57 0.0 root 111 0.0 root 110 0.0 root 108 0.2 0.0 0.0 0.0 root 65 0. %MEM. A op¸˜o -w ir´ for¸ar o ps a quebrar linhas longas.0 chris106 0.0 root 54 0.0 0.0 0.0 root 77 0.4 kill Em algumas ocasi˜es. quanto o processo est´ usando dos recursos do sistema (as colunas a a %CPU.0 root 109 0. O mais ´bvio dos usos do kill ´ interromper um processo.0 root 11 0. Isso ´ uma quese a e e t˜o de seguran¸a. Agora vocˆ tem uma lista de informa¸˜es completa a e e co para cada processo.0 root 67 0.0 bin 50 0. O o e a programa para esse tipo de administra¸˜o ´ chamado kill (1).1 0. a co Verifique a profunda p´gina de manual do ps. a e ca a c N˜o ´ a coisa mais linda.0 0.0 root 94 0. e pode ser usado para manipular ca e processos de v´rias maneiras. e em qual data o processo foi iniciado. Vocˆ a o e e precisar´ fazer isso se um programa se perder e utilizar uma grande quantidade de recursos do a sistema. Obviamente.1 0.0 0.port /usr/sbin/sysl /usr/sbin/klog /usr/sbin/inet /usr/local/sbi /usr/sbin/rpc. KILL 97 root 4 0.

o qual diz que ´ para terminar o que estiver e fazendo. seria poss´ realizar uma por¸˜o de coisas maliciosas. kill -9 envia um sinal SIGKILL (interromper) para o processo. Este programa faz exatamente a ca o que diz: interrompe todos os processos que possuem determinado nome. Se vocˆ quisesse e interromper todos os processos vim em execu¸˜o. Isso traz uma interessante maneira de derrubar todos usu´rios (incluindo vocˆ) do sistema: a e # killall bash Algumas vezes um simples kill n˜o ´ suficiente. Um kill regular envia e um sinal SIGTERM (terminar) para o processo.98 CAP´ ITULO 11. podem ocorrer com um ca SIGKILL. H´ uma lista completa de sinais ` sua disposi¸˜o. Fazendo isto e a como usu´rio root ir´ interromper todos os processos vim em execu¸˜o. Enviando um SIGHUP ir´ fazer com que ´ e a muitos processos releiam seus arquivos de configura¸˜o. N˜o ´ permitido ao processo fechar o que estia e ver utilizando e algumas vezes coisas ruins. independente do usu´a a ca a rio. o que essencialmente o para. Se aquele PID 4747 pentelho n˜o responder e a a ao seu kill. Certos processos n˜o s˜o interrompidos com a e a a um kill. Vocˆ pode fazer a mesma coisa com a e o killall. enquanto o nome menos o prefixo ”SIG”pode ser usado u com o killall. vocˆ poderia digitar o seguinte comando: ca e $ killall vim Todo e qualquer processo vim que vocˆ estiver executando ser´ interrompido. Vocˆ pode obtˆ-la digitando: a a ca e e $ kill -l 1) SIGHUP 5) SIGTRAP 9) SIGKILL 13) SIGPIPE 18) SIGCONT 22) SIGTTOU 26) SIGVTALRM 30) SIGPWR 2) 6) 10) 14) 19) 23) 27) SIGINT SIGABRT SIGUSR1 SIGALRM SIGSTOP SIGURG SIGPROF 3) 7) 11) 15) 20) 24) 28) SIGQUIT SIGBUS SIGSEGV SIGTERM SIGTSTP SIGXCPU SIGWINCH 4) 8) 12) 17) 21) 25) 29) SIGILL SIGFPE SIGUSR2 SIGCHLD SIGTTIN SIGXFSZ SIGIO O n´mero deve ser usado para o kill. como corrup¸˜o de dados. Vocˆ ter´ de usar uma forma mais potente. O que isso faz ´ enviar um sinal diferente para o processo. fechar o que estiver utilizando e sair. vocˆ poder´ fazer o seguinte: e a $ kill -9 4747 ´ E quase certo que o processo 4747 ser´ interrompido. H´ ainda outra varia¸˜o do comando kill chamada killall (1). ca e . o root pode interroma ıvel ca per qualquer processo do sistema. Aqui vai outro exemplo: $ killall -KILL vim Um ultimo uso para o kill ´ reiniciar um processo. E claro. Isso ´ especialmente util para fazer ca e ´ com que os processos releiam seus arquivos de configura¸˜o rec´m editados. CONTROLE DE PROCESSOS ´ usu´rios.

o status da CPU.8 0:00 screenshot 7.0 0.0% nice.8 1:35 wmaker 0.0 0:13 init 2. ou dos processos de e o o algum outro usu´rio. prioridade.5 55:53 X 0.1 0:00 kerneld 0.0 0:06 kupdate 0. 0.02 61 processes: 59 sleeping. Entretanto.0 0. 32628K free. 78248K buff Swap: 32764K av.1 0.0 0.0 TIME COMMAND 0 19376 18M 0 2136 2136 0 20544 20M 0 1040 1040 0 796 796 0 2180 2180 0 776 776 176 176 148 0 6256 6156 0 1164 1164 0 0 0 0 0 0 0 0 0 0 0 0 340 340 248 48 48 32 316 316 236 588 588 488 7. A op¸˜o -u permite que vocˆ especifique um nome de ca ca e usu´rio ou UID e monitore somente os processos pertencentes `quele UID.0 0:04 kswapd 0.9% idle Mem: 257992K av. 0.07.1 0:00 rpc.1 0.0 0:08 kflushd 0. informa¸˜es sobre mem´ria livre e detalhes dos processos co o incluindo PID. ´ a Mas suponha que vocˆ s´ queira uma lista dos seus pr´prios processos.4 3:16 licq 0. 1 user. 0 stopped CPU states: 2. load average: 0. 3.0 0.1 0.0 0:00 kpiod 0.0 0.0 0:00 dhcpcd 0. a co ca bem como algumas informa¸˜es gerais sobre o pr´prio sistema.3 0:00 xwd 0. 136K used. Os processos que vocˆ quer ver podem n˜o estar entre os programas em a e a execu¸˜o com maior consumo de CPU.5 top Finalmente.5. 0 zombie. 6:47pm up 1 day. 249672K used.5 1. 82600K cached PID USER 112 4947 3398 4946 121 115 4948 1 189 4734 2 3 4 5 31 51 53 57 root david david root david david david root1 david david root0 root0 root0 root0 root0 root0 bin 0 root0 PRI 12 15 7 12 4 3 16 0 1 0 0 0 0 0 0 0 0 0 NI SIZE RSS SHARE 2468 1748 3000 836 644 1452 648 S 4352 916 SW SW SW SW S S S S STAT R S S R S S S 0 0 0 0 0 0 0 0 S 0 S 0 0 0 0 0 0 0 0 0 LIB %CPU %MEM 3.5 1.3 0. a a . n´co o e u mero de processos.9 0:14 gimp 0. 2 running. 8320K free. uso de CPU e mem´ria. 93. TOP 99 11. Isso inclui a carga m´dia. 0. 18:01.2 0:01 syslogd Ele ´ chamado de top porque os programas que fazem uso intensivo da CPU ser˜o listados e a no topo.3 0. h´ um comando que vocˆ pode usar para exibir informa¸˜es atualizadas sobre a e co os processos em execu¸˜o no sistema.3 1.4 0:00 rxvt 0.1 0. usu´rio. Esse comando ´ chamado top(1). tempo de execu¸˜o e nome do a o ca programa.7 2. e ´ iniciado assim: ca e e $ top Isto ir´ exibir uma tela cheia com informa¸˜es sobre os processos em execu¸˜o no sistema.0 0.11. 51628K shrd.1% system.4 0:00 top 0.portmap 0.0 0.3 25:37 wmSMPmon 0. Uma observa¸˜o interessante ´ que o pr´prio top ser´ listado primeiro em muitos ca e o a sistemas inativos (e alguns ativos) por causa da utiliza¸˜o de CPU. o top ´ muito ca e util para determinar qual programa est´ se comportando mal e precisa ser interrompido.8% user.02.

0 0.2 1032 S 0.50 gconfd-2 0:00.0 0.00 nautilus Como vocˆ pode ver.3 848 S 0. CONTROLE DE PROCESSOS $ top -u alan PID USERPR NI 3622 alan13 0 3739 alan13 0 3518 alan 9 0 3529 alan 9 0 3544 alan 9 0 3548 alan 9 0 3551 alan 9 0 3553 alan 9 0 3555 alan 9 0 3557 alan 9 0 3559 alan 9 0 3565 alan 9 0 3568 alan 9 0 3572 alan 9 0 3574 alan 9 0 3575 alan 9 0 3576 alan 9 0 VIRT RES 11012 10m 1012 1012 1312 1312 984 984 640 640 8324 8320 7084 7084 2232 2232 2552 2552 2740 2740 6496 6492 1740 1740 7052 7052 11412 11m 12148 11m 12148 11m 12148 11m SHR S %CPU %MEM 6956 S 1. O melhor lugar para aprender a lidar com essas op¸˜es s˜o co co a as p´ginas de manual para o top.64 nautilus 0:00.6 1968 S 0.00 xinit 0:00.31 gnome-settings0:00.0 0.4 380 S 0.0 2.4 8780 S 0.05 gnome-smproxy 0:00. top.0 2.0 0. a .3 0. a a a O top tamb´m permite monitorar processos por seus PID.4 TIME+ COMMAND 0:03.0 1.0 1. ignorando processos sem atividade e e zumbis.0 0.1 804 R 0.05 esd 0:00.1 6044 S 0.4 1948 S 0.00 nautilus 0:00.100 CAP´ ITULO 11. Isto ´ uma boa maneira de monitorar a e o qu˜o duro seus usu´rios est˜o trabalhando no sistema.30 gnome-session 0:00.4 8780 S 0.0 0.0 2.28 metacity 0:01.5 5004 S 0. um gnome-terminal (no qual e estou escrevendo isto) e muitos outros processos relacionados ao ambiente gr´fico X.09 bash 0:00.00 startx 0:00.5 2224 S 0. e muitas outras op¸˜es.0 1.4 7992 S 0.0 0.28 xscreensaver 0:02.0 1.3 4960 S 0.06 top 0:00. os quais a est˜o tomando a maior parte do tempo da minha CPU.2 568 S 0.0 2. atualmente estou executando X.0 2.3 1440 S 0.10 bonobo-activati 0:00.66 gnome-terminal 0:00.58 gnome-panel 0:00.2 8780 S 0.

e passwd. ou pode ser um grande servidor a a com v´rias centenas de usu´rios. chsh(1). Independente disto. ca a a portanto. groupdel (8). Os comandos groupadd (8).. localizados em /usr/sbin. vocˆ n˜o deve usar normalmente seu sistema logado como e a Como mencionado no cap´ root. e passwd podem ser executados por qualquer um e est˜o localizados em /usr/bin. login names possuem e a a oito ou menos caracteres e todos min´sculos (vocˆ pode usar mais que oito caracteres.1.1 Usu´rios e Grupos a ıtulo 8. inclusive u e num´rico. esses programas s˜o executados apenas pelo root. e groupmod (8) s˜o para gerenciar grupos. a Usu´rios podem ser adicionados com o comando adduser. mas elas tˆm alguns e caprichos que vocˆ deve ter em mente. a a e O Slackware inclui os programas adduser. Eu sei o que vocˆ deve estar pensando. vocˆ ca a e pode usar as ferramentas fornecidas pelo Slackware ou editar manualmente o arquivo de senhas.1 Scripts fornecidos O modo mais f´cil de gerenciar usu´rios e grupos ´ com os scripts e programas fornecidos.”Eu n˜o sou um administrador de e a sistema! Eu n˜o quero mesmo ser um!” a O fato ´ que vocˆ ´ o administrador de qualquer computador no qual vocˆ possui a senha do e ee e usu´rio root. a a Com exce¸˜o de chfn.. Em vez disto. e passwd (1) para gerenciar usu´rios. e est˜o. chsh. Pode ser seu desktop com um ou dois usu´rios. Estas tarefas parecem simples. mas evite fazer isso a menos que vocˆ tenha uma boa raz˜o. vocˆ deve criar uma conta de usu´rio normal para o uso di´rio e usar a e a a conta do root apenas para tarefas de administra¸˜o do sistema. chsh. A resposta padr˜o est´ entre colchetes e pode ser adotada para quase todas as a a perguntas. chfn(1). e # adduser Login name for new user []: jellyd Este ´ o nome que o usu´rio usar´ para se logar. Tradicionalmente. 12.Cap´ ıtulo 12 O Essencial em Administra¸˜o de ca Sistema Ha Ha Ha Ha. vocˆ dever´ saber como gerenciar usu´rios a a e a a e como desligar o sistema de modo seguro. Iniciaremos pelo procedimento a completo. mostrando todas as perguntas que s˜o solicitadas e uma breve descri¸˜o do que cada a ca uma significa.) e e a 101 . e 12.. Para criar um usu´rio. a menos que vocˆ realmente queira mudar alguma coisa. chfn. userdel (8).

mas isto n˜o ´ recomendado a menos que vocˆ saiba o que est´ a e e a fazendo. Por padr˜o. alguns site definem o grupo wheel como o unico grupo que pode usar o comando su. por exemplo. Isso ´ util se vocˆ tem grupos espec´ a a e´ e ıficos. Se seu e a a novo usu´rio vem de um ambiente Unix. E poss´ para e a ıvel um usu´rio estar em v´rios grupos ao mesmo tempo. como padr˜o. modificar arquivos de web site. o a a e ´ poss´ que vocˆ tenha que mover os diret´rios home para uma localiza¸˜o diferente (ou para e ıvel e o ca v´rias localiza¸˜es). n˜o h´ a a a uma data limite. O ESSENCIAL EM ADMINISTRACAO DE SISTEMA ¸˜ Vocˆ pode fornecer o nome de login como um argumento do comando: e # adduser jellyd No outro caso. a Shell [ /bin/bash ] bash ´ o shell padr˜o no Slackware Linux e ser´ adequado para a maioria das pessoas. Expiry date (YYYY-MM-DD) []: As contas podem ser configuradas para expirarem numa data espec´ ıfica. Se vocˆ usa um sistema muito grande. Vocˆ pode mudar isso se vocˆ desejar. etc. Por exemplo. Additional groups (comma separated) []: ´ Esta pergunta permite vocˆ colocar o novo usu´rio em grupos adicionais. come¸ando em 1000 no Slackware. ele pode estar familiarizado com um shell diferente. Cada usu´rio a e a tem um n´mero unico. a a a o Initial group [users]: Todos os usu´rios pertencem ao grupo users por padr˜o. depois de fornecer o nome de login. Essa op¸˜o pode ser util para pessoas e e ca ´ executando um ISP (Provedor de Servi¸os de Internet) que querem fazer uma conta expirar c ap´s uma certa data. o o . Vocˆ pode definir um UID para um u ´ c e novo usu´rio ou ent˜o deixar que o adduser designe para o usu´rio o pr´ximo UID livre. Ou. a menos que elas recebam o pagamento do pr´ximo ano. a Vocˆ pode mudar o shell dele nesse momento ou ele pode mudar mais tarde usando o comando e chsh. a Home directory [/home/jellyd] Os diret´rios home padr˜o s˜o colocados em /home. Vocˆ pode querer colocar o usu´rio a a e a novo em um grupo diferente. jogar. a instala´ a ca ¸˜o do Slackware usa o grupo sys para usu´rios autorizados a utilizarem a placa de som interna.102 CAP´ ITULO 12. o comando adduser perguntar´ pelo ID a do usu´rio: a User ID (’UID’) [ defaults to next available ]: O ID do usu´rio (UID) ´ quem realmente identifica os membros no Linux. Esta etapa permite que vocˆ especifique onde ser´ o diret´rio home do a co e a o usu´rio.

´ u no caso de vocˆ precisar entrar em contato com a pessoa em quest˜o. Vocˆ n˜o quer ter uma senha de f´cil dedu¸˜o porque isto torna mais f´cil algu´m a e a a ca a e entrar em seu sistema.. Entretanto.´ 12. a e a Creating new account.. Uma senha ideal seria uma sequˆncia aleat´ria de caracteres. vocˆ apenas colocar´ uma senha padr˜o e avisar´ e a a a o usu´rio para mud´-la para uma senha mais segura.. or press return for the default Full Name []: Jeremy Room Number []: Smith 130 Work Phone []: Home Phone []: Other []: Todas essas informa¸˜es s˜o opcionais. a a NOTA: Escolhendo uma senha: Ter uma senha segura ´ a primeira linha de defesa contra e invas˜o. Se vocˆ entrou com algo incorreto.) H´ muie a a tos pacotes de softwares que geram senha aleat´rias para vocˆ. USUARIOS E GRUPOS 103 New account will be created as follows: --------------------------------------Login name: jellyd UID: [ Next available ] Initial group:users Additional groups: [ None ] Home directory: /home/jellyd Shell: /bin/bash Expiry date: [ Never ] Isto ´ . se vocˆ quiser desistir. pode teclar Control+C ca e e iniciar novamente. n´meros e caracteres aleat´rios. Vocˆ n˜o tem que entrar com nenhuma dessas inforco a e a ma¸˜es se n˜o quiser. incluindo e o letras mai´sculas e min´sculas. procure na Internet por esses o e . Caso contr´rio. Account setup complete. Geralmente. vocˆ vˆ todas as informa¸˜es digitadas para a nova conta e tem a oportunie e co dade de abortar a cria¸˜o da conta. tecle ENTER para seguir e e a em frente e criar a conta. tecle Control+C. pode ser util colocar pelo menos o nome completo e um n´mero de telefone. Changing the user information for jellyd Enter the new value.1. Caso contr´rio. Nesse momento. maximum of 127 characters) Please use a combination of upper and lower case letters and numbers. e o usu´rio pode mudar esses dados a qualquer hora usando o comando co a a chfn. New password: Re-enter new password: Password changed. e a Changing password for jellyd Enter the new password (minimum of 5. vocˆ pode teclar enter e a conta ser´ criada. Vocˆ ter´ que entrar com uma senha para o novo usu´rio. (Um caractere tab pode n˜o u u u o a ser uma boa escolha dependendo em qual tipo de computador vocˆ estar´ logando.. se o usu´rio n˜o e a a a a estiver fisicamente presente nesse momento.

vocˆ deve usar este comando: e e o e # userdel -r jellyd Desabilitar temporariamente uma conta ser´ tratada na pr´xima se¸˜o sobre senhas. uma a o ca vez que uma mudan¸a tempor´ria envolve mudar a senha do usu´rio. Apenas execute userdel com o nome da a a e conta para removˆ-la. Vocˆ deve verificar se o usu´rio n˜o est´ logado e se n˜o h´ processos e e a a a a a do usu´rio em execu¸˜o. Uma senha e como ”seguro1”ou qualquer outra senha que vocˆ ver impresso ou online tamb´m ´ ruim. vocˆ digitaria: e e $ passwd Changing password for chris Old password: Enter the new password (minumum of 5. Vocˆ pode ignorar esses avisos caso queira.3. a o a Se vocˆ deseja tamb´m remover o diret´rio home. Mudar outra informa¸˜o c a a ca da conta ´ tratada na se¸˜o 12. Para mudar sua senha. vocˆ ´ solicitado para entrar com sua senha antiga. Este arquivo cont´m todas as senhas do sistema em formato criptografado. E mais.2 Mudando senhas O comando passwd muda as senhas modificando o arquivo /etc/shadow. e ca Os programas para adicionar e remover grupos s˜o bem simples. Ela n˜o aparecer´ ee a a na tela quando vocˆ digit´-la. e e e Remover usu´rios n˜o ´ uma tarefa complicada. use o bom senso: n˜o coloque uma senha que seja a data de anivers´rio de algu´m. New password: Como se pode ver. a a # userdel jellyd Este comando remove o usu´rio jellyd do seu sistema. a Em geral. groupadd adicionar´ oua a tra entrada no arquivos /etc/group com um ID de grupo unico. Vocˆ ser´ solicitado a co e e a .104 CAP´ ITULO 12. vocˆ ´ solicitado e a e a ee para entrar com a nova senha. a a e algo encontrado em sua mesa. para adicionar um grupo chamado cvs: # groupadd cvs E removˆ-lo: e # groupdel cvs 12. e /etc/group. /etc/shadow. Ent˜o. ou qualquer coisa facilmente associada com vocˆ.1. lembre que uma vez excluido o usu´rio. toda a informa¸˜o da a ca a ca senha do usu´rio ter´ sido apagada permanentemente. O ESSENCIAL EM ADMINISTRACAO DE SISTEMA ¸˜ utilit´rios. Por exemplo. O usu´rio ´ removido dos arquivos a a e /etc/passwd.1. maximum of 127 characters) Please use a combination of upper and lower case letters and numbers. mas n˜o remove o diret´rio home do usu´rio. enquanto groupdel remover´ ´ a ´ o grupo especificado. o mesmo ocorre quando vocˆ se loga. passwd realiza v´rias verifica¸˜es em sua nova senha e avisar´ se a co a ela n˜o passar nas verfica¸˜es. E poss´ editar o arquivo /etc/group para adicionar usu´rios em um ıvel a grupo espec´ ıfico.

vocˆ tamb´m pode desabilitar temporiamente uma conta. a ca a O Slackware Linux usa chsh (change shell) e chfn (change finger) para modificar esses valores. o usu´rio root pode mudar a informa¸˜o de finger de ca a ca qualquer um. USUARIOS E GRUPOS 105 para entrar com sua nova senha por uma segunda vez para confirm´-la. no trabalho ou na escola e desejam usar aquele que eles j´ coa nhecem. com exce¸˜o que vocˆ n˜o ter´ que e a a ca e a a digitar a senha antiga do usu´rio (um dos muitos benef´ a ıcios de ser root. Para mudar seu shell. Primeiro. 12. e reabilit´-la mais e e a tarde se for preciso. Um usu´rio pode definir qualquer shell que est´ listado no arquivo /etc/shells. n´meros de telefone ca e ca u e de sala. Estas informa¸˜es podem ser mudadas usando chfn.1. Como sempre.3 Mudando a Informa¸˜o do Usu´rio ca a H´ dois tipos de informa¸˜o que os usu´rios podem mudar a qualquer hora: o shell e o finger. digite o caminho completo do novo shell. fa¸a o seguinte como root: c # passwd -l david Isto mudar´ a senha de david para algo que nunca coincida com qualquer valor criptograa fado. e segue o mesmo procedimento co feito na cria¸˜o da conta. a Se vocˆ ´ root. tenha certeza que ele est´ listado no arquivo /etc/shells(5).´ 12. . Desabilitar e reabilitar uma conta podem ser feitos com passwd. /bin/bash ser´ adequado. Para a maia a oria das pessoas. use chsh: $ chsh Password: Changing the login shell for chris Enter the new value. ou se ele exportou uma c´pia a a e o muito grande de xeyes(1) para seu desktop X. or press return for the default Login Shell [/bin/bash]: Depois de digitar sua senha. a a A informa¸˜o de finger ´ a informa¸˜o opcional como nome completo. Outros podem estar familiarizados com um shell a encontrado nos seus sistemas. Vocˆ reabilita a conta usando: e # passwd -u david Agora.1.. Desabilitar uma conta pode ser util se o a ´ usu´rio n˜o segue as regras que vocˆ definiu para seu sistema. O usu´rio root pode mudar o shell de qualquer a a usu´rio executando chsh utilizando o nome do usu´rio como argumento. a conta de david est´ de volta ao normal.) Se precisar.. Para desabilitar uma conta. vocˆ tamb´m pode mudar a senha de outros usu´rios: ee e e a # passwd ted Vocˆ ent˜o passar´ pelo mesmo procedimento acima.

Para adicionar o um novo usu´rio manualmente. ´ poss´ adicionar. adicione uma nova linha no final do arquivo preenchendo as a informa¸˜es apropriadas. vocˆ provavelmente achar´ muito mais f´cil usar os scripts. Isto n˜o era assim. /etc/shadow (5) o a e /etc/group(5). Primeiro. Use vipw -s para editar e o arquivo /etc/shadow.:/home/chris:/bin/bash Cada linha corresponde a um usu´rio e os campos de cada linha s˜o separados pelo caraca a ter dois pontos. ID do a grupo. mas foi alterado a e a tempos atr´s por quest˜es de seguran¸a. co As informa¸˜es que vocˆ adicionar precisam atender alguns requisitos. no caso de vocˆ precisar recuperar ca e e esta informa¸˜o e n˜o ter as ferramentas do Slackware dispon´ ca a ıvel.:11055:0:99999:7::: Novamente. ID do usu´rio. dias que o usu´rio ´ notificado antes da a e . Entretanto.106 CAP´ ITULO 12. O arquivo passwd deve ser leg´ para todos os usu´a o c ıvel a rios.. e o coe mando vigr para editar o arquivo /etc/group tamb´m de modo seguro. que cont´m as e senhas criptografadas. O arquivo passwd cont´m algumas informa¸˜es sobre os usu´rios do seu sise co a tema. com os campos delimitados pelo caracter dois pontos. pois intrusos poderiam usar as senhas criptografadas como ponto inicial para descriptografar as senhas dos usu´rios. diret´rio home e o shell. mas vocˆ n˜o deseja senhas criptografadas leg´ e a ıveis. dias depois que a senha deve ser alterada. ou seu novo usu´rio co e a poder´ ter problemas ao se logar. dias antes da senha poder ser ´ alterada. a e as senhas criptografadas s˜o mantidas no arquivo shadow. Atribua um grupo para o usu´rio. n˜o o nome). a Em seguida. (”Modo seguro neste contexto significa que ningu´m mais ser´ capaz de e a modificar o arquivo que vocˆ est´ editando no momento. Os campos s˜o o nome de login.) Vamos examinar o arquivo /etc/passwd e ver como adicionar um novo usu´rio. Primeiro. o modo dif´ a ıcil Naturalmente.CAEp7R. os shells v´lidos o a e a a est˜o listados em /etc/shells). e que a e o nome do usu´rio e seu ID sejam unicos. sendo que o Slackware usa senhas mascaradas). e a a e ıvel senha de todos aparecem no arquivo passwd simplesmente com um ”x”. N˜o ´ muito dif´ embora depois de ler este processo. senha criptografada (um ”x”para todos em a um sistema Slackware. vocˆ provavelmente est´ em seguran¸a. e a e ıcil. mas ´ melhor pegar bons h´bitos no in´ e a c e a ıcio. precisaremos adicionar uma entrada no arquivo /etc/shadow. n´s adicionaremos um novo usu´rio nos arquivos /etc/passwd (5). Os campos s˜o (em ordem) nome de login.2 Usu´rios e Grupos. dias deste a ´poca a e (01 de janeiro de 1970) que a senha foi mudada pela ultima vez. Ao inv´s disto. senha criptografada. ou 100 (o grupo a ´ a ”users”no Slackware) ou seu grupo padr˜o (use o n´mero do grupo. que ´ leg´ apenas para o root. ´ importante conhecer e a a e como realmente a informa¸˜o de sua senha ´ armazenada. O ESSENCIAL EM ADMINISTRACAO DE SISTEMA ¸˜ 12.Room 2. a Vocˆ pode usar o comando vipw para editar o arquivo /etc/passwd de modo seguro. informa¸˜es adicionais (separadas por v´ co ırgula). mas (bastante estranho) n˜o tˆm as senhas deles. Uma t´ a ıpica entrada em passwd se parece como isto: chris:x:1000:100:Chris Lumens. Uma entrada t´ ıpica se parece com: chris:\$1\$w9bsw/N9\$uwLr2bRER6YyBS. modificar e remover usu´rios e grupos sem usar os scripts e ıvel a e programas que vˆm com o Slackware. cada linha corresponde a uma pessoa. Dˆ ao usu´rio a u a e a um diret´rio home v´lido (que vocˆ criar´ mais tarde) e o shell (lembre-se. O arquivo group lista todos os grupos e quem est´ em cada um deles. tenha certeza que o campo da senha ´ um x. Se vocˆ ´ o unico administrador do e a ee ´ seu sistema.

arquivos est˜o em uso mesmo que vocˆ n˜o esteja fazendo nada. Aqui est´ uma t´ e a a ıpica entrada: cvs::102:chris. Lembre-se que a a e a . dias deste a ´poca que e e a conta est´ desabilidada e um campo reservado. Se vocˆ decifrar aquela senha. Preencha com 0. a a a c Neste ponto. e (Para aqueles que pensam que vendo minha senha criptograda acima acreditam que tˆm e uma brecha para entrar em meu sistema. porque vocˆ ir´ mud´-la em a a e a a um minuto. :) ) e a e ´ Todos os usu´rio comuns s˜o membros do grupo ”users”num sistema t´ a a ıpicamente Slackware. e a vocˆ precisar´ modificar o arquivo /etc/group. o e o arquivo de spool de mail (se eles existirem). Vocˆ pode usar a sa´ do comando para decidir se precisa modificar mais algum ca e ıda arquivo.david. vocˆ precisa apenas preencher uns poucos campos e a a ca e com alguns valores em especial. vocˆ deve usar o comando passwd para criar uma senha apropriada para o usu´e a rio. Remover grupos ´ similar: remova as entradas do arquivo /etc/group. Se e a co vocˆ n˜o est´ usando uma informa¸˜o deste. ´ e a e Deixe o campo ”dias desde que a senha foi alterada”em branco. a e vocˆ saber´ a senha para um teste de firewall do sistema.3. Simplesmente desligar e pelo bot˜o de energia pode causar s´rios estragos no sistema de arquivos. apagar o diret´rio home. e remova o a a nome de login dos grupos no arquivo /etc/group. use o comando mkdir para criar o diret´rio home do novo usu´rio no local que vocˆ a o a e entrou no arquivo /etc/passwd e o comando chown para mudar o propriet´rio do novo diret´rio. mas lista as altera¸˜es que vocˆ teria feito se vocˆ executasse o comando sem co co e e aquela op¸˜o. senha do grupo. use pwck -r e grpck -r : a op¸˜o -r n˜o faz c e a ca a as altera¸˜es. pode ser uma boa id´ia usar os comandos pwck e grpck para verificar se as e mudan¸as que vocˆ fez s˜o consistentes.99999.root Os campos s˜o nome do grupo. vocˆ precisar´ calcular e tomar decis˜es antes a e a o de poder preencher esses campos.12. dias depois da senha expirar que a conta ´ desabilidada. ID do grupo e membros do grupos. N˜o se preocupe se a senha est´ correta agora. Primeiro. Remova a entrada do usu´rio dos arquivos /etc/passwd e /etc/shadow. executando pwck ou grpck sem a op¸˜o-r. DESLIGANDO O SISTEMA APROPRIADAMENTE 107 senha expirar. ent˜o sigam em frente. a Como vocˆ pode ver. e 12. Qualquer usu´rio que u ´ a e a est´ no novo grupo e est´ logado ter´ que logar novamente para que as mudan¸as tenham efeito. se vocˆ deseja criar um novo grupo.. sepaa rados por v´ ırgulas. ou adicionar o usu´rio em grupos adicionais. a o Remover um usu´rio ´ uma simples quest˜o de excluir todas as entradas que existem do a e a usu´rio. e 7 como vocˆ viu no exemplo acima e deixe os outros campos em branco.3 Desligando o sistema apropriadamente ´ E muito importante que vocˆ desligue seu sistema apropriadamente.logan. Para um novo usu´rio. Se vocˆ desejar. O unico caractere que vocˆ n˜o pode incluir no campo da senha ´ o dois pontos. Caso contr´rio. Isto ´ muito util. apenas coloque algum lixo aleat´rio a o no campo de senha. a maioria dos campos s˜o para informa¸˜es de validade de contas. a Neste ponto. Enquanto o sistema a e est´ ligado. Criar um novo grupo ´ simples como adicionar uma nova linha com um e n´mero de ID unico e listar todos os usu´rios que vocˆ quer no grupo. ou simplesmente deixar as mudan¸as como ca c est˜o. Entretanto. Ent˜o.

ou qualquer outro). esses arquivos n˜o s˜o fechados apropriadamente e podem ficar corrompidos. usa-se o mesmo comando. Sendo que desligar e reinicializar s˜o procedimentos similares. e a O primeiro m´todo ´ atrav´s do comando shutdown(8). e ´ provavelmente o mais popular. H´ muitas outras coisas que vocˆ pode fazer com o comando shutdown para controlar a e quando desligar ou reinicializar a m´quina. O ESSENCIAL EM ADMINISTRACAO DE SISTEMA ¸˜ h´ muitos processos rodando em segundo plano o tempo todo. e a e a checagem do sistema de arquivos ´ mais curta se vocˆ usa um sistema de arquivo sem joure e nalling. Um m´todo melhor em um sistema e multiusu´rio ´ dar a todos um aviso antecipado: a e # shutdown -h +60 Isto desligar´ o sistema em uma hora(60 minutos). como ext2. (reboot ´ na verdade apenas um link simb´lico para o comando a e o . vocˆ ter´ que passar por um processo longo de checagem do sistema de arquivos e a na pr´xima inicializa¸˜o. ´ importante e e fazˆ-lo corretamente. Quando o sistema ´ desligado pelo bot˜o de e a e a energia. a a maioria dos meios de desligar o sistema tamb´m podem ser aplicados para reinicializ´-lo. co Para reinicializar o sistema. Como os nomes indicam. Entretanto. vocˆ est´ parcialmente protegido contra estragos no sistema de arquivos. eles ver˜o a a a a a mensagem padr˜o de shutdown. ”now ”´ o tempo que vocˆ quer desligar e o ”-h”significa tera e e minar o sistema. veja a p´gina de manual para mais detalhes. a e vocˆ deve colocar avisos sobre a hora de desligar em quaisquer lugares usados apropriadae mente para notifica¸˜es do sistema (email. o sistema pode ficar completamente inutilizado! Em a qualquer caso. mas substitui-se ”-h”por ”-r ”: # shutdown -r now Vocˆ pode usar a mesma nota¸˜o de tempo com shutdown -r que vocˆ usuaria com shute ca e down -h. quando vocˆ quiser reinicializar ou desligar seu computador. e e e e shutdown pode ser usado para reinicializar ou desligar o sistema em um dado tempo e pode mostrar uma mensagem a todos os usu´rios logados no sistema dizendo que est´ sendo desligado. n˜o ser´ enviada uma mensagem personalizada para os usu´rios. que ´ adequado em um sistema multiua e su´rio normal. quadro de aviso. Esses processos s˜o gerenciados a a pelo sistema e mantˆm v´rios arquivos abertos. n˜o contra sua pr´pria indolˆncia. como e ext3 ou reiserfs. Depena a dendo de quais arquivos s˜o corrompidos. e a o e Em todo caso. vocˆ pode usar o que achar mais divere a a e tido (ou menos trabalhoso). esta seguran¸a n˜o ´ desculpa para desligar seu sistema de c a e modo inapropriado! Um sistema de arquivos com journalling ´ uma tentativa de proteger seus e arquivos de eventos al´m de seu controle. a a O segundo modo de desligar ou reinicializar o computador ´ usar os comandos halt(8) e e reboot(8). a a O modo mais b´sico de desligar o computador ´: a e # shutdown -h now Neste caso. halt terminar´ imediatamente a opera¸˜o do sistema e a ca reboot reinicializar´ o sistema. Sistemas essenciais devem ter a sua hora de desligar agendada antecipadamente. o ca NOTA: Se vocˆ configurou seu sistema com um sistema de arquivos com journalling. H´ v´rios meios de se fazer isso.108 CAP´ ITULO 12. /etc/motd. N˜o ´ um modo muito amig´vel de se fazer em um sistema multiusu´rios. a e a a mas funciona adequadamente em seu computador de casa.

quando muda-se para os n´ ıveis de execu¸˜o 0 ou 6.6 ´ executado. DESLIGANDO O SISTEMA APROPRIADAMENTE 109 halt. Teclar Control+Alt+Delete (a ”sauda¸˜o de trˆs dedos”) far´ a m´quina reinicializar imediatamente. vocˆ n˜o deve modificar este arquivo.d/rc. ca Finalmente. . seja usando shutdown. (O script /etc/rc. a a # telinit 6 O n´ de execu¸˜o 6 ´ o modo de reinicializa¸˜o. (Por tr´s deste ceca e a a a n´rio. ou reboot. Entretanto.) Isto a e e nem sempre funciona quando se est´ usando o X Windows – vocˆ pode precisar usar Cona e trol+Alt+F1 (ou outra tecla de fun¸˜o) para alternar para um terminal em modo texto antes. a Para os curiosos. ca halt. isso far´ com que a m´quina seja desligada. Isto ´ um modo perfeitaa a a e mente aceit´vel de reinicializar o sistema. o arquivo que efetivamente controla cada aspecto da inicializa¸˜o e do desligaca mento ´ o arquivo /etc/inittab(5). Isto funciona para reinicializar a a ıvel ca e desligar porque ambos s˜o n´ a ıveis especiais de execu¸˜o. veja as p´ginas de e co a manual para mais detalhes. o que far´ um script especial ser executado.12.0 um link simb´lico e o para /etc/rc. Usar telinit dir´ ao init que n´ de a ıvel execu¸˜o (runlevel) acionar. Em muitos laptops e e a computadores desktops modernos. o ıvel ca e ca a sistema de arquivo ser´ desmontado e a m´quina ser´ reinicializada. Como sempre.) Eles s˜o executados como: a # halt # reboot Um meio de baixo n´ de reinicializar ou desligar o sistema ´ usar diretamente o comando ıvel e init. Dizer ao init para entrar neste n´ far´ toıvel ca e ıvel a dos os processos serem terminados. mas ele e e a pode dar a vocˆ no¸˜es de como algumas coisas funcionam. Todos os outros m´todos requerem que vocˆ a ´ e e e esteja logado como root.d/rc. o script /etc/rc. contanto que vocˆ tenha acesso f´ e ısico ao teclado. Todos os outros m´todos s˜o simplesmente meios convenientes de usar init. o comando shutdown ´ chamado para vocˆ quando usa Control+Alt+Delete. Em geral. ca # telinit 0 O n´ de execu¸˜o 0 ´ o modo de desligar. Todos os processos ser˜o terminados.d/rc.6. Este script matar´ ou ca a a ressusitar´ processos necess´rios para aquele n´ de execu¸˜o. Isto ´ um modo perfeitamente aceit´vel de desligar o sistema. ´ poss´ reinicializar a m´quina mesmo se vocˆ n˜o ´ o e ıvel a e a e adminstrador. o sistema de arquivos ser´ desmontado e a m´quina ser´ a a a desligada. mas vocˆ pode e a e dizer diretamente ao init o que fazer usando telinit(8) .) Vocˆ pode personalizar este arquivo a seu gosto – mas esteja certo de e testar suas mudan¸as cuidadosamente! c H´ um ultimo m´todo de reinicializar o sistema.3.

110 CAP´ ITULO 12. O ESSENCIAL EM ADMINISTRACAO DE SISTEMA ¸˜ .

Cap´ ıtulo 13

Comandos de rede b´sicos a
Uma rede consiste em v´rios computadores conectados entre si. A rede pode ser t˜o simples a a quanto alguns computadores ligados em casa ou no escrit´rio, ou t˜o complicada quanto uma o a rede de uma grande universidade ou a Internet. Quando seu computador ´ parte de uma rede, e vocˆ tem acesso a esses sistemas diretamente ou atrav´s de servi¸os como o correio eletrˆnico e e c o ou a web. Existe uma variadade de programas para redes que vocˆ pode usar. Alguns s˜o uteis para e a ´ realizar diagn´sticos como verificar se a rede est´ funcionando corretamente. Outros (como leio a tores de e-mail e navegadores) s˜o uteis para trabalhar ou manter contato com outras pessoas. a ´

13.1

ping

O ping(8) envia um pacote ICMP ECHO REQUEST para o host especificado. Se o host responde, vocˆ recebe o pacote ICMP de volta. Parece estranho? Bom, vocˆ pode ”dar um e e ping”em um endere¸o IP para saber se a m´quina est´ conectada. Se n˜o obtiver resposta, vocˆ c a a a e sabe que alguma coisa est´ errada. a Aqui est´ um exemplo de conversa entre dois usu´rios Linux: a a Usu´rio A: A m´quina Loki est´ desligada de novo. a a a Usu´rio B: Voc^ tem certeza? a e Usu´rio A: Sim, eu tentei ping´-la, mas n~o obtive resposta. a a a S˜o circunstˆncias como essas que fazem o ping ser um comando muito util no dia a dia. a a ´ Ele provˆ uma forma muito r´pida de ver se uma m´quina est´ ligada e conectada ` rede. A e a a a a sintaxe b´sica ´: a e $ ping www.slackware.com Existem, obviamente, v´rias op¸˜es que podem ser especificadas. Olhe a p´gina de manual a co a de ping(1) para maiores informa¸˜es. co

13.2

traceroute

O traceroute(8) do Slackware ´ uma ferramenta de diagn´stico de rede muito util. traceroute e o ´ mostra por quais hosts um pacote passa at´ chegar ao seu destino. Vocˆ pode ver quantos hosts e e
111

112

´ CAP´ ITULO 13. COMANDOS DE REDE BASICOS

tem do seu computador at´ o site do Slackware com esse comando: e $ traceroute www.slackware.com Cada host vai ser mostrado, assim como o tempo de resposta de cada host. Aqui est´ um a exemplo de saida do comando: $ traceroute www.slackware.com traceroute to www.slackware.com (204.216.27.13), 30 hops max, 40 byte packets 1 zuul.tdn (192.168.1.1) 0.409 ms 1.032 ms 0.303 ms 2 207.171.227.254 (207.171.227.254) 18.218 ms 32.873 ms 32.433 ms 3 border-sf-2-0-4.sirius.com (205.134.230.254) 15.662 ms 15.731 ms 16.142 ms 4 pb-nap.crl.net (198.32.128.20) 20.741 ms 23.672 ms 21.378 ms 5 E0-CRL-SFO-03-E0X0.US.CRL.NET (165.113.55.3) 22.293 ms 21.532 ms 21.29 ms 6 T1-CDROM-00-EX.US.CRL.NET (165.113.118.2) 24.544 ms 42.955 ms 58.443 ms 7 www.slackware.com (204.216.27.13) 38.115 ms 53.033 ms 48.328 ms O traceroute ´ similar ao ping, j´ que o mesmo usa pacotes ICMP tamb´m. Existem v´rias e a e a op¸˜es que vocˆ pode especificar para o traceroute. Essas op¸˜es s˜o explicadas em detalhes na co e co a respectiva p´gina de manual. a

13.3

Ferramentas DNS

O Domain Name Service (abreviado por DNS) ´ o protocolo m´gico que permite a seu come a c putador converter nomes de dom´ ınio como www.slackware.com em endere¸os IP 64.57.102.34. Computadores n˜o podem rotear pacotes para www.slackware.com, mas eles podem rotear paa cotes para o endere¸o IP desse dom´ c ınio. Isso nos d´ uma forma conveniente de lembrarmos de a m´quinas. Sem o DNS ter´ a ıamos que manter um banco de dados mental de qual endere¸o IP c pertence a qual computador, e assumindo que o endere¸o IP ´ sempre o mesmo. Claramente c e usar nomes para computadores ´ melhor, mas como n´s mapeamos nomes em endere¸os IP? e o c

13.3.1

host

´ O host(1) pode fazer isso por n´s. host ´ usado para mapear nomes em endere¸os IP. E um o e c utilit´rio muito r´pido e simples, sem muitas fun¸˜es. a a co $ host www.slackware.com www.slackware.com is an alias for slackware.com. slackware.com has address 64.57.102.34 Mas vamos supor que por alguma raz˜o n´s queremos mapear um endere¸o IP para um a o c nome de dom´ ınio; e ent˜o? a 13.3.2 nslookup

nslookup ´ um programa que tem resistido ao tempo. nslookup est´ depreciado e pode ser e a removido de lan¸amentos futuros. N˜o existe nem mesmo uma p´gina de manual para este c a a programa.

13.3. FERRAMENTAS DNS

113

$ nslookup 64.57.102.34 Note: nslookup is deprecated and may be removed from future releases. Consider using the ‘dig’ or ‘host’ programs instead. Run nslookup with the ‘-sil[ent]’ option to prevent this message from appearing. Server: 192.168.1.254 Address: 192.168.1.254#53 Non-authoritative answer: www.slackware.com canonical name = slackware.com. Name: slackware.com Address: 64.57.102.34 13.3.3 dig

O Domain Information Groper, dig(1) abreviando, ´ o programa que pega informa¸˜es DNS. e co dig pode pegar qualquer informa¸˜o de um servidor DNS incluindo reverse lookups, A, CNAME, ca MS, SP, e registros TXT. dig possui muitas op¸˜es de linha de comando e se vocˆ n˜o ´ familiar co e a e com eles, leia a extensiva p´gina de manual da ferramenta. a $ dig @192.168.1.254 www.slackware.com mx ; <<>> DiG 9.2.2 <<>> @192.168.1.254 www.slackware.com mx ;; global options: printcmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 26362 ;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 2, ADDITIONAL: 2 ;; QUESTION SECTION: ;www.slackware.com. ;; ANSWER SECTION: www.slackware.com.76634 slackware.com. 86400 ;; AUTHORITY SECTION: slackware.com. 86400 slackware.com. 86400 ;; ADDITIONAL SECTION: ns1.cwo.com. 163033 ns2.cwo.com. 163033 ;; ;; ;; ;;

IN

MX

IN IN

CNAME MX

slackware.com. 1 mail.slackware.com.

IN IN

NS NS

ns1.cwo.com. ns2.cwo.com.

IN IN

A A

64.57.100.2 64.57.100.3

Query time: 149 msec SERVER: 192.168.1.254#53(192.168.1.254) WHEN: Sat Nov 6 16:59:31 2004 MSG SIZE rcvd: 159

O exemplo acima deve dar uma id´ia de como o dig funciona. ”@192.168.1.254”especifica o e e ınio que eu estou verificando, servidor dns a ser usado. ”www.slackware.com”´ o nome de dom´ e ”mx”´ o tipo de verifica¸˜o que eu estou fazendo. A query acima me diz que quando enviar e ca um e-mail para www.slackware.com ele ser´ enviado na verdade, para mail.slackware.com. a

plan”e ”.project”. O telnet permite que vocˆ logue em um computador. Para logar em uma m´quina remota.4 finger O finger (1) ir´ retornar informa¸˜es sobre o usu´rio especificado. Vocˆ utiliza o finger em a co a e um username ou em um endere¸o de e-mail e ele ir´ tentar contactar o servidor necess´rio e rec a a tornar o username. vocˆ pode rodar aplicativos do X no computador a e remoto e mostrar o resultado no seu computador. escrit´rio. n´mero de telefone. co ca basta editar esses arquivos com seu editor de texto favorito. Se vocˆ estiver roe dando o X e fizer telnet para outra m´quina.project.5 telnet Algu´m uma vez disse que o telnet(1) tinha sido a coisa mais legal que j´ havia visto em e a computadores. co co e 13. e assim por diante. Para mudar a informa¸˜o no seu arquivo . vocˆ ter´ um prompt do a e a shell. finger possui op¸˜es. o Muitos usu´rios utilizam finger na sua pr´pria conta de uma m´quina remota para ver raa o a pidamente se possuem novos e-mails. vocˆ pode fazer qualquer coisa que um console em modo texto permitir. assim como se vocˆ estivesse sentado e e em frente ao mesmo. A habilidade de logar remotamente e realizar tarefas em outro computador ´ o e que separa o Unix e sistemas operacionais ”Unix-like”de outros sistemas operacionais. Esses arquivos precisam estar no seu diret´rio home e precisam ser chamados .project obrigatoriamente. ler grupo de not´ ıcias.plan dentro do diret´rio home do usu´rio u o a • Conte´do do arquivo . n´mero de telefones.plan e .plan ou . e outras informa¸˜es. COMANDOS DE REDE BASICOS 13. a Como muitos comandos. e o conte´do dos u u arquivos ”. Aqui est´ um exemplo: o u co a $ finger johnc@idsoftware. Claro que a informa¸˜o retornada varia conforme cada servidor ca finger.114 ´ CAP´ ITULO 13. use a seguinte sintaxe: a . status de e-mail. mover arquivos. Vocˆ tamb´m pode utiliz´-lo para ver os planos de um e e a usu´rio ou o seu projeto atual. e Compor e-mail.project dentro do diret´rio home do usu´rio u o a Os primeiros quatro itens podem ser configurados com o comando chfn. Aquele que est´ incluso no Slackware retorna as seguintes informa¸˜es por padr˜o: a co a • Username • Room number • Home phone number • Work phone number • Login status • Email status • Conte´do do arquivo . Depois de ter seu usu´rio e senha verificados. Olhe a p´gina de manual dele para maiores co a informa¸˜es sobre op¸˜es que vocˆ pode usar. Ele guarda essas informa¸˜es no arquivo /etc/passwd.com O finger pode retornar o username. Depois disso.

slackware.. Pronto. n´s iremos mostrar algumas outras utilidades do telnet.1 200 OK Date: Mon. use o comando exit ou o comando e a logout. dessa forma. e a Vocˆ pode testar interativamente ou usar um servidor SMTP. desde e que saiba em que porta conectar e quais s˜o seus comandos. Na pr´xima figura vocˆ ver´ como vocˆ pode usar telnet em um servidor HTTP na porta o e a e 80.8. Connected to store. HEAD / HTTP/1.3.9. um servidor POP3. Para sair da sua sess˜o telnet. a . a ca e at´ mesmo senhas.com.. N˜o ´ recomendado usar telnet atrav´s da Internet. 25 Apr 2005 20:47:01 GMT Server: Apache/1. AVISO: telnetn˜o encripta a informa¸˜o que transmite. vocˆ receber´ o prompt de login.5. um servidor e HTTP.22 OpenSSL/0. TELNET 115 $ telnet <hostname> Se o host responder.7d Last-Modified: Fri. e a a Vocˆ agora possui uma shell.com 80 Trying 69. e vocˆ ´ e c e precisa de total controle sobre os comandos.5. e e $ telnet <hostname> [port] Isso pode ser bem util quando vocˆ precisa rapidamente testar um certo servi¸o.50.1 Outras utilidades do telnet Agora que n´s convencemos vocˆ a n˜o utilizar o protocolo telnet para logar em uma m´o e a a quina remota.153. e conseguir algumas informa¸˜es b´sicas dele: co a Usando telnet em um servidor web $ telnet store.slackware.233. Para tal. a a ıvel 13. Escape character is ’^]’. Ele encripta todo o tr´fego e est´ dispon´ gratuitamente. al´m de ver precisamente o que est´ acontecendo.33 (Unix) mod_ssl/2.13. Digite seu usu´rio e sua senha. 18 Apr 2003 10:58:54 GMT ETag: "193424-c0-3e9fda6e" Accept-Ranges: bytes Content-Length: 192 Connection: close Content-Type: text/html Connection closed by foreign host. Tudo ´ transmitido em texto puro. $ Vocˆ pode fazer a mesma coisa para qualquer outro protocolo que seja de texto puro. etc. considere usar e a e e o ssh (Secure Shell).0 HTTP/1. o Vocˆ tamb´m pode usar o telnet para conectar em um host em uma certa porta.

alan@carrier:~$ ls -l MANIFEST -rw-r--r-.net (192.26-smp.1 pine O pine(1) n˜o ´ o elm. verifique a e o menu de ajuda dos mesmos.net -l alan The authenticity of host ’carrier.7.7 email O correio eletrˆnico ´ uma das coisas mais populares que vocˆ pode fazer na Internet.168.net’ (RSA) to the list of known hosts. e chee a cando as permiss˜es do arquivo MANIFEST. Acima vocˆ pode perceber que eu estou fazendo uma conex˜o ssh em carrier. 13. n´s fornecemos um servidor de email padr˜o. contudo. Dessa forma. Password: password Last login: Sat Nov 6 16:32:19 2004 from 192. ssh(1) nos permite realica zar conex˜es em uma m´quina remota e executar programas como se vocˆ estivesse fisicamente o a e presente.lizella. RSA key fingerprint is 0b:e2:5d:43:4c:39:4f:8c:b9:85:db:b2:fa:25:e9:9d.net. mesmo que outras pessoas interceptem a comunica¸˜o.lizella. Too a dos os clientes discutidos abaixo s˜o utilizados em modo texto.253)’ can’t be established. e . O pine ´ um a e dos clientes de email mais populares hoje em uso e est´ dispon´ para todos os sabores de a ıvel Unix e at´ mesmo Windows.lizella.lizella. Em o e e 1998 descobriu-se que mensagens eletrˆnicas eram mais utilizadas que o correio normal.6 O ssh (Secure Shell) Hoje. Uma conex˜o ssh t´ a ıpica est´ abaixo: a $ ssh carrier.1.116 ´ CAP´ ITULO 13. mas vocˆ descobrir´ que um cliente utilizado em modo texto ´ muito e a e conveniente. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added ’carrier.168.lizella. ´ No Slackware. Se vocˆ deseja usar um desses.net closed. o ssh encripta todos os dados transferidos entre os dois computadores. eles n˜o ser˜o capazes de entendˆca a a e la.1 alan users 23545276 2004-10-28 20:04 MANIFEST alan@carrier:~$ exit logout Connection to carrier. o ssh desfruta da adora¸˜o que o telnet desfrutou uma vez. o 13. COMANDOS DE REDE BASICOS 13. A Universidade de Washington criou o seu programa para ler emails a e e not´ ıcias da Internet e ao mesmo tempo ser um leitor f´cil para seus estudantes. N˜o tema pois exise a a tem diversos clientes gr´ficos como o Kmail do KDE.4.1. especialmente quando vocˆ est´ checando email remotamente. Ele ´ o e certamente muito comum e util. e muitos clientes de email.102 Linux 2. Muitos dos usu´rios Windows a a podem ser contra isso.

Para ver o que est´ na sua caixa de entrada. O pine oferece muitas. 13. Vocˆ pode digitar i para voltar ` lista de mensagens. est´ por a´ h´ muito mais tempo. Vocˆ pode obter a listagem das pastas pressionando a e e tecla l. e a o digite Ctrl+X para envi´-la. muitas funcionalidades.13. a e a Se vocˆ deseja excluir a mensagem. Apesar de n˜o possuir e a uma interface t˜o amig´vel quanto o pine. Ap´s digitar a mensagem de resposta. Ele ir´ conter as ultimas informa¸˜es sobre o a co a ´ co programa. vocˆ definitivamente deve dar uma olhada e na p´gina de manual para maiores informa¸˜es. a a a ı a . Suas mensagens s˜o listadas com suas a a datas. autores e assuntos.7. EMAIL 117 Vocˆ ver´ um menu de comandos e uma linha de teclas de comando na parte de baixo da e a tela. pressione s para salv´-la em outra pasta.7. Contudo o pine ´ um programa complexo. digite d.2 elm elm(1) ´ outro cliente de email em modo texto bastante popular. digite i. O pine apaga as mensagens quando vocˆ sai do programa. Na listagem de mensagens. Isso ir´ marcar a mensagem selecionada para e a exclus˜o. Digitando r vocˆ poder´ responder a mensagem. O pine tamb´m permite a e e que vocˆ guarde seus emails em pastas. e n´s n˜o iremos discutir todos os seus recursos e o a neste texto. Selecione a mensagem que vocˆ deseja e aperte enter para visualiz´e a la. Ele ir´ perguntar a a em qual pasta deve salvar a mensagem.

E a tecla r ir´ responder a mensagem que vocˆ est´ atualmente lendo. a 13. ent˜o vocˆ provavelmente ir´ a a e a consult´-lo antes de utilizar o elm. A interface original do a e mutt era baseada na interface do elm com recursos adicionais encontrados em outros clientes de email populares. autor e assunto. a A p´gina de manual apresenta o elm mais detalhadamente. MH. Para compor uma nova mensagem. As mensagens s˜o listadas com o n´mero a e a a u da mensagem. A tecla d ir´ marcar a a mensagem para exclus˜o.7.3 mutt ”Todos os clientes de email s˜o ruins. resultando em um mutt h´ ıbrido. maildir) a • Altamente personaliz´vel a Tela principal do Mutt . pressione m na tela principal.118 ´ CAP´ ITULO 13. a a e a Todas essas teclas s˜o mostradas na parte de baixo da tela com um prompt. MMDF. Use as setas para selecionar a mensagem que deseja. Alguns dos recursos do mutt incluem: • Suporte a cores • Agrupamento de mensagens • Suporte a MIME e PGP/MIME • Suporte a pop3 e imap • Suporte a v´rios formatos de caixa de correio (mbox. COMANDOS DE REDE BASICOS Por padr˜o vocˆ est´ na sua caixa de entrada. data. Pressione Enter para ler a mensagem. Este ´ apenas menos ruim”.

mailx ´ util para aquelas vezes em a a e´ que vocˆ precisa rapidamente enviar alguma coisa.7. Aqui est´ um exemplo de enviar por email o c´digo fonte de um programa para outra pessoa: a o $ cat randomfunc. Qualquer um desses trˆs comandos executa o mesmo programa. associa¸˜es de teclas mudadas.net A p´gina de manual explica mais do que o nail pode fazer. testando sua instala¸˜o de MTA ou qualquer e ca coisa parecida. Note que o Slackware cria um link simb´lico para o nail em /usr/bin/mail e o /usr/bin/mailx. e ca 13. Se vocˆ quiser adicionar uma macro. Todas as configura¸˜es padr˜o podem ser a e a co a customizadas.7. E muito primitivo e oferece quase nenhum e recurso no que diz respeito ` interface com usu´rio.13. que ir´ explie a a a car como configurar tudo isso. a . Contudo. ou vocˆ pode apenas digitar o a a e texto e apertar Ctrl+D quando tiver acabado a mensagem. ent˜o vocˆ ir´ gostar do mutt. vocˆ tamco e e b´m pode.4 nail ´ nail (1) ´ um cliente de email de linha de comando. Ent˜o vocˆ pode usar o cat em um e a a e arquivo como entrada padr˜o para este comando para envi´-lo. vocˆ e e ver´ normalmente o nail sendo referenciado como mail. Ou dˆ uma olhada no exemplo de arquivo de configura¸˜o muttrc. De fato. e Vocˆ provavelmente ir´ querer dar uma olhada na p´gina de manual do muttrc.c | mail -s "Here’s that function" asdf@example. EMAIL 119 Se vocˆ est´ procurando por um cliente de email que ir´ permitir que vocˆ tenha total cone a a e trole sobre tudo. a A linha de comando b´sica ´: a e $ mailx <subject> <to-addr> mailx lˆ o corpo da mensagem da entrada padr˜o. ent˜o vocˆ provavelmente ir´ a a e a querer dar uma olhada nele antes de us´-lo.

Para iniciar o lynx. para vocˆ digitar uma URL para o lynx abrir. Digitando d ir´ fazer o download do arquivo selea a a cionado. c e Existem muitos outros comandos no lynx. Vocˆ pode consultar a p´gina de manual ou digitar e a h para que a tela de ajuda apare¸a para maiores informa¸˜es. o links ´ um navegador em modo texto. quando pressiona a tecla Esc. E uma forma bem r´pida de olhar alguma e a coisa na Internet. Contudo. navegar em sites usando um navegador web.2 links Assim como no lynx. COMANDOS DE REDE BASICOS 13.8. N´s iremos dar uma r´pida olhada nas op¸˜es mais comuns. e a e seta da esquerda volta ` p´gina anterior. O comando g traz o prompt de endere¸o.120 ´ CAP´ ITULO 13.slackware.8 Navegadores A primeira coisa que as pessoas pensam quando ouvem a palavra Internet ´ ”navegar na ine ternet”.8. bem como navegadores a a e web em modo texto na s´rie ”N”. Enter seleciona o link destacado.1 lynx ´ lynx (1) ´ um navegador web em modo texto. apenas digite lynx no prompt: $ lynx P´gina inicial padr˜o do Lynx a a Vocˆ pode querer especificar um site para o lynx abrir: e $ lynx www.com lynx exibe as teclas de comando e o que cada tecla faz na parte de baixo da tela. ir´ ativar um menu muito conveniente no a . e o a co 13. c co 13. Em outras palavras. Esse ´ provavelmente e de longe o uso mais popular da Internet para o usu´rio m´dio. As setas para cima e para baixo movem atrav´s do documento. onde vocˆ navega utilizando e e o teclado. a e O Slackware fornece navegadores web que s˜o gr´ficos na s´rie ”XAP”.

8.13.gz --12:18:16-. quando comparado ao lynx. O wget tamb´m pode fazer o download de sites FTP.232.slackware. Como n˜o ´ na verdade um navegador web. connected..3 wget wget(1) ´ uma ferramenta de linha de comando que ir´ fazer o download de arquivos de uma e a URL espec´ ıfica. Por exemplo.tar.2.tar.8..2. ou ca para o download de arquivos de servidores HTTP ou FTP. O links parece ter um suporte melhor para frames e tabelas. 13. sem ter que aprender um monte a de teclas de atalho. NAVEGADORES 121 topo da tela. a op¸˜o abaixo ir´ fazer o download do site e e co ca a do Slackware: $ wget --recursive www. done.41.gz’ Resolving ftp.gnu.slackware.org/gnu/wget/wget-1.2.ftp://ftp.gnu..org. assim como o site o faz.org[199. Isso permite que o links seja muito f´cil de usar. e $ wget ftp://ftp.tar.com e ir´ guardar os arquivos dentro a o a dele. .gnu. Pessoas que n˜o utilizam navegadores em modo texto todo dia ir˜o gostar a a deste recurso.gnu. apenas especifique uma URL FTP ao e inv´s de uma HTTP.8. A sintaxe b´sica ´: a e $ wget <url> Vocˆ tamb´m pode passar op¸˜es.com O wget ir´ criar um diret´rio chamado www. Connecting to ftp.gz => ‘wget-1.8.7]:21.. o wget ´ usado principalmente a e e para fazer o download de sites inteiros ou parte deles para visualiza¸˜o offline dos mesmos.8.org/gnu/wget/wget-1.

a Vocˆ poder´ logar como vocˆ mesmo ou como ”anˆnimo”(anonymous)..1 ftp Para conectar em um servidor FTP. O cliente n˜o pode aceitar conex˜es a a o FTP. Existe o servidor FTP e o cliente FTP. done. done. ==> CWD /gnu/wget . Length: 1. A p´gina de manual deve ser consultado para a mais informa¸˜es.‘wget-1.648 209. Logged in! ==> SYST . Sites FTP anˆnimos e a e o o s˜o bastante populares para reposit´rio de arquivos.gz’ saved [1154648] O wget tem muitas outras op¸˜es.55K/s ETA 00:00 12:18:23 (209. COMANDOS DE REDE BASICOS Logging in as anonymous . e o Uma vez conectado.648 (unauthoritative) 100%[==================================>] 1. ele pode apenas conectar ` servidores FTP.. Ele permite que vocˆ envie e receba e e e arquivos entre dois computadores. o que o torna muito bom para scripts espec´ co ıficos para sites (como espelhamento e assim por diante). done.. Vocˆ ir´ fazer o download de arquivos co e a do servidor e ir´ fazer upload de arquivos para o servidor.122 ´ CAP´ ITULO 13.8. ==> PWD . done.gz .2. a 13... e a mas eles s˜o similares aos comandos padr˜o. ==> PORT .. done. A lista seguinte mostra alguns dos comandos a a b´sicos e o que eles fazem: a Comandos ftp .55KB/s) .154. O ”servidor”´ o computador ca e e e que responde suas requisi¸˜es FTP e aceita o seu login.. simplesmente execute o comando ftp(1) e especifique o host: $ ftp $<$hostname$>$ [port] Se o host estiver rodando um servidor FTP.. o ”cliente”´ vocˆ.. vocˆ deve usar FTP anˆnimo.9.. N´s iremos falar o sobre os clientes nesta se¸˜o. para fazer o download do a o Slackware Linux por FTP. ele ir´ pedir um username e um password.. Existem comandos especiais para FTP. ==> RETR wget-1...2. Para os curiosos.9 Clientes FTP O FTP ´ o protocolo de transferˆncia de arquivos. ==> TYPE I .tar.tar.8. co 13. Por exemplo. vocˆ estar´ no prompt ftp>.154.. done.

que s˜o auto-explicativos: chmod. incluindo: ca . -rw-r--r-1 root 100 18606 Apr 6 2002 BOOTING.2 ncftp O ncftp(1) (pronunciado ”Nik-F-T-P”) ´ uma alternativa ao tradicional cliente ftp que vem e com o Slackware. coringas s˜o permitidos a Faz o upload de um arquivo ou um grupo de arquivos.TXT -rw-r--r-1 root 100 602 Apr 6 2002 CRYPTO_NOTICE.TXT local: README81.TXT -rw-r--r-1 root 100 14826 Jun 17 2002 SPEAKUP_DOCS. delete.TXT 226 Transfer complete.208 secs (58 Kbytes/sec) 13. apenas digite help ou ? e vocˆ ver´ a lista completa na sua tela. Para uma lista completa de todos os comandos e seus significados. mas oferece algumas vantagens em e rela¸˜o ao ftp.TXT 200 PORT command successful.9. e a FTP ´ um programa razoavelmente simples de ser usado. ftp> get README81. ftp> tick Tick counter printing on (10240 bytes/tick increment). e e a rename.TXT -rw-r--r-1 root 100 32431 Sep 29 02:56 FAQ.9.TXT 200 PORT command successful. mas falta a interface que muitos e de n´s est˜o acostumados hoje em dia. CLIENTES FTP 123 Comando ls cd <diret´rio> o bin ascii get <arquivo> put <arquivo> hash tick prom mget <arquivos> mput <arquivos> quit Fun¸˜o ca Lista arquivos Muda de diret´rio o Define modo de transferˆncia bin´rio e a Define modo de transferˆncia ASCII e Faz o download de um arquivo Faz o upload de um arquivo Liga/Desliga a impress˜o de ”#”para cada buffer transferido a Mostra/Esconde contador de bytes Entra/Sai modo interativo para downloads Faz o download de um arquivo ou um grupo de arquivos.TXT -rw-r--r-1 root 100 2876 Jun 17 2002 UPGRADE.TXT -rw-r--r-1 root 100 15434 Jun 17 2002 SPEAK_INSTALL. 150 Opening ASCII mode data connection for /bin/ls.TXT -rw-r--r-1 root 100 10518 Jun 13 2002 COPYRIGHT.13. coringas s˜o permitidos a Sai do servidor FTP Vocˆ tamb´m pode usar os seguintes comandos. 12339 bytes received in 0.TXT (12339 bytes). ftp> ls *.TXT -rw-r--r-1 root 100 499784 Mar 3 19:29 FILELIST. 150 Opening BINARY mode data connection for README81.TXT -rw-r--r-1 root 100 12339 Jun 19 2002 README81. A p´gina de manual discute algumas das op¸˜es de o a a co linha de comando do ftp(1).TXT remote: README81. rmdir. Ele ´ ainda um programa em modo texto. Bytes transferred: 12339 226 Transfer complete.TXT -rw-r--r-1 root 100 241099 Mar 3 19:12 PACKAGES.

WARNING Slackware-HOWTO ChangeLog.md5 PACKAGES.258 days ago CWD command successful.TXT ncftp . que se e a parece mais com o bash.asc GPG-KEY isolinux/ CHECKSUMS.124 ´ CAP´ ITULO 13.TXT source/ CURRENT.. A e a a sintaxe b´sica ´: a e $ wall [file] Isso ir´ fazer com que o conte´do do arquivo seja mostrado no terminal de todos os usu´rios a u a atualmente logados no sistema.1 Conversando com outras pessoas wall wall (1) ´ uma forma r´pida de escrever uma mensagem para os usu´rios em um sistema. Ele divide a tela no meio. wall ir´ ler da entrada e a a padr˜o.TXT extra/ CHECKSUMS. Para requisitar um chat com outro usu´rio.asc PRERELEASE_NOTES pasture/ COPYING README81.TXT bootdisks/ CHECKSUMS FILELIST.10 13. para que a ca e e a eles salvem seus trabalhos e fa¸am logoff =) c 13.07 kB/s 13. vocˆ ir´ apenas notar uma interface melhor.TXT slackware/ CRYPTO_NOTICE.29 kB 307.TXT kernels/ CHECKSUMS. use o comando: a . COMANDOS DE REDE BASICOS • ”Tab completion” • Arquivo de favoritos(Bookmark) • Uso mais liberal de coringas • Hist´rico de comandos o Por padr˜o..2 talk O talk (1) permite que dois usu´rios conversem entre si. vocˆ pode c ca e usar os mesmos comandos usados no ftp.TXT: 12.ware/slackware-current > get README81.10. ou at´ mesmo reinici´-lo. a a e wall n˜o possui muitos recursos. Vocˆ pode a a e e for¸ar o ncftp a apresentar o prompt de login com a op¸˜o ”-u”. ncftp .ware/slackware-current > ls BOOTING. ncftp ir´ tentar logar anonimamente ao servidor que vocˆ especificar.. Uma vez no sistema.TXT it was last modified on Wed Jun 19 16:24:21 2002 .. ent˜o vocˆ pode simplesmente digitar sua mensagem e no final digitar Ctrl+d. tirando o fato de servir para avisar a seus usu´rios que vocˆ a a e est´ prestes a fazer alguma manuten¸˜o s´ria no sistema.md5.TXT README81.TXT FAQ. horizona talmente. Se vocˆ n˜o especificar uma mensagem.TXT SPEEKUP_DOCS.txt UPGRADE.10. ncftp /pub/linux/slackware > cd slackware-current/ Please read the file README81.TXT rootdisks/ COPYRIGHT.TXT SPEEK_INSTALL.

Ele somente suporta dois usu´rios e ´ half-duplex. A informa¸˜o a a ca requerida para a conversa pode ser obtida com o comando w (1).13. Ele vem com o Slackware como sendo o comando ytalk. O talk tamb´m pode chamar usu´rios em hosts remotos. A e ca sintaxe ´ similar. mas existem algumas diferen¸as: e c $ ytalk <username>[#ttyname] .10. CONVERSANDO COM OUTRAS PESSOAS 125 $ talk <pessoa> [ttyname] Se vocˆ especificar apenas o usu´rio.3 ytalk ytalk (1) ´ uma reposi¸˜o do talk. Para o username vocˆ simplesmente e a e especifica um endere¸o de email. O nome do terminal ´ requerido se vocˆ deseja chamar um a a e e usu´rio em um terminal espec´ a ıfico (se o usu´rio est´ logado em mais de um). e a e 13. talk ir´ tentar contactar aquele usu´rio remoto naquele host.10. o talk assume que a requisi¸˜o ´ local. c a a talk ´ um pouco limitado. ent˜o apenas e a ca e a usu´rios locais s˜o requisitados.

co • Vocˆ pode utilizar o shell enquanto estiver em uma conversa. COMANDOS DE REDE BASICOS O usu´rio e o terminal s˜o especificados da mesma forma que no talk. e a ytalk oferece v´rias vantagens: a • Ele suporta mais de dois usu´rios.conf. e • E muito mais.. ytalk precisa disso para funcionar corretamente. vocˆ deve se certificar que a porta do ntalk est´ ee e a habilitada em /etc/inetd..126 ´ CAP´ ITULO 13. com a diferen¸a que a a c vocˆ deve coloc´-los juntos com o caractere (#). Se vocˆ ´ um administrador de servidores. a • Um menu de op¸˜es pode ser ativado a qualquer momento com a tecla Esc. .

co e o c seguran¸a ´ um processo. crackers e outros ladr˜es a o de informa¸˜es. ent˜o ´ importante deixar a c c a e habilitado o m´ ınimo de servi¸os poss´ c ıveis (ou seja. c e a 14. Para fazer isso. abra esse arquivo no seu editor de textos favorito (ex.1 Desabilitando Servi¸os c O primeiro passo ap´s instalar o Slackware deve ser desabilitar todos os servi¸os que vocˆ o c e n˜o vai precisar. Esse cap´ a e ıtulo inteiro ´ e dedicado a como proteger sua m´quina Slackware contra script kiddies. A linha acima ficaria ıcio assim: #telnet stream tcp nowait root /usr/sbin/tcpd in. Os servi¸os o a a c s˜o iniciados a partir de duas ferramentas principais o inetd e os scripts de inicializa¸˜o (init a ca scripts). Vocˆ pode reiniciar o c a e inetd com o comando: # kill -HUP $(cat /var/run/inetd. e qualquer outro que n˜o seja necess´rio para vocˆ. n˜o um estado. O inetd ´ a e um daemon que escuta em todas as portas usadas pelos servi¸os configurados para serem inic ciados por ele e inicia uma estˆncia do daemon relevante quando uma tentativa de conex˜o ´ a a e feita. Qualquer servi¸o pode ser um risco de seguran¸a. e tamb´m proteger dados sigilosos. e c a a e comentado-os (ou seja.telnetd Vocˆ pode desabilitar esse servi¸o.1 Servi¸os iniciados com o inetd c Muitos daemons que vem com o Slackware s˜o iniciados a partir do inetd (8).Cap´ ıtulo 14 Seguran¸a c Seguran¸a em um sistema ´ uma caracter´ c e ıstica muito importante: ela pode prevenir que pessoas ataquem sua m´quina. vi) e vocˆ ver´ linhas similares a essa: e a $telnet stream tcp nowait root /usr/sbin/tcpd in. Daemons iniciados pelo inetd podem ser desabilitados comentando-se a linha referente ao mesmo no arquivo /etc/inetd. esse servi¸o estar´ desabilitado.telnetd Depois que o inetd for reiniciado. Tenha em mente de que esse ´ s´ o come¸o de como proteger um sistema. incluindo um # (sustenido) ao in´ da linha). 14.pid) 127 . s´ os que s˜o necess´rios).conf.1.

ca Por exemplo. Por exemplo.portmap #fi # Done starting the RPC portmapper. A menos que vocˆ esteja 100% confiante e o a e de suas habilidades.d/.4 e superior.portmap" # /sbin/rpc.128 CAP´ ITULO 14.2.portmap" /sbin/rpc.netfilter. Essa se¸˜o cobre apenas o b´sico de sua utiliza¸˜o e a ca a ca vocˆ pode acessar o site http://www.d/rc.portmap ]. then echo "Starting RPC portmapper: /sbin/rpc.4. then # echo "Starting RPC portmapper: /sbin/rpc.sshd.d/rc. Esse servi¸o pode ser desabilitado adicionando um # ao inicio das linhas que ainda n˜o c a come¸am com #. o SSH ´ iniciado pelo seu pr´prio script /etc/rc.d/rc.portmap ]. Note que comandos incorretos do iptables podem ca at´ mesmo te impedir de acessar sua pr´pria m´quina.4 (2. # Start the RPC portmapper: if [ -x /sbin/rpc. assim: c # This must be running in order to mount NFS volumes. e ca O kernel 2. o qual deve ter permiss˜o de execu¸˜o para que a ca essas regras tenham efeito na inicializa¸˜o.org/ para mais detalhes. c a o Vocˆ pode fazer isso digitando o seguinte em um console (vocˆ precisar´ se logar novamente e e a ap´s mudar para o runlevel 1): o # telinit 1 # telinit 3 14.2 14.d/rc. ca a o daemon portmap ´ iniciado pelas seguintes linhas do arquivo /etc/rc.portmap fi # Done starting the RPC portmapper.0 e tornou-se o padr˜o no Slackware 8. e a .1. Esses podem ser desabilitados de duas maneiras: a primeira seria remover a permiss˜o de execu¸˜o do script de inicializa¸˜o desejado e a segunda seria comentar a ca ca as linhas relevantes no script de inicializa¸˜o. vocˆ precisar´ comentar c a o ca e a as linhas relativas a eles em algum outro script de inicializa¸˜o para desabilit´-los.2 Servi¸os iniciados pelos scripts de inicializa¸˜o (init scripts) c ca Os outros servi¸os iniciados durante o boot da m´quina s˜o iniciados a partir dos scripts c a a contidos em /etc/rc.inet2 : e # This must be running in order to mount NFS volumes. Esses comandos podem e ser colocados no arquivo /etc/rc.firewall. SEGURANCA ¸ 14.1. para ser exato) foi introduzido no Slackware (como uma op¸˜o) na vers˜o ca a 8. sempre tenha certeza de que vocˆ tem acesso local a m´quina.1 Controle de Acesso ao Host iptables O iptables ´ o programa de configura¸˜o de filtros de pacotes para o Linux 2. Vocˆ pode desabilit´e o e a lo usando: # chmod -x /etc/rc. Essas mudan¸as apenas ter˜o efeito ap´s um reboot ou mudando para o runlevel 3 ou 4. # Start the RPC portmapper: #if [ -x /sbin/rpc.5.sshd Para os servi¸os que n˜o possuem seu pr´prio script de inicializa¸˜o.

e e a e usando o seguinte comando: # echo 1> /proc/sys/net/ipv4/ip\_forward Para habilitar o IP forwarding de uma forma permanente (ou seja.0.14. A primeira coisa a liberar ´ o e e c e trafego para se¸˜es que j´ estavam estabelecidas: co a # iptables -A INPUT -m state --state ESTABLISHED.0. Vocˆ pode fazer isso temporariamente. Vocˆ pode querer restringir o acesso a esse servi¸o para que apenas certas m´quinas pose c a sam acess´-lo.0/8 -i lo -j ACCEPT$ Essa regra permite qualquer tr´fego para e a partir do endere¸o 127.34: a c # iptables -A INPUT -p tcp -s 64.0/8 -d 127.0.d/rc.0.RELATED -j ACCEPT$ E para n˜o impedir qualquer aplica¸˜o que use o endere¸o de loopback.NAT) em suas m´quinas que atuem como gateway. a Se. Vocˆ pode usar a seguinte a e e regra para fazer isso: # iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE$ Vocˆ tamb´m precisar´ habilitar o IP forwarding. Dito isso.102.255) na interface de loopback (lo).0. ´ uma boa id´ia ser o e e mais espec´ ıfico poss´ ıvel.0 a c 127.0.0/8 (127. Quando for criar regras. ca O pr´ximo passo seria permitir o acesso a servi¸os espec´ o c ıficos que rodem em sua m´quina.0.34 --dport 80 -i ppp0 -j ACCEPT$ Permitir o tr´fego ICMP pode ser util para efeitos de diagn´stico. Essa regra permite o acesso ao seu servidor web a partir do endere¸o 64.57. vocˆ quisesse rodar um servidor web na sua m´quina.102. Para fazer isso. CONTROLE DE ACESSO AO HOST 129 A primeira coisa que a maior parte das pessoas devem fazer ´ configurar a politica padr˜o e a para cada m´todo de entrada para DROP: e # iptables -P INPUT DROP # iptables -P FORWARD DROP Quando tudo ´ barrado.0. para que a mudan¸a c seja mantida ap´s o reboot). regras que permitem pouco resultam em mais regras e mais digita¸˜o. vocˆ precisar´ abrir o arquivo /etc/rc. ´ inteligente adicionar a ca c e a seguinte regra: # iptables -A INPUT -s 127. por exemplo. vocˆ pode come¸ar a liberar coisas. vocˆ a ´ o e usuaria uma regra como essa: # iptables -A INPUT -p icmp -j ACCEPT$ Muitas pessoas tamb´m v˜o querer configurar o servi¸o de Tradu¸˜o de Endere¸os de Rede e a c ca c (Network Address Translation . vocˆ usaria uma regra e a e similar a essa: # iptables -A INPUT -p tcp --dport 80 -i ppp0 -j ACCEPT$ Isso permitir´ o acesso de qualquer m´quina ` porta 80 da sua m´quina atrav´s da interface a a a a e ppp0.255.57. para que a outras m´quinas na sua rede possam acessar a Internet atrav´s dela. para ter cereza de que suas regras n˜o v˜o permitir inadvertidamente a a algo malicioso.inet2 em seu editor de o e a textos favorito e mudar a seguinte linha: .255.2.

0/24 sshd : 192.0.allow. Netfilter) n˜o est˜o funcionando corretamente. co 14.allow e /etc/hosts.7. vocˆ pode se concentrar em permitir o acesso a servi¸os para m´quinas.slackware. SEGURANCA ¸ IPV4\_FORWARD=0 .168. Muitas pessoas come¸ariam aceitando todas as conex˜es do localhost.2. Isso pode ser feito usando a seguinte regra (note que isso se apoia na veracidade da entrada de DNS reverso para a m´quina que est´ conectando. a Os acessos aos servi¸os protegidos pelos tcpwrappers podem ser controlados usando os arc quivos /etc/hosts. vocˆ poder´ usar c e a qualquer uma das duas regras a seguir: sshd : 192. se vocˆ recompilar o a a e kernel mas esquecer de incluir o suporte ao iptables. Isso pode ser feito no arquivo /etc/hosts.deny para a ´ barrar o acesso a todos os daemons como padr˜o. se existirem.168.0. o Informa¸˜es sobre como se inscrever nas listas de email do Slackware podem ser encontradas co na Se¸˜o 2.0..1 Para permitir o acesso ao SSHd a partir dos endere¸os 192. veja o NAT HOWTO. Isso pode trazer uma camada extra de seguran¸a quando controles de acesso por c IP (ex. Esses emails de notifica¸˜o de seguran¸a incluem detalhes ca c sobre como obter as vers˜es atualizadas dos pacotes do Slackware ou work-arounds. sua prote¸˜o no n´ de IP falhar´ mas ca ıvel a os tcpwrappers ainda o ajudar˜o a proteger o seu sistema.168.com 14.0/24. ou faixas de IP espec´ ıficos.130 CAP´ ITULO 14.2 tcpwrappers Os tcpwrappers controlam o acesso aos daemons de acordo com a aplica¸˜o. e e c a dom´ ınios. um email ´ mandado a todos c e os assinantes da lista atrav´s do endere¸o slackware-security@slackware. Relat´rios s˜o e c o a enviados sobre vulnerabilidades em qualquer parte do Slackware.3 14. que segue o mesmo formato.com.3. Tamb´m ´ poss´ restringir o acesso a m´quinas em certos dom´ e e ıvel a ınios.0. logo eu n˜o recomendaria seu uso em m´quinas conectadas a a a a a Internet): sshd : . A maioria das pessoas poder˜o ter uma unica linha em seus arquivos /etc/hosts. menos as relativas aos pacotes contidos no /extra ou no /pasture.0. ca . e n˜o de acordo ca a com o IP. Isso pode ser feito da c o seguinte forma: ALL : 127.1 Mantendo-se Atualizado Lista de emails slackware-security Sempre que um problema de seguran¸a afeta o Slackware. Essa linha ficaria assim: a ALL : ALL Quando isso ´ feito.para isso: IPV4\_FORWARD=1 Para mais informa¸˜es sobre NAT. Por exemplo..deny.

3./COPYRIGHT.tgz 6341417aa1c025448b53073a1f1d287d package-<ver>-<arch>-<rev>.14. mas ter˜o a seguinte forma /caminho/para/slackware-x.TXT: OK ./FAQ. $ md5sum package-<ver>-<arch>-<rev>.tgz Vocˆ dever´ comparar esse valor com o valor contido no arquivo CHECKSUMS./COPYING: OK . MANTENDO-SE ATUALIZADO 131 14.TXT: OK . Se e a a u um unico bit do arquivo tiver sido modificado. (Sim./CRYPTO_NOTICE. O md5sum(1) e e ´ um utilit´rio de linha de comando que cria uma ”chave”matem´tica ”´nica”para o arquivo. ele gerar´ um valor diferente de md5sum para ´ a o arquivo.3./ANNOUNCE. ´ uma boa id´ia verificar o md5sum do pacote.TXT: FAILED Como vocˆ pode ver. ca # md5sum -c CHECKSUMS.TXT: OK . e a Antes de instalar esses pacotes./ChangeLog.10_0: OK .x/patches/.2 O diret´rio /patches o Sempre que s˜o liberados pacotes atualizados para uma vers˜o do Slackware (normalmente a a para corrigir um problema de seguran¸a./BOOTING. a Se vocˆ tiver um arquivo com os valores md5sum nele. eles s˜o c o a a colocados no diret´rio /patches. qualquer arquivo com o md5sum correto ´ listado como OK enquanto e e os arquivos que est˜o com o md5sum incorreto s˜o listados como ”FAILED”.md5 . vocˆ pode usa-lo como fonte dos e e md5sum com a op¸˜o -c do comando md5sum. isso foi um a a insulto a sua inteligˆncia. no caso de vers˜es do Slackware j´ liberadas).txt: OK . Porque vocˆ mexeu comigo?) e e . O caminho completo para esses patches vai depender do mirror o que vocˆ estiver utilizando.md5 na raiz e a do diret´rio slackware-$VERSION (tamb´m contido no diret´rio /patches para os patches) ou o e o no email da lista slackware-security para o pacote em quest˜o.

132 CAP´ ITULO 14. SEGURANCA ¸ .

Esta forma b´sica de usar o programa de compress˜o mant´m um balanceamento a a e entre o tamanho final do arquivo e o tempo de compress˜o. Observe que nome do arquivo ser´ substitu´ por nome do arquivo. As extens˜es reconhecidas s˜o: . pois eles j´ est˜o em um formato a a a a a compactado. gunzip ´ de fato parte do gzip e ´ idˆntico a a e e e a gzip -d. a a a a a a Para descomprimir arquivos compactados com o gzip podem ser usados dois comandos. bzip2 quase sempre ir´ comprimir melhor que gzip. -gz. ou -Z.Z. enquanto que imagens jpeg. Em alguns casos. Isto pode ser uma grande vantagem para pessoas com conex˜es lentas. mas o arquivo n˜o ser´ t˜o compactado. Ele e a utiliza um algoritmo de compress˜o diferente do utilizado em gzip.2 bzip2 O bzip2 (1) ´ um programa de compress˜o alternativo instalado no Slackware Linux. Usando valores mais baixos na op¸˜o do ca comando. no diret´rio corrente.gz.gz ser´ retirada do nome do arquivo.gz Isto ir´ deixar.1 gzip O gzip(1) ´ o programa de compress˜o da GNU. . A compress˜o m´xima pode ser a a a obtida da seguinte maneira: $ gzip -9 nome_do_arquivo} Desta maneira a compress˜o do arquivo ser´ mais lenta. Dessa forma. arquivos mp3 a e outros arquivos como estes n˜o ser˜o t˜o compactados. gzip ir´ descomprimir qualquer arquivo com um extens˜o a a a reconhecida.z.gz// e ele geralmente ser´ menor que a o arquivo de entrada. isto a pode resultar em arquivos dramaticamente menores.Cap´ ıtulo 15 Arquivos Agrupados e Compactados 15. mas o arquivo resultante ser´ a a a t˜o pequeno quanto ogzip ´ capaz de comprim´ a e ı-lo. a ıdo a a a o Isto significa que nome do arquivo n˜o existir´ mais. . o que resulta em algumas a vantagens e algumas desvantagens. Tamb´m lembre-se que.gz. a compress˜o ser´ mais r´pida. :ˆ) 15. da seguinte forma: $ gunzip nome_do_arquivo. uma vez que o nome soa mais e legal assim. e a a Seu uso b´sico ´ como a seguir: a e $ gzip nome_do_arquivo a O nome do arquivo resultante ser´ nome do arquivo. -z. A primeira maneira ´ o a e executar gunzip(1) sobre um arquivo. Arquivos texto regulares ser˜o bem compactados. ao copiar um programa de um servidor o e 133 . e a o a a extens˜o . que s˜o na verdade um mesmo programa. gzip ´ geralmente pronunciado gunzip. A principal vantagem em favor de bzip2 ´ o tamanho do e arquivo compactado. somente existir´ sua c´pia comprimida. Ele recebe um arquivo e ent˜o o comprime. uma vers˜o descomprimida do arquivo de entrada.

e O uso de bzip2 ´ quase idˆntico ao uso de gzip. o que significa que o gunzip ser´ ca a a utilizado para descomprimir os arquivos. Vocˆ tamb´m poder´ encontrar a e e a tais pacotes com a extens˜o . uma boa regra de etiqueta na Internet pegar arquivos . Vocˆ a e pode obter todos os arquivos neste pacote utilizando o tar com alguns parˆmetros. de maneira que n˜o ser´ gasto muito tempo e e a a discutindo isso. e Neste caso. que s˜o explicadas na p´gina de manual co a a correspondente.gz. Ent˜o o que elas significam? A op¸˜o -x significa extrair. Neste contexto. Um a a pacote ´ comumente conhecido como um tarball. A op¸˜o -z diz ao tar para ca primeiro descomprimir o pacote nome do arquivo.gz com o gunzip. ´. A maneira mais comum para descomprimir e separar os arquivos de tais pacotes ´ a seguinte: e $ tar -xvzf nome_do_arquivo. A maioria desses pacotes ter˜o a extens˜o . O tar tem muitas op¸˜es de linha de comando. E perfeitamente aceit´vel n˜o usar esta op¸˜o se ela for algo que a a a ca lhe incomoda. Isto e significa que descomprimir um arquivo com bzip2 geralmente ser´ mais demorado e utilizar´ a a mais o processador do que o gzip o faria. ao inv´s de ser resumido. Como gunzip. ser˜o listados todos os arquivos e a ´ que est˜o sendo desagrupados. a co a ca Ela ´ importante.Z.3 tar tar (1) ´ o arquivador em fita da GNU (as fitas j´ foram a principal m´ e a ıdia para armazenar grandes volumes de dados!). ARQUIVOS AGRUPADOS E COMPACTADOS FTP p´blico. pois o pacote resultante ´ menor.bz2 em algum lugar.134 CAP´ ITULO 15. A principal diferen¸a na pr´tica ´ e e c a e que bzip2 usa a extens˜o .tar. Na escolha de um programa de compress˜o a ser a usado. Isto significa que v´rios arquivos foram agrue a pados utilizando-se o tar e ent˜o compactados com o gzip. E finalmente. bunzip2 ´ idˆntico a bzip2 -d. Isto lhe o ´ e permite comprimir uma ´rvore de diret´rio inteira. O -v o significa ser detalhado.bz2 em vez u e de arquivos .bz2. em geral. vocˆ pode encontr´-lo expresso assim: o e a . mas ´ geralmente a a e encontrada em sistemas Unix mais antigos. Esta extens˜o significa a mesma coisa. arquivar significar agrupar e comprimir um conjunto de arquivos para transferˆncia ou armazenamento.tar. Como vocˆ pode ter imaginado. A desvantagem de bzip2 ´ que ele utiliza mais recursos de processamento do que o gzip. n´s dividiremos o pacote separando de volta os arquivos que foram agrupados. a co Existem algumas outras maneiras de se escrever este comando. vocˆ precisa considerar o tempo de compress˜o e o tamanho do arquivo compactado e e a determinar o que ´ mais importante. Esta se¸˜o ir´ abordar apenas os casos mais comuns de uso do tar. ca a O uso mais comum para o tar ´ extrair (descomprimir e desagrupar) um pacote que vocˆ e e copiou de um servidor WEB ou FTP. a $ $ $ bzip2 nome_do_arquivo bunzip2 nome_do_arquivo. De outra forma. o que ´ imposs´ apenas utilizando gzip ou a o e ıvel bzip2. O tar recebe como entrada v´rios e a arquivos ou diret´rios e cria um unico grande arquivo. tamb´m chamado de pacote. j´ que isto resulta em uma menor sobrecarga. Dessa forma.tar. vocˆ pode encontrar um pacote com e a extens˜o . Em sistemas mais antigos carentes de uma c´pia decente do GNU tar. a op¸˜o ca -f indica ao tar que a pr´xima seq¨encia de caracteres na linha de comando representa o nome o u do arquivo sobre o qual ele executar´ as opera¸˜es. vocˆ poderia usar -vv para a execu¸˜o ser muito mais detalhada e ca e listar ainda mais informa¸˜es sobre cada arquivo sendo extra´ co ıdo. O c´digo fonte do kernel (n´cleo do sistema operacional) a o u ´ distribu´ desta forma.gz S˜o absolutamente poucas op¸˜es.gz.bz2 bzip2 -9 nome_do_arquivo 15.tar. e ıdo e e esse pacote resulta de v´rios arquivos compactados com o bzip2 e agrupados com o tar. Por outro lado. ajudando assim as generosas a pessoas que hospedam o servidor. uma vez que diz exatamente para o tar o que fazer com o arquivo de entrada.tar. Para se a desempacotar um tarball utiliza-se a op¸˜o -z como parˆmetro.

Na maioria dos casos isto ´ t˜o f´cil quanto e e a a remover a op¸˜o -x e substitu´ pela op¸˜o -c. Sem isso.tar.gz ser´ o a nome do pacote que vocˆ quer criar.gz cd $HOME tar -xvzf /tmp/nome_do_arquivo. o que ´ geralmente e ıda ıda a e desej´vel para redirecionamento da sa´ do tar para outro programa. Ent˜o.gz -C $HOME Todos os comandos acima s˜o equivalentes.gz Vocˆ tamb´m pode encontrar um pacote compactado com bzip2.gz . .tar. A vers˜o do tar que vem e e a com o Slackware Linux pode manipular esses pacotes assim como os compridos com gzip.tar. Em cada caso.tar.gz cd / tar -xvzf /tmp/nome_do_arquivo. tar -xvzf nome_do_arquivo.3. o comando tar envia sua sa´ para a sa´ padr˜o. Segundo. o a se vocˆ tem um pacote em /tmp que vocˆ quer extrair no seu diret´rio pessoal.bz2 ´ E importante notar que o tar colocar´ os arquivos extra´ a ıdos no diret´rio corrente. Uma vez que o gzip a ıda escrever´ sua sa´ na sa´ padr˜o se assim lhe for inidicado. nome do arquivo. Ele ir´ desagrupar a a o fluxo de dados que receber do gzip. TAR 135 $ gunzip nome_do_arquivo. Sendo assim. O .gz | tar -xvf - Este comando ir´ descomprimir o arquivo e enviar a sa´ para o tar. o comando tar tamb´m cuida disso.tar. ca ı-la ca $ tar -cvzf nome_do_arquivo.gz . e Terceiro. ıda Outra maneira de escrever o primeiro comando ´ retirando-se o tra¸o que vem antes das e c op¸˜es. os arquivos do pacote s˜o exa a tra´ ıdos em seu diret´rio pessoal e o pacote original compactado permanecer´ em seu lugar o a inicial.tar.15.tar. vocˆ deve usar -j : a ca e $ tar -xvjf nome_do_arquivo. escrevendo a sa´ no disco. Ao contr´rio da op¸˜o -z. e N˜o ´ sempre necess´rio especificar a op¸˜o -f.tar. existem poucas e e o op¸˜es. fazendo com que a seja praticamente imposs´ sua leitura por outra pessoa al´m daquela que conhece a chave ıvel e secreta. vocˆ poderia especificar o caminho para o pacote na linha de comando. como a seguir. mas de qualquer maneira ´ uma boa pr´tica a e a ca e a fazˆ-lo. vocˆ pode usar a op¸˜o -C para explodir o pacote em um determinado diret´rio. a op¸˜o -c diz ao tar para agrupar os arquivos criando um pacote. a ıda $ tar -cv . Primeiro. o que adiante ser capaz de extrair estes pacotes se vocˆ n˜o ´ capaz de criar um e a e deles? Bem. poderia-se mover o pacote para o seu diret´rio pessoal e ent˜o executar o co o a tar sobre ele. e ca o $ $ $ $ $ $ $ cd $HOME cp /tmp/nome_do_arquivo. | gpg --encrypt Este comando cria um pacote n˜o compactado que agrupa o conte´do do diret´rio corrente e a u o ent˜o redireciona esse pacote para o gpg que criptografa e comprime o pacote. este comando escrever´ o arquivo a ıda ıda a a descompactado na sa´ padr˜o. como a seguir: co $ tar xvzf nome_do_arquivo. O redirecionamento (|) ent˜o envia esta sa´ para o tar para ıda a a ıda desagrupamento. Neste comando.tar. enquanto ca que a op¸˜o -z executa o gzip sobre o pacote para comprim´ ca ı-lo.indica para o comando operar sobre a entrada padr˜o.

zip. Vocˆ tamb´m pode recursivamente comprimir os subdiret´rios existentes: e e o $ zip -r teste * Bem como. controlar o tamanho do arquivo compactado.zip automaticamente. e o de descompress˜o ´ denominado unzip(1). existem dois utilit´rios que podem ser usados em arquivos zip. de forma que n˜o h´ necessidade de inclu´ no a a a a ı-la nome do arquivo. O arquivo de compress˜o ´ denominado zip(1).zip. co . descomprimir arquivos tamb´m ´ f´cil. a e a e $ zip teste * Isto criar´ o arquivo teste. excluir arquivos. Estes arquivos s˜o a a muito comuns no mundo Windows.zip Isto ir´ extrair todos os arquivos e diret´rios no arquivo teste.4 zip Por fim. de maneira que o Linux tem programas para lidar com eles. a o Os utilit´rios zip tˆm v´rias op¸˜es avan¸adas para criar pacotes que podem se extrair a e a co c automaticamente. e e a $ unzip teste. que ir´ conter todos os arquivos do diret´rio corrente. Veja as p´ginas de manual dos comandos zip e unzip para descobrir a a como usar essas op¸˜es.136 CAP´ ITULO 15. O zip a a o adicionar´ a extens˜o . mostrar o que acontecer´ e muito mais. ARQUIVOS AGRUPADOS E COMPACTADOS 15.

Cap´ ıtulo 16 Vi O vi(1) ´ o programa editor de texto padr˜o do Unix. incluindo vi. formata¸˜o de c´digo. menus destac´veis e caixas de di´logo.est˜o dispon´ a ıveis se vocˆ tiver os pacotes apropriados instalados. co a De qualquer maneira. H´ algumas vers˜es (ou clones) do vi a a e a o dispon´ ıveis. Outras vers˜es .1 Iniciando o vi O vi pode ser iniciado a partir da linha de comando de v´rias maneiras. e o vim. a vers˜o padr˜o do vi dispon´ ´ o elvis. ele permanece sendo o editor de texto mais universal do Unix e sistemas derivados. A mais simples dela a ´ apenas: e $ vi Uma sess˜o do vi. a a a a 16. ıvel ca ca No Slackware Linux.incluindo o a a ıvel e o vim e o gvim . logo. um poderoso ca o mecanismo de busca e substiui¸˜o. Ao menos um destes est´ dispon´ a ıvel em qualquer vers˜o do Unix. desenvolvedores web e afins. a a a O vi inclui diversos recursos como o destaque de sintaxe. Administradores de sistema v˜o apreciar a a poss´ automa¸˜o e integra¸˜o com o shell. a 137 . macros e outros. a Todas estas vers˜es incluem os mesmos recursos e comandos b´sicos. Estes recursos o fazem especialmente atraca tivo para programadores. Com a variedade de editores de texto inclusos nas distribui¸˜es do Linux e variantes do Unix atualmente. muitas pessoas n˜o utilizam mais o vi. ´ ainda algo que vale a pena. elvis. aprender a usar um o a clone deve facilitar o aprendizado de outro. e apesar de que domin´-lo n˜o seja e a a a t˜o essencial quanto j´ foi. assim como no Linux. O gvim ´ uma e e vers˜o gr´fica do vim que inclui barras de tarefas.vile. Dominar o vi significa que vocˆ nunca mais se sentar´ diante de uma m´quina Unix e a a e n˜o se sentir´ confort´vel com pelo menos um poderoso editor de texto.

conf poderia ser aberto da seguinte maneira: $ vi /etc/resolv. vocˆ ver´ uma tela com quase nada a e a escrito. esperando alguma a¸˜o sua. VI Isto ir´ iniciar o vi com um buffer vazio. N´s discutiremos esta e ca c ca o outras combina¸˜es mais adiante. Por exemplo. vocˆ poderia iniciar o vi na linha 47 do arquivo /usr/src/linux/init/main.c e da seguinte maneira: . O vi est´ agora no modo de comando. co Vocˆ tamb´m pode inciar o vi com um arquivo pr´-existente. veja a se¸˜o 16. Se a co a houve modifica¸˜es. Neste ponto. Para finalizar a sess˜o e sair do vi. este comando ir´ adverti-lo e lhe dizer como ignor´-las.conf E finalmente. Por exemplo. o arquivo e e e /etc/resolv. o vi pode ser iniciado em uma linha particular de um arquivo. Para uma discuss˜o a ca a dos diversos modos do vi.138 CAP´ ITULO 16. digite o seguinte: ca a :q Assumindo que n˜o tenha havido modifica¸˜es no arquivo. Isto ´ especiale mente util para programadores quando uma mensagem de erro inclui a linha na qual houve o ´ erro. este comando ir´ fechar o vi.2. Ignorar modificaco a a co ¸˜es usualmente significa anexar um ponto de exclama¸˜o ap´s o q resultando em: ca o :q! O ponto de exclama¸˜o usualmente significa for¸ar alguma a¸˜o.

INSERT –”´ ca e e mostrado no inferior da tela (note que isto n˜o acontece em todos os clones do vi). Para uma descri¸˜o dos a ca ca ca v´rios comandos. A partir deste modo. pesquisar. O cursor muda de formato. No caso a a em que vocˆ especificar uma linha que esteja ap´s o final do arquivo. enquanto que a letra q diz ao vi para encerrar a sess˜o a e sair. Estes a u comandos n˜o tem dois-pontos antes deles. como explicado anteriormente. Para copiarmos a linha corrente . a a Por exemplo. Para voltar ao a a modo de comando. mover-se pelo arquivo.1 Modo de Comando Ao entrar no vi vocˆ ´ primeiramente colocado no modo de comando. para apagarmos uma linha de um arquivos digitamos dd. O texto que segue ser´ apenas uma introdu¸˜o ao modo de comando.2. o n´mero diz ao vi quantas vezes executar o comando a u dado. vocˆ ´ colocado dentro do modo de comando. Vocˆ pode rapidamente alternar ca e ca e entre os modos com uma variedade de combina¸˜es de teclas. veja se¸˜o 16. 16.2 Modos O vi opera em v´rios modos. Por e a exemplo. pressione a tecla ESCAPE. Aqui est´ uma simples listagem de como as teclas s˜o usadas para mover-se pelo a a arquivo: h j k l move-se move-se move-se move-se um caractere ` esquerda a para um caractere abaixo para um caractere acima um caractere ` direita a Simplesmente pressione uma tecla para mover-se. Por exemplo. Em geral. que s˜o explicadas abaixo. u Muitos dos comandos que vocˆ usar´ no modo de comando iniciam-se com dois-pontos. vocˆ e e e pode usar as setas do teclado para mover-se. ee vocˆ n˜o pode digitar texto ou editar algo que j´ esteja na tela diretamente.7. e -. o O modo de comando tamb´m pode ser usado para copiar e colar.16. Como vocˆ ver´ posteriormente. Vocˆ pode combinar um n´mero com as teclas de movimento para mover-se por v´rios e u a caracteres de uma s´ vez. que s˜o usados para cumprir v´rias tarefas. A edi¸˜o de texto ´ feita em modo de inser¸˜o. Em alguns sistemas. Os dois-pontos simplesmente indicam que trata-se de um comando. De l´. vocˆ pode precisar usar as e teclas hjkl. estas e a teclas podem ser combinadas com um n´mero para mover-se de forma mais eficiente. sem ter que procurar por ele.c O vi mostrar´ o arquivo especificado e ir´ colocar o cursor na linha especificada. vocˆ pode lan¸ar e e e c diversos comandos para manipular texto. e geralmente s˜o usados para manipular o texto. Quando vocˆ a a a e inicia o vi. pois eles podem pular exatamente ´ e ´ para o local no arquivo no qual ocorreu um erro.2. sair. que em portugues significa ”arrancar”. MODOS 139 $ vi +47 /usr/src/linux/init/main. e alternar entre os outros modos. Deste ponto. O modo de comando ´ tamb´m usado ao mover-se pelo arquivo. fechar. Para copiar um trecho do texto usamos a tecla y (y vem da palavra inglesa yank. 10k moveria o cursor 10 linhas acima na tela. co a 16. inserir texto e ler outros e arquivos no buffer corrente. vocˆ e a a e pode manipular o texto. Em outros sistemas. salvar. todas a a os caracteres digitados s˜o enviados ao buffer corrente e s˜o mostrados na tela. teclamos :q. a Provavelmente o comando mais usado no modo de comando ´ a alterna¸˜o para o modo de e ca inser¸˜o. Isto ir´ remover a a linha na qual est´ o cursor. salvar. ”extrair”). carregar novos arquivos e muito mais. para sair. Outros comandos s˜o formados por um n´mero opcional. Isto ´ feito pressionando-se a tecla i. Lan¸ando o comando 4dd diria ao vi para remover a linha na qual a c est´ o cursor e as 3 seguintes. Entretanto. o vi colocar´ o cursor na e o a ultima linha. Isto ´ especialmente util para programadores. seguido por uma letra.

O texto ´ colado na linha posterior ` linha corrente.3 Abrindo Arquivos O vi permite que vocˆ abra arquivos a partir do modo de comando assim como se especifica e a abertura de um arquivo pela linha de comando. seguido por um espa¸o e o nome do arquivo que cont´m o texto a ser inserido.140 CAP´ ITULO 16. todo e ca a o texto que vocˆ digita ´ enviado ao buffer corrente. Pressionando-a novamente vocˆ ser´ enviado ao modo e a ca e a de inser¸˜o. VI teclamos yy. vocˆ pode continuar o e pesquisando pelo termo simplesmente pressionando a tecla / seguida de um enter. Por exemplo. Ler texto de outro arquivo ´ um procedimento simples. Para abrir o arquivo /etc/lilo. a e assim como comandos complicados de busca e substitui¸˜o que usufruem de uma poderosa ca vers˜o de express˜es regulares. Apenas digite o a e a novo caractere e ele substituir´ o caractere que est´ sob o cursor pelo caractere digitado. e co a a Vocˆ ainda pode abrir o arquivo sem salvar o buffer corrente digitando :e!. Como discutido anteriormente. Da linha de comando. e a Para cortar uma parte do texto digitamos dd. e este comando pode ser prefixado com um n´mero para extrair mais linhas. seguido de um espa¸o e c . Uma completa discuss˜o sobre express˜es regulares est´ al´m a o a o a e do escopo deste cap´ ıtulo.conf : :e /etc/lilo. A substitui¸˜o de texto pode ser feita de algumas maneiras.2 Modo de inser¸˜o ca A inser¸˜o e substitui¸˜o de texto ´ feita no modo de inser¸˜o. e a tecla p pode ser usada para colar o texto recortado novamente no arquivo. pressionandoca se a tecla r permitir´ que vocˆ substitua um caractere que est´ sob o cursor. digitamos ?the. seguida do texto pelo qual vocˆ est´ e e a procurando. mova-se para o local para o qual o texto extraido deve ser copiado e pressione a tecla a p. esta se¸˜o cobrir´ somente simples meios de pesquisa. vocˆ ser´ levado ao modo e a de inser¸˜o. a ”therefore”. O vi ir´ fazer a pesquisa do ponto em que est´ o cursor at´ o fim do arquivo. Ao pression´-la pela primeira a ca ca a vez vocˆ estar´ no modo de substitui¸˜o. u Ent˜o. 16. Pressionando-se a tecla R a a vocˆ poder´ substituir quantos caracteres vocˆ quiser.2. Para sair deste modo de substitui¸˜o. logo. Note que buscas inexatas ir˜o fazer a com que o vi pare. o vi ir´ reclamar. a ca ca Pressionando-se a tecla INSERT a partir do modo de comando. Pressionar a tecla ESCAPE lhe levar´ e e a ao modo de comando. e Apenas digite :r. Ent˜o. a a e parando no momento em que a pesquisa for satisfeita. Isto acontece porque todas estas palavras contˆm o trecho e de pesquisa ”the”. e a e ca apenas tecle ESCAPE para retornar ao modo de comando. c e O conte´do do arquivo ser´ colado no buffer corrente na linha ap´s a que se encontra o cursor. Vocˆ a a e ser´ ent˜o imediatamente mandado devolta ao modo de comando. a tecla INSERT servir´ como ca e ca a uma tecla de alternˆncia entre o modo de inser¸˜o e substitui¸˜o.conf Se vocˆ tiver feito altera¸˜es no buffer corrente que n˜o tenham sido salvas. Ainda h´ outra maneira de se alternar entre o modo de inser¸˜o e o de substitui¸˜o. Ap´s o vi encontrar o primeiro termo que casa com o termo de pesquisa. uma busca por ”the” ir´ fazer com que o vi pare em ”then”. O uso final que ser´ mostrado ´ a pesquisa. ca a Uma simples busca ´ feita pressionando-se a tecla /. ca 16. ca ca e ca vocˆ pode ir para o modo de inser¸˜o pressionando a tecla i no modo de comando. u a o Os clones mais sofisticados do vi tamb´m cont´m complementa¸˜o de nome de arquivo similiar e e ca a ` do shell. O modo de comando permite pesquisas simples. Vocˆ tamb´m e e pode pesquisar se o termo de pesquisa existe em algum trecho anterior ` localiza¸˜o do cursor a ca substituindo a barra pelo caractere ?. Por exemplo. e em outras palavras. Uma vez que vocˆ se encontra no modo de inser¸˜o. para procurar por ”the” em algum ponto anterior ao cursor.

4. ´ e c Alguns clones do vi (por exemplo. da seguinte e ca o ca forma: :w! Entretanto. a e e co Isto significa que a c´pia tempor´ria existir´ para o caso de haver algum problema. vocˆ ca a o e e ´ jogado de volta para dentro do modo de comando. e a a ca muitos destes comandos lembram o Emacs O melhor lugar para procurar por estes comandos seria a p´gina de manual do seu clone do vi. Note que muitos clones n˜o suportam a id´ia de a a e divis˜o de tela. Ap´s vocˆ ter salvado o arquivo. vocˆ poderia digitar: e :w bah Uma vez que vocˆ tenha salvado o arquivo pela primeira vez. voltando ao shell. a Se por acaso. H´ v´rios comandos para manipula¸˜o da tela dividida. para abrir o arquivo 09-vi.sgml O novo arquivo ´ exibido na metade superior da tela. vocˆ pode fazˆ-lo simplesmente digitando e!. caso vocˆ a e a a e esteja tentando editar um arquivo que seja de outro usu´rio). Este arquivo ´ usualmente nomeado de forma similar ao arquivo aberto. uma larga quantia do seu trabalho n˜o salvo pode ser recuperada. para salv´-lo novamente basta e a digitar :w. as advertˆncias do vi podem ser suprimidas adicionando-se e um ponto de exclama¸˜o no final do comando. co Pode acontecer da sua m´quina ou o vi travarem. O elvis a tamb´m lhe enviar´ um e-mail informando da existˆncia de uma c´pia de backup. SALVANDO ARQUIVOS 141 e do nome do arquivo. ambos elvis e o vim tentam a minimizar os danos. Se vocˆ realmente quiser editar o arquivo. a a e a a 16. ıcio Este arquivo tempor´rio ´ removido uma vez que o editor ´ encerrado sob condi¸˜es normais. Isto ´ e e e e particularmente util caso vocˆ tenha bagun¸ado o arquivo de alguma maneira e queira reabri-lo. Qualquer altera¸˜o ser´ gravada no arquivo. Quando o a a vocˆ voltar a editar o arquivo novamente. vocˆ quiser salvar um arquivo cujas permiss˜es sejam apenas de leitura. Vocˆ tamb´m pode encerrar a sess˜o sem salvar a e e a as altera¸˜es feitas no arquivo com o comando :q ou (mais comum) com o comando :q!. Isto faz com que o arquivo seja oculto. que ir´ salvar o buffer corrente e e a para o arquivo antes de encerrar a sess˜o.5 Encerrando o vi Uma maneira de encerrar o vi ´ atrav´s do comando :wq. haver´ casos em que vocˆ n˜o poder´ gravar no arquivo (por exemplo. e a e o . vocˆ a ıvel e e ter´ que edit´-lo como usu´rio root ou (de preferˆncia) como o usu´rio dono do arquivo. a a a e a 16.4 Salvando Arquivos H´ algumas maneiras de se salvar arquivos no vi. vocˆ podeira digitar :wq. Entretanto. Por exemplo. Ambos os editores salvam ocasionalmente o buffer aberto para um aquivo tempor´rio. mas n˜o desejar salvar as e e a altera¸˜es feitas. o vi ir´ a a lhe dizer que n˜o foi poss´ salvar o arquivo. Que diz ao vi para salvar o buffer ca e corrente para o arquivo e encerrar a sess˜o. eu poderia digitar: a :split \~{}/09-vi.sgml que est´ no meu diret´rio home a o enquanto outro arquivo est´ aberto. Em geral. vocˆ ser´ questionado sobre qual a¸˜o tomar. Quando isto acontecer. ent˜o vocˆ pode n˜o estar apto a utiliz´-la. Se vocˆ quiser salvar o arquivo e encerrar e e o vi (uma opera¸˜o muito comum). vocˆ e o e poderia fazˆ-lo adicionando um ponto de exclama¸˜o ap´s o comando de grava¸˜o. e o arquivo que j´ estava aberto ´ e a e exibido na metade inferior da tela.16. o vim) permitem que m´ltiplos buffers sejam abertos ao u mesmo tempo. A co segunda maneira ´ utilizada quando vocˆ tiver modificado o arquivo. Se vocˆ quiser salvar o buffer corrente a e para o arquivo bah. mas com a e um ponto no in´ do nome. ca Se vocˆ quiser reabrir o arquivo corrente. Na e e a ca maioria dos casos.

16. tudo o que vocˆ e a e e precisa fazer ´ setar a vari´vel de ambiente VISUAL para o editor de sua preferˆncia. verifique a p´gina de manual ou o site do seu editor vi co a predileto. macros. VI 16. A discuss˜o de todas essas op¸˜es e as diferen¸as entre os editores ´ um assunto muito a co c e complicado. e outros mais).bash profile e a ou . o A maioria dos comandos de configura¸˜o que podem ser digitados no modo de comando. Alguns destes j´ foram ca e e a a discutidos anteriormente no cap´ ıtulo. e muito mais. podem ca ser colocados no arquivo de configura¸˜o. substitui¸˜es ca co ca co textuais. k. a Uma variedade de comandos podem ser dados no modo de comando para configurar o vi do jeito que vocˆ gosta. Muitos programas comuns do Linux carregar˜o um arquivo texto no vi por padr˜o. No elvis seria o arquivo . direita h. a Movimento Opera¸˜o ca Tecla esquerda. e mais. Vocˆ tamb´m pode checar o livro e e da O’Reilly chamado Learning the //vi Editor// escrito por Lamb e Robbins. Por a a exemplo. enquanto que no vim seria o arquivo . Dependendo do seu editor. globalmente Localizando Tecla dd 5dd r x 10x u J %s’velho’novo’g . Para e a e maiores informa¸˜es sobre como setar vari´veis de ambiente. l Para o fim da linha $ Para o in´ da linha ıcio ˆ Para o fim do arquivo G Para o in´ do arquivo ıcio :1 Para a linha 47 :47 Editando Opera¸˜o ca Removendo uma linha Removendo cinco linhas Substituindo um caractere Removendo um caractere Removendo dez caracteres Defazer a ultima a¸˜o ´ ca Unir linhas atual e seguintes Substituir velho por novo. vocˆ pode habilitar recursos para facilitar a e e programa¸˜o (como o destaque de sintaxe. ou algo similar. abaixo. Se vocˆ deseja ter certeza de que o seu editor ser´ o padr˜o toda e a a vez que vocˆ logar-se. veja a se¸˜o chamada Vari´veis co a ca a de Ambiente no cap´ ıtulo 8. Alguns editores (como o vim) possuem uma extensa documenta¸˜o dentro do editor ca que pode ser acessada com o comando :help. auto-identa¸˜o. j.142 CAP´ ITULO 16.6 Configura¸˜o do vi ca O seu clone do vi pode ser configurado de v´rias maneiras. a a Se vocˆ n˜o gosta do vi e gostaria que outro editor fosse iniciado ao inv´s dele. acima. Isto inclui informa¸˜es de configura¸˜o. habilitar substitui¸˜es textuais. co Quase todos estes comandos podem ser colocados dentro de um arquivo de configura¸˜o no ca seu diret´rio home.bashrc. ao se editar as tarefas agendadas do sistema (crontabs) ser´ iniciado o vi por padr˜o. configurar macros ca ca para automatizar tarefas. Para maiores informa¸˜es. enquanto outros n˜o.exrc.vimrc. adicione sete a vari´vel VISUAL dentro dos seus arquivos .7 Comandos do Vi Esta se¸˜o ´ uma referˆncia r´pida aos comandos mais comuns do vi.

7. COMANDOS DO VI 143 Opera¸˜o ca Procurar por asdf Procurar atr´s por asdf a Repetir a ultima busca para frente ´ Repetir a ultima busca para tr´s ´ a Repetir a ultima busca. sem sair Recarregar o arquivo atualmente aberto Salvar o buffer para um arquivo asdf Abrir o arquivo hejaz Ler o arquivo asdf dentro do buffer Ler a sa´ do comando ls dentro do buffer ıda ’ Tecla /asdf ?asdf / ? n N Tecla :q :q! :wq :w :e! :w asdf :e hejaz :r asdf :r !ls . na mesma dire¸˜o ´ ca Repetir a ultima busca. na dire¸˜o oposta ´ ca Salvando e Saindo Opera¸˜o ca Sair Sair sem salvar Salvar e sai Salvar.16.

144 CAP´ ITULO 16. VI .

Atualmente. como e o vi. De fato. o Emacs ´ um proe e e grama com quase infinitas capacidades. Muitos destas s˜o relacionados ` edi¸˜o de texto. c a a a 17. (Apesar de ser not´vel que os co co a comandos raramente se correspondem.2). a ca 145 . o Emacs n˜o ´ mais somente um editor. recortar e colar. que ´ uma linguagem de programa¸˜o muito poderosa que tem a caracter´ e ca ıstica peculiar de que todo programa escrito nela ´ automaticamente um compilador Lisp em si.Cap´ ıtulo 17 Emacs Enquanto o vi (juntamente com seus clones) ´ sem d´vida o editor mais presente em sistemas e u derivados do Unix. e de fato escrever programas inteiramente novos no Emacs. o Emacs e co ca ir´ primeiramente mostrar uma mensagem de boas vindas.1 Iniciado o Emacs O Emacs pode ser inciado no shell simplesmente digitando-se emacs. O XEmacs foi iniciado como um projeto para limpar e arrumar o c´digo fonte do Emacs. Na inicializa¸˜o. Isto significa que e o usu´rio pode estender o Emacs. O Emacs vem em segundo lugar. O ultimo n˜o ´ uma vers˜o do Emacs para rodar sob o X. Se vocˆ estiver rodando e o X. (veja se¸˜o 17. Existem por a a exemplo alguns programas de planilhas eletrˆnicas para o Emacs. base de dados.) Tamb´m diferentemente do vi. da mesma forma co que vocˆ pode usar combina¸˜es das teclas Control e Alt em um outro processador de textos e co e em muitas outras aplica¸˜es afim de executar certas fun¸˜es. ´ a e a ambos Emacs e XEmacs rodam no console assim como sob o X. Para o cap´ ıtulo presente. O Emacs ´ (em sua maior parte) escrito em linguagem e Lisp. e h´ de fato muita intera¸˜o entre os dois times de a a ca desenvolvimento. ent˜o enquanto muitas aplica¸˜es modernas utilizam a co Ctrl C / X/ V para copiar. etc. jogos. clientes o de e-mail e not´ ıcias (sendo o Gnus o mais famoso deles). Ao inv´s de usar diferentes ”modos”. H´ muitos pacotes adicionais a e a para o Emacs dispon´ ıveis (o c´digo fonte do programa vem com o programa) que provˆem o e todas as esp´cies de funcionalidades. ´ indiferente se vocˆ usa o Emacs ou o XEmacs. que ´ e a a ca e dentre todas as demais. a Como resultado disto. as e e diferen¸as entre eles n˜o s˜o relevantes para o usu´rio final. ambas as vers˜es o o est˜o sendo ativamente desenvolvidas. usualmente com uma barra de a o menu no topo. a tarefa b´sica do Emacs mas que n˜o se limitam a isto. o Emacs utiliza teclas diferentes e atualmente um mecanismo um tanto quanto diferente para isto. e ent˜o ap´s alguns segundos ele ir´ a a o a jog´-lo no *scratch* buffer. que ´ um (excelente) editor e nada mais. ele utiliza combina¸˜es das teclas Control e Alt para dar comandos. onde vocˆ pode encontrar as fun¸˜es mais importantes. o Emacs ir´ (normalmente) surgir com sua pr´pria janela. Existem duas vers˜es principais do Emacs: O GNU Emacs (que ´ a vers˜o que vem com o o e a Slackware) e o XEmacs.

o Emacs ir´ perguntar a a e a pelo nome do arquivo no minibuffer. Ent˜o ca e a C x significa Control x. quando vocˆ abre um arquivo. A tecla Meta desapareceu dos a teclados dos computadores. A primeira significa a e Control x seguida de Control b. EMACS Vocˆ tamb´m pode iniciar o Emacs com um arquivo existente digitando e e $ emacs /etc/resolv.´ usada ao inv´s de A porque e e originalmente n˜o existia a tecla Alt e sim a tecla Meta. 17. Este a e e buffer consiste de apenas uma linha. e M. vocˆ pode digitar texto normalmente. Por exemplo.2 Buffers No Emacs. enquanto a segunda significa Control x seguida apenas de ’b’.letra. mas s˜o usados para outras coisas.1. mas o texto que ´ digitado n˜o ´ e e a e salvo quando o Emacs ´ fechado. Todo arquivo que vocˆ abre ´ carregado em e e e seu pr´prio buffer. o conceito de buffers ´ essencial. e a No *scratch* buffer. A Mudan¸a de um buffer para outro pode ser feita com c . o Emacs utiliza combina¸˜es das teclas Control e Alt para coco mandos.x significa Alt x. e este ´ o minibuffer. A conven¸˜o usual ´ escrever estes com C letra e M. o buffer que o Emacs mostra quando ´ c e primeiramente inciado. e co C x C c (que ´ Control x seguida de Control c) encerra o Emacs. C x C ssalva o arquivo e atual. O minibuffer ´ onde o Emacs mostra e mensagens para o usu´rio. e H´ um outro buffer especial sobre o qual vocˆ precisa saber. Por exemplo.1 Teclas de Comando Como mencionado acima. e ´ tamb´m o lugar onde os comandos. (A letra M. s˜o executados. pulando a mensagem a de boas vindas. o Emacs possui alguns buffers especiais. 17.146 CAP´ ITULO 17. respectivamente.) a ca Muitos comandos do Emacs consistem de sequˆncias e combina¸˜es de teclas. abaixo da barra de status para o buffer em uso. Mantenha em mente que C x C b n˜o ´ o mesmo que C x b. e no Emacs a tecla Alt tomou ent˜o a sua fun¸˜o. que requerem alguma entrada a e e do usu´rio.conf Isto far´ com que o Emacs carregue o arquivo especificado quanto inciar. e est´ sempre na tela: ele ´ a ultima linha da janela do a e ´ Emacs. Tais buffers especiais usualmente tˆm um nome a e que come¸a e termina com um asterisco. que n˜o cont´m um o e a e arquivo. ´ o t˜o famoso *scratch* buffer. Por exemplo. Al´m disto.

modo latex (latex-mode) para edi¸˜o de arquivos latex. Isto ir´ question´-lo sobre o nome de um buffer (o nome de um buffer ´ a a e geralmente o nome do arquivo que vocˆ est´ editando nele). a tecla Tab identa a linha atual de acordo com a pronfundidade ca do bloco no qual a linha se encontra. modo mail ca ca (mail-mode) para edi¸˜o de e-mail. a Um modo secund´rio provˆ recursos adicionais que podem ser uteis para certas tarefas de a e ´ edi¸˜o. mensagens e etc. MODOS 147 o comando C x b. Por exemplo. Tamb´m a ´ e a e ´ poss´ para um modo. a redefini¸˜o de teclas e comandos. e ıvel ca a tecla Tab simplesmente pula para a pr´xima tabula¸˜o e p´ra. e a a Se vocˆ deseja ir para outro buffer que n˜o seja o padr˜o sugerido pelo Emacs. modo sh (sh-mode) para ca edi¸˜o de shell scripts. um modo. Cada buffer tem exataa mente um modo principal.q para preencher um par´grafo. se e houver algum que aqueles buffers listados estejam visitando. vocˆ teria que digitar M. que faz o que vocˆ sup˜e que fa¸a. Os modos mencionados acima s˜o chamados de modos principais. seus tamanhos e modos. ou criado.3. existe e o modo texto (text-mode) para arquivos normais de texto.17.) 17. a . por´m existem tamb´m modos tais e e como o modo c (c-mode) para edi¸˜o de programas escritos em C.3. Nota: Sob o X. o e e buffer atual. Vocˆ pode sair desta tela dividida e digitando C x 1. Este modo ´ muito diferente da id´ia e e de modos do vi: um modo lhe diz em que tipo de buffer vocˆ se encontra. Por exemplo. O Emacs ir´ ent˜o completar o nome do buffer. preechendo algum a e caminho padr˜o para vocˆ (que ´ usualmente ˜/ ). a lista de buffers tamb´m est´ dispon´ no menu Buffer na barra de menu. digite: C-x C-f O Emacs ir´ lhe perguntar o nome do arquivo que vocˆ deseja abrir. Este buffer cont´m uma lista de todos os buffers. o Emacs ir´ abrir o arquivo em um novo buffer e mostrar este buffer na tela. mostrando o buffer no qual vocˆ estava trabalhando na a e metade superior da tela. A completa¸˜o com a tecla Tab a a ca funciona em todas as partes do Emacs em que ela fa¸a sentido. (Que e a vocˆ pode tamb´m utilizar para reformatar um par´grafo ap´s ter editado algum texto e ele e e a o tenha deixado de ser preenchido. Ap´s vocˆ digitar o nome do arquivo que a e e o e deseja abrir (vocˆ tamb´m pode usar aqui a tecla Tab para completar) e pressionar a tecla e e ENTER .3 Modos Todo buffer no emacs tem a si associado. basta que e a a vocˆ digite o nome do buffer desejado. um buffer pode ter um ou mais modos secund´rios. not´ ca ıcias. Por exemplo. Vocˆ ser´ mandado para este buffer padr˜o caso pressione a tecla Enter. no modo texto. se vocˆ pressiona a tecla INSERT. c Vocˆ pode obter uma lista dos buffers abertos pressionando-se C x C b. Adicionalmente. Um modo provˆ customiza¸˜es e e co funcionalidades especiais que s˜o uteis para o tipo de arquivo que vocˆ est´ editando. e os arquivos. que e a e a ´ normalmente o nome do buffer no qual vocˆ esteve antes de ter mudado para. Sem o modo de auto u preenchimento (auto-fill-mode). e o novo buffer chamado *Buffer List* na metade inferior da tela. uma vez que a linha alcance um certo n´mero de caracteres. e a ıvel 17. Este comando e ir´ usualmente dividir a tela em duas. vocˆ invoca o modo de subscri¸˜o ca e e ca (overwrite-mode). que ´ util em combina¸˜o com o modo texto (text-mode) ou com o e´ ca modo latex (latex-mode): ele far´ com que cada linha que vocˆ digita seja automaticamente a e embalada. Note que vocˆ pode usar a t˜o famosa tecla Tab para e e a fazer a completa¸˜o de nome aqui: digite as primeiras letras do nome do buffer e pressione a ca tecla Tab. ´ dado uma escolha padr˜o. mas em muitos modos de o ca a linguagens de programa¸˜o.1 Abrindo Arquivos Para abrir um arquivo no Emacs. H´ tamb´m um modo de auto preene o c a e chimento (auto-fill-mode).

PgUp) vai para o in´ do buffer ıcio vai para o fim do buffer desfaz a ultima altera¸˜o (pode ser repetido). exatamente como se vocˆ estivesse abrindo um e arquivo existente. e dar um nome para o arquivo. e o Emacs ir´ abr´ e a a ı-lo. tais como apagar. Porque vocˆ n˜o precisa mover suas m˜os para outra parte do teclado para utiliz´-las. note que vocˆ realmente tem que digitar Shif ´ ca e apaga at´ o fim da linha atual e efetua uma busca ` frente do cursor at´ o fim do arquivo a e efetua uma busca anteriormente ao cursor at´ o in´ do arquivo e ıcio . C-g funciona em quase todo lugar que vocˆ desejar cancelar uma a¸˜o ca e ca ou comando que vocˆ estiver iniciado mas que n˜o queira terminar. Vocˆ primeie a e ramente deve criar um buffer para ele. ele n˜o ir´ carregar o arquivo a a a no buffer atual.) Entretanto. Vocˆ pode mover o cursor para o arquivo que o e vocˆ est´ procurando e digitar.148 CAP´ ITULO 17. Os mais e importantes comandos semelhantes est˜o listados na tabela abaixo.) e Quando vocˆ estiver digitado C-x C-f e derepente mudar de id´ia. e e a As teclas do cursor e PgUp. elas podem pular para o in´ e fim do ıcio o ıcio buffer. Vocˆ faz isso digitando e C x C f e digitando um nome para o arquivo. etc. Home e End pulam e para o in´ e final da linha. PgDn fazem o que vocˆ possa supor. vocˆ pode digitar C-g e e e para cancelar a a¸˜o. PgDn) sobe uma tela (assim como a tecla. que ´ basicamente um simples gerenciador de arquivos. renomear e mover arquivos. e a a a elas s˜o muito mais facilmente acess´ a ıveis uma vez que vocˆ se acostume com elas. ca Quando vocˆ digita C x C f e ent˜o entra com um nome de um diret´rio ao inv´s de um e a o e nome de arquivo. e criar´ a e a a um novo buffer e informar a cria¸˜o de um novo arquivo (New file) no minibuffer. vocˆ obviamente poder´ mover-se ele com o cursor.. EMACS Nota: O Emacs ir´ automaticamente criar um novo buffer. (H´ de fato muitas outras a¸˜es que a co pode tomar aqui.. (Em vers˜es mais antigas. O Emacs est´ agora no a dired-mode. h´ tamb´m a combina¸˜o das teclas Control e Meta (Alt) para mover o a e ca cursor. a Comandos B´sicos de Edi¸˜o a ca Comando* C-b C-f C-n C-p C-a C-e M-b M-f M-} M-{ M-a M-e C-d M-d C-v M-v M-< M-> CC-k C-s C-r Resultado** volta um caractere avan¸a um caractere c vai para a linha abaixo vai para a linha acima vai para o in´ da linha ıcio vai para o fim da linha vai para a palavra anterior vai para a palavra seguinte vai para o par´grafo seguinte a vai para o par´grafo anterior a vai para a senten¸a anterior c vai para a senten¸a seguinte c apaga o caractere sob o cursor apagar at´ o fim da palavra atual e abaixa uma tela (assim como a tecla. o Emacs ir´ criar um novo buffer no qual vocˆ ir´ encontrar uma lista de a e a todos os arquivos existentes naquele diret´rio. O Emacs ir´ notar que o arquivo cujo nome vocˆ digitou n˜o existe. vocˆ n˜o pode apenas ir digitando algo.4 Edi¸˜o B´sica ca a Quando vocˆ tiver aberto um arquivo. e a 17. Para criar um novo arquivo no Emacs.

17.5. SALVANDO ARQUIVOS

149

Note que muitos comandos com a tecla Meta s˜o paralelos aos comandos com a tecla a Control exceto pelo fato de que eles operam em amplas unidades: enquanto C-f avan¸a um c caractere, M-f avan¸a em uma palavra inteira, etc. c Tamb´m note que M-<** e M-> requerem que vocˆ digite Shift Alt comma e Shift Alt e e dot respectivamente, desde que &lt; e &gt; estejam ligadas Shift comma e Shift dot.(A menos ´ claro que vocˆ tenha um teclado em condi¸˜es diferentes (layout), do teclado padr˜o e e co a US.) Note que C k apagar (apaga, como ´ freq¨entemente chamada) todo o texto ap´s o cursor e u o at´ o fim da linha, por´m n˜o apaga a linha em si (por exemplo, n˜o apaga a indica¸˜o de nova e e a a ca linha). Ele apenas apaga a linha se n˜o houver texto ap´s o cursor. Em outras palavras, para a o apaga uma linha completamente, vocˆ tem que posicionar o cursor no in´ e pressionar C k e ıcio duas vezes: uma para apaga o texto na linha e uma para apagar a linha em si.

17.5

Salvando Arquivos

Para salvar um arquivo, vocˆ deve digitar e C-x C-s O Emacs n˜o ir´ lhe solicitar um nome para o arquivo, o buffer atual apenas ser´ salvo a a a para o arquivo que foi carregado inicialmente nele. Se vocˆ deseja salvar o seu texto em outro e arquivo, digite C-x C-w Quando vocˆ salva o arquivo pela primeira vez nesta sess˜o, o Emacs ir´ normalmente salvar e a a a antiga vers˜o do seu arquivo em uma c´pia de seguran¸a (arquivo de backup), que possui a o c o mesmo nome acompanhado de um sinal de til (˜): ent˜o se vocˆ est´ editando um arquivo a e a //cars.txt//, o Emacs criar´ uma c´pia de seguran¸a chamada //cars.txt˜//. Esta c´pia de a o c o seguran¸a ´ uma c´pia do arquivo que vocˆ abriu. Enquanto vocˆ estiver trabalhando, o Emacs c e o e e ir´ regularmente criar automaticamente uma c´pia do trabalho que vocˆ est´ fazendo, para um a o e a arquivo nomeado com sinais de hash: #cars.txt#. Esta c´pia de seguran¸a ´ apagada quando o c e vocˆ salva o arquivo com C-x C-s. Quando vocˆ tesiver finalizado a edi¸˜o de um arquivo, vocˆ e e ca e poder´ matar o buffer que cont´m o arquivo digitado a e C-x k O Emacs ir´ perguntar a vocˆ qual buffer vocˆ deseja matar, com o buffer atual como padr˜o, a e e a o qual vocˆ pode selecionar simplesmente pressionando a tecla ENTER. Se vocˆ n˜o estiver e e a salvado seu arquivo ainda, o Emacs ir´ lhe perguntar se realmente deseja matar o buffer. a 17.5.1 Saindo do Emacs

Quando vocˆ estiver terminado todo o trabalho com o Emacs, vocˆ poder´ digitar e e a C-x C-c Este comando encerra o Emacs. Se vocˆ estiver arquivos n˜o salvos, o Emacs ir´ lhe dizer e a a isto, e pedir para que vocˆ os salve, um por vez. Se vocˆ responder n˜o para algum destes, o e e a Emacs ir´ lhe solicitar uma confirma¸˜o final e ent˜o sair. a ca a

150

CAP´ ITULO 17. EMACS

Cap´ ıtulo 18

Gerenciamento de Pacotes do Slackware
Um pacote de software ´ um conjunto de arquivos que est˜o prontos para que vocˆ possa e a e instalar. Quando vocˆ faz o download de um c´digo fonte, vocˆ precisa configurar, compilar, e e o e instalar tudo manualmente. Um pacote de software j´ est´ pronto para vocˆ utilizar. Tudo o a a e que vocˆ precisa fazer ´ instalar o pacote. Outras caracter´ e e ısticas do uso de pacotes de softwares s˜o a facilidade na remo¸˜o e atualiza¸˜o do pacote, se vocˆ assim o desejar. Slackware possui a ca ca e programas para vocˆ gerenciar seus pacotes. Vocˆ pode instalar, remover, atualizar, criar, e e e examinar o conte´do de um pacote muito facilmente. u Existe um mito sobre o gerenciador de Pacotes da Red Hat, e que o slackware n˜o possui a nenhuma ferramenta de gerenciamento de Pacotes. Isto simplesmente n˜o ´ verdade, pois o a e Slackware possui uma ferramenta de gerenciamento de pacotes antes mesmo do RedHat existir. N˜o possui tantas caracter´ a ıstics como um rpm (ou como um pacote deb), o pkgtool e seus programas derivados s˜o t˜o bons quanto os instaladores de pacotes rpm. A verdade ´ que o a a e pkgtool n˜o faz nenhuma verifica¸˜o de dependˆncia. a ca e Aparentemente muitas pessoas da comunidade Linux acham que a defini¸˜o do gerencica amento de pacotes ´ a de verificar dependˆncias. Isto ´ muito simples e n˜o ´ o caso, no e e e a e Slackware certamente vocˆ n˜o ter´ isso. Isso n˜o significa que os pacotes do Slackware n˜o e a a a a possuem dependˆncias, mas o gerenciador de pacotes n˜o verifica se existe uma dependˆncia. e a e Gerenciamento de dependˆncia ´ responsabilidade do Administrador de Sistemas, e isso n˜o e e a cabe a n´s resolver. o

18.1

Vis˜o Geral do Formato de um Pacote a

Antes de aprender os utilit´rios de pacotes do Slackware, vocˆ precisa se familiarizar com a e o formato do pacote do Slackware. No Slackware, um pacote ´ simples como um arquivo tar e compactado com gzip. Os pacotes s˜o feitos para serem extra´ a ıdos no diret´rio raiz. o Veja um programa fict´ como um exemplo de um pacote do Slackware: ıcio ./ usr/ usr/bin/ usr/bin/makehejaz usr/doc/ usr/doc/makehejaz-1.0/ usr/doc/makehejaz-1.0/COPYING usr/doc/makehejaz-1.0/README usr/man/ usr/man/man1

151

ou a partir de disquetes. ca e o o Basta simplesmente selecionar o tipo de instala¸˜o que o pkgtool ir´ procurar pacotes v´lidos ca a a para serem instalados no local selecionado. e Menu Principal do Pkgtool A instala¸˜o ´ realizada a partir do diret´rio atual. O e menu principal ´ exibido na figura abaixo.sh. remo¸˜o e atualiza¸˜o dos pacotes. 18.2 Utilit´rios de Pacotes a Existem quatro utilit´rios principais para o gerenciamento de pacotes. Um registro do pacote ´ adicionado a ıdo o ız ca e no banco de dados de pacotes onde conter´ informa¸˜es sobre o pacote e ser´ utilizado para a co a atualizar ou remover o pacote posteriormente. Este ´ um diret´rio especial que cont´m um script co o e o e de p´s-instala¸˜o chamado doinst.2. Eles s˜o respons´veis a a a pela instala¸˜o.gz install/ install/doinst. Informa¸˜es sobre o subdiret´rio install/. o ca Outros scripts podem ser adicionados no pacote mas ser˜o discutidos com maiores detalhes a logo em seguida.1 pkgtool pkgtool (8) ´ um programa em formato de menu que permite instalar e remover pacotes.152 CAP´ ITULO 18. GERENCIAMENTO DE PACOTES DO SLACKWARE usr/man/man1/makehejaz. ca ca ca 18. Se o sistema encontrar esse arquivo no pacote. Vocˆ tamb´m pode visualizar uma lista de todos os pacotes instalados como ´ mostrado na e e e figura abaixo.1.sh O pacote ser´ extra´ no diret´rio ra´ na instala¸˜o. Modo de visualiza¸˜o Pkgtool ca . outro diret´rio. ele ser´ o ca a executado ap´s a instala¸˜o do pacote.

a capacidade para atualizar co e pacotes somente ´ poss´ atrav´s de utilit´rios de linha de comando. O e e installpkg n˜o o avisar´ em caso de reinstala¸˜o do pacote existente. O pkgtool remover´ os pacotes. O banco de dados com os pacotes instalados ´ armazenado em /var/log/packages. e o ca este ´ escrito em /var/log/scripts/. Pode-se utilizar coringas no o Caso vocˆ especifique antes a vari´vel de ambiente ROOT installpkg. Al´m disso. O registro e ´ um arquivo texto. Op¸˜es do installpkg co Op¸˜o Descri¸˜o ca ca -m Executa o makepkg no diret´rio atual. a a Alguns usu´rios preferem o utilit´rio em linha de comando.2. sendo um para cada pacote. Simplesmente instalar´ o a a ca a novo pacote sobre o pacote antigo. Por´m somente uma op¸˜o pode ser utilizada e co e ca por vez. Selecione os pacotes que deseja remover e ent˜o selecione OK. e a . utilizar´ o caminho e a a especificado. Caso vocˆ queira remover com toda a seguran¸a os arquivos e c antigos do pacote enterior vocˆ dever´ utilizar o comando upgradepkg. Isso ´ util na configura¸˜o de novos drives para o seu diret´rio raiz. escolha a op¸˜o remover e ent˜o ser˜o apresentados e ca a a todos os pacotes instalados cada um com um checklist. e ıvel e a 18. UTILITARIOS DE PACOTES 153 Caso vocˆ desejar remover algum pacote.´ 18. o -warn Mostra o que aconteceria se vocˆ instalar o pacote especificado. Entretanto. e Vocˆ tamb´m pode especificar multiplos pacotes ou utilizar coringas no nome do pacote. deve-se notar que a a cada linha de comando oferece muito mais op¸˜es.2 installpkg O installpkg(8) permite instalar um novo pacote no sistema. Eles ser˜o e ´ ca o a montados tipicamente em /mnt ou em algum outro lugar diferente de /. Se o pacote possui um script de p´s-instala¸˜o. Isto ´ util para sistemas em pr e e´ -r Instala todos os pacotes recursivamente a partir do diret´rio atual. A sintaxe ´ mostrada abaixo: e # installpkg op¸~es nome_pacote co Trˆs op¸˜es podem ser utilizadas com o installpkg.2.

2. Caso o nome do pacote tenha sido alterado. Op¸˜es do removepkg co Op¸˜o ca A¸˜o ca ´ -copy E criado uma ´rvore de diret´rios do pacote preservando o pacote original enquanto ´ removi a o e -keep S˜o criados arquivos tempor´rios durante a remo¸˜o.2. Tamb´m ir´ procurar por um script de p´s-instala¸˜o para o e e a o ca pacote especificado e remover´ os links simb´licos que foram criados pelo pacote. Eles o e´ ca o ser˜o montados tipicamente em /mnt ou em algum outro lugar diferente de /. vocˆ pode espeficicar os pacotes pelo nome ou utilizando os coringas e para o nome do pacote.4 upgradepkg O upgradepkg(8) atualiza um pacote instalado do Slackware package. Caso eles sejam removidos ou substitu´ ca ıdos. mas uma c´pia ´ realizada para preservar o pacote durante a remo¸˜o. Isso ´ util na configura¸˜o a o e´ ca de novos drives para o seu diret´rio raiz. Assim como o installpkg e removepkg. Vocˆ sempre dever´ realizar um backup dos seus arquivos a e e a de configura¸˜o. tal caminho ser´ utilizado e a a como diret´rio raiz. Por´m somente uma op¸˜o pode ser co e ca utilizada por vez. Possuem a finalidade de debug. a a ca -preserve O pacote ´ removido. A sintaxe ´ mostrada e abaixo: # upgradepkg nome_do_pacote ou # upgradepkg nome_pacote_antigo %nome_novo_pacote O upgradepkg primeiro instala o novo pacote e em seguida remove o pacote antigo. o registro no ca e o ca banco de dados de pacote ´ movido para o arquivo /var/log/removed pacotes e o script de e p´s-instala¸˜o ´ movido para /var/log/removed scripts. GERENCIAMENTO DE PACOTES DO SLACKWARE 18.3 removepkg O removepkg(8) permite remover os pacotes instalados no sistema. Isso ´ util na configurar¸˜o de novos drives para o seu diret´rio raiz. utilize a a a sintaxe do sinal de porcentagem para informar o pacote antigo (aquele que est´ instalado) e o a novo pacote (aquele que vocˆ est´ atualizando). co ca Se vocˆ passar a vari´vel de ambiente ROOT antes do removepkg. a O removepkg procura os pacotes instalados e somente remove os arquivos referentes ao pacote que vocˆ especificou. Ap´s a remo¸˜o. a o Durante o processo de remo¸˜o. vocˆ ter´ uma c´pia dos arquivos e a o originais caso necessite de algum reparo no sistema. 18. Assim os arquivos antigos n˜o ficar˜o no sistema. Se vocˆ passar a vari´vel de ambiente ROOT e a e a antes do upgradepkg. A sintaxe ´ mostrada e abaixo: # removepkg option package_name Quatro op¸˜es podem ser utilizadas com o removepkg. e o e ca -warn Exibe informa¸˜es sobre a remo¸˜o do pacote. O upgradepkg n˜o ´ livre de falhas.154 CAP´ ITULO 18. tal caminho ser´ utilizado como diret´rio raiz. um status ´ mostrado. vocˆ pode espeficicar os pacotes pelo nome ou utilie zando os coringas para o nome do pacote. Eles ser˜o montados tipicamente em /mnt ou em o a algum outro lugar diferente de /. o ca e Assim como o installpkg. .

e 18. compilar. CRIANDO PACOTES 155 18. o ca Se vocˆ ´ interessado em criar pacotes para o seu sistema ou para a rede que vocˆ gerencia. e o e a 18.3. Se vocˆ verificar a ´rvore de fontes do Slackware. ca a a Este comando ´ usado ap´s vocˆ criar sua ´rvore de pacotes.1 explodepkg O explodepkg(8) faz a mesma coisa que o installpkg para extrair os arquivos do pacote. ee e vocˆ dever´ dar uma olhada nos diversos build scripts na ´rvore fonte do Slackware. O unico requisito para um pacote ´ ser um arquivo e ca ´ e gzipado e. Isto ´ o a e realizado. vocˆ dever´ criar seu pr´prio pacote.3 Criando Pacotes Criar um pacote para o Slackware pode ser uma tarefa f´cil ou dif´ a ıcil.gz. e criar pacotes Slackware. Apenas extrai os arquivos no diret´rio a a o atual.3. . e o N´s temos um programa que converte pacotes RPM em nosso formato padr˜o . Ele buscar´ a o a na ´rvore de diret´rio por links simb´licos. Vocˆ pode modificar e os scripts e criar seus pacotes Slackwares com sua necessidades espec´ ıficas.tar. a Nem todos os pacotes s˜o criados pelos pr´prios programadores que os criaram. O build script criar´ e o a um pacote a partir do diret´rio fonte do pacote . Mas o que ´ um script SlackBuild? Scripts SlackBuild s˜o shell scripts execut´veis que vocˆ e a a e executa como root para configurar.3 SlackBuild Scripts Pacotes Slackware s˜o criados de muitas maneiras diferentes de acordo com a necessidade. Entretanto. e donos. extra´ ındo o pacote (talvez com o explodepkg) para um diret´rio tempor´rio e examio a nando o seu conte´do. algumas coisas s´ est˜o dispon´ o a ıveis em pacotes RPM (at´ mesmo o c´digo fonte). vocˆ ver´ que pode-se utilizar o comando e a e a para alicer¸ar os pacotes. u rpm2tgz ´ o programa utilizado para criar um pacote Slackware com a extens˜o .2.5 rpm2tgz/rpm2targz Atualmente o Gerenciador de Pacotes da Red Hat ´ o sistema mais popular. a 18.3. Mas este formato n˜o ´ o nosso padr˜o. Fea e a o lizmente para muitos pacotes do Slackware.tgz.3. N˜o ser´ especificado a a um m´todo para a constru¸˜o de um pacote. Existem e a a diversos m´todos que podem ser utilizados para criar pacotes. Ele c a cont´m todos os nomes de arquivos (tamanho-zero). Muitos coma o pilam com op¸˜es que n˜o s˜o inclusas nos pacotes do Slackware. adicionar´ e criar´ um script de p´s-instala¸˜o a o o a a o ca durante a cria¸˜o do pacote. Avisar´ por arquivos de tamanho zero na sua ´rvore de pacotes.18. Muitos softwares e s˜o distribu´ a ıdos no formato RPM. Caso necessite de alguma co a a funcionalidade da qual o pacote n˜o foi compilado. se houver algum script de p´s-instala¸˜o. o 18. permiss˜es.sh. Estes pacotes possuem um esqueleto que criar´ o pacote final.tgz enquanto e a que rpm2targz cria um arquivo com a extens˜o .2 makepkg O makepkg(8) cria um pacote v´lido para o Slackware a partir do diret´rio atual. vocˆ pode encontrar scripts SlackBuild no c´digo e o fonte do pacote. por´m e n˜o instala e n˜o registra o pacote no banco de dados. n´s n˜o recomendaa e a o a mos que as pessoas confiem neles. este deve estar no arquivo /install/doinst.

a a a ca Um tagfile est´ no diret´rio do primeiro conjunto de software e ´ chamado de tagfile. GERENCIAMENTO DE PACOTES DO SLACKWARE 18. As tagfiles originais de cada pacote s˜o armazenadas como um taga file. ca quais s˜o opcionais. caso bagunce o seu. que pode ser: Status das Op¸˜es do Tagfile co Op¸˜o ca ADD SKP REC OPT O O O O Caracter´ ıstica pacote ´ necess´rio para a execu¸˜o necess´ria do sistema e a ca a pacote ser´ automaticamente pulado a pacote n˜o ´ necess´rio. vocˆ pode restaurar o original. O programa da instala¸˜o ir´ ler os tagfiles e executar´ a instala¸˜o de acordo ca a a ca com seus ´ ındices. Ou vocˆ pode especificar um tagfile customizado. e .156 CAP´ ITULO 18. ca ca Existem arquivos que dizem ao programa de configura¸˜o quais pacotes devem ser instalados. ca Certifique-se apenas que seus tagfiles foram gravados no mesmo lugar que os originais. Ele a o e lista os pacotes daquele disco em particular e o status. uma caixa de di´logo ser´ apresentada ao e a a usu´rio perguntando se quer ou n˜o um pacote espec´ a a ıfico. mas recomendado a e a pacote ´ opcional e O formato ´ simples: e nome_pacote: status Um pacote por linha. e Muitos administradores preferem escrever seus pr´prios tagfiles e recome¸ar o instalador o c selecionando full. Dessa forma. e quais s˜o selecionados por padr˜o pelo programa de configura¸˜o. criado de acordo com as suas necessidades.4 Criando Tags e Tagfiles (para configura¸˜o) ca O programa de configura¸˜o do Slackware gerencia a instala¸˜o dos pacotes no seu sistema. Caso vocˆ utilize REC ou OPT.org. Recomenda-se que vocˆ utilize ADD e e SKP ao escrever tagfiles para automatizar instala¸˜o.

ZIP. vocˆ deve sempre consultar a documenta¸˜o inclu´ no diret´rio do ´ e ca ıda o ZipSlack.1. As principais vantagens e desvantagens do ZipSlack s˜o discutidas co a a abaixo. ca 19.com/getslack 157 . mas sempre confie mais nas etiquetas do que nessa documenta¸˜o j´ que o disco em que ele est´ pode mudar. e ´ co ca 19. Esse CD costuma ser o terceiro ou o quarto disco. • N˜o funciona com o Windows NT. ´ E importante notar que o ZipSlack ´ significativamente diferente de uma instala¸˜o normal. e n˜o tem todos os recursos do Slackware. vocˆ deve primeiro vistar nossa p´gina Get e e a Slack para obter as ultimas informa¸˜es referentes a downloads: ´ co http://www. boot e uso do produto.2 Obtendo o ZipSlack Obter o ZipSlack ´ f´cil.1. o p´blico alvo e a u suas fun¸˜es s˜o diferentes. Ele ´ uma vers˜o j´ instalada do e a e a a ´ Slackware que est´ pronta para rodar a partir da sua parti¸˜o DOS ou Windows. ca a a Se vocˆ quiser fazer o download do ZipSlack.1 Vantagens • N˜o requer o reparticionamento do seu disco rigido. Usu´rios de e ıdo a DOS e Windows provavelmente ter˜o mais familiaridade com esse tipo de arquivo. O arquivo do ZipSlack cont´m tudo que vocˆ precisa para utilizar o e e Slackware. Uma ultima dica. a • Uma ´tima maneira de se aprender a utilizar o Slackware sem ter que passar pelo processo o de instala¸˜o.2 Desvantagens • Usa o sistema de arquivos do DOS. que ´ mais lento que um sistema de arquivos nativo e do Linux. Ela cont´m as ultimas informa¸˜es relativas a instala¸˜o. ent˜o vocˆ e a e a e j´ tem o ZipSlack. Apenas encontre o CD que cont´m o diret´rio zipslack e coloque-o no seu a e o drive de CD-ROM.slackware. a 19. Se vocˆ comprou a caixa de CDs oficial do Slackware. ca a a O ZipSlack tem esse nome porque ´ distribu´ em um grande arquivo .Cap´ ıtulo 19 ZipSlack 19. E uma a ca instala¸˜o b´sica.1 O que ´ o ZipSlack? e O ZipSlack ´ uma vers˜o especial do Slackware Linux. e ca Apesar de funcionarem da mesma maneira e terem os mesmos programas. Eles s˜o a a arquivos compactados.

Vocˆ provavelmente vai querer definir uma senha para root. e escolher outra.ZIP ou em partes do tamanho de um disquete. Exemplos de descompactadores 32-bit a s˜o o WinZip e o PKZIP para Windows. o 19. ZIPSLACK O ZipSlack faz parte de todas as vers˜es do Slackware.BAT para bootar o sistema. A ultima vers˜o pode ser encontrada no seguinte endere¸o: o ´ a c ftp://ftp. co ca Se vocˆ n˜o conseguir bootar o sistema usando o arquivo LINUX. e Ap´s habilitar a linha que vocˆ quiser.2. Se tudo correr bem. vocˆ pode editar o arquivo a a e novamente. Reboot sua m´quina em modo DOS. ca o 19. Vocˆ tamb´m pode fazer o download da documena e e ta¸˜o e qualquer imagem de boot que estiver no diret´rio do ZipSlack. O tamanho e os nomes dos arquivos a s˜o muito grandes para um descompactador de 16-bit.1 Instala¸˜o ca Ap´s ter feito o download dos componentes necess´rios.3 Bootando o ZipSlack H´ varias maneiras de se bootar o ZipSlack.com/pub/slackware/slackware/ Vocˆ encontrar´ o ZipSlack no subdiret´rio /zipslack. Digite C:\LINUX\LINUX. As partes est˜o no diret´rio /zipsa o lack/split.BAT. Ele explica o que vocˆ precisa editar nesse e a a e arquivo (e tamb´m o que fazer se vocˆ estiver bootando atrav´ de um Zip drive externo). N˜o e e e a se preocupe se vocˆ n˜o entender o paramˆtro <literal>root=</literal>. removendo a palavra rem do come¸o da linha. N˜o fique apenas com os arquivos . A partir desse ponto vocˆ pode consultar outras e e se¸˜es desse livro sobre a utiliza¸˜o do sistema. e a e a a sinta-se a vontade para escolher um e test´-lo. vocˆ dever´ consultar e a e a o arquivo C:\LINUX\README. Um diret´rio \LINUX onde estar´ a instala¸˜o do Slackware ser´ criado.ZIP.BAT // em seu editor de textos favorito. a ˜ e Um prompt do DOS no Windows 9x NAO ´ suficiente.slackware. a Comece abrindo o arquivo //C:\LINUX\LINUX. comentar a linha que vocˆ usou. Se n˜o funcionar. salve o e c o arquivo e saia do editor de textos. Esse arquivo deve ser editado para refletir seu sistema antes de utiliz´-lo. Ele ´ distribu´ como um grande e a o e ıdo arquivo .158 CAP´ ITULO 19. vocˆ dever´ ver um prompt de login. o a e a Assegure-se que est´ usando um descompactador 32-bit.ZIP. . a O ZipSlack ´ desenvolvido para ser descompactado no diret´rio raiz de uma unidade (tal e o como C: ou D:). A mais comum ´ usar o arquivo LINUX.BAT a e para bootar o sistema a partir do DOS (ou a partir do modo DOS do Windows 9x). No topo do arquivo vocˆ ver´ um grande coment´rio. e e a a o Ap´s descompactar os arquivos. sem senha. e a Logue como root. Localize a vers˜o que vocˆ quer e v´ o a e a para o diret´rio da mesma no FTP. e assim como adicionar uma conta para vocˆ. vocˆ ter´ um diret´rio \LINUX na unidade que vocˆ escoo e a o e lheu (n´s usaremos C: a partir de agora). vocˆ precisar´ extrair o arquivo . H´ v´rios exemplos.1ST incluso sobre outras formas de boot. o a ca a Vocˆ tamb´m encontrar´ os arquivos necess´rios para iniciar (bootar) o sistema nesse diret´rio.

desenhar componentes gr´ficos como barras de rolagem. senha. informa¸˜es para o finger. gerenciadores de janelas e arquivos. sem a interven¸˜o de usu´rios. co a co GID e diret´rio base. Por exemplo.Graphical User Interface) que ´ executado sobre a a e o sistema de janelas X e provˆ as funcionalidades dos aplicativos instalados. Esta ´ a fun¸˜o do co o e ca carregador dinˆmico. a geralmente define seu aspecto. C´digos fontes s˜o compilados em c´digo bin´rio. A ´rea de troca ´ util para o kernel manter dados n˜o muito a e´ a utilizados e como op¸˜o quando a mem´ria RAM est´ sendo toda utilizada. os nomes de arquivos ocultos come¸am com um ponto (’. ´ uma cole¸˜o de bibliotecas que permite ao programador. Compilar Converter um c´digo fonte em c´digo bin´rio. Um passo a frente de um simples gerenciador de janelas. o e a co Daemon Um programa designado para exectar em segundo plano e. e ca a partir de c´digos. ca o a Arquivo oculto (Dot file) No Linux. mas como espa¸o em disco ´ mais barato. O conjunto de ferramentas GUI usado por um programa. checkboxes. incluindo login. c Biblioteca Uma cole¸˜o de fun¸˜es que podem ser compartilhadas entre programas. estas bibliotecas devem ser encontradas e as fun¸˜es requeridas devem ser carregadas na mem´ria. Criar uma conta ´ adicionar um usu´rio e criar suas defini¸˜es. c Darkstar 159 .Cap´ ıtulo 20 Gloss´rio a Ambiente gr´fico a Uma interface gr´fica para o usu´rio (GUI . ´ Area de troca (Swap) ´ Espa¸o do disco r´ c ıgido que ´ utilizado pelo kernel como uma mem´ria RAM virtual. etc. Conta Todas informa¸˜es de um usu´rio.’). o o a Conjunto de ferramentas GUI Um conjunto de ferramentas GUI. a C´digo fonte o O c´digo (mais ou menos) leg´ o ıvel aos humanos com o qual a maioria dos programas s˜o a escritos. etc. Quando estes programas executam. ca co Carregador dinˆmico a Quando programas s˜o compilados no Linux. o bash tem o comando interno cd. interface coerente e entre programas e componentes. UID. E e o mais lento que a mem´ria RAM. a ´rea de troca o c e a (swap) pode ser mais abundante. ao inv´s de ser fornecido por um programa e externo. eles geralmente usam peda¸os de c´digo (funa c o co ¸˜es) de bibliotecas externas. o a o a Comandos internos do interpretador de comandos Um comando do interpretador de comandos. ca a desempenha uma tarefa espec´ ıfica (geralmente provendo um servi¸o). o a e construir uma interface gr´fica.

o a Diret´rio de trabalho o O diret´rio em que um programa se considera estar enquanto est´ executando. mas a ca a contem arquivos adicionais necess´rios como m´dulos para rede ou suporte para PCMCIA. etc. c o Entrada padr˜o (stdin) a A entrada de dados padr˜o do Unix. c e Dotted quad Formato do endere¸o IP. FTP ´ um m´todo base e e tante utilizado para transferir dados entre computadores. ´ assim chamado pois consiste em quatro n´meros (na faixa decimal c e u 0-255) separados por pontos. Gerenciador de janelas Um programa gr´fico (ambiente X) que provˆ uma interface gr´fica al´m do simples desenho a e a e retangular do Sistema de janelas X. Dados podem ser redirecionados ou concatenados para a a stdin dos programas. FTP O protocolo de transferˆncia de arquivos (File Transfer Protocol). Um sistema que traduz nomes para endere¸os num´ricos em uma rede de computadores. nem o sistema de arquivos raiz (que est´ no disco raiz). a ca Framebuffer Um tipo de dispositivo gr´fico. o ız a Disco suplementar No Slackware. a o qual provˆ uma interface framebuffer padr˜o para as aplica¸˜es enquanto mant´m drivers e a co e espec´ ıficos ocultos. o Diret´rio ra´ o ız Representado por /. nomeado depois de Dark Star. seu computador ter´ o nome de darkstar se vocˆ n˜o a a e a especificar outro. menus para os programas em execu¸˜o. Gateway Um computador que repassa dados de uma rede para outra. Drivers de dispositivos Um peda¸o de c´digo no kernel que controla diretamente uma parte do hardware. geralmente se refere ao programa framebuffer. ´ um disquete usado durante a instala¸˜o que n˜o cont´m nem o kernel (que e ca a e est´ no disco de inicializa¸˜o). no Linux. e ıvel Disco ra´ (rootdisk) ız O disco (geralmente fixo) no qual o diret´rio ra´ est´ armazenado. Esta camada de abstra¸˜o libera os programas de falarem com v´rios ca a drivers de dispositivos. Um dos computadores de desenvolvimento de Patrick Volkerding. ´ Epoca ´ Um per´ ıodo da hist´ria.160 ´ CAP´ ITULO 20. ca GID . um reino o a o e livre em seu diret´rio base. com todos os o ız outros diret´rios se ramificando abaixo dele em uma ´rvore de arquivos. uma m´sica de Grateful Dead u Diret´rio base o O diret´rio base home de um usu´rio ´ o diret´rio em que o usu´rio ´ colocado imediatamente o a e o a e ap´s registrar-se no sistema. mais ou menos. a Epoca come¸a `s 00:00:00 UTC Janeiro 1. Gerenciadores de janelas geralmente provˆem barras de e t´ ıtulo. Os usu´rios tem permiss˜es totais ´. em Unix. 1970. Esta o c a ´ considerada a alvorada do tempo pelo Unix e sistemas operacionais Unix-like. o diret´rio ra´ existe no topo do sistema de arquivos. e todas outras e datas s˜o calculadas em rela¸˜o a esta. vindos de qualquer fonte. a o DNS Domain Name Service (Sistema de Nomes de Dom´ ınios). GLOSSARIO O hostname padr˜o do Slackware. o kernel do Linux) com o qual ´ poss´ iniciar um computador. o a Disco de inicializa¸˜o ca Um disquete contendo um sistema operacional (no nosso caso.

e a Quando vocˆ estiver olhando para uma tela em modo texto. que podem conter v´rios usu´rios e s˜o utilizados a a a a para controles de acessos mais generalizados. HTTP ´ o e e protocolo prim´rio. como configurar um firewall ou gerenciar usu´rios e grupos. Uma interface de programas que a a utiliza elementos gr´ficos como bot˜es. M´dulos s˜o uteis o o a ´ para atualizar drivers ou testar configura¸˜es do kernel. Existe uma vasta cole¸˜o deste tipo de documento dispon´ a ca ıvel no projeto de documenta¸˜o Linux (LDP . geralmente um tipo de driver. que ´ bem mais pr´tico que dar permiss˜es para e a o cada usu´rio individualmente. O motd (armazenado no Linux em /etc/motd ) ´ um arquivo de texto que ´ exibido a todos usu´rios durante seu registro no sistema (login). Interfaces de rede ca permitem usu´rios e programas comunicarem com dispositivos de rede. ao inv´s de somente a o e entrada e sa´ de textos. utilizado geralmente para pings. O LILO ´ o gerenciador de inicializa¸˜o (boot) e ca mais utilizado com o Linux. a Interpretador de comandos (shell) Os interpretadores de comandos provˆem uma interface de linha de comando para o usu´rio. E geralmente usado em computadores com m´ltiplos sistemas operacionais (incluindo u Linux e DOS/Windows. e MBR O registro mestre de inicializa¸˜o (Master Boot Record). ´ utilizado pelo administrador de sistemas como um quadro de avisos para e se comunicar com os usu´rios.Linux Documentation Project). Um espa¸o reservado no disco ca c r´ ıgido onde est˜o armazenadas as informa¸˜es sobre o que fazer durante a inicializa¸˜o. a GUI Interface gr´fica do usu´rio (Graphical User Interface). LILO a co ca e outros gerenciadores de inicializa¸˜o podem ser gravados aqui. O GID ´ um n´mero unico atribu´ a um grupo e u ´ ıdo de usu´rios. a Interface de Rede Uma representa¸˜o virtual de um dispositivo de rede. Links simb´licos s˜o usados para evitar duplica¸˜o de dados quando ´ necess´rio ter um determinado o a ca e a arquivo em v´rios locais. a LOADLIN LOADLIN ´ um programa que ´ executado no MS-DOS ou Windows e inicializa um sistema e e ´ Linux.161 Identificador de grupo (Group IDentifier). janelas. a ICMP Protocolo de controle de mensagens na Internet (Internet Control Message Protocol). vocˆ est´ em um interpretador de e e a comandos. porque eles podem ser carregados e co descarregados sem reiniciar. que pode ser carregado c o ou descarregado da mem´ria separadamente do corpo principal do kernel. ca M´dulo do kernel o Um peda¸o do c´digo do kernel. ıda HOWTO Um documento descrevendo como fazer (how to) algo. Link simb´lico o Um arquivo especial que simplesmente aponta para a localidade de um outro arquivo. a Grupo Usu´rios em Unix pertencem a grupos. barras de rolagem. a World Wide Web (WWW) opera. MOTD Mensagem do dia (Message Of The Day). no qual. etc. ´ claro). provido pelo kernel. LILO O carregador do Linux (LInux LOader). ca HTTP O protocolo de transferˆncia de hiper-texto (HyperText Transfer Protocol). e e a Tradicionalmente. a . Um protocolo muito b´sico.

mas que as vezes muda ´ e seu comportamento alterando seus ambientes ou filtrando sua entrada. Existem e a e a 6 runlevels dispon´ ıveis em um sistema Slackware. Runlevel O estado geral do sistema.162 ´ CAP´ ITULO 20. Sistemas de arquivos residem sobre as parti¸˜es. runlevel 4 ´ o login em modo gr´fico. NFS O sistema de arquivo de rede (Network FileSystem). Nome de dom´ ınio O nome DNS de um computador. Octal Sistema de n´meros de Base-8. Sa´ padr˜o (stdout) ıda a . runlevel 1 ´ o modo monousu´rio. e Programa wrapper Um programa cuja a unica finalidade ´ executar outros programas. provendo assim. Processo Um programa em execu¸˜o.Internet Service Provider). atualiza¸˜o e remo¸˜o destes arquivos. Isto ajuda a prevenir ataques de brute-force para quebrar senhas. a um provedor de servi¸os de Internet (ISP . PPP Protocolo Ponto-a-Ponto (Point-to-Point Protocol). N´ de Dispositivo (Device Node) o Um tipo de arquivo especial no sistema de arquivos /dev que representa um componente de hardware para o sistema operacional. um m´todo transparente de compare tilhamento de arquivos. PPP ´ utilizado principalmente para e conectar. Runlevel 6 significa re´ ıniciar o computador (reboot). excluindo seu hostname. NFS permite montar sistemas de arquivos remotos como se fossem locais. c Primeiro plano Um programa que aceita entrada de um terminal ´ dito que est´ sendo executado em primeiro e a plano. N´ cleo (Kernel) u O cora¸˜o do sistema operacional. co Ponto de montagem Um diret´rio vazio em um sistema de arquivos onde um outro sistema de arquivos pode ser o montado ou anexado. via modem. empacotados e comprimidos em um unico ´ arquivo. ca ca ca Pacote de senhas Shadow O pacote de senhas shadow permite que senhas criptografadas sejam escondidas dos usu´rios. O n´cleo ´ a parte que provˆ controle b´sico de processos ca u e e a e interfaces com o hardware do computador. ca Processo suspenso Um processo que foi congelado at´ que seja morto ou reiniciado. etc. a enquanto o resto das informa¸˜es do arquivo /etc/passwd permanecem vis´ co ıveis para todos. definido pelo init. com d´ u ıgitos de 0-7. Pacote de programas Um programa e os arquivos a ele associados. Parti¸˜o ca Uma divis˜o do disco r´ a ıgido. Pager Um programa gr´fico (X) que permite aos usu´rios visualisar e alternar entre v´rias ´reas a a a a de trabalho. junto com os scripts ou informa¸˜es necess´rias para ajudar no gerenciamento da co a instala¸˜o. GLOSSARIO Motif Um conjunto de ferramentas de programa¸˜o popularmente utilizado em muitos programas ca X antigos.

a e a e Servi¸o c O compartilhamento de informa¸˜es e/ou dados entre programas ou computadores de um co unico servidor para m´ltiplos clientes. e Servidor X Um programa no Sistema de Janelas X que faz a interface com o hardware gr´fico e abriga a os programas gr´ficos que est˜o em execu¸˜o. a sub-rede . desta forma esta pode ser separa de uma sa´ normal. qual interface de rede est´ conectada a co a a determinada rede. Por exemplo. Um bloco possui 512 bytes. Todos os pacotes do KDE ca est˜o na s´rie kde. ambos cliente e servidor s˜o necess´rios. O superbloco co a s˜o os primeiros 512 bytes de uma parti¸˜o.168. ´.0 ´ uma c e e sub-rede de 192. mais pr´xima da universal. etc. a a Sinal Programas Unix podem comunicar uns com os outros atrav´s de simples sinais. o e ca o de dados armazenados em discos (tanto fixos como remov´ ıveis).0. etc. FTP. a ca Tabela de roteamento Um conjunto de informa¸˜es que o kernel utiliza para rotear dados ao redor da rede. Os programas reportam qualquer mensagem de erro na a stderr. Sistema de janelas X Interface gr´fica com suporte a rede usada na maioria dos sistemas operacionais Unix-like. e a Sub-rede Uma faixa de endere¸os IP que ´ parte de uma faixa maior.163 A sa´ padr˜o de informa¸˜es no Unix. Sa´ padr˜o de erro (stderr) ıda a O padr˜o Unix para reportar erros. pacotes de rede est˜o na s´rie n. a incluindo o Linux. etc. ıda a co ıda a que ´ separada das mensagens de erro. HTTP. ´ u a c Servidor de nomes Um servidor de informa¸˜es DNS. O sistema de arquivos ´ a forma de representa¸˜o. NFS. SLIP ´ um protocolo e similar ao PPP e ´ utilizado para conectar duas m´quinas via interface serial. e podem ser concatenadas ou e redirecionadas para a stdin de outros programas ou para um arquivo.0 (onde 0 ´ uma mascara indefinida). a S´ries de programas e Uma cole¸˜o de pacotes de softwares relacionados no Slackware. reportadas na stderr. etc. Sistema de arquivos Uma representa¸˜o dos dados armazenados onde arquivos de dados s˜o mantidos organizados ca a em diret´rios. SLIP Protocolo de interface de linha serial (Serial Line Interface Protocol). p´ginas sobre e a ca a ca a administra¸˜o de sistemas est˜o na se¸˜o 5. Textos normais de sa´ s˜o reportados na stdout.1. s˜o servi¸os. os quais s˜o e a enumerados e geralmente possuem significados espec´ ıficos. ıda Se¸˜o Man ca P´ginas no padr˜o de manuais online do Unix (man) s˜o agrupadas em se¸˜es para facia a a co litar referˆncias. na verdade. Possui co informa¸˜es como: onde est´ o seu gateway default. Muitos e programas de shell seguro est˜o dispon´ a ıveis.168. kill -l listar´ os sinais dispon´ a ıveis. a a ca Shell seguro (SSH . Tagfile . Servidores de nomes traduzem nomes DNS em endere¸os co c IP num´ricos.1. 192. ca a ca Segundo plano (Background) Qualquer processo que esteja executando e n˜o aceite entradas ou controles do terminal ´ a e dito que est´ sendo executado em segundo plano. Todas as p´ginas sobre programa¸˜o em C est˜o na se¸˜o 3.Secure SHell) Um m´todo encriptado (assim seguro) de se conectar remotamente a um computador. e e Superbloco No Linux as parti¸˜es s˜o definidas em blocos.

Vari´veis de ambiente s˜o geralmente a a a utilizadas para armazenar preferˆncias e parˆmetros padr˜o. e Terminal virtual O uso de programas para simular m´ltiplos terminais enquanto utiliza um simples conjunto u de dispositivos de entrada/sa´ (teclado. Um conjunto especial de teclas. a Vari´vel de ambiente a Uma vari´vel configurada no shell do usu´rio que pode ser referenciada pelo usu´rio ou a a a por programas executados por este usu´rio nesta shell.164 ´ CAP´ ITULO 20. Terminal Uma interface homem-m´quina que consiste de pelo menos uma tela (ou tela virtual) e de a algum m´todo de entrada de dados (geralmente um teclado). Um n´mero unico que identifica um usu´rio no a u ´ a sistema. O ca o o termo VESA ´ geralmente usado para denotar um padr˜o especificado por esta associa¸˜o. mouse). uma a e a vez que n´meros s˜o mais f´ceis de manejar. GLOSSARIO Um arquivo usado pelo programa de configura¸˜o (setup) do Slackware durante a instala¸˜o. e a ca Atualmente todos os adaptadores de v´ ıdeo modernos s˜o compat´ a ıveis com VESA. . nomes de usu´rio geralmente s˜o usados somente u a a a a quando o usu´rio precisa ver as coisas acontecendo. ca ca o qual descreve um conjunto de pacotes a serem instalados. UIDs s˜o usados pela maioria dos programas ao inv´s dos nomes de usu´rio. ao ıda serem pressionadas. e a a VESA Associa¸˜o de padr˜es eletrˆnicos de video (Video Electronics Standards Association). UID Identificador de usu´rio (User IDentifier). alterna entre os terminais virtuais a partir de um unico terminal f´ ´ ısico. monitor.

DISTRIBUTION AND MODIFICATION . Finally. whether gratis or for a fee. Suite 330. we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. we want to make certain that everyone understands that there is no warranty for this free software. too. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish). And you must show them these terms so they know their rights. and (2) offer you this license which gives you legal permission to copy.1 Preamble The licenses for most software are designed to take away your freedom to share and change it. Also. receive or can get the source code. 21. By contrast. To protect your rights. we have made it clear that any patent must be licensed for everyone’s free use or not licensed at all. Boston. that you receive source code or can get it if you want it. for each author’s protection and ours.2 TERMS AND CONDITIONS 165 TERMS AND CONDITIONS FOR COPYING.Cap´ ıtulo 21 The GNU General Public License GNU GENERAL PUBLIC LICENSE Version 2. 1991 Free Software Foundation. any free program is threatened constantly by software patents. For example. or if you modify it. If the software is modified by someone else and passed on. so that any problems introduced by others will not reflect on the original authors’ reputations. 21. not price. and that you know you can do these things. We protect your rights with two steps: (1) copyright the software. June 1991 Copyright (C) 1989. the GNU General Public License is intended to guarantee your freedom to share and change free software–to make sure the software is free for all its users. These restrictions translate to certain responsibilities for you if you distribute copies of the software. that you can change the software or use pieces of it in new free programs. if you distribute copies of such a program. The precise terms and conditions for copying. distribution and modification follow. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses. MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document. we want its recipients to know that what they have is not the original. 59 Temple Place. When we speak of free software.) You can apply it to your programs. you must give the recipients all the rights that you have. too. in effect making the program proprietary. To prevent this. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead. we are referring to freedom. Inc. You must make sure that they. but changing it is not allowed. This General Public License applies to most of the Free Software Foundation’s software and to any other program whose authors commit to using it. distribute and/or modify the software.

• You must cause any work that you distribute or publish. The act of running the Program is not restricted. If identifiable sections of that work are not derived from the Program. to be licensed as a whole at no charge to all third parties under the terms of this License. You may charge a fee for the physical act of transferring a copy. • If the modified program normally reads commands interactively when run. Activities other than copying. and copy and distribute such modifications or work under the terms of Section 1 above. when started running for such interactive use in the most ordinary way. (Exception: if the Program itself is interactive but does not normally print such an announcement. Thus.) These requirements apply to the modified work as a whole. then this License. . distribution and modification are not covered by this License. and its terms. you must cause it. and thus to each and every part regardless of who wrote it. and you may at your option offer warranty protection in exchange for a fee. keep intact all the notices that refer to this License and to the absence of any warranty. that in whole or in part contains or is derived from the Program or any part thereof. rather. saying that you provide a warranty) and that users may redistribute the program under these conditions. below. and can be reasonably considered independent and separate works in themselves. In addition. either verbatim or with modifications and/or translated into another language. refers to any such program or work. to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else. The ”Program”. whose permissions for other licensees extend to the entire whole. (Hereinafter. your work based on the Program is not required to print an announcement. mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. a work containing the Program or a portion of it. translation is included without limitation in the term ”modification”. Whether that is true depends on what the Program does. thus forming a work based on the Program. the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. provided that you also meet all of these conditions: • You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. and a ”work based on the Program”means either the Program or any derivative work under copyright law: that is to say. • You may modify your copy or copies of the Program or any portion of it. the distribution of the whole must be on the terms of this License. • You may copy and distribute verbatim copies of the Program’s source code as you receive it.166 CAP´ ITULO 21. provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty. do not apply to those sections when you distribute them as separate works. it is not the intent of this section to claim rights or contest your rights to work written entirely by you.) Each licensee is addressed as ”you”. and give any other recipients of the Program a copy of this License along with the Program. THE GNU GENERAL PUBLIC LICENSE • This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. and telling the user how to view a copy of this License. and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). But when you distribute the same sections as part of a whole which is a work based on the Program. they are outside its scope. in any medium.

However. – Accompany it with the information you received as to the offer to distribute corresponding source code. the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler.Each time you redistribute the Program (or any work based on the Program). sublicense or distribute the Program is void. You may not impose any further restrictions on the recipients’ exercise of the rights granted herein. conditions are imposed on you (whether by court order. and will automatically terminate your rights under this License. or rights. sublicense. even though third parties are not compelled to copy the source along with the object code. distribute or modify the Program subject to these terms and conditions.21.) The source code for a work means the preferred form of the work for making modifications to it. to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange. under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: – Accompany it with the complete corresponding machine-readable source code. nothing else grants you permission to modify or distribute the Program or its derivative works. agreement or otherwise) that contradict the conditions of this License. which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange. complete source code means all the source code for all modules it contains. plus any associated interface definition files. modify. If you cannot distribute so as to satisfy simultaneously your obligations under this License . as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues). distributing or modifying the Program or works based on it. However. plus the scripts used to control compilation and installation of the executable. a complete machine-readable copy of the corresponding source code. for a charge no more than your cost of physically performing source distribution. Any attempt otherwise to copy. modify.If. For an executable work. the recipient automatically receives a license from the original licensor to copy. You are not responsible for enforcing compliance by third parties to this License. . kernel. or. as a special exception. or distribute the Program except as expressly provided under this License. by modifying or distributing the Program (or any work based on the Program). TERMS AND CONDITIONS 167 • You may copy and distribute the Program (or a work based on it. These actions are prohibited by law if you do not accept this License. Therefore. However. in accord with Subsection b above. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer. – Accompany it with a written offer. or. and all its terms and conditions for copying. unless that component itself accompanies the executable. from you under this License will not have their licenses terminated so long as such parties remain in full compliance. If distribution of executable or object code is made by offering access to copy from a designated place. they do not excuse you from the conditions of this License. .2.You are not required to accept this License. you indicate your acceptance of this License to do so. parties who have received copies. . valid for at least three years. since you have not signed it. then offering equivalent access to copy the source code from the same place counts as distribution of the source code. and so on) of the operating system on which the executable runs. • You may not copy. to give any third party.

.If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims. For example.The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries. it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. this section has the sole purpose of protecting the integrity of the free software distribution system. If the Program does not specify a version number of this License. if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you. For software which is copyrighted by the Free Software Foundation. BUT NOT LIMITED TO. then as a consequence you may not distribute the Program at all.NO WARRANTY BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE. INCLUDING. write to the Free Software Foundation. . the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. THE IMPLIED WARRANTIES . THE GNU GENERAL PUBLIC LICENSE and any other pertinent obligations. which is implemented by public license practices. In such case. we sometimes make exceptions for this. so that distribution is permitted only in or among countries not thus excluded. If the Program specifies a version number of this License which applies to it and ”any later version”. THERE IS NO WARRANTY FOR THE PROGRAM. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system. this License incorporates the limitation as if written in the body of this License. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM ”AS IS”WITHOUT WARRANTY OF ANY KIND.168 CAP´ ITULO 21. . write to the author to ask for permission. If any portion of this section is held invalid or unenforceable under any particular circumstance. you may choose any version ever published by the Free Software Foundation. • If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different. you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. EITHER EXPRESSED OR IMPLIED. TO THE EXTENT PERMITTED BY APPLICABLE LAW. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. Each version is given a distinguishing version number. then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. but may differ in detail to address new problems or concerns. Such new versions will be similar in spirit to the present version.

This is free software. .21. To do so. You should also get your employer (if you work as a programmer) or your school. See the GNU General Public License for more details. or (at your option) any later version. SPECIAL. Inc. make it output a short notice like this when it starts in an interactive mode: ”’ Gnomovision version 69. either version 2 of the License. to sign a ”copyright disclaimer”for the program. SHOULD THE PROGRAM PROVE DEFECTIVE. Of course. YOU ASSUME THE COST OF ALL NECESSARY SERVICING. and each file should have at least the ”copyright”line and a pointer to where the full notice is found. Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY. This program is distributed in the hope that it will be useful.3. EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. for details type ‘show w’. MA 02111-1307 USA// Also add information on how to contact you by electronic and paper mail. alter the names: . Here is a sample. write to the Free Software Foundation. 59 Temple Place. You should have received a copy of the GNU General Public License along with this program. the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. attach the following notices to the program. ”’ The hypothetical commands ‘show w’ and ‘show c’ should show the appropriate parts of the General Public License. HOW TO APPLY THESE TERMS TO YOUR NEW PROGRAMS 169 OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.> Copyright (C) <year> <name of author> // This program is free software. but WITHOUT ANY WARRANTY. INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS).. if not.IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER. you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation. they could even be mouse-clicks or menu items–whatever suits your program. without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. //<one line to give the program’s name and a brief idea of what it does. if any. and you are welcome to redistribute it under certain conditions. END OF TERMS AND CONDITIONS 21. REPAIR OR CORRECTION. the commands you use may be called something other than ‘show w’ and ‘show c’. Suite 330. BE LIABLE TO YOU FOR DAMAGES. type ‘show c’ for details. INCLUDING ANY GENERAL. If the program is interactive. if necessary. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. Boston. OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE. and you want it to be of the greatest possible use to the public.3 How to Apply These Terms to Your New Programs If you develop a new program.

170 CAP´ ITULO 21. 1 April 1989 Ty Coon. you may consider it more useful to permit linking proprietary applications with the library. President of Vice This General Public License does not permit incorporating your program into proprietary programs. Inc. THE GNU GENERAL PUBLIC LICENSE Yoyodyne.. use the GNU Library General Public License instead of this License. If your program is a subroutine library. If this is what you want to do. hereby disclaims all copyright interest in the program ‘Gnomovision’ (which makes passes at compilers) written by James Hacker. <signature of Ty Coon>. .

index. Sizemore Murray Stokely Simon Williams Contribution Co-author of first edition. Co-author of first edition. 22.1 Contribuidores para o Portuguˆs do Brasil e Tradu¸˜o ca Tradu¸˜o ca Revis˜o a Tradu¸˜o ca Tradu¸˜o ca Tradu¸˜o ca Tradu¸˜o ca Tradu¸˜o ca Compila¸˜o ca Tradu¸˜o ca Tradu¸˜o ca Tradu¸˜o ca Tradu¸˜o ca Revis˜o a Revis˜o a Reposit´rio SVN o Revis˜o a Revis˜o a Revis˜o a Revis˜o a Revis˜o a Revis˜o a Revis˜o a Revis˜o a Revis˜o a Site Site Diogo Leal (estranho) Bruno T. and prepared the book for print publication Contributed the Emacs chapter. lead author of second edition. Wrote the wireless networking section. Russo (BrunoRusso) Ellington Santos Artur Souza (MoRpHeUz) Thiago Diniz Jos´ Luiz Moquenco de Figueiredo (zecafig) e Waldemar Silva J´nior (wsjunior) u Jo˜o Carlos de Oliveira Coutinho (BitDesigner) a Raphael Bastos (ChemonZ) Gabriel Favaro Rodrigo Amorim Ferreira Tiago T3 Neumar Malheiros Gabriel Marrocos Magalh˜es (Manda Chuva) a Ariel Jairo Lucas Frederico Agradecemos muito a todos que contribuiram.Cap´ ıtulo 22 Contributing Authors Author David Cantrell Alan Hicks Logan Johnson Keith Keller Joost Kremers Chris Lumens Jurgen Philippaerts David G. Updated the Basic Networking Commands chapter. Project Organizer. fazendo com que este projeto fosse poss´ ıvel 171 . Contributed the Emacs chapter. Updated the Introduction Wrote the Preface. Co-author of first edition.

Sign up to vote on this title
UsefulNot useful