Escolar Documentos
Profissional Documentos
Cultura Documentos
10.1
02/21/2006
www.novell.com Referncia
Referncia
Lista de Autores: Jrg Arndt, Stefan Behlert, Frank Bodammer, James Branam, Volker Buzek, Klara Cihlarova, Stefan Dirsch, Olaf Donjak, Roman Drahtmller, Thorsten Dubiel, Torsten Duwe, Thomas Fehr, Stefan Fent, Werner Fink, Jakub Friedl, Kurt Garloff, Joachim Gleiner, Carsten Gro, Andreas Grnbacher, Berthold Gunreben, Franz Hassels, Andreas Jaeger, Jana Jaeger, Klaus Kmpf, Andi Kleen, Hubert Mantel, Lars Marowsky-Bree, Chris Mason, Johannes Meixner, Lars Mller, Matthias Nagorni, Anas Nashif, Siegfried Olschner, Edith Parzefall, Peter Pml, Thomas Renninger, Hannes Reinecke, Scott Rhoades, Thomas Rlz, Heiko Rommel, Tanja Roth, Marcus Schfer, Thomas Schraitle, Klaus Singvogel, Frank Sundermeyer, Elisabeth Tobiasson, Hendrik Vogelsang, Klaus G. Wagner, Rebecca Walter, Christian Zoz Esta publicao propriedade intelectual da Novell Inc. O seu contedo pode ser duplicado, em parte ou integralmente, desde que um rtulo de copyright esteja visivelmente localizado em cada cpia. Todas as informaes deste manual foram compiladas com a maior ateno possvel aos detalhes. Entretanto, isso no garante uma preciso absoluta. O SUSE LINUX GmbH, os autores ou os tradutores no devero ser responsabilizados por possveis erros ou conseqncias decorrentes. Novell, o logotipo da Novell, o logotipo N e SUSE so marcas registradas da Novell, Inc. nos Estados Unidos e em outros pases. *Linux marca registrada de Linus Torvalds. Todas as outras marcas registradas de terceiros pertencem aos seus respectivos proprietrios. Envie sugestes e comentrios para documentation@suse.de.
Sumrio
xi 15 17
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 26 36 46 51
1 Instalao remota
1.1 1.2 1.3 1.4 1.5 Cenrios de instalao para instalao remota . . . . . . . Configurando o servidor que mantm as fontes de instalao Preparando a inicializao do sistema de destino . . . . . Inicializando o sistema de destino para instalao . . . . . Monitorando o processo de instalao . . . . . . . . . .
55
55 63
69
69 72 91
Parte 2
Administrao
103 105
105 115
4 Segurana no Linux
4.1 4.2 Mascaramento e firewalls . . . . . . . . . . . . . . . . . . . . . SSH: operaes seguras de rede . . . . . . . . . . . . . . . . . .
147
147 149 150 150 158 159
161
161 163 163 164 164 165 166 168 168 169 169 170 170 174 175 176 176 177 177 178
Parte 3
Sistema
179
7.4
Especificaes do kernel . . . . . . . . . . . . . . . . . . . . .
184
185
185 189 198
9 O Carregador de Boot
9.1 9.2 9.3 9.4 9.5 9.6 9.7 9.8 Selecionando um carregador de boot . . . . . Inicializando com o GRUB . . . . . . . . . . Configurando o carregador de boot com o YaST Desinstalando a controladora de boot do Linux . Criando CDs de boot . . . . . . . . . . . . A tela grfica do SUSE . . . . . . . . . . . Soluo de problemas . . . . . . . . . . . Mais informaes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
201
202 202 212 217 217 219 219 221
223
223 230 230 231
1 1 Operao da impressora
11.1 11.2 11.3 11.4 11.5 11.6 11.7 Fluxo de trabalho do sistema de impresso . . . Mtodos e protocolos de conexo de impressoras Instalao do software . . . . . . . . . . . . Configurao da impressora . . . . . . . . . . Configurao de aplicativos . . . . . . . . . . Recursos especiais do SUSE Linux . . . . . . . . Soluo de problemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
237
239 239 240 241 247 248 253
261
O diretrio /dev . . . . . . . . . . . . . . . . . . . . . . . . 261 udev e uevents de kernel . . . . . . . . . . . . . . . . . . . . . 262 Drivers, mdulos de kernel e dispositivos . . . . . . . . . . . . . . 262 Inicializao e configurao do dispositivo inicial . . . . . . . . . . . 263 Depurando eventos do udev . . . . . . . . . . . . . . . . . . . . 264 Influenciando o tratamento de evento de dispositivo de kernel com regras do udev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
269
269 270 276 278 279
1 4 O sistema X Window
14.1 14.2 14.3 14.4 Configurao do X11 com o SaX2 Otimizando a configurao do X . Instalando e configurando fontes . Configurao 3D do OpenGL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
281
281 283 289 295
299
299 302 308 311
313
314 316 318 320
323
325 325 326 327 328
Parte 4
Servios
329 331
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335 338 347 348 359 362 374
1 8 Rede bsica
18.1 18.2 18.3 18.4 18.5 18.6 18.7 Roteamento e endereos IP . . . . . . . . . . . . IPv6 A Internet da prxima gerao . . . . . . . Resoluo de nomes . . . . . . . . . . . . . . . Configurando uma conexo de rede com o YaST . . . Gerenciando conexes de rede com o NetworkManager Configurando uma conexo de rede manualmente . . smpppd como Assistente de Discagem . . . . . . .
377
377 378 379 379
381
381 382 390 392 397 401 402 403 403
2 1 Usando o NIS
21.1 21.2 Configurando servidores NIS . . . . . . . . . . . . . . . . . . . . Configurando clientes NIS . . . . . . . . . . . . . . . . . . . . .
405
405 412
415
415 416 417 418 420
2 3 DHCP
23.1 23.2 23.3 23.4 Configurando um servidor DHCP com o YaST Pacotes de software DHCP . . . . . . . . O dhcpd do servidor DHCP . . . . . . . . Mais informaes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
421
422 426 426 430
431
431 435 435
437
439 440 443 448 452 460 461
463
463 465 480 482 490 493 499 501 502
2 7 Sincronizao de arquivos
27.1 27.2 27.3 27.4 27.5 27.6 27.7 Software de sincronizao de dados disponvel . . . Determinando fatores para selecionar um programa Introduo ao Unison . . . . . . . . . . . . . Introduo ao CVS . . . . . . . . . . . . . . . Introduo ao Subversion . . . . . . . . . . . . Introduo ao rsync . . . . . . . . . . . . . . Introduo ao mailsync . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
505
505 509 513 515 518 521 523
2 8 Samba
28.1 28.2 28.3 28.4 28.5 28.6 Terminologia . . . . . . . . . . Iniciando e interrompendo o Samba Configurando um servidor Samba . Configurando clientes . . . . . . Samba como servidor de login . . . Mais informaes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
527
527 529 529 535 536 537
539
540 542 543 546 551 554 556 558 559
Parte 5
Mobilidade
561 563
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563 571 572 572
3 1 PCMCIA
31.1 31.2 31.3 Controlando placas PCMCIA usando pccardctl . . . . . . . . . . . . PCMCIA em detalhes . . . . . . . . . . . . . . . . . . . . . . . Soluo de problemas . . . . . . . . . . . . . . . . . . . . . .
575
576 576 579
583
584 584 585 592 595 596
3 3 Gerenciamento de energia
33.1 33.2 33.3 33.4 33.5 33.6 Funes de economia de energia . . . . APM . . . . . . . . . . . . . . . . ACPI . . . . . . . . . . . . . . . . Descanso do disco rgido . . . . . . . O Pacote powersave . . . . . . . . . O mdulo Gerenciamento de energia YaST . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
597
598 599 600 608 610 618
623
623 635 647
ndice Remissivo
651
1 Feedback
Queremos receber seus comentrios e sugestes sobre este manual e sobre a documentao restante que acompanha este produto. Use a funo Comentrios do Usurio, situada na parte inferior de cada pgina da documentao online e digite seus comentrios.
2 Documentao adicional
H outros manuais disponveis sobre o produto SUSE Linux: online em http://www .novell.com/documentation/ ou no sistema instalado em /usr/share/ doc/manual/: Inicializao do SUSE Linux Este guia apresenta o procedimento de instalao do SUSE Linux e o uso bsico do ambiente de rea de trabalho. Uma verso online deste documento pode ser encontrada em http://www.novell.com/documentation/suse101/ Aplicativos do SUSE Linux Este guia apresenta uma seleo das ferramentas mais importantes fornecidas pelo SUSE Linux. Uma verso online deste documento pode ser encontrada em http://www.novell.com/documentation/suse101/. Guia de Administrao do Novell AppArmor 2.0 Este guia contm informaes detalhadas sobre o uso do AppArmor em seu ambiente. Uma verso online deste documento pode ser encontrada em http:// www.novell.com/documentation/apparmor/.
3 Convenes da documentao
As seguintes convenes tipogrficas so usadas neste manual: /etc/passwd: nomes de arquivo e diretrio marcador: substitua marcador pelo valor real PATH: a varivel de ambiente PATH ls, --help: comandos, opes e parmetros user: usurios ou grupos
Alt , Alt + F1 : uma tecla ou combinao de teclas para pressionar, mostradas em maisculas como no teclado
5 Reconhecimento
Os desenvolvedores do Linux esto voluntariamente empenhados com a promoo do desenvolvimento do Linux em escala global. Agradecemos por seus esforos esta distribuio no seria possvel sem eles. Ademais, gostaramos de agradecer a Frank Zappa e a Pawar. Agradecimentos especiais, claro, a Linus Torvalds. Divirta-se! Equipe SUSE
xiii
Instalao remota
O SUSE Linux pode ser instalado de vrias maneiras. Como na instalao comum de CD ou DVD abordada no Captulo Instalao com o YaST (Inicializao), voc pode escolher entre vrios mtodos baseados em rede ou at mesmo optar por um mtodo totalmente sem interveno para a instalao do SUSE Linux. Cada mtodo apresentado por meio de duas listas de verificao breves: uma que relaciona os pr-requisitos do mtodo e outra que ilustra o procedimento bsico. So fornecidos mais detalhes para todas as tcnicas usadas nos cenrios de instalao. NOTA Nas sees a seguir, o sistema que manter a instalao do seu novo SUSE Linux conhecido como sistema de destino ou destino de instalao. O termo fonte de instalao usado para todas as fontes de dados de instalao. Isso inclui mdia fsica, como CD e DVD e servidores de rede que distribuem os dados de instalao na sua rede.
IMPORTANTE A configurao do sistema X Window no faz parte de nenhum processo de instalao remota. Aps o trmino da instalao, efetue login no sistema de destino como root, digite telinit 3 e inicie SaX2 para configurar o hardware de vdeo, como descrito na Seo 14.1, Configurao do X11 com o SaX2 (p 281).
18
Referncia
2 Inicialize o sistema de destino usando o primeiro CD ou DVD do kit de mdia do SUSE Linux. 3 Quando a tela de inicializao do sistema de destino for exibida, use o prompt de opes de inicializao para definir as opes de VNC apropriadas e o endereo da fonte de instalao. Isso est descrito detalhadamente na Seo 1.4, Inicializando o sistema de destino para instalao (p 46). O sistema de destino inicializado em um ambiente baseado em texto, apresentando o endereo de rede e nmero de exibio sob o qual o ambiente de instalao grfico pode ser endereado por qualquer aplicativo visualizador VNC ou browser. As instalaes VNC se anunciam em OpenSLP e podem ser encontradas usando-se o Konqueror no modo service:// ou slp://. 4 Na estao de trabalho de controle, abra um aplicativo de visualizao VNC ou browser da Web e conecte-se ao sistema de destino como descrito na Seo 1.5.1, Instalao VNC (p 51). 5 Execute a instalao como descrito no Captulo Instalao com o YaST (Inicializao). Ser necessrio reconectar-se ao sistema de destino depois de reinicializado, para concluir a parte final da instalao. 6 Conclua a instalao.
1.1.2 Instalao remota simples por VNC: configurao de rede dinmica por DHCP
Este tipo de instalao ainda requer algum grau de acesso fsico ao sistema de destino para inicializar na instalao. A configurao de rede feita com DHCP. A instalao em si inteiramente controlada por uma estao de trabalho remota usando VNC para conectar-se ao instalador, mas ainda requer a interao do usurio no trabalho real de configurao. Para este tipo de instalao, verifique se os seguintes requisitos foram atendidos:
Instalao remota
19
Fonte da instalao remota: NFS, HTTP, FTP ou SMB com conexo de rede ativa Sistema de destino com conexo de rede ativa Sistema de controle com conexo de rede ativa e software visualizador VNC ou browser habilitado para Java (Firefox, Konqueror, Internet Explorer ou Opera) Mdia fsica de inicializao (CD, DVD, disco de inicializao personalizado) para inicializar o sistema de destino Servidor DHCP em execuo fornecendo endereos IP Para executar este tipo de instalao, proceda da seguinte maneira: 1 Configure a fonte de instalao como descrito na Seo 1.2, Configurando o servidor que mantm as fontes de instalao (p 26). Escolha um servidor de rede NFS, HTTP ou FTP. No caso de uma fonte de instalao SMB, consulte a Seo 1.2.5, Gerenciando uma fonte de instalao SMB (p 35). 2 Inicialize o sistema de destino usando o primeiro CD ou DVD do kit de mdia do SUSE Linux. 3 Quando a tela de inicializao do sistema de destino for exibida, use o prompt de opes de inicializao para definir as opes de VNC apropriadas e o endereo da fonte de instalao. Isso est descrito detalhadamente na Seo 1.4, Inicializando o sistema de destino para instalao (p 46). O sistema de destino inicializado em um ambiente baseado em texto, apresentando o endereo de rede e nmero de exibio sob o qual o ambiente de instalao grfico pode ser endereado por qualquer aplicativo visualizador VNC ou browser. As instalaes VNC se anunciam em OpenSLP e podem ser encontradas usando-se o Konqueror no modo service:// ou slp://. 4 Na estao de trabalho de controle, abra um aplicativo de visualizao VNC ou browser da Web e conecte-se ao sistema de destino como descrito na Seo 1.5.1, Instalao VNC (p 51). 5 Execute a instalao como descrito no Captulo Instalao com o YaST (Inicializao). Ser necessrio reconectar-se ao sistema de destino depois de reinicializado, para concluir a parte final da instalao. 20 Referncia
6 Conclua a instalao.
Instalao remota
21
4 Prepare o sistema de destino para a inicializao PXE. Isso est descrito detalhadamente na Seo 1.3.5, Preparando o sistema de destino para inicializao PXE (p 45). 5 Inicie o processo de inicializao do sistema de destino usando Wake on LAN. Isso est descrito na Seo 1.3.7, Wake on LAN (p 45). 6 Na estao de trabalho de controle, abra um aplicativo de visualizao VNC ou browser da Web e conecte-se ao sistema de destino como descrito na Seo 1.5.1, Instalao VNC (p 51). 7 Execute a instalao como descrito no Captulo Instalao com o YaST (Inicializao). Ser necessrio reconectar-se ao sistema de destino depois de reinicializado, para concluir a parte final da instalao. 8 Conclua a instalao.
22
Referncia
Endereos IP esttico vlidos j atribudos fonte de instalao e ao sistema de controle Endereos IP esttico vlidos para atribuir ao sistema de destino Para executar este tipo de instalao, proceda da seguinte maneira: 1 Configure a fonte de instalao como descrito na Seo 1.2, Configurando o servidor que mantm as fontes de instalao (p 26). 2 Inicialize o sistema de destino usando o primeiro CD ou DVD do kit de mdia do SUSE Linux. 3 Quando a tela de inicializao do sistema de destino for exibida, use o prompt de opes de inicializao para definir os parmetros apropriados de conexo de rede, o endereo da fonte de instalao e a habilitao SSH. Isso est descrito detalhadamente na Seo 1.4.3, Usando opes de inicializao personalizadas (p 48). O sistema de destino inicializado em um ambiente baseado em texto, apresentando o endereo de rede sob o qual o ambiente de instalao grfica pode ser endereado por qualquer cliente SSH. 4 Na estao de trabalho de controle, abra uma janela de terminal e conecte-se ao sistema de destino como descrito em Conectando-se ao programa de instalao (p 53). 5 Execute a instalao como descrito no Captulo Instalao com o YaST (Inicializao). Ser necessrio reconectar-se ao sistema de destino depois de reinicializado, para concluir a parte final da instalao. 6 Conclua a instalao.
Instalao remota
23
1.1.5 Instalao remota simples por SSH: configurao de rede dinmica por DHCP
Este tipo de instalao ainda requer algum grau de acesso fsico ao sistema de destino para a inicializao na instalao e para determinar o endereo IP do destino de instalao. A instalao em si inteiramente controlada por uma estao de trabalho remota usando VNC para conectar-se ao instalador, mas ainda requer a interao do usurio no trabalho real de configurao. Para este tipo de instalao, verifique se os seguintes requisitos foram atendidos: Fonte da instalao remota: NFS, HTTP, FTP ou SMB com conexo de rede ativa Sistema de destino com conexo de rede ativa Sistema de controle com conexo de rede ativa e software cliente SSH ativo. Mdia fsica de inicializao (CD ou DVD) para inicializar o sistema de destino Servidor DHCP em execuo fornecendo endereos IP Para executar este tipo de instalao, proceda da seguinte maneira: 1 Configure a fonte de instalao como descrito na Seo 1.2, Configurando o servidor que mantm as fontes de instalao (p 26). Escolha um servidor de rede NFS, HTTP ou FTP. No caso de uma fonte de instalao SMB, consulte a Seo 1.2.5, Gerenciando uma fonte de instalao SMB (p 35). 2 Inicialize o sistema de destino usando o primeiro CD ou DVD do kit de mdia do SUSE Linux. 3 Quando a tela de inicializao do sistema de destino for exibida, use o prompt de opes de inicializao para passar os parmetros apropriados de conexo de rede, a localizao da fonte de instalao e a habilitao SSH. Consulte a Seo 1.4.3, Usando opes de inicializao personalizadas (p 48) para obter instrues detalhadas sobre o uso desses parmetros.
24
Referncia
O sistema de destino inicializado em um ambiente baseado em texto, apresentando o endereo de rede sob o qual o ambiente de instalao grfica pode ser endereado por qualquer cliente SSH. 4 Na estao de trabalho de controle, abra uma janela de terminal e conecte-se ao sistema de destino como descrito em Conectando-se ao programa de instalao (p 53). 5 Execute a instalao como descrito no Captulo Instalao com o YaST (Inicializao). Ser necessrio reconectar-se ao sistema de destino depois de reinicializado, para concluir a parte final da instalao. 6 Conclua a instalao.
rede NFS, HTTP ou FTP. Para obter informaes sobre como configurar uma fonte de instalao SMB, consulte a Seo 1.2.5, Gerenciando uma fonte de instalao SMB (p 35). 2 Configure um servidor TFTP para manter uma imagem de inicializao que possa ser extrada pelo sistema de destino. Isso est descrito na Seo 1.3.2, Configurando um servidor TFTP (p 38). 3 Configure um servidor DHCP para fornecer endereos IP a todas as mquinas e revelar a localizao do servidor TFTP para o sistema de destino. Isso est descrito na Seo 1.3.1, Configurando um servidor DHCP (p 37). 4 Prepare o sistema de destino para a inicializao PXE. Isso est descrito detalhadamente na Seo 1.3.5, Preparando o sistema de destino para inicializao PXE (p 45). 5 Inicie o processo de inicializao do sistema de destino usando Wake on LAN. Isso est descrito na Seo 1.3.7, Wake on LAN (p 45). 6 Na estao de trabalho de controle, inicie um cliente SSH e conecte-se ao sistema de destino como descrito na Seo 1.5.2, Instalao SSH (p 53). 7 Execute a instalao como descrito no Captulo Instalao com o YaST (Inicializao). Ser necessrio reconectar-se ao sistema de destino depois de reinicializado, para concluir a parte final da instalao. 8 Conclua a instalao.
26
Referncia
LINUX Enterprise Server ou do SUSE Linux, configure a fonte de instalao manualmente. DICA Voc pode usar uma mquina Microsoft Windows como servidor de instalao para a distribuio do Linux. Consulte a Seo 1.2.5, Gerenciando uma fonte de instalao SMB (p 35) para obter detalhes.
Instalao remota
27
instalao, que definida na etapa seguinte. Se voc selecionou NFS na etapa anterior, defina curingas e opes de exportaes. O servidor NFS estar disponvel em nfs://IP do servidor/Nome. Detalhes sobre NFS e exportaes so encontrados no Captulo 22, Compartilhando sistemas de arquivos com o NFS (p 415). 6 Configure a fonte de instalao. Antes que as mdias de instalao sejam copiadas para seu destino, defina o nome da fonte de instalao (de preferncia, uma abreviao fcil de ser lembrada do produto e da verso). O YaST permite fornecer imagens ISO da mdia em vez de cpias dos CDs de instalao. Se desejar, ative a caixa de seleo relevante e especifique o caminho de diretrio no qual os arquivos ISO podem ser encontrados localmente. Dependendo do produto a distribuir usando este servidor de instalao, talvez sejam necessrios mais CDs de expanso ou CDs de service pack para instalar o produto completamente. Se voc ativar Solicitar CDs adicionais, o YaST o lembrar automaticamente de fornecer essas mdias. Para anunciar o servidor de instalao na rede por OpenSLP, ative a opo adequada. DICA Considere anunciar a sua fonte de instalao por OpenSLP se a sua configurao de rede for compatvel com esta opo. Isto o livra de digitar o caminho de instalao da rede em todas as mquinas de destino. Os sistemas de destino, inicializados com a opo de inicializao SLP, encontraro a fonte de instalao de rede sem outras configuraes. Para obter detalhes sobre esta opo, consulte a Seo 1.4, Inicializando o sistema de destino para instalao (p 46). 7 Faa o upload dos dados de instalao. A etapa mais longa da configurao de um servidor de instalao copiar os CDs de instalao. Insira a mdia na seqncia solicitada pelo YaST e aguarde o trmino do procedimento de cpia. Quando as fontes tiverem sido completamente copiadas, volte para a viso geral das fontes de informaes existentes e feche a configurao selecionando Concluir. O seu servidor de instalao agora est totalmente configurado e pronto para servio. Ele inicializado automaticamente toda vez que o sistema iniciado. Nenhuma outra interveno necessria. Voc precisa apenas configurar e
28
Referncia
inicializar este servio de forma correta e manualmente se tiver desativado a configurao automtica do servio de rede selecionado com YaST como etapa inicial. Para desativar uma fonte de instalao, selecione Mudar na viso geral para chegar a uma lista de todas as fontes de instalao disponveis. Escolha a entrada para remover e selecione Apagar. Este procedimento de excluso s diz respeito desativao do servio de servidor. Os dados de instalao em si permanecem no diretrio escolhido. No entanto, voc pode remov-lo manualmente. Se o seu servidor de instalao fornecer os dados de instalao para mais de um produto da verso de produto, inicie o mdulo de servidor de instalao YaST e selecione Configurar na viso geral das fontes de instalao existentes para configurar a nova fonte de instalao.
Substitua produto por uma abreviao do nome do produto (neste caso, SUSE Linux) e verso_do_produto por uma string que contenha o nome e a verso do produto. 3 Para cada CD contido no kit de mdia, execute os seguintes comandos:
Instalao remota
29
Substitua caminho_unidade_de_CD-ROM pelo caminho real no qual est endereada sua unidade de CD ou DVD. Dependendo do tipo de unidade usado no seu sistema, as opes so cdrom, cdrecorder, dvd ou dvdrecorder. b Renomeie o diretrio com o nmero do CD:
mv caminho_unidade_de_CD-ROM CDx
Substitua x pelo nmero real do seu CD. Para exportar as fontes de instalao por NFS usando YaST, proceda da seguinte maneira: 1 Efetue login como Root. 2 Inicie YaST Servios de Rede Servidor NFS. 3 Selecione Iniciar Servidor NFS e Abrir Porta no Firewall e clique em Prximo. 4 Selecione Adicionar Diretrio e digite o caminho do diretrio que mantm os dados de instalao. Neste caso, /verso_do_produto. 5 Selecione Adicionar Host e digite os nomes de host das mquinas para as quais exportar os dados de instalao. Em vez de especificar os nomes de host aqui, voc pode usar curingas, faixas de endereos de rede ou apenas o nome de domnio da sua rede. Digite as opes de exportao adequadas ou mantenha o padro, que funciona bem na maioria das configuraes. Para obter mais informaes sobre a sintaxe usada na exportao de compartilhamentos NFS, leia a pgina de manual sobre exports. 6 Clique em Concluir. O servidor NFS que mantm as fontes de instalao do SUSE Linux inicializado automaticamente e integrado ao processo de inicializao.
30
Referncia
Se voc preferir exportar manualmente as fontes de instalao por NFS em vez de usar o mdulo de servidor NFS do YaST, proceda da seguinte maneira: 1 Efetue login como Root. 2 Abra o arquivo /etc/exports e digite a seguinte linha:
/verso_do_produto *(ro,root_squash,sync)
Isso exporta o diretrio /verso_do_produto para qualquer host que faa parte desta rede ou para qualquer host que possa se conectar com este servidor. Para limitar o acesso a este servidor, use mscaras de rede ou nomes de domnio em vez do curinga geral *. Consulte a pgina de manual sobre export para obter detalhes. Grave e saia deste arquivo de configurao. 3 Para adicionar o servio NFS lista de servidores iniciados durante a inicializao do sistema, execute os seguintes comandos:
insserv /etc/init.d/nfsserver insserv /etc/init.d/portmap
Se voc precisar mudar a configurao do seu servidor NFS posteriormente, modifique o arquivo de configurao e reinicie o daemon NFS com rcnfsserver restart. Anunciar o servidor NFS por OpenSLP faz o seu endereo ser conhecido por todos os clientes da sua rede. 1 Efetue login como Root. 2 Digite o diretrio /etc/slp.reg.d/. 3 Crie um arquivo de configurao chamado install.suse.nfs.reg contendo as seguintes linhas:
# Register the NFS Installation Server service:install.suse:nfs://$HOSTNAME/path_instsource/CD1,en,65535 description=NFS Installation Source
Instalao remota
31
Substitua caminho_fonte_inst pelo caminho real da fonte de instalao no seu servidor. 4 Grave este arquivo de configurao e inicie o daemon OpenSLP usando o seguinte comando:
rcslpd start
Para obter mais informaes sobre OpenSLP, consulte a documentao do pacote localizada em /usr/share/doc/packages/openslp/ ou consulte o Captulo 19, Servios SLP na rede (p 377).
Substitua fonte_inst pelo nome do produto. d Copie o contedo de todos os CDs de instalao no diretrio raiz do servidor FTP (semelhante ao procedimento descrito na Seo 1.2.2, Configurao manual de uma fonte de instalao NFS (p 29), Passo 3 (p 29)). 32 Referncia
Como alternativa, monte o contedo do repositrio de instalao j existente no ambiente raiz de mudanas do servidor FTP:
mount --bind caminho_fonte_inst /srv/ftp/fonte_inst
Substitua caminho_fonte_inst e fonte_inst pelos valores correspondentes sua configurao. Se precisar tornar os valores permanentes, adicione-os a /etc/fstab. e Inicie pure-ftpd:
pure-ftpd &
3 Anuncie a fonte de instalao por OpenSLP, se for suportado pela configurao da sua rede: a Crie um arquivo de configurao chamado install.suse.ftp.reg em /etc/slp/reg.d/ com as seguintes linhas:
# Register the FTP Installation Server service:install.suse:ftp://$HOSTNAME/srv/ftp/instsource/CD1,en,65535 description=FTP Installation Source
Substitua fonte_inst pelo nome real no diretrio da fonte de instalao do seu servidor. A linha service: deve ser digitada como uma linha contnua. b Grave este arquivo de configurao e inicie o daemon OpenSLP usando o seguinte comando:
rcslpd start
Instalao remota
33
1 Crie um diretrio que mantenha as fontes de instalao como descrito na Seo 1.2.2, Configurao manual de uma fonte de instalao NFS (p 29). 2 Configure o servidor HTTP para distribuir o contedo do seu diretrio de instalao: a Instale o servidor Web do Apache como descrito na Seo 26.1.2, Instalao (p 464). b Digite o diretrio raiz do servidor HTTP (/srv/www/htdocs) e crie um subdiretrio que manter as fontes de instalao:
mkdir fonte_inst
Substitua fonte_inst pelo nome do produto. c Crie um link simblico do local das fontes de instalao para o diretrio raiz do servidor Web (/srv/www/htdocs):
ln -s /caminho_fonte_inst /srv/www/htdocs/fonte_inst
d Modifique o arquivo de configurao do servidor HTTP (/etc/apache2/ default-server.conf) para faz-lo seguir links simblicos. Substitua a seguinte linha:
Options None
por
Options Indexes FollowSymLinks
e Recarregue a configurao do servidor HTTP usando rcapache2 reload. 3 Anuncie a fonte de instalao por OpenSLP, se for suportado pela configurao da sua rede: a Crie um arquivo de configurao chamado install.suse.http.reg em /etc/slp/reg.d/ com as seguintes linhas:
# Register the HTTP Installation Server service:install.suse:http://$HOSTNAME/srv/www/htdocs/instsource/CD1/,en,65535 description=HTTP Installation Source
34
Referncia
Substitua caminho_fonte_inst pelo caminho real da fonte de instalao no seu servidor. A linha service: deve ser digitada como uma linha contnua. b Grave este arquivo de configurao e inicie o daemon OpenSLP usando rcslpd restart.
Instalao remota
35
Digite a pasta yast e crie os arquivos order e instorder. 8 Abra o arquivo order e digite a seguinte linha:
/NLD/CD1 smb://usurio:senha@nome_do_host/produtoCD1
Substitua usurio pelo nome de usurio que voc usa na mquina Windows ou use Guest para habilitar o login de convidado a este compartilhamento. senha deve ser substitudo por sua senha de login ou qualquer outra string para login de convidado. nome_do_host deve ser substitudo pelo nome de rede da sua mquina Windows. 9 Abra o arquivo instorder e digite a seguinte linha:
/produto/CD1
Para usar um compartilhamento SMB montado como fonte de instalao, proceda da seguinte maneira: 1 Inicialize o destino de instalao. 2 Selecione Instalao. 3 Pressione
F3
F4
4 Escolha SMB e digite o nome ou endereo IP da mquina Windows, o nome de compartilhamento (INSTALAR, neste exemplo), nome de usurio e senha. Depois que voc pressionar a instalao.
Enter
36
Referncia
Substitua ip_servidor_tftp pelo endereo IP real do servidor TFTP. Para obter mais informaes sobre as opes disponveis em dhcpd.conf, consulte a pgina de manual sobre dhcpd.conf. 3 Reinicie o servidor DHCP executando rcdhcpd restart. Se voc planeja usar SSH para controle remoto de uma instalao PXE e Wake on LAN, especifique explicitamente o endereo IP que o DHCP deve fornecer ao destino de instalao. Para isso, modifique a configurao DHCP mencionada acima de acordo com o exemplo a seguir:
group { # PXE related stuff
Instalao remota
37
# # "next server" defines the tftp server that will be used next server ip_servidor_tftp: # # "filename" specifiies the pxelinux image on the tftp server # the server runs in chroot under /srv/tftpboot filename "pxelinux.0"; host test { hardware ethernet endereo_mac; } fixed-address um_endereo_ip; } }
A declarao de host apresenta o nome de host do destino de instalao. Para vincular o nome de host e o endereo IP a um host especfico, voc precisa conhecer e especificar o endereo de hardware do sistema (MAC). Substitua todas as variveis usadas neste exemplo pelos valores reais que correspondem ao seu ambiente. Aps a reinicializao do servidor DHCP, ele fornece um IP esttico para o host especificado, habilitando-o a conectar-se ao sistema por SSH.
38
Referncia
O diretrio padro /tftpboot criado e selecionado automaticamente. 6 Clique em Concluir para aplicar as suas configuraes e iniciar o servidor.
= = = = = = =
Instalao remota
39
1 V at o diretrio do seu repositrio de instalao e copie os arquivos linux, initrd, message e memtest para o diretrio /srv/tftpboot digitando o seguinte:
cp -a boot/loader/linux boot/loader/initrd boot/loader/message boot/loader/memtest /srv/tftpboot
2 Instale o pacote syslinux diretamente dos seus CDs ou DVDs de instalao com YaST. 3 Copie o arquivo /usr/share/syslinux/pxelinux.0 para o diretrio /srv/tftpboot digitando o seguinte:
cp -a /usr/share/syslinux/pxelinux.0 /srv/tftpboot
4 V at o diretrio do seu repositrio de instalao e copie o arquivo isolinux .cfg para /srv/tftpboot/pxelinux.cfg/default digitando o seguinte:
cp -a boot/loader/isolinux.cfg /srv/tftpboot/pxelinux.cfg/default
5 Edite o arquivo /srv/tftpboot/pxelinux.cfg/default e remova as linhas que comeam com gfxboot, readinfo e framebuffer. 6 Insira as seguintes entradas nas linhas anexas dos rtulos padro failsafe e apic: insmod=e100 Por meio desta entrada, o mdulo de kernel para uma placa de rede Intel 100MBit/s carregado nos clientes PXE. Esta entrada depende do hardware do cliente e deve ser adaptada de acordo. No caso de uma placa de rede Broadcom GigaBit, esta entrada deve indicar insmod=bcm5700. netdevice=eth0 Esta entrada define a interface de rede do cliente que deve ser usada para a instalao da rede. S ser necessria se o cliente possuir vrias placas de rede, devendo ser adaptada de acordo. No caso de uma nica placa de rede, esta entrada pode ser omitida. install=nfs://ip_servidor_inst/caminho_fonte_inst/CD1 Esta entrada define o servidor NFS e a fonte de instalao para a instalao do cliente. Substitua ip_servidor_inst pelo endereo IP real do seu
40
Referncia
servidor de instalao. caminho_fonte_inst deve ser substitudo pelo caminho real para as fontes de instalao. As fontes HTTP, FTP ou SMB so endereadas de maneira semelhante, exceto pelo prefixo de protocolo, que deve indicar http, ftp ou smb. IMPORTANTE Se precisar passar outras opes de inicializao para as rotinas de instalao, como parmetros de inicializao SSH ou VNC, anexe-os entrada install. Uma viso geral dos parmetros e alguns exemplos so apresentados na Seo 1.4, Inicializando o sistema de destino para instalao (p 46). A seguir, temos um exemplo de arquivo /srv/tftpboot/pxelinux.cfg/default. Ajuste o prefixo de protocolo para a fonte de instalao para corresponder configurao da sua rede e especifique o seu mtodo de conexo preferido para o instalador adicionando as opes vnc e vncpassword ou ssh e sshpassword entrada install. As linhas separadas por \ devem ser digitadas como uma linha contnua sem quebra de linha e sem \.
default linux # default label linux kernel linux append initrd=initrd ramdisk_size=65536 insmod=e100 \ install=nfs://ip_servidor_inst/ caminho_fonte_inst/produto # failsafe label failsafe kernel linux append initrd=initrd ramdisk_size=65536 ide=nodma apm=off acpi=off \ insmod=e100 install=nfs://ip_servidor_inst/caminho_fonte_inst/produto # apic label apic kernel linux append initrd=initrd ramdisk_size=65536 apic insmod=e100 \ install=nfs://ip_servidor_inst/caminho_fonte_inst/produto # manual label manual kernel linux
Instalao remota
41
append initrd=initrd ramdisk_size=65536 manual=1 # rescue label rescue kernel linux append initrd=initrd ramdisk_size=65536 rescue=1 # memory test label memtest kernel memtest # hard disk label harddisk kernel linux append SLX=0x202 implicit display prompt timeout 0 message 1 100
Substitua ip_servidor_inst e caminho_fonte_inst pelos valores usados na sua configurao. A seo a seguir serve como breve referncia s opes PXELINUX usadas nesta configurao. Mais informaes sobre as opes disponveis so encontradas na documentao do pacote syslinux localizada em /usr/share/doc/ packages/syslinux/.
42
Referncia
APPEND opes... Adicione uma ou mais opes linha de comando do kernel. So adicionadas para inicializaes manuais e automticas. As opes so adicionadas no incio da linha de comando do kernel, normalmente permitindo que as opes de kernel digitadas explicitamente as substituam. LABEL rtulo KERNEL imagem APPEND opes... Indica que, se rtulo for digitado como kernel de inicializao, PXELINUX deve inicializar imagem, e as opes APPEND especificadas devem ser usadas em vez das que esto especificadas na seo global do arquivo (antes do primeiro comando LABEL). O padro para imagem o mesmo de rtulo e, se no for fornecido nenhum APPEND, o padro ser usar a entrada global (se houver). At 128 entradas LABEL so permitidas. Observe que GRUB usa a seguinte sintaxe:
title meuttulo kernel meu_kernel opes_kernel initrd meuinitrd
Os rtulos so desmembrados como se fossem nomes de arquivo e devem ser exclusivos aps o desmembramento. Por exemplo, no seria possvel distinguir os dois rtulos v2.1.30 e v2.1.31 em PXELINUX, pois ambos so desmembrados em um mesmo nome de arquivo do DOS. O kernel no tem precisa ser um kernel do Linux; pode ser um setor de inicializao ou um arquivo COMBOOT. APPEND No anexa nada. APPEND com um nico hfen como argumento em uma seo LABEL pode ser usado para anular um APPEND global. LOCALBOOT tipo Em PXELINUX, especificar LOCALBOOT 0 em vez de uma opo KERNEL significa chamar este rtulo especfico e causa uma inicializao de disco local em vez de uma inicializao de kernel.
Instalao remota
43
Argumento 0 4
Descrio Executa uma inicializao normal Executa uma inicializao local com o driver UNDI (Universal Network Driver Interface) ainda residente na memria Realiza uma inicializao local com toda a pilha PXE, incluindo o driver UNDI, ainda residente na memria
Todos os outros valores so indefinidos. Se voc no sabe quais so as pilhas UNDI ou PXE, especifique 0. TIMEOUT tempo_de_espera Indica quanto tempo esperar no prompt de inicializao at inicializar automaticamente, em unidades de 1/10 de segundo. O tempo de espera cancelado to logo o usurio digite algo no teclado, partindo do princpio de que o usurio conclui o comando iniciado. O tempo de espera zero desabilita completamente o tempo de espera (que tambm o padro). O valor do tempo de espera mximo possvel 35996 (pouco menos de uma hora). PROMPT val_flag Se val_flag for 0, s exibir o prompt de inicializao se Shift ou Alt estiver pressionado ou Caps Lock ou Scroll Lock estiver definido (que o padro). Se val_flag for 1, exibir sempre o prompt de inicializao.
F2 nome_do_arquivo F1 nome_do_arquivo ..etc... F9 nome_do_arquivo F10nome_do_arquivo
Exibe o arquivo indicado na tela quando uma tecla de funo pressionada no prompt de inicializao. Isso pode ser usado para implementar a ajuda online de pr-inicializao (supostamente para as opes de linha do comando do kernel). Para compatibilidade com verses anteriores, F10 tambm pode ser digitado como F0 . Observe que atualmente no h meio de vincular nomes de arquivo a F11 e F12 .
44
Referncia
Instalao remota
45
46
Referncia
Teclas F durante a instalao Opes disponveis Nenhum Todos os idiomas suportados Modo de texto VESA resoluo 1 resoluo 2 ... Valor padro Nenhum Ingls
Objetivo Fornecer ajuda Selecionar o idioma da instalao Mudar a resoluo de tela para instalao
F3
F4
CD-ROM/DVD
Instalao remota
47
Tecla
Objetivo
Valor padro
F5
Driver
Nenhum
Substitua todos os valores (...) nesta string pelos valores adequados para a sua configurao. Tabela 1.2 Cenrios de instalao (inicializao) usados neste captulo Parmetros necessrios para inicializao Opes de inicializao
Cenrio de instalao
Nenhuma necessria
48
Referncia
Cenrio de instalao
Parmetros necessrios para inicializao Localizao do servidor de instalao Dispositivo de rede Endereo IP Mscara de rede Gateway Habilitao VNC Senha VNC
Opes de inicializao
Seo 1.1.1, Instalao remota simples por VNC: configurao de rede esttica (p 18)
install=(nfs,http, ftp,smb)://caminho _mdia_inst netdevice=um_disp _rede (necessrio apenas se vrios dispositivos de rede estiverem disponveis) hostip=um_ip netmask=uma _mscara_rede gateway=gateway_ip vnc=1 vncpassword=uma _senha install=(nfs,http, ftp,smb)://caminho _mdia_inst vnc=1 vncpassword=uma _senha No aplicvel; processo gerenciado via PXE e DHCP
Seo 1.1.2, Instalao remota simples por VNC: configurao de rede dinmica por DHCP (p 19)
Seo 1.1.3, Instalao remota por VNC: inicializao PXE e Wake on LAN (p 21)
Localizao do servidor de instalao Localizao do servidor TFTP Habilitao VNC Senha VNC
Instalao remota
49
Cenrio de instalao
Parmetros necessrios para inicializao Localizao do servidor de instalao Dispositivo de rede Endereo IP Mscara de rede Gateway Habilitao SSH Senha SSH
Opes de inicializao
Seo 1.1.4, Instalao remota simples por SSH: configurao de rede esttica (p 22)
install=(nfs,http, ftp,smb)://caminho _mdia_inst netdevice=um_disp _rede (necessrio apenas se vrios dispositivos de rede estiverem disponveis) hostip=um_ip netmask=uma _mscara_rede gateway=gateway_ip usessh=1 sshpassword=uma _senha install=(nfs,http, ftp,smb)://caminho _mdia_inst usessh=1 sshpassword=uma _senha No aplicvel; processo gerenciado via PXE e DHCP
Seo 1.1.5, Instalao remota simples por SSH: configurao de rede dinmica por DHCP (p 24)
Seo 1.1.6, Instalao remota por SSH: inicializao PXE e Wake on LAN (p 25)
Localizao do servidor de instalao Localizao do servidor TFTP Habilitao SSH Senha SSH
50
Referncia
DICA Saiba mais sobre as opes de inicializao linuxrc usadas para inicializar um sistema Linux em /usr/share/doc/packages/linuxrc/linuxrc.html.
Instalao remota
51
necessidade de qualquer contato fsico com a instalao em si, desde que a sua configurao de rede e todas as mquinas tenham suporte a OpenSLP: 1 Inicie o arquivo KDE e o browser da Web Konqueror. 2 Digite service://yast.installation.suse na barra de localizao. O sistema de destino aparece como um cone na tela do Konqueror. Clicar neste cone inicia o visualizador VNC do KDE no qual executar a instalao. Outra alternativa executar o seu software visualizador VNC com o endereo IP fornecido e adicionar :1 no final do endereo IP para exibir a instalao que est sendo executada.
Uma janela aberta na rea de trabalho, mostrando as telas do YaST como em uma instalao local normal.
52
Referncia
Ao usar um browser da Web para conectar-se ao programa de instalao, voc fica totalmente independente de qualquer software VNC ou do sistema operacional subjacente. Visto que o aplicativo browser tenha o suporte Java habilitado, voc pode usar qualquer browser (Firefox, Internet Explorer, Konqueror, Opera etc.) para executar a instalao do sistema Linux. Para executar uma instalao VCN, proceda da seguinte maneira: 1 Inicie o seu browser da Web favorito. 2 Digite o seguinte no prompt de endereo:
http://endereo_ip_de_destino:5801
3 Digite sua senha VNC quando solicitado. A janela do browser agora exibe as telas do YaST como em uma instalao local normal.
Instalao remota
53
Substitua endereo_ip_do_destino pelo endereo IP real do destino de instalao. 3 Quando for solicitado um nome de usurio, digite root. 4 Quando for solicitada uma senha, digite a senha que foi definida pela opo de inicializao do SSH. Depois que voc autenticar com xito, ser exibido um prompt de linha de comando para o destino da instalao. 5 Digite yast para iniciar o programa de instalao. Uma janela aberta mostrando as telas normais do YaST como descrito no Captulo Instalao com o YaST (Inicializao).
54
Referncia
55
VG 2
LV 1
LV 2
LV 3
LV 4
MP
MP
MP
MP
MP
MP
MP
A Figura 2.1, Particionamento fsico versus LVM (p 56) compara o particionamento fsico (esquerda) com a segmentao do LVM (direita). Do lado esquerdo, um nico
56
Referncia
disco rgido foi dividido em trs PART (Physical Partitions - Parties Fsicas), cada uma com um MP (Mount Point - Ponto de Montagem) designado, de forma que o sistema operacional possa acess-las. Do lado direito, dois discos foram divididos em duas e trs parties fsicas cada. Foram definidos dois grupos de volume (VG1 e VG2) do LVM. O VG1 contm duas parties do DISCO 1 e uma do DISCO 2. O VG2 contm as duas parties restantes do DISCO 2. No LVM, as parties fsicas do disco incorporadas a um grupo de volume so chamadas de PVs (physical volumes - volumes fsicos). Nos grupos de volume, foram definidos quatro volumes lgicos (LV1 a LV4), que podem ser usados pelo sistema operacional por meio dos pontos de montagem associados. A fronteira entre os volumes lgicos diferentes no deve ser alinhada com as fronteiras das parties. Veja a fronteira entre LV1 e LV2 neste exemplo. Recursos do LVM: vrios discos rgidos ou parties podem ser combinados em um grande volume lgico. Desde que a configurao seja adequada, um LV (como /usr) pode ser ampliado quando o espao em disco estiver esgotado. Usando o LVM, adicione discos rgidos ou LVs em um sistema em execuo. No entanto, esse procedimento requer um hardware altamente permutvel, capaz de executar tais aes. possvel ativar um "modo de distribuio" que distribui o fluxo de dados de um volume lgico em vrios volumes fsicos. Se esses volumes fsicos residirem em discos diferentes, o desempenho de leitura e gravao poder ser melhorado como ocorre com o RAID 0. O recurso instantneo permite backups consistentes (especialmente para servidores) no sistema em execuo. Com esses recursos, a utilizao do LVM sensata em PCs domsticos muito usados ou pequenos servidores. Se voc tem um estoque de dados crescente, como no caso de bancos de dados, arquivos de msica ou diretrios de usurio, o LVM simplesmente a opo correta. Ele permite o uso de sistemas de arquivos maiores do que o disco rgido fsico. Outra vantagem do LVM a possibilidade de adicionar at 256 LVs. Entretanto, lembre-se de que trabalhar com o LVM diferente de trabalhar com parties convencionais. Instrues e informaes adicionais sobre a configurao do LVM esto disponveis no HOWTO (Como Fazer) oficial do LVM, em http://tldp.org/ HOWTO/LVM-HOWTO/. Configurao de disco avanada 57
Comeando na verso 2.6 do kernel, a verso 2 do LVM est disponvel, sendo compatvel com verses anteriores do LVM e permitindo o gerenciamento contnuo de antigos grupos de volume. Ao criar novos grupos de volume, decida se vai usar o novo formato ou a verso compatvel com verses anteriores. O LVM 2 no requer qualquer patch de kernel. Ele usa o mapeador de dispositivos integrado ao kernel 2.6. Esse kernel suporta somente a verso 2 do LVM. Portanto, sempre que o LVM for abordado nesta seo, ser considerada a verso 2.
58
Referncia
59
Para adicionar uma partio previamente no designada ao grupo de volume selecionado, primeiro clique na partio, depois clique em Adicionar Volume. Nesse momento, o nome do grupo de volume inserido ao lado da partio selecionada. Designe todas as parties reservadas para o LVM a um grupo de volume. Caso contrrio, o espao na partio permanecer sem uso. Antes de sair da caixa de dilogo, necessrio designar pelo menos um volume fsico a cada grupo de volume. Depois de designar todos os volumes fsicos, clique em Prximo para continuar a configurao de volumes lgicos.
60
Referncia
Para criar um novo volume lgico, clique em Adicionar e preencha a janela que aberta. No que diz respeito ao particionamento, digite o tamanho, o sistema de arquivos e o ponto de montagem. Normalmente, um sistema de arquivos, como reiserfs ou ext2, criado em um volume lgico e ento um ponto de montagem designado a ele. Os arquivos armazenados nesse volume lgico podem ser encontrados nesse ponto de montagem do sistema instalado. Alm disso, possvel distribuir o fluxo de dados no volume lgico entre vrios volumes fsicos. Se esses volumes fsicos residirem em discos rgidos diferentes, os desempenhos de leitura e gravao podem ser melhorados (como ocorre com RAID 0). No entanto, um LV de distribuio com n distribuies s poder ser criado corretamente se o espao em disco rgido necessrio para o LV puder ser distribudo uniformemente em n volumes fsicos. Se, por exemplo, houver apenas dois volumes fsicos disponveis, ser impossvel haver um volume lgico com trs distribuies. ATENO: Distribuindo A essa altura, o YaST no tem como verificar se suas entradas esto corretas no que diz respeito distribuio. Qualquer erro realizado aqui ser mostrado somente mais tarde, quando o LVM for implementado em disco.
61
Se voc j configurou o LVM no sistema, os volumes lgicos existentes podero ser inseridos agora. Antes de continuar, designe pontos de montagem apropriados a esses volumes lgicos tambm. Usando a opo Prximo, volte para o Particionador Expert do YaST e conclua seu trabalho.
62
Referncia
63
corrupo de dados. O desempenho de gravao fica um pouco prejudicado no processo de cpia, em comparao ao uso do acesso a um nico disco (dez a vinte por cento mais lento), mas o acesso de leitura significativamente mais rpido se comparado com o de qualquer um dos discos rgidos fsicos normais, uma vez que os dados so duplicados e, conseqentemente, podem ser explorados em paralelo. Em geral, pode-se dizer que o Nvel 1 fornece praticamente o dobro da velocidade de transao de leitura dos discos individuais e quase a mesma velocidade de transao de gravao que eles. RAID 2 e RAID 3 Essas so implementaes de RAID no muito comuns. O Nvel 2 divide os dados no nvel de bits, em vez de no nvel de blocos. O Nvel 3 fornece a diviso no nvel de bytes com um disco de paridade dedicada, e no pode atender vrias solicitaes ao mesmo tempo. Ambos os nveis raramente so usados. RAID 4 O Nvel 4 fornece a diviso no nvel de blocos, exatamente como o Nvel 0 combinado com um disco de paridade dedicada. No caso de uma falha de disco de dados, os dados de paridade so usados para criar um disco de substituio. No entanto, o disco de paridade pode criar um gargalo para o acesso de gravao. Mesmo assim, o Nvel 4 s vezes usado. RAID 5 O RAID 5 um compromisso otimizado entre o Nvel 0 e o Nvel 1 em termos de desempenho e redundncia. O espao em disco rgido igual ao nmero de discos usados menos um. Os dados so distribudos pelos discos rgidos, assim como no RAID 0. Os blocos de paridade, criados em uma das parties, esto l por motivos de segurana. Eles so vinculados uns aos outros com XOR, o que permite que o contedo seja reconstrudo pelo bloco de paridade correspondente no caso de uma falha do sistema. Com o RAID 5, apenas um disco rgido pode falhar por vez. Se um disco rgido falhar, ele dever ser substitudo assim que possvel, para evitar o risco da perda de dados. Outros nveis de RAID Vrios outros nveis de RAID foram desenvolvidos (RAIDn, RAID 10, RAID 0+1, RAID 30, RAID 50, etc.), sendo alguns deles implementaes proprietrias criadas por fornecedores de hardware. Esses nveis no esto muitos difundidos, portanto, no sero explicados aqui.
64
Referncia
65
Para adicionar uma partio anteriormente no atribuda ao volume RAID selecionado, primeiro clique na partio e, em seguida, em Adicionar. Nesse ponto, o nome do dispositivo de RAID inserido ao lado da partio selecionada. Atribua todas as parties reservadas para o RAID. Caso contrrio, o espao na partio permanecer sem uso. Aps atribuir todas as parties, clique em Prximo para continuar na caixa de dilogo de configuraes, onde voc pode ajustar o desempenho (consulte a Figura 2.7, Configuraes do sistema de arquivos (p 67)).
66
Referncia
Assim como no particionamento convencional, defina o sistema de arquivos a ser usado, assim como a criptografia e o ponto de montagem do volume RAID. Marcar Superbloco Persistente garante que as parties RAID sejam reconhecidas como tais na inicializao. Aps concluir a configurao com Concluir, verifique o dispositivo /dev/md0 e outros dispositivos indicados com RAID no particionador expert.
67
68
Referncia
3.1.1 Preparaes
Antes de atualizar, copie os arquivos de configurao antigos em uma mdia separada, como streamer, disco rgido removvel, chaveiro USB ou unidade ZIP para proteger os dados. Isso se aplica basicamente aos arquivos armazenados em /etc, assim como a alguns dos diretrios e arquivos em /var e /opt. Voc tambm pode gravar os dados do usurio em /home (os diretrios HOME) em uma mdia de backup. Faa o backup desses dados como root. Apenas roottem permisso de leitura para todos os arquivos locais.
69
Antes de iniciar a atualizao, anote a partio raiz. O comando df / relaciona o nome do dispositivo da partio raiz. Em Exemplo 3.1, Listar com df -h (p 70), a partio raiz a ser anotada a /dev/hda3 (montada como /). Exemplo 3.1 Listar com df -h
Filesystem /dev/hda3 tmpfs /dev/hda5 /dev/hda1 /dev/hda2 Size 74G 506M 116G 39G 4.6G Used Avail Use% Mounted on 22G 53G 29% / 0 506M 0% /dev/shm 5.8G 111G 5% /home 1.6G 37G 4% /windows/C 2.6G 2.1G 57% /windows/D
PostgreSQL
Antes de atualizar PostgreSQL (postgres), descarte os bancos de dados. Consulte a pgina de manual de pg_dump. Isso s ser necessrio se voc realmente usou PostgreSQL antes da sua atualizao.
70
Referncia
1 Inicialize o sistema como para a instalao, descrita na Seo Inicializao do sistema para instalao (Captulo 1, Instalao com o YaST, Inicializao). No YaST, escolha um idioma e selecione Atualizar na caixa de dilogo Modo de Instalao. No selecione Nova Instalao. 2 O YaST determina se h diversas parties raiz. Se houver apenas uma, continue com a prxima etapa. Se houver vrias, selecione a partio correta e confirme com Prximo (/dev/hda3 foi selecionado no exemplo da Seo 3.1.1, Preparaes (p 69)). O YaST l o antigo fstab nessa partio para analisar e montar os sistemas de arquivos listados. 3 Na caixa de dilogo Configuraes de Instalao, ajuste as configuraes de acordo com suas necessidades. Normalmente, voc pode deixar as configuraes padro intactas, mas se pretende aprimorar o sistema, verifique os pacotes oferecidos nos submenus Seleo de Software ou adicione suporte para idiomas extras. Voc tambm tem a possibilidade de fazer backups de vrios componentes do sistema. Selecionar backups torna lento o processo de atualizao. Use essa opo se no tiver um backup de sistema recente. 4 Na caixa de dilogo a seguir, escolha atualizar apenas o software que j est instalado ou adicionar novos componentes de software ao sistema (modo de upgrade) recomendvel aceitar a composio sugerida, por exemplo, Atualizao baseada na seleo "Sistema Padro com KDE" ou "Sistema Padro com GNOME". Os ajustes podem ser feitos posteriormente com o YaST.
71
72
Referncia
Os mdulos tm o sufixo .ko. O mdulo ide-scsi no mais necessrio para a gravao de CDs. O prefixo snd_ foi removido das opes do mdulo de som ALSA . sysfs agora complementa o sistema de arquivos /proc. O gerenciamento de energia (especialmente ACPI) foi aperfeioado e pode ser configurado por meio de um mdulo do YaST.
Dispositivos de entrada
Com relao s mudanas em conexo com os dispositivos de entrada, consulte o artigo do portal j mencionado Known Problems and Special Features in SUSE LINUX 9.1 no bando de dados de suporte http://portal.suse.com com a palavra-chave special features.
73
- Biblioteca Nativa de Threads POSIX). O NPTL prefervel, porque o padro do futuro. Se o NPTL causar dificuldades, poder ser usada a antiga implementao dos linuxthreads, configurando a seguinte varivel de ambiente (substituir verso_do_kernel pelo nmero de verso do respectivo kernel):
LD_ASSUME_KERNEL=verso-do-kernel
Os seguintes nmeros de verso so possveis: 2.2.5 (i386, i586): linuxthreads sem pilhas flutuantes 2.4.1 (AMD64, IPF, s390x, i586, i686):, 2.4.1 (AMD64, i586, i686): linuxthreads com pilhas flutuantes Notas referentes ao kernel e linuxthreads com pilhas flutuantes: Aplicativos que usam errno, h_errno e _res devem incluir os arquivos de cabealho (errno.h, netdb .h e resolv.h) com #include. Para programas C++ com suporte multithread que usam cancelamento de thread, a varivel de ambiente LD_ASSUME_KERNEL=2.4.1 deve ser usada para solicitar o uso da biblioteca linuxthreads.
74
Referncia
Novos nomes foram apresentados para os arquivos de configurao. Como o nome de uma interface de rede gerado dinamicamente e o uso dos dispositivos hotplug est aumentando consideravelmente, um nome como eth0 ou eth1 no mais adequado para fins de configurao. Por essa razo, designaes exclusivas, como endereo MAC ou slot PCI, so usadas para nomear configuraes de interface. Voc pode usar nomes de interface assim que aparecerem. Comandos como ifup eth0 ou ifdown eth0 ainda so possveis. As configuraes de dispositivo esto localizadas em /etc/sysconfig/hardware. As interfaces fornecidas por esses dispositivos geralmente esto localizadas em /etc/ sysconfig/network (com nomes diferentes). Consulte a descrio detalhada em /usr/share/doc/packages/sysconfig/README.
Configurao de Som
Aps uma atualizao, as placas de som devem ser reconfiguradas. Isso pode ser feito com o mdulo de som do YaST. Como root, digite /sbin/yast2 sound.
caracteres no-ASCII nesses nomes de arquivo, eles no sero exibidos corretamente. Para corrigir, use o script convmv, que converte a codificao de nomes de arquivo em UTF-8.
O novo valor 200112 e usado como padro em _POSIX2_VERSION. O padro SUS pode ser analisado (gratuitamente, mas necessrio registro) em http://www .unix.org. DICA Software de terceiros podem ainda no ser compatveis com o novo padro. Nesse caso, configure a varivel de ambiente como descrito acima.
/etc/gshadow Obsoleto
/etc/gshadow foi abandonado e removido, porque esse arquivo suprfluo pelas seguintes razes: No suportado por glibc. No h interface oficial para esse arquivo. Nem mesmo a sute transitria contm essa interface. A maioria das ferramentas que verifica a senha do grupo no oferece suporte ao arquivo e o ignora pelas referidas razes.
76
Referncia
OpenLDAP
Como o formato do banco de dados mudou, os bancos de dados devem ser gerados novamente. Durante a atualizao, o sistema tenta efetuar essa converso automaticamente. Porm, haver casos em que a converso falha. A verificao do esquema sofreu aprimoramentos substanciais. Assim, diversas operaes padro no compatveis que eram permitidas com o antigo servidor LDAP no so mais possveis. A sintaxe do arquivo de configurao mudou parcialmente com uma viso para ACLs. Aps a instalao, h informaes com relao atualizao no arquivo /usr/share/ doc/packages/powersave/README.thermal.
77
autenticados deve ser carregado primeiro, para impedir que usurios sem permisso de acesso vejam as pginas. As consultas e respostas do Apache podem ser processadas com filtros.
78
Referncia
libiodbc descartado
Os usurios do FreeRADIUS devem se conectar ao unixODBC, pois o libiodbc foi descartado.
79
Se for necessrio acesso rede durante a instalao ou configurao de um servio, o mdulo respectivo do YaST abre as portas TCP e UDP exigidas de todas as interfaces internas e externas. Se no desejar, o usurio poder fechar as portas no mdulo do YaST ou especificar outras configuraes de firewall detalhadas.
80
Referncia
Comandos X.Org Xorg xorgconfig xorgcfg Arquivos de registro em /var/log X.Org Xorg.0.log Xorg.0.log.old
No processo de mudana para X.Org, os pacotes foram renomeados de XFree86* para xorg-x11*.
81
/etc/sysconfig/powersave/ common common cpufreq events battery sleep thermal /etc/powersave.conf tornou-se obsoleto. As variveis existentes mudaram para os arquivos relacionados na Tabela 3.3, Divida os arquivos de configurao em /etc/sysconfig/powersave (p 82). Se voc modificou as variveis event em /etc/ powersave.conf, essas agora devem ser adaptadas em /etc/sysconfig/ powersave/events. Os nomes dos estados de espera mudaram de: suspender (ACPI S4, suspender APM) suspender (ACPI S4, standby APM) Para: suspender para disco (ACPI S4, suspender APM) suspender para ram (ACPI S3, suspender APM) standby (ACPI S1, standby APM)
82
Referncia
OpenOffice.org (OOo)
Diretrios: OOo agora est instalado em /usr/lib/ooo-1.1 em vez de em /opt/ OpenOffice.org. O diretrio padro para configuraes de usurio agora /usr/lib/ooo-1.1 em vez de /opt/OpenOffice.org. Agrupador: H alguns agrupadores novos para inicializar os componentes OOo. Os novos nomes so mostrados na Tabela 3.4, Agrupador (p 83). Tabela 3.4 Antigos /usr/X11R6/bin/OOo-calc /usr/X11R6/bin/OOo-draw /usr/X11R6/bin/OOo-impress /usr/X11R6/bin/OOo-math /usr/X11R6/bin/OOo-padmin /usr/X11R6/bin/OOo-setup /usr/X11R6/bin/OOo-template /usr/X11R6/bin/OOo-web /usr/X11R6/bin/OOo-writer /usr/X11R6/bin/OOo /usr/X11R6/bin/OOo-wrapper Agrupador Nova /usr/bin/oocalc /usr/bin/oodraw /usr/bin/ooimpress /usr/bin/oomath /usr/sbin/oopadmin /usr/bin/oofromtemplate /usr/bin/ooweb /usr/bin/oowriter /usr/bin/ooffice /usr/bin/ooo-wrapper
O agrupador agora tem suporte para a opo --icons-set para alternar entre os cones KDE e GNOME. As opes a seguir no so mais suportadas: --default-configuration, --gui, --java-path, --skip-check, Atualizando o gerenciamento de sistemas e pacotes 83
--lang (o idioma agora determinado por meio de locais), --messages-in-window e --quiet. Suporte a KDE e GNOME: As extenses KDE e GNOME esto disponveis nos pacotes OpenOffice_org-kde e OpenOffice_org-gnome.
Gravao de DVDs
No passado, era aplicado um patch ao arquivo binrio cdrecord do pacote cdrecord para garantir o suporte gravao de DVDs. Agora, est instalado um novo arquivo binrio cdrecord-dvd que tem esse patch. O programa growisofs do pacote dvd+rw-tools agora pode gravar todas as mdias de DVD (DVD+R, DVD-R, DVD+RW, DVD-RW, DVD+RL). Tente usar esta, em vez de cdrecord-dvd com patch.
Vrios kernels
possvel instalar diversos kernels lado a lado. Esse recurso visa possibilitar os administradores de fazer o upgrade de um kernel para outro, instalando o novo kernel, verificando se o novo kernel funciona como esperado e desinstalando o antigo kernel. Embora o YaST ainda no tenha suporte para esse recurso, kernels podem ser instalados e desinstalados facilmente do shell usando rpm -i package.rpm. Os menus padro de carregador de boot contm uma entrada de kernel. Antes de instalar diversos kernels, til adicionar uma entrada para os kernels extras, de maneira que possam ser facilmente selecionados. O kernel que estava ativo antes da instalao de um novo kernel pode ser acessado como vmlinuz.previous e initrd .previous. Ao se criar uma entrada de carregador de boot similar entrada padro e tendo em vista que essa entrada faz referncia a vmlinuz.previous e initrd .previous em vez de a vmlinuz e initrd, possvel acessar o kernel anteriormente ativo. Como opo, GRUB e LILO tem suporte para entradas de 84 Referncia
carregador de boot de curingas. Consulte as pginas de informaes sobre GRUB (info grub) e a pgina de manual sobre o lilo.conf (5) para obter mais detalhes.
A configurao de cliente (/etc/krb5.conf) muito similar heimdal. Se no foi configurado nada especial, basta substituir o parmetro kpasswd_server por admin_server. No possvel copiar os dados relacionados ao servidor (kdc e kadmind). Aps a atualizao do sistema, o antigo banco de dados heimdal ainda est disponvel em Atualizando o gerenciamento de sistemas e pacotes 85
Configurao PAM
Novos arquivos de configurao (que contm comentrios para obter mais informaes) common-auth Configurao PAM padro da seo auth common-account Configurao PAM padro da seo account
86
Referncia
common-password Configurao PAM padro para mudana de senha common-session Configurao PAM padro para gerenciamento de sesso preciso incluir esses arquivos de configurao padro do seu arquivo de configurao especfico do aplicativo, porque mais fcil modificar e manter um arquivo em vez dos cerca de 40 arquivos que existiam no sistema. Se voc instalar um aplicativo posteriormente, ele herdar as mudanas j aplicadas e o administrador no ser obrigado a se lembrar de ajustar a configurao. As mudanas so simples. Se voc tiver o arquivo de configurao a seguir (que deve ser o padro na maioria dos aplicativos):
#%PAM-1.0 auth required account required password required password required #password required session required pam_unix2.so pam_unix2.so pam_pwcheck.so pam_unix2.so pam_make.so pam_unix2.so
87
PCMCIA
cardmgr no gerencia mais as placas PC. Em vez disso, como nas placas Cardbus e outros subsistemas, elas so gerenciadas pelo mdulo kernel. Todas as aes necessrias so executadas por hotplug. O script de inicializao do pcmcia fo removido e cardctl foi substitudo por pccardctl. Para obter mais informaes, consulte /usr/share/doc/packages/pcmciautils/README.SUSE.
88
Referncia
Salve o seu ~/.xinitrc antigo. Em seguida, copie o novo arquivo de modelo no seu diretrio pessoal com: cp /etc/skel/.xinitrc.template ~/.xinitrc Finalmente, adicione suas personalizaes do .xinitrc salvo.
89
Apache 2.2
Para o Apache verso 2.2, o Captulo 26, Servidor HTTP Apache (p 463) foi completamente reformulado. Alm disso, encontre informaes de atualizao genricas em http://httpd.apache.org/docs/2.2/upgrading.html e a descrio de novos recursos em http://httpd.apache.org/docs/2.2/new_features _2_2.html.
90
Referncia
91
DICA: Pacotes de desenvolvimento de software Para vrios pacotes, os componentes necessrios para o desenvolvimento de software (bibliotecas, cabealhos, arquivos de incluso, etc.) foram colocados em pacotes separados. Os pacotes de desenvolvimento so necessrios somente se voc desejar compilar seu prprio software, por exemplo, os pacotes GNOME mais recentes. Eles podem ser identificados pela extenso de nome -devel, como os pacotes alsa-devel, gimp-devel e kdelibs3-devel.
O comando rpm --checksig pacote-1.2.3.rpm pode ser usado para verificar a assinatura de um pacote RPM e determinar se ele realmente se origina do SUSE Linux ou de outra instalao confivel. Isso especialmente recomendado para pacotes de atualizao da Internet. A chave pblica de assinatura de pacote do SUSE Linux normalmente se localiza em /root/.gnupg/. A chave tambm est localizada no diretrio /usr/lib/rpm/gnupg/ para permitir que usurios comuns verifiquem a assinatura de pacotes RPM.
92
Referncia
As opes -U ou --upgrade e -F ou --freshen podem ser usadas para atualizar um pacote, por exemplo, rpm -F pacote.rpm. Esse comando remove os arquivos da verso antiga e instala os novos arquivos imediatamente. A diferena entre as duas verses que o -U instala pacotes que no existiam no sistema anteriormente, mas -F atualiza somente pacotes previamente instalados. Durante a atualizao, o rpm atualiza arquivos de configurao cuidadosamente com a seguinte estratgia: Se um arquivo de configurao no tiver sido modificado pelo administrador de sistema, o rpm instalar a nova verso do arquivo apropriado. O administrador de sistema no precisa adotar nenhuma ao. Se um arquivo de configurao tiver sido modificado pelo administrador de sistema antes da atualizao, o rpm salvar o arquivo modificado com a extenso .rpmorig ou .rpmsave (arquivo de backup) e instalar a verso do novo pacote, mas somente se o arquivo instalado originalmente e a verso mais nova forem diferentes. Nesse caso, compare o arquivo de backup (.rpmorig ou .rpmsave) com o arquivo recm-instalado e faa novamente as modificaes no novo arquivo. Depois, verifique se apagou todos os arquivos .rpmorig e .rpmsave para evitar problemas em atualizaes futuras. Arquivos .rpmnew so exibidos se o arquivo de configurao j existir e se o rtulo noreplace tiver sido especificado no arquivo .spec. Aps uma atualizao, os arquivos .rpmsave e .rpmnew devem ser removidos depois de comparados para que no impeam atualizaes futuras. A extenso .rpmorig ser atribuda se o arquivo no tiver sido previamente reconhecido pelo banco de dados RPM. Caso contrrio, o .rpmsave ser usado. Em outras palavras, o .rpmorig resulta da atualizao de um formato estranho ao RPM. O .rpmsave resulta da atualizao de um RPM mais antigo para um RPM mais novo. O .rpmnew no revela nenhuma informao sobre se o administrador de sistema fez modificaes no arquivo de configurao. Uma lista destes arquivos est disponvel em /var/adm/ rpmconfigcheck. Alguns arquivos de configurao (como /etc/httpd/httpd .conf) no so sobregravados para permitir operao continuada. O switch -U no somente um equivalente para a desinstalao com a opo -e e a instalao com a opo -i. Use -U sempre que possvel. Para remover um pacote, digite rpm -e package. O rpm apaga o pacote somente se todas as dependncias tiverem sido resolvidas. teoricamente impossvel apagar Atualizando o gerenciamento de sistemas e pacotes 93
Tcl/Tk, por exemplo, enquanto outro aplicativo exigir sua existncia. Mesmo nesse caso, o RPM pede ajuda do banco de dados. Se tal excluso for, por qualquer motivo e sob circunstncias no comuns, impossvel, mesmo se no houver dependncias adicionais, talvez seja til reconstruir o banco de dados RPM com a opo --rebuilddb.
Em seguida, verifique se o RPM com patch adequado para essa verso do pine:
rpm -qp --basedon pine-4.44-224.i586.patch.rpm pine = 4.44-188 pine = 4.44-195 pine = 4.44-207
Esse patch adequado para trs verses diferentes do pine. A verso instalada no exemplo tambm est listada para que o patch possa ser instalado. Quais arquivos sero substitudos pelo patch? Os arquivos afetados por um patch podem ser facilmente vistos no RPM com patch. O parmetro rpm -P permite a seleo de recursos de patch especiais. Exiba a lista de arquivos com o seguinte comando:
rpm -qpPl pine-4.44-224.i586.patch.rpm /etc/pine.conf /etc/pine.conf.fixed /usr/bin/pine
Como instalar um RPM com patch no sistema? RPMs com patch so usados como RPMs comuns. A nica diferena que um RPM adequado j deve estar instalado. Quais patches j esto instalados no sistema e para quais verses do pacote? possvel exibir uma lista de todos os patches instalados no sistema com o comando rpm -qPa. Se somente um patch for instalado em um novo sistema (como no exemplo), a lista ser exibida como a seguir:
rpm -qPa pine-4.44-224
Se posteriormente voc desejar saber qual verso de pacote foi originalmente instalada, essas informaes tambm estaro disponveis no banco de dados RPM. No caso do pine, possvel exibir essas informaes com o seguinte comando:
rpm -q --basedon pine pine = 4.44-188
Mais informaes, incluindo informaes sobre o recurso de patch do RPM, esto disponveis nas pginas de manual de rpm e rpmbuild.
95
de download poderia ser maior. Se estiver definido para no, o YOU usar somente RPMs com patch e RPMs comuns. Os binrios prepdeltarpm, writedeltarpm e applydeltarpm so parte de uma sute de RPM delta (pacote deltarpm) e ajudam na criao e aplicao de pacotes RPM delta. Com os seguintes comandos, crie um RPM delta chamado new.delta .rpm. O comando a seguir pressupe que old.rpm e new.rpm esto presentes:
prepdeltarpm -s seq -i info old.rpm > old.cpio prepdeltarpm -f new.rpm > new.cpio xdelta delta -0 old.cpio new.cpio delta writedeltarpm new.rpm delta info new.delta.rpm rm old.cpio new.cpio delta
Usando applydeltarpm, voc pode reconstruir o novo RPM do arquivo de sistema se o pacote antigo j estiver instalado:
applydeltarpm new.delta.rpm new.rpm
Para deriv-lo do RPM antigo sem acessar o sistema de arquivos, use a opo -r:
applydeltarpm -r old.rpm new.delta.rpm new.rpm
96
Referncia
-f ARQUIVO
Consulte o pacote que contm o arquivo ARQUIVO (o caminho completo deve ser especificado com ARQUIVO) Lista de arquivos com informaes de status (requer -l) Lista somente arquivos de documentao (requer -l) Lista somente arquivos de configurao (requer -l) Lista de arquivos com detalhes completos (a ser usada com -l, -c ou -d) Lista recursos do pacote que outro pacote pode solicitar com --requires Recursos exigidos pelo pacote Scripts de instalao (pr-instalao, ps-instalao, desinstalao)
-s -d -c --dump
--provides
--requires, -R --scripts
Por exemplo, o comando rpm -q -i wget exibe as informaes exibidas no Exemplo 3.2, rpm -q -i wget (p 97). Exemplo 3.2 rpm -q -i wget
Name : wget Relocations: (not relocatable) Version : 1.9.1 Vendor: SUSE LINUX AG, Nuernberg, Germany Release : 50 Build Date: Sat 02 Oct 2004 03:49:13 AM CEST Install date: Mon 11 Oct 2004 10:24:56 AM CEST Build Host: f53.suse.de Group : Productivity/Networking/Web/Utilities Source RPM: wget-1.9.1-50.src.rpm Size : 1637514 License: GPL Signature : DSA/SHA1, Sat 02 Oct 2004 03:59:56 AM CEST, Key ID a84edae89c800aca Packager : http://www.suse.de/feedback URL : http://wget.sunsite.dk/ Summary : A tool for mirroring FTP and HTTP servers Description : Wget enables you to retrieve WWW documents or FTP files from a server. This can be done in script files or via the command line. [...]
97
A opo -f funciona somente se voc especificar o nome de arquivo e seu caminho completos. Fornea quantos nomes de arquivo desejar. Por exemplo, o seguinte comando
rpm -q -f /bin/rpm /usr/bin/wget
resulta em:
rpm-4.1.1-191 wget-1.9.1-50
Se somente parte do nome de arquivo for conhecido, use um script de shell conforme mostrado no Exemplo 3.3, Script para pesquisar pacotes (p 98). Passe o nome de arquivo parcial para o script mostrado como um parmetro ao execut-lo. Exemplo 3.3 Script para pesquisar pacotes
#! /bin/sh for i in $(rpm -q -a -l | grep $1); do echo "\"$i\" is in package:" rpm -q -f $i echo "" done
O comando rpm -q --changelog rpm exibe uma lista detalhada de informaes de mudana sobre um pacote especfico, classificada por data. Este exemplo mostra informaes sobre o pacote rpm. Com a ajuda do banco de dados RPM instalado, possvel realizar verificaes. Inicie as verificaes com -V, -y ou --verify. Com essa opo, o rpm mostra todos os arquivos em um pacote que foram modificados desde a instalao. O rpm usa oito smbolos de caracteres para fornecer algumas dicas sobre as seguintes mudanas: Tabela 3.7 5 S L T D Opes de verificao do RPM Resumo de verificao MD5 Tamanho do arquivo Link simblico Tempo de modificao Nmeros de dispositivo principais e auxiliares
98
Referncia
U G S
No caso de arquivos de configurao, a letra c impressa. Por exemplo, para mudanas para /etc/wgetrc (wget):
rpm -V wget S.5....T c /etc/wgetrc
Os arquivos do banco de dados RPM so colocados em /var/lib/rpm. Se a partio /usr tiver o tamanho de 1 GB, esse banco de dados poder ocupar praticamente 30 MB, especialmente aps uma atualizao completa. Se o banco de dados for maior do que o esperado, ser til reconstruir o banco de dados com a opo --rebuilddb. Antes disso, faa um backup do banco de dados antigo. O script cron cron.daily faz cpias dirias do banco de dados (compactado com gzip) e armazena essas cpias em /var/adm/backup/rpmdb. O nmero de cpias controlado pela varivel MAX_RPMDB_BACKUPS (padro: 5) em /etc/sysconfig/backup. O tamanho de um nico backup de aproximadamente 1 MB para 1 GB em /usr.
99
Os diretrios a seguir devem estar disponveis para rpm e rpmbuild em /usr/src/ packages (a menos que voc tenha especificado configuraes personalizadas em um arquivo como /etc/rpmrc): SOURCES para as fontes originais (arquivos .tar.bz2 ou .tar.gz, etc.) e para ajustes especficos de distribuio (geralmente arquivos .diff ou .patch) SPECS para os arquivos .spec, similares a um metaMakefile, que controla o processo de construo BUILD diretrio em que todas as fontes so descompactadas, modificadas e compiladas RPMS local em que os pacotes binrios concludos so armazenados SRPMS local em que esto os RPMs de fonte Quando voc instala um pacote de fontes com o YaST, todos os componentes necessrios so instalados em /usr/src/packages: as fontes e os ajustes em SOURCES e o arquivo .spec relevante em SPECS. ATENO No experimente com componentes de sistema (glibc, rpm, sysvinit, etc.), pois isso coloca em risco a operabilidade do sistema. O exemplo a seguir usa o pacote wget.src.rpm. Aps instalar o pacote com o YaST, voc dever ter arquivos similares seguinte lista:
/usr/src/packages/SOURCES/nops_doc.diff /usr/src/packages/SOURCES/toplev_destdir.diff /usr/src/packages/SOURCES/wget-1.9.1+ipvmisc.patch /usr/src/packages/SOURCES/wget-1.9.1-brokentime.patch /usr/src/packages/SOURCES/wget-1.9.1-passive_ftp.diff /usr/src/packages/SOURCES/wget-LFS-20040909.tar.bz2 /usr/src/packages/SOURCES/wget-wrong_charset.patch /usr/src/packages/SPECS/wget.spec
100
Referncia
rpmbuild -b X /usr/src/packages/SPECS/wget.spec inicia a compilao. X um curinga para vrios estgios do processo de construo (consulte a sada de --help ou a documentao do RPM para obter detalhes). Veja a seguir uma breve explicao: -bp Prepara fontes em /usr/src/packages/BUILD: decompacta e modifica. -bc Faz o mesmo que -bp, mas com compilao adicional. -bi Faz o mesmo que -bp, mas com a instalao adicional do software criado. Cuidado: se o pacote no aceitar o recurso BuildRoot, talvez voc sobregrave os arquivos de configurao. -bb Faz o mesmo que -bi, mas com a criao adicional do pacote binrio. Se a compilao tiver sido bem-sucedida, o binrio dever estar em /usr/src/ packages/RPMS. -ba Faz o mesmo que -bb, mas com a criao adicional do RPM de fonte. Se a compilao tiver sido bem-sucedida, o binrio dever estar em /usr/src/ packages/SRPMS. --short-circuit Ignora algumas etapas. O RPM binrio criado agora pode ser instalado com rpm -i ou, de preferncia, com rpm -U. A instalao com rpm faz com que ele aparea no banco de dados RPM.
procura o arquivo SPEC no diretrio de origem. Para construir wget (como no exemplo acima) com o DVD montado no sistema em /media/dvd, use os comandos seguintes como root:
cd /usr/src/packages/SOURCES/ mv ../SPECS/wget.spec . build --rpms /media/dvd/suse/ wget.spec
Depois disso, um ambiente mnimo estabelecido em /var/tmp/build-root. O pacote criado nesse ambiente. Aps a concluso, os pacotes resultantes estaro localizados em /var/tmp/build-root/usr/src/packages/RPMS. O script build oferece vrias opes adicionais. Por exemplo, faz com que o script prefira seus prprios RPMs, omite a inicializao do ambiente de construo ou limita o comando rpm a um dos estgios mencionados acima. Acesse informaes adicionais com build --help e a leitura da pgina de manual build.
102
Referncia
Parte 2. Administrao
Segurana no Linux
O mascaramento e um firewall garantem um fluxo de dados e um intercmbio de dados controlados. O SSH (secure shell) permite que voc efetue login em hosts remotos por uma conexo criptografada. A criptografia de arquivos ou parties inteiras protege seus dados no caso de terceiros obterem acesso ao seu sistema. Encontre instrues tcnicas e informaes sobre aspectos de segurana das redes Linux.
so armazenadas em tabelas. O comando iptables permite alterar esses conjuntos regras e tabelas. O kernel do Linux mantm trs tabelas, cada qual para uma categoria de funes especficas do filtro do pacote: filter Essa tabela contm o volume das regras do filtro, pois ele implementa o mecanismo de filtragem de pacotes em sentido restrito, que determina se os pacotes passam por (ACCEPT) ou se so descartados (DROP), por exemplo. nat Essa tabela define quaisquer mudanas feitas nos endereos de origem e de destino dos pacotes. O uso dessas funes permite implementar um mascaramento, que um caso especial da NAT, usado para vincular uma rede privada Internet. mangle As regras determinadas nessa tabela possibilitam manipular valores armazenados em cabealhos IP (como o tipo do servio). Figura 4.1 iptables: Caminhos possveis de um pacote
PREROUTING
incoming packet
mangle nat
INPUT
mangle filter
Routing
FORWARD
OUTPUT
filter
POSTROUTING
mangle nat
outgoing packet
106
Referncia
PREROUTING Esta cadeia aplicada a pacotes recebidos. INPUT Esta cadeia aplicada a pacotes destinados aos processos internos do sistema. FORWARD Esta cadeia aplicada a pacotes roteados somente pelo sistema. OUTPUT Esta cadeia aplicada a pacotes originados do prprio sistema. POSTROUTING Esta cadeia aplicada a todos os pacotes enviados. A Figura 4.1, iptables: Caminhos possveis de um pacote (p 106) ilustra os caminhos pelos quais um pacote de rede pode viajar em um determinado sistema. Para manter a simplicidade, a figura lista tabelas como partes de cadeias. Contudo, na realidade, essas cadeias esto contidas nas prprias tabelas. Em um dos casos mais simples possvel, um pacote recebido destinado ao prprio sistema chega na interface eth0. Primeiro, o pacote reconhecido pela cadeia PREROUTING da tabela mangle e, depois, na cadeia PREROUTING da tabela nat. A etapa a seguir, referente ao roteamento do pacote, determina que o destino real do pacote um processo do prprio sistema. Depois de passar pelas cadeias INPUT das tabelas mangle e filter, o pacote por fim chega ao seu destino, desde que as regras da tabela filter tenham sido realmente relacionadas.
ao mundo externo, uma ou vrias outras o vinculam-no aos hosts da LAN. Com esses hosts na rede local conectados placa de rede (como o eth0) do roteador, eles podem enviar qualquer pacote no destinado rede local para seus roteadores ou gateways padro. IMPORTANTE: Usando a mscara de rede correta Ao configurar a rede, verifique se o endereo de broadcast e a mscara de rede so os mesmos para todos os hosts locais. Sem essa verificao, os pacotes podero no ser roteados corretamente. Conforme mencionado, sempre que um dos hosts da LAN enviar um pacote destinado a um endereo da Internet, ele ir para o roteador padro. Entretanto, o roteador precisar estar configurado antes de encaminhar esse pacote. Por razes de segurana, o SUSE Linux no habilita essa funo em sua instalao padro. Para habilit-la, configure a varivel IP_FORWARD no arquivo /etc/sysconfig/sysctl para IP_FORWARD=yes. O host de destino da conexo poder ver o roteador, mas no saber sobre o host da rede interna, do qual os pacotes so provenientes. Essa a razo de a tcnica ser chamada de mascaramento. Devido converso do endereo, o roteador o primeiro destino de qualquer pacote de resposta. O roteador precisa identificar esses pacotes recebidos e converter seus endereos de destino, para que os pacotes possam ser encaminhados ao host correto na rede local. Com o roteamento do trfego de entrada, dependendo da tabela de mascaramento, no h como abrir uma conexo para um host interno pela parte externa. Para uma conexo como essa, no haveria entrada na tabela. Alm disso, qualquer conexo j estabelecida possui uma entrada de status que lhe foi designada na tabela; portanto, a entrada no pode ser usada por outra conexo. Como conseqncia de tudo isso, talvez voc tenha alguns problemas com um nmero de protocolos de aplicativos, como ICQ, cucme, IRC (DCC, CTCP) e FTP (no modo PORTA). Netscape, o programa padro de FTP, e muitos outros usam o modo PASV. Esse modo passivo bem menos problemtico, contanto que o mascaramento e a filtragem de pacotes estejam envolvidos.
108
Referncia
4.1.4 SuSEfirewall2
O SuSEfirewall2 um script que l as variveis configuradas em /etc/sysconfig/ SuSEfirewall2 para gerar um conjunto de regras iptables. Ele define trs zonas de segurana, apesar de somente a primeira e a segunda serem consideradas na configurao de amostra a seguir:
Segurana no Linux
109
Zona externa Considerando que no h como controlar o que ocorre na rede externa, os hosts precisam ser protegidos contra ela. Na maioria dos casos, a rede externa a Internet, mas poderia ser outra rede sem segurana, como uma WLAN. Zona interna Ela se refere rede privada, normalmente, a LAN. Se os hosts dessa rede usam endereos IP do intervalo privado (consulte a Seo 18.1.2, Mscaras de rede e roteamento (p 335)), habilite a NAT, para que os hosts da rede interna possam acessar a externa. DMZ (Demilitarized Zone - Zona Desmilitarizada) Apesar de os hosts localizados nessa zona poderem ser localizados tanto da rede externa quanto da interna, eles no conseguem acessar sozinhos a rede interna. Essa configurao pode ser usada para incluir uma linha adicional de defesa na frente da rede interna, pois os sistemas DMZ ficam isolados da rede interna. Qualquer tipo de trfego de rede no explicitamente permitido pelo conjunto de regras de filtragem suprimido por iptables. Portanto, cada uma das interfaces com trfego recebido precisa ser posicionada em uma das trs zonas. Para cada uma das zonas, defina os servios ou protocolos permitidos. O conjunto de regras aplicado somente em pacotes originados de hosts remotos. Pacotes gerados localmente no so capturados pelo firewall. A configurao pode ser executada com o YaST (consulte Configurando com o YaST (p 110)). Tambm pode ser feita manualmente no arquivo /etc/sysconfig/ SuSEfirewall2, que contm vrios comentrios. Alm disso, vrios cenrios de exemplo esto disponveis em /usr/share/doc/packages/SuSEfirewall2/ EXAMPLES.
110
Referncia
do mdulo do servidor incluem o boto Detalhes do Firewall para ativar servios e portas adicionais. O mdulo de configurao de firewall do YaST pode ser usado para ativar, desativar ou reconfigurar o firewall. As caixas de dilogo do YaST para a configurao grfica podem ser acessadas no Centro de Controle do YaST. Selecione Segurana e Usurios Firewall. A configurao dividida em sete sees que podem ser acessadas diretamente da estrutura em rvore no lado esquerdo. Inicializao Configure o comportamento de inicializao nesta caixa de dilogo. Em uma instalao padro, o SUSEfirewall2 iniciado automaticamente. Voc tambm pode iniciar e parar o firewall aqui. Para implementar suas novas configuraes em um firewall em execuo, use Salvar Configuraes e Reiniciar Firewall Agora. Figura 4.2 A configurao de firewall do YaST
Interfaces Todas as interfaces de rede conhecidas esto listadas aqui. Para remover uma interface de uma zona, selecione-a, pressione Modificar e escolha Nenhuma Zona Designada. Para adicionar uma interface a uma zona, selecione-a, pressione Modificar e escolha qualquer das zonas disponveis. Voc tambm pode criar uma interface especial com suas prprias configuraes usando Personalizar.
Segurana no Linux
111
Servios permitidos Essa opo necessria para oferecer servios do seu sistema para uma zona da qual ele protegido. Por padro, o sistema protegido somente de zonas externas. Permita, de forma explcita, os servios que devem estar disponveis para hosts externos. Ative os servios aps selecionar a zona desejada em Servios permitidos para zona selecionada. Mascaramento O mascaramento oculta sua rede interna das redes externas, como a Internet, e habilita hosts na rede interna para acessarem a rede externa de forma transparente. As solicitaes da rede externa para a interna so bloqueadas e as solicitaes da rede interna parecem ser emitidas pelo servidor de mascaramento quando vistas externamente. Se servios especiais de uma mquina interna precisarem estar disponveis para a rede externa, adicione regras especiais de redirecionamento ao servio. Broadcast Nessa caixa de dilogo, configure as portas UDP que permitem broadcasts. Adicione os servios ou nmeros de porta solicitados zona apropriada, separados por espaos. Consulte tambm o arquivo /etc/services. O registro de broadcasts no aceitos pode ser habilitado aqui. Isso pode ser problemtico, pois os hosts do Windows usam broadcasts para sua identificao e, assim, geram muitos pacotes que no so aceitos. Suporte a IPsec Configure nesta caixa de dilogo se o servio IPsec deve estar disponvel para a rede externa. Configure quais pacotes so confiveis em Detalhes. Nvel de registro H duas regras para o registro: pacotes aceitos e no aceitos. Pacotes no aceitos so DESCARTADOS ou REJEITADOS. Selecione Registrar Tudo, Registrar Apenas Crticos ou No Registrar Nenhum para as duas opes. Ao concluir a configurao do firewall, saia dessa caixa de dilogo com Prximo. Ser aberto um resumo orientado por zona da configurao do firewall. Nele, verifique todas as configuraes. Todos os servios, portas e protocolos permitidos esto listados nesse resumo. Para modificar a configurao, use Voltar. Pressione Aceitar para gravar as configuraes.
112
Referncia
Configurando manualmente
Os pargrafos a seguir fornecem instrues passo a passo para executar uma configurao bem-sucedida. Cada item de configurao marcado se relevante para firewall ou para mascaramento. Os aspectos relacionados DMZ, conforme mencionado no arquivo de configurao, no sero abordados aqui. Eles so aplicveis somente a uma infraestrutura de rede mais complexa, encontrada em organizaes maiores (redes corporativas), que exigem uma configurao extensa e conhecimento profundo sobre o assunto. Primeiro, use o mdulo do YaST Servios do Sistema (Nvel de Execuo) para habilitar o SuSEfirewall2 no seu nvel de execuo (provavelmente, 3 ou 5). Ele configura os symlinks para o SuSEfirewall2_* scripts nos diretrios /etc/init.d/rc?.d/. FW_DEV_EXT (firewall, mascaramento) O dispositivo vinculado Internet. Para obter uma conexo via modem, digite ppp0. Para obter um link ISDN, use o ippp0. As conexes DSL usam o dsl0. Especifique auto para usar a interface que corresponde rota padro. FW_DEV_INT (firewall, mascaramento) O dispositivo vinculado rede privada, interna (como a eth0). Deixe esse espao vazio se no houver rede interna e o firewall proteger somente o host em que estiver sendo executado. FW_ROUTE (firewall, mascaramento) Se voc precisar da funo mascaramento, configure como yes. Os hosts internos no ficaro visveis de fora, pois seus endereos de rede privada (por exemplo, 192.168.x.x) sero ignorados pelos roteadores da Internet. Para um firewall sem mascaramento, configure como yes somente se desejar permitir acesso rede interna. Os hosts internos precisam usar IPs registrados oficialmente nesse caso. No entanto, normalmente voc no deveria permitir o acesso externo sua rede interna. FW_MASQUERADE (mascaramento) Configure como yes, se voc precisar da funo mascaramento. Com isso, voc ter uma conexo praticamente direta com a Internet para os hosts internos. mais seguro haver um servidor proxy entre os hosts da rede interna e a Internet. O mascaramento no necessrio para servios fornecidos por um servidor proxy.
Segurana no Linux
113
FW_MASQ_NETS (mascaramento) Especifique as redes ou os hosts que devem ser mascarados, deixando um espao entre as entradas individuais. Por exemplo:
FW_MASQ_NETS="192.168.0.0/24 192.168.10.1"
FW_PROTECT_FROM_INT (firewall) Configure como yes e o host do firewall ficar protegido contra ataques que surgirem em sua rede interna. Os servios s estaro disponveis para a rede interna se estiverem explicitamente habilitados. Consulte tambm os servios FW_SERVICES_INT_TCP e FW_SERVICES_INT_UDP. FW_SERVICES_EXT_TCP (firewall) Digite as portas TCP que devem ficar disponveis. Deixe esse espao vazio para uma estao de trabalho residencial normal, que no deve oferecer servios. FW_SERVICES_EXT_UDP (firewall) Deixe esse espao vazio, a menos que voc execute um servio UDP e deseje disponibiliz-lo externamente. Os servios que usam o UDP incluem os servidores DNS, IPSec, TFTP, DHCP e outros. Nesse caso, digite as portas UDP a serem usadas. FW_SERVICES_INT_TCP (firewall) Com essa varivel, defina os servios disponveis para a rede interna. A notao a mesma do FW_SERVICES_EXT_TCP, mas as configuraes so aplicadas rede interna. A varivel s precisar ser configurada se o FW_PROTECT_FROM_INT estiver configurado como yes. FW_SERVICES_INT_UDP (firewall) Consulte o FW_SERVICES_INT_TCP. Depois de configurar o firewall, teste sua configurao. Os conjuntos de regras de firewall so criados digitando SuSEfirewall2 start como root. Depois, use telnet, por exemplo, de um host externo para ver se a conexo foi realmente negada. Depois disso, reveja /var/log/messages, em que dever aparecer algo semelhante a:
Mar 15 13:21:38 linux kernel: SFW2-INext-DROP-DEFLT IN=eth0 OUT= MAC=00:80:c8:94:c3:e7:00:a0:c9:4d:27:56:08:00 SRC=192.168.10.0 DST=192.168.10.1 LEN=60 TOS=0x10 PREC=0x00 TTL=64 ID=15330 DF PROTO=TCP SPT=48091 DPT=23 WINDOW=5840 RES=0x00 SYN URGP=0 OPT (020405B40402080A061AFEBC0000000001030300)
114
Referncia
Outros pacotes que testam a configurao de um firewall so o nmap ou o nessus. A documentao do nmap pode ser encontrada em /usr/share/doc/packages/ nmap e a do nessus no diretrio /usr/share/doc/packages/nessus-core depois que o respectivo pacote estiver instalado.
Segurana no Linux
115
As aspas so necessrias aqui para enviar as duas instrues com um comando. Somente com esse procedimento o segundo comando executado no sun.
116
Referncia
Depois que a senha correta digitada, o scp inicia a transferncia de dados e mostra uma linha crescente de asteriscos para simular uma barra de progresso. Alm disso, o programa exibe o tempo estimado de chegada direita da barra de progresso. Suprima toda a sada fornecendo a opo -q. O scp tambm fornece um recurso de cpia recursiva para diretrios inteiros. O comando scp -r src/ sun:backup/ copia todo o contedo do diretrio src, incluindo todos os subdiretrios, no diretrio backup do host sun. Se esse subdiretrio ainda no existir, ele ser criado automaticamente. A opo -p avisa ao scp para no mudar a marcao de horrio dos arquivos. A opo -C compacta a transferncia de dados. Assim o volume de dados a ser transferido minimizado, embora seja criada uma carga mais pesada para o processador.
Segurana no Linux
117
O cliente SSH inicia uma conexo. O daemon SSH e o cliente SSH que solicitou a conexo fazem um intercmbio de dados de identificao para comparar as verses de software e o protocolo, e para evitar conexes pela porta errada. Como um processo filho do daemon SSH original responde solicitao, vrias conexes de SSH podem ser feitas ao mesmo tempo. Para a comunicao entre o servidor SSH e o cliente SSH, o OpenSSH suporta as verses 1 e 2 do protocolo SSH. Os sistemas SUSE Linux recentes tm a verso 2 como padro. Para continuar usando a verso 1 depois de uma atualizao, siga as instrues de /usr/share/doc/packages/openssh/README.SuSE. Este documento tambm descreve como um ambiente SSH 1 pode ser transformado em um ambiente de trabalho SSH 2 em apenas algumas etapas. Ao usar a verso 1 do SSH, o servidor envia sua chave pblica de host e uma chave de servidor, que gerada novamente pelo daemon SSH a cada hora. Ambas permitem que o cliente SSH criptografe uma chave de sesso escolhida livremente, que enviada ao servidor SSH. O cliente SSH tambm comunica ao servidor qual mtodo de criptografia (cifra) deve ser usado. A verso 2 do protocolo de SSH no requer uma chave de servidor. Os dois lados usam um algoritmo de acordo com Diffie-Helman para fazer o intercmbio de suas chaves. O host privado e as chaves do servidor so absolutamente necessrios para descriptografar a chave da sesso e no podem ser derivados de partes pblicas. Somente o daemon SSH contatado pode descriptografar a chave da sesso usando suas chaves privadas (consulte man /usr/share/doc/packages/openssh/RFC.nroff). Essa fase inicial de conexo pode ser observada de perto, se voc ativar a opo de depurao verbosa -v do cliente SSH. A verso 2 do protocolo SSH usada por padro. Substitua-a pela verso 1 do protocolo com o switch -1. O cliente armazena todas as chaves pblicas do host no arquivo ~/ .ssh/known_hosts depois de seu primeiro contato com um host remoto. Esse procedimento evita ataques man-in-the-middle (MITM) - tentativas de servidores SSH estrangeiros usarem nomes e endereos IP falsos. Esses ataques so detectados por uma chave de host no includa em ~/.ssh/known_hosts ou pela incapacidade do servidor de descriptografar a chave da sesso na ausncia de um correlativo privado apropriado. recomendvel fazer backup das chaves pblicas e privadas armazenadas em /etc/ ssh/ em um local externo seguro. Desta forma, as modificaes das chaves podem
118
Referncia
ser detectadas e as chaves antigas podem ser usadas novamente depois de uma reinstalao. Esse procedimento poupa os usurios de avisos de desproteo. Verificouse que, apesar do aviso - na realidade trata-se do servidor SSH correto -, a entrada para o sistema existente deve ser removida de ~/.ssh/known_hosts.
Segurana no Linux
119
atento para concluir a sesso X ou bloque-la com um aplicativo de proteo de senha, como o xlock. Todas as mudanas relevantes resultantes do lanamento da verso 2 do protocolo SSH tambm esto documentadas no arquivo /usr/share/doc/packages/openssh/ README.SuSE.
Com esse comando, qualquer conexo direcionada para a porta 25 (SMTP) do earth redirecionada para a porta SMTP do sun por meio de um canal criptografado. Esse recurso especialmente til para os que usam servidores SMTP sem os recursos SMTPAUTH ou POP-before-SMTP. De qualquer local arbitrrio conectado a uma rede, possvel transferir e-mails para o servidor de correio eletrnico domstico para entrega. Da mesma forma, todas as solicitaes de POP3 (porta 110) do earth podem ser encaminhadas para a porta POP3 do sun com esse comando.
ssh -L 110:sun:110 earth
120
Referncia
Os dois comandos devem ser executados como root, pois a conexo feita para portas locais privilegiadas. Os e-mails so enviados e recuperados por usurios normais em uma conexo SSH existente. Os hosts SMTP e POP3 devem ser definidos como localhost para que isso funcione. Outras informaes podem ser encontradas nas pginas de manual referentes a cada programa descrito acima, bem como nos arquivos em /usr/share/doc/packages/openssh.
Segurana no Linux
121
Estaes de trabalho Em empresas nas quais quase todas as pessoas tm acesso ao seu computador, pode ser til criptografar a partio ou arquivos individuais.
122
Referncia
continuar a inicializao bloqueando o acesso aos seus dados. Uma vez montada, a partio estar disponvel a todos os usurios. Se o sistema de arquivos criptografado somente for montado quando necessrio, habilite a opo No Montar na Inicializao do Sistema na caixa de dilogo Opes de fstab. A respectiva partio no ser montada durante a inicializao do sistema. Para tornla disponvel no futuro, monte-a manualmente com mount nome_da_partio ponto_de_montagem. Digite a senha quando solicitada. Aps terminar o trabalho na partio, desmonte-a com umount nome_da_partio para proteg-la contra o acesso de outros usurios.
Segurana no Linux
123
124
Referncia
aplicativo (uma lista de arquivos que o programa pode acessar e as operaes que o programa pode realizar). A proteo avanada e efetiva de um sistema de computador requer a minimizao do nmero de programas que media privilgios, dessa forma protegendo os programas tanto quanto possvel. Com o Novell AppArmor, voc s precisa criar perfil para os programas que so expostos a ataques em seu ambiente, o que reduz drasticamente o trabalho necessrio para proteger melhor o seu computador. Os perfis do AppArmor obrigam as polticas a verificar que os programas cumpram sua funo e nada mais. Os administradores s precisam cuidar dos aplicativos que so vulnerveis a ataques e gerar perfis para eles. A proteo avanada de sistema equivale, pois, a construir e manter o conjunto de perfis do AppArmor e a monitorar quaisquer violaes de poltica ou excees registradas pelo gerador de relatrios do AppArmor. A construo de perfis do AppArmor para delimitar um aplicativo muito fcil e intuitiva. O AppArmor fornece vrias ferramentas que auxiliam na criao de perfis. O AppArmor no requer que voc faa nenhuma programao nem manipulao de scripts. A nica tarefa exigida do administrador determinar uma poltica de acesso mais rgida e executar permisses para cada aplicativo que necessite de uma proteo avanada. Atualizaes ou modificaes aos perfis do aplicativo s so necessrias se a configurao do software ou a faixa de atividades desejada mudar. O AppArmor oferece ferramentas intuitivas para manipular atualizaes ou modificaes de perfil. Os usurios nem percebero o AppArmor. Ele executado por trs dos bastidores e no requer nenhuma interao com o usurio. O desempenho no ser afetado de maneira a ser percebida pelo AppArmor. Se alguma atividade do aplicativo no for protegida por um perfil do AppArmor ou se alguma atividade do aplicativo for impedida pelo AppArmor, o administrador deve ajustar o perfil deste aplicativo para cobrir este tipo de comportamento. Este guia resume as tarefas bsicas que devem ser realizadas com o AppArmor para implementar uma proteo avanada e efetiva a um sistema. Para obter mais informaes, consulte o Guia de Administrao do Novell AppArmor 2.0.
Segurana no Linux
125
4 Selecione todos estes pacotes para instalao e selecione Aceitar. O YaST resolve quaisquer dependncias e instala todos os pacotes para voc. 5 Quando o YaST terminar de atualizar a configurao do sistema, selecione Concluir para sair do gerenciador de pacote.
126
Referncia
2 Inicie Sistema Servios do Sistema (Runlevel). 3 Na lista de servios exibidos, selecione apparmor. Consulte a Figura 4.3, Habilitando o Novell AppArmor atravs do YaST (p 127). 4 Clique em Habilitar para habilitar o AppArmor permanentemente. 5 Clique em Concluir para aceitar suas configuraes. Figura 4.3 Habilitando o Novell AppArmor atravs do YaST
Usando a ferramenta Runlevel do YaST, possvel habilitar os servios permanentemente. Estas configuraes sobrevivem reinicializao do seu sistema. Para habilitar o AppArmor temporariamente, pela durao de uma sesso apenas, faa o seguinte: 1 Efetue login como root e inicie o YaST. 2 Inicie o Novell AppArmor Painel de Controle do AppArmor. 3 Defina o Status do AppArmor em AppArmor est habilitado clicando em Configurar Habilitar OK.
Segurana no Linux
127
128
Referncia
Tarefas cron Programas que o daemon cron executa periodicamente lem entradas de diversas fontes. Para saber que processos esto sendo executados atualmente com portas de rede abertas e podem precisar de um perfil para delimit-los, execute unconfined como root. Exemplo 4.1 Sada de unconfined
19848 19887 19947 29205 /usr/sbin/cupsd not confined /usr/sbin/sshd not confined /usr/lib/postfix/master not confined /usr/sbin/sshd confined by '/usr/sbin/sshd (enforce)'
Cada um dos processos no exemplo acima rotulado de no delimitado pode precisar de um perfil personalizado para delimit-lo. Os processos rotulados delimitado por j so protegidos pelo AppArmor. DICA: Mais informaes Para obter mais informaes sobre a escolha dos aplicativos corretos para os quais criar perfil, consulte o Captulo Selecionando programas a imunizar (Guia de Administrao do Novell AppArmor 2.0).
Segurana no Linux
129
1 Como root, deixe o AppArmor criar um resumo do perfil do aplicativo, executando genprof programname ou executando YaST Novell AppArmor Assistente para Adicionar Perfil e especificando o caminho completo do aplicativo para o qual criar perfil. Um perfil bsico traado e o AppArmor colocado no modo de aprendizado, o que significa que ele registra qualquer atividade do programa que voc esteja executando mas no o restringe. 2 Execute a gama completa de aes do aplicativo para que o AppArmor obtenha um quadro bastante especfico de suas atividades. 3 Deixe o AppArmor analisar os arquivos de registro gerados na Passo 2 (p 130). Faa-o digitando S em genprof ou clicando em Explorar eventos do AppArmor no registro do sistema no Assistente para Adicionar Perfil e siga as instrues fornecidas no assistente at concluir o perfil. O AppArmor explora os registros feitos durante a execuo do aplicativo e pede para voc configurar os direitos de acesso para cada evento para o qual foi efetuado login. Configure-os para cada arquivo ou use globbing. 4 Uma vez que todas as permisses de acesso estejam configuradas, o seu perfil definido para o modo forado. O perfil aplicado e o AppArmor restringe o aplicativo de acordo com o perfil que acabou de ser criado. Se iniciou genprof para um aplicativo que tinha um perfil existente que estava no modo de reclamao, este perfil permanecer no modo de aprendizado at sair deste ciclo de aprendizado. Para obter mais informaes sobre como mudar o modo de um perfil, consulte a Seo Modo de reclamao ou aprendizado (Captulo 3, Construindo perfis do Novell AppArmor, Guia de Administrao do Novell AppArmor 2.0) e a Seo Modo Forado (Captulo 3, Construindo perfis do Novell AppArmor, Guia de Administrao do Novell AppArmor 2.0).
130
Referncia
Teste as suas configuraes de perfil realizando todas as tarefas com o aplicativo que acabou de delimitar. Normalmente, o programa delimitado tem uma execuo uniforme e voc no percebe as atividades do AppArmor. No entanto, se observar um certo comportamento inadequado no seu aplicativo, verifique os registros do sistema e veja se o AppArmor est delimitando demais o seu aplicativo. Localize os registros adequados em /var/log/messages ou execute dmesg. Qualquer sada semelhante ao exemplo a seguir sugere que o AppArmor est delimitando demais o seu aplicativo:
AppArmor: REJECTING w access to /var/run/nscd/socket (traceroute(2050) profile /usr/sbin/traceroute active /usr/sbin/traceroute)
Para ajustar o perfil, execute o Assistente para Adicionar Perfil novamente como descrito acima e deixe que ele analise as mensagens de registro relativas ao aplicativo especfico. Determine os direitos ou restries de acesso quando solicitado pelo YaST. DICA: Mais informaes Para obter mais informaes sobre construo e modificao de perfil, consulte o Captulo Construindo perfis do Novell AppArmor (Guia de Administrao do Novell AppArmor 2.0).
Segurana no Linux
131
3 Na seo Habilitar Notificao de Evento de Segurana, selecione Configurar. 4 Para cada tipo registrado (Conciso, Resumo e Verboso) configure uma freqncia de relatrio, digite um endereo de e-mail para receber os relatrios e determine a gravidade dos eventos a registrar. Se quiser incluir eventos desconhecidos nos relatrios de evento, marque Incluir Eventos de Gravidade Desconhecidos. NOTA A menos que voc esteja familiarizado com categorizao de evento do AppArmor, escolha ser notificado sobre eventos de todos os nveis de segurana. 5 Deixe esta caixa de dilogo com OK Concluir para aplicar suas configuraes. Configure relatrios do Novell AppArmor. Usando relatrios, possvel ler eventos de segurana importantes do Novell AppArmor relatados nos arquivos de registro sem precisar peneirar manualmente as mensagens pesadas, teis apenas para a ferramenta logprof. possvel restringir o tamanho do relatrio, filtrando por faixa de data ou nome de programa. Para configurar os relatrios do AppArmor proceda da seguinte maneira: 1 Efetue login como root e inicie o YaST. Selecione Novell AppArmor Relatrios do AppArmor. 2 Selecione o tipo de relatrio que voc quer examinar ou configurar de Resumo de Segurana Executivo, Auditoria de Aplicativos e Relatrio de Incidente de Segurana. 3 Edite a freqncia de gerao de relatrio, endereo de e-mail, formato de exportao e a localizao dos relatrios selecionando Editar e fornecendo os dados solicitados. 4 Para executar um relatrio do tipo selecionado, clique em Executar Agora. 5 Pesquise nos relatrios arquivados de um determinado tipo, selecionando Visualizar Arquivo e especificando o tipo de relatrio. ou
132
Referncia
Apague os relatrios desnecessrios ou adicione novos. DICA: Mais informaes Para obter mais informaes sobre configurao de notificao de evento no Novell AppArmor, consulte a Seo Configurando notificaes de evento (Captulo 4, Gerenciando aplicativos em perfil, Guia de Administrao do Novell AppArmor 2.0). Mais informaes sobre configurao de relatrio so encontradas na Seo Relatrios (Captulo 4, Gerenciando aplicativos em perfil, no Guia de Administrao do Novell AppArmor 2.0).
Segurana no Linux
133
134
Referncia
ainda assim, voc no gostaria que ele divulgasse todos os seus dados pessoais para qualquer pessoa na rede. Na lista acima, o primeiro caso onde a maior quantidade de interao humana est envolvida, por exemplo, quando voc contacta um funcionrio de um banco e ele solicita que voc prove que a pessoa proprietria daquela conta de banco. Ento, solicitam sua assinatura, um PIN ou uma senha para provar que voc aquela pessoa. Em alguns casos, pode ser possvel extrair informaes de uma pessoa esclarecida apenas mencionando poucos detalhes conhecidos, suficientes para ganhar a confiana dessa pessoa, usando uma retrica inteligente. A vtima pode ser levada a revelar, gradativamente, mais informaes, talvez sem nem mesmo se dar conta disso. Entre os hackers, isso chamado de engenharia social. A nica forma de se proteger contra isso educar as pessoas e saber lidar com linguagem e informaes de uma forma consciente. Antes de invadirem sistemas de computador, os invasores geralmente tentam atingir recepcionistas, auxiliares que trabalham na empresa ou at mesmo membros de uma famlia. Em muitos casos, como um ataque baseado em engenharia social, ele s descoberto muito tempo depois. Uma pessoa que deseja obter acesso no autorizado aos seus dados poderia tambm tentar obt-lo da forma tradicional, diretamente atravs do seu hardware. Portanto, a mquina deve ser protegida contra qualquer falsificao, para que ningum possa remover, substituir ou danificar seus componentes. Isso tambm se aplica a backups e, at mesmo, a qualquer cabo de rede ou de energia. Proteja tambm o procedimento de inicializao, pois h algumas combinaes de tecla bastante conhecidas que podem provocar um comportamento anormal. Proteja-se contra isso, configurando senhas para o BIOS e para o carregador de boot. Os terminais seriais conectados a portas seriais ainda so usados em muitos locais. Diferente das interfaces de rede, eles no usam um protocolo de rede para se comunicar com o host. Um cabo simples ou porta infravermelha envia e retorna caracteres simples entre os dispositivos. O prprio cabo o ponto mais fraco de um sistema desses: com uma impressora mais antiga conectada a ele, fcil registrar qualquer coisa que seja transmitida pelos cabos. O que se consegue com uma impressora tambm pode ser feito de outras formas, dependendo do esforo envolvido no ataque. Ler um arquivo localmente em um host exige outras regras de acesso, diferentes de abrir uma conexo de rede com um servidor em um host diferente. No h distino entre segurana local e segurana de rede. A linha desenhada onde os dados devem ser colocados em pacotes para serem enviados para outro local.
Segurana no Linux
135
Segurana local
A segurana local comea com o ambiente fsico, no local onde o computador executado. Configure sua mquina em um local onde a segurana esteja de acordo com suas expectativas e necessidades. O principal objetivo da segurana local manter usurios separados entre si, para que nenhum assuma a permisso ou a identidade do outro. Essa uma regra geral a ser observada, mas extremamente verdadeira para o root do usurio, que contm a fora suprema do sistema. root pode assumir a identidade de qualquer usurio local sem que lhe seja solicitada uma senha e pode ler qualquer arquivo armazenado localmente.
Senhas
Em um sistema Linux, as senhas no so armazenadas como texto simples e a string de texto digitada no corresponde diretamente com o padro salvo. Se fosse assim, todas as contas do seu sistema estariam comprometidas assim que algum tivesse acesso ao arquivo correspondente. Em vez disso, a senha armazenada criptografada e, toda vez que digitada, novamente criptografada para que as duas strings criptografadas sejam comparadas. Isso oferece mais segurana somente se a senha criptografada no puder ser computada de forma inversa na string de texto original. Isso pode ser feito atravs de um tipo especial de algoritmo, tambm chamado de algoritmo trapdoor, pois ele s funciona em uma direo. Um invasor que obteve a string criptografada no capaz de obter sua senha simplesmente aplicando o mesmo algoritmo novamente. Em vez disso, seria preciso testar todas as combinaes de caracteres possveis, at encontrar uma que se parecesse com sua senha quando criptografada. Em senhas com oito caracteres, h um nmero considervel de combinaes possveis de serem calculadas. Nos anos setenta, dizia-se que esse mtodo seria mais seguro do que outros, devido relativa lentido do algoritmo usado, que levava alguns segundos para criptografar apenas uma senha. Entretanto, enquanto isso, os PCs foram se tornando mais potentes o suficiente para executar centenas de milhares ou at milhes de criptografias por segundo. Por causa disso, as senhas criptografadas no devem ficar visveis para usurios regulares (/etc/shadow no pode ser lida por usurios normais). at mais importante que senhas no sejam fceis de adivinhar, no caso de um arquivo de senha ficar visvel por algum erro. Conseqentemente, no de muita utilidade traduzir uma senha como tantalize para t@nt@1lz3.
136
Referncia
Substituir algumas letras da palavra por nmeros parecidos no seguro o suficiente. Programas para fraudar senhas, que usam dicionrios para adivinhar palavras, tambm testam substituies como essa. Uma forma melhor criar uma palavra sem um significado comum, mas que s faa sentido para voc, como as primeiras letras das palavras de uma frase ou do ttulo de um livro, como The Name of the Rose by Umberto Eco (O Nome da Rosa, de Umberto Eco). A senha segura criada ficaria assim: TNotRbUE9. Diferentemente, senhas como beerbuddy ou jasmine76 so de fcil adivinhao, mesmo por algum que tenha pouco conhecimento a seu respeito.
O procedimento de inicializao
Configure o sistema de forma que no possa ser inicializado de um disquete ou CD, removendo totalmente as unidades ou configurando uma senha para o BIOS e configurando-o para que inicialize somente a partir de um disco rgido. Normalmente, um sistema Linux iniciado por um carregador de boot, permitindo que voc passe opes adicionais para o kernel inicializado. Para evitar que outros usem esses parmetros durante a inicializao, configure uma senha adicional em /boot/grub/ menu.lst (consulte o Captulo 9, O Carregador de Boot (p 201)). Isso imprescindvel para a segurana do sistema. O kernel no s executado com permisses de root, como tambm a primeira autoridade a conceder permisses de root na inicializao do sistema.
Permisses de arquivo
Como regra geral, sempre trabalhe com os privilgios mais restritivos possveis para uma determinada tarefa. Por exemplo, definitivamente, no necessrio ser root para ler ou gravar e-mails. Se o programa de correio possuir um bug, esse bug pode ser explorado para um ataque que atue com as permisses exatas do programa quando foi inicializado. Ao seguir a regra acima, os possveis danos sero minimizados. As permisses de mais de 200.000 arquivos includos em uma distribuio SUSE so escolhidos cuidadosamente. Um administrador de sistemas que instale softwares adicionais ou outros arquivos deve ser cuidadoso ao faz-lo, especialmente quando configurar os bits de permisso. Administradores de sistemas experientes e atentos segurana sempre usam a opo -l com o comando ls, para obter uma lista de arquivos extensa, que ajuda na deteco imediata de qualquer permisso de arquivo incorreta. Um atributo de arquivo incorreto no significa somente que os arquivos podem ser mudados ou apagados. Esses arquivos modificados podem ser executados pelo root ou, no caso de arquivos de configurao, programas poderiam usar tais arquivos com Segurana no Linux 137
as permisses do root. Isso aumenta significativamente as possibilidades de um ataque. Ataques como esse so chamados de cuckoo eggs (ovos de cuco), pois o programa (o ovo) executado (quebrado) por um usurio diferente (pssaro), exatamente como um cuco engana outros pssaros para quebrar seus ovos. Um sistema SUSE Linux inclui os arquivos permissions, permissions.easy, permissions.secure e permissions.paranoid, todos no diretrio /etc. A funo desses arquivos definir permisses especiais, como diretrios gravveis mundialmente ou, para arquivos, o bit do setuser ID (programas com o conjunto de bits setuser ID no so executados com as permisses do usurio que os inicializou e sim com as do proprietrio do arquivo, na maioria dos casos, o root). Um administrador pode usar o arquivo /etc/permissions.local para adicionar suas prprias configuraes. Para definir qual dos arquivos acima usado pelos programas de configurao do SUSE para definir permisses compatveis, selecione Segurana no YaST. Para saber mais sobre esse tpico, leia os comentrios em /etc/permissions ou consulte a pgina do manual do chmod (man chmod).
de programao so explorados com programas executados com permisses especiais programas setuid e setgid o que tambm significa que voc pode proteger os dados e o sistema desses bugs, removendo dos programas os privilgios de execuo correspondentes. Novamente, a melhor forma aplicar uma poltica de uso de privilgios mais baixos possveis (consulte Permisses de arquivo (p 137)). Como os overflows de buffer e bugs de string de formato so bugs relacionados ao manuseio de dados do usurio, eles no so s explorveis se o acesso tiver sido concedido a uma conta local. Muitos dos bugs relatados tambm podem ser explorados por um link de rede. Da mesma forma, bugs de string de formato e overflows de buffer devem ser classificados como relevantes tanto para a segurana de rede quanto a local.
Vrus
Contrrio ao que dizem algumas pessoas, h vrus que so executados no Linux. Entretanto, os vrus conhecidos foram criados por seus autores como um prottipo, para provar que a tcnica funciona como determinado. Nenhum desses vrus foi apontado em lugar algum at agora. Os vrus no conseguem sobreviver e se espalharem sem que haja um host onde possam permanecer. Nesse caso, o host seria um programa ou uma rea de armazenamento importante do sistema, como o MBR (Master Boot Record), que precisa ser gravvel para o cdigo de programa do vrus. Devido aos seus recursos de multiusurio, o Linux pode restringir o acesso de gravao a certos arquivos especialmente importantes para arquivos do sistema. Portanto, se voc trabalhou normalmente com as permisses de root, as chances de o sistema ser infectado por vrus aumentaro. Por outro lado, se voc seguiu os princpios do uso de privilgios mais baixos possveis, conforme mencionado anteriormente, h poucas chances de um vrus entrar no computador. Independente disso, nunca execute um programa s pressas a partir de algum site da Internet que voc no conhea bem. Os pacotes RPM do SUSE possuem uma assinatura criptogrfica como rtulo digital indicando o extremo cuidado utilizado durante sua criao. Os vrus so um sinal tpico de que o administrador ou o usurio no possuem uma precauo de segurana necessria, colocando em risco um sistema que deveria estar altamente protegido. Vrus no devem ser confundidos com worms, que pertencem inteiramente ao mundo das redes. Worms no precisam de um host para se espalharem.
Segurana no Linux
139
Segurana de rede
A segurana da rede importante para a proteo contra um ataque iniciado externamente. O procedimento de login tpico, que exige um nome de usurio e senha para a autenticao do usurio ainda uma questo de segurana local. No caso especfico de efetuar login em uma rede, existe uma diferena entre os dois aspectos de segurana. O que acontece at a autenticao real a segurana da rede e tudo o que acontece depois disso a segurana local.
140
Referncia
acidentalmente o arquivo do seu diretrio principal, no conseguiria abrir nenhuma janela ou cliente X novos. Leia mais sobre os mecanismos de segurana do sistema X Window na pgina do manual do Xsecurity (man Xsecurity). O SSH (secure shell) pode ser usado para criptografar uma conexo de rede completamente e encaminh-la para um servidor X de forma transparente, sem que o mecanismo de criptografia seja percebido pelo usurio. Tambm chamado de encaminhamento de X. O encaminhamento de X feito simulando um servidor X no lado do servidor e configurando uma varivel DISPLAY para o shell no host remoto. Informaes detalhadas sobre o SSH podem ser encontradas na Seo 4.2, SSH: operaes seguras de rede (p 115). ATENO Se voc no considera seguro o host onde efetua login, no use o encaminhamento de X. Com o encaminhamento de X habilitado, um invasor pode se autenticar atravs da conexo SSH e invadir o servidor X para farejar sua entrada de teclado, por exemplo.
Segurana no Linux
141
uma vulnerabilidade e seu cdigo de explorao poder submeter um patch para consertar o bug correspondente.
142
Referncia
Muitos dos ataques mencionados so executados junto com um DoS. Se um invasor vir uma oportunidade de desativar abruptamente um host, mesmo que por um curto perodo, ser mais fcil para ele usar o ataque ativo, pois o host no ser capaz de interferir contra o ataque por algum tempo.
Envenenamento de DNS
O envenenamento de DNS significa que o invasor corrompe o cache de um servidor DNS respondendo a ele com pacotes de respostas de DNS falsificados, para tentar fazer com que o servidor envie certos dados a uma vtima que esteja solicitando informaes a esse servidor. Muitos servidores mantm uma relao de confiana com outros hosts, baseada nos endereos IP ou nos nomes de host. O invasor precisa ter um bom conhecimento da estrutura real das relaes de confiana entre os hosts, para ser distinguido como um dos hosts confiveis. Normalmente, o invasor analisa alguns pacotes recebidos do servidor para obter as informaes necessrias. O invasor geralmente tambm precisa planejar um ataque DoS bem programado ao servidor de nomes. Proteja-se, usando conexes criptografadas que possam verificar a identidade dos hosts aos quais deve se conectar.
Worms
Worms geralmente so confundidas com vrus, mas h uma clara diferena entre os dois. Diferente dos vrus, worms no precisam infectar um programa de host para viverem. Em vez disso, suas especialidades so se espalharem o mais rpido possvel por estruturas de rede. Os worms que apareciam antigamente, como Ramen, Lion ou Adore, faziam uso de falhas conhecidas na segurana dos programas de servidor, como bind8 ou lprNG. A proteo contra worms relativamente fcil. Considerando que um certo tempo decorre entre a descoberta de uma falha na segurana e o momento em que o worm entra no servidor, h uma boa chance de uma verso atualizada do programa afetado estar disponvel a tempo. Isso s tem utilidade se o administrador realmente instalar as atualizaes de segurana nos sistemas em questo.
Segurana no Linux
143
recentes. Uma boa forma de proteger o sistema contra problemas de todos os tipos obter e instalar os pacotes atualizados recomendados pelos anncios de segurana o mais rpido possvel. Os anncios de segurana do SUSE so publicados em uma lista de discusso na qual voc pode se inscrever atravs do link http://www.novell .com/linux/security/securitysupport.html. A lista suse-security-announce@suse.de a fonte principal de informaes referente a pacotes atualizados e inclui membros da equipe de segurana do SUSE entre seus contribuintes ativos. A lista de discusso suse-security@suse.de um bom local para discutir quaisquer problemas de segurana de seu interesse. Inscreva-se nela na mesma pgina da Web. bugtraq@securityfocus.com uma das listas de discusso sobre segurana mais conhecidas no mundo. A leitura dessa lista, que recebe entre 15 a 20 publicaes por dia, recomendada. Mais informaes podem ser encontradas em http://www .securityfocus.com. A seguir, uma lista de regras que podem ser teis para lidar com questes de segurana bsica: De acordo com a regra de uso do conjunto de permisses mais restritivo para cada trabalho, evite fazer seus trabalho regulares no root. Isso reduzir o risco de obter um cuckoo egg (ovo do cuco) ou um vrus e proteger seu computador dos seus prprios erros. Se possvel, tente sempre usar conexes criptografadas para trabalhar em uma mquina remota. O uso de ssh (shell seguro) para substituir telnet, ftp, rsh e rlogin deve ser uma prtica padro. Evite usar mtodos de autenticao baseados em endereos IP isolados. Tente manter os pacotes relacionados rede mais importantes atualizados e inscrevase nas listas de discusso correspondentes, para receber anncios sobre novas verses desses programas (bind, sendmail, ssh, etc.). O mesmo deve se aplicar aos softwares relevantes segurana local. Mude o arquivo /etc/permissions, para otimizar as permisses dos arquivos cruciais para a segurana do seu sistema. Se voc remover o setuid bit de um programa, haver grandes chances de ele no ser mais capaz de executar suas respectivas funes da forma devida. Por outro lado, considere que, na maioria dos
144
Referncia
casos, o programa no ser mais um risco potencial segurana. Voc pode usar um mtodo semelhante, com arquivos e diretrios internacionalmente gravveis. Desabilite quaisquer servios de rede que no sejam absolutamente necessrios para o servidor funcionar adequadamente. Isso torna o sistema mais seguro. Portas abertas, com o estado do socket LISTEN, podem ser encontradas no programa netstat. Quanto s opes, recomendvel usar netstat -ap ou netstat -anp. A opo -p permite que voc veja que processo est ocupando uma porta com qual nome. Compare os resultados do netstat com os de uma explorao de porta mais completa feita fora do host. Um programa excelente para esse trabalho o nmap, que no s verifica as portas da mquina, como tambm conclui quais servios esto aguardando atrs delas. Entretanto, a explorao da porta pode ser interpretada como um ato agressivo, portanto, no a faa em um host sem a aprovao explcita do administrador. Por fim, lembre-se de que importante no s explorar as portas TCP, mas tambm as portas UDP (opes -sS e -sU). Para monitorar a integridade dos arquivos do seu sistema de forma confivel, use o programa AIDE (Advanced Intrusion Detection Environment), disponvel no SUSE Linux. Criptografe o banco de dados criado pelo AIDE, para evitar que algum o falsifique. Alm disso, mantenha um backup desse banco de dados disponvel fora da mquina, armazenado em um meio de dados externo no conectado rede. Instale cuidadosamente qualquer software de terceiros. Houve casos de um hacker ter criado um Cavalo de Tria no arquivo tar de um pacote de softwares de segurana, mas, felizmente, o ataque foi descoberto rapidamente. Se voc instalar um pacote binrio, no tenha dvidas quanto ao site de onde foi feito o seu download. Os pacotes RPM do SUSE so gpg-signed (assinados pelo gpg). A chave usada pelo SUSE para a assinatura : Chave de assinatura de pacote do SUSE: ID:9C800ACA 2000-10-19 <build@suse.de> Impresso digital da chave = 79C1 79B2 E1C8 20C1 890F 9994 A84E DAE8 9C80 0ACA
Segurana no Linux
145
O comando rpm --checksig package.rpm mostra se o checksum e a assinatura de um pacote desinstalado esto corretos. Encontre a chave no primeiro CD de distribuio e na maioria dos servidores de chaves em todo o mundo. Verifique os backups de arquivos do sistema e usurio regularmente. Considere que, se voc no testar os backups para ver se funcionam, eles sero, na verdade, inteis. Verifique seus arquivos de registro. Sempre que possvel, grave um pequeno script para pesquisar entradas suspeitas. Com certeza, essa no exatamente uma tarefa trivial. No final, somente voc saber quais entradas no so comuns e quais so. Use o tcp_wrapper para restringir o acesso a servios individuais executados na sua mquina, para que voc tenha controle total sobre quais endereos IP podem se conectar a um servio. Para obter informaes adicionais referentes ao tcp_wrapper, consulte as pginas do manual do tcpd e do hosts_access (man 8 tcpd, man hosts_access). Use o SuSEfirewall para aprimorar a segurana fornecida pelo tcpd (tcp_wrapper). Defina suas medidas de segurana para serem redundantes: uma mensagem vista duas vezes melhor do que no ver mensagem alguma.
4.5.3 Usando o Central Security Reporting Address (Endereo de Relatrios de Segurana Central)
Se encontrar um problema relacionado segurana (verifique, primeiro, os pacotes de atualizao disponveis), escreva um e-mail para security@suse.de. Inclua uma descrio detalhada do problema e o nmero de verso do pacote em questo. O SUSE tentar enviar uma resposta o mais rpido possvel. Voc incentivado a criptografar por pgp suas mensagens de e-mail. A chave pgp do SUSE :
ID:3D25D3D9 1999-03-06 SUSE Security Team <security@suse.de> Impresso digital da chave = 73 5F 2E 99 DF DB 94 C4 8F 5A A3 AE AF 22 F2 D5
146
Referncia
147
programa passwd normalmente requer permisses de root para acessar /etc/passwd. Este arquivo contm algumas informaes importantes, como os diretrios pessoais de usurios e IDs de usurio e grupo. Sendo assim, um usurio normal no poderia mudar passwd, j que seria muito arriscado conceder a todos os usurios acesso direto a este arquivo. Uma possvel soluo para esse problema o mecanismo setuid. O setuid (definir ID do usurio) um atributo de arquivo especial que instrui o sistema a executar programas marcados adequadamente com um ID de usurio especfico. Considere o comando passwd:
-rwsr-xr-x 1 root shadow 80036 2004-10-02 11:08 /usr/bin/passwd
Voc pode ver o s que denota que setuid bit est definido para a permisso do usurio. Por meio do setuid bit, todos os usurios iniciando o comando passwd o executam como root.
Voc pode ver o s que denota que o setuid bit est definido para a permisso do usurio. O proprietrio do diretrio e membros do grupo archive podero acessar este diretrio. Os usurios que no so membros deste grupo so mapeados para o grupo respectivo. O ID de grupo efetivo de todos os arquivos gravados ser archive. Por exemplo, um programa de backup que executado com o ID de grupo archive capaz de acessar este diretrio mesmo sem privilgios de root.
148
Referncia
rgidos modernos so muito rpidos. Se este bit estiver designado a um diretrio, ele impedir que usurios apaguem arquivos de outros usurios. Exemplos tpicos incluem os diretrios /tmp e /var/tmp:
drwxrwxrwt 2 root root 1160 2002-11-19 17:15 /tmp
149
5.3 Definies
classe de usurio O conceito convencional de permisso POSIX utiliza trs classes de usurios para atribuir permisses no sistema de arquivos: o proprietrio, o grupo proprietrio e os outros usurios. Trs bits de permisses podem ser definidos para cada classe de usurio, concedendo permisso de leitura (r), gravao (w) e execuo (x). ACL de acesso As permisses de acesso de usurio e grupo para todos os tipos de objetos Sistema de arquivos (arquivos e diretrios) so determinadas atravs das ACLs de acesso. ACL padro As ACLs padro podem ser aplicadas somente a diretrios. Elas determinam as permisses que um objeto Sistema de arquivos herda de seu diretrio pai quando criado. entrada de ACL Cada ACL consiste em um conjunto de entradas de ACL. Uma entrada de ACL contm um tipo, um qualificador para o usurio ou grupo ao qual a entrada se refere e um conjunto de permisses. Para alguns tipos de entrada, o qualificador para o grupo ou usurios indefinido.
150
Referncia
A entrada mscara limita ainda mais as permisses concedidas pelas entradas usurio nomeado, grupo nomeado e grupo proprietrio, pois define quais das permisses nessas entradas so efetivas e quais esto mascaradas. Se existirem permisses em uma das entradas mencionadas, assim como na mscara, elas sero efetivas. As permisses contidas somente na mscara ou somente na entrada real no so efetivas, significando que as permisses no so concedidas. Todas as permisses definidas nas entradas proprietrio e grupo proprietrio so sempre efetivas. O exemplo na Tabela 5.2, Mascarando permisses de acesso (p 151) demonstra este mecanismo. Existem duas classes bsicas de ACLs. Uma ACL mnima contm somente as entradas dos tipos proprietrio, grupo proprietrio e outros, que correspondem aos bits de permisso convencionais para arquivos e diretrios. Uma ACL estendida vai alm disso. Ela deve conter uma entrada mscara e pode conter vrias entradas dos tipos usurio nomeado e grupo nomeado. Tabela 5.1 Tipo proprietrio usurio nomeado grupo proprietrio grupo nomeado mscara outros Tabela 5.2 Tipos de entrada de ACL Formato do texto user::rwx user:name:rwx group::rwx group:name:rwx mask::rwx other::rwx Mascarando permisses de acesso Formato do texto user:geeko:r-x mask::rwPermisses r-x rw-
151
Tipo de entrada
Permisses r--
No caso de uma ACL mnima (sem mscara), as permisses classe de grupo so mapeadas para a entrada de ACL grupo proprietrio. Voc pode ver isso na Figura 5.1, ACL mnima: entradas de ACL comparadas a bits de permisso (p 152). No caso de uma ACL estendida (com mscara), as permisses classe de grupo so mapeadas para a entrada mscara. Voc pode ver isso na Figura 5.2, ACL estendida: entradas de ACL comparadas a bits de permisso (p 153).
152
Referncia
Este mtodo de mapeamento assegura uma interao uniforme de aplicativos, tenham eles suporte a ACL ou no. As permisses de acesso que foram atribudas atravs de bits de permisso representam o limite superior para todos os outros ajustes finos feitos com uma ACL. As mudanas feitas nos bits de permisso so refletidas pela ACL e vice-versa.
Com o comando getfacl meudir, verifique o estado inicial da ACL. Ele fornece informaes como:
# file: meudir # owner: tux # group: project3
153
As primeiras trs linhas de sada mostram o nome, o proprietrio e o grupo proprietrio do diretrio. As prximas trs linhas contm as trs entradas de ACL proprietrio, grupo proprietrio e outros. Na verdade, no caso desta ACL mnima, o comando getfacl no produz nenhuma informao que voc no pudesse obter com o comando ls. Modifique a ACL para atribuir permisses de leitura, gravao e execuo para um usurio geeko adicional e um grupo mascotes com:
setfacl -m user:geeko:rwx,group:mascotes:rwx meudir
A opo -m solicita que setfacl modifique a ACL existente. O argumento a seguir indica as entradas de ACL a serem modificadas (vrias entradas so separadas por vrgulas). A parte final especifica o nome do diretrio no qual essas modificaes devem ser aplicadas. Use o comando getfacl para dar uma olhada na ACL resultante.
# file: meudir # owner: tux # group: project3 user::rwx user:geeko:rwx group::r-x group:mascotes:rwx mask::rwx other::---
Alm das entradas iniciadas para o usurio geeko e o grupo mascotes, uma entrada mscara foi gerada. A entrada mscara definida automaticamente para que todas as permisses sejam efetivas. O comando setfacl adapta automaticamente as entradas mscara existentes s configuraes modificadas, a no ser que voc desative este recurso com -n. mscara define as permisses mximas de acesso efetivas para todas as entradas na classe de grupo. Isso inclui usurio nomeado, grupo nomeado e grupo proprietrio. Os bits de permisso de classe de grupo exibidos pelo comando ls -dl meudir agora correspondem entrada mscara.
drwxrwx---+ ... tux project3 ... meudir
A primeira coluna da sada agora contm um sinal de + extra para indicar que existe uma ACL estendida para esse item. De acordo com a sada do comando ls, as permisses para a entrada mscara incluem acesso de gravao. Tradicionalmente, esses bits de permisso significariam que o grupo proprietrio (aqui, project3) tambm teria acesso de gravao no diretrio
154
Referncia
meudir. Porm, as permisses de acesso efetivas para o grupo proprietrio correspondem parte sobreposta das permisses definidas para o grupo proprietrio e para a mscara, que r-x em nosso exemplo (consulte a Tabela 5.2, Mascarando permisses de acesso (p 151)). Em relao s permisses efetivas do grupo proprietrio do exemplo, nada mudou mesmo aps a adio das entradas de ACL. Edite a entrada mscara com setfacl ou chmod. Por exemplo, use chmod g-w meudir. O comando ls -dl meudir mostrar:
drwxr-x---+ ... tux project3 ... meudir
Aps executar o comando chmod para remover a permisso de gravao dos bits classe de grupo, a sada do comando ls ser suficiente para indicar que os bits mscara devem ter mudado de acordo: a permisso de gravao novamente limitada ao proprietrio de meudir. A sada de getfacl confirma isso. Esta sada inclui um comentrio para todas as entradas nas quais os bits de permisso efetiva no correspondem s permisses originais, porque eles so filtrados de acordo com a entrada mscara. As permisses originais podem ser restauradas a qualquer momento com chmod g+w meudir.
155
Um subdiretrio herda a ACL padro do diretrio pai como sua ACL padro e como uma ACL de acesso. Um arquivo herda a ACL padro como a sua ACL de acesso. Todas as chamadas de sistema que criam objetos Sistema de arquivos utilizam um parmetro mode que define as permisses de acesso para o objeto Sistema de arquivos recm-criado. Se o diretrio pai no tiver uma ACL padro, os bits de permisso, como definidos por umask, sero subtrados das permisses quando passados pelo parmetro mode, e o resultado ser atribudo ao novo objeto. Se existir uma ACL padro para o diretrio pai, os bits de permisso atribudos ao novo objeto correspondero parte sobreposta das permisses do parmetro mode e daqueles definidos na ACL padro. O comando umask desconsiderado neste caso.
A opo -d do comando setfacl solicita que setfacl realize as seguintes modificaes (opo -m) na ACL padro. Preste bem ateno no resultado deste comando:
getfacl meudir # file: meudir # owner: tux # group: project3 user::rwx user:geeko:rwx group::r-x group:mascotes:rwx mask::rwx other::--default:user::rwx default:group::r-x default:group:mascotes:r-x default:mask::r-x default:other::---
156
Referncia
getfacl retorna a ACL de acesso e a ACL padro. A ACL padro formada por todas as linhas que comeam com default. Embora voc tenha simplesmente executado o comando setfacl com uma entrada para o grupo mascotes na ACL padro, setfacl copiou automaticamente todas as outras entradas da ACL de acesso para criar uma ACL padro vlida. As ACLs padro no tm efeito imediato nas permisses de acesso. Elas apenas surgem quando os objetos Sistema de arquivos so criados. Esses novos objetos herdam permisses somente da ACL padro de seu diretrio pai. 2. No prximo exemplo, use mkdir para criar um subdiretrio em meudir, que herda a ACL padro.
mkdir meudir/meusubdir getfacl meudir/meusubdir # file: meudir/meusubdir # owner: tux # group: project3 user::rwx group::r-x group:mascotes:r-x mask::r-x other::--default:user::rwx default:group::r-x default:group:mascotes:r-x default:mask::r-x default:other::---
Como esperado, o subdiretrio meusubdir recm-criado tem permisses da ACL padro do diretrio pai. A ACL de acesso de meusubdir um reflexo exato da ACL padro de meudir. A ACL padro que este diretrio transmitir para os seus objetos subordinados tambm a mesma. 3. Use o comando touch para criar um arquivo no diretrio meudir, por exemplo, touch meudir/meuarq. O comando ls -l meudir/meuarq mostrar:
-rw-r-----+ ... tux project3 ... meudir/meuarq
157
mask::r-other::---
touch usa um mode com o valor 0666 quando cria novos arquivos, o que significa que os arquivos so criados com permisses de leitura e gravao para todas as classes de usurios, desde que no existam outras restries em umask ou na ACL padro (consulte Efeitos em uma ACL padro (p 155)). Na verdade, isto significa que todas as permisses de acesso no contidas no valor mode so removidas de suas respectivas entradas de ACL. Embora nenhuma permisso tenha sido removida da entrada de ACL da classe de grupo, a entrada mscara foi modificada para mascarar permisses no definidas em mode. Este mtodo assegura uma interao uniforme de aplicativos, como compiladores, com as ACLs. Voc pode criar arquivos com permisses de acesso restritas e marc-los como executveis. O mecanismo mask garante que os usurios e grupos corretos podero execut-los como desejado.
158
Referncia
e as ACLs podem ser combinados de maneira inteligente. Os comandos de arquivo bsicos (cp, mv, ls etc.) suportam ACLs, assim como o Samba e o Konqueror. Infelizmente, muitos editores e gerenciadores de arquivos ainda no possuem suporte a ACL. Quando se copia arquivos com o Emacs, por exemplo, as ACLs desses arquivos so perdidas. Quando se modifica arquivos com um editor, as ACLs dos arquivos s vezes so mantidas, outras vezes no, dependendo do modo de backup do editor usado. Se o editor gravar as mudanas no arquivo original, a ACL de acesso ser mantida. Se o editor gravar o contedo atualizado em um novo arquivo renomeado posteriormente com o antigo nome de arquivo, as ACLs podero ser perdidas, a no ser que o editor suporte as ACLs. No existe atualmente nenhum aplicativo de backup que mantenha ACLs, exceto o star archiver.
159
Procuramos oferecer descries curtas para podermos mencionar o maior nmero possvel de utilitrios. Para obter mais informaes sobre os comandos, consulte as pginas de manual. A maior parte dos comandos tambm compreende o parmetro --help, que gera uma breve lista de parmetros possveis.
161
tester@linux:~> lsof -p $$ COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME bash 5552 tester cwd DIR 3,3 1512 117619 /home/tester bash 5552 tester rtd DIR 3,3 584 2 / bash 5552 tester txt REG 3,3 498816 13047 /bin/bash bash 5552 tester mem REG 0,0 0 [heap] (stat: No such \ file or directory) bash 5552 tester mem REG 3,3 217016 115687 /var/run/nscd/passwd bash 5552 tester mem REG 3,3 208464 11867 \ /usr/lib/locale/en_GB.utf8/LC_CTYPE bash 5552 tester mem REG 3,3 882134 11868 \ /usr/lib/locale/en_GB.utf8/LC_COLLATE bash 5552 tester mem REG 3,3 1386997 8837 /lib/libc-2.3.6.so bash 5552 tester mem REG 3,3 13836 8843 /lib/libdl-2.3.6.so bash 5552 tester mem REG 3,3 290856 12204 /lib/libncurses.so.5.5 bash 5552 tester mem REG 3,3 26936 13004 /lib/libhistory.so.5.1 bash 5552 tester mem REG 3,3 190200 13006 /lib/libreadline.so.5.1 bash 5552 tester mem REG 3,3 54 11842 \ /usr/lib/locale/en_GB.utf8/LC_NUMERIC bash 5552 tester mem REG 3,3 2375 11663 \ /usr/lib/locale/en_GB.utf8/LC_TIME bash 5552 tester mem REG 3,3 290 11736 \ /usr/lib/locale/en_GB.utf8/LC_MONETARY bash 5552 tester mem REG 3,3 52 11831 \ /usr/lib/locale/en_GB.utf8/LC_MESSAGES/SYS_LC_MESSAGES bash 5552 tester mem REG 3,3 34 11862 \ /usr/lib/locale/en_GB.utf8/LC_PAPER bash 5552 tester mem REG 3,3 62 11839 \ /usr/lib/locale/en_GB.utf8/LC_NAME bash 5552 tester mem REG 3,3 127 11664 \ /usr/lib/locale/en_GB.utf8/LC_ADDRESS bash 5552 tester mem REG 3,3 56 11735 \ /usr/lib/locale/en_GB.utf8/LC_TELEPHONE bash 5552 tester mem REG 3,3 23 11866 \ /usr/lib/locale/en_GB.utf8/LC_MEASUREMENT bash 5552 tester mem REG 3,3 21544 9109 \ /usr/lib/gconv/gconv-modules.cache bash 5552 tester mem REG 3,3 366 9720 \ /usr/lib/locale/en_GB.utf8/LC_IDENTIFICATION bash 5552 tester mem REG 3,3 97165 8828 /lib/ld-2.3.6.so bash 5552 tester 0u CHR 136,5 7 /dev/pts/5 bash 5552 tester 1u CHR 136,5 7 /dev/pts/5 bash 5552 tester 2u CHR 136,5 7 /dev/pts/5 bash 5552 tester 255u CHR 136,5 7 /dev/pts/5
Foi usada a varivel de shell especial $$, cujo valor o ID do processo do shell. O comando lsof lista todos os arquivos atualmente abertos quando usado com quaisquer outros parmetros. Como h milhares de arquivos abertos, raramente til list-los. No entanto, a lista de todos os arquivos pode ser combinada com funes de
162
Referncia
pesquisa para gerar listas teis. Por exemplo, listar todos os dispositivos de caracteres usados:
tester@linux:~> lsof | grep CHR bash 3838 tester 0u bash 3838 tester 1u bash 3838 tester 2u bash 3838 tester 255u bash 5552 tester 0u bash 5552 tester 1u bash 5552 tester 2u bash 5552 tester 255u X 5646 root mem lsof 5673 tester 0u lsof 5673 tester 2u grep 5674 tester 1u grep 5674 tester 2u CHR CHR CHR CHR CHR CHR CHR CHR CHR CHR CHR CHR CHR 136,0 136,0 136,0 136,0 136,5 136,5 136,5 136,5 1,1 136,5 136,5 136,5 136,5 2 2 2 2 7 7 7 7 1006 7 7 7 7 /dev/pts/0 /dev/pts/0 /dev/pts/0 /dev/pts/0 /dev/pts/5 /dev/pts/5 /dev/pts/5 /dev/pts/5 /dev/mem /dev/pts/5 /dev/pts/5 /dev/pts/5 /dev/pts/5
/mnt/notes.txt
Ao fim do processo less, que estava sendo executado em outro terminal, o sistema de arquivos poder ser desmontado com xito.
regular file
163
(0644/-rw-r--r--) Uid: ( 0/ root) 2006-01-06 16:45:43.000000000 +0100 2005-11-21 14:54:35.000000000 +0100 2005-12-19 09:51:04.000000000 +0100
Gid: (
0/
root)
O parmetro --filesystem produz detalhes das propriedades do sistema de arquivos no qual o arquivo especfico est localizado:
tester@linux:~> stat /etc/profile --filesystem File: "/etc/profile" ID: 0 Namelen: 255 Type: reiserfs Block size: 4096 Fundamental block size: 4096 Blocks: Total: 2622526 Free: 1809771 Available: 1809771 Inodes: Total: 0 Free: 0
164
Referncia
linux:/ # scsiinfo -i /dev/sda Inquiry command --------------Relative Address 0 Wide bus 32 0 Wide bus 16 1 Synchronous neg. 1 Linked Commands 1 Command Queueing 1 SftRe 0 Device Type 0 Peripheral Qualifier 0 Removable? 0 Device Type Modifier 0 ISO Version 0 ECMA Version 0 ANSI Version 3 AENC 0 TrmIOP 0 Response Data Format 2 Vendor: FUJITSU Product: MAS3367NP Revision level: 0104A0K7P43002BE
A opo -d exibe uma lista de defeitos com duas tabelas de blocos defeituosos de um disco rgido: primeiro, o oferecido pelo fornecedor (tabela do fabricante) e, depois, a lista de blocos deficientes que apareceu na operao (tabela de crescimento). Se o nmero de entradas da tabela de crescimento aumentar, convm substituir o disco rgido.
165
4 5 11 12 472 473 475 474 681 839 923 1343 1587 1746 1752 2151 2165 2166 2171 2235 2289 2403 2709 2714
root root root root root root root root root root root root root root root root messageb root root root root root root root
10 10 10 20 20 15 11 15 10 10 13 10 20 15 15 16 16 15 16 15 16 23 19 16
-5 -5 -5 -5 0 0 -5 0 -5 -5 -4 -5 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 S 0 0 0 S 0 0 0 S 0 0 0 S 0 0 0 S 0 0 0 S 0 0 0 S 0 0 0 S 0 0 0 S 0 0 0 S 1712 552 344 S 0 0 0 S 0 0 0 S 0 0 0 S 0 0 0 S 1464 496 416 S 3340 1048 792 S 1840 752 556 S 1600 516 320 S 1736 800 652 S 4192 2852 1444 S 1756 600 524 S 2668 1076 944 S 1756 648 564 S
0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.1 0.0 0.0 0.0 0.0 0.1 0.2 0.1 0.1 0.2 0.6 0.1 0.2 0.1
0:00.01 0:00.00 0:00.05 0:00.00 0:00.00 0:00.06 0:00.00 0:00.07 0:00.01 0:00.02 0:00.67 0:00.00 0:00.00 0:00.00 0:00.00 0:00.00 0:00.64 0:00.01 0:00.00 0:00.10 0:02.05 0:00.00 0:00.00 0:00.56
khelper kthread kblockd/0 kacpid pdflush pdflush aio/0 kswapd0 kseriod reiserfs/0 udevd khubd shpchpd_event w1_control w1_bus_master1 acpid dbus-daemon syslog-ng klogd resmgrd hald hald-addon-acpi NetworkManagerD hald-addon-stor
Se voc pressionar F enquanto o comando top estiver em execuo, aparecer um menu no qual ser possvel mudar o formato da sada. O parmetro -U UID monitora apenas os processos associados a um usurio especfico. Substitua UID pelo ID do usurio. O comando top -U `id -u` retorna o UID do usurio na base do nome do usurio e exibe seus processos.
166
Referncia
[...] tester 4047 0.0 6.0 158548 31400 ? Ssl 13:02 --debug /usr/lib/beagle/Best.exe --autostarted tester 4057 0.0 0.7 9036 3684 ? Sl 13:02 /opt/gnome/sbin/gnome-vfs-daemon --oaf-activate-iid=OAFIID:GNOME_VFS_Daemon_Factory --oa tester 4067 0.0 0.1 2204 636 ? S 13:02 /opt/gnome/lib/nautilus/mapping-daemon tester 4072 0.0 1.0 15996 5160 ? Ss 13:02 gnome-screensaver tester 4114 0.0 3.7 130988 19172 ? SLl 13:06 tester 4818 0.0 0.3 4192 1812 pts/0 Ss 15:59 tester 4959 0.0 0.1 2324 816 pts/0 R+ 16:17
Para verificar quantos processos sshd esto sendo executados, use a opo -p junto com o comando pidof, que lista os IDs de processo dos processos determinados.
tester@linux:~> ps -p PID TTY STAT 3524 ? Ss 4813 ? Ss 4817 ? R `pidof sshd` TIME COMMAND 0:00 /usr/sbin/sshd -o PidFile=/var/run/sshd.init.pid 0:00 sshd: tester [priv] 0:00 sshd: tester@pts/0
A lista de processos pode ser formatada de acordo com suas necessidades. A opo -L retorna uma lista com todas as palavras-chave. Digite o comando a seguir para gerar uma lista de todos os processos classificados conforme o uso de memria:
tester@linux:~> ps ax --format pid,rss,cmd --sort rss PID RSS CMD 2 0 [ksoftirqd/0] 3 0 [events/0] 4 0 [khelper] 5 0 [kthread] 11 0 [kblockd/0] 12 0 [kacpid] 472 0 [pdflush] 473 0 [pdflush] [...] 4028 17556 nautilus --no-default-window --sm-client-id default2 4118 17800 ksnapshot 4114 19172 sound-juicer 4023 25144 gnome-panel --sm-client-id default1 4047 31400 mono-best --debug /usr/lib/beagle/Best.exe --autostarted 3973 31520 mono-beagled --debug /usr/lib/beagle/BeagleDaemon.exe \ --bg --autostarted
167
O parmetro -p adiciona o ID do processo a um nome determinado. Para que as linhas de comando tambm sejam exibidas, use o parmetro -a:
168
Referncia
Se algum usurio do sistema tiver efetuado login remotamente, o parmetro -f mostrar os computadores dos quais ele estabeleceu a conexo.
As opes -b,-k,-m,-g mostram a sada em bytes, KB, MB ou GB, respectivamente. O parmetro -d delay assegura que a exibio seja atualizada a cada atraso segundos. Por exemplo, free -d 1.5 produz uma atualizao a cada 1,5 segundo.
169
Obtenha informaes sobre a utilizao total dos sistemas de arquivos com o comando df. O parmetro -h (ou --human-readable) transforma a sada em um formato inteligvel para o usurio comum.
tester@linux:~> df -h Filesystem Size /dev/hda3 11G udev 252M /dev/hda1 16M /dev/hda4 27G Used Avail Use% Mounted on 3.2G 6.9G 32% / 104K 252M 1% /dev 6.6M 7.8M 46% /boot 34M 27G 1% /local
Exiba o tamanho total de todos os arquivos de um determinado diretrio e seus subdiretrios com o comando du. O parmetro -s suprime a sada de informaes detalhadas. -h novamente transforma os dados em forma legvel:
tester@linux:~> du -sh /local 1.7M /local
170
Referncia
cpu family model model name stepping cpu MHz cache size fdiv_bug [...]
: : : : : : :
Alguns arquivos importantes e seu contedo: /proc/devices dispositivos disponveis /proc/modules mdulos kernel carregados /proc/cmdline linha de comando do kernel /proc/meminfo detalhes sobre a utilizao da memria /proc/config.gz arquivo de configurao gzip compactado do kernel executado atualmente
171
Mais informaes esto disponveis no arquivo de texto /usr/src/linux/ Documentation/filesystems/proc.txt. Voc pode encontrar informaes sobre os processos em execuo nos diretrios /proc/NNN, onde NNN o ID do processo (PID) relevante. Cada processo pode encontrar suas prprias caractersticas em /proc/self/:
tester@linux:~> ls -l /proc/self lrwxrwxrwx 1 root root 64 2006-01-09 13:03 /proc/self -> 5356 tester@linux:~> ls -l /proc/self/ total 0 dr-xr-xr-x 2 tester users 0 2006-01-09 17:04 attr -r-------- 1 tester users 0 2006-01-09 17:04 auxv -r--r--r-- 1 tester users 0 2006-01-09 17:04 cmdline lrwxrwxrwx 1 tester users 0 2006-01-09 17:04 cwd -> /home/tester -r-------- 1 tester users 0 2006-01-09 17:04 environ lrwxrwxrwx 1 tester users 0 2006-01-09 17:04 exe -> /bin/ls dr-x------ 2 tester users 0 2006-01-09 17:04 fd -rw-r--r-- 1 tester users 0 2006-01-09 17:04 loginuid -r--r--r-- 1 tester users 0 2006-01-09 17:04 maps -rw------- 1 tester users 0 2006-01-09 17:04 mem -r--r--r-- 1 tester users 0 2006-01-09 17:04 mounts -rw-r--r-- 1 tester users 0 2006-01-09 17:04 oom_adj -r--r--r-- 1 tester users 0 2006-01-09 17:04 oom_score lrwxrwxrwx 1 tester users 0 2006-01-09 17:04 root -> / -rw------- 1 tester users 0 2006-01-09 17:04 seccomp -r--r--r-- 1 tester users 0 2006-01-09 17:04 smaps -r--r--r-- 1 tester users 0 2006-01-09 17:04 stat -r--r--r-- 1 tester users 0 2006-01-09 17:04 statm -r--r--r-- 1 tester users 0 2006-01-09 17:04 status dr-xr-xr-x 3 tester users 0 2006-01-09 17:04 task -r--r--r-- 1 tester users 0 2006-01-09 17:04 wchan
172
Referncia
b7f5b000-b7f61000 r--s 00000000 03:03 9109 /usr/lib/gconv/gconv-modules.cache b7f61000-b7f62000 r--p 00000000 03:03 9720 /usr/lib/locale/en_GB.utf8/LC_IDENTIFICATION b7f62000-b7f76000 r-xp 00000000 03:03 8828 b7f76000-b7f78000 rw-p 00013000 03:03 8828 bfd61000-bfd76000 rw-p bfd61000 00:00 0 ffffe000-fffff000 ---p 00000000 00:00 0
6.13.1 procinfo
Informaes importantes do sistema de arquivos /proc so resumidas pelo comando procinfo:
tester@linux:~> procinfo Linux 2.6.15-rc5-git3-2-default (geeko@buildhost) (gcc 4.1.0 20051129) #1 Wed Dec 14 13:10:38 UTC 2005 1CPU [linux.suse.de] Memory: Mem: Swap: Total 515584 658656 Used 509472 0 Free 6112 658656 Shared 0 Buffers 73024
Bootup: Mon Jan user : 13476w nice : system: IOwait: hw irq: sw irq: idle : uptime: irq irq irq irq irq irq irq irq 0: 1: 2: 3: 4: 5: 6: 7:
Load average: 0.10 0.04 0.05 1/86 5406 page in : 442638 134950 70577 11696 1423622 0 0 3813145 2 rtc 1 acpi, uhci_hcd:usb1, 0 uhci_hcd:usb3 75905 uhci_hcd:usb2, eth0 101150 i8042 33733 ide0 157045 ide1 disk 1: 20125r
00:02:070,98
00:02:200,91 0,9% page out: 0:00:42.93 0.3% page act: 0:01:25.40 0.6% page dea: 0:00:08.94 0.1% page flt: 00:00:010,29 0.0% swap in : 04:06:300,54 97,3% swap out: 4:13:20.72 context : 3799268 timer 130 i8042 0 cascade [4] 8 8 564535 Intel 82801DB-ICH4 9 1 parport0 [3] irq 8: irq 9:
irq 10: irq 11: irq 12: irq 14: irq 15:
Para ver todas as informaes, use o parmetro -a. O parmetro -nN produz atualizaes das informaes a cada N segundos. Nesse caso, termine o programa pressionando Q .
173
Por padro, so exibidos valores cumulativos. O parmetro -d produz valores diferenciais. procinfo -dn5 exibe os valores modificados nos ltimos cinco segundos:
174
Referncia
Informaes sobre a resoluo de nomes do dispositivo podem ser obtidas do arquivo /usr/share/pci.ids. Os IDs do PCI no listados nesse arquivo so marcados como Unknown device (arquivo desconhecido). O parmetro -w produz todas as informaes que poderiam ser consultadas pelo programa. Para ver valores puramente numricos, use o parmetro -n.
Por exemplo, para rastrear todas as tentativas de abertura de um arquivo especfico, use:
tester@linux:~> strace -e open ls .bashrc open("/etc/ld.so.cache", O_RDONLY) = open("/lib/librt.so.1", O_RDONLY) = open("/lib/libacl.so.1", O_RDONLY) = open("/lib/libc.so.6", O_RDONLY) = open("/lib/libpthread.so.0", O_RDONLY) = 3 3 3 3 3
175
= 3
Para rastrear todos os processos-filho, use o parmetro -f. O comportamento e o formato da sada de strace podem ser amplamente controlados. Para obter informaes, consulte man strace.
176
Referncia
------ Shared Memory Segments -------key shmid owner perms 0x00000000 58261504 tester 600 0x00000000 58294273 tester 600 0x00000000 83886083 tester 666 0x00000000 83951622 tester 666 0x00000000 83984391 tester 666 0x00000000 84738056 root 644 ------ Semaphore Arrays -------key semid owner perms 0x4d038abf 0 tester 600 ------ Message Queues -------key msqid owner
nattch 2 2 2 2 2 2
dest
nsems 8
perms
used-bytes
messages
178
Referncia
Parte 3. Sistema
181
Para que os aplicativos sejam executados corretamente, cada um deles requer uma variedade de bibliotecas. Infelizmente, os nomes das verses de 32 bits e 64 bits das bibliotecas so idnticos. Eles devem ser diferenciados uns dos outros de outra forma. Para obter compatibilidade com a verso de 32 bits, as bibliotecas so armazenadas no mesmo local no sistema e no ambiente de 32 bits. A verso de 32 bits de libc.so.6 est localizada em /lib/libc.so.6 nos ambientes de 32 bits e 64 bits. Todos os arquivos de objetos e todas as bibliotecas de 64 bits esto localizados em diretrios denominados lib64. Os arquivos de objetos de 64 bits que normalmente so encontrados em /lib, /usr/lib e usr/X11R6/lib agora esto em /lib64, /usr/lib64 e /usr/X11R6/lib64. Isso significa que h espao para bibliotecas de 32 bits em /lib /usr/lib e /usr/X11R6/lib, de forma que os nomes de arquivo das duas verses possam permanecer inalterados. Nenhum subdiretrio dos diretrios de objetos cujo contedo de dados no dependa do tamanho da palavra ser movido. Por exemplo, as fontes X11 ainda se encontram no local habitual, em /usr/X11R6/lib/X11/fonts. Este esquema est em conformidade com a LSB (Linux Standards Base - Base de padres Linux) e com o FHS (File System Hierarchy Standard - Padro de hierarquia de sistema de arquivos).
182
Referncia
2.
3.
4.
5.
6.
183
--x-libraries=/usr/X11R6/lib/
Nem todas essas variveis so necessrias para todos os programas. Adapte-as para o respectivo programa.
CC="gcc -m64" \ LDFLAGS="-L/usr/lib64;" \ .configure \ --prefix=/usr \ --libdir=/usr/lib64 make make install
184
Referncia
2.
185
informaes sobre o GRUB, o carregador de boot do Linux, podem ser encontradas no Captulo 9, O Carregador de Boot (p 201). 3. Kernel e initramfs Para passar o controle do sistema, o carregador de boot carrega na memria o kernel e um sistema de arquivos inicial baseado em RAM (initramfs). O contedo do ramfs inicial pode ser usado diretamente pelo kernel. O init ramfs contm um pequeno executvel chamado init que realiza a montagem do sistema de arquivos raiz. Em verses anteriores do SUSE Linux, essas tarefas eram realizadas pelo initrd e linuxrc, respectivamente. Para obter mais informaes sobre o initramfs, consulte a Seo 8.1.1, initramfs (p 186). init no initramfs Este programa executa todas as aes necessrias para montar o sistema de arquivos raiz adequado, por exemplo, fornecer a funcionalidade de kernel para o sistema de arquivos e os drivers de dispositivo necessrios aos controladores de armazenamento em massa com udev. Uma vez encontrado o sistema de arquivos raiz, ele verificado quanto a erros e montado. Se esse procedimento for bem-sucedido, o initramfs ser limpo e o programa init no sistema de arquivos raiz ser executado. Para obter mais informaes sobre o init, consulte a Seo 8.1.2, init no initramfs (p 187). H mais informaes a respeito do udev no Captulo 12, Gerenciamento de dispositivo de kernel dinmico com udev (p 261). init O init realiza a inicializao do sistema atravs de diversos nveis, oferecendo funcionalidades diferentes. Ele descrito na Seo 8.2, O processo init (p 189).
4.
5.
8.1.1 initramfs
initramfs um pequeno arquivo cpio que pode ser carregado pelo kernel em um disco RAM. Ele fornece um ambiente Linux mnimo que permite a execuo de programas antes da montagem do sistema de arquivos raiz. Esse ambiente carregado na memria pelas rotinas de BIOS e no tm requisitos de hardware especficos, alm de memria suficiente. O initramfs deve sempre fornecer um executvel chamado init que deve executar o programa init no sistema de arquivos raiz para a continuao do processo de boot. Antes da montagem do sistema de arquivos raiz e a inicializao do sistema operacional, o kernel precisa dos drivers correspondentes para acessar o dispositivo em que o sistema de arquivos raiz est localizado. Esses drivers podem incluir drivers especiais para
186
Referncia
determinados tipos de unidades de disco rgido ou at drivers de rede para acesso a um sistema de arquivos de rede. Os mdulos necessrios para o sistema de arquivos raiz podem ser carregados pelo init no initramfs. Aps os mdulos serem carregados, o udev fornece ao initramfs os dispositivos necessrios. O initramfs est disponvel durante todo o processo de boot. Assim, possvel manipular todos os eventos de dispositivo gerados durante o boot. Se voc precisar mudar o hardware (discos rgidos) em um sistema instalado e esse hardware necessitar da existncia de diversos drivers no kernel durante o boot, ser necessrio atualizar o initramfs. Para isso, basta chamar o mkinitrd, o que tambm era feito no initrd, predecessor do initramfs. A chamada de mkinitrd sem argumentos cria um initramfs. A chamada de mkinitrd -R cria um initrd. No SUSE Linux, os mdulos a serem carregados so especificados pela varivel INITRD_MODULES em /etc/sysconfig/kernel. Aps a instalao, essa varivel definida automaticamente com o valor correto. Os mdulos so carregados na mesma ordem em que so exibidos em INITRD_MODULES. Isso ser especialmente importante se vrios drivers SCSI forem usados, pois, caso contrrio, os nomes dos discos rgidos seriam mudados. Em suma, seria suficiente apenas carregar os drivers necessrios para acessar o sistema de arquivos raiz. Contudo, todos os drivers SCSI necessrios instalao so carregados por meio do initramfs ou initrd porque o carregamento posterior poderia ser problemtico. IMPORTANTE: Atualizando o initramfs ou o initrd O carregador de boot carrega o initramfs ou initrd da mesma maneira que o kernel. No necessrio reinstalar o GRUB aps a atualizao do initramfs ou initrd, pois o GRUB procura o arquivo correto no diretrio durante a inicializao.
de arquivos raiz final, o kernel precisa carregar os drivers adequados do sistema de arquivos. Fornecendo arquivos de bloco especiais Para cada mdulo carregado, o kernel gera eventos de dispositivo. O udev gerencia esses eventos e gera os arquivos especiais de dispositivo necessrios em um sistema de arquivos RAM em /dev. Sem esses arquivos especiais, o sistema de arquivos no estaria acessvel. Gerenciamento de configuraes RAID e LVM Se voc tiver configurado o sistema para armazenar o sistema de arquivos raiz na RAID ou LVM, o init configurar a LVM ou a RAID para permitir acesso posterior ao sistema de arquivos raiz. Informaes sobre a RAID podem ser encontradas na Seo 2.2, Configurao de RAID de software (p 63). Informaes sobre a LVM podem ser encontradas na Seo 2.1, Configurao da LVM (p 55). Gerenciamento de conexes de rede Se voc tiver configurado o sistema para usar um sistema de arquivos raiz montado em rede (via NFS), o init dever ter certeza de que os drivers de rede corretos foram carregados e de que estejam configurados para permitir acesso ao sistema de arquivos raiz. Quando o init chamado durante a primeira inicializao como parte do processo de instalao, suas tarefas so diferentes daquelas mencionadas anteriormente: Localizao da mdia de instalao Quando o processo de instalao iniciado, a mquina carrega um kernel de instalao e um initrd especial com o instalador do YaST proveniente da mdia de instalao. O instalador do YaST, que executado em um sistema de arquivos RAM, precisa ter informaes sobre a localizao da mdia de instalao para acess-la e instalar o sistema operacional. Inicializao do reconhecimento de hardware e carregamento dos mdulos kernel adequados Como mencionado na Seo 8.1.1, initramfs (p 186), o processo de boot inicia com um conjunto mnimo de drivers que pode ser usado com a maioria das configuraes de hardware. O init inicia um processo de explorao de hardware que determina o conjunto de drivers adequado para sua configurao de hardware. Esses valores so posteriormente gravados em INITRD_MODULES no /etc/ sysconfig/kernel a fim de habilitar qualquer processo de boot subsequente
188
Referncia
para usar um initrd personalizado ou em um arquivo /etc/sysconfig/ hardware/hwconfig-* se o dispositivo no for necessrio durante o processo de boot. Durante o processo de instalao, o init carrega esse conjunto de mdulos. Carregamento do sistema de instalao ou do sistema de recuperao Depois que o hardware for reconhecido adequadamente, os drivers adequados forem carregados e o udev tiver criado os arquivos especiais de dispositivo, o init iniciar o sistema de instalao, que contm o instalador do YaST ou o sistema de recuperao. Inicializao do YaST Por fim, o init inicia o YaST que, por sua vez, inicia a instalao do pacote e a configurao do sistema.
8.2.1 Runlevels
No Linux, os runlevels definem como o sistema iniciado e quais servios esto disponveis no sistema em execuo. Aps a inicializao, o sistema iniciado conforme Inicializando e configurando um sistema Linux 189
definido em /etc/inittab na linha initdefault. Normalmente, 3 ou 5. Consulte a Tabela 8.1, Runlevels disponveis (p 190). Como alternativa, possvel especificar o runlevel durante a inicializao (no prompt, por exemplo). Os parmetros que no forem avaliados diretamente pelo prprio kernel sero passados para o init. Tabela 8.1 Runlevel 0 S Runlevels disponveis Descrio Desligamento do sistema Modo de usurio nico; do prompt de inicializao, somente com mapeamento de teclado americano Modo de usurio nico Modo multiusurio local sem rede remota (NFS, etc.) Modo multiusurio completo com rede No usado Modo multiusurio completo com rede e gerenciador de vdeo X KDM, GDM ou XDM Reinicializao do sistema
1 2 3 4 5
IMPORTANTE: Evite o Nvel de execuo 2 com uma partio montada via NFS Voc no dever usar o nvel de execuo 2 se seu sistema montar uma partio como /usr atravs do NFS. O sistema pode comportar-se de forma inesperada se as bibliotecas ou arquivos de programa estiverem ausentes pois o servio NFS no est disponvel no nvel de execuo 2 (modo multiusurio local sem rede remota). Para mudar os nveis de execuo durante a execuo do sistema, digite telinit e o nmero correspondente como um argumento. Somente o administrador do sistema
190
Referncia
pode fazer isso. A lista a seguir resume os comandos mais importantes na rea de runlevel. telinit 1 ou shutdown now O sistema muda para o modo de usurio nico. Esse modo usado para manuteno do sistema e tarefas de administrao. telinit 3 Todos os programas e servios essenciais (incluindo a rede) so iniciados, e os usurios comuns podem efetuar login e trabalhar no sistema sem um ambiente grfico. telinit 5 O ambiente grfico habilitado. Geralmente um gerenciador de exibio como XDM, GDM ou KDM iniciado. Se o login automtico estiver habilitado, o usurio local ser conectado ao gerenciador de janelas pr-selecionado (GNOME ou KDE ou qualquer outro gerenciador de janelas). telinit 0 ou shutdown -h now O sistema desligado. telinit 6 ou shutdown -r now O sistema desligado e, em seguida, reinicializado. Runlevel 5 o runlevel padro em todas as instalaes padro do SUSE Linux. solicitado o login dos usurios com uma interface grfica ou o usurio padro est conectado automaticamente. Se o runlevel padro for 3, o Sistema Windows X dever ser configurado adequadamente, conforme descrito no Captulo 14, O sistema X Window (p 281), antes que o runlevel seja alternado para 5. Se isso for feito, verifique se o sistema funciona da maneira desejada, digitando telinit 5. Se tudo ocorrer conforme o esperado, voc poder usar o YaST para definir o runlevel padro como 5. Geralmente, h duas situaes quando os runlevels so mudados. Primeiro, os scripts de parada do runlevel atual so iniciados, fechando alguns programas essenciais ao runlevel atual. Em seguida, os scripts do novo runlevel so iniciados. Na maioria dos casos, vrios programas so iniciados. Por exemplo, ocorre o seguinte quando o runlevel 3 muda para 5: 1. O administrador (root) solicita que o init mude para um nvel de execuo diferente digitando telinit 5.
191
2. 3.
O init consulta seu arquivo de configurao (/etc/inittab) e determina se ele deve iniciar /etc/init.d/rc com o novo runlevel como parmetro. O rc chama todos os scripts de parada do runlevel atual, mas somente aqueles para os quais no h script de incio no novo runlevel. Neste exemplo, todos os scripts residem em /etc/init.d/rc3.d (o runlevel antigo era 3) e iniciam com K. O nmero depois de K especifica a ordem de incio, pois algumas dependncias devem ser consideradas. Os scripts do novo runlevel so os ltimos a serem iniciados. Neste exemplo, eles esto em /etc/init.d/rc5.d e comeam com S. O mesmo procedimento relativo ordem em que eles foram iniciado se aplica nesse caso.
4.
Ao mudar para o mesmo runlevel que o atual, o init somente verifica as mudanas em /etc/inittab e inicia as etapas adequadas, por exemplo, para iniciar um getty em outra interface. A mesma funcionalidade pode ser obtida com o comando telinit q.
192
Referncia
opes so explicadas na Tabela 8.2, Opes possveis do script init (p 193). Os scripts executados diretamente pelo init no tm esses links. Eles so executados independentemente do runlevel, quando necessrio. Tabela 8.2 Opo start stop restart Opes possveis do script init Descrio Inicia o servio. Pra o servio. Se o servio estiver sendo executado, o pra e o reinicia. Se no estiver, o inicia. Recarrega a configurao sem parar e reiniciar o servio. Recarrega a configurao se o servio suport-la. Caso contrrio, age como se restart tivesse sido ativado. Mostra o status atual do servio.
reload force-reload
status
Os links em cada subdiretrio especfico de runlevel possibilitam a associao de scripts a diferentes runlevels. Durante a instalao ou desinstalao de pacotes, esses links so adicionados e removidos com a ajuda do programa insserv (ou usando /usr/lib/ lsb/install_initd, que um script que chama esse programa). Consulte a pgina de manual insserv(8) para obter detalhes. Veja a seguir uma pequena apresentao dos scripts de boot e de parada iniciados primeiro e por ltimo, respectivamente, bem como uma explicao do script de manuteno. boot Executado na inicializao do sistema usando diretamente o init. independente do runlevel escolhido e s executado uma vez. Nesse momento, os sistemas de arquivos proc e pts so montados e o blogd (boot logging daemon) ativado. Se o sistema for inicializado pela primeira vez aps uma atualizao ou instalao, a configurao inicial do sistema ser iniciada.
193
O daemon blogd um servio iniciado por boot e rc antes de qualquer outro. Ele ser parado depois que os acionamentos feitos pelos scripts acima (por meio da execuo de vrios subscripts, por exemplo) forem concludos. O blogd gravar a sada de tela no arquivo de registro /var/log/boot.msg, mas somente se e quando /var for montado para leitura-gravao. Caso contrrio, o blogd armazenar no buffer todos os dados de tela at que /var se torne disponvel. Obtenha mais informaes sobre o blogd na pgina de manual blogd(8). O script boot tambm responsvel pela inicializao de todos os scripts em /etc/init.d/boot.d com um nome iniciado com S. Nesse local, todos os sistemas de arquivos so verificados e os dispositivos de loop so configurados se necessrio. O horrio do sistema tambm definido. Se ocorrer um erro durante a verificao e o reparo automticos do sistema de arquivos, o administrador do sistema poder intervir aps digitar a senha raiz. Por fim, executado o script boot.local. boot.local Digite aqui comandos adicionais a serem executados na inicializao antes de mudar para um runlevel. Ele pode ser comparado ao AUTOEXEC.BAT em sistemas DOS. boot.setup Este script executado quando o modo de usurio nico mudado para outro runlevel e responsvel por vrias configuraes bsicas, como o layout do teclado e a inicializao dos consoles virtuais. halt Este script executado somente durante a mudana para o nvel de execuo 0 ou 6. Ele executado como halt ou reboot. O modo como halt chamado determina se o sistema deve ser encerrado ou reinicializado. rc Este script chama os scripts de parada adequados do runlevel atual e os scripts de incio do runlevel recm-selecionado. Voc pode criar seus prprios scripts e integr-los facilmente no esquema descrito acima. Para obter instrues sobre como formatar, nomear e organizar scripts personalizados, consulte as especificaes do LSB e as pginas de manual do init, init.d e insserv. Alm disso, consulte as pginas de manual do startproc e killproc.
194
Referncia
ATENO: Scripts init defeituosos podem desligar o seu sistema Scripts init defeituosos podem travar sua mquina. Edite esses scripts com muito cuidado e, se possvel, submeta-os a testes detalhados no ambiente multiusurio. Algumas informaes teis sobre os scripts init podem ser encontradas na Seo 8.2.1, Runlevels (p 189). Para criar um script init personalizado para determinado programa ou servio, use o arquivo /etc/init.d/skeleton como gabarito. Grave uma cpia desse arquivo com o novo nome e edite o programa relevante e nomes de arquivos, caminhos e outros detalhes necessrios. Voc tambm pode precisar aprimorar o script com suas prprias partes, de modo que os acionamentos corretos sejam feitos pelo procedimento init. O bloco INIT INFO na parte superior uma parte necessria do script e deve ser editada. Consulte o Exemplo 8.1, Um bloco INIT INFO mnimo (p 195). Exemplo 8.1 Um bloco INIT INFO mnimo
### BEGIN INIT INFO # Provides: # Required-Start: # Required-Stop: # Default-Start: # Default-Stop: # Description: ### END INIT INFO FOO $syslog $remote_fs $syslog $remote_fs 3 5 0 1 2 6 Start FOO to allow XY and provide YZ
Na primeira linha do bloco INFO, aps Provides:, especifique o nome do programa ou servio controlado pelo script init. Nas linhas Required-Start: e Required-Stop:, especifique todos os servios que precisam ser iniciados ou parados antes de o prprio servio ser iniciado ou parado. Essas informaes so usadas posteriormente para gerar a numerao dos nomes de script, como encontrada nos diretrios de runlevel. Aps Default-Start: e Default-Stop:, especifique os runlevels em que o servio deve ser iniciado ou parado automaticamente. Por fim, para Description:, fornea uma breve descrio do servio em questo. Para criar os links dos diretrios de runlevel (/etc/init.d/rc?.d/) para os scripts correspondentes em /etc/init.d/, digite o comando insserv new-script-name. O programa insserv avalia o cabealho INIT INFO para criar os links necessrios para os scripts de incio e parada nos diretrios de runlevel (/etc/ init.d/rc?.d/). O programa tambm se encarrega da ordem correta de incio e parada para cada runlevel, incluindo os nmeros necessrios nos nomes desses links.
195
Se voc preferir uma ferramenta grfica para criar esses links, use o editor de runlevel fornecido pelo YaST, como descrito na Seo 8.2.3, Configurando servios do sistema (runlevel) com o YaST (p 196). Se um script j existir em /etc/init.d/, deve ser integrado ao esquema de runlevel existente. Crie os links nos diretrios de runlevel imediatamente com insserv ou por meio do servio correspondente no editor de runlevel do YaST. As mudanas sero aplicadas durante a prxima reinicializao, e o novo servio ser iniciado automaticamente. No defina esses links manualmente. Se houver algum erro no bloco INFO, surgiro problemas quando insserv for executado posteriormente para algum outro servio. O servio adicionado manualmente ser removido com a prxima execuo de insserv.
196
Referncia
Para ter mais controle sobre os runlevels em que um servio iniciado ou parado ou para mudar o runlevel padro, selecione primeiro Modo de Especialista. O runlevel padro atual ou o initdefault (o runlevel em que o sistema inicializado por padro) exibido na parte superior. Normalmente, o runlevel padro de um sistema SUSE Linux o 5 (modo multiusurio completo com rede e X). Uma alternativa adequada poderia ser o runlevel 3 (modo multiusurio completo com rede). Esta caixa de dilogo do YaST permite a seleo de um dos runlevels (como listado na Tabela 8.1, Runlevels disponveis (p 190)) como o novo padro. Alm disso, use a tabela mostrada nessa janela para habilitar ou desabilitar servios e daemons individuais. A tabela lista os servios e daemons disponveis, mostra se eles esto habilitados no sistema e, se estiverem, para quais runlevels. Aps selecionar uma das linhas com o mouse, clique nas caixas de seleo que representam os runlevels (B, 0, 1, 2, 3, 5, 6 e S) para definir os runlevels em que o servio ou daemon selecionado deve estar em execuo. O runlevel 4 inicialmente indefinido para permitir a criao de um runlevel personalizado. Uma breve descrio do servio ou daemon selecionado no momento fornecida abaixo da viso geral da tabela. Com Iniciar, Parar ou Atualizar, decida se um servio deve ser ativado. Situao da Renovao verifica o status atual. Inicializar/Reinicializar permite selecionar se voc deseja aplicar as mudanas ao sistema ou restaurar as configuraes existentes antes
197
da inicializao do editor de runlevel. A seleo de Concluir grava no disco as configuraes mudadas. ATENO: Configuraes de runlevel defeituosas podem danificar o sistema Configuraes de runlevel defeituosas podem tornar um sistema inutilizvel. Antes de aplicar as mudanas, tenha absoluta certeza sobre suas conseqncias.
198
Referncia
ATENO: A modificao dos arquivos /etc/sysconfig/* pode danificar a instalao No modifique os arquivos /etc/sysconfig se voc no tiver experincia e conhecimento prvios. Isso pode causar srios danos ao sistema. Os arquivos em /etc/sysconfig contm um pequeno comentrio sobre cada varivel para explicar seu efeito real. Figura 8.2 Configurao do sistema usando o Editor sysconfig
A caixa de dilogo do Editor sysconfig do YaST divida em trs partes. A parte esquerda mostra uma tela de rvore de todas as variveis configurveis. Quando voc seleciona uma varivel, a parte direita exibe a seleo e a definio atuais dessa varivel. Abaixo, uma terceira janela exibe uma pequena descrio da finalidade da varivel, os valores possveis, o valor padro e o arquivo de configurao do qual essa varivel se origina. A caixa de dilogo tambm fornece informaes sobre qual script de configurao executado aps a mudana da varivel e qual novo servio iniciado como resultado da mudana. O YaST solicita a confirmao das mudanas e informa quais scripts sero executados depois que voc sair da caixa de dilogo selecionando Concluir. Alm disso, selecione os servios e scripts que devem ser ignorados agora e iniciados mais tarde. O YaST aplica todas as mudanas automaticamente e reinicia os servios envolvidos para que elas sejam efetivadas.
199
200
Referncia
O Carregador de Boot
Este captulo descreve como configurar o GRUB, o carregador de boot utilizado no SUSE Linux. Para realizar todas as configuraes, h disponvel um mdulo especial YaST. Se voc no estiver familiarizado com a idia de entrar para o Linux, leia as sees a seguir para obter algumas informaes de apoio. Este captulo tambm descreve alguns problemas freqentemente encontrados quando se inicializa com o GRUB e mostra as solues para eles. Este captulo se concentra no gerenciamento de boot e na configurao do carregador de boot do GRUB. O procedimento de boot como um todo detalhado no Captulo 8, Inicializando e configurando um sistema Linux (p 185). O carregador de boot representa a interface entre a mquina (BIOS) e o sistema operacional (SUSE Linux). A configurao do carregador de boot influencia diretamente o boot do sistema operacional. Os termos a seguir aparecem com freqncia neste captulo e talvez precisem de alguma explicao: Registro Mestre de Inicializao A estrutura do MBR definida por uma conveno que independe do sistema operacional. Os primeiros 446 bytes so reservados para o cdigo do programa. Eles geralmente mantm o programa do carregador de boot, neste caso, GRUB stage 1. Os prximos 64 bytes fornecem espao para uma tabela de partio com at quatro entradas (consulte Tipos de partio (Captulo 1, Instalao com o YaST, Inicializao)). A tabela de partio contm informaes sobre o particionamento do disco rgido e sobre o tipo de sistema de arquivos. O sistema operacional precisa dessa tabela para lidar com o disco rgido. Com o GRUB stage 1 no MBR, exatamente uma partio deve ser marcada como ativa. Os dois ltimos
O Carregador de Boot
201
bytes do MBR devem conter um nmero mgico esttico (AA55). Um MBR contendo um valor diferente considerado como invlido pelo BIOSs. Setores de Boot Os setores de boot so os primeiros setores das parties do disco rgido, com a execuo da partio estendida, que serve meramente como container para outras parties. Esses setores de boot tm 512 bytes de espao para o cdigo usado para inicializar um sistema operacional instalado na partio respectiva. Isso se aplica aos setores de boot das parties formatadas do DOS, Windows e OS/2, que tambm contm alguns dados bsicos importantes do sistema de arquivos. Por outro lado, os setores de boot das parties do Linux esto inicialmente vazios depois de se configurar um sistema de arquivos diferente do XFS. Portanto, uma partio do Linux no inicializvel por si mesma, mesmo que contenha um kernel e um sistema vlido de arquivos raiz. Um setor de boot com cdigo vlido para inicializar o sistema tem o mesmo nmero mgico que o MBR em seus dois ltimos bytes (AA55).
202
Referncia
Em algumas configuraes, um estgio intermedirio 1.5 pode ser usado, que localiza e carrega o estgio 2 de um sistema de arquivos apropriado. Se possvel, este mtodo escolhido por padro durante a instalao ou durante a configurao inicial do GRUB com o YaST. O stage2 consegue acessar vrios sistemas de arquivos. Atualmente, so suportados o Ext2, Ext3, ReiserFS, Minix e o sistema de arquivos FAT do DOS usado pelo Windows. At certo ponto, JFS, XFS, e UFS e FFS usados pelos sistemas BSD tambm so suportados. Desde a verso 0.95, o GRUB tambm pode ser inicializado de um CD ou DVD que contenha um sistema de arquivos padro ISO 9660 que est de acordo com a especificao El Torito. Mesmo antes de o sistema ser inicializado, o GRUB pode acessar os sistemas de arquivos dos dispositivos de disco BIOS suportados (disquetes ou discos rgidos, unidades de CD e unidades de DVD detectadas pelo BIOS). Portanto, as alteraes realizadas no arquivo de configurao do GRUB (menu.lst) no exigem a reinstalao do gerenciador de boot. Quando o sistema inicializado, o GRUB carrega o arquivo de menu com os caminhos e dados de partio vlidos do kernel ou do disco RAM inicial (initrd) e localiza os arquivos. A configurao atual do GRUB se baseia em trs arquivos que so descritos a seguir: /boot/grub/menu.lst Este arquivo contm todas as informaes sobre parties ou sistemas operacionais que podem ser inicializados com o GRUB. Sem essas informaes, a linha de comando do GRUB pergunta ao usurio como proceder (consulte Editando as entradas de menu durante o procedimento de boot (p 208) para obter detalhes). /boot/grub/device.map Esse arquivo traduz os nomes dos dispositivos da notao do GRUB e do BIOS para os nomes de dispositivos do Linux. /etc/grub.conf Esse arquivo contm os comandos, os parmetros e as opes que o shell do GRUB precisa para instalar corretamente o carregador de boot. O GRUB pode ser controlado de vrias maneiras. As entradas de boot de uma configurao existente podem ser selecionadas no menu grfico (tela de apresentao). A configurao carregada a partir do arquivo menu.lst. No GRUB, todos os parmetros de boot podem ser alterados antes do boot. Por exemplo, os erros cometidos durante a edio do arquivo de menu podem ser corrigidos desta maneira. Os comandos de boot tambm podem ser inseridos de forma interativa atravs O Carregador de Boot 203
de um tipo de prompt de entrada (consulte Editando as entradas de menu durante o procedimento de boot (p 208)). O GRUB oferece a possibilidade de determinar a localizao do kernel e do initrd antes do boot. Dessa maneira, voc pode at inicializar um sistema operacional instalado para o qual no existe entrada na configurao do carregador de boot. O GRUB existe em duas verses: como carregador de boot e como programa normal do Linux em /usr/sbin/grub. Esse programa conhecido como shell do GRUB. Ele fornece uma emulao do GRUB no sistema instalado e pode ser usado para instalar o GRUB ou testar novas configuraes antes de aplic-las. A funcionalidade para instalar o GRUB como carregador de boot em um disco rgido ou em um disquete integrada no GRUB na forma dos comandos install e setup. Isso est disponvel no shell do GRUB quando o Linux carregado.
204
Referncia
chainloader (hd0,3)+1
Os nomes de dispositivo no GRUB so explicados em Convenes de nomenclatura para discos rgidos e parties (p 205). Este exemplo especifica o primeiro bloco da quarta partio do primeiro disco rgido. Use o comando kernel para especificar uma imagem do kernel. O primeiro argumento o caminho para a imagem do kernel em uma partio. Os outros argumentos so passados para o kernel na linha de comando. Se o kernel no contiver drivers incorporados para acesso partio raiz ou um sistema Linux recente com recursos de hotplug avanados for usado, o initrd deve ser especificado com um comando separado do GRUB cujo nico argumento o caminho para o arquivo initrd. Como o endereo de carregamento do initrd gravado na imagem do kernel carregado, o comando initrd deve vir imediatamente aps o comando kernel. O comando root simplifica a especificao do kernel e dos arquivos initrd. O nico argumento de root um dispositivo ou uma partio. Esse dispositivo usado para todos os kernels, initrd, ou para outros caminhos de arquivo para os quais no h dispositivos explicitamente especificados at o prximo comando root. O comando boot est implcito no fim de cada entrada do menu, assim ele no precisa ser gravado no arquivo de menu. No entanto, para usar o GRUB interativamente para o boot, voc deve inserir o comando boot no final. O comando em si no tem argumentos. Ele meramente inicializa a imagem do kernel carregado ou do carregador de cadeia especificado. Depois de gravar todas as entradas de menu, defina uma delas como entrada default. Do contrrio, utilizada a primeira (entrada 0). Voc tambm pode especificar um tempo de espera em segundos, aps o qual a entrada padro deve inicializar. timeout e default geralmente precedem as entradas de menu. Um arquivo de exemplo descrito em Um exemplo de arquivo de menu (p 206).
O Carregador de Boot
205
partio do primeiro disco rgido. Em uma mquina desktop comum, com um disco rgido conectado como master principal, o nome do dispositivo correspondente no Linux /dev/hda1. As quatro parties principais possveis so atribudas aos nmeros de partio de 0 a 3. As parties lgicas so numeradas a partir de 4:
(hd0,0) (hd0,1) (hd0,2) (hd0,3) (hd0,4) (hd0,5) primeira partio primria do primeiro disco rgido segunda partio primria terceira partio primria quarta partio primria (em geral uma partio estendida) primeira partio lgica segunda partio lgica
Sendo dependente de dispositivos BIO, o GRUB no distingue entre dispositivos IDE, SATA, SCSI e RAID de hardware. Todos os discos rgidos reconhecidos pelo BIOS ou por outras controladoras so numerados de acordo com a seqncia de boot predefinido no BIOS. Infelizmente, geralmente no possvel mapear os nomes dos dispositivos do Linux exatamente para os nomes dos dispositivos do BIOS. Ele gera esse mapeamento com a ajuda de um algoritmo e o salva no arquivodevice.map, que pode ser editado se necessrio. Na Seo 9.2.2, O arquivo device.map (p 209), h informaes sobre o arquivo device.map. O caminho completo do GRUB consiste em um nome de dispositivo escrito entre parnteses e no caminho para o arquivo no sistema de arquivos na partio especificada. O caminho comea com uma barra. Por exemplo, o kernel inicializvel poderia ser especificado como segue em um sistema com um disco rgido nico de IDE que contm o Linux em sua primeira partio:
(hd0,0)/boot/vmlinuz
206
Referncia
kernel (hd0,4)/vmlinuz root=/dev/hda7 vga=791 initrd (hd0,4)/initrd title windows chainloader(hd0,0)+1 title floppy chainloader(fd0)+1 title failsafe kernel (hd0,4)/vmlinuz.shipped root=/dev/hda7 ide=nodma \ apm=off acpi=off vga=normal nosmp maxcpus=0 3 initrd (hd0,4)/initrd.shipped
O primeiro bloco define a configurao da tela de apresentao: gfxmenu (hd0,4)/message A mensagem da imagem de segundo plano localiza-se em /dev/hda5. color white/blue black/light-gray Esquema de cor: branco (primeiro plano), azul (segundo plano), preto (seleo) e cinza-claro (segundo plano da seleo). O esquema de cores no tem efeito sobre a tela de apresentao, apenas sobre o menu personalizvel do GRUB que voc pode acessar saindo da tela de apresentao com Esc . default 0 Por padro, a primeira entrada do menu, title linux, a utilizada para inicializar. timeout 8 Aps oito segundos sem nenhuma entrada do usurio, o GRUB inicializa automaticamente a entrada default. Para desativar o boot automtico, exclua a linha timeout. Se voc definir timeout 0, o GRUB inicializa a entrada default imediatamente. O segundo e maior bloco lista os vrios sistemas operacionais inicializveis. As sees para os sistemas operacionais individuais so introduzidas pelo ttulo. A primeira entrada (title linux) responsvel por inicializar o SUSE Linux. O kernel (vmlinuz) localiza-se na primeira partio lgica (a partio de boot) do primeiro disco rgido. Os parmetros do kernel, tais como a partio raiz e o modo VGA, so anexados aqui. A partio raiz especificada de acordo com a conveno de nomenclatura do Linux (/dev/hda7/), pois essas informaes so
O Carregador de Boot
207
lidas pelo kernel e no tm nada a ver com o GRUB. O initrd tambm se localiza na primeira partio lgica do primeiro disco rgido. A segunda entrada responsvel por carregar o Windows. O Windows inicializado a partir da primeira partio do primeiro disco rgido (hd0,0). O comando chainloader +1 faz com que o GRUB leia e execute o primeiro setor da partio especificada. A prxima entrada permite o boot a partir do disco rgido sem modificar as configuraes do BIOS. A opo de boot failsafe inicia o Linux com uma seleo de parmetros do kernel que permite que o Linux seja inicializado nos sistemas problemticos. O arquivo de menu pode ser alterado sempre que for necessrio. O GRUB utiliza, ento, as configuraes modificadas durante o prximo boot. Edite o arquivo permanentemente usando o YaST ou um editor da sua escolha. Como alternativa, faa as alteraes temporrias de forma interativa usando a funo de edio do GRUB. Consulte Editando as entradas de menu durante o procedimento de boot (p 208).
208
Referncia
Depois de ativar o modo de edio, use as teclas de seta para selecionar a entrada de menu cuja configurao deve ser editada. Para tornar a configurao editvel, pressione E novamente. Dessa maneira, edite as especificaes incorretas das parties ou do caminho antes que tenham um efeito negativo sobre o processo de boot. Pressione Enter para sair do modo de edio e retornar ao menu. Depois pressione B para inicializar essa entrada. No texto de ajuda da parte inferior, so mostradas mais aes possveis. Para inserir permanentemente as opes alteradas de boot e pass-las para o kernel, abra o arquivo menu.lst como raiz do usurio e anexe os respectivos parmetros do kernel linha existente, separados por espaos:
title linux kernel (hd0,0)/vmlinuz root=/dev/hda3 additional parameter initrd (hd0,0)/initrd
O GRUB adota automaticamente os novos parmetros na prxima vez em que o sistema inicializado. Como alternativa, essa alterao tambm pode ser feita com o mdulo do carregador de boot YaST. Anexe os novos parmetros linha existente, separados por espaos.
Como a ordem da IDE, da SCSI e de outros discos rgidos depende de vrios fatores, e como o Linux no consegue identificar o mapeamento, a seqncia no arquivo device .map pode ser configurada manualmente. Se voc encontrar problemas na hora do boot, verifique se a seqncia neste arquivo corresponde seqncia no BIOS e use o prompt do GRUB para modific-la temporariamente, se necessrio. Depois que o sistema Linux for inicializado, o arquivo device.map pode ser permanentemente editado com o mdulo do carregador de boot YaST ou com um editor da sua preferncia. O Carregador de Boot 209
IMPORTANTE: Discos SATA Dependendo do controlador, os discos SATA so reconhecidos como dispositivos IDE (/dev/hdx) ou SCSI (/dev/sdx). Depois de alterar manualmente o device.map, execute o seguinte comando para reinstalar o GRUB. Este comando faz com que o arquivo device.map seja recarregado e os comandos listados em grub.conf sejam executados:
grub --batch < /etc/grub.conf
Significado das entradas individuais: root (hd0,4) Esse comando diz para o GRUB aplicar os seguintes comandos primeira partio lgica do primeiro disco rgido (o local dos arquivos de boot). install parameter O comando grub deve ser executado com o parmetro install. O stage1 do carregador de boot deve ser instalado no container da partio estendida (/grub/stage1 (hd0,3)). O stage2 deve ser carregado no endereo da memria 0x8000 (/grub/stage2 0x8000). A ltima entrada ((hd0,4)/grub/menu.lst) mostra para o GRUB onde ele deve procurar o arquivo de menu.
210
Referncia
no seu sistema Linux aos quais no tm acesso depois que o sistema inicializado. Para bloquear esse tipo de acesso ou impedir que os usurios inicializem certos sistemas operacionais, defina uma senha de boot. IMPORTANTE: Senha de boot e tela de apresentao Se voc usar uma senha de boot para o GRUB, a tela normal de apresentao no ser exibida. Como a raiz do usurio, proceda da seguinte forma para definir uma senha de boot: 1 No prompt raiz, insira grub. 2 Criptografe a senha no shell do GRUB:
grub> md5crypt Password: **** Encrypted: $1$lS2dv/$JOYcdxIn7CJk9xShzzJVw/
Agora os comandos do GRUB s podem ser executados no prompt raiz depois que se pressionar P e se inserir a senha. No entanto, os usurios ainda podem inicializar todos os sistemas operacionais a partir do menu de boot. 4 Para impedir que um ou vrios sistemas operacionais sejam inicializados a partir do menu de boot, acrescente a entrada lock em cada seo no menu.lst que no deveria ser inicializada sem se inserir uma senha. Por exemplo:
title linux kernel (hd0,4)/vmlinuz root=/dev/hda7 vga=791 initrd (hd0,4)/initrd lock
Depois de reiniciar o sistema e selecionar a entrada no Linux no menu de boot, exibida a seguinte mensagem de erro:
Erro 32: Precisa de autenticao
O Carregador de Boot
211
Pressione Enter para inserir o menu. Depois pressione P para obter o prompt da senha. Depois de inserir a senha e pressionar Enter , o sistema operacional selecionado (o Linux, neste caso) no deve inicializar.
Use a guia Gerenciamento de Sees para editar, mudar e apagar sees do carregador de boot referentes aos sistemas operacionais individuais. Para adicionar uma opo, clique em Adicionar. Para mudar o valor de uma opo existente, selecione-o com o mouse e clique em Editar. Se no quiser usar nenhuma opo existente, selecione-a e
212
Referncia
clique em Apagar. Se no estiver familiarizado com as opes do carregador de boot, leia primeiro a Seo 9.2, Inicializando com o GRUB (p 202). Use a guia Instalao do Carregador de Boot para exibir e mudar configuraes relativas a tipo, local e configuraes de carregador avanadas.
O Carregador de Boot
213
Durante a converso, a antiga configurao do GRUB gravada no disco. Para utilizla, basta voltar o tipo de carregador de boot para GRUB e selecionar Recuperar Configurao Salva Antes da Converso. Esta ao fica disponvel somente em um sistema instalado. NOTA: Carregador de boot personalizado Se quiser usar um carregador de boot que no seja o GRUB nem o LILO, selecione No Instalar Nenhum Carregador de Boot. Leia a documentao do seu carregador de boot cuidadosamente antes de escolher esta opo.
Setor de Boot da Partio de Boot /dev/hdXY Setor de inicializao da partio /boot. Esta opo ser padro se voc tiver vrios sistemas operacionais instalados no disco rgido. O Y corresponde partio (1, 2, 3, 4, 5, etc.) como em:
/dev/hda1
Setor de Boot da Partio Raiz /dev/hdXY O setor de inicializao da partio / (raiz). A menos que uma partio /boot seja necessria ou o MBR precise ser usado, esse o padro preferido.
214
Referncia
Outros Use esta opo para especificar a localizao do carregador de boot manualmente. 2 Clique em Concluir para aplicar suas mudanas.
O Carregador de Boot
215
4 No Menu de Boot, mude o valor de Tempo de Espera do Menu de Boot digitando um novo valor, clicando na tecla de seta apropriada com o mouse ou utilizando as teclas de seta do teclado. 5 Clique em OK. 6 Clique em Concluir para salvar as mudanas. Defina o menu de boot para que seja exibido permanentemente sem o tempo de espera atravs da desabilitao de Continuar Boot aps Tempo de Espera.
216
Referncia
Procedimento 9.6 Configurando a ordem do disco 1 Abra a guia Instalao do Carregador de Boot. 2 Clique em Detalhes de Instalao do Carregador de Boot. 3 Se mais de um disco for listado, selecione um disco e clique em Para cima ou Para baixo para reordenar os discos exibidos. 4 Clique em OK para gravar as mudanas. 5 Clique em Concluir para salvar as mudanas. Utilizando este mdulo, tambm possvel substituir o MBR por um cdigo genrico, que inicializa a partio ativa. Clique em Substituir MBR por Cdigo Genrico em Atualizao da rea do Sistema do Disco. Habilite Ativar Partio do Carregador de Boot para ativar a partio que contm o carregador de boot. Clique em Concluir para salvar as mudanas.
O Carregador de Boot
217
tambm ser possvel criar um CD inicializvel com os arquivos de inicializao necessrios para o Linux. necessrio haver um gravador de CD instalado no sistema. A criao de um CR-ROM inicializvel com GRUB requer simplesmente um formato especial de stage2 chamadostage2_eltorito e, opcionalmente, um menu.lst personalizado. Os clssicos arquivos stage1 e stage2 no so necessrios. Procedimento 9.7 Criando CDs de boot 1 Crie um diretrio no qual voc criar a imagem ISO, por exemplo:
cd /tmp mkdir iso
4 Ajuste as entradas do caminho em iso/boot/menu.lst para que apontem para um dispositivo de CD-ROM. Faa isso substituindo o nome do dispositivo dos discos rgidos, listados no formato (hd*), nos nomes de caminho, pelo nome de dispositivo da unidade do CD-ROM, que (cd):
gfxmenu (cd)/boot/message timeout 8 default 0 title Linux kernel (cd)/boot/vmlinuz root=/dev/hda5 vga=794 resume=/dev/hda1 \ splash=verbose showopts initrd (cd)/boot/initrd
218
Referncia
O Carregador de Boot
219
https://portal.suse.com/PM/page/search.pm, para pesquisar palavraschave como GRUB, boot e carregador de boot. GRUB e XFS O XFS no deixa espao para o stage1 no bloco de boot da partio. Portanto, no especifique uma partio XFS como local do carregador de boot. Esse problema pode ser resolvido com a criao de uma partio separada de boot que no formatada com o XFS. GRUB e JFS Embora tecnicamente possvel, a combinao do GRUB com o JFS problemtica. Nesse caso, crie uma partio separada de boot (/boot) e formate-a com o Ext2. Instale o GRUB nessa partio. O GRUB relata um erro de geometria no GRUB O GRUB verifica a geometria dos discos rgidos conectados quando o sistema inicializado. s vezes, a BIOS retorna informaes inconsistentes e o GRUB cria um erro de geometria do GRUB. Se este for o caso, use o LILO ou atualize a BIOS. No Banco de Dados de Suporte, na palavra-chave LILO, h informaes detalhadas sobre a instalao, configurao e manuteno do LILO. O GRUB tambm retorna essa mensagem de erro se o Linux foi instalado em um disco rgido adicional no registrado no BIOS. O stage1 do carregador de boot foi encontrado e carregado corretamente, mas o stage2 no foi encontrado. Esse problema pode ser remediado registrando-se o novo disco rgido na BIOS. O sistema contendo discos rgidos IDE e SCSI no inicializa Durante a instalao, o YaST talvez tenha determinado incorretamente a seqncia de boot dos discos rgidos. Por exemplo, o GRUB pode considerar /dev/hda como hd0 e /dev/sda como hd1, embora a seqncia de boot no BIOS seja ao contrrio (SCSI antes de IDE). Nesse caso, corrija os discos rgidos durante o processo de boot com a ajuda da linha de comando do GRUB. Depois que o sistema for inicializado, edite device .map para aplicar o novo mapeamento permanentemente. Depois verifique os nomes de dispositivo do GRUB nos arquivos /boot/grub/menu.lst e /boot/grub/device.map e reinstale o carregador de boot com o seguinte comando:
grub --batch < /etc/grub.conf
220
Referncia
Inicializando o Windows do segundo disco rgido Alguns sistemas operacionais, como o Windows, podem ser inicializados apenas do primeiro disco rgido. Se um sistema operacional desse tipo for instalado em um disco rgido que no for o primeiro, voc pode efetuar uma mudana lgica na respectiva entrada do menu.
... title windows map (hd0) (hd1) map (hd1) (hd0) chainloader(hd1,0)+1 ...
Nesse exemplo, o Windows iniciado a partir do segundo disco rgido. Para essa finalidade, a ordem lgica dos discos rgidos alterada com map. Essa alterao no afeta a lgica dentro do arquivo de menu do GRUB. Portanto, o segundo disco rgido deve ser especificado para chainloader.
O Carregador de Boot
221
10
Este captulo comea com informaes sobre vrios pacotes de software, os consoles virtuais e o layout de teclado. Abordamos componentes de software como bash, cron e logrotate, porque eles foram mudados ou aperfeioados durante os ltimos ciclos de lanamento. Mesmo que eles sejam pequenos ou considerados de menor importncia, talvez os usurios desejem mudar o seu comportamento padro, porque esses componentes muitas vezes esto intimamente ligados ao sistema. O captulo termina com uma seo sobre configuraes especficas de pas e idioma (I18N e L10N).
223
2. 3. 4.
Configuraes personalizadas podem ser feitas em ~/.profile ou em ~/.bashrc. Para assegurar o processamento correto desses arquivos, necessrio copiar as configuraes bsicas de /etc/skel/.profile ou /etc/skel/.bashrc no diretrio pessoal do usurio. recomendvel copiar as configuraes de /etc/skel aps uma atualizao. Execute os seguintes comandos de shell para evitar a perda de ajustes pessoais:
mv cp mv cp ~/.bashrc ~/.bashrc.old /etc/skel/.bashrc ~/.bashrc ~/.profile ~/.profile.old /etc/skel/.profile ~/.profile
Voc no pode editar /etc/crontab chamando o comando crontab -e. Este arquivo deve ser carregado diretamente em um editor, modificado e, em seguida, gravado.
224
Referncia
Alguns pacotes instalam scripts de shell nos diretrios /etc/cron.hourly, /etc/ cron.daily, /etc/cron.weekly e /etc/cron.monthly, cuja execuo controlada por /usr/lib/cron/run-crons. /usr/lib/cron/run-crons executado a cada 15 minutos da tabela principal (/etc/crontab). Isso garante que os processos que tenham sido negligenciados possam ser executados no momento adequado. Para executar os scripts de manuteno por hora, dirio ou outros scripts de manuteno peridica em horrios personalizados, remova os arquivos de marcao de horrio regularmente, utilizando as entradas /etc/crontab (consulte o Exemplo 10.2, /etc/crontab: Remoo de Arquivos de Marcao de Hora (p 225), que remove a opo por hora antes de cada hora cheia, a opo dirio uma vez ao dia s 2h14, etc.). Exemplo 10.2 /etc/crontab: Remoo de Arquivos de Marcao de Hora
59 14 29 44 * 2 2 2 * * * 1 * * * * * * 6 * root root root root rm rm rm rm -f -f -f -f /var/spool/cron/lastrun/cron.hourly /var/spool/cron/lastrun/cron.daily /var/spool/cron/lastrun/cron.weekly /var/spool/cron/lastrun/cron.monthly
Os trabalhos de manuteno diria de sistema foram distribudos a vrios scripts por motivos de clareza. Eles esto contidos no pacote aaa_base. /etc/cron.daily contm, por exemplo, os componentes suse.de-backup-rpmdb, suse .de-clean-tmp ou suse.de-cron-local.
225
arquivos de configurao individual em /etc/logrotate.d. Por exemplo, tais programas acompanham os pacotes apache2 (/etc/logrotate.d/apache2) e syslogd (/etc/logrotate.d/syslog). Exemplo 10.3 Exemplo para /etc/logrotate.conf
# consulte "man logrotate" para obter os detalhes # rotacione os arquivos de registro semanalmente semanalmente # mantenha 4 semanas de backlogs rotacione 4 # crie arquivos de registro novos (vazios) aps rotacionar os antigos criados # ative esta opo se deseja que os arquivos de registro sejam compactados #compactar # As informaes de rotao de registro de drop de pacotes RPM neste diretrio incluem /etc/logrotate.d # nenhum pacote possui lastlog ou wtmp - ns iremos rotacion-los aqui #/var/log/wtmp { # mensal # criar 0664 root utmp # rotacionar 1 #} # registros especficos de sistema tambm podem ser configurados aqui.
logrotate controlado pelo cron e chamado diariamente por /etc/cron.daily/ logrotate. IMPORTANTE A opo create l todas as configuraes feitas pelo administrador em /etc/ permissions*. Certifique-se de que no haja conflitos devido a modificaes pessoais.
226
Referncia
updatedb iniciado automaticamente a cada noite ou aproximadamente 15 minutos aps a inicializao do sistema.
Entradas globais de sistema podem ser feitas em /etc/profile. L, habilite a criao de arquivos bsicos, necessrios para os programadores para depurao. Um usurio normal no pode aumentar os valores especificados em /etc/profile pelo administrador do sistema, mas pode fazer entradas especiais em ~/.bashrc. Exemplo 10.4 ulimit: Configuraes em ~/.bashrc
# limite de memria fsica: ulimit -m 98304 # limite de memria virtual: ulimit -v 98304
As quantidades de memria devem ser especificadas em KB. Para obter informaes mais detalhadas, consulte man bash. Recursos especiais do SUSE Linux 227
IMPORTANTE Nem todos os shells suportam as diretivas ulimit. O PAM (por exemplo, pam_limits) oferece possibilidades abrangentes de ajustes se voc depende de configuraes abrangentes para essas restries.
228
Referncia
229
Mais informaes sobre esses arquivos esto disponveis no arquivo de informaes do Emacs em Init File: info:/emacs/InitFile. Informaes sobre como desabilitar o carregamento desses arquivos, se necessrio, tambm so fornecidas neste local. Os componentes do Emacs so divididos em vrios pacotes: O pacote base emacs. emacs-x11 (normalmente instalado): o programa com suporte X11. emacs-nox: o programa sem suporte X11. emacs-info: documentao online em formato info. emacs-el: os arquivos de biblioteca no compilados em Emacs Lisp. Eles no so necessrios em tempo de execuo. Numerosos pacotes de expanso podem ser instalados, se houver necessidade: emacs-auctex (para LaTeX), psgml (para SGML e XML), gnuserv (para operao de cliente e servidor) e outros.
230
Referncia
/etc/inputrc /usr/X11R6/lib/X11/Xmodmap /etc/skel/.Xmodmap /etc/skel/.exrc /etc/skel/.less /etc/skel/.lesskey /etc/csh.cshrc /etc/termcap /usr/lib/terminfo/x/xterm /usr/X11R6/lib/X11/app-defaults/XTerm /usr/share/emacs/<VERSION>/site-lisp/term/*.el
Essas mudanas afetam apenas aplicativos que utilizam entradas terminfo ou cujos arquivos de configurao so mudados diretamente (vi, less, etc.). Os aplicativos que no acompanham o SUSE Linux devem ser adaptados a esses padres. Em X, a chave de composio (multikey) pode ser acessada utilizando Ctrl + Shift (direita). Consulte tambm a entrada correspondente em /usr/X11R6/lib/X11/ Xmodmap. Outras configuraes so possveis utilizando a Extenso de Teclado X (XKB). Esta extenso tambm usada pelos ambientes de rea de trabalho do GNOME (gswitchit) e KDE (kxkb). DICA: Mais informaes Informaes sobre o XKB esto disponveis em /etc/X11/xkb/README e nos documentos ali relacionados. Informaes detalhadas sobre a entrada dos idiomas chins, japons e coreano (CJK) esto disponveis na pgina de Mike Fabian em: http://www.suse .de/~mfabian/suse-cjk/input.html.
231
derivadas das primeiras e ltimas letras das palavras e, no meio, est o nmero de letras omitidas. As configuraes so feitas com variveis LC_ definidas no arquivo /etc/ sysconfig/language. Estas referem-se no somente ao suporte ao idioma nativo, mas tambm s categorias Mensagens (Idioma), Conjunto de Caracteres, Ordem de Classificao, Hora e Data, Nmeros e Moeda. Cada uma dessas categorias pode ser definida diretamente com sua prpria varivel ou indiretamente com uma varivel master no arquivo language (consulte a pgina de manual local). RC_LC_MESSAGES, RC_LC_CTYPE, RC_LC_COLLATE, RC_LC_TIME, RC_LC_NUMERIC, RC_LC_MONETARY Essas variveis so passadas para o shell sem o prefixo RC_ e representa as categorias listadas. Os perfis shell de referncia esto listados abaixo. A configurao atual pode ser exibida com o comando locale. RC_LC_ALL Esta varivel, se definida, sobregrava os valores das variveis j mencionadas. RC_LANG Se nenhuma das variveis anteriores for definida, este o fallback. Por padro, o SUSE Linux apenas define RC_LANG. Isto facilita o processo para que os usurios informem seus prprios valores. ROOT_USES_LANG Uma varivel yes ou no. Se for definida como no, root sempre funcionar no ambiente POSIX. As variveis podem ser definidas com o editor sysconfig do YaST (consulte a Seo 8.3.1, Mudando a configurao do sistema usando o Editor sysconfig do YaST (p 198)). O valor de tal varivel contm o cdigo do idioma, cdigo do pas, codificao e modificador. Os componentes individuais so conectados por caracteres especiais:
LANG=<language>[[_<COUNTRY>].<Encoding>[@<Modifier>]]
232
Referncia
standards/iso639-2/. Os cdigos de pas esto listados na varivel ISO 3166 disponvel em http://www.din.de/gremien/nas/nabd/iso3166ma/ codlstp1/en_listp1.html. S faz sentido definir valores para os quais os arquivos de descrio utilizveis podem ser encontrados em /usr/lib/locale. Arquivos de descrio adicionais podem ser criados de arquivos em /usr/share/i18n utilizando o comando localedef. Os arquivos de descrio fazem parte do pacote glibc-i18ndata. Um arquivo de descrio para en_US.UTF-8 (para ingls e Estados Unidos) pode ser criado com:
localedef -i en_US -f UTF-8 en_US.UTF-8
LANG=en_US.UTF-8 Esta a configurao padro se Ingls americano for selecionado durante a instalao. Se voc selecionou outro idioma, aquele idioma ser habilitado, mas ainda com o UTF-8 como a codificao de caractere. LANG=en_US.ISO-8859-1 Este define o idioma para ingls, pas para Estados Unidos e a definio de caractere para ISO-8859-1. Esta definio de caractere no suporta o sinal de Euro, mas s vezes pode ser til para programas que no foram atualizados para suportar UTF-8. A string que define o conjunto de caracteres (ISO-8859-1 neste caso) ento avaliada por programas como o Emacs. LANG=en_IE@euro O exemplo acima inclui explicitamente o sinal de Euro em uma configurao de idioma. Falando estritamente, esta configurao atualmente obsoleta, porque o UTF-8 tambm cobre o smbolo de Euro. Ela til apenas se um aplicativo no suportar o UTF-8, mas o ISO-8859-15. O SuSEconfig l as variveis em /etc/sysconfig/language e grava as mudanas necessrias em /etc/SuSEconfig/profile e /etc/SuSEconfig/csh .cshrc. /etc/SuSEconfig/profile lido ou originado por /etc/profile. /etc/SuSEconfig/csh.cshrc originado por /etc/csh.cshrc. Isso torna as configuraes disponveis em todo o sistema. Os usurios podem anular os padres do sistema editando o seu ~/.bashrc de acordo. Por exemplo, se voc no quiser usar o en_US global de sistema para mensagens de programa, inclua LC_MESSAGES=es_ES, ento as mensagens sero exibidas em espanhol.
233
utiliza est localizado em /usr/share/lib/de_DE/LC_NUMERIC. Por isso, LC_NUMERIC deve ser definido para de_DE para tornar a definio de separador visvel para o sistema.
235
Operao da impressora
11
CUPS o sistema de impresso padro do SUSE Linux. O CUPS altamente orientado ao usurio. Em muitos casos, compatvel com LPRng ou pode ser adaptado com relativamente pouco esforo. O LPRng includo no SUSE Linux apenas por motivos de compatibilidade. As impressoras podem ser distinguidas pela interface, como USB ou rede, e pela linguagem de impresso. Ao comprar uma impressora, verifique se a interface do equipamento suportada pelo hardware e se a linguagem da impressora adequada. As impressoras podem ser categorizadas com base em trs classes de linguagem: Impressoras PostScript PostScript a linguagem de impressora na qual a maior parte dos trabalhos de impresso Linux e Unix so gerados e processados pelo sistema de impresso interno. Essa linguagem j existe h bastante tempo e muito eficiente. Se documentos PostScript puderem ser diretamente processados pela impressora e no precisarem ser convertidos em estgios adicionais do sistema de impresso, o nmero de origens de erro potenciais ser reduzido. Como as impressoras PostScript esto sujeitas a custos de licenciamento substanciais, elas geralmente custam mais que as impressoras sem interpretador PostScript. Impressora padro (linguagens como PCL e ESC/P) Embora essas linguagens de impressora tenham surgido h bastante tempo, ainda so usadas e sofrem constantes desenvolvimentos para se adaptarem aos novos recursos de impressoras. No caso de linguagens conhecidas, o sistema pode converter tarefas de impresso PostScript na respectiva linguagem de impresso com a ajuda do Ghostscript. Esse estgio de processamento chamado de interpretao. As linguagens mais conhecidas so a PCL, mais usada pelas Operao da impressora 237
impressoras HP e seus clones, e a ESC/P, utilizada nas impressoras Epson. Geralmente, essas linguagens so suportadas no Linux e produzem um resultado de impresso satisfatrio. Pode ocorrer de o Linux no conseguir lidar com algumas funes de impressoras muito novas e sofisticadas, j que os desenvolvedores do cdigo-fonte aberto ainda estaro trabalhando nesses recursos. Alm da HP, que desenvolve os drivers hpijs, nenhum outro fabricante cria ou disponibiliza drivers Linux aos distribuidores como licena de cdigo-fonte aberto. A maior parte dessas impressoras est na faixa de preos intermediria. Impressoras proprietrias (geralmente, impressoras GDI) Em geral, apenas um ou vrios drivers Windows esto disponveis para impressoras proprietrias. Essas impressoras no aceitam nenhuma das linguagens de impresso comuns, e as que usam esto sujeitas a alterao quando uma nova edio de um modelo lanada. Consulte a Seo 11.7.1, Impressoras sem suporte de linguagem de impressora padro (p 253) para obter mais informaes. Antes de comprar uma nova impressora, consulte as seguintes fontes para verificar a abrangncia do suporte ao equipamento pretendido: http://cdb.suse.de/ banco de dados de impressoras do SUSE Linux http://www.linuxprinting.org/ banco de dados de impressoras do site LinuxPrinting.org http://www.cs.wisc.edu/~ghost/ site do Ghostscript na Web /usr/share/doc/packages/ghostscript/catalog.devices lista de drivers includos Os bancos de dados online sempre mostram o status de suporte Linux mais recente. No entanto, a distribuio do Linux s pode integrar os drivers disponveis no momento da produo. Da mesma forma, uma impressora atualmente classificada como perfeitamente suportada poder no apresentar esse status quando a prxima verso do SUSE Linux for lanada. Assim, os bancos de dados no indicaro necessariamente o status correto, mas apenas uma informao aproximada.
238
Referncia
Operao da impressora
239
CUPs) no Banco de Dados de Suporte, em http://portal.suse.com. Para encontrar o artigo, digite cups na caixa de dilogo de pesquisa. ATENO: Conexo do cabo mquina Ao conectar a impressora mquina, no esquea de que apenas dispositivos USB podem ser conectados ou desconectados durante a operao. Desligue o sistema antes de modificar outros tipos de conexo.
240
Referncia
Configurao automtica
O YaST poder configurar a impressora automaticamente se for possvel configurar automaticamente a porta paralela ou USB e se a impressora conectada puder ser detectada. O banco de dados da impressora tambm deve conter a string do ID da impressora que o YaST recupera durante a deteco automtica do hardware. Se o ID do hardware for diferente do da designao do modelo, selecione o modelo manualmente.
Operao da impressora
241
Para assegurar que tudo funcione adequadamente, cada configurao deve ser verificada com a funo de teste de impresso do YaST. A pgina de teste tambm fornece informaes importantes sobre a configurao testada.
Configurao manual
Se os requisitos da configurao automtica no forem atendidos, ou se voc quiser fazer uma configurao personalizada, configure a impressora manualmente. Dependendo do sucesso da deteco automtica e da quantidade de informaes sobre o modelo de impressora encontradas no banco de dados, o YaST poder determinar as configuraes corretas automaticamente ou, pelo menos, fazer uma pr-seleo razovel. Os seguintes parmetros devem ser configurados: Conexo de Hardware (Porta) A configurao da conexo de hardware depender da habilidade do YaST em encontrar a impressora durante a deteco automtica de hardware. Se o YaST conseguir detectar o modelo de impressora automaticamente, poderemos deduzir que a conexo da impressora est funcionando no nvel de hardware, no sendo necessrio modificar qualquer configurao a esse respeito. Se o YaST no conseguir detectar automaticamente o modelo de impressora, poder haver algum problema na conexo no nvel do hardware. Nesse caso, ser necessria alguma interveno manual para configurar a conexo. Na caixa de dilogo Configurao da Impressora, pressione Adicionar para iniciar o fluxo de trabalho de configurao manual. Selecione o Tipo de Impressora (por exemplo, Impressora USB) e, clicando em Prximo, digite a Conexo de Impressora e selecione o dispositivo. Nome da Fila O nome da fila usado quando emitimos comandos de impresso. O nome deve ser relativamente curto e composto apenas por letras minsculas e nmeros. Digite o Nome para impresso na prxima caixa de dilogo (Nome da fila). Modelo de Impressora e Arquivo PPD Todos os parmetros especficos da impressora, como o driver Ghostscript a ser usado e os parmetros do filtro de impresso, so armazenados em um arquivo PPD (PostDescription Printer Description). Consulte a Seo 11.3, Instalao do software (p 240) para obter mais informaes sobre arquivos PPD.
242
Referncia
Para muitos modelos de impressora, haver vrios arquivos PPD disponveis se, por exemplo, vrios drivers Ghostscript funcionarem com o modelo em questo. Quando voc selecionar um fabricante e um modelo na prxima caixa de dilogo (Modelo de impressora), o YaST selecionar o arquivo PPD que corresponde impressora. Se houver vrios arquivos PPD disponveis para o modelo, o YaST assumir um deles como padro (normalmente aquele marcado como recomendado). possvel modificar o arquivo PPD escolhido na prxima caixa de dilogo usando Editar. Para modelos no-PostScript, todos os dados especficos da impressora so produzidos pelo driver Ghostscript. Por esse motivo, a configurao do driver o fator mais importante a determinar a qualidade da impresso. A impresso afetada pelo tipo de driver Ghostscript (arquivo PPD) selecionado e pelas opes especificadas para ele. Se necessrio, mude as opes adicionais (conforme disponibilizadas pelo arquivo PPD) depois de selecionar Editar. Figura 11.1 Seleo do modelo de impressora
Sempre verifique se suas configuraes esto funcionando como esperado. Para isso, imprima a pgina de teste. Se a impresso sair com erros (por exemplo, com vrias pginas praticamente vazias), pare a impresso removendo todo o papel e, em seguida, interrompendo o teste no YaST.
Operao da impressora
243
Se o banco de dados da impressora no incluir uma entrada para o modelo, ser possvel adicionar um novo arquivo PPD selecionando Adicionando Arquivo PPD ao Banco de Dados ou usando um grupo de arquivos PPD genricos para forar a impressora a usar uma das linguagens de impresso padro. Para isso, selecione FABRICANTE DESCONHECIDO como fabricante da impressora. Configuraes Avanadas Normalmente, no necessrio alterar essas configuraes.
244
Referncia
em um host Linux ou Unix diferente no sistema CUPS. O nmero de porta para o servio LPD 515. Um exemplo de URI de dispositivo lpd://host-printer/LPT1. IPP (protocolo de impresso de Internet) O IPP um protocolo relativamente novo (1999) baseado no protocolo HTTP. Com o IPP, mais dados referentes tarefa so transmitidos. O CUPS usa o IPP em transmisses internas de dados. o protocolo escolhido para a fila de encaminhamento entre dois servidores CUPS. necessrio indicar o nome da fila de impresso para que o IPP seja configurado corretamente. A porta padro do IPP 631. Exemplos de URIs de dispositivo so ipp://host-printer/ps e ipp://host-cupsserver/printers/ps. SMB (compartilhamento Windows) O CUPS tambm suporta a impresso em impressoras conectadas a compartilhamentos Windows. O protocolo usado para essa finalidade o SMB. O SMB usa os nmeros de porta 137, 138 e 139. Exemplos de URIs de dispositivos so smb://user:password@workgroup/server/printer, smb://user:password@host/printer e smb://server/printer. O protocolo suportado pela impressora deve ser determinado antes da configurao. Se o fabricante no fornecer as informaes necessrias, o comando nmap, que vem com o pacote nmap, poder ser usado para descobrir o protocolo. nmap verificar as portas abertas do host. Por exemplo:
nmap -p 35,137-139,515,631,9100-10000 printerIP
Operao da impressora
245
O dispositivo (-v) estar disponvel como fila (-p), usando o arquivo PPD especificado (-P). Isso significa que voc deve conhecer o arquivo PPD e o nome do dispositivo se quiser configurar a impressora manualmente. No use -E como primeira opo. Em todos os comandos CUPS, -E como primeiro argumento define o uso de uma conexo criptografada. Para habilitar a impressora, -E deve ser usado como mostrado no seguinte exemplo:
lpadmin -p ps -v parallel:/dev/lp0 -P \ /usr/share/cups/model/Postscript.ppd.gz -E
Para obter mais opes de lpadmin, consulte a pgina de manual lpadmin(1). Durante a configurao da impressora, algumas opes so definidas como padro. Essas opes podem ser modificadas para cada tarefa de impresso (dependendo da ferramenta de impresso utilizada). Tambm possvel modificar essas opes padro com o YaST. Usando ferramentas de linha de comando, defina opes padro da seguinte forma: 1 Primeiro, liste todas as opes:
lpoptions -p queue -l
Exemplo:
246
Referncia
A opo padro ativada fica evidente com o asterisco precedente (*). 2 Mude a opo com lpadmin:
lpadmin -p queue -o Resolution=600dpi
As configuraes so gravadas em ~/.lpoptions quando um usurio normal executa lpoptions. As configuraes de root so gravadas em /etc/cups/lpoptions.
Operao da impressora
247
Se configurado corretamente, o aplicativo dever chamar a caixa de dilogo kprinter sempre que uma tarefa de impresso for emitida. Por isso, voc pode usar a caixa de dilogo para selecionar uma fila e definir outras opes de impresso. Isso requer que a configurao de impresso do prprio aplicativo no conflite com a do kprinter, e que as opes de impresso somente sejam modificadas por meio de kprinter depois que este seja habilitado.
2.
3.
248
Referncia
O YaST pode localizar os servidores CUPS verificando os hosts de rede local para ver se eles oferecem o servio IPP ou ouvindo transmisses IPP. Isso exige que o firewall permita a transmisso de pacotes recebidos na porta 631/UDP (cliente de servio IPP). Isso ser habilitado automaticamente quando voc tiver configurado sua mquina para estar na zona de firewall interna. Abrir uma porta para configurar acesso a filas remotas na zona externa pode constituir um risco de segurana porque o invasor pode transmitir um servidor que talvez seja aceito pelos usurios. Por padro, as transmisses de IPP so rejeitadas na zona externa. Consulte Configurando com o YaST (p 110) para obter detalhes sobre a configurao de firewall. O usurio tambm pode detectar os servidores CUPS verificando ativamente os hosts de rede locais ou configurar filas manualmente. No entanto, por causa das razes mencionadas no incio desta seo, esse mtodo no recomendado.
Esta configurao tambm essencial se voc quiser usar o front end da Web de administrao CUPS ou a ferramenta de administrao da impressora KDE.
Operao da impressora
249
Quando cupsd executado como lp, /etc/printcap no pode ser gerado, porque lp no pode criar arquivos em /etc/. Portanto, cupsd gera /etc/cups/ printcap. Para assegurar que os aplicativos que lem somente nomes de fila de /etc/printcap continuem a funcionar adequadamente, /etc/printcap um link simblico que aponta para /etc/cups/printcap. Quando cupsd executado como lp, a porta 631 no pode ser aberta. Portanto, cupsd no pode ser recarregado com rccups reload. Use rccups restart.
e
<Local /> Order Deny, Allow Deny From All Allow From 127.0.0.1 Allow From 127.0.0.2 Allow From @LOCAL </Local>
Dessa forma, somente hosts LOCAL podem acessar cupsd em um servidor CUPS. Hosts LOCAL so hosts cujos endereos IP pertencem a uma interface no-PPP (interfaces cujos sinalizadores IFF_POINTOPOINT no esto definidos) e pertencem mesma rede do servidor CUPS. Pacotes de todos os outros hosts sero rejeitados imediatamente.
250
Referncia
Operao da impressora
251
*cupsFilter: ... foomatic-rip. Esses arquivos PPD esto localizados no pacote cups-drivers. O YaST preferir um arquivo PPD Foomatic se um arquivo destes com a entrada *NickName: ... Foomatic ... (recommended) corresponder ao modelo de impressora e o pacote manufacturer-PPDs no contiver um arquivo PPD mais adequado.
252
Referncia
O arquivo PPD do pacote manufacturer-PPDs no corresponde ao fabricante e ao modelo. Isso poder ocorrer se o pacote manufacturer-PPDs contiver apenas um arquivo PPD para modelos semelhantes, por exemplo, se no houver arquivo PPD separado para os modelos individuais de uma srie de modelos, mas o nome do modelo for especificado na forma Funprinter 1000 series no arquivo PPD. O arquivo PPD Foomatic PostScript no recomendado. Isso talvez ocorra porque o modelo de impressora no funciona suficientemente bem no modo PostScript; por exemplo, a impressora pode no ser confivel nesse modo porque tem pouca memria ou muito lenta porque seu processador fraco. Alm disso, a impressora pode no suportar PostScript por padro porque, por exemplo, o suporte a PostScript s est disponvel como mdulo opcional. Se um arquivo PPD do pacote manufacturer-PPDs for adequado para uma impressora PostScript, mas o YaST no puder configur-lo por esses motivos, selecione manualmente o modelo de impressora respectivo no YaST.
Operao da impressora
253
Algumas impressoras podem ser modificadas para funcionar no modo GDI ou em uma das linguagens de impressora padro. Alguns fabricantes oferecem drivers proprietrios para suas impressoras GDI. A desvantagem dos drivers de impressora proprietrios que no h garantia de que vo funcionar com o sistema de impresso instalado e de que so adequados para as diferentes plataformas de hardware. Em contraste, impressoras que suportam uma linguagem de impressora padro no dependem de uma verso do sistema de impresso especial ou de plataforma de hardware especial. Em vez de desperdiar tempo tentando fazer um driver Linux proprietrio funcionar, pode ser mais eficaz comprar uma impressora suportada. Isso solucionaria o problema do driver de uma vez por todas, eliminando a necessidade de instalar e configurar software de driver especial e obter atualizaes do driver eventualmente necessrias devido a novos avanos no sistema de impresso.
254
Referncia
Interrupo: irrelevante Modo: Normal, SPP ou Output Only DMA: desabilitado Se a impressora no puder ser endereada na porta paralela apesar dessas configuraes, digite o endereo de E/S explicitamente de acordo com a configurao no BIOS no formato 0x378 em /etc/modprobe.conf. Se houver duas portas paralelas definidas para os endereos de E/S 378 e 278 (hexadecimal), digite-os no formato 0x378,0x278. Se a interrupo 7 estiver livre, poder ser ativada com a entrada mostrada no Exemplo 11.1, /etc/modprobe.conf: Modo de interrupo para a primeira porta paralela (p 255). Antes de ativar o modo de interrupo, verifique o arquivo /proc/ interrupts para ver quais interrupes j esto sendo usadas. Somente as interrupes usadas atualmente so exibidas. Isso pode mudar dependendo dos componentes de hardware ativos. A interrupo da porta paralela no deve ser usada por outro dispositivo. Se no tiver certeza, use o modo de polling com irq=none. Exemplo 11.1 /etc/modprobe.conf: Modo de interrupo para a primeira porta paralela
alias parport_lowlevel parport_pc options parport_pc io=0x378 irq=7
Operao da impressora
255
Se a conexo com lpd no for estabelecida, o lpd pode no estar ativo ou pode haver problemas bsicos de rede. Como usurio root, use o seguinte comando para consultar um relatrio de status (possivelmente muito longo) sobre a fila no host remoto, considerando que o respectivo lpd esteja ativo e o host aceite consultas:
echo -e "\004queue" \ | netcat -w 2 -p 722 host 515
Se o lpd no responder, ele pode no estar ativo ou pode haver problemas bsicos de rede. Se o lpd responder, a resposta deve mostrar por que no possvel imprimir na fila do host. Se voc receber uma resposta como a do Exemplo 11.2, Mensagem de erro do lpd (p 256), o problema est sendo causado pelo lpd remoto. Exemplo 11.2 Mensagem de erro do lpd
lpd: your host does not have line printer access lpd: queue does not exist printer: spooling disabled printer: printing disabled
Verificando um cupsd remoto Por padro, o servidor de rede CUPS deve transmitir suas filas a cada 30 segundos na porta UDP 631. Por isso, o seguinte comando pode ser usado para testar a existncia de um servidor de rede CUPS na rede.
netcat -u -l -p 631 & PID=$! ; sleep 40 ; kill $PID
Se existir um servidor de rede CUPS de transmisso, a sada aparecer conforme mostrado no Exemplo 11.3, Transmisso do servidor de rede CUPS (p 256). Exemplo 11.3 Transmisso do servidor de rede CUPS
ipp://host.domain:631/printers/queue
Use o comando a seguir para testar o estabelecimento de uma conexo TCP com cupsd (porta 631) no host.
netcat -z host 631 && echo ok || echo failed
Se a conexo com cupsd no for estabelecida, o cupsd pode no estar ativo ou existem problemas bsicos de rede. lpstat -h host -l -t retorna um relatrio de status (possivelmente muito longo) para todas as filas do host, desde que o respectivo cupsd esteja ativo e o host aceite consultas. 256 Referncia
O prximo comando pode ser usado para testar se a fila do host aceita uma tarefa de impresso consistindo em um nico caractere de retorno de carro. Nada ser impresso. Possivelmente, ser ejetada uma pgina em branco.
echo -en "\r" \ | lp -d fila -h host
Soluo de problemas da impressora de rede ou da caixa do servidor de impresso Algumas vezes, spoolers executados na caixa do servidor de impresso causam problemas quando precisam lidar com muitas tarefas de impresso. Como isso causado pelo spooler nessa caixa, no h soluo para o problema. Como paliativo, desvie o spooler na caixa do servidor de impresso endereando a impressora conectada caixa diretamente por meio do soquete TCP. Consulte a Seo 11.4.2, Impressoras de rede (p 244). Dessa forma, a caixa do servidor de impresso reduzida a um conversor entre as vrias formas de transferncia de dados (conexo de rede TCP/IP e impressora local). Para usar esse mtodo, voc precisa conhecer a porta TCP da caixa do servidor de impresso. Se a impressora estiver conectada caixa do servidor de impresso e ligada, a porta TCP poder, geralmente, ser determinada com o utilitrio nmap do pacote nmap depois que essa caixa for ativada. Por exemplo, nmapendereo IP pode resultar na seguinte sada para a caixa do servidor de impresso:
Port 23/tcp 80/tcp 515/tcp 631/tcp 9100/tcp State open open open open open Service telnet http printer cups jetdirect
Essa sada indica que a impressora conectada caixa do servidor de impresso pode ser endereada via soquete TCP na porta 9100. Por padro, nmap verifica somente algumas portas mais conhecidas listadas em /usr/share/nmap/ nmap-services. Para verificar todas as portas possveis, use o comando nmap-pporta_de_origem-porta_de_destino endereo-IP. O processo pode demorar. Para obter mais informaes, consulte a pgina de manual nmap. Digite um comando como
echo -en "\rHello\r\f" | netcat -w 1 porta endereo-IP arquivo cat | netcat -w 1 porta endereo-IP
Operao da impressora
257
para enviar strings de caracteres ou arquivos diretamente respectiva porta para testar se a impressora pode ser endereada dessa porta.
258
Referncia
Para apagar a tarefa de impresso no servidor, use um comando como lpstat -h print-server -o para determinar o nmero da tarefa no servidor, contanto que o servidor no tenha concludo a tarefa de impresso (isto , enviado para a impressora). Usando este nmero, a tarefa de impresso pode ser apagada no servidor:
cancel -h servidor-de-impresso fila-nr_tarefa
Operao da impressora
259
260
Referncia
12
Desde a verso 2.6, o kernel capaz de adicionar ou remover praticamente qualquer dispositivo no sistema em execuo. Mudanas no estado do dispositivo (se um dispositivo foi conectado ou removido) precisam ser estendidas ao espao do usurio. Os dispositivos devem ser configurados assim que forem conectados e identificados. Os usurios de um determinado dispositivo devem ser informados sobre qualquer mudana de estado deste dispositivo. O udev fornece a infra-estrutura necessria para manter dinamicamente os arquivos de n de dispositivo e links simblicos no diretrio /dev. As regras do udev permitem conectar ferramentas externas ao processamento de evento de dispositivo de kernel. Isso permite que voc personalize o tratamento do dispositivo de udev, por exemplo, adicionando determinados scripts a serem executados como parte do tratamento do dispositivo de kernel ou solicitar e importar dados adicionais para avaliao durante o tratamento do dispositivo.
261
colocados no diretrio /lib/udev/devices. Na inicializao do sistema, o contedo do diretrio copiado para o diretrio /dev com propriedade e permisses iguais s dos arquivos em /lib/udev/devices.
262
Referncia
Cada driver de dispositivo carrega uma lista de lias conhecidos para os dispositivos que pode tratar. A lista est contida no prprio arquivo de mdulo de kernel. O programa depmod l as listas de ID e cria o arquivo modules.alias no diretrio /lib/ modules do kernel para todos os mdulos disponveis atualmente. Com essa infraestrutura, carregar o mdulo fcil como chamar modprobe para cada evento com uma chave MODALIAS. Se modprobe $MODALIAS for chamado, ele corresponder o lias do dispositivo composto para o dispositivo com os lias fornecidos pelos mdulos. Se uma entrada correspondente for encontrada, o mdulo ser carregado. Tudo isso acionado pelo udev e ocorre automaticamente.
263
As linhas UEVENT mostram os eventos que o kernel enviou atravs de netlink. As linhas UDEV mostram os handlers de evento do udev concludos. A temporizao impressa em microssegundos. O tempo entre UEVENT e UDEV o tempo que udev levou para processar esse evento ou que o daemon udev atrasou sua execuo para sincronizar esse evento com eventos relacionados e j em execuo. Por exemplo, eventos para parties de disco rgido sempre esperam pela concluso do evento do dispositivo de disco principal, pois os eventos de partio podem se basear nos dados que o evento de disco principal consultou do hardware. udevmonitor --env mostra o ambiente de evento completo:
UDEV [1132633002.937243] add@/class/input/input7 UDEV_LOG=3 ACTION=add DEVPATH=/class/input/input7 SUBSYSTEM=input SEQNUM=1043 PHYSDEVPATH=/devices/pci0000:00/0000:00:1d.1/usb2/2-2/2-2:1.0 PHYSDEVBUS=usb PHYSDEVDRIVER=usbhid PRODUCT=3/46d/c03e/2000 NAME="Logitech USB-PS/2 Optical Mouse" PHYS="usb-0000:00:1d.1-2/input0" UNIQ="" EV=7 KEY=70000 0 0 0 0 0 0 0 0 REL=103
O udev tambm envia mensagens para o syslog. A prioridade padro do syslog que controla quais mensagens so enviadas ao syslog especificada no arquivo de configurao do udev /etc/udev/udev.conf. A prioridade de registro do daemon 264 Referncia
265
/dev/disk |-- by-id | |-- scsi-SATA_HTS726060M9AT00_MRH453M4HWHG7B -> ../../sda | |-- scsi-SATA_HTS726060M9AT00_MRH453M4HWHG7B-part1 -> ../../sda1 | |-- scsi-SATA_HTS726060M9AT00_MRH453M4HWHG7B-part6 -> ../../sda6 | |-- scsi-SATA_HTS726060M9AT00_MRH453M4HWHG7B-part7 -> ../../sda7 | |-- usb-Generic_STORAGE_DEVICE_02773 -> ../../sdd | `-- usb-Generic_STORAGE_DEVICE_02773-part1 -> ../../sdd1 |-- by-label | |-- Photos -> ../../sdd1 | |-- SUSE10 -> ../../sda7 | `-- devel -> ../../sda6 |-- by-path | |-- pci-0000:00:1f.2-scsi-0:0:0:0 -> ../../sda | |-- pci-0000:00:1f.2-scsi-0:0:0:0-part1 -> ../../sda1 | |-- pci-0000:00:1f.2-scsi-0:0:0:0-part6 -> ../../sda6 | |-- pci-0000:00:1f.2-scsi-0:0:0:0-part7 -> ../../sda7 | |-- pci-0000:00:1f.2-scsi-1:0:0:0 -> ../../sr0 | |-- usb-02773:0:0:2 -> ../../sdd | |-- usb-02773:0:0:2-part1 -> ../../sdd1 `-- by-uuid |-- 159a47a4-e6e6-40be-a757-a629991479ae -> ../../sda7 |-- 3e999973-00c9-4917-9442-b7633bd95b9e -> ../../sda6 `-- 4210-8F8C -> ../../sdd1
266
Referncia
/sbin/hotplug Substitudo pela escuta do udevd do netlink; usado somente no sistema de arquivos RAM inicial at que o sistema de arquivos raiz possa ser montado, em seguida ele desabilitado /dev/* Substitudo pelo contedo esttico e udev dinmico em /lib/udev/devices/ * Os seguintes arquivos e diretrios contm os elementos cruciais da infra-estrutura do udev: /etc/udev/udev.conf Arquivo de configurao principal do udev /etc/udev/rules.d/* regras de correspondncia de evento do udev /lib/udev/devices/* Contedo /dev esttico /lib/udev/* Programas auxiliares chamados de regras do udev
267
udevmonitor Imprime o kernel e a seqncia de eventos do udev para o console. Essa ferramenta usada principalmente para propsitos de depurao.
268
Referncia
13
O Linux suporta diversos sistemas de arquivos. Este captulo apresenta uma breve viso geral sobre os sistemas de arquivos Linux mais populares, abordando conceitos de design, vantagens e campos de aplicao. Tambm so fornecidas algumas informaes adicionais sobre LFS (Large File Support - Suporte a Arquivo Grande) no Linux.
13.1 Terminologia
metadados Uma estrutura de dados interna ao sistema de arquivos que assegura que todos os dados de um disco sejam organizados adequadamente e de forma acessvel. Essencialmente, tratam-se de dados sobre os dados. Quase todo sistema de arquivos tem sua prpria estrutura de metadados, razo pela qual os sistemas de arquivos exibem diferentes caractersticas de desempenho. extremamente importante manter os metadados intactos, caso contrrio todos os dados do sistema de arquivos podem se tornar inacessveis. inode Inodes contm vrias informaes sobre um arquivo, incluindo tamanho, nmero de links, data e horrio da criao, da modificao e do acesso, e indicadores para os blocos de disco em que o contedo do arquivo est armazenado no momento. dirio No contexto de um sistema de arquivos, o dirio uma estrutura em disco que contm um tipo de registro em que o sistema de arquivos armazena o que est prestes a ser modificado em seus metadados. Os dirios reduzem imensamente o
269
tempo de recuperao de um sistema Linux, pois eles tornam obsoleto o extenso processo de pesquisa que verifica todo o sistema de arquivos na inicializao do sistema. Em vez disso, somente o dirio reproduzido.
13.2.1 ReiserFS
Oficialmente um dos recursos mais importantes da verso 2.4 do kernel, o ReiserFS tornou-se disponvel como um patch para kernels SUSE 2.2 x desde a verso 6.4 do SUSE Linux. O ReiserFS foi criado por Hans Reiser e pela equipe de desenvolvimento da Namesys. Ele provou ser uma alternativa robusta ao Ext2. Seus bens mais importantes
270
Referncia
so a melhor utilizao do espao em disco, o melhor desempenho do acesso ao disco e uma recuperao de falhas mais rpida. Os pontos fortes do ReiserFS, em mais detalhes, so: Melhor utilizao do espao em disco No ReiserFS, todos os dados so organizados em uma estrutura chamada rvore equilibrada (B*- tree). A estrutura de rvore contribui para uma melhor utilizao do espao em disco, pois arquivos pequenos podem ser armazenados diretamente nos ns da folha da rvore equilibrada B*, em vez de serem armazenados em outro local e simplesmente manterem um indicador no local do disco. Alm disso, o armazenamento no alocado em pacotes de 1 ou 4 kB, mas em pores do tamanho exato necessrio. Uma outra vantagem est na alocao dinmica de inodes. Ela mantm o sistema de arquivos mais flexvel do que os sistemas de arquivos tradicionais, como Ext2, em que a densidade do inode deve ser especificada no momento da criao do sistema de arquivos. Melhor desempenho do acesso ao disco Para arquivos pequenos, os respectivos dados e as informaes (inode) stat_data so sempre armazenados lado a lado. Eles podem ser lidos com uma simples operao E/S de disco, o que quer dizer que necessrio somente um acesso ao disco para recuperar todas as informaes necessrias. Rpida recuperao de falhas A utilizao de um dirio para controlar as mudanas de metadados recentes faz com que a verificao de um sistema de arquivos leve segundos, mesmo no caso dos muito grandes. Confiabilidade por meio do registro dos dados em dirio O ReiserFS tambm suporta o registro de dados em dirio e modos de dados ordenados similares aos conceitos realados na seo Ext3, Seo 13.2.3, Ext3 (p 272). O modo padro data=ordered, que garante a integridade dos dados e dos metadados, mas usa o registro de dados em dirio somente para metadados.
13.2.2 Ext2
A origem do Ext2 remonta ao incio da histria do Linux. Seu predecessor, o Extended File System, foi implementado em abril de 1992 e integrado ao Linux 0.96c. O Extended File System passou por uma srie de modificaes e, como o Ext2, tornou-se o sistema
271
de arquivos Linux mais popular por muitos anos. Com a criao dos sistemas de arquivos com registro em dirio e seus surpreendentes e curtos tempos de recuperao, o Ext2 ficou menos importante. Um breve resumo dos pontos fortes do Ext2 podem ajudar a mostrar por que ele foi, e ainda em algumas reas, o sistema de arquivos Linux favorito de muitos usurios. Solidez Por ser um veterano, o Ext2 passou por vrias melhorias e foi bastante testado. Esta pode ser a razo para as pessoas sempre se referirem a ele como "slido como uma pedra". Depois de uma falha no sistema em que o sistema de arquivos no pode ser desmontado inteiramente, o e2fsck comea a analisar os dados do sistema de arquivos. Os metadados so levados a um estado consistente e os arquivos pendentes ou blocos de dados so gravados em um diretrio designado (chamado lost+found). Em contraste com os sistemas de arquivos de registro em dirio, o e2fsck analisa todo o sistema de arquivos e no somente os bits de metadados modificados recentemente. Esse procedimento demora muito mais do que a verificao dos dados de registro de um sistema de arquivos com registro em dirio. Dependendo do tamanho do sistema de arquivos, ele pode levar meia hora ou mais. Portanto, no desejvel optar pelo Ext2 em servidores que precisem de grande disponibilidade. No entanto, como o Ext2 no mantm um dirio e usa muito menos memria, algumas vezes ele mais rpido do que outros sistemas de arquivos. Fcil capacidade de upgrade O cdigo do Ext2 a base slida sobre a qual o Ext3 poderia se tornar um sistema de arquivos de ltima gerao amplamente aclamado. Sua confiabilidade e solidez foram combinadas de forma elegante com as vantagens de um sistema de arquivos de registro em dirio.
13.2.3 Ext3
O Ext3 foi criado por Stephen Tweedie. Diferentemente de todos os sistemas de arquivos de ltima gerao, o Ext3 no segue totalmente um princpio de design novo. Ele baseado no Ext2. Esses dois sistemas de arquivos tm uma relao muito prxima. Um sistema de arquivos Ext3 pode ser facilmente criado sobre um sistema de arquivos Ext2. A diferena mais importante entre o Ext2 e o Ext3 que o Ext3 suporta o registro em dirio. Em resumo, o Ext3 tem trs grandes vantagens a oferecer:
272
Referncia
Upgrades do Ext2 fceis e altamente confiveis. Como o Ext3 baseado no cdigo do Ext2 e compartilha seu formato em disco, bem como seu formato de metadados, as atualizaes do Ext2 para o Ext3 so incrivelmente fceis. Ao contrrio de transies para outros sistemas de arquivos de registro em dirio, como o ReiserFS ou XFS, que podem ser bastante tediosas (fazer backup de todo o sistema e recri-lo de um rascunho), a transio para o Ext3 uma questo de minutos. Ela tambm muito segura, pois a recriao de um sistema de arquivos inteiro de um rascunho pode no ser perfeita. Considerando o nmero de sistemas Ext2 existentes que aguardam um upgrade para um sistema de arquivos de registro em dirio, voc pode imaginar facilmente por que o Ext3 pode ter alguma importncia para vrios administradores de sistema. O downgrade do Ext3 para o Ext2 to fcil quanto o upgrade. Simplesmente execute uma desmontagem completa do sistema de arquivos Ext3 e remonte-o como um sistema de arquivos Ext2. Confiabilidade e desempenho Alguns outros sistemas de arquivos de registro em dirio seguem a abordagem de registro em dirio de Apenas Metadados. Isso significa que seus metadados so sempre mantidos em um estado consistente, mas o mesmo no pode ser garantido automaticamente para os prprios dados do sistema de arquivos. O Ext 3 foi criado para cuidar dos dados e dos metadados. O grau de cuidado pode ser personalizado. Habilitar o Ext3 no modo data=journal oferece segurana mxima (integridade de dados), mas tambm deixa o sistema mais lento, pois os dados e os metadados so registrados em dirio. Uma abordagem relativamente nova usar o modo data=ordered, que garante a integridade dos dados e metadados, mas usa o registro em dirio apenas para metadados. O driver do sistema de arquivos coleta todos os blocos de dados que correspondem a uma atualizao de metadados. Esses blocos de dados so gravados em disco antes da atualizao dos metadados. Como resultado, obtm-se consistncia para dados e metadados sem sacrificar o desempenho. Uma terceira opo usar o data=writeback, para que os dados sejam gravados no mesmo sistema de arquivos depois que seus metadados forem confirmados no dirio. Essa opo sempre considerada a melhor em desempenho. Contudo, ela pode permitir que dados antigos surjam novamente nos arquivos depois de uma falha e recuperao, enquanto a integridade do sistema do arquivo mantida. A menos que voc especifique de forma diferente, o Ext3 ser executado no modo data=ordered por padro.
273
13.2.5 Reiser4
Logo depois que o kernel 2.6 foi lanado, a famlia de sistemas de arquivos com registro em dirio recebeu outro membro: o Reiser4. O Reiser4 fundamentalmente diferente de seu predecessor, o ReiserFS (verso 3.6). Ele apresenta o conceito de plug-ins para ajustar a funcionalidade do sistema de arquivos e um conceito de segurana mais refinado. Conceito de segurana refinado Na criao do Reiser4, seus desenvolvedores enfatizaram a implementao de recursos relevantes de segurana. Portanto, o Reiser4 contm um conjunto de plugins de segurana dedicados. O mais importante deles apresenta o conceito de itens de arquivo. Atualmente, os controles de acesso a arquivos so definidos por arquivo. Se existe um arquivo grande contendo informaes relevantes para vrios usurios,
274
Referncia
grupos ou aplicativos, os direitos de acesso devem ser razoavelmente imprecisos para incluir todas as partes envolvidas. No Reiser4, possvel dividir esses arquivos em partes menores (os itens). Os direitos de acesso podem ento ser definidos para cada item e cada usurio separadamente, permitindo um gerenciamento de segurana de arquivos muito mais preciso. Um exemplo perfeito seria /etc/ passwd. Atualmente, somente os usurios root podem ler e editar o arquivo, enquanto os no-root s obtm acesso de leitura a esse arquivo. Usando o conceito de item do Reiser4, voc pode dividir esse arquivo em um conjunto de itens (um item por usurio) e permitir que os usurios ou aplicativos modifiquem seus prprios dados, mas sem acessar os dados de outros usurios. Esse conceito aumenta a segurana e flexibilidade. Extensibilidade por meio de plug-ins Muitas funes do sistema de arquivos e funes externas normalmente usadas por um sistema de arquivos so implementadas como plug-ins no Reiser4. Esses plugins podem ser facilmente adicionados ao sistema bsico. Voc no precisa mais compilar o kernel ou reformatar o disco rgido para adicionar novas funcionalidades ao sistema de arquivos. Melhor layout do sistema de arquivos por meio de alocao atrasada Assim como o XFS, o Reiser4 suporta a alocao atrasada. Consulte a Seo 13.2.6, XFS (p 275). A utilizao da alocao atrasada, at mesmo para metadados, pode resultar em um melhor layout geral.
13.2.6 XFS
Com inteno original de ser um sistema de arquivos para o sistema operacional IRIX, a SGI iniciou o desenvolvimento do XFS no comeo de 1990. A idia por trs do XFS era criar um sistema de arquivos de registro em dirio de 64 bits de alto desempenho para atender aos altos desafios de computao de hoje. O XFS muito bom na manipulao de arquivos grandes e tem bom desempenho em hardware de ponta. Entretanto, at mesmo o XFS tem uma desvantagem. Assim como o ReiserFS, o XFS cuida bastante da integridade dos metadados, mas nem tanto da integridade dos dados. Uma rpida anlise dos recursos fundamentais do XFS explica por que ele pode ser um forte concorrente para outros sistemas de arquivos de registro em dirio em computao de ponta.
275
Alta escalabilidade por meio do uso de grupos de alocao No momento de criao de um sistema de arquivos XFS, o dispositivo de bloco subjacente ao sistema de arquivos dividido em oito ou mais regies lineares do mesmo tamanho. Elas so denominadas grupos de alocao. Cada grupo de alocao gerencia seus prprios inodes e espaos liberados em disco. Praticamente, os grupos de alocao podem ser vistos como sistemas de arquivos dentro de um sistema de arquivos. Como grupos de alocao so independentes uns dos outros, mais de um pode ser abordado pelo kernel ao mesmo tempo. Esse recurso a chave da grande escalabilidade do XFS. Naturalmente, o conceito de grupos de alocao independente corresponde s necessidades dos sistemas com multiprocessadores. Alto desempenho por meio de um eficiente gerenciamento de espao em disco O espao em disco e os inodes so controlados por rvores equilibradas B+ dentro dos grupos de alocao. O uso de rvores equilibradas B+ contribui muito para o desempenho e a escalabilidade do XFS. O XFs usa a alocao atrasada. Ele lida com a alocao dividindo o processo em duas partes. Uma transao pendente armazenada em RAM e o espao necessrio reservado. O XFS ainda no decide exatamente onde (tratando-se do bloco do sistema de arquivos) os dados devem ser armazenados. Essa deciso atrasada at o ltimo momento possvel. Alguns dados temporrios de vida curta talvez nunca cheguem no disco, pois podem ficar obsoletos devido ao tempo que o XFS leva para decidir onde grav-los. Portanto, o XFS aumenta o desempenho de gravao e reduz a fragmentao do sistema de arquivos. Como a alocao atrasada resulta em eventos de gravao menos freqentes do que em outros sistemas de arquivos, provvel que a perda de dados depois de uma falha durante a gravao seja mais severa. Pr-alocao para evitar a fragmentao do sistema de arquivos Antes de gravar os dados no sistema de arquivos, o XFS reserva (pr-aloca) o espao livre necessrio para um arquivo. Portanto, a fragmentao do sistema de arquivos amplamente reduzida. O desempenho aumenta porque o contedo dos arquivos no distribudo em todo o sistema de arquivos.
276
Referncia
garantir a compatibilidade e o intercmbio de dados com diferentes tipos de mdia de sistemas operacionais estrangeiros. Tabela 13.1 cramfs Tipos de sistema de arquivos no Linux Sistema de arquivos ROM compactado: um sistema de arquivos compactados apenas leitura para ROMs. Sistema de arquivos de alto desempenho: o sistema de arquivos padro da IBM OS/2 suportado no modo apenas leitura. Sistema de arquivos padro em CD-ROMs. Este sistema de arquivos foi originado de projetos acadmicos em sistemas operacionais e foi o primeiro usado no Linux. Atualmente, ele usado como um sistema de arquivos para disquetes. fat, o sistema de arquivos originariamente usado por DOS, hoje usado por vrios sistemas operacionais. Sistema de arquivos para montagem de volumes Novell em redes. Sistema de arquivos de rede: os dados podem ser armazenados em qualquer mquina em uma rede, e o acesso pode ser concedido via rede. O Bloco de Mensagens do Servidor usado por produtos como o Windows para permitir o acesso a arquivos em uma rede. Usado no SCO UNIX, no Xenix e no Coherent (sistemas UNIX comerciais para PCs). Usado por BSD, SunOS e NeXTstep. Suportado somente no modo apenas leitura. UNIX em MS-DOS: aplicado sobre um sistema de arquivos fat normal, atinge a funcionalidade UNIX (permisses, links, nomes longos de arquivos) criando arquivos especiais.
hpfs
iso9660 minix
msdos
ncpfs nfs
smbfs
sysv
ufs
umsdos
277
vfat
Virtual FAT: extenso do sistema de arquivos fat (suporta nomes longos de arquivos). Sistema de arquivos do Windows NT, apenas leitura.
ntfs
Sistema de arquivos
Ext2 ou Ext3 (tamanho do bloco de 1 kB) Ext2 ou Ext3 (tamanho do bloco de 2 kB) Ext2 ou Ext3 (tamanho do bloco de 4 kB)
Ext2 ou Ext3 (tamanho do bloco 246 (64 TB) de 8 kB) (sistemas com pginas de 8 kB, como o Alpha)
278
Referncia
Sistema de arquivos
Tamanho do arquivo (bytes) 246 (64 TB) 263 (8 EB) 231 (2 GB) 263 (8 EB)
Tamanho do sistema de arquivos (bytes) 245 (32 TB) 263 (8 EB) 263 (8 EB) 263 (8 EB)
IMPORTANTE: Limites de kernel do Linux A Tabela 13.2, Tamanhos mximos de sistemas de arquivos (formato no disco) (p 278) descreve as limitaes com relao ao formato no disco. O kernel 2.6 impe seus prprios limites ao tamanho dos arquivos e aos sistemas de arquivos gerenciados por ele. Os limites so os seguintes: Tamanho do arquivo Em sistemas de 32 bits, os arquivos no podem exceder o tamanho de 2 41 TB (2 bytes). Tamanho do sistema de arquivos 73 Os sistemas de arquivos podem ter at 2 de tamanho. Entretanto, esse limite ainda est fora do alcance para o hardware disponvel atualmente.
279
http://oss.software.ibm.com/developerworks/opensource/ jfs/ http://oss.sgi.com/projects/xfs/ Um tutorial abrangente e multiparte sobre os sistemas de arquivos Linux pode ser encontrado em IBM developerWorks: http://www-106.ibm.com/ developerworks/library/l-fs.html. Para obter uma comparao dos diferentes sistemas de arquivos de registro em dirio no Linux, consulte o artigo de Juan I. Santos Florido em Linuxgazette: http://www.linuxgazette.com/ issue55/florido.html. Os interessados em uma anlise mais aprofundada do LFS no Linux podem acessar o site de Andreas Jaeger: http://www.suse.de/ ~aj/linux_lfs.html.
280
Referncia
O sistema X Window
14
O sistema X Window (X11) o padro de fato para interfaces grficas de usurio no UNIX. O X baseado em rede, permitindo que aplicativos iniciados em um host sejam exibidos em outro host conectado em qualquer tipo de rede (LAN ou Internet). Este captulo descreve a configurao e a otimizao do ambiente do sistema X Window, fornece informaes de base sobre o uso de fontes no SUSE Linux e explica a configurao do OpenGL e 3D. O texto a seguir contm diversas referncias para a documentao que pode ser encontrada em /usr/share/doc/packages/Xorg e /usr/share/doc/ howto/en. Esse material, junto com as respectivas pginas de manual, s estar disponvel se os pacotes de documentao estiverem instalados (xorg-x11-doc, xorg-x11-man e howtoenh).
O sistema X Window
281
Na barra de navegao esquerda, h seis itens, cada um mostrando a caixa de dilogo de configurao respectiva do centro de controle do YaST. Encontre as sees mencionadas abaixo no Captulo Configurao do sistema com YaST (Inicializao). Monitor Para obter uma descrio da configurao da placa de vdeo e o monitor, consulte a Seo Propriedades da Placa e do Monitor (Captulo 2, Configurao do sistema com YaST, Inicializao). Mouse Para obter uma descrio da configurao do mouse no ambiente grfico, consulte a Seo Propriedades do Mouse (Captulo 2, Configurao do sistema com YaST, Inicializao). Teclado Para obter uma descrio da configurao do teclado no ambiente grfico, consulte a Seo Propriedades do Teclado (Captulo 2, Configurao do sistema com YaST, Inicializao).
282
Referncia
Mesa Para obter uma descrio da configurao da mesa grfica, consulte a Seo Propriedades da mesa digitalizadora (Captulo 2, Configurao do sistema com YaST, Inicializao). Tela sensvel ao toque Para obter uma descrio da configurao da tela sensvel ao toque, consulte a Seo Propriedades da Tela Sensvel ao Toque (Captulo 2, Configurao do sistema com YaST, Inicializao). VNC Para obter uma descrio da configurao de VNC, consulte a Seo Propriedades do Acesso Remoto (Captulo 2, Configurao do sistema com YaST, Inicializao).
O sistema X Window
283
Os programas SaX2 e xorgconfig criam o arquivo xorg.conf, por padro no /etc/ X11. Esse o arquivo de configurao principal para o sistema X Window. A seguir esto todas as configuraes referentes ao monitor, ao mouse e placa de vdeo. As sees a seguir descrevem a estrutura do arquivo de configurao /etc/X11/ xorg.conf. Ela consiste em vrias sees, cada uma delas referente a um determinado aspecto da configurao. Cada seo se inicia com a palavra-chave Section <designation> e termina com EndSection. As sees tm o seguinte formato:
Section designation entry 1 entry 2 entry n EndSection
Os tipos de seo disponveis esto listados na Tabela 14.1, Sees em /etc/X11/xorg.conf (p 284). Tabela 14.1 Tipo Files Sees em /etc/X11/xorg.conf Significado Esta seo descreve os caminhos usados por fontes e a tabela de cores RGB. Switches gerais so definidos aqui. Dispositivos de entrada, como teclados e dispositivos de entrada especiais (touchpads, joysticks, etc.), so configurados nesta seo. Parmetros importantes nesta seo so Driver e as opes que definem o Protocol e o Device. Descreve o monitor usado. Os elementos individuais desta seo so o nome, que referenciado posteriormente na definio de Screen, a bandwidth e os limites de freqncia de sincronizao (HorizSync e VertRefresh). As configuraes so fornecidas em MHz, kHz e Hz. Normalmente, o servidor recusa qualquer linha modelo que no corresponda especificao do monitor. Isso evita que freqncias muito altas sejam enviadas ao monitor por acidente.
ServerFlags InputDevice
Monitor
284
Referncia
Tipo Modes
Significado Os parmetros da linha modelo so armazenados aqui para resolues de tela especficas. Esses parmetros podem ser calculados por SaX2 com base nos valores fornecidos pelo usurio e, normalmente, no precisam ser modificados. Intervenha manualmente neste ponto se, por exemplo, quiser conectar um monitor de freqncia fixa. H detalhes sobre o significado de valores numricos individuais nos arquivos HOWTO /usr/share/doc/howto/en/html/ XFree86-Video-Timings-HOWTO. Esta seo define uma placa de vdeo especfica. Ela referenciada por seu nome descritivo. Esta seo junta um Monitor e um Device para formar todas as configuraes necessrias para X.Org. Na subseo Display, especifique o tamanho da tela virtual (Virtual), a ViewPort e os Modes usados com esta tela.
Device
Screen
ServerLayout Esta seo define o layout de uma configurao nica ou multihead. Esta seo junta os dispositivos de entrada InputDevice e os dispositivos de exibio Screen. Monitor, Device e Screen so explicados em mais detalhes abaixo. Mais informaes sobre as outras sees podem ser encontradas nas pginas de manual de X.Org e xorg.conf. H vrias sees Monitor e Device diferentes em xorg.conf. Mesmo vrias sees Screen so possveis. A seo ServerLayout a seguir determina qual usada.
O sistema X Window
285
A linha Identifier (aqui Screen[0]) fornece a esta seo um nome definido com o qual pode ser exclusivamente referenciado na seguinte seo ServerLayout. As linhas Device e Monitor especificam a placa de vdeo e o monitor que pertence a esta definio. Estes so links s sees Device e Monitor com seus nomes correspondentes ou identificadores. Estas sees so abordadas em detalhes abaixo. Use a configurao DefaultDepth para selecionar a intensidade de cor que o servidor deve usar a menos que seja iniciado com uma intensidade de cor especfica. H uma subseo Display para cada intensidade de cor. A palavra-chave Depth atribui a intensidade de cor vlida para essa subseo. Valores possveis para Depth so 8, 15, 16 e 24. Nem todos os mdulos do servidor X suportam esses valores. Aps a intensidade de cor, uma lista de resolues definida na seo Modes. O servidor X verifica essa lista da esquerda para a direita. Para cada resoluo, o servidor X procura uma Modeline adequada na seo Modes. A Modeline depende da capacidade do monitor e da placa de vdeo. As configuraes de Monitor determinam a Modeline resultante. A primeira resoluo encontrada o Default mode. Com Ctrl + Alt + + (no teclado numrico), alterne para a resoluo seguinte na lista direita. Com Ctrl + Alt
286
Referncia
+ (no teclado numrico), alterne para a esquerda. Isso permite a voc variar a resoluo enquanto o X est sendo executado. A ltima linha da subseo Display com Depth 16 refere-se ao tamanho da tela virtual. O tamanho mximo possvel de uma tela virtual depende da quantidade de memria instalada na placa de vdeo e a intensidade de cor desejada, no a resoluo mxima do monitor. Como placas de vdeo modernas tm uma grande quantidade de memria de vdeo, voc pode criar reas de trabalho virtuais bem grandes. Porm, voc talvez no seja mais capaz de usar a funcionalidade de 3D se preencher a maior parte da memria de vdeo com uma rea de trabalho virtual. Se a placa tem 16 MB de memria RAM de vdeo, por exemplo, a tela virtual pode ser de at 4096x4096 pixels em tamanho com intensidade de cor de 8 bits. Porm, principalmente para placas aceleradas, no recomendvel usar toda a memria para a tela virtual, pois a memria na placa tambm usada para vrios caches de vdeo e fontes.
Se voc usar SaX2 para a configurao, a seo de dispositivo dever ter a aparncia semelhante do exemplo acima. Ambos o Driver e o BusID so dependentes do hardware instalado no seu computador e so detectados pelo SaX2 automaticamente. O BusID define o slot PCI ou AGP no qual a placa de vdeo est instalada. Isso corresponde ao ID exibido pelo comando lspci. O servidor X precisa de detalhes no formato decimal, mas o lspci os exibe no formato hexadecimal.
O sistema X Window
287
Com o parmetro Driver, especifique o driver a ser usado para esta placa de vdeo. Se a placa for Matrox Millennium, o mdulo do driver ser chamado mga. Em seguida, o servidor X pesquisa atravs do ModulePath definido na seo Files no subdiretrio drivers. Em uma instalao padro, este o diretrio /usr/X11R6/ lib/modules/drivers. _drv.o ser adicionado ao nome, por isso, no caso do driver mga, o arquivo de driver mga_drv.o ser carregado. O comportamento do servidor X ou do driver tambm pode ser influenciado atravs de opes adicionais. Um exemplo disso a opo sw_cursor, definida na seo de dispositivo. Isso desativa o cursor do mouse do hardware e mostra o cursor do mouse usando o software. Dependendo do mdulo do driver, h vrias opes disponveis, que podem ser encontradas nos arquivos de descrio dos mdulos do driver no diretrio /usr/X11R6/lib/X11/doc. Em geral, opes vlidas tambm podem ser encontradas nas pginas de manual (man xorg.conf e man X.Org).
288
Referncia
A especificao manual de linhas modelo raramente exigida atualmente. Se voc est usando um monitor multisync moderno, as freqncias permitidas e as resolues timas podem, como regra, serem lidas do monitor pelo servidor X atravs de DDC, como descrito na seo de configurao do SaX2. Se isso no for possvel por algum motivo, use um dos modos VESA includos no servidor X. Isso funcionar com praticamente todas as combinaes de monitor e placa de vdeo.
O sistema X Window
289
contm pelo menos os glifos necessrios para idiomas europeus (anteriormente codificado como iso-8859-*).
14.3.2 Xft
Desde o incio, os programadores do Xft certificaram-se de que as fontes escalveis, incluindo as de antialiasing, tivessem suporte adequado. Se o Xft for usado, as fontes sero exibidas pelo aplicativo usando as fontes, no pelo servidor X como no sistema de fontes central X11. Desta forma, o respectivo aplicativo tem acesso aos arquivos de fontes reais e controle total sobre como os glifos so exibidos. Isso constitui a base para a exibio correta do texto em vrios idiomas. Acesso direto aos arquivos de fontes bastante til para embutir fontes para impresso para certificar-se de que a impresso tem a mesma aparncia da sada da tela. No SUSE Linux, os dois ambientes de rea de trabalho do KDE e do GNOME, Mozilla, e vrios outros aplicativos j usam o Xft por padro. O Xft j usado por mais aplicativos do que o sistema de fontes central X11 antigo. O Xft usa a biblioteca fontconfig para localizar fontes e influenciar como elas so exibidas. As propriedades de fontconfig so controladas pelo arquivo de configurao global /etc/fonts/fonts.conf e o arquivo de configurao especfico ao usurio ~/.fonts.conf. Cada um destes arquivos de configurao fontconfig deve iniciar com
<?xml version="1.0"?> <!DOCTYPE fontconfig SYSTEM "fonts.dtd"> <fontconfig>
e terminar com
</fontconfig>
Para adicionar diretrios para pesquisar fontes, acrescente linhas como as seguintes:
<dir>/usr/local/share/fonts/</dir>
Porm, isso geralmente no necessrio. Por padro, o diretrio especfico ao usurio ~/.fonts j est inserido em /etc/fonts/fonts.conf. Da mesma maneira, tudo o que voc precisa fazer para instalar fontes adicionais copi-las para ~/.fonts. Voc tambm pode inserir regras que influenciam a aparncia das fontes. Por exemplo, digite
O sistema X Window
291
para desabilitar o antialiasing para fontes especficas. Por padro, a maioria dos aplicativos usa os nomes de fontes sans-serif (ou o equivalente sans), serif ou monospace. Estas no so fontes reais, mas somente alis que so resolvidos para uma fonte adequada, dependendo da configurao de idioma. Usurios podem facilmente adicionar regras para ~/.fonts.conf a fim de resolver esses alias para suas fontes favoritas:
<alias> <family>sans-serif</family> <prefer> <family>FreeSans</family> </prefer> </alias> <alias> <family>serif</family> <prefer> <family>FreeSerif</family> </prefer> </alias> <alias> <family>monospace</family> <prefer> <family>FreeMono</family> </prefer> </alias>
Como quase todos os aplicativos usam esses alias por padro, isso afeta praticamente todo o sistema. Desta forma, voc pode facilmente usar suas fontes favoritas praticamente
292
Referncia
em qualquer local sem precisar modificar as configuraes de fontes nos aplicativos individuais. Use o comando fc-list para encontrar as fontes instaladas e disponveis para uso. Por exemplo, o comando fc-list retorna uma lista de todas as fontes. Para descobrir quais das fontes escalveis disponveis (:scalable=true) contm todos os glifos exigidos para hebraico (:lang=he), os nomes de fontes (family), o estilo (style), o peso (weight) e o nome dos arquivos que contm as fontes, digite o seguinte comando:
fc-list ":lang=he:scalable=true" family style weight
FreeSansBold.ttf: FreeSans:style=Bold:weight=200 FreeMonoBoldOblique.ttf: FreeMono:style=BoldOblique:weight=200 FreeSerif.ttf: FreeSerif:style=Medium:weight=80 FreeSerifBoldItalic.ttf: FreeSerif:style=BoldItalic:weight=200 FreeSansOblique.ttf: FreeSans:style=Oblique:weight=80 FreeSerifItalic.ttf: FreeSerif:style=Italic:weight=80 FreeMonoOblique.ttf: FreeMono:style=Oblique:weight=80 FreeMono.ttf: FreeMono:style=Medium:weight=80 FreeSans.ttf: FreeSans:style=Medium:weight=80 FreeSerifBold.ttf: FreeSerif:style=Bold:weight=200 FreeSansBoldOblique.ttf: FreeSans:style=BoldOblique:weight=200 FreeMonoBold.ttf: FreeMono:style=Bold:weight=200
Parmetros importantes podem ser consultados com fc-list: Tabela 14.2 Parmetro family foundry style Parmetros de fc-list Significado e valores possveis Nome da famlia da fonte, por exemplo, FreeSans. Nome do fabricante da fonte, por exemplo, urw. O estilo da fonte, como Medium, Regular, Bold, Italic ou Heavy. O idioma que a fonte suporta, por exemplo, de para alemo, ja para japons, zh-TW para chins tradicional ou zh-CN para chins simplificado.
lang
O sistema X Window
293
Significado e valores possveis O peso da fonte, como 80 para normal ou 200 para negrito. A inclinao, geralmente 0 para nenhum e 100 para itlico. O nome do arquivo contendo a fonte. true para fontes de bordas ou false para outras fontes. true para fontes escalveis ou false para outras fontes. true para fontes de bitmap ou false para outras fontes. Tamanho de fonte em pixels. Em conexo com a fc-list, esta opo s faz sentido para fontes de bitmap.
294
Referncia
DRI
O sistema X Window
295
296
Referncia
O sistema X Window
297
15
299
O servidor executado de acordo com as configuraes padro existentes em /etc/nxserver/node.conf. Qualquer usurio pode se conectar remotamente de qualquer estao de trabalho. Para informar-se sobre a configurao avanada do servidor NX, consulte a Seo 15.2, Configurao avanada do FreeNX (p 302). Se voc preferir uma configurao mais segura com chaves privadas distribudas para cada cliente, consulte as instrues contidas na Seo 15.2.1, Configurando a autenticao SSH com chaves do cliente (p 302). 3 Configure o firewall na mquina que hospeda o servidor NX para permitir conexes do NX. a Efetue login na mquina servidor como Root e inicie o mdulo de firewall do YaST. b Selecione Servios Permitidos para acessar a caixa de dilogo de configurao do servio e selecione Zona Externa. c Selecione Avanado para especificar detalhes de porta do NX. d Abra as portas 22 (SSH), 5000 a 5009, e 7000 a 7009 para aceitar trfego do NX. Para fazer isso, especifique o seguinte nas portas TCP:
22 5000:5009 7000:7009
DICA Para obter informaes detalhadas sobre a configurao de firewall para o NX, consulte /usr/share/doc/packages/FreeNX/NX-Firewall.txt. Para conectar-se remotamente a outra estao de trabalho e usar o KDE como sua opo de desktop, proceda da seguinte maneira: 1 Inicie o KNX no menu principal.
300
Referncia
2 No primeiro login, voc precisar criar uma nova conexo. Para criar uma conexo, faa o seguinte: a Em Login de Cliente do KNX, clique em Configuraes de Conexo. b Digite um nome para a conexo; por exemplo, o nome do servidor. c Especifique as informaes de host, o nmero da porta e a largura de banda da conexo. d Em Tipo de Sesso, selecione UNIX/KDE para iniciar uma sesso do KDE. e Selecione uma resoluo de tela. f Clique em OK. 3 Depois que voc se conectar e a conexo remota aparecer na tela, voc poder acessar aplicativos e usar o computador remoto como se estivesse em frente a ele. Para conectar-se remotamente a outra mquina que execute o GNOME como sua opo de desktop, proceda da seguinte maneira: 1 Faa o download do pacote nxclient do NoMachine atravs de http://www .nomachine.com/download_client_linux.php e instale-o. 2 Inicie o Assistente para Conexo do NX no menu principal. 3 Em trs etapas, digite o nome da conexo, detalhes da porta e do host, e o tipo de conexo, selecione o tipo de sesso Unix/Gnome, decida se criar um atalho na rea de trabalho e clique em Concluir. 4 Para conectar-se ao desktop remoto, clique no atalho do NX na rea de trabalho e informe o nome de usurio e a senha. Em seguida, clique em OK. A rea de trabalho remota aparece na sua tela.
301
5 Efetue logout.
302
Referncia
Para configurar o knx para usar essa chave, proceda da seguinte maneira: 1 Na mquina servidor, efetue login como Root. 2 Copie o arquivo de chave para o local na mquina cliente necessrio ao knx; substitua cliente pelo endereo do cliente.
scp /var/lib/nxserver/home/.ssh/client.id_dsa.key cliente:/usr/share/knx/
3 Efetue login na mquina cliente como Root. 4 Ajuste as permisses de acesso da seguinte maneira:
chmod 644 /usr/share/knx/client.id_dsa.key
5 Efetue logout.
303
3 Grave uma cpia do arquivo de configurao do servidor NX (node.conf) em joe.node.conf no mesmo diretrio. 4 Edite os parmetros apropriados (NODE_AUTOSTART e ENABLE_AUTORECONNECT) em joe.node.conf. Para obter detalhes sobre esses recursos, consulte a Seo 15.2.5, Configurando tarefas de auto-incio e exportando configuraes (p 305) e a Seo 15.2.4, Suspendendo e reiniciando sesses do NX (p 305). 5 Reinstale o servidor NX para ativar a nova configurao:
nxsetup --install --clean --purge --setup-nomachine-key
304
Referncia
3 Grave o arquivo de configurao, saia e reinicie o servidor com nxserver --restart. 4 Efetue logout. Para suspender uma sesso ao sair, clique no X no canto superior direito da janela do NX e selecione Suspender para suspender a sesso e sair do cliente. Na reconexo, voc dever informar se deseja reiniciar a sesso antiga ou iniciar uma nova.
305
1 Efetue login como Root na mquina servidor. 2 Abra o arquivo de configurao do servidor /etc/nxserver/node.conf e edite a varivel NODE_AUTOSTART da maneira descrita abaixo, onde meuprograma deve ser substitudo pelo programa a ser executado no incio ou reincio de uma sesso do NX:
NODE_AUTOSTART=meuprograma
3 Grave e saia do arquivo de configurao. 4 Reinicie o servidor com o comando nxserver --restart e efetue logout. O programa especificado ser iniciado toda vez que uma sesso for iniciada ou reiniciada. Voc tambm pode exportar as variveis NX_USERIP e NX_SESSIONID para que possam ser acessadas no ambiente do usurio. Com isso, possvel, por exemplo, colocar um cone na rea de trabalho com o contedo genrico e acessar um servidor Samba em execuo no thin client do usurio. Para que o contedo de um disquete na unidade de disquete do thin client fique disposio do usurio, proceda da seguinte maneira: 1 Habilite a exportao das variveis NX_USERIP e NX_SESSIONID no servidor: a Efetue login como Root no servidor. b Abra o /etc/nxserver/node.conf de configurao do servidor e defina as seguintes variveis:
EXPORT_USERIP="1" EXPORT_SESSIONID="1"
c Grave o arquivo de configurao do servidor, saia e reinicie o servidor com o comando nxserver --restart. d Efetue logout. 2 No cliente, abra uma sesso, exporte a unidade de disquete atravs de SMB e crie um cone na rea de trabalho:
306
Referncia
a Use o seu gerenciador de arquivos (Nautilus ou Konqueror) para exportar o contedo da unidade de disquete com o Samba. b Crie um arquivo floppy.desktop no diretrio Desktop e inclua a seguinte linha:
Exec=smb://$NX_USERIP/floppy
O servidor exporta o endereo IP do thin client, permitindo assim que voc tenha acesso unidade de disquete do thin client com o cone de disquete na sesso do NX.
c Reinicie o servidor externo para aplicar a configurao alterada com o comando nxserver --restart e efetue logout. Toda conexo de entrada ser encaminhada ao servidor interno.
307
3 Grave esse arquivo e reinicie o servidor FreeNX com o comando nserver --restart. 4 Efetue logout. Para conectar-se ao servidor NoMachine, use as credenciais padro de nome de usurio e senha. Para conectar-se ao servidor FreeNX, use freenx. como prefixo do nome de usurio normal (por exemplo, freenx.joedoe) e use a senha normal.
308
Referncia
Para determinar por que isso ocorre e como o problema pode ser solucionado, proceda da seguinte maneira: 1 Verifique se o Novell AppArmor est em execuo na mquina servidor e proceda como descrito na Seo 15.3.2, No possvel estabelecer conexo com o servidor NX (p 310). 2 Tente restabelecer uma conexo entre o knx e o servidor. 3 Verifique se o firewall do cliente permite trfego SSH. Para isso, inicie o mdulo de firewall do YaST e verifique se o SSH est entre os Servios Permitidos da Zona Externa. Habilite o SSH caso ele ainda no esteja habilitado. 4 No firewall do servidor, verifique se o SSH e as portas NX esto relacionadas na Seo 15.1, Noes bsicas do NX (p 299). Abra essas portas se tiverem sido fechadas. 5 Tente restabelecer uma conexo entre o knx e o servidor. 6 Efetue login no servidor como Root e proceda da seguinte maneira: a Especifique o diretrio /tmp e procure arquivos de bloqueio no servidor NX:
cd / ls -ltr .nX*
b Se houver algum desses antigos arquivos de bloqueio, remova-os. c Efetue logout. 7 Tente restabelecer uma conexo entre o knx e o servidor. 8 Na mquina cliente, apague e reinstale o cliente do knx usando o mdulo de gerenciamento de software do YaST. Se voc seguiu as instrues acima, agora poder se conectar.
309
Para determinar a origem desse problema, proceda da seguinte maneira: 1 Efetue login no servidor como Root. 2 Verifique se na sada do comando dmesg existe uma entrada como esta:
SubDomain: REJECTING r access to /var/lib/nxserver/home/.ssh/authorized_keys2 (sshd(31247) profile /usr/sbin/sshd active /usr/sbin/sshd)
Essa entrada indica que o Novell AppArmor em execuo no servidor no permite que o daemon ssh acesse alguns arquivos especficos do NX. 3 Interrompa o AppArmor na mquina servidor ou Coloque o perfil sshd no modo de aprendizado e adicione permisses ao perfil existente para ter acesso aos arquivos do NX. Essas informaes so fornecidas com mais detalhes no Guia de Administrao do Novell AppArmor 2.0. 4 Reconecte-se ao servidor.
310
Referncia
Ainda no foi possvel estabelecer conexo com o proxy remoto. Deseja encerrar a sesso?
A conexo falhou porque as portas superiores usadas na negociao da sesso remota do NX no foram abertas no firewall do servidor. Para ajustar as configuraes do firewall no servidor, proceda como descrito na Seo 15.1, Noes bsicas do NX (p 299).
311
16
O Linux usa o PAM (Pluggable Authentication Modules) no processo de autenticao como uma camada mediadora entre o usurio e o aplicativo. Como os mdulos PAM esto disponveis em todo o sistema, eles podem ser solicitados por qualquer aplicativo. Este captulo descreve o funcionamento e a configurao do mecanismo de autenticao modular. Os programadores e administradores do sistema muitas vezes desejam restringir o acesso a certas partes do sistema ou limitar o uso de certas funes de um aplicativo. Sem o PAM, os aplicativos precisam ser adaptados toda vez que introduzido um novo mecanismo de autenticao, como o LDAP ou o SAMBA. Entretanto, esse processo bastante demorado e propenso a erros. Uma forma de evitar essas desvantagens separar os aplicativos do mecanismo de autenticao e delegar a autenticao a mdulos gerenciados centralmente. Sempre que um esquema de autenticao passa a ser necessrio, basta adaptar ou gravar um mdulo PAM adequado para ser usado pelo programa em questo. Todo programa baseado no mecanismo PAM tem um arquivo de configurao prprio no diretrio /etc/pam.d/programname. Esses arquivos definem os mdulos PAM usados para a autenticao. Alm disso, existem arquivos de configurao globais para a maioria dos mdulos PAM em /etc/security, que definem o exato comportamento desses mdulos (alguns exemplos so pam_env.conf, pam _pwcheck.conf, pam_unix2.conf e time.conf). Todo aplicativo que usa um mdulo PAM na realidade chama um conjunto de funes do PAM que, em seguida, processa as informaes nos diversos arquivos de configurao e apresenta o resultado ao aplicativo que chamou.
313
Os mdulos PAM so processados como pilhas. Diferentes tipos de mdulos servem a diferentes objetivos. Por exemplo, um mdulo verifica a senha, outro verifica a localizao de onde o sistema est sendo acessado e outro l configuraes especficas ao usurio. O PAM tem conhecimento sobre quatro tipos diferentes de mdulos: autenticao O objetivo desse tipo de mdulo verificar a autenticidade do usurio. Essa verificao tradicionalmente feita por meio de uma consulta a senha, mas tambm pode ser realizada com a ajuda de um carto com chip ou de biometria (impresses digitais ou leitura da ris). account (conta) Os mdulos desse tipo verificam se o usurio possui uma permisso geral para usar o servio solicitado. A ttulo de exemplo, essa verificao deve ser realizada para assegurar que ningum seja capaz de efetuar o login com o nome de usurio de uma conta vencida. password (senha) O objetivo desse tipo de mdulo permitir a mudana de um token de autenticao. Na maioria dos casos, trata-se de uma senha. session (sesso) Os mdulos desse tipo so responsveis pelo gerenciamento e configurao de sesses de usurios. Eles so iniciados antes e depois da autenticao para registrar tentativas de login em registros do sistema e para configurar o ambiente especfico do usurio (contas de e-mail, diretrio pessoal, limites do sistema etc.). A segunda coluna contm flags de controle para influenciar o comportamento dos mdulos iniciados: required (obrigatrio) Um mdulo com esse flag precisa ser processado com xito para que a autenticao possa prosseguir. Aps a falha de um mdulo com o flag required (obrigatrio), 314 Referncia
todos os outros mdulos com o mesmo flag sero processados antes que o usurio receba uma mensagem sobre a falha da tentativa de autenticao. requisite (necessrio) Os mdulos com esse flag tambm precisam ser processados com xito, de modo bastante semelhante ao mdulo com o flag required (obrigatrio). Contudo, em caso de falha, um mdulo com esse flag d um retorno imediato ao usurio e os mdulos restantes deixam de ser processados. Em caso de xito, os outros mdulos so processados, exatamente como qualquer mdulo com o flag required (obrigatrio). O flag requisite (necessrio) pode ser usado como um filtro bsico para verificar a existncia de determinadas condies essenciais para a correta autenticao. sufficient (suficiente) Aps o processamento com xito de um mdulo com esse flag, o aplicativo que chamou recebe imediatamente uma mensagem sobre o xito e o processamento dos mdulos interrompido, exceto quando houver falhas anteriores em um mdulo com o flag required (obrigatrio). A falha de um mdulo com o flag sufficient (suficiente) no traz conseqncias diretas, com os mdulos subseqentes sendo processados na sua respectiva ordem. optional (opcional) A falha ou xito de um mdulo com esse flag no traz conseqncias diretas. Isso pode ser til no caso de mdulos cujo nico propsito exibir uma mensagem (por exemplo, informar ao usurio sobre a chegada de e-mails) sem executar nenhuma ao adicional. include (incluir) Quando esse flag dado, o arquivo especificado como argumento inserido nesse lugar. O caminho do mdulo no precisa ser explicitado, contanto que o mdulo fique localizado no diretrio padro /lib/security (para todas as plataformas de 64 bits suportadas pelo SUSE Linux, o diretrio /lib64/security). A quarta coluna pode conter uma opo para o mdulo especfico, como debug (permite a depurao) ou nullok (permite o uso de senhas vazias).
315
A configurao PAM tpica de um aplicativo (sshd, nesse caso) contm quatro instrues include (incluir) referentes aos arquivos de configurao de quatro tipos de mdulo: common-auth, common-account, common-password e common-session. Esses quatro arquivos abrigam a configurao padro de cada tipo de mdulo. Ao inclulos em vez de chamar cada mdulo separadamente para cada aplicativo do PAM, ser possvel obter automaticamente uma configurao PAM atualizada se o administrador mudar os padres. Antigamente, era necessrio fazer o ajuste manual de todos os arquivos de configurao para todos os aplicativos quando ocorriam mudanas no PAM ou quando um novo aplicativo era instalado. Agora, a configurao PAM feita com arquivos de configurao centrais e todas as mudanas so automaticamente herdadas pela configurao PAM de cada servio. O primeiro arquivo includo (common-auth) chama dois mdulos do tipo auth (autenticao): pam_env e pam_unix2. Consulte o Exemplo 16.2, Configurao padro da seo auth (autenticao) (p 316). Exemplo 16.2 Configurao padro da seo auth (autenticao)
auth auth required required pam_env.so pam_unix2.so
O primeiro, pam_env, carrega o arquivo /etc/security/pam_env.conf para definir as variveis de ambiente conforme especificado nesse arquivo. Esse mdulo pode ser usado para definir o valor correto da varivel DISPLAY, pois o mdulo pam _env tem conhecimento do local de onde o login est sendo feito. O segundo, pam _unix2, compara o login e a senha do usurio a /etc/passwd e /etc/shadow.
316
Referncia
Depois da chamada com xito dos mdulos especificados em common-auth, um terceiro mdulo chamado pam_nologin verifica se o arquivo /etc/nologin existe. Em caso afirmativo, somente o usurio root poder efetuar o login. A pilha inteira de mdulos auth (autenticao) processada antes que o sshd receba qualquer retorno sobre o xito do login. Tendo em vista que todos os mdulos da pilha apresentam o flag de controle required (obrigatrio), todos precisam ser processados com xito antes que o sshd receba uma mensagem sobre o resultado positivo. Se algum dos mdulos falhar, a pilha de mdulos inteira ainda ser processada e somente a que o sshd ser notificado sobre o resultado negativo. Logo aps o processamento com xito de todos os mdulos do tipo auth (autenticao), outra instruo include (incluir) processada. Nesse caso, a que est no Exemplo 16.3, Configurao padro da seo account (conta) (p 317). O common-account contm apenas um mdulo, o pam_unix2. Se o pam_unix2 retornar o resultado de que o usurio existe, o sshd receber uma mensagem de xito e a prxima pilha de mdulos (password - senha) ser processada, conforme mostrado no Exemplo 16.4, Configurao padro da seo password (senha) (p 317). Exemplo 16.3 Configurao padro da seo account (conta)
account required pam_unix2.so
Mais uma vez, a configurao PAM do sshd envolve apenas uma instruo include (incluir) referente configurao padro dos mdulos password (senha) localizados em common-password. Esses mdulos precisam ser concludos com xito (flag de controle required - obrigatrio) sempre que o aplicativo solicita a mudana de um token de autenticao. A mudana de uma senha ou de outro token de autenticao requer uma verificao de segurana. Essa ao possibilitada pelo mdulo pam _pwcheck. O mdulo pam_unix2 usado posteriormente vem com quaisquer senhas antigas e novas do mdulo pam_pwcheck, de modo que o usurio no precise autenticar novamente. Isso tambm torna impossvel driblar as verificaes realizadas pelo pam_pwcheck. Os mdulos do tipo password (senha) devem ser usados sempre que os mdulos precedentes do tipo account (conta) ou auth (autenticao) so configurados para fazer uma queixa sobre uma senha vencida.
317
Na etapa final, os mdulos do tipo session (sesso), integrados no arquivo common-session, so chamados para configurar a sesso de acordo com as configuraes do usurio em questo. Embora o pam_unix2 seja processado novamente, no h conseqncias prticas devido opo none (nenhum) especificada no respectivo arquivo de configurao desse mdulo, o pam_unix2.conf. O mdulo pam_limits carrega o arquivo /etc/security/limits.conf, que pode definir limites sobre o uso de certos recursos do sistema. Os mdulos session (sesso) so chamados uma segunda vez quando o usurio efetua logout.
16.3.1 pam_unix2.conf
O mtodo tradicional de autenticao baseada em senha controlado pelo mdulo PAM pam_unix2. Ele consegue ler os dados necessrios de /etc/passwd, /etc/ shadow, mapas NIS, tabelas NIS+ ou um banco de dados LDAP. Para influenciar o comportamento desse mdulo, configure as opes de PAM do aplicativo em si ou efetue uma mudana global editando /etc/security/pam_unix2.conf. Um arquivo de configurao do mdulo bastante bsico mostrado no Exemplo 16.6, pam_unix2.conf (p 318). Exemplo 16.6 pam_unix2.conf
auth: nullok account: password: session:
nullok none
A opo nullok para os tipos de mdulo auth (autenticao) e password (senha) especifica que senhas vazias so permitidas para o tipo de conta correspondente. Os
318
Referncia
usurios tambm tm permisso para mudar as senhas de suas contas. A opo none (nenhum) do tipo de mdulo session (sesso) especifica que nenhuma mensagem foi registrada em seu nome (esse o padro). Obtenha mais informaes sobre opes adicionais de configurao nos comentrios do prprio arquivo e na pgina pam_unix2(8) do manual.
16.3.2 pam_env.conf
Esse arquivo pode ser usado para definir um ambiente padronizado para os usurios que ser definido sempre que o mdulo pam_env for chamado. Com ele, predefina variveis de ambiente usando a seguinte sintaxe:
VARIVEL [DEFAULT=[valor]] [OVERRIDE=[valor]]
VARIVEL Nome da varivel de ambiente a ser definida. [DEFAULT=[valor]] Valor padro que o administrador deseja definir. [OVERRIDE=[valor]] Os valores que podem ser usados para consulta e definidos por pam_env, substituindo o valor padro. Um exemplo tpico de como o mdulo pam_env pode ser usado a adaptao da varivel DISPLAY, que mudada sempre que ocorre um login remoto. Voc pode ver isso no Exemplo 16.7, pam_env.conf (p 319). Exemplo 16.7 pam_env.conf
REMOTEHOST DISPLAY DEFAULT=localhost OVERRIDE=@{PAM_RHOST} DEFAULT=${REMOTEHOST}:0.0 OVERRIDE=${DISPLAY}
A primeira linha define o valor da varivel REMOTEHOST para o localhost, que usada sempre que pam_env no puder determinar qualquer outro valor. A varivel DISPLAY, por sua vez, contm o valor de REMOTEHOST. Mais informaes podem ser encontradas nos comentrios do arquivo /etc/security/pam_env.conf.
319
16.3.3 pam_pwcheck.conf
Esse arquivo de configurao se destina ao mdulo pam_pwcheck, que l opes dele para todos os mdulos do tipo password (senha). As configuraes armazenadas nesse arquivo tm prioridade sobre as configuraes PAM de um aplicativo individual. Se configuraes especficas a um aplicativo no tiverem sido definidas, o aplicativo usar as configuraes globais. Exemplo 16.8, pam_pwcheck.conf (p 320) instrui o mdulo pam_pwcheck a permitir senhas vazias e a modificao de senhas. Mais opes para o mdulo so citadas no arquivo /etc/security/pam_pwcheck .conf. Exemplo 16.8 pam_pwcheck.conf
password: nullok
16.3.4 limits.conf
Os limites do sistema podem ser definidos para um usurio ou para um grupo no arquivo limits.conf, que lido pelo mdulo pam_limits. O arquivo permite a definio de limites fixos, que no podem ser excedidos em hiptese alguma, e limites flexveis, que podem ser excedidos temporariamente. Para obter informaes sobre a sintaxe e as opes disponveis, leia os comentrios contidos no arquivo.
320
Referncia
arquivos de configurao at os aspectos de segurana do PAM. O documento est disponvel em formato PDF, HTML e como texto simples. The Linux-PAM Module Writers' Manual (Manual do Elaborador de Mdulos LinuxPAM) Esse documento sintetiza esse tpico do ponto de vista do desenvolvedor, com informaes sobre como elaborar mdulos PAM em conformidade com os padres. O documento est disponvel em formato PDF, HTML e como texto simples. The Linux-PAM Application Developers' Guide (Guia do Desenvolvedor de Aplicativos Linux-PAM) Esse documento contm todas as informaes necessrias a um desenvolvedor de aplicativos que queira usar as bibliotecas PAM. O documento est disponvel em formato PDF, HTML e como texto simples. Thorsten Kukuk desenvolveu uma srie de mdulos PAM para o SUSE Linux e disponibilizou algumas informaes a esse respeito em http://www.suse.de/ ~kukuk/pam/.
321
17
O Xen torna possvel executar vrios sistemas Linux em uma mquina fsica. O hardware para os sistemas diferentes fornecido virtualmente. Este captulo fornece uma viso geral das possibilidades e limitaes desta tecnologia. As sees sobre instalao, configurao e execuo do Xen completam essa introduo. Mquinas virtuais comumente precisam emular o hardware que o sistema precisa. A desvantagem que o hardware emulado mais lento do que o silcio real. O Xen tem uma abordagem diferente. Ele restringe a emulao para o mnimo de partes possvel. Para obter isso, o Xen usa a paravirtualizao. Esta uma tcnica que apresenta mquinas virtuais similarmente, mas no identicamente ao hardware subjacente. Portanto, os sistemas operacionais de host e convidados esto adaptados no nvel do kernel. O espao do usurio permanece inalterado. O Xen controla o hardware com um hypervisor e um convidado de controle, tambm chamado Domain-0. Eles fornecem todos os dispositivos de rede e blocos virtualizados necessrios. Os sistemas convidados usam esses dispositivos de rede e blocos virtuais para executar o sistema e conectar-se a outros convidados ou rede local. Quando vrias mquinas fsicas executando o Xen so configuradas de forma que os dispositivos e rede e os blocos virtuais estejam disponveis, tambm possvel migrar um sistema convidado de um equipamento de hardware para outro enquanto ele est em execuo. Originalmente o Xen foi desenvolvido para executar at 100 sistemas convidados em um computador, mas esse nmero depende bastante dos requisitos de sistema dos sistemas convidados em execuo, especialmente o consumo de memria. Para limitar o uso de CPU, o hypervisor do Xen oferece trs programadores diferentes. O programador tambm pode ser mudado durante a execuo do sistema convidado, tornando possvel mudar a prioridade da execuo do sistema convidado. Em um nvel
323
mais alto, migrar um convidado tambm pode ser usado para ajustar a energia do CPU disponvel. O sistema de virtualizao do Xen tambm tem algumas desvantagens relativas ao hardware suportado. Vrios drivers de cdigo-fonte fechado, como os da Nvidia ou ATI, no funcionam como esperado. Nesses casos, voc deve usar os drivers de cdigofonte aberto se disponveis, mesmo que eles no suportem as capacidades totais dos chips. Alm disso, vrios chips de WLAN e pontes Cardbus no so suportados durante o uso do Xen. Na verso 2, o Xen no suporta PAE (extenso de endereo fsico), significando que ele no suporta mais do que 4 GB de memria. A ACPI no suportada. O gerenciamento de energia e outros modos que dependem da ACPI no funcionam. Outra limitao do Xen que atualmente no possvel somente inicializar um dispositivo de bloco. Para inicializar, sempre necessrio ter o kernel correto e o initrd disponvel no Domain-0. Figura 17.1 Viso geral do Xen
Management Application
Management Host OS
userspace applications
Service Guest OS
userspace applications
Service Guest OS
userspace applications
Linux Kernel
(paravirtualized)
Linux Kernel
(paravirtualized)
NetWare Kernel
(paravirtualized)
IO
CPU
Memory
324
Referncia
Substitua (hd0,0) pela partio que mantm o seu diretrio /boot. Consulte tambm o Captulo 9, O Carregador de Boot (p 201). Substitua <parameters> pelos parmetros normalmente usados para inicializar um kernel do Linux. Em seguida, reinicialize no modo Xen. Isso inicializa o hypervisor do Xen e um kernel do Linux levemente modificado como Domain-0 que executa a maioria do hardware. Alm das excees j mencionadas, tudo deve funcionar normalmente.
325
Sistema operacional O sistema operacional que deve ser usado para instalar o domnio convidado. Esse sistema selecionado na Fonte de Instalao do mdulo YaST e no pode ser definido nesse fluxo de trabalho. Rede Somente a rede em pontes suportada por esse mdulo. Adicione o nmero de placas de rede virtuais necessrias. A caixa de dilogo seguinte inicia o sistema de instalao aps executar vrias tarefas de configurao. Esse sistema idntico a uma instalao padro no modo de texto conforme descrito na Seo YaST em modo de texto (Captulo 2, Configurao do sistema com YaST, Inicializao). Se voc precisar mudar a configurao de um domnio convidado, deve fazer isso diretamente no arquivo de configurao. Esse arquivo est localizado em /etc/xen e tem um nome idntico ao nome do domnio convidado.
326
Referncia
xm console ID
xm mem-set ID Mem Defina o tamanho da memria do domnio com o ID ID para Mem em MB. xm create domname Inicie o domnio com o arquivo de configurao domname. O -c opcional vincula o terminal atual ao [-c] primeiro tty do novo convidado. xm shutdown ID Realize um encerramento normal do convidado com o ID ID. Termine o convidado com ID ID imediatamente. Imprima uma lista de todos os domnios em execuo com o ID respectivo, a memria e os valores de tempo de CPU. Exiba informaes sobre o host do Xen, incluindo informaes de memria e CPU.
xm destroy ID xm list
xm info
O DHCP no obtm os endereos IP. O DHCP precisa de vrios mdulos de kernel iptables para ser executado. Os mdulos no foram instalados ou voc atualizou o kernel e esqueceu de atualizar os mdulos de kernel no sistema convidado. H um problema na inicializao do hypervisor e as mensagens desaparecem com muita rapidez Conecte a sua mquina Xen a outra estao de trabalho com um cabo nullmodem serial. Em seguida, no lado do Xen, adicione o seguinte parmetro linha
kernel (hd0,0)/boot/xen.gz com1=115200,8n1
Antes de inicializar o Xen, inicie um programa de terminal na estao de trabalho. Como um exemplo, isso pode ser
screen /dev/ttyS0 115200
328
Referncia
Parte 4. Servios
Rede bsica
18
O Linux oferece os recursos e as ferramentas de rede necessrios para a integrao em todos os tipos de estruturas de rede. O protocolo Linux comum, TCP/IP, possui vrios servios e recursos especiais abordados aqui. O acesso rede atravs de placa de rede, modem ou outro dispositivo pode ser configurado com o YaST. A configurao tambm pode ser feita manualmente. Somente os mecanismos fundamentais e os arquivos de configurao de rede relevantes sero discutidos neste captulo. Linux e outros sistemas operacionais Unix usam o protocolo TCP/IP. No um protocolo de rede nico, mas uma famlia de protocolos de rede que oferece vrios servios. Os protocolos listados na Tabela 18.1, Vrios protocolos na famlia de protocolos TCP/IP (p 332) so fornecidos com a finalidade de trocar dados entre duas mquinas atravs do TCP/IP. As redes combinadas por TCP/IP compem uma rede mundial tambm chamada de Internet. RFC significa Request for Comments. Os RFCs so documentos que descrevem vrios procedimentos de implementao e protocolos da Internet para o sistema operacional e seus aplicativos. Os documentos RFC descrevem a configurao dos protocolos da Internet. Para ampliar seu conhecimento sobre qualquer dos protocolos, consulte os documentos de RFC apropriados. Eles esto disponveis online em http://www .ietf.org/rfc.html.
Rede bsica
331
Vrios protocolos na famlia de protocolos TCP/IP Descrio Protocolo de controle de transmisso: um protocolo seguro orientado por conexo. Os dados a serem transmitidos so primeiramente enviados pelo aplicativo como um fluxo de dados. Depois, so convertidos pelo sistema operacional no formato apropriado. Os dados chegam ao respectivo aplicativo no host de destino no formato do fluxo de dados original no qual foram inicialmente enviados. O TCP determina se algum dado foi perdido durante a transmisso e se no foram misturados. O TCP implementado onde a seqncia de dados for necessria. UDP: um protocolo inseguro, sem conexo. Os dados a serem transmitidos so enviados na forma de pacotes gerados pelo aplicativo. A ordem em que os dados chegam ao destinatrio no garantida e eles podem ser perdidos. O UDP adequado para aplicativos orientados por registro. Ele possui um perodo de latncia menor que o TCP. ICMP: essencialmente, no um protocolo para o usurio final, mas um protocolo de controle especial que emite relatrios de erros e pode controlar o comportamento de mquinas que participam da transferncia de dados TCP/IP. Alm disso, ele fornece um modo de eco especial, que pode ser visualizado usando o programa ping. IGMP: este protocolo controla o comportamento da mquina durante o multicast IP.
UDP
ICMP
IGMP
Conforme mostrado na Figura 18.1, Modelo de camadas simplificado para TCP/IP (p 333), a troca de dados ocorre em camadas diferentes. A camada de rede real a transferncia de dados insegura por IP. Acima do IP, o TCP garante, at certo ponto, a segurana na transferncia de dados. A camada IP suportada pelo protocolo dependente de hardware subjacente, como uma ethernet.
332
Referncia
Application Layer
Applications
Application Layer
Transport Layer
TCP, UDP
Transport Layer
Network Layer
IP
Network Layer
Physical Layer
Cable, Fiberglass
Physical Layer
Data Transfer
O diagrama fornece um ou dois exemplos para cada camada. As camadas so organizadas de acordo com os nveis de abstrao. A camada mais baixa fica muito prxima do hardware. A camada mais alta quase completamente abstrada do hardware. Todas as camadas possuem suas funes especiais prprias. As funes especiais de cada camada, na maioria das vezes, esto implcitas em suas descries. O link de dados e as camadas fsicas representam a rede fsica usada, como uma ethernet. Quase todos os protocolos de hardware funcionam em uma base orientada por pacotes. Os dados a serem transmitidos so fornecidos em pacotes, pois no podem ser enviados todos de uma vez. O tamanho mximo de um pacote TCP/IP de, aproximadamente, 64 KB. Os pacotes so normalmente um pouco menores, pois o hardware da rede pode ser um fator de limitao. O tamanho mximo de um pacote de dados em uma ethernet em torno de 1.500 bytes. O tamanho de um pacote TCP/IP limita-se a esse mximo quando os dados so enviados por uma ethernet. Se mais dados forem transferidos, mais pacotes de dados precisaro ser enviados pelo sistema operacional. Para que as camadas executem suas respectivas funes, informaes adicionais referentes a cada uma delas devem ser gravadas no pacote de dados. Isso ocorre no cabealho do pacote. Todas as camadas anexam um pequeno bloco de dados, chamado cabealho do protocolo, frente de cada pacote emergente. Um exemplo de um pacote de dados TCP/IP transmitido por um cabo ethernet exibido na Figura 18.2, Pacote
Rede bsica
333
Ethernet TCP/IP (p 334). A soma de teste est localizada no final do pacote e no no incio. Isso torna as coisas mais simples para o hardware de rede. Figura 18.2 Pacote Ethernet TCP/IP
Quando um aplicativo envia dados por uma rede, eles passam por cada camada, todas implementadas no kernel do Linux, exceto a camada fsica. Cada camada responsvel pela preparao dos dados, para que eles possam passar para a camada seguinte. A camada mais baixa a responsvel pelo envio de dados. Todo o processo invertido quando os dados so recebidos. Como camadas de uma cebola, em cada uma os cabealhos de protocolo so removidos dos dados transportados. Por fim, a camada de transporte responsvel por disponibilizar os dados para uso pelos aplicativos de destino. Dessa forma, cada camada se comunica somente com a camada diretamente acima ou abaixo dela. Para os aplicativos, relevante se os dados so transmitidos atravs de uma rede FDDI de 100 MBit/s ou de uma linha de modem de 56 kbit/s. Da mesma forma, relevante para a linha de dados os tipos de dados transmitidos, contanto que os pacotes estejam no formato correto.
334
Referncia
18.1.1 Endereos IP
Todo computador na Internet possui um endereo de 32 bits exclusivo. Esses 32 bits (ou 4 bytes) so normalmente gravados conforme ilustrado na segunda linha no Exemplo 18.1, Gravando endereos IP (p 335). Exemplo 18.1 Gravando endereos IP
IP Address (binary): 11000000 10101000 00000000 00010100 IP Address (decimal): 192. 168. 0. 20
Na forma decimal, os quatro bytes so gravados no sistema de nmeros decimais, separados por pontos. O endereo IP designado a um host ou a uma interface de rede. Ele no pode ser usado em nenhum outro lugar no mundo. H excees a essa regra, mas no so relevantes nas passagens a seguir. Os pontos nos endereos IP indicam o sistema hierrquico. At os anos 90, os endereos IP eram estritamente categorizados em classes. Entretanto, esse sistema provou ser excessivamente inflexvel e foi interrompido. Agora, o CIDR (Classless Interdomain Routing - Roteamento Interdomnio sem Classes) usado.
Rede bsica
335
Para compreender como as mscaras de rede funcionam, consulte o Exemplo 18.2, Vinculando endereos IP mscara de rede (p 336). A mscara de rede consiste em 32 bits que identificam quanto de um endereo IP pertence rede. Todos os bits 1 marcam o bit correspondente no endereo IP como pertencente rede. Todos os bits 0 marcam os bits dentro da sub-rede. Isso significa que quanto maior a quantidade de bits 1, menor ser o tamanho da sub-rede. Como a mscara de rede sempre consiste em vrios bits 1 sucessivos, tambm possvel apenas contar o nmero de bits da mscara de rede. No Exemplo 18.2, Vinculando endereos IP mscara de rede (p 336) a primeira rede com 24 bits tambm poderia ser gravada como 192.168.0.0/24. Exemplo 18.2 Vinculando endereos IP mscara de rede
IP address (192.168.0.20): 11000000 10101000 00000000 00010100 Netmask (255.255.255.0): 11111111 11111111 11111111 00000000 --------------------------------------------------------------Result of the link: 11000000 10101000 00000000 00000000 In the decimal system: 192. 168. 0. 0 IP address (213.95.15.200): 11010101 10111111 00001111 11001000 Netmask (255.255.255.0): 11111111 11111111 11111111 00000000 --------------------------------------------------------------Result of the link: 11010101 10111111 00001111 00000000 In the decimal system: 213. 95. 15. 0
Para dar outro exemplo: todas as mquinas conectadas ao mesmo cabo ethernet, normalmente, esto localizadas na mesma sub-rede e so diretamente acessveis. Mesmo quando a sub-rede dividida fisicamente por switches ou pontes, esses hosts ainda assim podem ser diretamente localizados. Endereos IP fora da sub-rede local s podero ser localizados se um gateway for configurado para a rede de destino. Nos casos mais comuns, h somente um gateway que controla todo o trfego externo. Entretanto, tambm possvel configurar vrios gateways para sub-redes diferentes. Se um gateway tiver sido configurado, todos os pacotes IP externos sero enviados para o gateway apropriado. Esse gateway tentar ento encaminhar os pacotes da mesma forma (de host para host) at acessar o host de destino ou at o TTL (time to live) do pacote expirar.
336
Referncia
Tabela 18.2
Tipo de endereo
Endereo de rede de Essa a mscara de rede E qualquer endereo na rede, base conforme mostrado no Exemplo 18.2, Vinculando endereos IP mscara de rede (p 336) em Resultado. Esse endereo no pode ser designado a nenhum host. Endereo de broadcast Isso significa, basicamente, Acessar todos os hosts nesta subrede. Para gerar isso, a mscara de rede invertida no formato binrio e vinculada ao endereo de rede base com um OU lgico. O exemplo acima resulta, portanto, em 192.168.0.255. Esse endereo no pode ser designado a nenhum host. O endereo 127.0.0.1 designado ao dispositivo loopback em cada host. Uma conexo pode ser configurada em sua prpria mquina com esse endereo.
Host local
Como os endereos IP precisam ser exclusivos em qualquer parte do mundo, no possvel selecionar endereos aleatoriamente. H trs domnios de endereos a serem usados para configurar uma rede baseada em IP privado. Eles no conseguem se conectar ao restante da Internet, pois no podem ser transmitidos atravs dela. Esses domnios de endereo so especificados no RFC 1597 e listados na Tabela 18.3, Domnios de endereos IP privados (p 337). Tabela 18.3 Domnios de endereos IP privados Domnio 10.x.x.x 172.16.x.x 172.31.x.x 192.168.x.x
Rede bsica
337
18.2.1 Vantagens
A melhoria mais importante e visvel oferecida pelo novo protocolo a expanso enorme do espao disponvel para endereos. Um endereo IPv6 criado com valores de 128
338
Referncia
bits em vez dos 32 bits tradicionais. Ele capaz de fornecer 'quatrilhes' de endereos IP. Entretanto, os endereos IPv6 no diferem de seus antecessores apenas em relao ao comprimento. Tambm possuem uma estrutura interna diferente, que pode conter mais informaes especficas sobre os sistemas e as redes a que pertencem. Leia mais detalhes sobre eles na Seo 18.2.2, Estrutura e tipos de endereos (p 340). A seguir, h uma lista de algumas outras vantagens do novo protocolo: Configurao automtica O IPv6 torna apto o plug and play da rede, o que significa que um sistema recentemente configurado integrado rede (local) sem qualquer configurao manual. O novo host usa seu mecanismo de configurao automtica para derivar seu prprio endereo a partir das informaes disponibilizadas pelos roteadores vizinhos, com base em um protocolo chamado protocolo ND (Neighbor Discovery - Descoberta de Vizinho). Esse mtodo no exige nenhuma interveno por parte do administrador e no h necessidade de manter um servidor central para alocao de endereos; uma vantagem adicional em relao ao IPv4, cuja alocao automtica de endereos exige um servidor DHCP. Mobilidade O IPv6 torna possvel a designao de vrios endereos a uma interface de rede ao mesmo tempo. Isso permite que usurios acessem vrias redes facilmente, o que comparado aos servios de roaming internacionais oferecidos pelas empresas de celulares: quando voc viaja com seu celular, ele automaticamente se conecta a um servio interurbano, assim que entra na rea correspondente. Dessa forma, voc pode ser localizado no mesmo nmero de celular em qualquer lugar e pode fazer ligaes como se estivesse em sua cidade. Comunicao segura Com o IPv4, a segurana da rede uma funo adicional. O IPv6 inclui IPSec como um de seus recursos principais, permitindo que sistemas se comuniquem atravs de um tnel seguro, para evitar a intromisso de estranhos na Internet. Compatibilidade retroativa De forma realista, seria impossvel mudar toda a Internet de IPv4 para IPv6 de uma s vez. Portanto, essencial que ambos os protocolos sejam capazes de coexistir na Internet, mas tambm em um sistema. Isso garantido por endereos compatveis (endereos IPv4 podem facilmente ser convertidos em endereos IPv6) e atravs do uso de vrios tneis. Consulte a Seo 18.2.3, Coexistncia de IPv4 e IPv6 Rede bsica 339
(p 345). Da mesma forma, os sistemas podem se basear em uma tcnica IP de pilha dupla para suportar os dois protocolos ao mesmo tempo, significando que possuem duas pilhas de rede completamente separadas, de tal forma que no h interferncia entre as duas verses de protocolos. Servios adaptados e personalizados atravs de Multicast Com o IPv4, alguns servios, como SMB, precisam transmitir seus pacotes para todos os host na rede local. O IPv6 oferece uma abordagem mais detalhada, permitindo que os servidores enviem hosts atravs de multicast determinando um nmero de hosts como partes de um grupo (o que diferente de direcionar todos os hosts atravs de broadcast ou cada host individualmente atravs de unicast). Os hosts enviados como grupos talvez dependam do aplicativo concreto. possvel enviar todos os servidores de nomes para alguns grupos predefinidos (o grupo multicast de servidores de nomes), por exemplo ou todos os roteadores (o grupo multicast de todos os roteadores).
340
Referncia
rede para se comunicarem com determinados grupos de host de forma bem direcionada. Anycast Endereos desse tipo esto relacionados a um grupo de interfaces. Pacotes com esse tipo de endereo so entregues ao membro do grupo mais prximo do remetente, de acordo com os princpios do protocolo de roteamento subjacente. Endereos anycast so usados para que hosts possam descobrir mais facilmente servidores que oferecem certos servios na rea da rede determinada. Todos os servidores do mesmo tipo possuem o mesmo endereo anycast. Sempre que um host solicita um servio, ele recebe uma resposta do servidor com o local mais prximo, conforme determinado pelo protocolo de roteamento. Caso ocorra alguma falha com esse servidor, o protocolo selecionar automaticamente o segundo servidor mais prximo ou ento o terceiro e assim por diante. Um endereo IPv6 constitudo de oito campos de quatro dgitos, cada um representando 16 bits, gravados em notao hexadecimal. Tambm so separados por dois-pontos (:). Quaisquer zero bytes iniciais em um determinado campo podem ser descartados, mas zeros dentro ou no final do campo no podem ser descartados. Outra conveno a de que mais de quatro zero bytes consecutivos podem retornar como dois-pontos duplos. Entretanto, somente um como :: permitido em cada endereo. Esse tipo de notao reduzida mostrado no Exemplo 18.3, Amostra de endereo IPv6 (p 341), em que todas as trs linhas representam o mesmo endereo. Exemplo 18.3 Amostra de endereo IPv6
fe80 : 0000 : 0000 : 0000 : 0000 : 10 : 1000 : 1a4 fe80 : 0 : 0 : 0 : 0 : 10 : 1000 : 1a4 fe80 : : 10 : 1000 : 1a4
Cada parte de um endereo IPv6 possui uma funo definida. Os primeiros bytes formam o prefixo e especificam o tipo de endereo. A parte central a poro do endereo na rede, mas pode no ser utilizada. O final do endereo forma a parte do host. Com o IPv6, a mscara de rede definida indicando o comprimento do prefixo depois de uma barra no final do endereo. Um endereo, como mostrado no Exemplo 18.4, Endereo IPv6 especificando o comprimento do prefixo (p 342), contm as informaes de que os primeiros 64 bits formam a parte da rede do endereo e que os ltimos 64 formam a parte do host. Em outras palavras, 64 significa que a mscara de rede est preenchida com 64 valores de 1 bit a partir da esquerda. Da mesma forma que o IPv4, o endereo IP combinado com E com os valores da mscara de rede, para determinar se o host est localizado na mesma sub-rede ou em outra.
Rede bsica
341
O IPv6 conhece vrios tipos de prefixos predefinidos. Alguns so mostrados na Tabela 18.4, Vrios prefixos IPv6 (p 342). Tabela 18.4 Prefixo (hex) 00 Vrios prefixos IPv6 Definio Endereos IPv4 e endereos de compatibilidade de IPv4 sobre IPv6. Esses so usados para manter a compatibilidade com IPv4. O seu uso ainda exige um roteador capaz de converter pacotes IPv6 em pacotes IPv4. Vrios endereos especiais, como o do dispositivo loopback, tambm possuem esse prefixo. Endereos unicast globais agregativos. Como no caso do IPv4, uma interface pode ser designada para fazer parte de uma determinada sub-rede. Atualmente, h os seguintes espaos de endereos: 2001::/16 (espao de endereo da qualidade de produo) e 2002::/16 (espao de endereo 6to4). Endereos locais de links. Endereos com esse prefixo no devem ser roteados e, portanto, s devem ser encontrados na mesma subrede. Endereos locais de sites. Esses podem ser roteados, mas somente na rede da organizao a que pertencem. Na verdade, eles so o equivalente IPv6 do espao de endereo de rede privada atual, como 10.x.x.x. Esses so endereos multicast.
fe80::/10
fe80::/10
ff
Um endereo unicast consiste em trs componentes bsicos: Topologia pblica A primeira parte (que tambm contm um dos prefixos mencionados acima) usada para rotear pacotes atravs da Internet pblica. Ela inclui informaes sobre a empresa ou instituio que fornece o acesso Internet.
342
Referncia
Topologia do site A segunda parte contm informaes de roteamento sobre a sub-rede qual o pacote deve ser entregue. ID de interface A terceira parte identifica a interface qual o pacote deve ser entregue. Isso tambm permite que o MAC faa parte do endereo. Como MAC um identificador fixo globalmente exclusivo codificado no dispositivo pelo fabricante do hardware, o procedimento de configurao bastante simplificado. Na verdade, os primeiros 64 bits de endereo so consolidados para formar o token EUI-64, com os ltimos 48 bits obtidos no MAC e os 24 bits restantes contendo informaes especiais sobre o tipo de token. Isso tambm possibilita designar um token EUI-64 a interfaces que no possuem MAC, como aquelas baseadas em PPP ou ISDN. No topo dessa estrutura bsica, o IPv6 faz distino entre cinco tipos de endereos unicast: :: (no especificado) Esse endereo usado pelo host como seu endereo de origem quando a interface inicializada pela primeira vez quando o endereo ainda no pode ser determinado por outros meios. ::1 (loopback) O endereo do dispositivo loopback. Endereos compatveis com o IPv4 O endereo IPv6 formado pelo endereo IPv4 e um prefixo consistindo em 96 zero bits. Esse tipo de endereo de compatibilidade usado para um tnel (consulte a Seo 18.2.3, Coexistncia de IPv4 e IPv6 (p 345)) para permitir que os hosts IPv4 e IPv6 se comuniquem com outros que estejam operando em um ambiente IPv4 puro. Endereos IPv4 mapeados para IPv6 Esse tipo de endereo especifica um endereo IPv4 puro em uma notao IPv6. Endereos locais H dois tipos de endereos para uso local: link-local Esse tipo de endereo s pode ser usado na sub-rede local. Pacotes com endereo de origem ou de destino desse tipo no devem ser roteados para a
Rede bsica
343
Internet nem para outras sub-redes. Esses endereos contm um prefixo especial (fe80::/10) e o ID da interface da placa de rede, com a parte do meio consistindo em zero bytes. Endereos desse tipo so usados durante a configurao automtica para se comunicarem com outros hosts pertencentes mesma sub-rede. site-local Pacotes com esse tipo de endereo podem ser roteados para outras sub-redes, mas no para a Internet mais ampla. Eles precisam permanecer dentro da prpria rede da organizao. Tais endereos so usados para intranets e equivalem ao espao de endereo privado definido pelo IPv4. Eles contm um prefixo especial (fec0::/10), o ID da interface e um campo de 16 bits especificando o ID da sub-rede. Novamente, o restante preenchido com zero bytes. Como um recurso completamente novo, introduzido com o IPv6, cada interface de rede normalmente obtm vrios endereos IP, com a vantagem de que vrias redes podem ser acessadas atravs da mesma interface. Uma dessas redes pode ser totalmente configurada automaticamente usando o MAC e um prefixo conhecido, resultando na possibilidade de todos os hosts na rede local serem encontrados assim que o IPv6 for habilitado (usando o endereo link-local). Com o MAC fazendo parte disso, qualquer endereo IP usado no mundo ser exclusivo. As nicas partes variveis do endereo so aquelas que indicam a topologia do site e a topologia pblica, dependendo da rede real na qual o host estiver operando no momento. Para que um host avance e retroceda entre duas redes diferentes ele precisa de, pelo menos, dois endereos. Um deles, o endereo pessoal, contm no s o ID de interface, como tambm um identificador da rede domstica a que ele normalmente pertence (e o prefixo correspondente). O endereo pessoal um endereo esttico e, portanto, normalmente no se modifica. Mesmo assim, todos os pacotes destinados ao host mvel podem ser entregues a ele, independentemente de ele operar na rede domstica ou em outro local externo. Isso possvel devido aos recursos totalmente novos introduzidos com o IPv6, como configurao automtica sem estado e descoberta de vizinho. Alm do endereo residencial, um host mvel obtm um ou mais endereos adicionais pertencentes s redes interurbanas com roaming. Eles so chamados endereos careof. A rede domstica tem um recurso que encaminha qualquer pacote destinado ao host quando ele est em roaming. Em um ambiente IPv6, essa tarefa executada pelo agente local, que retransmite todos os pacotes destinados ao endereo residencial atravs de um tnel. Por outro lado, esses pacotes destinados ao endereo care-of so diretamente transferidos para o host mvel sem qualquer desvio especial.
344
Referncia
Rede bsica
345
Controlador do tnel IPv6 Esse mtodo se baseia em servidores especiais que fornecem tneis dedicados para hosts IPv6. descrito no RFC 3053. IMPORTANTE: A Iniciativa 6bone Nos principais locais mais estabelecidos da Internet, j existe uma rede globalmente distribuda de sub-redes IPv6 conectadas atravs de tneis. Essa a rede 6bone (http://www.6bone.net), um ambiente de testes IPv6 que pode ser usado por programadores e provedores da Internet que desejam desenvolver e oferecer servios baseados no IPv6, a fim de obter a experincia necessria para implementar o novo protocolo. Mais informaes podem ser encontradas no site desse projeto na Internet.
346
Referncia
http://www.ngnet.it/e/cosa-ipv6.php Uma srie de artigos fornecendo uma introduo explicativa sobre os fundamentos bsicos do IPv6. Um bom manual sobre o tpico. http://www.bieringer.de/linux/IPv6/ Aqui, encontre o Linux IPv6-HOWTO e muitos links relacionados ao tpico. http://www.6bone.net/ Visite esse site se desejar se juntar a uma rede IPv6 com tnel. http://www.ipv6.org/ O ponto de partida para tudo relativo ao IPv6. RFC 2640 Informaes fundamentais do RFC sobre o IPv6. IPv6 Essentials Um livro que descreve todos os aspectos importantes do tpico o IPv6 Essentials de Silvia Hagen (ISBN 0-596-00125-8).
Rede bsica
347
introduzidos em 2000, representando certas esferas de atividades (por exemplo, .info, .name, .museum). No incio da Internet (antes de 1990), o arquivo /etc/hosts era usado para armazenar os nomes de todas as mquinas representadas na Internet. Isso rapidamente se tornou impraticvel, devido ao crescente nmero de computadores conectados Internet. Por essa razo, um banco de dados descentralizado foi desenvolvido para armazenar nomes de hosts de uma forma amplamente distribuda. Esse banco de dados, semelhante ao servidor de nomes, no possui os dados pertencentes a todos os hosts na Internet j disponveis, mas pode encaminhar solicitaes a outros servidores de nomes. A parte superior da hierarquia ocupada pelos servidores de nomes raiz. Esses servidores de nomes raiz gerenciam os domnios de nvel superior e so executados pelo NIC (Network Information Center). Cada servidor de nomes raiz conhece os servidores de nomes responsveis por um determinado domnio de nvel superior. Para obter informaes sobre NICs de domnio superior, v para http://www.internic .net. O DNS pode fazer mais do que apenas resolver nomes de hosts. O servidor de nomes tambm distingue qual host recebe e-mails para um domnio inteiro o MX (servidor de correio). Para sua mquina resolver um endereo IP, ela precisa pelo menos conhecer um servidor de nomes e seu respectivo endereo IP. fcil especificar esse servidor de nomes com a ajuda do YaST. Se voc tiver uma conexo de discagem por modem, talvez no precise nem mesmo configurar um servidor de nomes manualmente. O protocolo de discagem fornece o endereo do servidor de nomes enquanto a conexo efetuada. A configurao de acesso ao servidor de nomes com o SUSE Linux descrita no Captulo 20, Domain Name System (Sistema de Nomes de Domnio) (p 381). O protocolo whois est intimamente relacionado ao DNS. Com esse programa, possvel descobrir rapidamente o responsvel por qualquer domnio especificado.
348
Referncia
arquivos. Para obter uma viso geral detalhada dos aspectos da configurao manual de rede, consulte a Seo 18.6, Configurando uma conexo de rede manualmente (p 362). Durante a instalao, o YaST pode ser usado para configurar automaticamente todas as interfaces detectadas. Hardwares adicionais podem ser configurados em qualquer momento aps sua instalao no sistema. As sees a seguir descrevem a configurao de rede para todos os tipos de conexes de rede suportadas pelo SUSE Linux.
Rede bsica
349
Mdulo de Kernel Nome de Configurao de Hardware especifica o nome do arquivo /etc/ sysconfig/hardware/hwcfg-* que contm as configuraes de hardware da sua placa de rede. Tambm contm o nome do mdulo de kernel adequado, assim como as opes necessrias para inicializar o hardware. Normalmente, o YaST sugere nomes teis para os hardwares PCMCIA e USB. Para outros hardwares, o hwcfg-static-0 costuma funcionar somente se a placa estiver configurada com o nome de configurao 0. Se a placa de rede for um dispositivo PCMCIA ou USB, ative as respectivas caixas de seleo e saia dessa caixa de dilogo com Prximo. Caso contrrio, selecione o modelo da placa de rede em Selecionar da Lista. O YaST selecionar automaticamente o mdulo de kernel adequado para a placa. Clique em Avanar para sair dessa caixa de dilogo. Figura 18.3 Configurao da placa de rede
350
Referncia
As informaes sobre as convenes de nomeao para nomes de configurao esto disponveis na pgina de manual do getcfg(8). Se tiver selecionado Wireless como tipo de dispositivo da interface, configure o modo operacional, o nome da rede (ESSID) e a criptografia na caixa de dilogo seguinte, Configurao de Placa de Rede Wireless. Clique em OK para concluir a configurao da placa. Uma descrio detalhada da configurao de placas WLAN apresentada na Seo 34.1.3, Configurao com o YaST (p 629). Para todos os outros tipos de interface, prossiga com a configurao de endereo de rede: Configurao Automtica de Endereo (via DHCP) Se sua rede incluir um servidor DHCP, voc poder configurar o endereo de rede com segurana de forma automtica. A opo tambm dever ser usada se voc estiver usando uma linha DSL sem IP esttico designado pelo provedor de servios da Internet. Se decidir usar o DHCP, configure os detalhes depois de selecionar Opes do Cliente DHCP. Especifique se o servidor DHCP deve sempre atender a solicitaes de broadcast e permitir o uso por qualquer identificador. Por padro, os servidores DHCP usam o endereo de hardware da placa para identificar uma interface. Se voc tiver uma configurao de host virtual, em que hosts diferentes se comunicam atravs da mesma interface, um identificador ser necessrio para distingui-los. Configurao de endereo esttico Se voc possui um endereo esttico, habilite essa opo. Depois, digite o endereo e a mscara de sub-rede para sua rede. A mscara de sub-rede predefinida deve corresponder aos requisitos de uma rede domstica tpica. Saia dessa caixa de dilogo, selecionando Prximo ou continue a configurar o nome de host, servidor de nomes e detalhes de roteamento (consulte as sees em Servidor DNS (Inicializao) e em Roteamento (Inicializao)). Avanado permite especificar configuraes mais complexas. Em Configuraes Detalhadas, use Controlado pelo Usurio para delegar o controle sobre a placa de rede desde o administrador (root) at o usurio normal. Em operaes mveis, isso permite ao usurio adaptar a mudana de conexes de rede de uma forma mais flexvel, pois ele pode controlar a ativao ou desativao da interface. A MTU (Maximum Transmission Unit - Unidade de Transmisso Mxima) e o tipo de Ativao do Dispositivo tambm podem ser configurados nessa caixa de dilogo.
Rede bsica
351
18.4.2 Modem
No Centro de Controle do YaST, acesse a configurao do modem em Dispositivos de Rede. Se o modem no tiver sido detectado automaticamente, abra a caixa de dilogo e faa uma configurao manual. Na caixa de dilogo aberta, digite a interface qual o modem est conectado em Modem. Figura 18.4 Configurao do modem
Se voc estiver usando um PBX, talvez precise digitar um prefixo de discagem. Normalmente, um zero. Consulte as instrues que acompanham o PBX para descobrir. Selecione tambm se usar a discagem por tom ou pulso, se o alto-falante estar ligado e se o modem aguardar at detectar um tom de discagem. A ltima opo no deve ser habilitada se o modem estiver conectado a um intercmbio. Em Detalhes, configure a taxa de transmisso e as strings de inicializao do modem. Somente mude essas configuraes se seu modem no tiver sido detectado automaticamente ou se ele exigir configuraes especiais para o funcionamento da transmisso de dados. Esse basicamente o caso dos adaptadores do terminal ISDN. Saia dessa caixa de dilogo clicando em OK. Para delegar controle sobre o modem para um usurio normal, sem permisses de root, ative Controlado pelo Usurio. Dessa forma, um usurio sem permisses de administrador poder ativar ou desativar uma interface. Em Dial Prefix Expresso Regular, especifique uma expresso regular. O
352
Referncia
Prefixo de Discagem no KInternet, que pode ser modificado por um usurio normal, precisa corresponder a essa expresso regular. Se esse campo for deixado vazio, o usurio no poder configurar um Prefixo de Discagem diferente sem as permisses de administrador. Na caixa de dilogo a seguir, selecione o ISP (Internet Service Provider - Provedor de Servios da Internet). Para escolher a partir de uma lista de ISPs predefinida operacional em seu pas, selecione Pas. Ou ento, clique em Novo para abrir uma caixa de dilogo em que voc fornecer os dados do seu ISP. Isso inclui um nome para a conexo de discagem e o ISP, assim como o login e a senha fornecidos pelo seu ISP. Habilite Sempre Solicitar Senha para que a senha seja solicitada sempre que voc se conectar. Na ltima caixa de dilogo, especifique as opes de conexo adicionais: Discagem sob Demanda Se voc habilitar a discagem sob demanda, configure, pelo menos, um servidor de nomes. Modificar DNS quando conectado Essa opo habilitada por padro, com o efeito de que o endereo do servidor de nomes atualizado sempre que voc se conectar Internet. Receber DNS automaticamente Se o provedor no transmitir seu servidor de nomes de domnio aps a conexo, desabilite essa opo e digite os dados do DNS manualmente. Modo Estpido Essa opo habilitada por padro. Com ela, prompts de entrada enviados pelo servidor do ISP so ignorados para que no interfiram no processo de conexo. Interface Externa do Firewall e Reiniciar Firewall A seleo dessas opes habilita o SUSEfirewall2, que protege contra ataques externos enquanto voc est conectado Internet. Tempo Ocioso (em segundos) Com essa opo, especifique um perodo de inatividade da rede depois do qual o modem se desconectar automaticamente. Detalhes IP Essa opo abre a caixa de dilogo de configurao de endereo. Se o ISP no designar um endereo IP dinmico ao host, desabilite Endereo IP Dinmico e,
Rede bsica
353
depois, digite o endereo IP local do host e o endereo IP remoto. Pea essa informao ao ISP. Habilite Rota Padro e feche a caixa de dilogo, selecionando OK. Selecionando Prximo, voc retorna caixa de dilogo original, que exibir um resumo da configurao do modem. Feche essa caixa de dilogo com Concluir.
18.4.3 ISDN
Use esse mdulo para configurar uma ou vrias placas ISDN para o seu sistema. Se o YaST no tiver detectado a placa ISDN, selecione-a manualmente. possvel haver vrias Interfaces, mas diversos ISPs podem ser configurados para uma nica interface. Nas caixas de dilogo subseqentes, configure as opes de ISDN necessrias para o funcionamento adequado da placa. Figura 18.5 Configurao ISDN
Na caixa de dilogo a seguir, mostrada na Figura 18.5, Configurao ISDN (p 354), selecione o protocolo a ser usado. O padro Euro-ISDN (EDSS1), mas para intercmbios mais antigos ou maiores, selecione 1TR6. Se voc estiver nos E.U.A., selecione NI1. Selecione seu pas no campo relevante. O cdigo de pas correspondente aparecer no campo prximo a ele. Por fim, fornea seu Cdigo de rea e o Prefixo de Discagem, se necessrio. 354 Referncia
Modo de Incio define como a interface do ISDN deve ser iniciada: Em Tempo de Boot inicializa o driver do ISDN sempre que o sistema for inicializado. Manualmente exige que voc carregue o driver do ISDN como root com o comando rcisdn start. Em Hotplug, usado para dispositivos PCMCIA ou USB, carrega o driver depois que o dispositivo conectado. Ao concluir essas configuraes, selecione OK. Na caixa de dilogo a seguir, especifique o tipo de interface para a placa ISDN e adicione ISPs a uma interface existente. As interfaces podem ser do tipo SyncPPP ou RawIP, mas a maioria dos ISPs opera no modo SyncPPP, descrito abaixo. Figura 18.6 Configurao da interface ISDN
O nmero a ser digitado para Meu Nmero Telefnico depender da sua configurao especfica: Placa ISDN conectada diretamente sada do fone Uma linha ISDN padro fornece trs nmeros telefnicos (chamados MSNs ou multiple subscriber numbers). Se o assinante pediu mais nmeros, poder ter at 10. Um desses MSNs precisa ser digitado aqui, mas sem o cdigo de rea. Se voc digitar o nmero errado, o operador de fone retornar automaticamente ao primeiro MSN designado sua linha ISDN. Placa ISDN conectada a um PBX Novamente, a configurao poder variar de acordo com o equipamento instalado:
Rede bsica
355
1.
PBX menores, criados para fins domsticos, normalmente usam o protocolo Euro-ISDN (EDSS1) para chamadas internas. Esses intercmbios possuem um barramento S0 interno e usam nmeros internos para o equipamento conectado a eles. Use um dos nmeros internos como o seu MSN. Voc deveria usar, pelo menos, um dos MSNs de intercmbio habilitados para discagem direta para fora. Se no funcionar, tente um nico zero. Para obter mais informaes, consulte a documentao que acompanha o intercmbio do fone.
2.
Intercmbios de fone maiores criados para negcios normalmente usam o protocolo 1TR6 para chamadas internas. Seus MSNs so chamados EAZ e, geralmente, correspondem ao nmero de discagem direta. Para a configurao no Linux, dever ser suficiente digitar o ltimo dgito de EAZ. Como ltima opo, tente cada um dos dgitos de 1 a 9.
Para que a conexo seja encerrada pouco antes de terminar a prxima unidade de carga, habilite ChargeHUP. Entretanto, lembre-se de que talvez no funcione com todos os ISPs. Voc tambm pode habilitar o agrupamento de canais (multilink PPP) selecionando a opo correspondente. Por fim, voc pode habilitar o SuSEfirewall2 para o link selecionando Interface Externa do Firewall e Reiniciar Firewall. Para que o usurio normal sem permisses de administrador possa ativar ou desativar a interface, selecione a opo Controlado pelo Usurio. Detalhes abre uma caixa de dilogo em que se implementa esquemas de conexo mais complexos, pouco relevantes para usurios domsticos. Saia da caixa de dilogo Detalhes selecionando OK. Na caixa de dilogo seguinte, configure endereos IP. Se o provedor no tiver fornecido um IP esttico, selecione Endereo IP Dinmico. Caso contrrio, use os campos fornecidos para digitar o endereo IP local e o remoto do seu host, de acordo com as especificaes do ISP. Se a interface for a rota padro para a Internet, selecione Rota Padro. Cada host s pode ter uma interface configurada como a rota padro. Saia dessa caixa de dilogo selecionando Prximo. A caixa de dilogo a seguir permite que voc defina seu pas e selecione um ISP. Os ISPs includos na lista so apenas provedores do tipo chamada-por-chamada. Se seu ISP no estiver na lista, selecione Novo. A caixa de dilogo Parmetros do Provedor ser aberta para que voc digite todos os detalhes do seu ISP. Ao digitar o nmero
356
Referncia
telefnico, no inclua espaos vazios nem vrgulas entre os dgitos. Por fim, digite seu login e senha, conforme fornecido pelo ISP. Ao terminar, selecione Prximo. Para usar Discagem sob Demanda em uma estao de trabalho independente, especifique tambm o servidor de nomes (servidor DNS). A maioria dos ISPs suporta DNS dinmico, o que significa que o endereo IP de um servidor de nomes enviado pelo ISP toda vez que voc se conecta. Entretanto, para uma nica estao de trabalho, preciso fornecer um endereo marcador, como 192.168.22.99. Se o ISP no suportar um DNS dinmico, especifique os endereos IP do servidor de nomes do ISP. Se desejar, especifique um tempo de espera para a conexo o perodo de inatividade da rede (em segundos) depois do qual a conexo deve encerrar automaticamente. Confirme as configuraes com Prximo. O YaST exibe um resumo das interfaces configuradas. Para ativar todas essas configuraes, selecione Concluir.
18.4.5 DSL
Para configurar o dispositivo DSL, selecione o mdulo DSL na seo Dispositivos de Rede do YaST. O mdulo YaST consiste em vrias caixas de dilogo nas quais configura-se os parmetros de links DSL com base em um dos seguintes protocolos: PPPoE (PPP sobre Ethernet) PPPoATM (PPP sobre ATM) CAPI para ADSL (Placas Fritz)
Rede bsica
357
PPTP (Point-to-Point Tunneling Protocol) ustria A configurao de uma conexo DSL baseada no PPPoE ou no PPTP exige que a placa de rede correspondente j esteja configurada de forma correta. Se isso ainda no foi feito, primeiro configure a placa, selecionando Configurar Placas de Rede (consulte a Seo 18.4.1, Configurando a placa de rede com o YaST (p 349)). No caso de um link DSL, os endereos podem ser designados automaticamente, mas no via DHCP, e por isso que voc no deve habilitar a opo Configurao Automtica de Endereo (via DHCP). Em vez disso, digite um endereo esttico simulado para a interface, como 192.168.22.1. Em Mscara de Sub-rede, digite 255.255.255.0. Se estiver configurando uma estao de trabalho independente, deixe a opo Gateway Padro vazia. DICA Os valores em Endereo IP e Mscara de Sub-rede so apenas marcadores. Eles so necessrios apenas para inicializar a placa de rede e no representam o link DSL. Figura 18.7 Configurao DSL
Para iniciar a configurao DSL (consulte a Figura 18.7, Configurao DSL (p 358)), primeiro selecione o modo PPP e a placa ethernet qual o modem DSL est conectado
358
Referncia
(normalmente, a eth0). Ento, use a opo Ativao do Dispositivo, para especificar se o link DSL deve ser estabelecido durante o processo de inicializao. Clique em Controlado pelo Usurio, para autorizar o usurio normal sem permisses de root para ativar ou desativar a interface com o KInternet. A caixa de dilogo tambm permite que voc selecione seu pas e escolha um ISP entre os que nele operam. Os detalhes de quaisquer caixas de dilogo subseqentes da configurao DSL dependem das opes configuradas at agora. por essa razo que eles so apenas rapidamente mencionados nos pargrafos a seguir. Para obter detalhes sobre as opes disponveis, leia a ajuda detalhada disponvel nas caixas de dilogo. Para usar Discagem sob Demanda em uma estao de trabalho independente, especifique tambm o servidor de nomes (servidor DNS). A maioria dos ISPs suporta DNS dinmico o endereo IP de um servidor de nomes enviado pelo ISP toda vez que voc se conecta. Entretanto, para uma nica estao de trabalho, preciso fornecer um endereo marcador, como 192.168.22.99. Se o ISP no suportar um DNS dinmico, especifique o endereo IP do servidor de nomes fornecido pelo ISP. Tempo Ocioso (em segundos) define um perodo de inatividade da rede depois do qual a conexo encerrada automaticamente. Um valor de tempo de espera razovel fica entre 60 e 300 segundos. Se a opo Discagem sob Demanda estiver desabilitada, talvez seja til configurar o tempo de espera como zero para evitar um desligamento automtico. A configurao do T-DSL muito parecida com a do DSL. Basta selecionar T-Online como seu provedor e o YaST abrir a caixa de dilogo de configurao do T-DSL. Nessa caixa de dilogo, fornea algumas informaes adicionais necessrias para o TDSL o ID da linha, o nmero do T-Online, o cdigo de usurio e sua senha. Tudo isso deve estar includo nas informaes que voc recebeu aps se inscrever no T-DSL.
Rede bsica
359
NOTA: NetworkManager e SCPM No use o NetworkManager junto com o SCPM quando perfis SCPM tambm mudarem configuraes de rede. Para usar o SCPM e o NetworkManager ao mesmo tempo, desabilite o recurso de rede na configurao SCPM. O NetworkManager no a soluo adequada nos seguintes casos: O computador tem um endereo esttico. Voc deseja usar mais de um provedor de discagem para uma interface. Voc deseja usar a criptografia WPA-EAP na sua conexo WLAN. O computador um roteador de sua rede. O computador fornece servios de rede para outros computadores de sua rede, por exemplo, se ele for um servidor DHCP ou DNS.
O applet KNetworkManager
O KNetworkManager um applet KDE para controlar o NetworkManager. Se ele no estiver em execuo, inicie-o com o comando knetworkmanager. Quando ele estiver
360
Referncia
em execuo, um cone azul da Terra ser exibido na bandeja de sistema. Clicar o boto direito do mouse no cone abre o menu do KNetworkManager com vrios comandos para gerenciar conexes de rede. O menu contm conexes de rede disponveis, ambos dispositivos com e sem fio. Se voc mantiver o cursor do mouse sobre eles, os detalhes sero exibidos. A conexo atualmente usada est marcada no menu. A fora do sinal de redes sem fio tambm mostrada no menu. Redes sem fio criptografadas so marcadas com um cone de cadeado azul. Para conectar-se a uma rede criptografada, escolha-a no menu. Na caixa de dilogo exibida, escolha o tipo de Criptografia usada pela rede e digite a Frase secreta ou Chave apropriada. Para conectar-se a uma rede que no transmite seu identificador de conjunto de servios (ESSID) e, assim, no pode ser detectada automaticamente, escolha Conectar-se a Outra Rede sem Fio. Na caixa de dilogo exibida, digite o ESSID e defina parmetros de criptografia, se necessrio. Para acessar conexes de discagem, escolha Conexes por Discagem. Quando conexes de discagem j tiverem sido definidas, inicie a conexo clicando na conexo a ser usada. Configurar Conexes por Discagem abre o YaST, onde voc pode definir uma nova conexo de discagem. Para desabilitar qualquer conexo de rede ativa, escolha Opes Alternar para Modo Off-line no menu do KNetworkManager. Para habilitar novamente a conexo, escolha Opes Alternar para Modo On-line. Para desabilitar conexes de rede sem fio, escolha Opes Desabilitar Conexo sem Fio no menu do KNetworkManager. Para habilitar novamente conexes sem fio, escolha Opes Habilitar Conexo sem Fio. Habilitar a rede leva alguns segundos.
Rede bsica
361
marcadas com um cone de escudo. Para conectar-se a uma rede criptografada, escolhaa no menu. Na caixa de dilogo exibida, escolha o tipo de Criptografia usada pela rede e digite a Frase secreta ou Chave apropriada. Para conectar-se a uma rede que no transmite o seu identificador de conjunto de servios (ESSID) e, assim, no pode ser detectada automaticamente, clique o boto esquerdo do mouse no cone e escolha Conectar-se a Outra Rede sem Fio. Na caixa de dilogo exibida, digite o ESSID e defina parmetros de criptografia se necessrio. Para desabilitar a rede, clique o boto direito do mouse no cone do applet e desmarque Habilitar Rede. Para desabilitar a rede sem fio, clique o boto direito do mouse no cone do applet e desmarque Habilitar Conexo sem Fio. Para obter informaes sobre a conexo atual (incluindo o endereo de hardware, o endereo IP e a interface usada), clique o boto direito do mouse no cone do applet e escolha Informaes de Conexo no menu.
362
Referncia
Todas as placas de rede embutidas e hotplug (PCMCIA, USB e algumas PCI) so detectadas e configuradas atravs do hotplug. O sistema identifica uma placa de rede de duas formas diferentes: primeira, como um dispositivo fsico e, segunda, como uma interface. A insero ou deteco de um dispositivo aciona um evento hotplug. Esse evento de hotplug aciona a inicializao do dispositivo com o script hwup. Quando a placa de rede inicializada como uma nova interface de rede, o kernel gera outro evento de hotplug que aciona a configurao da interface com ifup. A interface de nmeros kernel define nomes de acordo com a ordem temporal de seus registros. A seqncia de inicializao decisiva para a designao de nomes. Se alguma das muitas placas de rede falhar, a numerao de todas as placas inicializadas subseqentemente ser deslocada. Para placas reais que aceitam hotplug, o que importa a ordem em que os dispositivos so conectados. Para obter uma configurao flexvel, a configurao do dispositivo (hardware) e a interface foram separadas e o mapeamento das configuraes para dispositivos e interfaces no mais gerenciado com base nos nomes de interface. As configuraes de dispositivos esto localizadas em /etc/sysconfig/hardware/hwcfg-*. As configuraes de interface esto localizadas em /etc/sysconfig/network/ ifcfg-*. Os nomes das configuraes so designados de forma que descrevam os dispositivos e as interfaces aos quais esto associados. Como o mapeamento de drivers anterior exigia nomes de interface estticos, esse tipo de mapeamento no pode mais ocorrer em /etc/modprobe.conf. No novo conceito, as entradas de lias desse arquivo causariam efeitos colaterais indesejveis. Os nomes de configurao tudo depois de hwcfg- ou ifcfg- podem descrever os dispositivos por meio do slot, de um ID especfico de dispositivo ou do nome da interface. Por exemplo, o nome de configurao para uma placa PCI poderia ser bus-pci-0000:02:01.0 (slot PCI) ou vpid-0x8086-0x1014-0x0549 (ID do produto e fornecedor). O nome da interface associada poderia ser bus-pci-0000:02:01.0 ou wlan-id-00:05:4e:42:31:7a (endereo MAC). Para designar uma determinada configurao de rede a qualquer placa de determinado tipo (em que apenas uma inserida de cada vez), em vez de selecionar uma determinada placa, escolha nomes de configurao menos especficos. Por exemplo, bus-pcmcia seria usado para todas as placas PCMCIA. Por outro lado, os nomes podem ser limitados por um tipo de interface precedente. Por exemplo, wlan-bus-usb seria designado a placas WLAN conectadas a uma porta USB.
Rede bsica
363
O sistema sempre usa a configurao que melhor descreve uma interface ou o dispositivo que a fornece. A pesquisa da configurao mais adequada executada por getcfg. A sada de getcfg fornece todas as informaes que podem ser usadas para descrever um dispositivo. Detalhes referentes especificao dos nomes de configurao esto disponveis na pgina de manual do getcfg. Com o mtodo descrito, uma interface de rede configurada corretamente, mesmo que os dispositivos da rede nem sempre sejam inicializados na mesma ordem. Entretanto, o nome da interface ainda depender da seqncia de inicializao. H duas formas de garantir o acesso confivel interface de uma determinada placa de rede: getcfg-interface nome da configurao retorna o nome da interface de rede associada. Portanto, o nome de configurao, como firewall, dhcpd, roteamento ou vrias interfaces de rede virtuais (tneis), pode ser digitado em alguns arquivos de configurao, em vez do nome da interface, que no persistente. Nomes de interface persistentes so atribudos automaticamente a cada interface. Voc pode ajust-los conforme suas necessidades. Quando criar nomes de interface, proceda conforme descrito no /etc/udev/rules.d/30-net_persistent _names.rules. Entretanto, o nome persistente nomep no deve ser igual ao que ser automaticamente designado pelo kernel. Assim, eth*, tr*, wlan* e assim por diante no so permitidos. Em vez disso, use net* ou nomes descritivos, como externo, interno ou dmz. Verifique se o mesmo nome de interface no est sendo usado duas vezes. Os caracteres permitidos em nomes de interface se restringem a [a-zA-Z0-9]. Um nome persistente s pode ser designado a uma interface imediatamente depois de seu registro, o que significa que o driver da placa de rede precisa ser recarregado ou a descrio do dispositivo hwup deve ser executada. O comando rcnetwork restart no suficiente para essa finalidade. IMPORTANTE: Usando nomes de interface persistentes O uso de nomes de interface persistentes no foi testado em todas as reas. Portanto, alguns aplicativos talvez no sejam capazes de controlar nomes de interface selecionados livremente. ifup requer uma interface existente, pois no inicializa o hardware. A inicializao do hardware controlada pelo comando hwup (executado por hotplug ou coldplug). Quando um dispositivo for inicializado, ifup ser executado automaticamente para a nova interface, atravs do hotplug, e a interface ser
364
Referncia
configurada se o modo de incio for onboot, hotplug ou auto e o servio de rede tiver sido iniciado. Anteriormente, o comando ifup nomedainterface acionava a inicializao do hardware. Agora o procedimento foi invertido. Primeiro, o componente de hardware inicializado e, depois, ocorrem todas as outras aes. Dessa forma, um nmero varivel de dispositivos pode sempre ser configurado da melhor forma possvel com um conjunto de configuraes existente. A Tabela 18.5, Scripts de configurao de rede manual (p 365) resume os scripts mais importantes envolvidos na configurao de rede. Onde for possvel, os scripts so distinguidos pelo hardware e pela interface. Tabela 18.5 Estgio da configurao Hardware Scripts de configurao de rede manual Comando Funo
hw{up,down,status} Os scripts hw* so executados por um subsistema hotplug para inicializar um dispositivo, desfazer a inicializao ou consultar o status de um dispositivo. H mais informaes disponveis na pgina de manual do hwup. getcfg getcfg pode ser usado para consultar o nome da interface associado a um nome de configurao ou a uma descrio de hardware. H mais informaes disponveis na pgina de manual do getcfg.
Interface
Interface
if{up,down,status} Os scripts if* iniciam interfaces de rede existentes ou retornam o status da interface especificada. H mais informaes disponveis na pgina do manual de ifup.
H mais informaes disponveis sobre hotplug e nomes de dispositivos persistentes no Captulo 12, Gerenciamento de dispositivo de kernel dinmico com udev (p 261).
Rede bsica
365
/etc/syconfig/hardware/hwcfg-*
Esses arquivos contm as configuraes de hardware de placas de rede e de outros dispositivos. Eles contm os parmetros necessrios, como o mdulo kernel, modo de incio e associaes de script. Consulte a pgina de manual do hwup para obter mais detalhes. Independentemente do hardware existente, as configuraes hwcfg-static-* so aplicadas quando o coldplug iniciado.
/etc/sysconfig/network/ifcfg-*
Esses arquivos contm as configuraes da interface de rede. Eles incluem informaes, como o modo de incio e o endereo IP. Parmetros possveis so descritos na pgina de manual do ifup. Alm disso, todas as variveis dos arquivos dhcp, wireless e config podem ser usadas nos arquivos ifcfg-* se uma configurao geral for usada somente para uma interface.
/etc/sysconfig/network/routes,ifroute-*
O roteamento esttico dos pacotes TCP/IP determinado aqui. Todas as rotas estticas exigidas pelas vrias tarefas do sistema podem ser inseridas no arquivo /etc/ sysconfig/network/routes: rotas para um host, rotas para um host atravs de um gateway e rotas para uma rede. Para cada interface que necessite de um roteamento individual, defina um arquivo de configurao adicional: /etc/sysconfig/ 366 Referncia
network/ifroute-*. Substitua * pelo nome da interface. As entradas nos arquivos de configurao de roteamento tero esta aparncia:
# Destination # 127.0.0.0 204.127.235.0 default 207.68.156.51 192.168.0.0 Dummy/Gateway 0.0.0.0 0.0.0.0 204.127.235.41 207.68.145.45 207.68.156.51 Netmask 255.255.255.0 255.255.255.0 0.0.0.0 255.255.255.255 255.255.0.0 Device lo eth0 eth0 eth1 eth1
O destino da rota est na primeira coluna. Essa coluna pode conter o endereo IP de uma rede ou host ou, no caso de servidores de nomes acessveis, a rede ou o nome de host totalmente qualificado. A segunda coluna contm o gateway padro ou um gateway atravs do qual um host ou uma rede pode ser acessada. A terceira coluna contm a mscara de rede para redes ou hosts atrs de um gateway. Por exemplo, a mscara em 255.255.255.255 para um host atrs de um gateway. A quarta coluna s relevante para redes conectadas ao host local, como loopback, Ethernet, ISDN, PPP e dispositivo simulado. O nome do dispositivo deve ser digitado aqui. Uma quinta coluna (opcional) pode ser usada para especificar o tipo de uma rota. As colunas desnecessrias devem conter um sinal de subtrao - para garantir que o analisador interpretar o comando corretamente. Para obter mais detalhes, consulte a pgina de manual das rotas(5).
/etc/resolv.conf
O domnio ao qual o host pertence especificado neste arquivo (palavra-chave search). Tambm est listado o status do endereo do servidor de nomes para acesso (palavrachave nameserver). Vrios nomes de domnios podem ser especificados. Durante a resoluo de um nome no totalmente qualificado, uma tentativa de gerar um nome ser feita, anexando as entradas de pesquisa individuais. Use vrios servidores de nomes digitando vrias linhas, todas iniciadas pelo servidor de nomes. Preceda os comentrios com sinais #. O YaST insere o servidor de nomes especificado neste arquivo. O Exemplo 18.5, /etc/resolv.conf (p 368) mostra como a aparncia de /etc/resolv.conf poder ser.
Rede bsica
367
Alguns servios, como pppd (wvdial), ipppd (isdn), dhcp (dhcpcd e dhclient), pcmcia e hotplug modificam o arquivo /etc/resolv.conf atravs do script modify_resolvconf. Se o arquivo /etc/resolv.conf tiver sido temporariamente modificado por esse script, ele conter um comentrio predefinido com informaes sobre o servio que o modificou, o local onde foi feito o backup do arquivo original e como desligar o mecanismo de modificao automtica. Se /etc/ resolv.conf for modificado vrias vezes, o arquivo incluir modificaes de forma aninhada. Isso pode ser revertido de forma completa, mesmo que essa reverso ocorra em uma ordem diferente da ordem em que as modificaes foram introduzidas. Entre os servios que talvez necessitem dessa flexibilidade, esto includos isdn, pcmcia e hotplug. Se um servio no tiver terminado de forma normal e limpa, modify_resolvconf poder ser usado para restaurar o arquivo original. Da mesma forma, na inicializao do sistema, uma verificao feita para ver se h um resolv.conf modificado que no esteja limpo. Por exemplo, aps uma falha no sistema, o resolv.conf original (no modificado) ser restaurado. O YaST usa o comando modify_resolvconf check para descobrir se o resolv .conf foi modificado e, logo depois, avisa o usurio de que as modificaes sero perdidas aps a restaurao do arquivo. Alm disso, o YaST no se baseia no modify _resolvconf, o que significa que o impacto de modificar o resolv.conf atravs do YaST o mesmo que o de qualquer mudana manual. Em ambos os casos, as mudanas tm um efeito permanente. As modificaes solicitadas pelos servios mencionados so somente temporrias.
/etc/hosts
Nesse arquivo, mostrado no Exemplo 18.6, /etc/hosts (p 369), os endereos IP so designados a nomes de host. Se nenhum servidor de nomes for implementado, todos os hosts nos quais uma conexo IP for configurada precisaro ser listados aqui. Para cada host, digite uma linha no arquivo com o endereo IP, o nome de host totalmente qualificado e o nome de host. O endereo IP precisa estar no incio da linha e as entradas
368
Referncia
separadas por espaos vazios e guias. Comentrios so sempre precedidos pelo sinal #. Exemplo 18.6 /etc/hosts
127.0.0.1 localhost 192.168.0.20 sun.example.com sun 192.168.0.0 earth.example.com earth
/etc/networks
Aqui, os nomes de rede so convertidos em endereos de rede. O formato semelhante ao do arquivo hosts, exceto que os nomes de rede precedem os endereos. Consulte o Exemplo 18.7, /etc/networks (p 369). Exemplo 18.7 /etc/networks
loopback localnet 127.0.0.0 192.168.0.0
/etc/host.conf
A resoluo de nomes converso dos nomes de host e de rede atravs da biblioteca resolver controlada por esse arquivo. Esse arquivo usado somente para programas vinculados a libc4 ou libc5. Para programas glibc atuais, consulte as configuraes em /etc/nsswitch.conf. Um parmetro precisa estar sempre independente em sua prpria linha. Comentrios so precedidos pelo sinal #. A Tabela 18.6, Parmetros para /etc/host.conf (p 369) mostra os parmetros disponveis. Uma amostra de /etc/ host.conf mostrada no Exemplo 18.8, /etc/host.conf (p 370). Tabela 18.6 Parmetros para /etc/host.conf Especifica em que ordem os servios so acessados para a resoluo de nomes. Os argumentos disponveis so (separados por espaos vazios ou vrgulas): hosts: pesquisa o arquivo /etc/hosts bind: acessa um servidor de nomes nis: usa o NIS
Rede bsica
369
multi on/off
Define se um host digitado em /etc/hosts pode ter vrios endereos IP. Esses parmetros influenciam o spoofing do servidor de nomes, mas, alm disso, no exercem qualquer influncia na configurao da rede. O nome de domnio especificado separado do nome de host depois da resoluo do nome de host (desde que o nome de host inclua o nome de domnio). Essa opo ser til somente se os nomes de um domnio local estiverem no arquivo /etc/ hosts, mas ainda devero ser reconhecidos com os nomes de domnio anexados.
trim domainname
/etc/nsswitch.conf
O lanamento do GNU C Library 2.0 foi acompanhado pelo lanamento do NSS (Name Service Switch). Consulte a pgina de manual do nsswitch.conf(5) e The GNU C Library Reference Manual (Manual de Referncia da Biblioteca GNU C) para obter mais detalhes. A ordem das consultas definida no arquivo /etc/nsswitch.conf. Uma amostra do nsswitch.conf exibida no Exemplo 18.9, /etc/nsswitch.conf (p 371). Comentrios so introduzidos pelo sinal #. Neste exemplo, a entrada no banco de dados hosts significa que uma solicitao foi enviada para /etc/hosts (arquivos) atravs do DNS (consulte o Captulo 20, Domain Name System (Sistema de Nomes de Domnio) (p 381)).
370
Referncia
Os bancos de dados disponveis em NSS esto listados na Tabela 18.7, Bancos de dados disponveis atravs de /etc/nsswitch.conf (p 371). Alm disso, automount, bootparams, netmasks e publickey so aguardados em breve. As opes de configurao para bancos de dados NSS esto listadas na Tabela 18.8, Opes de Configurao para Bancos de Dados NSS (p 372). Tabela 18.7 aliases Bancos de dados disponveis atravs de /etc/nsswitch.conf lias de correio implementados por sendmail; consulte man 5 aliases. Endereos de Ethernet. Para grupos de usurios, usados por getgrent. Consulte tambm a pgina de manual para group. Para nomes de hosts e endereos IP, usados por gethostbyname e funes similares. Listas de usurios e hosts vlidos na rede com a finalidade de controlar permisses de acesso, consulte a pgina de manual do netgroup(5). Nomes e endereos de redes, usados por getnetent. Senhas de usurios, usadas por getpwent; consulte a pgina de manual do passwd(5).
ethers group
hosts
netgroup
networks passwd
Rede bsica
371
protocols
Protocolos de rede, usados por getprotoent; consulte a pgina de manual do protocols(5). Nomes e endereos de RPC (Remote Procedure Call) usados por getrpcbyname e funes similares. Servios de rede, usados por getservent. Senhas transitrias de usurios, usadas por getspnam; consulte a pgina de manual do shadow(5). Opes de Configurao para Bancos de Dados NSS arquivos de acesso direto, por exemplo, /etc/aliases acesso atravs de um banco de dados NIS, consulte tambm o Captulo 21, Usando o NIS (p 405) s pode ser usado como uma extenso de hosts e networks s pode ser usado como uma extenso de passwd, shadow e group
rpc
services shadow
compat
/etc/nscd.conf
Esse arquivo usado para configurar o nscd (name service cache daemon). Consulte as pginas de manual de nscd(8) e nscd.conf(5). Por padro, as entradas do sistema de passwd e groups so armazenadas em cache pelo nscd. Isso importante para o desempenho de servios de diretrio, como NIS e LDAP, pois, caso contrrio, a conexo de rede precisaria ser usada para cada acesso a nomes ou grupos. hosts no armazenado em cache por padro, porque o mecanismo no nscd para armazenar hosts em cache impede o sistema local de confiar em verificaes de pesquisa forward e reverse. Em vez de solicitar ao nscd para armazenar nomes em cache, configure um servidor DNS para armazenamento em cache.
372
Referncia
Se o armazenamento em cache de passwd estiver ativado, normalmente levar quinze segundos para que um usurio local recentemente adicionado seja reconhecido. Reduza esse tempo de espera reiniciando o nscd com o comando rcnscd restart.
/etc/HOSTNAME
Contm o nome de host sem o nome de domnio anexado. Esse arquivo lido por vrios scripts durante a inicializao da mquina. Ele s pode conter uma linha na qual o nome de host configurado.
/etc/init.d/network Este script controla a configurao das interfaces de rede. O hardware j precisa ter sido inicializado pelo /etc/init.d/coldplug (atravs do hotplug). Se o servio de rede no tiver sido iniciado, nenhuma interface de rede ser implementada quando for inserida pelo hotplug. /etc/init.d/network Inicia o xinetd. O xinetd pode ser usado para disponibilizar os servios do servidor no sistema. Por exemplo, ele pode iniciar o vsftpd sempre que uma conexo FTP for inicializada. /etc/init.d/portmap Inicia o portmapper necessrio para o servidor RPC, como um servidor NFS. /etc/init.d/ nfsserver Inicia o servidor NFS.
Rede bsica
373
374
Referncia
O arquivo de configurao do smpppd o /etc/smpppd.conf. Por padro, ele no habilita o controle remoto. As opes mais importantes desse arquivo de configurao so: open-inet-socket = yes|no Para controlar o smpppd por meio da rede, essa opo precisa ser definida como yes. A porta em que o smpppd realiza a escuta a 3185. Se esse parmetro for definido como yes, os parmetros bind-address, host-range e password devero ser definidos da mesma forma. bind-address = ip Se um host tiver diversos endereos IP, use esse parmetro para determinar o endereo IP em que o smpppd deve aceitar conexes. host-range = min ip max ip O parmetro host-range define uma faixa de rede. Os hosts cujos endereos IP se situam dentro dessa faixa recebem acesso ao smpppd. O acesso recusado a todos os hosts localizados fora dessa faixa. password = senha Ao atribuir uma senha, limite os clientes a hosts autorizados. Como se trata de uma senha de texto simples, no recomendvel superestimar a segurana por oferecida. Se nenhuma senha for atribuda, todos os clientes tero permisso para acessar o smpppd. slp-register = yes|no Com esse parmetro, o servio smpppd pode ser anunciado na rede por meio do SLP. Mais informaes sobre o smpppd esto disponveis nas pginas do manual smpppd(8) e smpppd.conf(5).
esses utilitrios para uso com um smpppd remoto, edite o arquivo de configurao /etc/smpppd-c.conf manualmente ou com o KInternet. Esse arquivo usa trs opes apenas: sites = lista de sites Indique aos front ends onde procurar o smpppd. Os front ends testam as opes na ordem especificada. A opo local ordena o estabelecimento de uma conexo ao smpppd local. O gateway aponta para um smpppd no gateway. A conexo deve ser estabelecida conforme especificaes contidas em server, em config-file. O slp ordena aos front ends que se conectem a um smpppd encontrado por meio do SLP. server = servidor Especifique o host em que o smpppd deve ser executado. password = senha Insira a senha selecionada para o smpppd. Se o smpppd estiver ativo, ser possvel acess-lo, por exemplo, com cinternet --verbose --interface-list. Se voc tiver dificuldades nesse ponto, consulte as pginas do manual smpppd-c.conf(5) e cinternet(8).
376
Referncia
19
O SLP foi criado para simplificar a configurao dos clientes em rede dentro de uma rede local. Para configurar um cliente em rede, inclusive todos os servios necessrios, o administrador normalmente precisa ter conhecimento detalhado dos servidores disponveis na rede. O SLP divulga a disponibilidade de servios selecionados a todos os clientes da rede local. Os aplicativos que do suporte ao SLP podem usar as informaes distribudas e podem ser configurados automaticamente. O SUSE Linux d suporte instalao com o uso de origens de instalao fornecidas via SLP e contm diversos servios de sistema com suporte integrado para SLP. O YaST e o Konqueror possuem front ends apropriados para SLP. Voc pode usar o SLP para oferecer funes centrais aos clientes em rede, como um servidor de instalao, servidor YOU, servidor de arquivos ou servidor de impresso no SUSE Linux.
377
## Register a saned service on this system ## en means english language ## 65535 disables the timeout, so the service registration does ## not need refreshes service:scanner.sane://$HOSTNAME:6566,en,65535 watch-port-tcp=6566 description=SANE scanner daemon
A linha mais importante desse arquivo a linha URL do servio, que comea com service:. Essa linha contm o tipo de servio (scanner.sane) e o endereo em que o servio est disponvel no servidor. $HOSTNAME automaticamente substituda pelo nome completo do host. Em seguida, vem o nome da porta TCP em que o servio em questo pode ser encontrado, separado por dois-pontos. A seguir, especifique o idioma em que o servio deve ser exibido e a durao do registro em segundos. Esses dados devem ser separados do URL do servio por vrgulas. Defina o valor da durao do registro entre 0 e 65535. O valor 0 impede o registro. O valor 65535 elimina todas as restries. O arquivo de registro tambm contm as duas variveis watch-tcp-port e description. watch-tcp-port associa o anncio do servio SLP atividade do servio em questo fazendo com que o slpd verifique o status do servio. A segunda varivel contm uma descrio mais precisa do servio que exibido nos browsers apropriados. Registro esttico com /etc/slp.reg A nica diferena em relao ao procedimento com /etc/slp.reg.d o agrupamento de todos os servios em um arquivo central. Registro dinmico com slptool Se um servio tiver de ser registrado para o SLP a partir de scripts proprietrios, use o front end de linha de comando slptool.
378
Referncia
slptool O slptool um programa de linha de comando simples que pode ser usado para anunciar consultas SLP na rede ou anunciar servios proprietrios. O slptool --help relaciona todas as opes e funes disponveis. O slptool tambm pode ser chamado a partir de scripts que processam informaes relativas ao SLP. Browser SLP do YaST O YaST contm um browser SLP separado que lista todos os servios da rede local anunciados via SLP em um diagrama em forma de rvore em Servios de Rede Browser SLP. Konqueror Quando usado como um browser de rede, o Konqueror pode exibir todos os servios SLP disponveis na rede local em slp:/. Clique nos cones da janela principal para obter mais informaes detalhadas sobre o servio em questo. Se voc usar o Konqueror com service:/, clique no respectivo cone uma vez na janela do browser para configurar uma conexo com o servio selecionado.
379
RFC 2608, 2609, 2610 O RFC 2608 geralmente trata da definio de SLP. O RFC 2609 trata da sintaxe dos URLs de servio usados em maior detalhe e o RFC 2610 trata do DHCP via SLP. http://www.openslp.com A home page do projeto OpenSLP. /usr/share/doc/packages/openslp Esse diretrio contm toda a documentao disponvel sobre SLP, inclusive um arquivo README.SuSE contendo os detalhes sobre o SUSE Linux, os RFCs citados acima e dois documentos HTML introdutrios. Os programadores que desejarem usar as funes SLP devem instalar o pacote openslp-devel para consultar o Programmers Guide (Guia de Programadores) que o acompanha.
380
Referncia
20
O DNS (Domain Name System - Sistema de Nomes de Domnio) necessrio para resolver nomes de domnio e nomes de host em endereos IP. Dessa forma, o endereo IP 192.168.0.0 designado ao nome de host earth, por exemplo. Antes de configurar o servidor de nomes, leia as informaes gerais sobre o DNS na Seo 18.3, Resoluo de nomes (p 347). Os exemplos de configurao a seguir se referem ao BIND.
381
master. O servidor DNS de zona escrava responde com autoridade zona contanto que tenha dados de zona vlidos (no expirados). Se o escravo no conseguir obter uma cpia nova dos dados de zona, pra de responder zona. Encaminhador Encaminhadores so servidores DNS para os quais o servidor DNS deve enviar consultas que no consiga responder. Registro O registro contm informaes sobre nome e endereo IP. Os registros com suporte e suas sintaxes so descritas na documentao do BIND. Alguns registros especiais so: Registro NS Um registro NS informa aos servidores de nome quais mquinas so responsveis por uma determinada zona de domnio. Registro MX Os registros MX (servidor de correio) descrevem quais mquinas devem ser contatadas para direcionar a correspondncia pela Internet. Registro SOA O registro SOA (Start of Authority) o primeiro registro em um arquivo de zona. O registro SOA usado quando o DNS usado para sincronizar os dados entre vrios computadores.
382
Referncia
2 A caixa de dilogo Zonas DNS consiste em vrias partes e responsvel pelo gerenciamento de arquivos de zona, descrito na Seo 20.5, Arquivos de zona (p 397). Fornea um nome para uma nova zona em Nome da Zona. Para adicionar uma zona reversa, o nome deve terminar em .in-addr.arpa. Finalmente, selecione o Tipo de Zona (master ou escrava). Consulte a Figura 20.2, Instalao do servidor DNS: Zonas do DNS (p 384). Clique em Editar Zona para definir outras configuraes em uma zona existente. Para remover uma zona, clique em Apagar Zona. Domain Name System (Sistema de Nomes de Domnio) 383
3 Na caixa de dilogo final, possvel abrir as portas do servio DNS no firewall ativado durante a instalao e decidir se o DNS deve ser iniciado. A configurao de especialista tambm pode ser acessada nessa caixa de dilogo. Consulte a Figura 20.3, Instalao do servidor DNS: Finalizar Assistente (p 385).
384
Referncia
385
Registro
Para definir o que o servidor DNS deve registrar e como faz-lo, selecione Registro. Em Tipo de Log, especifique o local em que o servidor DNS deve gravar os dados de registro. Use o arquivo de registro /var/log/messages de todo o sistema selecionando Inserir no Registro do Sistema, ou especifique um arquivo diferente selecionando Registrar em Arquivo. Nesse caso, especifique tambm o tamanho mximo do arquivo em megabytes e o nmero de arquivos de registro a serem armazenados. Outras opes esto disponveis em Registro Adicional. A habilitao do recurso Registrar Todas as Consultas de DNS faz com que todas as consultas sejam registradas, caso em que o arquivo de registro pode ficar extremamente grande. Por essa razo, no uma boa idia habilitar essa opo para fins que no sejam de depurao. Para registrar o trfego de dados durante as atualizaes de zonas entre o DHCP e o servidor DNS, habilite a opo Registrar Atualizaes de Zona. Para registrar o trfego de dados durante uma transferncia de zona de master para escrava, habilite a opo Registrar Transferncia de Zonas. Consulte a Figura 20.4, Servidor DNS: Registro (p 386). Figura 20.4 Servidor DNS: Registro
386
Referncia
387
Editor de Zona (Registros NS) Esta caixa de dilogo permite definir servidores de nomes alternativos nas zonas especificadas. Verifique se o nome do seu prprio servidor est includo na lista. Para adicionar um registro, digite o nome dele em Servidor de Nome para Adicionar e, em seguida, confirme com Adicionar. Consulte a Figura 20.6, Servidor DNS: Editor de Zona (Registros NS) (p 388). Figura 20.6 Servidor DNS: Editor de Zona (Registros NS)
Editor de Zona (Registros MX) Para adicionar lista existente um servidor de correio eletrnico para a zona atual, digite o endereo correspondente e o valor de prioridade. Depois disso, confirme a seleo em Adicionar. Consulte a Figura 20.7, Servidor DNS: Editor de Zona (Registros MX) (p 389).
388
Referncia
Editor de Zona (SOA) Esta pgina permite criar registros de SOA (start of authority). Para obter uma explicao sobre opes especficas, consulte o Exemplo 20.6, Arquivo /var/lib/named/world.zone (p 397).
389
Editor de Zona (Registros) Esta caixa de dilogo gerencia a resoluo de nomes. Em Chave de Registro, digite o nome de host e selecione seu tipo. A-Record representa a entrada principal. Seu valor deve ser um endereo IP. CNAME um lias. Utilize os tipos NS e MX para obter registros detalhados ou parciais que expandam as informaes fornecidas nas guias Registros NS e Registros MX. Estes trs tipos resolvem um registro A existente. PTR para zonas reversas. o oposto de um registro A.
390
Referncia
endereo IP no arquivo de configurao /etc/named.conf, em forwarders, para garantir uma resoluo de nomes segura e eficaz. Se ele estiver funcionando at agora, o servidor de nomes ser executado como um servidor de nomes apenas para cache. Somente quando voc configurar as zonas dele prprio, ele se tornar um DNS adequado. Um exemplo simples disso est includo na documentao, em /usr/ share/doc/packages/bind/sample-config. DICA: Adaptao automtica das informaes do servidor de nomes Dependendo do tipo de conexo de Internet ou de conexo de rede, as informaes do servidor de nomes podem ser automaticamente adaptadas s condies atuais. Para isso, defina a varivel MODIFY_NAMED_CONF_DYNAMICALLY no arquivo /etc/sysconfig/ network/config como yes. Entretanto, no configure nenhum domnio oficial antes de algum ser designado pela instituio responsvel. Mesmo que voc tenha seu prprio domnio e ele seja gerenciado pelo provedor, melhor no utiliz-lo, pois o BIND no encaminharia solicitaes para esse domnio. O servidor Web no provedor, por exemplo, poderia no ficar acessvel para esse domnio. Para iniciar o servidor de nomes, digite o comando rcnamed start como root. Se done for exibido direita, em verde, e com o mesmo nome do processo do servidor de nomes, esse servidor ter sido iniciado com xito. Teste o servidor de nomes imediatamente no sistema local com os programas host ou dig, que devem retornar localhost como servidor padro, com o endereo 127.0.0.1. Se esse no o caso, o arquivo /etc/resolv.conf provavelmente contm uma entrada de servidor de nomes incorreta ou no existe. No primeiro teste, digite host 127.0.0.1, o que sempre funciona. Se receber uma mensagem de erro, use rcnamed status para verificar se o servidor est sendo realmente executado. Se o servidor de nomes no for iniciado ou agir de forma inesperada, voc poder encontrar a causa no arquivo de registro /var/log/messages. Para usar o servidor de nomes do provedor ou um servidor de nomes que j esteja em execuo na rede como encaminhador, digite o endereo IP ou os endereos correspondentes na seo options, em forwarders. Os endereos includos no Exemplo 20.1, Opes de encaminhamento no named.conf (p 392) so apenas exemplos. Ajuste essas entradas de acordo com sua prpria configurao.
391
A entrada options seguida de entradas para a zona, localhost e 0.0.127.in-addr.arpa. A entrada type hint em . deve estar sempre presente. Os arquivos correspondentes no precisam ser modificados e devem funcionar como esto. Verifique tambm se cada entrada est fechada com um ; e se as chaves esto nos locais corretos. Depois de mudar o arquivo de configurao /etc/named .conf ou os arquivos de zona, solicite ao BIND que os releia com o comando rcnamed reload. Faa o mesmo interrompendo e reiniciando o servidor de nomes com rcnamed restart. Pare o servidor a qualquer momento digitando rcnamed stop.
392
Referncia
393
porta padro. Digite 127.0.0.1 para permitir solicitaes do host local. Se voc omitir totalmente essa entrada, todas as interfaces sero usadas por padro. listen-on-v6 port 53 {any; }; Comunique ao BIND qual porta ele deve escutar para solicitaes de clientes IPv6. A nica alternativa para any none. At onde o IPv6 est envolvido, o servidor s aceita um endereo curinga. query-source address * port 53; Esta entrada ser necessria se um firewall estiver bloqueando as solicitaes de sada do DNS. Assim o BIND avisado para publicar as solicitaes externamente porta 53, e no de qualquer outra porta superior acima da 1024. query-source-v6 address * port 53; Comunica ao BIND qual porta deve ser usada para consultas do IPv6. allow-query { 127.0.0.1; rede; }; Define as redes a partir das quais os clientes podem publicar solicitaes de DNS. Substitua rede pelas informaes de endereo, como 192.168.1/24. /24, no fim, uma expresso de abreviao para uma mscara de rede, neste caso, 255.255.255.0. allow-transfer ! *;; Controla quais hosts podem solicitar transferncias de zona. No exemplo, tais solicitaes so completamente negadas com ! *. Sem essa entrada, as transferncias de zona podem ser solicitadas de qualquer local, sem restries. statistics-interval 0; Na ausncia desta entrada, o BIND gera vrias linhas de informaes estatsticas por hora em /var/log/messages. Defina-a como 0 para suprimir totalmente estas estatsticas ou definir um intervalo em minutos. cleaning-interval 720; Esta opo define os intervalos de tempo em que o BIND limpa seu cache. Ela aciona uma entrada em /var/log/messages sempre que isso ocorre. A especificao de tempo em minutos. O padro de 60 minutos interface-interval 0; O BIND pesquisa regularmente as interfaces de rede em busca de interfaces novas ou no existentes. Se seu valor for definido como 0, isso no ser feito, e o BIND
394
Referncia
escutar apenas as interfaces detectadas na inicializao. Caso contrrio, o intervalo poder ser definido em minutos. O padro de 60 minutos notify no; no evita que outros servidores de nomes sejam informados sobre a ocorrncia de mudanas nos dados da zona ou sobre quando o servidor de nomes foi reiniciado.
20.4.2 Registro
O BIND pode ser extensivamente configurado para que se determine qual registro est sendo usado, como e onde. Normalmente, as configuraes padro devem ser suficientes. O Exemplo 20.3, Entrada para desabilitar o registro (p 395) mostra a forma mais simples de uma entrada como esta e suprime totalmente qualquer registro. Exemplo 20.3 Entrada para desabilitar o registro
logging { category default { null; }; };
Depois de zone, especifique o nome do domnio para o administrador (my-domain.de), seguido de in e um bloco de opes relevantes includas entre chaves, como mostrado no Exemplo 20.4, Entrada da zona para my-domain.de (p 395). Para definir uma zona escrava, altere type para slave e especifique um servidor de nomes que administre essa zona como master (que, por sua vez, pode ser uma escrava de outra master), como mostrado no Exemplo 20.5, Entrada da zona para otherdomain.de (p 396).
395
As opes de zona: type master; Ao especificar master, comunique ao BIND que a zona gerenciada pelo servidor de nomes local. Esse procedimento pressupe que um arquivo de zona tenha sido criado no formato correto. type slave; Esta zona transferida de outro servidor de nomes. Ela deve ser usada juntamente com masters. type hint; A zona . do tipo hint usada para definir os servidores de nomes raiz. Essa definio de zona pode ser deixada assim. arquivo my-domain.zone ou arquivo slave/other-domain.zone; Esta entrada especifica o arquivo em que os dados da zona para o domnio esto localizados. Este arquivo no necessrio para uma escrava, pois os dados so buscados em outro servidor de nomes. Para diferenciar arquivos master de escravos, use o diretrio slave para os arquivos escravos. masters { endereo-ip-servidor; }; Esta entrada s necessria para zonas escravas. Ela especifica o servidor de nomes do qual o arquivo da zona deve ser transferido. allow-update {! *; }; Esta opo controla o acesso de gravao externo, permitindo que os clientes faam uma entrada no DNS, o que normalmente no desejvel por razes de segurana. Sem essa entrada, as atualizaes da zona no so permitidas. A entrada acima obtm o mesmo porque ! * probe efetivamente qualquer atividade afim.
396
Referncia
; ; ; ; ;
Linha 1: $TTL define o tempo padro de operao a ser aplicado em todas as entradas deste arquivo. Neste exemplo, as entradas so vlidas por um perodo de dois dias (2 D).
397
Linha 2: Onde o registro de controle SOA (start of authority) iniciado: O nome do domnio a ser administrado world.cosmos na primeira posio. Ele termina com um ., caso contrrio a zona seria anexada outra vez. Como alternativa, possvel inserir uma @ aqui, caso em que a zona seria extrada da entrada correspondente em /etc/named.conf. Depois, IN SOA ser o nome do servidor de nomes master dessa zona. O nome expandido de gateway para gateway.world.cosmos, pois ele no termina com um .. Depois, exibido o endereo de e-mail da pessoa responsvel por esse servidor de nomes. Como o sinal de @ j tem um significado especial, o . inserido aqui, no lugar dele. Para root@world.cosmos, a entrada deve ser lida como root.world.cosmos.. O . deve ser includo no fim para evitar que a zona seja adicionada. O ( inclui todas as linhas at ), no registro do SOA. Linha 3: O serial number um nmero arbitrrio que aumentado sempre que o arquivo mudado. Ele necessrio para informar os servidores de nomes secundrios (servidores escravos) sobre as mudanas. Para isso, um nmero de 10 dgitos com a data e um nmero de execuo, escrito como YYYYMMDDNN , o formato mais usado. Linha 4: A refresh rate especifica o intervalo de tempo no qual os servidores de nomes secundrios verificam o serial number da zona. Neste caso, um dia: Linha 5: A retry rate especifica o intervalo de tempo no qual um servidor de nomes secundrio tenta entrar em contato com o servidor primrio novamente, no caso de erro. Aqui, duas horas. Linha 6: O expiration time especifica o intervalo de tempo no qual um servidor de nomes secundrio descarta os dados em cache, caso no tenha conseguido restabelecer contato com o servidor primrio. Aqui, uma semana.
398
Referncia
Linha 7: A ltima entrada do registro SOA especifica o negative caching TTL o tempo em que resultados de consultas no resolvidas do DNS de outros servidores podem ser armazenados em cache. Linha 9: O IN NS especifica o servidor de nomes responsvel por este domnio. gateway estendido para gateway.world.cosmos, pois no termina com um .. Pode haver vrias linhas como esta: uma para o servidor de nomes primrio e outra para o secundrio. Se notify no for enviado para no em /etc/named.conf, todos os servidores de nomes listados aqui sero informados sobre as mudanas feitas nos dados da zona. Linha 10: O registro MX especifica o servidor de correio eletrnico que aceita, processa e encaminha e-mails para o domnio world.cosmos. Neste exemplo, o host sun.world.cosmos. O nmero na frente do nome do host o valor de preferncia. Se houver vrias entradas de MX, o servidor de correio eletrnico com menor valor ser pego primeiro e se houver falha na entrega de mensagens, ser feita uma nova tentativa com o prximo valor mais alto. Linhas 12 a 17: Estes so os registros reais em que um ou mais endereos IP so atribudos a nomes de host. Os nomes so listados aqui sem um ., pois eles no incluem seus domnios, ento world.cosmos adicionado a todos. Dois endereos IP so designados ao host gateway, pois ele tem duas placas de rede. Em todos os locais em que o endereo de host for tradicional (IPv4), o registro ser marcado com A. Se o endereo for um endereo IPv6, a entrada ser marcada com A6. O token anterior para os endereos IPv6 era AAAA, agora obsoleto. NOTA: Sintaxe A6 O registro A6 tem uma ligeira diferena de sintaxe em relao ao AAAA. Devido possibilidade de fragmentao, necessrio fornecer informaes sobre as partes ausentes antes do endereo. Voc deve fornecer essas informaes mesmo se quiser usar um endereo completamente desfragmentado. Para o antigo registro AAAA com a sintaxe
pluto IN pluto IN AAAA 2345:00C1:CA11:0001:1234:5678:9ABC:DEF0 AAAA 2345:00D2:DA11:0001:1234:5678:9ABC:DEF0
399
necessrio adicionar as informaes sobre as partes ausentes no formato A6. Como o exemplo acima est completo (no h nenhum bit ausente), o formato A6 deste registro :
pluto IN pluto IN AAAA 2345:00C1:CA11:0001:1234:5678:9ABC:DEF0 AAAA 2345:00D2:DA11:0001:1234:5678:9ABC:DEF0
No use endereos IPv4 com mapeamento IPv6. Se um host tiver um endereo IPv4, ele usar um registro A, no um A6. Linha 18: O lias www pode ser usado como endereo mond (CNAME significa nome cannico). O pseudodomnio in-addr.arpa usado para a pesquisa reversa de endereos IP em nomes de hosts. Ele anexado parte de rede do endereo, em notao reversa. Ento, 192.168.1 resolvido como 1.168.192.in-addr.arpa. Consulte o Exemplo 20.7, Pesquisa reversa (p 400). Exemplo 20.7 Pesquisa reversa
$TTL 2D 1.168.192.in-addr.arpa. IN SOA gateway.world.cosmos. root.world.cosmos. ( 2003072441 ; serial 1D ; refresh 2H ; retry 1W ; expiry 2D ) ; minimum IN NS 1 2 3 IN PTR IN PTR IN PTR gateway.world.cosmos. gateway.world.cosmos. earth.world.cosmos. mars.world.cosmos.
Linha 1: STLL define o TTL padro aplicado a todas as entradas aqui. Linha 2: O arquivo de configurao deve ativar a pesquisa reversa para a rede 192.168.1.0. Supondo que a zona seja chamada de 1.168.192.in-addr.arpa, ela no deve ser adicionada a nomes de hosts. Portanto, todos os nomes de host so digitados na forma completa, com seu domnio
400
Referncia
e um . no fim. As entradas restantes correspondem s descritas no exemplo de world.cosmos anterior. Linhas 3 a 7: Consulte o exemplo anterior para world.cosmos. Linha 9: Novamente, esta linha especifica o servidor de nomes responsvel pela zona. No entanto, dessa vez o nome digitado na forma completa, com o domnio e um . no fim. Linhas 11 a 13: Estas so as dicas dos registros do indicador nos endereos IP dos respectivos hosts. Somente a ltima parte do endereo IP digitada no comeo da linha, sem o . no fim. Anexar a zona a ele (sem .in-addr.arpa) resulta na ordem reversa de todo o endereo IP. Normalmente, as transferncias de zona entre verses diferentes do BIND devem ser possveis sem problemas.
401
A chave (uma string como ejIkuCyyGJwwuN3xAteKgg==) encontrada nos dois arquivos. Para us-la em transaes, o segundo arquivo (Khost1-host2.+157 +34265.key) deve ser transferido para o host remoto, de preferncia de forma segura (usando scp, por exemplo). No servidor remoto, a chave deve ser includa no arquivo /etc/named.conf para permitir uma comunicao segura entre host1 e host2:
key host1-host2. { algorithm hmac-md5; secret ";ejIkuCyyGJwwuN3xAteKgg==; };
ATENO: Permisses de arquivo de /etc/named.conf Verifique se as permisses do arquivo /etc/named.conf foram restringidas adequadamente. O padro para esse arquivo 0640, com o proprietrio sendo root e o grupo, named. Como alternativa, mova as chaves para um outro arquivo com permisses especialmente limitadas, que ento ser includo de /etc/named.conf. Para permitir que o servidor host1 use a chave para host2 (que tem o endereo 192.168.2.3 neste exemplo), o arquivo /etc/named.conf do servidor deve incluir a seguinte regra:
402
Referncia
Entradas anlogas devem ser includas nos arquivos de configurao de host2. Adicione chaves TSIG a quaisquer ACLs (listas de controle de acesso, no confundir com as ACLs do sistema de arquivos) definidas por endereos IP e intervalos de endereo para possibilitar a segurana da transao. A entrada correspondente deve ter esta aparncia:
allow-update { key host1-host2. ;};
Este tpico discutido com mais detalhes no BIND Administrator Reference Manual (Manual de Referncia do Administrador BIND), em update-policy.
403
404
Referncia
Usando o NIS
21
Assim que vrios sistemas UNIX em uma rede desejam acessar recursos comuns, tornase muito importante que todas as identidades de usurio e grupo sejam a mesma para todas as mquinas nessa rede. A rede deve ser transparente para os usurios: qualquer que seja a mquina que estiverem usando, sempre se encontraro exatamente no mesmo ambiente. Isso possvel atravs dos servios do NIS e do NFS. O NFS distribui sistemas de arquivos em uma rede e discutido no Captulo 22, Compartilhando sistemas de arquivos com o NFS (p 415). O NIS (Network Information Service - Servio de Informaes de Rede) pode ser descrito como um servio parecido com um banco de dados que fornece acesso ao contedo de /etc/passwd, /etc/shadow e /etc/group atravs de redes. O NIS tambm pode ser usado para outros fins (disponibilizar o contedo de arquivos como /etc/hosts ou /etc/services, por exemplo), mas isso est alm do escopo dessa introduo. As pessoas, normalmente, referem-se ao NIS como YP (Yellow Pages - Pginas Amarelas), pois ele funciona como se fosse as pginas amarelas da rede.
Usando o NIS
405
Se o servidor NIS master tiver que exportar os dados para servidores escravos em outras sub-redes, configure o servidor master conforme descrito na Seo 21.1.1, Configurando um servidor NIS master (p 406) e configure os servidores escravos das sub-redes conforme descrito na Seo 21.1.2, Configurando um servidor NIS escravo (p 411).
406
Referncia
3 Determine opes de configurao NIS bsicas: a Digite o nome do domnio NIS. b Defina se o host tambm deve ser um cliente NIS, possibilitando que os usurios efetuem login e acessem os dados do servidor NIS. Para isso, selecione Este host tambm um cliente NIS. Selecione Mudana de senhas para permitir que os usurios da sua rede (usurios locais e aqueles gerenciados pelo servidor NIS) troquem suas senhas no servidor NIS (com o comando yppasswd). Isso disponibiliza as opes Permitir mudanas no campo GECOS e Permitir mudanas no shell de login. GECOS significa que os usurios tambm podem mudar suas configuraes de endereo e nomes com o comando ypchfn. SHELL permite que os usurios alterem seu shell padro com o comando ypchsh, por exemplo, para mudar de bash para sh. O shell novo deve ser uma das entradas predefinidas em /etc/shells. c Se o seu servidor NIS tiver que atuar como servidor master para servidores escravos NIS em outras sub-redes, selecione Existe um Servidor Escravo NIS ativo. d Selecione Abrir Portas no Firewall para fazer com que o YaST adapte as configuraes do firewall para o servidor NIS.
Usando o NIS
407
e Saia dessa caixa de dilogo com Prximo ou clique em Outras configuraes globais para fazer configuraes extras. Outras configuraes globais inclui a opo para mudar o diretrio de origem do servidor NIS (/etc por padro). Alm disso, possvel mesclar senhas aqui. A configurao deve ser Sim para que os arquivos (/etc/passwd, /etc/shadow e /etc/ group) sejam usados para criar o banco de dados do usurio. Tambm determine o menor ID de grupo e usurio que deve ser oferecido pelo NIS. Clique em OK para confirmar as configuraes e voltar tela anterior.
408
Referncia
4 Se voc habilitou anteriormente a opo Existe um servidor de NIS escravo ativo, digite os nomes de host usados como escravos e clique em Prximo. 5 Se voc no usa servidores escravos, a configurao escrava ignorada e voc continuar diretamente na caixa de dilogo para a configurao do banco de dados. Aqui, especifique os mapas, os bancos de dados parciais a serem transferidos do servidor NIS para o cliente. As configuraes padro geralmente so adequadas. Para sair dessa caixa de dilogo, clique em Prximo. 6 Marque que mapas devem estar disponveis e clique em Prximo para continuar.
Usando o NIS
409
7 Digite os hosts que tm permisso para fazer consultas ao servidor NIS. Clique no boto apropriado para adicionar, editar ou apagar hosts. Especifique de quais redes as solicitaes podem ser enviadas para o servidor NIS. Normalmente, esta sua rede interna. Nesse caso, deve haver as duas entradas a seguir:
255.0.0.0 0.0.0.0 127.0.0.0 0.0.0.0
A primeira entrada habilita conexes do seu prprio host, que o servidor NIS. A segunda permite que todos os hosts enviem as solicitaes ao servidor.
410
Referncia
Usando o NIS
411
a Digite o domnio NIS. b Digite o nome do host ou endereo IP do servidor master. c Selecione Este host tambm um cliente NIS para habilitar logins de usurio nesse servidor. d Adapte as configuraes do firewall com Abrir Portas no Firewall. e Clique em Prximo. 4 Digite os hosts que tm permisso para fazer consultas ao servidor NIS. Clique no boto apropriado para adicionar, editar ou apagar hosts. Especifique de quais redes as solicitaes podem ser enviadas para o servidor NIS. Normalmente, isso se refere a todos os hosts. Nesse caso, deve haver as duas entradas a seguir:
255.0.0.0 0.0.0.0 127.0.0.0 0.0.0.0
A primeira entrada habilita conexes do seu prprio host, que o servidor NIS. A segunda permite que todos os hosts com acesso mesma rede enviem solicitaes ao servidor. 5 Clique em Concluir para gravar as mudanas e sair da configurao.
Dependendo da instalao local, voc tambm poder ativar o automounter. Essa opo tambm instala softwares adicionais, se necessrio. Nas configuraes avanadas, desabilite a opo Responder aos Hosts Remotos para que outros hosts no possam consultar o servidor usado pelo seu cliente. Ao marcar a opo Servidor Estragado, o cliente poder receber respostas de um servidor que se comunica por uma porta sem privilgio. Para obter mais informaes, consulte man ypbind. Ao terminar suas configuraes, clique em Concluir para grav-las e retornar ao centro de controle do YaST. Figura 21.6 Definindo o domnio e o endereo de um servidor NIS
Usando o NIS
413
22
Como mencionado no Captulo 21, Usando o NIS (p 405), o NFS funciona com o NIS para tornar uma rede transparente para o usurio. Com o NFS, possvel distribuir sistemas de arquivos pela rede. No importa em qual terminal os usurios esto conectados. Eles sempre se encontram no mesmo ambiente. Assim como o NIS, o NFS um sistema cliente/servidor. Uma mquina pode ser ambos pode fornecer sistemas de arquivos pela rede (exportar) e montar sistemas de arquivos a partir de outros hosts (importar). IMPORTANTE: Necessidade do DNS A princpio, todas as exportaes podem ser feitas usando somente endereos IP. Para evitar tempos de espera, voc deve ter um sistema DNS em funcionamento. Isso necessrio pelo menos para fins de registro, pois o daemon montado inverte pesquisas.
dilogo. Clique em Abrir Porta no Firewall para abrir o firewall e permitir que computadores remotos acessem o servio. O status do firewall mostrado prximo caixa de seleo. Ao clicar em OK, voc grava suas mudanas. Consulte a Figura 22.1, Configurao do cliente NFS com o YaST (p 416). Figura 22.1 Configurao do cliente NFS com o YaST
Se os diretrios de usurio da mquina sun, por exemplo, precisarem ser importados, use o seguinte comando:
416
Referncia
Em seguida, ative Iniciar Servidor NFS e clique em Prximo. No campo de texto superior, digite os diretrios a serem exportados. Abaixo, digite os hosts que devem ter acesso a eles. Essa caixa de dilogo mostrada na Figura 22.3, Configurando um servidor NFS com o YaST (p 418). H quatro opes que podem ser configuradas para cada host: host nico, grupos de rede, curingas e redes IP. Uma explicao mais detalhada dessas opes fornecida por man exports. Sair conclui a configurao. Compartilhando sistemas de arquivos com o NFS 417
IMPORTANTE: Configurao automtica de firewall Se um firewall estiver ativo no seu sistema (SuSEfirewall2), o YaST adaptar sua configurao para o servidor NFS habilitando o servio nfs quando Abrir Portas no Firewall for selecionado.
418
Referncia
Para que esses servios sejam iniciados pelos scripts /etc/init.d/portmap e /etc/init.d/nfsserver quando o sistema for inicializado, digite os comandos insserv /etc/init.d/nfsserver e insserv /etc/init.d/portmap. Defina tambm quais sistemas de arquivos devem ser exportados para quais hosts do arquivo de configurao /etc/exports. Para que cada diretrio possa exportar, uma linha necessria para configurar as mquinas que podem acessar esse diretrio com determinadas permisses. Todos os subdiretrios desse diretrio tambm so automaticamente exportados. As mquinas autorizadas so normalmente especificadas com seus nomes completos (incluindo o nome de domnio), mas possvel usar curingas como * ou ? (que se expandem da mesma forma que o shell Bash). Se nenhuma mquina for especificada aqui, qualquer mquina poder importar esse sistema de arquivos com as permisses fornecidas. Configure as permisses entre colchetes aps o nome da mquina para o sistema de arquivos a ser exportado. As opes mais importantes so mostradas na Tabela 22.1, Permisses para sistema de arquivos exportados (p 419). Tabela 22.1 opo ro Permisses para sistema de arquivos exportados significado O sistema de arquivos exportado com permisso Apenas Leitura (padro). O sistema de arquivos exportado com permisso leituragravao. Isso garante que o usurio root de uma mquina importada no possua permisses root nesse sistema de arquivos. Isso pode ser feito designando o ID de usurio 65534 a usurios com o ID 0 (root). Esse ID de usurio deve ser configurado como nobody (que o padro).
rw
root_squash
no_root_squash No designa o ID de usurio 0 ao ID de usurio 65534, mantendo as permisses de root vlidas. link_relative Converte links absolutos (os que iniciam com /) em uma seqncia de ../. Isso s ter utilidade se todo o sistema de arquivos de uma mquina estiver montado (padro).
419
significado Os links simblicos permanecem intactos. Os IDs de usurio so exatamente os mesmos no cliente e no servidor (padro). Cliente e servidor no possuem IDs de usurio correspondentes. Isso faz com que o nfsd crie uma tabela de converso para IDs de usurio. O daemon ugidd necessrio para que isso funcione.
map_daemon
Seu arquivo exportaes talvez fique parecido com o Exemplo 22.1, /etc/exports (p 420). /etc/exports lido por mountd e nfsd. Se voc fizer mudanas nesse arquivo, reinicie mountd e nfsd para que elas sejam efetivadas. Isso pode ser feito facilmente com o rcnfsserver restart. Exemplo 22.1 /etc/exports
# # /etc/exports # /home /usr/X11 /usr/lib/texmf / /home/ftp # End of exports
420
Referncia
DHCP
23
A finalidade do DHCP designar configuraes de redes de forma central, a partir de um servidor, em vez de defini-las localmente em cada estao de trabalho. Um host configurado para usar o DHCP no tem controle sobre seu prprio endereo esttico. Ele habilitado para configurar a si mesmo de forma completa e automtica, de acordo com as direes do servidor. Se voc usar o NetworkManager no lado cliente, no ser necessrio configurar o cliente. Isto til caso haja ambientes variveis e apenas uma interface ativa de cada vez. Nunca use o NetworkManager em uma mquina que execute um servidor DHCP. Uma forma de configurar um servidor DHCP identificar cada cliente atravs do endereo de hardware de sua respectiva placa de rede (na maioria dos casos, fixa) e, ento, fornecer a esse cliente configuraes idnticas toda vez que ele se conectar ao servidor. O DHCP tambm pode ser configurado para designar endereos a cada cliente interessado de forma dinmica, a partir de um pool de endereos configurado para isso. No ltimo caso, o servidor DHCP tenta designar o mesmo endereo ao cliente toda vez que ele recebe uma solicitao, mesmo durante perodos mais longos. Isso s funciona enquanto a rede no tiver mais clientes do que endereos. O DHCP facilita a vida dos administradores do sistema. Quaisquer mudanas, mesmo as maiores, relacionadas a endereos e configurao de rede, geralmente podem ser implementadas de forma centralizada, editando o arquivo de configurao do servidor. Isso mais conveniente do que reconfigurar inmeras estaes de trabalho. Tambm muito mais fcil integrar mquinas, especialmente as mais novas, na rede, pois podem receber um endereo IP do pool. A recuperao de configuraes de rede apropriadas de um servidor DHCP til principalmente no caso de laptops regularmente usados em redes diferentes.
DHCP
421
Um servidor DHCP no s fornece o endereo IP e a mscara de rede, como tambm os endereos do servidor de nomes, o nome de host, o nome de domnio e o gateway a ser usado pelo cliente. Alm disso, o DHCP permite que vrios outros parmetros sejam configurados de forma centralizada, por exemplo, um servidor de horrios do qual clientes possam fazer poll do horrio atual ou at mesmo um servidor de impresso.
422
Referncia
configuraes globais Nos campos de entrada, fornea os detalhes da rede para todos os clientes que o servidor DHCP deve gerenciar. Esses detalhes so o nome de domnio, o endereo de um servidor de horrio, os endereos do servidor de nomes primrio e secundrio, os endereos de um servidor WINS e de impresso (para uma rede mista com os clientes Windows e Linux), o endereo de gateway e o tempo de aluguel. Consulte a Figura 23.2, Servidor DHCP: configuraes globais (p 424).
DHCP
423
DHCP dinmico Nessa etapa, configure o nvel de dinamismo dos endereos IP designados aos clientes. Para fazer isso, especifique uma faixa IP a partir da qual o servidor pode designar endereos a clientes DHCP. Todos esses endereos precisam ser cobertos pela mesma mscara de rede. Especifique tambm o tempo de aluguel durante o qual um cliente pode manter seu endereo IP sem precisar solicitar uma extenso do aluguel. Outra opo especificar o tempo de aluguel mximo, que o perodo durante o qual o servidor reserva um endereo IP para um cliente especfico. Consulte a Figura 23.3, Servidor DHCP: DHCP dinmico (p 425).
424
Referncia
Concluindo a configurao e definindo o modo de incio Depois da terceira parte do assistente de configurao, uma ltima caixa de dilogo mostrada, na qual voc pode definir como o servidor DHCP deve ser inicializado. Aqui, especifique se o servidor DHCP deve iniciar automaticamente quando o sistema for inicializado ou iniciar manualmente (por exemplo, para fins de teste) quando necessrio. Clique em Concluir para concluir a configurao do servidor. Consulte a Figura 23.4, Servidor DHCP: Inicializao (p 426).
DHCP
425
426
Referncia
as configuraes definidas no arquivo de configurao /etc/dhcpd.conf. Ao mudar os parmetros e valores desse arquivo, um administrador de sistemas pode influenciar o comportamento do programa de vrias formas. Observe o arquivo de amostra bsica /etc/dhcpd.conf no Exemplo 23.1, Arquivo de configurao /etc/dhcpd.conf (p 427). Exemplo 23.1 Arquivo de configurao /etc/dhcpd.conf
default-lease-time 600; max-lease-time 7200; opo opo opo opo opo # 10 minutes # 2 hours
nome de domnio "cosmos.all"; servidores de nomes de domnio 192.168.1.1, 192.168.1.2; endereo de broadcast 192.168.1.255; roteadores 192.168.1.254; mscara de sub-rede 255.255.255.0;
sub-rede 192.168.1.0 mscara de rede 255.255.255.0 { intervalo 192.168.1.10 192.168.1.20; intervalo 192.168.1.100 192.168.1.200; }
Esse arquivo de configurao simples deve ser suficiente para que o servidor DHCP designe endereos IP rede. Verifique se um ponto-e-vrgula foi inserido no final de cada linha, caso contrrio, o dhcpd no ser iniciado. O arquivo de exemplo pode ser dividido em trs sees. A primeira define quantos segundos um endereo IP alugado para um cliente que o solicitou por padro (tempo de aluguel padro) antes de solicitar uma renovao. Essa parte tambm inclui uma declarao do perodo mximo em que uma mquina pode manter um endereo IP designado pelo servidor DHCP sem solicitar uma renovao (max-lease-time). Na segunda parte, alguns parmetros de rede bsicos so definidos em um nvel global: A linha option domain-name define o domnio padro da sua rede. Com a entrada option domain-name-servers, especifique at trs valores para os servidores DNS usados para resolver endereos IP em nomes de host e vice-versa. Preferencialmente, configure um servidor de nomes em sua mquina ou em qualquer outra da rede antes de configurar o DHCP. Esse servidor de nomes deve tambm definir um nome de host para cada endereo dinmico e vice-versa. Para aprender a configurar o seu prprio servidor de nomes, leia o Captulo 20, Domain Name System (Sistema de Nomes de Domnio) (p 381).
DHCP
427
A linha option broadcast-address define o endereo de broadcast a ser usado pelo cliente solicitante. Com option routers, defina para onde o servidor deve enviar pacotes de dados que no puderem ser enviados para um host da rede local (de acordo com o endereo de host de origem e de destino e a mscara de sub-rede fornecidos). Na maioria dos casos, especialmente em redes menores, esse roteador idntico ao gateway da Internet. Com option subnet-mask, especifique a mscara de rede designada a clientes. A ltima seo do arquivo define uma rede, incluindo uma mscara de sub-rede. Para concluir, especifique a faixa de endereos que o daemon do DHCP deve usar para designar endereos IP a clientes interessados. No Exemplo 23.1, Arquivo de configurao /etc/dhcpd.conf (p 427), os clientes podem receber qualquer endereo entre 192.168.1.10 e 192.168.1.20, assim como 192.168.1.100 e 192.168.1.200. Depois de editar essas poucas linhas, voc conseguir ativar o daemon do DHCP com o comando rcdhcpd start. Ele poder ser usado imediatamente. Use o comando rcdhcpd check-syntax para executar uma rpida verificao de sintaxe. Se houver problemas inesperados em sua configurao (o servidor for interrompido com um erro ou no retornar done na inicializao), voc dever descobrir o que aconteceu de errado, procurando informaes no registro do sistema principal /var/log/ messages ou no console 10 ( Ctrl + Alt + F10 ). Em um sistema SUSE Linux padro, o daemon do DHCP iniciado em um ambiente chroot por razes de segurana. Os arquivos de configurao precisam ser copiados para o ambiente chroot para que o daemon possa localiz-los. Normalmente, no preciso se preocupar com isso, pois o comando rcdhcpd start copia automaticamente os arquivos.
428
Referncia
Para identificar um cliente configurado com um endereo esttico, o dhcpd usa o endereo de hardware, que um cdigo numrico fixo, globalmente exclusivo, que consiste em seis pares de octetos para a identificao de todos os dispositivos da rede (por exemplo, 00:00:45:12:EE:F4). Se as respectivas linhas, como as do Exemplo 23.2, Adies ao arquivo de configurao (p 429), forem adicionadas ao arquivo de configurao do Exemplo 23.1, Arquivo de configurao /etc/dhcpd.conf (p 427), o daemon do DHCP sempre designar o mesmo conjunto de dados ao cliente correspondente. Exemplo 23.2 Adies ao arquivo de configurao
host earth { hardware ethernet 00:00:45:12:EE:F4; fixed-address 192.168.1.21; }
O nome do respectivo cliente (host nome do host, aqui earth) digitado na primeira linha e o endereo MAC na segunda linha. Em hosts Linux, encontre o endereo MAC com o comando ip link show, seguido do dispositivo de rede (por exemplo, eth0). A sada deve conter algo como
link/ether 00:00:45:12:EE:F4
No exemplo anterior, um cliente com uma placa de rede, cujo endereo MAC 00:00:45:12:EE:F4, adquire o endereo IP 192.168.1.21 e o nome de host earth automaticamente. O tipo de hardware a ser inserido ethernet em quase todos os casos, embora token-ring, utilizado freqentemente em sistemas IBM, tambm seja suportado.
DHCP
429
configure a varivel DHCPD_RUN_CHROOTED em /etc/sysconfig/dhcpd para no. Para permitir que o dhcpd resolva nomes de host, mesmo de dentro do ambiente chroot, alguns outros arquivos de configurao tambm precisam ser copiados: /etc/localtime /etc/host.conf /etc/hosts /etc/resolv.conf Esses arquivos so copiados para /var/lib/dhcp/etc/ quando o script init iniciado. Faa as mudanas necessrias nessas cpias, caso sejam modificadas dinamicamente por scripts como /etc/ppp/ip-up. Entretanto, voc no precisar se preocupar com isso se o arquivo de configurao especificar somente endereos IP (em vez de nomes de host). Se a configurao incluir arquivos adicionais que devem ser copiados para o ambiente chroot, defina-os na varivel DHCPD_CONF_INCLUDE_FILES do arquivo /etc/ sysconfig/dhcpd. Para garantir que o recurso de registro DHCP continue funcionando mesmo depois de uma reinicializao do daemon do syslog-ng, h a entrada adicional SYSLOGD_ADDITIONAL_SOCKET_DHCP no arquivo /etc/sysconfig/ syslog.
430
Referncia
24
O mecanismo NTP (network time protocol) um protocolo para sincronizar a hora do sistema na rede. Primeiro, uma mquina pode obter a hora de um servidor, que uma fonte de tempo confivel. Segundo, a mquina pode agir como uma fonte de horrio para outros computadores na rede. O objetivo duplo manter o tempo absoluto e a sincronizao do horrio do sistema de todas as mquinas na rede. Manter uma hora de sistema exata importante em vrias situaes. O relgio do hardware interno (BIOS) no atende aos requisitos de aplicativos como bancos de dados. A correo manual da hora do sistema levaria a problemas severos pois, por exemplo, um pulo inverso pode causar o mau funcionamento de aplicativos crticos. Em uma rede, em geral necessrio sincronizar a hora do sistema em todas as mquinas, mas o ajuste de hora manual no uma boa abordagem. O xntp fornece um mecanismo para resolver esses problemas. Ele ajusta continuamente a hora do sistema com a ajuda de servidores de horrio confiveis na rede. Ele habilita tambm o gerenciamento de relgios de referncia local como relgios controlados pelo rdio.
431
em clientes que no executam o SUSEfirewall porque esses clientes pertencem a uma intranet protegida. Ambas esto descritas no seguinte.
Na caixa de dilogo de servidor detalhada, determine se voc implementar a sincronizao de horrio usando um servidor de horrio a partir da rede local (Servidor NTP Local) ou um servidor de horrio baseado na Internet que lida com o seu fuso horrio (Servidor NTP Pblico). Para um servidor de horrio local, clique em Busca para iniciar uma consulta SLP por servidores de horrio disponveis na sua rede. Selecione o servidor de horrio mais adequado a partir da lista de resultados de pesquisa e saia da caixa de dilogo com OK. Para um servidor de horrio pblico, selecione o
432
Referncia
pas (fuso horrio) e um servidor adequado da lista sob Servidor NTP Pblico, em seguida, saia da caixa de dilogo com OK. Na caixa de dilogo principal, teste a disponibilidade do servidor selecionado com Testar e saia da caixa de dilogo com Concluir.
Em Configurao de Cliente NTP Complexa, determine se xntpd deve ser iniciado em uma cadeia chroot. Isso aumenta a segurana caso ocorra um ataque em xntpd, pois isso evita que o invasor comprometa todo o sistema. Configurar o Daemon NTP via DHCP configura o cliente NTP para obter uma lista dos servidores NTP disponveis na rede via DHCP.
433
Os servidores e outras fontes de horrio para cliente a serem consultados esto listados na parte inferior. Modifique esta lista conforme necessrio com Adicionar, Editar e Apagar. Exibir Registro fornece a possibilidade de exibir os arquivos de registro do seu cliente. Clique em Adicionar para adicionar uma nova fonte de informao de horrio. Na caixa de dilogo seguinte, selecione o tipo de fonte com a qual a sincronizao de horrio deve ser realizada. As seguintes opes esto disponveis: Servidor Outra caixa de dilogo permite selecionar um servidor NTP (conforme descrito na Seo 24.1.1, Configurao de cliente NTP rpida (p 432)). Ative Usar para Sincronizao Inicial para acionar a sincronizao da informao de horrio entre o servidor e o cliente quando o sistema inicializado. Um campo de entrada permite especificar opes adicionais para xntpd. Consulte /usr/share/doc/ packages/xntp-doc (parte do pacote xntp-doc) para obter informaes detalhadas. Parceiro Um parceiro uma mquina qual uma relao simtrica estabelecida: ele age como um servidor de horrio e como cliente. Para usar um parceiro na mesma rede em vez de um servidor, insira o endereo do sistema. O restante da caixa de dilogo igual caixa de dilogo Servidor. Relgio controlado pelo rdio Para usar um relgio controlado pelo rdio no seu sistema para a sincronizao de horrio, insira o tipo de relgio, o nmero da unidade, o nome do dispositivo e outras opes nesta caixa de dilogo. Clique em Calibrao do Driver para ajustar o driver. Informaes detalhadas sobre a operao de um relgio controlado por rdio local esto disponveis em /usr/share/doc/packages/xntp-doc/ html/refclock.htm. Transmisso de sada Consultas e informaes sobre horrio tambm podem ser transmitidas na rede. Nesta caixa de dilogo, insira o endereo ao qual estas transmisses devem ser enviadas. No ative a transmisso a menos que voc tenha uma fonte de horrio confivel como um relgio controlado por rdio.
434
Referncia
Transmisso de entrada Se voc deseja que o seu cliente receba suas informaes atravs de transmisso, insira o endereo do qual os respectivos pacotes devem ser aceitos nestes campos.
435
est associado a um nmero. No xntp, a configurao real ocorre atravs de pseudo IPs. Os relgios so inseridos no arquivo /etc/ntp.conf como se existissem na rede. Para este propsito, endereos IP especiais so atribudos a eles na forma 127.127.t.u. Aqui, t representa o tipo de relgio e determina o driver a ser usado e u para unidade, que determina a interface usada. Normalmente, os drivers individuais tm parmetros especiais que descrevem detalhes de configurao. O arquivo /usr/share/doc/packages/xntp-doc/html/ driverNN.htm (onde NN o nmero do driver) fornece informaes sobre o tipo especfico de relgio. Por exemplo, o relgio type 8 (relgio controlado por rdio na interface serial) exige um modo adicional que especifica o relgio de forma mais precisa. O mdulo de recebimento Conrad DCF77, por exemplo, tem o modo 5. Para usar este relgio como referncia preferida, especifique a palavra-chave prefer. A linha do servidor completa para um mdulo de recebimento Conrad DCF77 seria:
server 127.127.8.0 mode 5 prefer
Outros relgios seguem o mesmo padro. Seguindo a instalao do pacote xntp-doc, a documentao para o xntp est disponvel no diretrio /usr/share/doc/ packages/xntp-doc/html. O arquivo /usr/share/doc/packages/ xntp-doc/html/refclock.htm fornece links para as pginas do driver descrevendo os parmetros do driver.
436
Referncia
25
O LDAP um conjunto de protocolos criado para acessar e manter diretrios de informaes. O LDAP pode ser usado para vrios propsitos, como gerenciamento de grupos e usurios, gerenciamento de configurao de sistema ou gerenciamento de endereos. Este captulo fornece uma compreenso bsica sobre como o OpenLDAP funciona e como gerenciar dados do LDAP com o YaST. Embora haja vrias implementaes do protocolo LDAP, este captulo concentra-se inteiramente na implementao do OpenLDAP. crucial em um ambiente de rede manter informaes importantes estruturadas e rapidamente disponveis. Isso pode ser realizado com um servio de diretrio que, como as pginas amarelas comuns, mantm informaes disponveis em uma forma bem estruturada e rapidamente pesquisvel. No caso ideal, um servidor central mantm os dados em um diretrio e os distribui a todos os clientes usando um determinado protocolo. Os dados so estruturados de forma a permitir que uma ampla variedades de aplicativos os acessem. Desta forma, no necessrio para cada ferramenta de calendrio e cliente de e-mail manter seu prprio banco de dados um repositrio central pode ser acessado em vez disso. Isso reduz bastante o esforo de administrao para as informaes. O uso de um protocolo padronizado e aberto como o LDAP garante que muitos aplicativos de cliente diferentes possam acessar tais informaes. Um diretrio neste contexto um tipo de banco de dados otimizado para pesquisa e leitura rpida e efetiva: Para possibilitar vrios acessos de leitura (simultneos), o acesso de gravao est limitado a um pequeno nmero de atualizaes pelo administrador. Bancos de
437
dados convencionais so otimizados para aceitar o mais amplo volume de dados possvel em um perodo curto de tempo. Como acessos de gravao s podem ser executados de forma restrita, um servio de diretrio usado para administrar, em sua maioria, informaes estticas, sem alteraes. Dados em um banco de dados convencional normalmente so alterados com freqncia (dados dinmicos). Nmeros de telefone em um diretrio de empresa no so alterados com tanta freqncia como, por exemplo, os nmeros administrados em contabilidade. Quando dados estticos so administrados, atualizaes dos conjuntos de dados existentes so muito raras. Ao trabalhar com dados dinmicos, especialmente relativos a conjuntos de dados como contas de banco ou contabilidade, a consistncia dos dados de importncia fundamental. Se um valor deve ser subtrado de um local para ser adicionado a outro, ambas as operaes devem ocorrer simultaneamente, em uma transao, para garantir o equilbrio sobre o estoque de dados. Bancos de dados suportam estas transaes. Diretrios no suportam estas transaes. Inconsistncias de curto prazo dos dados so aceitveis em diretrios. O design de um servio de diretrio como o LDAP no criado para suportar mecanismos de consulta ou atualizao complexa. Todos os aplicativos acessando este servio devem obter acesso de forma rpida e fcil. Vrios servios de diretrio existiram previamente e ainda existem no Unix e fora dele. Novell NDS, Microsoft ADS, Banyan's Street Talk e o OSI standard X.500 so apenas alguns exemplos. O LDAP foi originalmente planejado como uma verso menor do DAP, o protocolo de acesso de diretrio, que foi desenvolvido para acessar o X.500. O padro do X.500 regula a organizao hierrquica de entradas de diretrio. O LDAP uma verso menor do DAP. Sem perder a hierarquia de entrada do X.500, beneficie-se das capacidades de plataforma cruzada do LDAP e salve recursos. O uso de TCP/IP facilita o estabelecimento de interfaces entre um aplicativo de acoplagem e o servio LDAP. O LDAP, enquanto isso, evoluiu e usado cada vez mais como uma soluo independente sem o suporte do X.500. O LDAP suporta referncias com o LDAPv3 (a verso de protocolo no pacote openldap2), possibilitando ter bancos de dados distribudos. O uso de SASL (autenticao simples e camada de segurana) tambm novo.
438
Referncia
O LDAP no est limitado a consultar dados dos servidores X.500, como foi planejado originalmente. H um servidor de cdigo aberto slapd, que pode armazenar informaes de objetos em um banco de dados local. H tambm uma extenso chamada slurpd, que responsvel por replicar vrios servidores LDAP. O pacote openldap2 consiste em: slapd Um servidor LDAPv3 independente que administra informaes de objeto em um banco de dados baseado em BerkeleyDB. slurpd Este programa habilita a replicao de modificaes aos dados no servidor LDAP local para outros servidores LDAP instalados na rede. ferramentas adicionais para manuteno do sistema slapcat, slapadd, slapindex
439
Rota de correio (postfix, sendmail) Blocos de endereos para clientes de correio, como Mozilla, Evolution e Outlook Administrao de descries de zona para um servidor de nomes BIND9 Autenticao do usurio com Samba em redes heterogneas Esta lista pode ser estendida pois o LDAP extensvel, ao contrrio do NIS. A estrutura hierrquica claramente definida dos dados facilita a administrao de grandes quantidades de dados, pois pode ser pesquisada de forma melhor.
440
Referncia
O diagrama completo compreende uma rvore de informaes de diretrio ficcional. As entradas em trs nveis esto apresentadas. Cada entrada corresponde a uma caixa na figura. O nome distinto vlido e completo para o funcionrio SUSE ficcional Geeko Linux, neste caso cn=Geeko Linux,ou=doc,dc=suse,dc=de. Ele composto atravs da adio do RDN cn=Geeko Linux ao DN da entrada anterior ou=doc,dc=suse,dc=de. A determinao global dos tipos de objetos que devem ser armazenados no DIT realizada segundo um esquema. O tipo de um objeto determinado pela classe de objeto. A classe de objeto determina quais atributos podem ou devem ser atribudos ao objeto em questo. Portanto, um esquema deve conter definies de todos atributos e classes de objetos usados no cenrio do aplicativo desejado. H alguns esquemas comuns (consulte RFC 2252 e 2256). Porm, possvel criar esquemas personalizados ou usar vrios esquemas complementando um ao outro se isso for exigido pelo ambiente no qual o servidor LDAP deve operar. A Tabela 25.1, Atributos e classes de objeto usados comumente (p 442) oferece uma pequena viso geral das classes de objeto de core.schema e inetorgperson .schema usadas no exemplo, incluindo atributos necessrios e valores de atributos vlidos.
441
Tabela 25.1
Atributos e classes de objeto usados comumente Significado Entrada de exemplo suse Atributos compulsrios dc
Classe de objeto
dcObject
organizationalUnit organizationalUnit (unidade organizacional) inetOrgPerson inetOrgPerson (dados relativos a pessoas para a intranet ou Internet)
doc
ou
Geeko Linux
sn e cn
O Exemplo 25.1, Exemplo de schema.core (p 442) mostra um exemplo de uma diretiva de esquemas com explicaes (numerao de linha para motivos explanatrios). Exemplo 25.1 Exemplo de schema.core
#1 attributetype (2.5.4.11 NAME ( 'ou' 'organizationalUnitName') #2 DESC 'RFC2256: unidade organizacional qual este objeto pertence' #3 nome SUP )
... #4 objectclass ( 2.5.6.5 NAME 'organizationalUnit' #5 DESC 'RFC2256: an organizational unit' #6 SUP top STRUCTURAL #7 MUST ou #8 MAY (userPassword $ searchGuide $ seeAlso $ businessCategory $ x121Address $ registeredAddress $ destinationIndicator $ preferredDeliveryMethod $ telexNumber $ teletexTerminalIdentifier $ telephoneNumber $ internationaliSDNNumber $ facsimileTelephoneNumber $ street $ postOfficeBox $ postalCode $ postalAddress $ physicalDeliveryOfficeName $ st $ l $ description) ) ...
O tipo de atributo organizationalUnitName e a classe de objeto correspondente organizationalUnit servem como um exemplo aqui. A linha 1 apresenta o nome do atributo, seu OID exclusivo (identificador de objeto) (numrico) e a abreviao do atributo.
442
Referncia
A linha 2 fornece uma descrio breve do atributo com DESC. O RFC correspondente na qual a definio baseada tambm mencionado aqui. SUP na linha 3 indica um tipo de atributo super ordenado ao qual este atributo pertence. A definio da classe de objeto organizationalUnit comea na linha 4, como na definio do atributo, com um OID e o nome da classe de objeto. A linha 5 apresenta uma breve descrio da classe de objeto. A linha 6, com esta entrada SUP top, indica que esta classe de objeto no est subordinada a outra classe de objeto. A linha 7, comeando com MUST, lista todos os tipos de atributo que devem ser usados em conjunto com um objeto do tipo organizationalUnit. A linha 8, comeando com MAY, lista todos os tipos de atributos que so permitidos em conjunto com esta classe de objeto. Uma boa introduo para o uso de esquemas pode ser encontrada na documentao de OpenLDAP. Quando instalada, encontre-a em /usr/share/doc/packages/ openldap2/admin-guide/index.html.
A primeira diretiva em slapd.conf, mostrada no Exemplo 25.2, slapd.conf: Incluir diretiva para esquemas (p 443), specifica o esquema atravs do qual o diretrio LDAP organizado. A entrada core.schema compulsria. Esquemas necessrios adicionais
443
esto anexados a esta diretiva. Informaes podem ser encontradas na documentao do OpenLDAP includa. Exemplo 25.3 slapd.conf: pidfile e argsfile
pidfile /var/run/slapd/slapd.pid argsfile /var/run/slapd/slapd.args
Estes dois arquivos contm o PID (ID de processo) e alguns dos argumentos com os quais o processo slapd iniciado. No h necessidade para modificaes aqui. Exemplo 25.4 slapd.conf: Controle de acesso
# Sample Access Control # Allow read access of root DSE # Allow self write access # Allow authenticated users read access # Allow anonymous users to authenticate # access to dn="" by * read access to * by self write by users read by anonymous auth # # if no access controls are present, the default is: # Allow read by all # # rootdn can always write!
O Exemplo 25.4, slapd.conf: Controle de acesso (p 444) o exemplo de slapd.conf que regula as permisses de acesso para o diretrio LDAP no servidor. As configuraes realizadas aqui na seo global de slapd.conf so vlidas desde que nenhuma regra de acesso personalizada seja declarada na seo especfica ao banco de dados. Estas devem sobrescrever as declaraes globais. Conforme apresentado aqui, todos os usurios tm acesso de leitura ao diretrio, mas somente o administrador (rootdn) pode gravar para este diretrio. O regulamento de controle de acesso no LDAP um processo altamente complexo. As dicas a seguir podem ajudar: Toda regra de acesso tem a seguinte estrutura:
acesso a <what> por <who> <access>
what um marcador para o objeto ou atributo ao qual acesso concedido. Ramificaes de diretrio individuais podem ser protegidas explicitamente com regras separadas. Tambm possvel processar regies da rvore de diretrios com uma nica regra usando expresses regulares. slapd avalia todas as regras na ordem em que elas esto listadas no arquivo de configurao. Mais regras gerais 444 Referncia
devem estar listadas aps outras mais especficas a primeira regra slapd considerada vlida avaliada e todas as entradas seguintes so ignoradas. who determina a quem deve ser concedido acesso s reas determinadas com what. Expresses regulares podem ser usadas. slapd novamente anula a avaliao de who aps a primeira correspondncia, por isso regras mais especficas devem ser listadas antes das mais gerais. As entradas mostradas na Tabela 25.2, Grupos de usurios e suas concesses de acesso (p 445) so possveis. Tabela 25.2 Tag * annimos usurios prprio dn.regex=<regex> Grupos de usurios e suas concesses de acesso Escopo Todos os usurios sem exceo Usurios (annimos) no autenticados Usurios autenticados Usurios conectados com o objeto de destino Todos os usurios que correspondem expresso regular
acesso especifica o tipo de acesso. Use as opes listadas na Tabela 25.3, Tipos de acesso (p 445). Tabela 25.3 Tag nenhum autenticao comparar busca Tipos de acesso Escopo do acesso Sem acesso Para entrar em contato com o servidor Para objetos para acesso de comparao Para a utilizao de filtros de busca
445
slapd compara o direito de acesso solicitado pelo cliente com os concedidos em slapd.conf. Acesso concedido ao cliente se as regras permitirem um direito igual ou maior do que o solicitado. Se o cliente solicitar direitos maiores do que os declarados nas regras, o acesso negado. O Exemplo 25.5, slapd.conf: Exemplo de controle de acesso (p 446) mostra um exemplo de um simples controle de acesso que pode ser desenvolvido arbitrariamente usando expresses regulares. Exemplo 25.5 slapd.conf: Exemplo de controle de acesso
access to dn.regex="ou=([^,]+),dc=suse,dc=de" by dn.regex="cn=administrator,ou=$1,dc=suse,dc=de" write by user read by * none
Esta regra declara que somente o seu respectivo administrador tem acesso de gravao a uma entrada ou individual. Todos os outros usurios autenticados tm acesso de leitura e o restante do mundo no tem acesso. DICA: Estabelecendo regras de acesso Se no houver acesso a uma regra ou nenhuma correspondncia por diretiva, o acesso negado. Somente direitos de acesso explicitamente declarados so concedidos. Se nenhuma regra for declarada, o princpio padro o acesso de gravao para o administrador e o acesso de leitura para o restante do mundo. Encontre informaes detalhadas e uma configurao de exemplo para direitos de acesso LDAP na documentao online do pacote openldap2 instalado. Fora a possibilidade de administrar permisses de acesso com o arquivo de configurao do servidor central (slapd.conf), no h informaes de controle de acesso (ACI). A ACI permite o armazenamento das informaes de acesso para objetos individuais na rvore LDAP. Este tipo de controle de acesso ainda no comum e considerado
446
Referncia
O tipo de banco de dados, um banco de dados Berkeley neste caso, determinado na primeira linha desta seo (consulte o Exemplo 25.6, slapd.conf: Diretivas especficas de bancos de dados (p 447)). checkpoint determina a quantidade de dados (em kb) mantida no registro de transao antes que seja gravada no banco de dados real e o tempo (em minutos) entre as duas aes de gravao. cachesize define o nmero de objetos mantidos no cache do banco de dados. suffix determina por qual parte da rvore LDAP este servidor deve ser responsvel. O rootdn seguinte determina quem possui direitos de administrador para este servidor. O usurio declarado aqui no precisa ter uma entrada LDAP ou existir como um usurio regular. A senha do administrador definida com rootpw. Em vez de usar secret aqui, possvel inserir o hash da senha do administrador criado por slappasswd. A diretiva directory indica o diretrio (no sistema de arquivos) onde os diretrios de bancos de dados esto armazenados no servidor. A ltima diretiva, index objectClass eq, resulta na manuteno de um ndice de todas as classes de objetos. Atributos para os quais os usurios pesquisam com freqncia podem ser adicionados aqui de acordo com a experincia. Regras de acesso personalizado definidas aqui para o banco de dados so usadas em vez de regras de acesso global.
447
448
Referncia
classes de objeto disponveis. O arquivo LDIF para criar uma estrutura bruta para o exemplo na Figura 25.1, Estrutura de um diretrio LDAP (p 441) teria a mesma aparncia que no Exemplo 25.7, Exemplo de um arquivo LDIF (p 449). Exemplo 25.7 Exemplo de um arquivo LDIF
# The SUSE Organization dn: dc=suse,dc=de objectClass: dcObject objectClass: organization o: SUSE AG dc: suse # The organizational unit development (devel) dn: ou=devel,dc=suse,dc=de objectClass: organizationalUnit ou: devel # The organizational unit documentation (doc) dn: ou=doc,dc=suse,dc=de objectClass: organizationalUnit ou: doc # The organizational unit internal IT (it) dn: ou=it,dc=suse,dc=de objectClass: organizationalUnit ou: it
IMPORTANTE: Codificao de arquivos LDIF O LDAP funciona com o UTF-8 (Unicode). Umlauts deve ser codificado corretamente. Use um editor que suporte UTF-8, como o Kate ou verses recentes de Emacs. De outra forma, evite umlauts e outros caracteres especiais ou use recode para registrar a entrada em UTF-8. Salve o arquivo com o sufixo .ldif, em seguida, transmita-o ao servidor com o seguinte comando:
ldapadd -x -D <dn of the administrator> -W -f <file>.ldif
-x desliga a autenticao com o SASL neste caso. -D declara o usurio que chama a operao. O DN vlido do administrador inserido aqui como foi configurado em slapd.conf. No exemplo atual, h cn=admin,dc=suse,dc=de. -W evita a insero de senha na linha de comando (em texto claro) e ativa um prompt de senha separado. Esta senha foi determinada previamente em slapd.conf com rootpw. -f transmite o nome de arquivo. Consulte os detalhes da execuo de ldapadd no Exemplo 25.8, ldapadd com example.ldif (p 450).
449
Os dados de usurio de indivduos podem ser preparados em arquivos LDIF separados. O Exemplo 25.9, Dados LDIF para Tux (p 450) adiciona Tux ao novo diretrio LDAP. Exemplo 25.9 Dados LDIF para Tux
# coworker Tux dn: cn=Tux Linux,ou=devel,dc=suse,dc=de objectClass: inetOrgPerson cn: Tux Linux givenName: Tux sn: Linux mail: tux@suse.de uid: tux telephoneNumber: +49 1234 567-8
Um arquivo LDIF pode conter um nmero arbitrrio de objetos. possvel transmitir ramificaes de todo o diretrio ao servidor de uma vez ou somente partes como mostrado no exemplo de objetos individuais. Se for necessrio modificar alguns dados com freqncia, uma subdiviso de objetos nicos recomendvel.
450
Referncia
Alternativamente, transmita os atributos para alterar diretamente para ldapmodify. O procedimento para isto est descrito abaixo: 1. Inicie ldapmodify e insira sua senha:
ldapmodify -x -D cn=admin,dc=suse,dc=de -W Enter LDAP password:
2.
Informaes detalhadas sobre ldapmodify e sua sintaxe podem ser encontradas na pgina de manual de ldapmodify(1).
A opo -b determina a base de busca a seo da rvore dentro da qual a busca deve ser executada. No caso atual, isto dc=suse,dc=de. Para realizar uma busca mais detalhada em subsees especficas do diretrio LDAP (por exemplo, somente no departamento devel), transmita esta seo para ldapsearch com -b. -x solicita a ativao da autenticao simples. (objectClass=*) declara que todos os objetos contidos no diretrio devem ser lidos. Esta opo de comando pode ser usada aps a criao de uma nova rvore de diretrio para verificar se todas as entradas foram registradas corretamente e se o servidor responde como desejado. Mais informaes sobre o uso de ldapsearch podem ser encontradas na pgina de manual correspondente (ldapsearch(1)). LDAP Um servio de diretrio 451
Ao configurar manualmente servios adicionais para usar o LDAP, inclua o mdulo LDAP do PAM no arquivo de configurao PAM correspondente ao servio em /etc/ pam.d. Arquivos de configurao j adaptados a servios individuais podem ser 452 Referncia
encontrados em /usr/share/doc/packages/pam_ldap/pam.d/. Copie os arquivos apropriados para /etc/pam.d. A resoluo de nome glibc atravs do mecanismo nsswitch adaptado ao uso do LDAP com nss_ldap. Um arquivo nsswitch.conf novo, adaptado criado em /etc/ com a instalao deste pacote. Mais informaes sobre o funcionamento de nsswitch.conf podem ser encontradas na Seo 18.6.1, Arquivos de configurao (p 366). As linhas a seguir devem estar presentes em nsswitch.conf para a administrao do usurio e autenticao com LDAP. Consulte o Exemplo 25.12, Adaptaes em nsswitch.conf (p 453). Exemplo 25.12 Adaptaes em nsswitch.conf
passwd: compat group: compat passwd_compat: ldap group_compat: ldap
Estas linhas ordenam a biblioteca de resoluo de glibc primeiro para avaliar os arquivos correspondentes em /etc e adicionalmente acessar o servidor LDAP como fontes para dados de usurio e autenticao. Teste este mecanismo, por exemplo, lendo o contedo do banco de dados de usurio com o comando getent passwd. O conjunto retornado deve conter uma pesquisa dos usurios locais do seu sistema e todos os usurios armazenados no servidor LDAP. Para evitar que usurios regulares gerenciados atravs de LDAP efetuem login no servidor com ssh ou login, os arquivos /etc/passwd e /etc/group cada precisam incluir uma linha adicional. Esta a linha +::::::/sbin/nologin em /etc/passwd e +::: em /etc/group.
453
grupo. O gerenciamento de usurios LDAP permite atribuir mais atributos e diferentes a usurios e grupos do que as solues de gerenciamento de grupos ou usurios tradicionais. Isso est descrito em Configurando os mdulos de administrao de usurios e grupos do YaST (p 457).
Configurao Bsica
A caixa de dilogo de configurao bsica do cliente LDAP (Figura 25.2, YaST: Configurao do cliente LDAP (p 454)) abre durante a instalao se voc escolher o gerenciamento de usurios LDAP ou quando selecionar Servios de Rede Cliente LDAP no Centro de Controle do YaST no sistema instalado. Figura 25.2 YaST: Configurao do cliente LDAP
Para autenticar usurios da sua mquina em um servidor OpenLDAP e habilitar o gerenciamento de usurios via OpenLDAP, proceda da seguinte maneira: 1 Clique em Usar LDAP para habilitar o uso de LDAP. Selecione Usar LDAP mas Desabilitar Logins se voc deseja usar o LDAP para autenticao, mas no deseja que outros usurios efetuem login neste cliente. 2 Insira o endereo IP do servidor LDAP para uso.
454
Referncia
3 Insira a Base LDAP DN para selecionar a base de busca no servidor LDAP. Para recuperar o DN base automaticamente, clique em Pesquisar DN. Em seguida, o YaST verifica se h algum banco de dados LDAP no endereo de servidor especificado acima. Escolha o DN base apropriado nos resultados de pesquisa fornecidos pelo YaST. 4 Se a comunicao protegida por TLS ou SSL com o servidor for necessria, selecione LDAP TLS/SSL. 5 Se o servidor LDAP ainda usar LDAPv2, habilite explicitamente o uso desta verso de protocolo selecionando LDAP Verso 2. 6 Selecione Iniciar Automounter para montar diretrios remotos no seu cliente como um /home gerenciado remotamente. 7 Clique em Concluir para aplicar suas configuraes. Figura 25.3 YaST: Configurao Avanada
Para modificar dados no servidor como administrador, clique em Configurao Avanada. A caixa de dilogo seguinte dividida em duas guias. Consulte a Figura 25.3, YaST: Configurao Avanada (p 455):
455
1 Na guia Configuraes do Cliente, ajuste as seguintes configuraes s suas necessidades: a Se a base de busca para usurios, senhas e grupos diferir da base de busca global especificada em Base LDAP DN, insira esses contextos de nomeao diferentes em Mapa do Usurio, Mapa da Senha e Mapa do Grupo. b Especifique o protocolo de alterao de senha. O mtodo padro a ser usado sempre que uma senha alterada crypt, significando que os hashes de senha gerados por crypt so usados. Para obter detalhes sobre esta e outras opes, consulte a pgina de manual de pam_ldap. c Especifique o grupo LDAP a ser usado com Atributo de Membro de Grupo. O valor padro para isso membro. 2 Em Configuraes da Administrao, ajuste as seguintes configuraes: a Defina a base para armazenar os dados do gerenciamento de usurios via Base de Configurao DN. b Insira o valor apropriado para DN do Administrador. Este DN deve ser idntico ao valor rootdn especificado em /etc/openldap/slapd .conf para habilitar este usurio especfico a manipular dados armazenados no servidor LDAP. Digite o DN completo (como cn=admin,dc=suse,dc=de) ou ative Adicionar DN Base para adicionar automaticamente o DN base quando voc digitar cn=admin. c Marque Criar Objetos de Configurao Padro para criar os objetos de configurao bsica no servidor para habilitar o gerenciamento de usurios via LDAP. d Se a mquina do cliente deve agir como um servidor de arquivos para diretrios pessoais na rede, marque Diretrios Pessoais nesta Mquina. e Clique em Aceitar para sair de Configurao Avanada e em Concluir para aplicar suas configuraes. Use Definir Configuraes de Gerenciamento de Usurios para editar entradas no servidor LDAP. Acesso aos mdulos de configurao no servidor ento concedido
456
Referncia
de acordo com os ACLs e ACIs armazenados no servidor. Siga os procedimentos apresentados em Configurando os mdulos de administrao de usurios e grupos do YaST (p 457).
A caixa de dilogo para configurao do mdulo (Figura 25.4, YaST: Configurao do mdulo (p 457)) permite a criao de novos mdulos, a seleo e modificao de mdulos de configurao existentes e o design e a modificao de modelos para estes mdulos.
457
Para criar um novo mdulo de configurao, proceda da seguinte maneira: 1 Clique em Novo e selecione o tipo de mdulo a ser criado. Para um mdulo de configurao de usurios, selecione suseuserconfiguration e para configurao de grupos, selecione susegroupconfiguration. 2 Escolha um nome para o novo modelo. A viso de contedo apresenta uma tabela listando todos os atributos permitidos neste mdulo com seus valores atribudos. Fora dos atributos definidos, a lista tambm contm todos os outros atributos permitidos pelo esquema atual, mas que no so usados atualmente. 3 Aceite os valores predefinidos ou ajuste os padres para usar na configurao de usurios e grupos selecionando o respectivo atributo, pressionando Editar e inserindo o novo valor. Renomeie um mdulo alterando o atributo cn do mdulo. Clicar em Apagar apaga o mdulo atualmente selecionado. 4 Aps clicar em OK, o novo mdulo ser adicionado ao menu de seleo. Os mdulos YaST para a administrao de usurios e grupos embute modelos com valores padro sensveis. Para editar um modelo associado a um mdulo de configurao, proceda da seguinte maneira: 1 Na caixa de dilogo Configurao do Mdulo, clique em Configurar Modelo. 2 Determine os valores dos atributos gerais atribudos a este modelo de acordo com suas necessidades ou deixe alguns vazios. Atributos vazios so apagados no servidor LDAP. 3 Modifique, apague ou adicione novos valores padro para novos objetos (objetos de configurao de grupos ou usurios na rvore LDAP).
458
Referncia
Conecte o modelo ao seu mdulo definindo o valor de atributo susedefaulttemplate do mdulo ao DN do mdulo adaptado. DICA Os valores padro para um atributo podem ser criados de outros atributos com o uso de uma varivel em vez de um valor absoluto. Por exemplo, ao criar um novo usurio, cn=%sn %givenName criado automaticamente dos valores de atributos para sn e givenName. Aps todos os mdulos e modelos terem sido configurados corretamente e estarem prontos para execuo, novos grupos e usurios podem ser registrados da maneira usual com o YaST.
459
460
Referncia
A forma de entrada inicial da administrao do usurio oferece Opes do LDAP. Isso fornece a possibilidade de aplicar filtros de busca do LDAP para o conjunto de usurios disponveis ou ir para o mdulo para a configurao de grupos e usurios LDAP selecionando Configurao de Grupos e Usurios LDAP.
461
OpenLDAP Faq-O-Matic Uma coleo abrangente de perguntas e respostas referentes instalao, configurao e ao uso do OpenLDAP. Encontre-o em http://www.openldap .org/faq/data/cache/1.html. Guia Rpido de Incio Instrues breves etapa por etapa para instalar o seu primeiro servidor LDAP. Encontre-o em http://www.openldap.org/doc/admin22/quickstart .html ou em um sistema instalado em /usr/share/doc/packages/ openldap2/admin-guide/quickstart.html. Guia do Administrador do OpenLDAP 2.2 Uma introduo detalhada para todos os aspectos importantes da configurao do LDAP, incluindo criptografia e controles de acesso. Consulte http://www .openldap.org/doc/admin22/ ou, em um sistema instalado, /usr/ share/doc/packages/openldap2/admin-guide/index.html. Compreendendo o LDAP Uma introduo geral detalhada para os princpios bsicos do LDAP: http:// www.redbooks.ibm.com/redbooks/pdfs/sg244986.pdf. Literatura impressa sobre o LDAP: LDAP System Administration por Gerald Carter (ISBN 1-56592-491-6) Understanding and Deploying LDAP Directory Services por Howes, Smith e Good (ISBN 0-672-32316-8) O material de referncia mais importante sobre o LDAP so os RFCs (request for comments) correspondentes, 2251 a 2256.
462
Referncia
26
Com uma cota de mais de 70%, o Apache o servidor Web mais usado mundialmente de acordo com a pesquisa da http://www.netcraft.com/ em novembro de 2005. O Apache, desenvolvido pela Apache Software Foundation (http://www .apache.org/), est disponvel para a maioria dos sistemas operacionais. O SUSE Linux inclui o Apache verso 2.2. Neste captulo, aprenda como instalar, configurar e ajustar um servidor Web; como usar SSL, CGI e mdulos adicionais; e como solucionar problemas do Apache.
26.1.1 Requisitos
Certifique-se de que os requisitos sejam atendidos antes de tentar configurar o servidor Web Apache: 1. 2. A rede da mquina configurada corretamente. Para obter mais informaes sobre este tpico, consulte o Captulo 18, Rede bsica (p 331). A hora exata do sistema da mquina mantida por meio da sincronizao com um servidor de horrio. Isso necessrio porque as partes do protocolo HTTP
463
dependem da hora certa. Consulte o Captulo 24, Sincronizao de horrio com NTP (p 431) para saber mais sobre este tpico. 3. 4. As atualizaes de segurana mais recentes so instaladas. Em caso de dvida, execute uma Atualizao Online do YaST. A porta do servidor Web padro (porta 80) aberta no firewall. Para isso, configure o SUSEFirewall2 para permitir o servio Servidor HTTP na zona externa. Isso pode ser feito com o YaST. Configurando com o YaST (p 110) fornece os detalhes.
26.1.2 Instalao
O Apache no SUSE Linux no instalado por padro. Para instal-lo, inicie o YaST e selecione Software Gerenciamento de Software. Agora escolha Filtros Selees e selecione Servidor da Web Simples com Apache2. Confirme a instalao dos pacotes dependentes para concluir o processo de instalao. O Apache instalado com uma configurao padro e predefinida que executada instantaneamente. A instalao inclui o mdulo de multiprocessamento apache2-prefork, alm do mdulo PHP5. Consulte a Seo 26.4, Instalando, ativando e configurando mdulos (p 482) para obter mais informaes sobre mdulos.
26.1.3 Inicializao
Para iniciar o Apache e assegurar que seja iniciado automaticamente durante a inicializao da mquina, inicie o YaST e selecione Sistema Servios do Sistema (Nvel de Execuo). Procure apache2 e Habilite o servio. O servidor Web iniciado imediatamente. Quando voc grava suas mudanas com Concluir, o sistema configurado para iniciar o Apache automaticamente nos nveis de execuo 3 e 5 durante a inicializao. Para obter mais informaes sobre os nveis de execuo no SUSE Linux e uma descrio do editor de nvel de execuo do YaST, consulte a Seo 8.2.3, Configurando servios do sistema (runlevel) com o YaST (p 196). Para iniciar o Apache usando o shell, execute rcapache2 start. Para assegurar que o Apache seja iniciado automaticamente durante a inicializao da mquina nos nveis de execuo 3 e 5, use chkconfig -a apache2.
464
Referncia
Se voc no tiver recebido mensagens de erro ao iniciar o Apache, o servidor Web dever estar em execuo. Inicie um browser e abra http://localhost/. Dever ser exibida uma pgina de teste do Apache iniciada por If you can see this, it means that the installation of the Apache Web server software on this system was successful (Se voc estiver vendo isso, significa que a instalao do servidor Web Apache neste sistema foi bem-sucedida). Se voc no ver essa pgina, consulte a Seo 26.8, Soluo de problemas (p 501). Agora que o servidor Web est em execuo, possvel adicionar seus prprios documentos, ajustar a configurao de acordo com suas necessidades ou adicionar funcionalidade instalando mdulos.
465
Arquivos de configurao
Os arquivos de configurao do Apache podem ser encontrados em duas localizaes diferentes: /etc/sysconfig/apache2 /etc/apache2/
/etc/sysconfig/apache2
O /etc/sysconfig/apache2 controla algumas configuraes globais do Apache, como mdulos para carregar, arquivos de configurao adicionais para incluir, flags com os quais o servidor deve ser iniciado e flags que devem ser adicionados linha de comando. Como toda opo de configurao desse arquivo est amplamente documentada, no so citadas aqui. No caso de um servidor Web de finalidade geral, as configuraes em /etc/sysconfig/apache2 devem bastar para as necessidades de configurao. IMPORTANTE: Nenhum mdulo SuSEconfig do Apache O mdulo SuSEconfig do Apache foi removido do SUSE Linux. Ele deixou de ser necessrio para a execuo do SuSEconfig aps a mudana de /etc/ sysconfig/apache2.
/etc/apache2/
/etc/apache2/ hospeda todos os arquivos de configurao do Apache. O propsito de cada arquivo explicado a seguir. Cada um deles inclui vrias opes de configurao (tambm chamadas de diretivas). Como todas as opes de configurao desses arquivos esto amplamente documentadas, no so citadas aqui. Os arquivos de configurao do Apache so organizados da seguinte maneira:
/etc/apache2/ | |- charset.conv |- conf.d/ | | | |- *.conf | |- default-server.conf
466
Referncia
||||||||||| | | | | |||
errors.conf httpd.conf listen.conf magic mime.types mod_*.conf server-tuning.conf ssl-global.conf ssl.* sysconfig.d | |- global.conf |- include.conf |- loadmodule.conf . . uid.conf vhosts.d |- *.conf
Arquivos de configurao do Apache em /etc/apache2/ charset.conv Especifica os conjuntos de caracteres usados para idiomas diferentes. No editar. conf.d/*.conf Arquivos de configurao adicionados por outros mdulos. Esses arquivos podem ser includos na configurao do host virtual quando necessrio. Consulte exemplos em vhosts.d/vhost.template. Com isso, voc pode fornecer diferentes conjuntos de mdulos para hosts virtuais diferentes. default-server.conf Configurao global para todos os hosts virtuais com padres aceitveis. Em vez de mudar os valores, sobregrave-os com uma configurao de host virtual. errors.conf Define como o Apache responde a erros. Para personalizar essas mensagens em todos os hosts virtuais, edite esse arquivo. Seno, sobregrave essas diretivas nas configuraes do seu host virtual. httpd.conf Principal arquivo de configurao do servidor Apache. Evite mudar esse arquivo. Ele contm essencialmente declaraes e configuraes globais. Sobregrave as configuraes globais nos respectivos arquivos de configurao relacionados aqui. Mude as configuraes especficas de host (como a raiz de documento) na configurao do host virtual.
467
listen.conf Vincula o Apache a endereos IP e portas especficos. A hospedagem virtual baseada em nomes (consulte Hosts virtuais identificados por nome (p 470) tambm configurada nesse arquivo. magic Dados do mdulo mime_magic que ajudam o Apache a determinar automaticamente o tipo MIME de um arquivo desconhecido. No mudar. mime.types Tipos MIME conhecidos pelo sistema ( um link para /etc/mime.types). No editar. Se for preciso adicionar tipos MIME no relacionados aqui, adicione-os a mod_mime-defaults.conf. mod_*.conf Arquivos de configurao dos mdulos instalados por padro. Consulte a Seo 26.4, Instalando, ativando e configurando mdulos (p 482) para obter detalhes. Observe que os arquivos de configurao dos mdulos opcionais residem no diretrio conf .d. server-tuning.conf Contm diretivas de configurao para os diferentes MPMs (consulte a Seo 26.4.4, Mdulos de multiprocessamento (p 486)), bem como opes de configurao geral que controlam o desempenho do Apache. Teste o servidor Web adequadamente ao fazer mudanas nesse arquivo. ssl-global.conf e ssl.* Configurao SSL global e dados de certificado SSL. Consulte a Seo 26.6, Configurando um servidor Web seguro com SSL (p 493) para obter detalhes. sysconfig.d/*.conf Arquivos de configurao gerados automaticamente de /etc/sysconfig/ apache2. No mude nenhum desses arquivos. De preferncia, edite /etc/ sysconfig/apache2. No coloque outros arquivos de configurao nesse diretrio. uid.conf Especifica o usurio e o ID do grupo com que o Apache executado. No mudar.
468
Referncia
vhosts.d/*.conf Dever conter a configurao do seu host virtual. O diretrio contm arquivos de modelo para hosts virtuais com e sem SSL. Todos os arquivos deste diretrio que terminam com .conf so includos automaticamente na configurao do Apache. Consulte Configurao do host virtual (p 469) para obter detalhes.
469
podem ser usadas em um contexto de host virtual. Consulte http://httpd.apache .org/docs/2.0/mod/quickreference.html para obter mais informaes sobre as diretivas de configurao do Apache.
A tag VirtualHost de abertura usa o endereo IP (ou nome de domnio completo) declarado anteriormente com NameVirtualHost como um argumento na configurao de host virtual identificado por nome. Um nmero de porta anteriormente declarado com a diretiva NameVirtualHost opcional. O curinga * tambm permitido como substituto do endereo IP. Esta sintaxe somente vlida quando combinada ao curinga em NameVirtualHost *. Ao usar endereos IPv6, inclua o endereo entre colchetes.
470
Referncia
Aqui, as diretivas VirtualHost somente so especificadas para interfaces que no sejam 192.168.0.10. Quando uma diretiva Listen tambm configurada para 192.168.0.10, necessrio criar um host virtual identificado por IP separado para responder aos pedidos HTTP quela interface, caso contrrio, sero aplicadas as diretivas encontradas na configurao do servidor padro (/etc/apache2/default-server .conf).
471
472
Referncia
473
ser uma LAN, uma WAN ou a Internet. Manter a porta fechada til somente nas situaes de teste em que no necessrio nenhum acesso externo ao servidor Web. Clique em Prximo para continuar a configurao.
Mdulos
A opo de configurao Mdulos propicia a ativao ou desativao das linguagens de script para as quais o servidor Web dever ter suporte. Para obter informaes sobre a ativao ou desativao de outros mdulos, consulte Mdulos do Servidor (p 479). Clique em Prximo para avanar para a caixa de dilogo seguinte.
Host Padro
Esta opo pertence ao servidor Web padro. Como explicado na Configurao do host virtual (p 469), o Apache pode atender a vrios hosts virtuais a partir de uma nica mquina fsica. O primeiro host virtual declarado no arquivo de configurao normalmente conhecido como host padro. Cada host virtual herda a configurao do host padro. Para editar as configuraes do host (tambm chamadas de diretivas), escolha a entrada adequada na tabela e clique em Editar. Para adicionar novas diretivas, clique em Adicionar. Para apagar uma diretiva, selecione-a e clique em Excluir.
474
Referncia
Esta a lista das configuraes padro do servidor: Raiz de Documento Caminho para o diretrio do qual o Apache atende a arquivos deste host. /srv/ www/htdocs o local padro. Alias Com a ajuda das diretivas Alias, os URLs podem ser mapeados para localizaes fsicas do sistema de arquivos. Isso significa que determinado caminho mesmo fora da Raiz de Documento no sistema de arquivos pode ser acessado por meio de um URL que serve de lias para esse caminho. O diretrio padro Alias /icons do SUSE Linux aponta para /usr/share/ apache2/icons para os cones do Apache exibidos na tela de ndice de diretrio. ScriptAlias Semelhante diretiva Alias, a diretiva ScriptAlias mapeia um URL para a localizao do sistema de arquivos. A diferena que ScriptAlias designa o
475
diretrio de destino como localizao CGI, significando que os scripts CGI devem ser executados nessa localizao. Diretrio Com a configurao Diretrio, voc pode incluir um grupo de opes de configurao que se aplicaro somente ao diretrio especificado. As opes de acesso e exibio dos diretrios /usr/share/apache2/icons e /srv/www/cgi-bin so configuradas aqui. No dever ser necessrio mudar os padres. Incluso Com a incluso possvel especificar arquivos de configurao adicionais. /etc/ apache2/conf.d/ o diretrio que contm os arquivos de configurao que acompanham os mdulos externos. Por padro, esto includos todos os arquivos neste diretrio (*.conf). /etc/apache2/conf.d/apache2-manual ?conf o diretrio que contm todos os arquivos de configurao apache2-manual. Nome do Servidor Especifica o URL padro usado por clientes para contatar o servidor Web. Use um nome completo de domnio (FQDN) para acessar o servidor Web em http://FQDN/ ou em seu endereo IP. No possvel escolher um nome arbitrrio aqui; o servidor dever ser conhecido por este nome. E-Mail do Administrador do Servidor Endereo de e-mail do administrador de servidor. Este endereo, por exemplo, mostrado nas pginas de erro criadas pelo Apache. Resoluo do Servidor Esta opo refere-se Configurao do host virtual (p 469). Determinar Servidor que Solicita por Cabealhos HTTP permite uma resposta do VirtualHost para uma solicitao a seu nome de servidor (consulte Hosts virtuais identificados por nome (p 470)). Determinar Servidor que Solicita por Endereo IP faz com que o Apache selecione o host solicitado, de acordo com as informaes de cabealho HTTP enviadas pelo cliente. Consulte Hosts virtuais identificados por IP (p 471) para obter mais detalhes sobre hosts virtuais identificados por IP. Aps concluir a etapa do Host Padro, clique em Prximo para continuar a configurao.
476
Referncia
Hosts Virtuais
Nesta etapa, o assistente exibe uma lista dos hosts virtuais j configurados (consulte Configurao do host virtual (p 469)). Se voc no tiver feito mudanas manualmente antes de iniciar o assistente de HTTP do YaST, somente um host virtual estar presente (idntico ao host padro configurado na etapa anterior). Ele est marcado como padro (com um asterisco ao lado do nome do servidor). Para adicionar um host, clique em Adicionar para abrir uma caixa de dilogo na qual inserir informaes bsicas sobre o host. Identificao de Servidor contm o nome do servidor, a raiz do contedo do servidor (DocumentRoot) e o e-mail do administrador. Resoluo do Servidor usado para determinar como um host identificado (por nome ou por IP). Essas opes so explicadas em Host Padro (p 474). Clique em Prximo para avanar para a segunda parte da caixa de dilogo de configurao do host virtual. Na parte 2 da configurao do host virtual especifique se os scripts CGI sero habilitados e os diretrios a serem usados para eles. Tambm possvel habilitar SSL. Para isso, necessrio especificar tambm o caminho para o certificado. Consulte a Seo 26.6.2, Configurando o Apache com SSL (p 498) para obter detalhes sobre SSL e certificados. Com a opo ndice de Diretrio, voc pode especificar o arquivo a exibir quando o cliente solicita um diretrio (por padro, index.html). Adicione um ou mais nomes de arquivos (separados por espaos) se desejar mudar essa definio. Com a opo Habilitar HTML Pblico, o contedo dos diretrios pblicos dos usurios (~user/public _html/) disponibilizado no servidor em http://www.example.com/~user. IMPORTANTE: Criando hosts virtuais No possvel adicionar hosts virtuais vontade. Quando se usa hosts virtuais identificados por nome, cada nome de host dever ser resolvido na rede. No caso de hosts virtuais identificados por IP, voc s pode designar um host para cada endereo IP disponvel.
Resumo
Esta a etapa final do assistente. Determine como e quando o servidor Apache deve ser iniciado: durante a inicializao ou manualmente. Consulte tambm um breve resumo sobre a configurao feita at o momento. Se voc estiver satisfeito com as configuraes, clique em Concluir para concluir a configurao. Para mudar algo, clique Servidor HTTP Apache 477
em Anterior at chegar caixa de dilogo desejada. Clique em Configurao Especialista de Servidor HTTP para abrir a caixa de dilogo descrita em Configurao de Servidor HTTP (p 478). Figura 26.2 Assistente de Servidor HTTP: Resumo
478
Referncia
pela porta 80. Sempre marque a opo Abrir Firewall nas Portas Selecionadas, seno o servidor Web no poder ser alcanado do exterior. Manter a porta fechada til somente nas situaes de teste em que no necessrio nenhum acesso externo ao servidor Web. Com Arquivos de Registro, observe o registro de acesso ou o registro de erros. Isso til para testar a configurao. O arquivo de registro abre uma janela separada, na qual voc tambm pode reiniciar ou recarregar o servidor Web (consulte a Seo 26.3, Iniciando e parando o Apache (p 480) para obter detalhes). Esses comandos so efetivados imediatamente. Figura 26.3 Configurao de Servidor HTTP: Escutar Portas e Endereos
Mdulos do Servidor
Voc pode mudar o status (habilitado ou desabilitado) dos mdulos do Apache2 clicando em Toggle Status. Clique em Adicionar Mdulo para adicionar um novo mdulo que j esteja instalado mas no relacionado. Saiba mais sobre mdulos na Seo 26.4, Instalando, ativando e configurando mdulos (p 482).
479
480
Referncia
start Inicia o Apache caso ainda no esteja em execuo. startssl Inicia o Apache com suporte SSL caso ainda no esteja em execuo. Para obter mais informaes sobre o suporte SSL, consulte a Seo 26.6, Configurando um servidor Web seguro com SSL (p 493). restart Pra e reinicia o Apache. Inicia o servidor Web caso ele no estivesse em execuo antes. try-restart Pra e reinicia o Apache somente se estivesse em execuo antes. reload or graceful Pra o servidor Web instruindo todos os processos bifurcados do Apache para concluir suas solicitaes antes de encerrar. Com o trmino de cada processo, ele substitudo por um processo recm-iniciado, o que resulta no reincio completo do Apache. DICA rcapache2 reload o mtodo preferencial para reiniciar o Apache em ambientes de produo (por exemplo, para ativar uma mudana na configurao), pois permite que todos os clientes sejam atendidos sem provocar interrupes na conexo. configtest Verifica a sintaxe dos arquivos de configurao sem afetar um servidor Web em execuo. Como essa verificao forada toda vez que o servidor iniciado, recarregado ou reiniciado, normalmente no necessrio executar o teste explicitamente (se houver um erro de configurao, o servidor Web no ser iniciado, recarregado nem reiniciado). probe Examina a necessidade de um recarregamento (verifica se a configurao mudou) e sugere os argumentos necessrios para o comando rcapache2.
481
server-status e full-server-status Descarta uma tela de status breve ou completa, respectivamente. Requer lynx ou w3m instalado e o mdulo mod_status habilitado. Alm disso, adicione status a APACHE_SERVER_FLAGS no arquivo /etc/sysconfig/apache2. DICA: Flags adicionais Se voc especificar flags adicionais a rcapache2, eles sero transferidos diretamente para o servidor Web.
482
Referncia
Mdulos externos Os mdulos rotulados como externos no esto includos na distribuio oficial do Apache. O SUSE Linux oferece vrios deles j disponveis para uso. Mdulos de multiprocessamento Os MPMs so responsveis pela aceitao e manipulao de solicitaes ao servidor Web, representando o centro do software do servidor Web.
483
diretrio. Caso contrrio, inclua os arquivos individuais. Consulte /etc/ apache2/vhost.d/vhost.template para obter exemplos.
484
Referncia
mod_cgi mod_cgi necessrio para executar scripts CGI. Esse mdulo habilitado por padro. mod_deflate Quando se usa esse mdulo, o Apache pode ser configurado para compactar dinamicamente determinados tipos de arquivos antes de entreg-los. mod_dir mod_dir fornece a diretiva DirectoryIndex, com a qual voc pode configurar os arquivos que sero entregues automaticamente quando for solicitado um diretrio (index.html por padro). Ele tambm faz o redirecionamento automtico para o URl correto quando uma solicitao de diretrio no contm uma barra no fim. Esse mdulo habilitado por padro. mod_expires Com mod_expires, voc pode controlar a freqncia com que os caches de proxy e browser atualizam seus documentos enviando um cabealho Expires. Esse mdulo habilitado por padro. mod_include mod_include permite usar SSI (Server Side Includes), que fornece uma funcionalidade bsica para gerar pginas HTML de forma dinmica. Esse mdulo habilitado por padro. mod_info Fornece uma viso geral abrangente da configurao do servidor em http://localhost/server-info/. Por motivos de segurana, voc deve sempre limitar o acesso a esse URL. Por padro, somente localhost possui permisso para acessar esse URL. mod_info est configurado em /etc/apache2/mod_info .conf mod_log_config Com este mdulo, possvel configurar a aparncia dos arquivos de registro do Apache. Esse mdulo habilitado por padro. mod_mime O mdulo mime assegura-se de que um arquivo seja entregue com o cabealho MIME correto de acordo com a extenso do nome do arquivo (por exemplo text/html para documentos HTML). Esse mdulo habilitado por padro.
485
mod_negotiation Necessrio para negociao de contedo. Consulte http://httpd.apache.org/docs/2.2/content-negotiation.html para obter mais informaes. Esse mdulo habilitado por padro. mod_rewrite Fornece a funcionalidade do mod_alias, porm, oferece mais recursos e flexibilidade. Com mod_rewrite, voc pode redirecionar URLs de acordo com regras mltiplas, cabealhos de solicitao e outros. mod_speling mod_speling tenta corrigir automaticamente erros tipogrficos em URLs, como erros de maiscula/minscula. mod_ssl Habilita as conexes criptografadas entre o servidor Web e os clientes. Consulte a Seo 26.6, Configurando um servidor Web seguro com SSL (p 493) para obter detalhes. Esse mdulo habilitado por padro. mod_status Fornece informaes sobre a atividade e o desempenho do servidor em http://localhost/server-status/. Por motivos de segurana, voc deve sempre limitar o acesso a esse URL. Por padro, somente localhost possui permisso para acessar esse URI. mod_status est configurado em /etc/apache2/mod _status.conf mod_suexec mod_suexec permite executar scripts CGI para outro usurio e grupo. Esse mdulo habilitado por padro. mod_userdir Habilita diretrios especficos de usurio disponveis em ~user/. A diretiva UserDir deve ser especificada na configurao. Esse mdulo habilitado por padro.
486
Referncia
MPM prefork
O MPM prefork implementa um servidor Web de pr-bifurcao sem threads. Ele faz o servidor Web comportar-se de maneira semelhante ao Apache verso 1.x, no sentido de isolar as solicitaes e as manipular atravs da bifurcao de um processo filho separado. Dessa forma, solicitaes problemticas no podem afetar outras, evitando um bloqueio do servidor Web. Embora o MPM prefork oferea estabilidade com este mtodo processual, ele consome mais recursos do sistema do que o seu equivalente, o MPM worker. O MPM prefork considerado o MPM padro para sistemas operacionais baseados em Unix. IMPORTANTE: MPMs neste documento Este documento pressupe que o Apache usado com o MPM prefork.
MPM worker
O MPM worker oferece um servidor Web de vrios threads. Thread a forma mais simples de um processo. A vantagem de um thread em relao a um processo o menor consumo de recursos. Em vez de somente bifurcar processos filhos, o MPM worker atende solicitaes usando threads com processos do servidor. Os processos filhos pr-bifurcados possuem vrios threads. Esse mtodo melhora o desempenho do Apache por consumir menos recursos do sistema do que o MPM prefork. Uma grande desvantagem a estabilidade do MPM worker: se um thread for corrompido, todos os threads de um processo podem ser afetados. No pior dos casos, isso poder resultar em falha do servidor. Talvez ocorram erros internos do servidor devido a threads que no podem se comunicar com recursos do sistema, sobretudo ao usar CGI (Common Gateway Interface) com o Apache em situao de sobrecarga. Outro argumento contra o uso do MPM worker com o Apache que nem todos os mdulos disponveis do Apache so seguros para o thread e, portanto, no podem ser usados em conjunto com o MPM worker. ATENO: Usando mdulos PHP com MPMs Nem todos os mdulos PHP disponveis so seguros para o thread. O uso do MPM worker com mod_php bastante desaconselhvel.
487
488
Referncia
mod_ruby O mod_ruby embute o interpretador Ruby no servidor Web Apache, permitindo que os scripts CGI do Ruby sejam executados de forma nativa. Eles so iniciados muito mais rapidamente do que sem mod_ruby. Nome do pacote: apache2-mod_ruby Mais informaes: /usr/share/doc/packages/apache2-mod_ruby mod_jk-ap20 Esse mdulo fornece conectores entre o Apache e um container do servlet Tomcat. Nome do pacote: mod_jk-ap20 Mais informaes: /usr/share/doc/packages/mod_jk-ap20
26.4.6 Compilao
O Apache pode ser estendido por usurios avanados atravs da gravao de mdulos personalizados. Para desenvolver mdulos para o Apache ou compilar mdulos de terceiros, necessrio o pacote apache2-devel e as ferramentas de desenvolvimento correspondentes. O apache2-devel tambm contm as ferramentas apxs2, que so necessrias para a compilao de mdulos adicionais para o Apache. O apxs2 permite a compilao e instalao de mdulos do cdigo-fonte (inclusive as mudanas necessrias nos arquivos de configurao), que cria objetos compartilhados dinmicos (DSOs) que podem ser carregados no Apache durante a execuo. Os binrios do apxs2 ficam localizados em /usr/sbin: /usr/sbin/apxs2 apropriado para a criao de um mdulo de extenso que funciona com qualquer MPM. A instalao fica localizada em /usr/lib/ apache2. /usr/sbin/apxs2-prefork apropriado para os mdulos MPM prbifurcao. A instalao fica localizada em /usr/lib/apache2-prefork. /usr/sbin/apxs2-worker apropriado para os mdulos MPM prbifurcao. O apxs2 instala os mdulos de modo que possam ser usados em todos os MPMs. Os outros dois programas instalam os mdulos para que possam ser usados somente nos
489
respectivos MPMs. O apxs2 instala os mdulos em /usr/lib/apache2, enquanto que o apxs2-prefork e o apxs2-worker instalam os mdulos em /usr/lib/ apache2-prefork ou /usr/lib/apache2-worker. Instale e ative um mdulo a partir do cdigo-fonte usando os comandos cd /path/to/module/source; apxs2 -cia mod_foo.c (-c compila, -i instala e -a ativa o mdulo). Outras opes do apxs2 so descritas na pgina de manual apxs2(1).
490
Referncia
Instrui o Apache a tratar todos os arquivos dentro desse diretrio como scripts CGI. Habilita a execuo de scripts CGI. Instrui o servidor a tratar os arquivos com extenses .pl e .cgi como scripts CGI. Ajuste de acordo com as suas necessidades. As diretivas Order e Allow controlam o estado de acesso padro e a ordem em que as diretivas Allow e Deny so avaliadas. Neste caso, as declaraes deny so avaliadas antes das declaraes allow, e o acesso de todos os lugares habilitado.
491
informaes adicionais). Como os servidores Web so executados com outro usurio, os scripts CGI devem ser passveis de execuo e leitura universais. Passe para o diretrio CGI e use o comando chmod 755 teste.cgi para aplicar as permisses apropriadas. Agora chame http://localhost/cgi-bin/teste.cgi ou http://exemplo.com/cgi-bin/teste.cgi. Voc dever ver o relatrio do script de teste CGI/1.0.
Verifique se o script no contm erros de programao. Se voc no tiver mudado o teste.cgi, talvez no seja essa a questo. Porm, se voc estiver usando seus prprios programas, sempre verifique se eles no contm erros de programao.
492
Referncia
493
A criao de um certificado se resume em um processo de duas etapas. Primeiro gerada uma chave privada para a autoridade de certificao, em seguida, o certificado do servidor assinado com essa chave. DICA: Mais informaes Para saber mais sobre conceitos e definies sobre SSL/TSL, consulte http://httpd.apache.org/docs/2.2/ssl/ssl_intro.html.
494
Referncia
/usr/bin/openssl /usr/sbin/ custom. No tente executar esse comando fora desse diretrio. O programa apresenta uma srie de prompts, dos quais alguns precisam de entrada do usurio. Procedimento 26.1 Criao de um certificado auto-assinado com mkcert.sh 1 Decide the signature algorithm used for certificates (Defina o algoritmo de assinatura usado para certificados) Escolha RSA ( com DSA.
R
2 Generating RSA private key for CA (1024 bit) (Gerando chave privada RSA para CA - 1024 bits) Nenhuma interao necessria. 3 Generating X.509 certificate signing request for CA (Gerando solicitao de assinatura de certificado X.509 para CA) Crie aqui o nome exclusivo da CA. Para isso voc ter que responder a algumas perguntas, como nome do pas ou da organizao. Digite dados vlidos, pois tudo que voc digitar aqui aparecer depois no certificado. Voc no precisa responder a todas as perguntas. Se alguma no lhe diz respeito ou se voc quer deix-la em branco, use .. Nome comum o nome da prpria CA escolha um nome significativo, como CA Minha empresa. 4 Generating X.509 certificate for CA signed by itself (Gerando certificado X.509 para CA assinado por ele prprio) Escolha a verso
3
do certificado (padro).
5 Generating RSA private key for SERVER (1024 bit) (Gerando chave privada RSA para servidor - 1024 bits) Nenhuma interao necessria.
495
6 Generating X.509 certificate signing request for SERVER (Gerando solicitao de assinatura de certificado X.509 para servidor) Crie aqui o nome exclusivo da chave do servidor. As perguntas so quase idnticas s que j foram respondidas para o nome exclusivo da CA. Os dados digitados aqui se aplicam ao servidor Web e no precisam ser idnticos aos dados da CA (por exemplo, se o servidor estiver em outro lugar). IMPORTANTE: Selecionando um nome comum O nome comum digitado aqui dever ser o nome de host completo do servidor seguro (por exemplo, www.exemplo.com). De outra forma, quando o browser acessar o servidor Web, ele emitir aviso de que o certificado no corresponde ao servidor. 7 Generating X.509 certificate signed by own CA (Gerando certificado X.509 assinado pela prpria CA) Escolha a verso
3
do certificado (padro).
8 Encrypting RSA private key of CA with a pass phrase for security (Criptografando chave privada RSA da CA com frase secreta por segurana) altamente recomendvel criptografar a chave privada da CA com uma senha, por isso, escolha Y e digite uma senha. 9 Encrypting RSA private key of SERVER with a pass phrase for security (Criptografando chave privada RSA do servidor com frase secreta por segurana) Criptografar a chave do servidor com senha significa digitar essa senha todas as vezes que o servidor Web for iniciado. Isso dificulta o incio automtico do servidor na inicializao da mquina ou a reinicializao do servidor Web. Portanto, razovel responder N a essa pergunta. Lembre-se de que a sua chave fica desprotegida quando no criptografada com senha e assegure-se de que somente pessoas autorizadas tenham acesso chave.
496
Referncia
IMPORTANTE: Criptografando a chave do servidor Se voc escolher criptografar a chave do servidor com senha, aumente o valor de APACHE_TIMEOUT em /etc/sysconfig/apache2. Caso contrrio, voc no haver tempo suficiente para voc digitar a frase secreta antes que a tentativa de iniciar o servidor fracasse. A pgina de resultados do script contm uma lista com certificados e chaves gerados por ele. Ao contrrio da sada do script, os arquivos no foram gerados no diretrio local conf, mas nas localizaes corretas em /etc/apache2/. A ltima etapa copiar o arquivo do certificado da CA de /etc/apache2/ssl .crt/ca.crt em uma localizao em que os usurios possam acess-lo para incorpor-lo lista de CAs conhecidas e confiveis em seus browsers da Web. Caso contrrio, o browser acusar que o certificado foi emitido por uma autoridade desconhecida. O certificado vlido por um ano. IMPORTANTE: Certificados auto-assinados Somente use um certificado auto-assinado em um servidor Web que seja acessado pelas pessoas que o reconhecem e confiam em voc como autoridade de certificao. No recomendado usar esse tipo de certificado em uma loja aberta ao pblico, por exemplo.
497
Em primeiro lugar, o script pede uma senha, com a qual a CSR deve ser criptografada. Em seguida, voc solicitado a digitar um nome exclusivo. Para isso voc ter que responder a algumas perguntas, como nome do pas ou da organizao. Digite dados vlidos tudo que voc digitar aqui aparecer depois no certificado e ser verificado. Voc no precisa responder a todas as perguntas. Se voc no tiver resposta para alguma pergunta ou quiser deix-la em branco, use .. Nome comum o nome da prpria CA escolha um nome significativo, como CA Minha empresa. Por fim, necessrio digitar uma senha de verificao e um nome de empresa alternativo. Localize a CSR no diretrio em que voc chamou o script. O nome do arquivo newreq .pem.
Comece apenas ajustando os valores das seguintes diretivas: DocumentRoot ServerName ServerAdmin ErrorLog TransferLog IMPORTANTE: Hosts virtuais identificados por nome e SSL impossvel executar vrios hosts virtuais habilitados para SSL em um servidor dotado de apenas um endereo IP. Os usurios que se conectam a uma configurao assim recebem uma mensagem de aviso informando que o certificado no corresponde ao nome do servidor toda vez que eles visitam o URL. Um endereo IP ou porta separado(a) necessrio a todo domnio habilitado para SSL para efetivar a comunicao baseada em um certificado SSL vlido.
499
Pgina da Web http://www.suse.com/us/private/support/ online_help/mailinglists/ Lista de discusso http://www.suse.com/us/private/support/ online_help/mailinglists/ Fonte RSS http://www.novell.com/linux/security/suse _security.xml
500
Referncia
Para facilitar ao mximo a administrao de scripts, costuma-se limitar a execuo dos scripts CGI a diretrios especficos em vez de permiti-los globalmente. As diretivas ScriptAlias e Option ExecCGI so usadas para configurao. A configurao padro do SUSE Linux no permite a execuo de scripts CGI a partir de qualquer lugar. Como todos os scripts CGI so executados como o mesmo usurio, pode haver conflito entre scripts diferentes. O mdulo suEXEC permite executar scripts CGI para outro usurio e grupo.
se forem necessrios mais detalhes nos arquivos de registro. Por padro, o arquivo de registro de erros est localizado em /var/log/apache2/error_log. DICA: Um teste simples Observe as mensagens de registro do Apache com o comando tail -F /var/log/apache2/meu_reg_erros. A seguir, execute rcapache2 restart. Agora, tente conectar-se a um browser e verifique a sada. Um erro comum no abrir as portas do Apache na configurao de firewall do servidor. Se voc configura o Apache com o YaST, existe uma opo separada disponvel que cuida desta questo especfica (consulte a Seo 26.2.2, Configurando o Apache com o YaST (p 473)). Se voc estiver configurando o Apache manualmente, abra as portas de firewall para HTTP e HTTPS atravs do mdulo de firewall do YaST. Se o erro no puder ser descoberto com a ajuda de qualquer desses meios, verifique o banco de dados de erros do Apache online em http://httpd.apache.org/bug _report.html. A comunidade de usurios do Apache tambm pode ser acessada atravs de uma lista de discusso disponvel em http://httpd.apache.org/ userslist.html. Um grupo de discusso recomendado comp.infosystems .www.servers.unix.
502
Referncia
o upgrade da verso 2.0 para a verso 2.2 esto disponveis em http://httpd .apache.org/docs-2.2/upgrading.html.
26.9.3 Desenvolvimento
Mais informaes sobre o desenvolvimento dos mdulos do Apache ou sobre o envolvimento no projeto do servidor Web Apache esto disponveis nas seguintes localizaes: Informaes para desenvolvedores do Apache http://httpd.apache.org/dev/ Documentao do desenvolvedor do Apache http://httpd.apache.org/docs/2.2/developer/ Escrevendo mdulos do Apache com Perl e C http://www.modperl.com/
503
504
Referncia
Sincronizao de arquivos
27
Atualmente, muitas pessoas usam vrios computadores; um computador em casa, um ou mais no trabalho e possivelmente um laptop ou PDA quando viajam. Vrios arquivos so necessrios em todos esses computadores. Talvez voc queira trabalhar com todos os computadores e modificar os arquivos, conseqentemente tendo a verso mais recente dos dados disponveis em todos os computadores.
Sincronizao de arquivos
505
ATENO: Risco de perda de dados Antes de comear a gerenciar seus dados com um sistema de sincronizao, voc deve se informar sobre o programa usado e testar sua funcionalidade. indispensvel ter um backup de arquivos importantes. A tarefa prolongada e sujeita a erros de sincronizar dados manualmente pode ser evitada se voc usar um dos programas que utilizam vrios mtodos para automatiz-la. Os resumos a seguir tm o simples objetivo de dar uma viso geral sobre como esses programas funcionam e como podem ser usados. Se voc planeja us-los, leia a documentao do programa.
27.1.1 Unison
O Unison no um sistema de arquivos de rede. Em vez disso, os arquivos so simplesmente gravados e editados localmente. O programa Unison pode ser executado manualmente para sincronizar arquivos. Quando a sincronizao executada pela primeira vez, um banco de dados criado nos dois hosts, contendo checksums, marcaes de horrios e permisses dos arquivos selecionados. Na prxima vez em que for executado, o Unison poder reconhecer quais arquivos foram mudados e propor que a transmisso seja feita do outro host ou para ele. Normalmente, todas as sugestes podem ser aceitas.
27.1.2 CVS
O CVS, que mais usado para gerenciar verses de origem de programas, oferece a possibilidade de manter cpias dos arquivos em vrios computadores. Dessa forma, ele tambm adequado para sincronizao de dados. O CVS mantm um repositrio central no servidor, no qual os arquivos e as mudanas feitas neles so gravados. As mudanas realizadas localmente so enviadas para o repositrio e podem ser recuperadas de outros computadores por meio de uma atualizao. Todos os procedimentos devem ser iniciados pelo usurio. O CVS muito suscetvel a erros quando ocorrem mudanas em vrios computadores. As mudanas so fundidas e, se elas forem feitas nas mesmas linhas, um conflito ser reportado. Quando ocorre um conflito, o banco de dados permanece em estado consistente. O conflito s fica visvel para resoluo no host cliente.
506
Referncia
27.1.3 Subversion
Ao contrrio do CVS, que evoluiu, o Subversion (SVN) um projeto de design consistente. O Subversion foi desenvolvido como sucessor tecnicamente aprimorado do CVS. O Subversion foi aprimorado em vrios aspectos com relao ao seu antecessor. Devido ao seu histrico, o CVS mantm apenas arquivos e no lida com diretrios. Os diretrios tambm tm um histrico de verso no Subversion e podem ser copiados e renomeados, assim como os arquivos. Tambm possvel adicionar metadados a todos os arquivos e todos os diretrios. Esses metadados podem ser totalmente mantidos com o controle de verso. Em oposio ao CVS, o Subversion tem suporte para acesso transparente rede por protocolos dedicados, como o WebDAV. O WebDAV estende a funcionalidade do protocolo HTTP para permitir acesso de gravao colaborativo a arquivos em servidores Web remotos. O Subversion foi montado principalmente com base em pacotes de software existentes. Portanto, o servidor Web do Apache e a extenso WebDAV sempre so executados junto com o Subversion.
27.1.4 mailsync
Diferentemente das ferramentas de sincronizao abordadas nas sees anteriores, o mailsync sincroniza somente e-mails entre caixas de correio. O procedimento pode ser aplicado em arquivos de caixas de correio locais, bem como em caixas de correio de um servidor IMAP. Com base no ID da mensagem contido no cabealho do e-mail, as mensagens especficas so sincronizadas ou apagadas. A sincronizao possvel entre caixas de correio especficas e entre hierarquias de caixas de correio.
27.1.5 rsync
Quando o controle de verso no necessrio, mas grandes estruturas de diretrio precisam ser sincronizadas em conexes de rede lentas, a ferramenta rsync oferece mecanismos avanados para a transmisso apenas de mudanas entre arquivos. Isso no diz respeito somente a arquivos de texto, mas tambm a arquivos binrios. Para
Sincronizao de arquivos
507
detectar as diferenas entre os arquivos, o rsync os subdivide em blocos e realiza checksums neles. O esforo dedicado deteco das mudanas tem um preo. Os sistemas a serem sincronizados devem ser dimensionados generosamente para uso do rsync. A RAM especialmente importante.
Para obter mais informaes sobre o iFolder, consulte http://www.novell.com/ en-en/documentation/. Encontre dicas e truques teis sobre o iFolder em http://www.novell.com/coolsolutions/ifmag/.
508
Referncia
27.2.2 Portabilidade
O Subversion, o CVS e o unison tambm esto disponveis para muitos outros sistemas operacionais, incluindo vrios sistemas Unix e Windows.
Sincronizao de arquivos
509
cliente afetado. Normalmente, os conflitos no Subversion ou no CVS podem ser facilmente resolvidos. O Unison reporta conflitos, permitindo que os arquivos afetados sejam excludos da sincronizao. Entretanto, as mudanas no podem ser fundidas to facilmente quanto no Subversion ou no CVS. Em oposio ao Subversion ou ao CVS, em que possvel aceitar parcialmente as mudanas em caso de conflito, o WebDAV s executa o registro da entrada quando toda a modificao considerada bem-sucedida. No h gerenciamento de conflitos no rsync. O usurio responsvel por no sobregravar acidentalmente arquivos e resolver manualmente todos os possveis conflitos. Para obter segurana, possvel empregar adicionalmente um sistema de controle de verso como o RCS.
27.2.6 Histrico
Um recurso adicional do Subversion ou do CVS a possibilidade de reconstruo de verses antigas de arquivos. Um breve comentrio de edio pode ser inserido em cada mudana, e o desenvolvimento dos arquivos pode ser facilmente rastreado posteriormente com base no contedo dos comentrios. Essa uma ajuda valiosa para textos de teses e de programas.
510
Referncia
Sincronizao de arquivos
511
512
Referncia
rsync Dir.
Histrico Espao em disco rgido Interface grfica do usurio (GUI) Dificuldade Ataques Perda de dados
x/x --
o/o
+ +(ssh) +
+ +(ssh) +
o +(SSL) +
27.3.1 Requisitos
O Unison deve ser instalado no cliente e no servidor. Nesse contexto, o termo servidor se refere a um segundo host, o host remoto (diferente do CVS, explicado na Seo 27.1.2, CVS (p 506)). Na seo a seguir, o Unison ser usado com o ssh. Nesse caso, um cliente SSH deve ser instalado no cliente e um servidor SSH deve ser instalado no servidor.
Sincronizao de arquivos
513
Voc deseja sincronizar esses dois diretrios. O usurio conhecido como tux no cliente e como geeko no servidor. A primeira coisa a fazer testar se a comunicao entre cliente e servidor funciona:
unison -testserver /home/tux/dir1 ssh://geeko@server//homes/geeko/dir2
Os problemas encontrados com mais freqncia so: As verses do Unison usadas no cliente e no servidor no so compatveis. O servidor no permite conexes com SSH. Nenhum dos dois caminhos especificados existe. Se tudo funcionar, omita a opo -testserver. Durante a primeira sincronizao, o Unison ainda no conhece a relao entre os dois diretrios e envia sugestes para a direo da transferncia dos arquivos e diretrios especficos. As setas da coluna Ao indicam a direo da transferncia. Um ponto de interrogao significa que o Unison no capaz de fazer uma sugesto com relao direo da transferncia, pois as duas verses foram mudadas ou so novas. As teclas de seta podem ser usadas para definir a direo da transferncia de entradas especficas. Se as direes de transferncia estiverem corretas para todas as entradas exibidas, simplesmente clique em Ir. As caractersticas do Unison (por exemplo, se ele executa a sincronizao automaticamente em casos de limpeza) podem ser controladas por meio de parmetros de linha de comando especificados quando o programa iniciado. Veja a lista completa de todos os parmetros com unison --help.
514
Referncia
Para cada par mantido um registro de sincronizao no diretrio do usurio ~/ .unison. Definies de configurao, como ~/.unison/example.prefs, tambm podem ser armazenadas neste diretrio. Para iniciar a sincronizao, especifique esse arquivo como parmetro da linha de comando, como em unison example.prefs.
Sincronizao de arquivos
515
Durante a configurao de um servidor CVS, uma boa idia conceder aos usurios o acesso ao servidor via SSH. Se o usurio for conhecido pelo servidor como tux e o software do CVS estiver instalado tanto no servidor quanto no cliente, as variveis de ambiente a seguir devero ser definidas no lado do cliente:
CVS_RSH=ssh CVS_ROOT=tux@server:/serverdir
O comando cvs init pode ser usado para inicializar o servidor CVS no lado cliente. Esse procedimento deve ser executado apenas uma vez. Finalmente, necessrio designar um nome sincronizao. Selecione ou crie um diretrio no cliente exclusivamente para conter arquivos a serem gerenciados com o CVS (o diretrio tambm pode ficar vazio). O nome do diretrio tambm ser o nome da sincronizao. Neste exemplo, o diretrio chamado de synchome. V para esse diretrio e digite o comando a seguir para definir o nome de sincronizao como synchome:
cvs import synchome tux wilber
Vrios comandos do CVS requerem um comentrio. Para essa finalidade, o CVS inicia um editor (o editor definido na varivel do ambiente $EDITOR ou vi, se nenhum editor tiver sido definido). A chamada do editor pode ser evitada se voc inserir o comentrio antes na linha de comando, como no exemplo a seguir:
cvs import -m 'this is a test' synchome tux wilber
516
Referncia
Se voc for para outra estao de trabalho, registre a sada do repositrio de sincronizao, caso isso no tenha sido feito em uma sesso anterior na mesma estao de trabalho (veja acima). Inicie a sincronizao com o servidor com cvs update. Atualize arquivos ou diretrios especficos como em cvs update file1 directory1. Para ver a diferena entre os arquivos atuais e verses armazenadas no servidor, use o comando cvs diff ou cvs diff file1 directory1. Use cvs -nq update para ver quais arquivos seriam afetados por uma atualizao. Estes so alguns smbolos de status exibidos durante uma atualizao: U A verso local foi atualizada. Isso afeta todos os arquivos fornecidos pelo servidor e ausentes no sistema local. S A verso local foi modificada. Se havia mudanas no servidor, foi possvel fundir as diferenas na cpia local. P A verso local foi corrigida com a verso do servidor. C O arquivo local est em conflito com a verso atual do repositrio. ? Este arquivo no existe no CVS. O status M indica um arquivo modificado localmente. Envie a cpia local para o servidor ou remova o arquivo local e execute a atualizao novamente. Nesse caso, o arquivo ausente ser recuperado do servidor. Se voc enviar um arquivo modificado localmente e ele tiver sido mudado na mesma linha de comando e enviado, poder haver um conflito, indicado por C. Nesse caso, observe as marcas de conflito (> e <) no arquivo e decida entre as duas verses. Como essa tarefa pode ser desagradvel, voc pode abandonar as mudanas, apagar o arquivo local e digitar cvs up para recuperar a verso atual do servidor.
Sincronizao de arquivos
517
Outras opes podem ser relacionadas com svnadmin help. Em oposio ao CVS, o Subversion no baseado no RCS, mas em tipos diferentes de repositrio. O Banco de Dados Berkeley ou FSFS (um repositrio que utiliza o sistema de arquivos diretamente) usado normalmente. No instale um repositrio em sistemas de arquivos remotos, como NFS, AFS ou Windows SMB. O banco de dados requer mecanismos de bloqueio POSIX, no suportados por esses sistemas de arquivos. O comando svnlook fornece informaes sobre um repositrio existente.
svnlook info /path/to/repository
necessrio configurar um servidor para permitir que usurios diferentes acessem o repositrio. Use o servidor Web do Apache com o WebDAV para fazer isso, ou use o svnserve, o servidor fornecido com o Subversion. Quando o svnserve estiver em execuo, o repositrio poder ser acessado com um URL com svn:// ou 518 Referncia
svn+ssh://. Usurios que podem se autenticar chamando svn podem ser definidos em /etc/svnserve.conf. A deciso sobre o uso do Apache ou do svnserce depende de vrios fatores. recomendvel pesquisar o manual do Subversion. Mais informaes sobre o assunto podem ser encontradas na Seo 27.5.3, Mais informaes (p 521).
O contedo fornecido por um servidor configurado corretamente correspondente a determinado repositrio pode ser acessado por qualquer cliente com um dos seguintes comandos:
svn list http://svn.example.com/path/to/project
ou
svn list svn://svn.example.com/path/to/project
Grave um projeto existente no diretrio atual (registre a sada) com o comando svn checkout:
svn checkout http://svn.example.com/path/to/project nameofproject
O registro da sada cria um novo subdiretrio nameofproject no cliente. Operaes (adio, cpia, renomeao, excluso) podem ser executadas em:
svn svn svn svn add file copy oldfile newfile move oldfile newfile delete file
Sincronizao de arquivos
519
Esses comandos tambm podem ser usados em diretrios. Alm disso, o Subversion pode registrar as propriedades de um arquivo ou diretrio:
svn propset license GPL foo.txt
O exemplo anterior define o valor GPL para a propriedade license. Exiba propriedades com svn proplist:
svn proplist --verbose foo.txt Properties on 'foo.txt': license : GPL
Grave as mudanas no servidor com svn commit. Outro usurio pode incorporar suas mudanas no diretrio de trabalho dele sincronizando com o servidor e usando svn update. Diferentemente do CVS, o status de um diretrio em operao no Subversion pode ser exibido sem acesso ao repositrio com svn status. Mudanas locais so exibidas em cinco colunas, sendo a primeira a mais importante: '' Nenhuma mudana. 'A' O objeto marcado para adio. 'D' O objeto marcado para excluso. 'M' O objeto foi modificado. 'C' O objeto est em conflito. 'I' O objeto foi ignorado. '?' O objeto no est sendo mantido por controle de verso.
520
Referncia
'!' O objeto reportado como ausente. Este flag exibido quando o objeto apagado ou movido sem o comando svn. '~' O objeto estava sendo mantido como um arquivo, mas foi substitudo por um diretrio, ou ocorreu o oposto. A segunda coluna mostra o status das propriedades. O significado de todas as outras colunas pode ser lido no manual do Subversion.
exemplo, o comando a seguir cria um backup do diretrio pessoal do tux em um servidor de backup chamado de sun:
rsync -baz -e ssh /home/tux/ tux@sun:backup
At esse ponto, o gerenciamento no muito diferente do de uma ferramenta de cpia comum, como o scp. O rsync deve ser operado no modo rsync para que todos os recursos fiquem totalmente disponveis. Isso feito ao se iniciar o daemon rsyncd em mais de um sistema. Configure-o no arquivo /etc/rsyncd.conf. Por exemplo, para tornar o diretrio /srv/ftp disponvel com o rsync, use a seguinte configurao:
gid = nobody uid = nobody read only = true use chroot = no transfer logging = true log format = %h %o %f %l %b log file = /var/log/rsyncd.log [FTP] path = /srv/ftp comment = An Example
Em seguida, inicie o rsyncd com rcrsyncd start. O rsyncd tambm pode ser iniciado automaticamente durante o processo de inicializao. Configure esse recurso ativando esse servio no editor de nveis de execuo fornecido pelo YaST ou digitando manualmente o comando insserv rsyncd. O rsyncd tambm pode ser iniciado com xinetd. Entretanto, isso s recomendvel para servidores que raramente usam o rsyncd. O exemplo tambm cria um arquivo de registro listando todas as conexes. Esse arquivo armazenado em /var/log/rsyncd.log. Ento ser possvel testar a transferncia de um sistema cliente. Faa isso com o seguinte comando:
rsync -avz sun::FTP
Esse comando lista todos os arquivos presentes no diretrio /srv/ftp do servidor. Essa solicitao tambm registrada no arquivo de registro /var/log/rsyncd
522
Referncia
.log. Para iniciar uma transferncia real, fornea um diretrio de destino. Use . para o diretrio atual. Por exemplo:
rsync -avz sun::FTP .
Por padro, nenhum arquivo ser apagado durante a sincronizao com o rsync. Se esse procedimento for forado, a opo adicional --delete dever ser expressa. Para garantir que nenhum arquivo novo seja apagado, use a opo --update como alternativa. Qualquer conflito ocorrido deve ser resolvido manualmente.
Sincronizao de arquivos
523
O Mail/ um subdiretrio do diretrio pessoal do usurio que contm pastas de email, incluindo a pasta saved-messages. Se o mailsync for iniciado com mailsync -m saved-messages, ele listar um ndice de todas as mensagens em saved-messages. Se a definio a seguir for feita
store localdir { pat Mail/* prefix Mail/ }
o comando mailsync -m localdir listar todas as mensagens armazenadas em Mail/. Em contraste, o comando mailsync localdir relaciona os nomes de pastas. As especificaes de um armazenamento em um servidor IMAP so exibidas como a seguir:
store imapinbox { server {mail.edu.harvard.com/user=gulliver} ref {mail.edu.harvard.com} pat INBOX }
O exemplo acima se refere simplesmente pasta principal do servidor IMAP. Um armazenamento das subpastas seria exibido da seguinte forma:
store imapdir { server {mail.edu.harvard.com/user=gulliver} ref {mail.edu.harvard.com} pat INBOX.* prefix INBOX. }
Se o servidor IMAP suportar conexes criptografadas, as especificaes do servidor devem mudar para
server {mail.edu.harvard.com/ssl/user=gulliver}
O prefixo ser explicado posteriormente. Agora, as pastas em Mail/ devem ser conectadas aos subdiretrios do servidor IMAP.
524
Referncia
O mailsync usa o arquivo msinfo para manter o rastreamento de mensagens que j tenham sido sincronizadas. O comando mailsync folder faz o seguinte: Expande a caixa de correio padro em ambos os lados. Remove o prefixo dos nomes de pasta resultantes. Sincroniza as pastas em pares (ou os cria, caso no existam). Dessa maneira, a pasta INBOX.sent-mail do servidor IMPA sincronizada com a pasta local Mail/sent-mail (desde que as definies explicadas acima existam). A sincronizao entre a pasta especfica realizada como a seguir: Se uma mensagem j existir em ambos os lados, nada acontecer. Se a mensagem estiver ausente em um dos lados e for nova (no listada no arquivo msinfo), ela ser transmitida aqui. Se a mensagem simplesmente existir em um dos lados e for antiga (j listada no arquivo msinfo), ela ser apagada (pois a mensagem que obviamente existia do outro lado foi apagada). Para saber com antecedncia quais mensagens sero transmitidas e quais sero apagadas durante uma sincronizao, inicie o mailsync com um canal e um armazenamento com mailsync folder localdir. Esse comando produz uma lista de todas as mensagens novas nos hosts locais, bem como uma lista de todas as mensagens que seriam apagadas no lado do IMAP durante uma sincronizao. Da mesma forma, o comando mailsync folder imapdir produz uma lista de todas as mensagens novas no lado do IMAP e uma lista de todas as mensagens que devem ser apagadas do host local durante uma sincronizao.
Sincronizao de arquivos
525
em um lado sero vistas como novas e, portanto, transmitidas durante a prxima sincronizao. Somente mensagens com um ID so includas na sincronizao. Mensagens sem ID so simplesmente ignoradas, o que significa que no so transmitidas nem apagadas. Um ID de mensagem ausente normalmente causado por programas com falhas no envio ou na gravao de uma mensagem. Em certos servidores IMAP, a pasta principal chamada de INBOX e as subpastas so chamadas de um nome selecionado ao acaso (em contraste com INBOX e INBOX.name). Portanto, no possvel especificar um padro exclusivamente para as subpastas dos servidores IMAP. Depois da transmisso bem-sucedida de mensagens para um servidor IMAP, os drivers da caixa de correio (c-client) usados pelo mailsync definem um flag de status especial. Por essa razo, alguns programas de e-mail, como mutt, no so capazes de reconhecer essas mensagens como novas. Desabilite a configurao desse flag de status especial com a opo -n.
526
Referncia
Samba
Com o Samba, uma mquina Unix pode ser configurada como um servidor de arquivos e de impresso para mquinas em DOS, Windows e OS/2. O Samba se tornou um produto completo e bastante complexo. Configure o Samba com o YaST, o SWAT (uma interface da Web) ou o arquivo de configurao.
28
28.1 Terminologia
Protocolo SMB O Samba usa o protocolo SMB (bloco de mensagens do servidor), baseado nos servios NetBIOS. Devido presso da IBM, a Microsoft lanou o protocolo para que outros fabricantes de software pudessem estabelecer conexes com uma rede de domnio Microsoft. Com o Samba, o protocolo SMB opera acima do protocolo TCP/IP, de modo que este ltimo precisa estar instalado em todos os clientes. Protocolo CIFS O protocolo CIFS (sistema de arquivos da Internet comuns) outro protocolo para o qual o Samba oferece suporte. O CIFS um protocolo de acesso padro a sistemas de arquivos remotos para utilizao pela rede, permitindo que grupos de usurios trabalhem juntos e compartilhem documentos pela rede. NetBIOS O NetBIOS uma interface de software (API) projetada para a comunicao entre mquinas. Nesse caso, prestado um servio de nome. Ele permite que mquinas conectadas rede reservem nomes para si. Aps a reserva, essas mquinas podem ser tratadas pelo nome. No h um processo central para a verificao de nomes.
Samba
527
Qualquer mquina da rede pode reservar quantos nomes quiser, contanto que os nomes no estejam em uso ainda. A interface NetBIOS passa a poder ser implementada para diferentes arquiteturas de rede. Uma implementao que funciona com relativa proximidade com o hardware da rede chamada de NetBEUI, mas ela muitas vezes chamada de NetBIOS. Os protocolos de rede implementados com o NetBIOS so o IPX da Novell (NetBIOS via TCP/IP) e TCP/IP. Os nomes de NetBIOS enviados por TCP/IP no possuem nada em comum com os nomes usados em /etc/hosts ou com os nomes definidos pelo DNS. O NetBIOS usa sua prpria conveno de nomes independente. Contudo, recomendvel usar nomes que correspondam aos nomes de hosts DNS para facilitar a administrao. Esse o padro usado pelo Samba. servidor Samba O servidor Samba um servidor que fornece servios SMB/CIFS e servios de nomeao NetBIOS por IP aos clientes. No caso do Linux, h dois daemons para o servidor Samba: smnd para os servios SMB/CIFS e nmbd para servios de nomeao. cliente Samba O cliente Samba um sistema que usa servios Samba de um servidor Samba pelo protocolo SMB. Todos os sistemas operacionais comuns, como Mac OS X, Windows e OS/2, prestam suporte ao protocolo SMB. O protocolo TCP/IP precisa estar instalado em todos os computadores. O Samba fornece um cliente para as diferentes verses do UNIX. No caso do Linux, h um mdulo de kernel para SMB que permite a integrao de recursos SMB no nvel de sistema Linux. No necessrio executar daemons para o cliente Samba. Compartilhamentos Os servidores SMB oferecem espao em hardware a seus clientes por meio de compartilhamentos. Compartilhamentos so impressoras e diretrios com seus subdiretrios no servidor. Ele exportado por meio de um nome e pode ser acessado pelo nome. O nome do compartilhamento pode ser definido por qualquer nome; no precisa ser o nome do diretrio de exportao. Uma impressora tambm recebe um nome. Os clientes podem acessar a impressora pelo nome.
528
Referncia
Samba
529
Tipo de Servidor Samba Na etapa seguinte, especifique se o servidor dever funcionar como PDC e clique em Prximo. possvel mudar todas as configuraes na Instalao do Servidor Samba posteriormente na caixa de dilogo Configurao do Servidor Samba com a guia Identidade. Na primeira vez que voc iniciar o mdulo do servidor Samba, a caixa de dilogo Configurao do Servidor Samba exibida logo aps a caixa de dilogo Instalao do Servidor Samba. Ela contm trs guias: Inicializao Na guia Inicializao, voc pode definir como iniciar o servidor Samba. Para iniciar o servio sempre que o sistema for inicializado, clique em Durante a Inicializao. Para ativar a inicializao automtica, escolha Manualmente. Mais informaes sobre como iniciar um servidor Samba so fornecidas na Seo 28.2, Iniciando e interrompendo o Samba (p 529). Nesta guia, tambm possvel abrir portas no seu firewall. Para fazer isso, selecione Abrir Porta no Firewall. Se tiver vrias interfaces de rede, clique em Detalhes do Firewall, selecione as interfaces e clique em OK para selecionar a interface de rede para os servios Samba. Compartilhamentos Nesta guia, determine os compartilhamentos do Samba a serem ativados. H alguns compartilhamentos predefinidos, como homes e impressoras. Use Alternar Status para alternar entre Ativo e Inativo. Clique em Adicionar para adicionar novos compartilhamentos e Apagar para apagar o compartilhamento selecionado. Identidade Em Identidade, voc pode determinar o domnio ao qual o host deve ser associado (Configuraes de Base) e se um nome de host alternativo deve ser usado na rede (Nome de Host do NetBIOS). Para definir configuraes globais de especialista ou autenticao de usurio, clique em Configuraes de Usurio. Clique em Concluir para fechar a configurao.
530
Referncia
A seo global
Os seguintes parmetros da seo [global] precisam de ajustes para atender aos requisitos de configurao da sua rede para que outras mquinas possam acessar seu servidor Samba via SMB em um ambiente Windows. workgroup = TUX-NET Essa linha designa o servidor Samba a um grupo de trabalho. Substitua o TUX-NET por um grupo de trabalho apropriado do seu ambiente de rede. Seu servidor Samba aparece sob o nome DNS, a menos que esse nome tenha sido designado a alguma outra mquina na rede. Se o nome DNS no estiver disponvel, defina o nome do Samba 531
servidor usando netbiosname=MYNAME. Consulte mansmb.conf para obter mais detalhes sobre esse parmetro. os level = 2 Esse parmetro determina se seu servidor Samba tenta se tornar um LMB (Local Master Browser - Browser Master Local) para seu grupo de trabalho. Escolha um valor bem reduzido para poupar a rede do Windows existente de perturbaes causadas por um servidor Samba mal configurado. Mais informaes sobre esse importante tpico podem ser encontradas nos arquivos BROWSING.txt e BROWSING-Config.txt, no subdiretrio textdocs da documentao do pacote. Se nenhum outro servidor SMB estiver presente na rede (como o servidor Windows NT ou 2000) e voc desejar que o servidor Samba mantenha uma lista de todos os sistemas presentes no ambiente local, ajuste o os level em um valor mais alto (por exemplo, 65). Assim, o servidor Samba selecionado como LMB para a rede local. Ao mudar essa configurao, reflita bem sobre como isso pode afetar um ambiente de rede Windows existente. Primeiro, teste as mudanas em uma rede isolada ou em um horrio no crtico do dia. suporte WINS e servidor WINS Para integrar o servidor Samba a uma rede Windows existente dotada de um servidor WINS ativo, habilite a opo wins server e defina seu valor para o endereo IP desse servidor WINS. Se as suas mquinas do Windows estiverem conectadas a sub-redes separadas e ainda assim precisarem levar as restantes em considerao, ser necessrio configurar um servidor WINS. Para transformar um servidor Samba em um servidor WINS, defina a opo wins support = Yes. Verifique se somente um servidor Samba da rede possui essa configurao habilitada. As opes wins server e wins support nunca devem ficar habilitadas ao mesmo tempo no arquivo smb .conf.
Compartilhamentos
Os exemplos a seguir ilustram como uma unidade de CD-ROM e os diretrios do usurio (homes) so disponibilizados aos clientes SMB.
532
Referncia
[cdrom] Para evitar a disponibilizao acidental da unidade de CD-ROM, essas linhas so desativadas com marcas de comentrios (nesse caso, pontos-e-vrgulas). Remova os pontos-e-vrgulas da primeira coluna para compartilhar a unidade do CD-ROM com o Samba. Exemplo 28.1 Compartilhamento de CD-ROM
;[cdrom] ; comment = Linux CD-ROM ; path = /media/cdrom ; locking = No
[cdrom] e comment A entrada [cdrom] o nome do compartilhamento que pode ser visto por todos os clientes SMB na rede. Um comment adicional pode ser feito para enriquecer a descrio do compartilhamento. path = /media/cdrom path exporta o diretrio /media/cdrom. Por meio de uma configurao padro bastante restritiva, esse tipo de compartilhamento somente disponibilizado aos usurios presentes nesse sistema. Se esse compartilhamento precisar ser disponibilizado a todos, adicione uma linha guest ok = yes configurao. Essa configurao concede permisses de leitura a todos na rede. Recomenda-se muita cautela no manejo desse parmetro. Isso se aplica ainda mais intensamente ao uso desse parmetro na seo [global]. [homes] O compartilhamento [home] possui especial importncia aqui. Se o usurio possuir uma conta e senha vlidas para o servidor de arquivos Linux e seu prprio diretrio pessoal, pode ficar conectado a ele. Exemplo 28.2 Share homes
[homes] comment = Home Directories valid users = %S browseable = No read only = No create mask = 0640 directory mask = 0750
Samba
533
[homes] Contanto que no haja nenhum outro compartilhamento usando o nome de compartilhamento do usurio que estabelece a conexo ao servidor SMB, um compartilhamento gerado dinamicamente usando as diretivas de compartilhamento [homes]. O nome resultante do compartilhamento o nome do usurio. valid users = %S %S substitudo pelo nome concreto do compartilhamento logo que uma conexo tenha sido estabelecida com sucesso. Para um compartilhamento [homes], sempre ser usado o nome do usurio. Conseqentemente, os direitos de acesso ao compartilhamento de um usurio ficam restritos exclusivamente a ele. browseable = No Essa configurao torna o compartilhamento invisvel no ambiente da rede. read only = No Por padro, o Samba probe o acesso de gravao aos compartilhamentos exportados por meio do parmetro read only = Yes. Para tornar um compartilhamento gravvel, defina o valor read only = No, que corresponde a writeable = Yes. create mask = 0640 Como os sistemas que no se baseiam no MS Windows NT no compreendem o conceito de permisses do UNIX, no so capazes de designar permisses ao criar um arquivo. O parmetro create mask define as permisses de acesso designadas a arquivos recm-criados. Isso somente se aplica a compartilhamentos gravveis. Na verdade, essa configurao significa que o proprietrio possui permisses de leitura e gravao e que os membros do grupo principal do proprietrio possuem permisses de leitura. valid users = %S impede o acesso de leitura mesmo se o grupo possuir permisses de leitura. Para que o grupo tenha acesso de leitura ou gravao, desative a linha valid users = %S.
Nveis de segurana
Para aumentar a segurana, cada acesso a compartilhamento pode ser protegido por senha. O SMB possui trs formas de verificar as permisses:
534
Referncia
Segurana no nvel do compartilhamento (security = share) Uma senha rigorosamente designada a um compartilhamento. Todos que conheam essa senha possuem acesso ao compartilhamento. Segurana no nvel do usurio (security = user) Essa variao introduz o conceito do usurio ao SMB. Cada usurio precisa se registrar no servidor com sua prpria senha. Aps o registro, o servidor pode conceder acesso a compartilhamentos exportados especficos condicionados a nomes de usurios. Segurana no nvel do servidor (security = server): Para seus clientes, o Samba age como se estivesse operando em modo de nvel de usurio. Entretanto, ele encaminha todas as consultas de senha a outro servidor de modo de nvel de usurio, que se encarrega da autenticao. Essa configurao pressupe um parmetro adicional (password server). A seleo de segurana no nvel de compartilhamento, usurio ou servidor se aplica a todo o servidor. No possvel oferecer compartilhamentos individuais de uma configurao de servidor com segurana no nvel de compartilhamento e outros com segurana no nvel de usurio. Entretanto, possvel executar um servidor Samba separado para cada endereo IP configurado em um sistema. Para obter mais informaes sobre esse assunto, consulte a Coleo HOWTO do Samba. No caso de vrios servidores em um sistema, preste ateno nas opes interfaces e bind interfaces only.
Samba
535
podem ser selecionados com o mouse. Se voc ativar Usar tambm informaes SMB para a Autenticao de Linux, a autenticao do usurio ser executada no servidor Samba. Aps concluir todas as configuraes, clique em Concluir para finalizar a configurao.
28.4.2 Windows 9x e ME
O Windows 9x e ME j vm com suporte para TCP/IP. Entretanto, esse suporte no instalado como o padro. Para adicionar TCP/IP, v at Painel de Controle Sistema e escolha Adicionar Protocolos TCP/IP da Microsoft. Aps reinicializar sua mquina com o Windows, procure o servidor Samba clicando duas vezes no cone de rea de trabalho do ambiente de rede. DICA Para usar uma impressora no servidor Samba, instale a unidade da impressora padro Apple-PostScript na verso correspondente do Windows. melhor vincular essa unidade fila de impresso do Linux, que aceita o Postscript como um formato de entrada.
536
Referncia
Se forem usadas senhas criptografadas para fins de verificao (essa a configurao padro com instalaes bem mantidas do MS Windows 9x, MS Windows NT 4.0 do pacote de servios 3, e todos os produtos posteriores) o servidor Samba precisar ser capaz de trat-las. A entrada encrypt passwords = yes na seo [global] permite isso (com a verso 3 do Samba, esse passa a ser o padro). Alm disso, necessrio preparar contas e senhas de usurios em formato de criptografia compatvel com o Windows. Para isso, use o comando smbpasswd -a name. Crie a conta de domnio dos computadores, exigida pelo conceito de domnio do Windows NT, com os seguintes comandos: Exemplo 28.4 Configurando uma conta de mquina
useradd hostname\$ smbpasswd -a -m hostname
Com o comando useradd, um smbolo de cifro adicionado. O comando smbpasswd insere esse smbolo automaticamente quando o parmetro -m usado. O exemplo de configurao comentado (/usr/share/doc/packages/Samba/ examples/smb.conf.SuSE) contm configuraes que automatizam essa tarefa. Exemplo 28.5 Configurao automatizada de uma conta de mquina
add machine script = /usr/sbin/useradd -g nogroup -c "NT Machine Account" \ -s /bin/false %m\$
Para verificar se o Samba pode executar esse script corretamente, escolha um usurio do Samba com as permisses de administrador obrigatrias. Para isso, selecione um usurio e adicione-o ao grupo ntadmin. Depois disso, ser possvel designar a todos os usurios pertencentes a esse grupo Linux o status de Domain Admin com o comando:
net groupmap add ntgroup="Domain Admins" unixgroup=ntadmin
Mais informaes sobre esse tpico aparecem no Captulo 12 da Coleo HOWTO do Samba, contida no arquivo /usr/share/doc/packages/samba/ Samba-HOWTO-Collection.pdf.
a documentao do Samba estiver instalada, para obter mais documentao e exemplos online. Uma configurao de exemplo comentada (smb.conf.SuSE) pode ser encontrada no subdiretrio exemplos. A Coleo HOWTO fornecida pela equipe Samba inclui uma seo sobre a soluo de problemas. Alm disso, a Parte V do documento oferece um guia passo a passo para a verificao da configurao. A coleo HOWTO do Samba pode ser encontrada em /usr/share/doc/packages/samba/Samba-HOWTO-Collection.pdf aps a instalao do pacote samba-doc.
538
Referncia
29
O Squid um proxy de cache amplamente utilizado em plataformas Linux e UNIX. Isso significa que armazena objetos da Internet solicitados, como dados em um servidor da Web ou FTP, em uma mquina mais prxima da estao de trabalho solicitante do que o servidor. Este captulo discute sua configurao, as configuraes necessrias para execut-lo, como configurar o sistema para realizar um proxy transparente, como reunir estatsticas sobre o uso do cache com a ajuda dos programas, como o Calamaris e o cachemgr, e como filtrar contedos da Web com o squidGuard. O Squid atua como um proxy de cache. Redireciona pedidos de objeto dos clientes (neste caso, de browsers da Web) para o servidor. Quando os objetos solicitados chegam do servidor, ele fornece os objetos ao cliente e mantm uma cpia deles no cache do disco rgido. Uma das vantagens do cache que vrios clientes que solicitem o mesmo objeto podem ser atendidos a partir do cache do disco rgido. Este procedimento permite que os clientes recebam os dados muito mais rapidamente em relao Internet. Alm disso, reduz o trfego da rede. Junto com o cache real, o Squid oferece uma ampla gama de recursos. Entre eles, distribuir a carga entre hierarquias de intercomunicao dos servidores proxy, definir listas de controle de acesso restrito para todos os clientes que acessam o proxy, permitir ou negar o acesso a pginas da Web especficas com a ajuda de outros aplicativos e gerar estatsticas sobre pginas da Web visitadas com freqncia para avaliao dos hbitos de navegao dos usurios. O Squid no um proxy genrico. Normalmente, ele funciona como proxy apenas para conexes HTTP. Ele tambm tem suporte para protocolos FTP, Gopher, SSL e WAIS, mas no para outros protocolos da Internet, como Real Audio, notcias ou videoconferncia. Como o Squid tem suporte apenas para o protocolo UDP a fim de fornecer comunicao entre caches diferentes, no h suporte para vrios outros programas multimdia. O Servidor Proxy Squid 539
540
Referncia
Para encontrar o servidor mais adequado do qual obter os objetos, um cache envia uma solicitao ICP a todos os proxies irmos. Estes respondem s solicitaes via repostas ICP com um cdigo HIT se o objeto foi detectado ou, em caso contrrio, com um MISS. Se forem encontradas vrias respostas HIT, o servidor proxy decide de qual servidor fazer download, dependendo de fatores como que cache enviou a resposta mais rpida ou qual est mais prximo. Se no for recebida nenhuma resposta satisfatria, a solicitao enviada ao cache pai. DICA Para evitar duplicao de objetos em vrios caches na rede, so usados outros protocolos ICP, como CARP (cache array routing protocol) ou HTCP (hypertext cache protocol). Quanto maior o nmero de objetos mantidos na rede, maior a possibilidade de localizar o desejado.
541
542
Referncia
um espao em disco de 2 GB no exemplo, para que o Squid guarde os dados interessantes pesquisados no cache.
29.2.3 RAM
A quantidade de memria (RAM) de que o Squid necessita diretamente relacionada ao nmero de objetos no cache. O Squid tambm armazena referncias de objeto e objetos solicitados freqentemente na memria principal do cache para acelerar a recuperao destes dados. A memria de acesso aleatrio muito mais rpida do que um disco rgido. Alm disso, h outros dados que o Squid necessita manter na memria, como uma tabela com todos os endereos IP tratados, um cache de nome de domnio exato, os objetos solicitados com mais freqncia, listas de controle de acesso, buffers e mais. muito importante ter memria suficiente para o processo Squid, porque o desempenho do sistema muito reduzido se tiver que se trocado para o disco. A ferramenta cachemgr.cgi pode ser usada para gerenciamento da memria de cache. Esta ferramenta apresentada na Seo 29.6, cachemgr.cgi (p 554). Sites com grande trfego de rede devem considerar o uso de um sistema AMD64 ou Intel EM64T com memria superior a 4 GB.
29.2.4 CPU
O Squid no um programa que necessite de uso intenso de CPU. A carga do processador s aumentada enquanto os contedos do cache so armazenados ou verificados. O uso de uma mquina multiprocessadora no aumenta o desempenho do sistema. Para aumentar a eficincia, melhor comprar discos mais rpidos ou adicionar mais memria.
543
deve ser digitado pelo menos o nome do servidor, porque o Squid no inicia se no detectar um servidor DNS em /etc/resolv.conf.
544
Referncia
arquivo /var/log/squid/cache.log. Se o Squid tiver que ser carregado automaticamente quando o sistema inicializado, use o editor de nvel de execuo YaST para ativar o Squid para os nveis de execuo desejados. Consulte a Seo Servios do Sistema (Runlevel) (Captulo 2, Configurao do sistema com YaST, Inicializao). Uma desinstalao do Squid no remove a hierarquia de cache nem os arquivos de registro. Para remov-los, apague o diretrio /var/cache/squid manualmente.
545
sysconfig. Entretanto, preciso digitar o servidor DNS local no arquivo /etc/ resolv.conf como descrito acima. Para tornar o nome do servidor do provedor acessvel, digite-o no arquivo de configurao /etc/named.conf sob forwarders junto com seu endereo IP. DICA: DNS e Firewall Se voc tiver um firewall em execuo, verifique se as solicitaes de DNS podem passar por ele.
546
Referncia
547
cache_access_log /var/log/squid/access.log, cache_log /var/log/squid/cache.log, cache_store_log /var/log/squid/store.log Estas trs entradas especificam os caminhos em que o Squid registra todas as suas aes. Normalmente, nada mudado aqui. Se o Squid estiver passado por uma sobrecarga de uso pesado, pode fazer sentido distribuir o cache e os arquivos de registro em vrios discos. emulate_httpd_log off Se a entrada for definida como on, obtenha arquivos de registro legveis. Entretanto, alguns programas de avaliao no podem interpretar isto. client_netmask 255.255.255.255 Com esta entrada, faa mascaramento dos endereos IP dos clientes nos arquivos de registro. O ltimo dgito do endereo IP definido como zero se voc digitar 255.255.255.0 aqui. Voc pode proteger a privacidade dos seus clientes desta maneira. ftp_user Squid@ Com isto, defina a senha que o Squid deve usar para o login do FTP annimo. Faz sentido especificar um endereo de e-mail vlido aqui, porque alguns servidores de FTP os verificam para fins de validade. cache_mgr webmaster Um endereo de e-mail ao qual o Squid envia uma mensagem se ele falhar inesperadamente. O padro webmaster. logfile_rotate 0 Se voc executar squid -k rotate, o Squid poder rotacionar arquivos de registro protegidos. Os arquivos so numerados neste processo e, aps alcanarem o valor especificado, o arquivo mais antigo sobregravado. O valor padro 0 porque os arquivos de registro de arquivamento e apagamento no SUSE Linux so realizados por uma tarefa cron definida no arquivo de configurao /etc/ logrotate/squid. append_domain <domain> Com append_domain, especifique que domnio anexar automaticamente quando no for dado nenhum. Normalmente, o seu prprio domnio digitado aqui, portanto digitar www no browser d acesso ao seu prprio servidor da Web.
548
Referncia
forwarded_for on Se voc definir a entrada como off, o Squid remover o endereo IP e o nome do sistema do cliente das solicitaes HTTP. Caso contrrio, ele adicionar uma linha ao cabealho como
X-Forwarded-For: 192.168.0.0
negative_ttl 5 minutes; negative_dns_ttl 5 minutes Normalmente, no necessrio mudar esses valores. Porm, se voc tiver uma conexo discada, possvel que s vezes a Internet no esteja acessvel. O Squid detecta as solicitaes que falharam e no emite novas solicitaes, embora a conexo com a Internet tenha sido restabelecida. Neste caso, mude os minutos para segundos e, aps voc clicar em Recarregar no browser, o processo de discagem deve continuar em alguns segundos. never_direct allow acl_name Para impedir que o Squid faa solicitaes diretamente da Internet, use o comando acima para forar conexo com outro proxy. necessrio que ele tenha sido digitado anteriormente em cache_peer. Se all estiver especificado como acl_name, force todas as solicitaes para que sejam encaminhadas diretamente ao pai. Isto pode ser necessrio, por exemplo, se voc estiver usando um provedor que estipula estritamente o uso de seus proxies ou nega acesso direto do seu firewall Internet.
549
mysurfers srcdomain .my-domain.com teachers src 192.168.1.0/255.255.255.0 students src 192.168.7.0-192.168.9.0/255.255.255.0 lunch time MTWHF 12:00-15:00
http_access allow <acl_name> http_access define quem tem permisso de usar o proxy e quem pode acessar o qu na Internet. Para isto, as ACLs devem ser fornecidas. localhost e all j foram definidos acima, o que pode negar ou permitir acesso com deny ou allow. Uma lista com qualquer nmero de entradas http_access pode ser criada, processada de cima para baixo e, dependendo do que ocorrer primeiro, o acesso permitido ou negado ao respectivo URL. A ltima entrada deve ser sempre http_access deny all. No exemplo a seguir, o localhost tem livre acesso a tudo enquanto todos os outros hosts tm acesso completamente negado.
http_access allow localhost http_access deny all
Em outro exemplo com estas regras, o grupo teachers (professores) sempre tem acesso Internet. O grupo students (alunos) s tem acesso de segunda-feira a sexta-feira na hora do almoo.
http_access http_access http_access http_access deny localhost allow teachers allow students lunch time deny all
Para fins de legibilidade, a lista com as entradas http_access s pode ser digitada na posio designada no arquivo /etc/squid/squid.conf. Isto , entre o texto
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR # CLIENTS
e o ltimo
http_access deny all
redirect_program /usr/bin/squidGuard Com esta opo, especifique um redirecionador como squidGuard, que permite bloquear URLs indesejados. O acesso de vrios grupos de usurios Internet pode ser controlado individualmente com a ajuda da autenticao de proxy e das ACLs adequadas. O squidGuard um pacote separado que pode ser instalado e configurado.
550
Referncia
auth_param basic program /usr/sbin/pam_auth Se for necessrio autenticar usurios no proxy, defina um programa correspondente, como pam_auth. Ao acessar pam_auth pela primeira vez, o usurio v uma janela de login na qual deve digitar o nome de usurio e senha. Alm disso, ainda necessrio usar uma ACL, de forma que apenas clientes com login vlido podem usar a Internet:
acl password proxy_auth REQUIRED http_access allow password http_access deny all
REQUIRED aps proxy_auth pode ser substitudo por uma lista de nomes de usurios permitidos ou pelo caminho para essa lista. ident_lookup_access allow <acl_name> Com isto, execute uma solicitao de identificao para todos os clientes definidos via ACL para encontrar a identidade de cada usurio. Se voc aplicar all ao <acl_name>, isto ser vlido para todos os clientes. Alm disso, um daemon de identificao deve estar em execuo em todos os clientes. No caso do Linux, instale o pacote pidentd para este fim. No caso do Microsoft Windows, h um software grtis para download na Internet. Para garantir que apenas clientes com pesquisa de identificao bem-sucedida sejam permitidos, defina uma ACL correspondente aqui:
acl identhosts ident REQUIRED http_access allow identhosts http_access deny all
Aqui, substitua tambm REQUIRED por uma lista de nomes de usurios permitidos. O uso de ident pode tornar o tempo de acesso um pouco lento, porque pesquisas de identificao so repetidas para cada solicitao.
Para fins de segurana, recomendado que todos os clientes usem um proxy para navegar na Internet. Todos os clientes devem usar um proxy, independentemente de estarem conscientes dele. O proxy em uma rede movido, mas os clientes existentes devem manter sua antiga configurao. Em todos esses casos, pode ser usado um proxy transparente. O princpio muito fcil: o proxy intercepta e responde as solicitaes do browser da Web, de maneira que o browser da Web recebe as pginas solicitadas sem saber de onde elas vm. Como o nome indica, todo o processo feito de maneira transparente.
552
Referncia
O arquivo de configurao consiste em entradas bem documentadas. Para definir um proxy transparente, preciso configurar vrias opes de firewall: Dispositivo apontando para a Internet: FW_DEV_EXT="eth1" Dispositivo apontando para a rede: FW_DEV_INT="eth0" Definir portas e servios (consulte /etc/services) no firewall que so acessadas de redes no confiveis (externas), como a Internet. Neste exemplo, apenas os servios da Web so oferecidos externamente:
FW_SERVICES_EXT_TCP="www"
Definir portas ou servios (consulte /etc/services) no firewall que so acessadas de rede segura (interna), ambas via TCP e UDP:
FW_SERVICES_INT_TCP="domain www 3128" FW_SERVICES_INT_UDP="domain"
Isto permite acessar servios da Web e o Squid (cuja porta padro 3128). O servio domain representa o DNS (servio de nome de domnio). Este servio normalmente usado. Caso contrrio, basta retir-lo das entradas acima e definir a opo seguinte como no:
FW_SERVICE_DNS="yes"
A opo mais importante a nmero 15: Exemplo 29.1 Configurao de firewall: Opo 15
# # # # # # # # # # # # # # 15.) Which accesses to services should be redirected to a local port on the firewall machine? This can be used to force all internal users to surf via your Squid proxy, or transparently redirect incoming Web traffic to a secure Web server. Choice: leave empty or use the following explained syntax of redirecting rules, separated with spaces. A redirecting rule consists of 1) source IP/net, 2) destination IP/net, 3) original destination port and 4) local port to redirect the traffic to, separated by a colon, e.g. "10.0.0.0/8,0/0,80,3128 0/0,172.20.1.1,80,8080"
Os comentrios acima mostram a sintaxe a seguir. Primeiro, digite o endereo IP e a mscara de rede das redes internas que acessam o firewall de proxy. Em seguida, digite
553
o endereo IP e a mscara de rede s quais estes clientes enviam suas solicitaes. No caso de browsers da Web, especifique as redes 0/0, um curinga que significa a todos os lugares. Depois, digite a porta original para a qual estas solicitaes so enviadas e, finalmente, a porta para a qual todas essas solicitaes so redirecionadas. Como o Squid tem suporte para outros protocolos alm do HTTP, redirecione as solicitaes de outras portas para o proxy, como FTP (porta 21), HTTPS ou SSL (porta 443). Neste exemplo, servios da Web (porta 80) so redirecionados para a porta do proxy (porta 3128). Se houver mais redes ou servios a adicionar, eles devem ser separados por um espao em branco na entrada respectiva.
FW_REDIRECT_TCP="192.168.0.0/16,0/0,80,3128 192.168.0.0/16,0/0,21,3128" FW_REDIRECT_UDP="192.168.0.0/16,0/0,80,3128 192.168.0.0/16,0/0,21,3128"
Para iniciar o firewall e a nova configurao com ele, mude um entrada no arquivo /etc/sysconfig/SuSEfirewall2 . A entrada START_FW deve ser definida como "yes". Iniciar o Squid como mostrado na Seo 29.3, Iniciando o Squid (p 543). Para verificar se tudo est funcionando corretamente, verifique os registros do Squid em /var/log/ squid/access.log. Para verificar se todas as portas esto corretamente configuradas, realize uma explorao de portas na mquina de qualquer computador externo rede. Apenas os servios da Web (porta 80) devem ser abertos. Para explorar as portas com nmap, a sintaxe do comando nmap -O IP_address.
29.6 cachemgr.cgi
O gerenciador de cache (cachemgr.cgi) um utilitrio CGI para exibio de estatsticas sobre o uso da memria de um processo Squid em execuo. tambm uma maneira mais prtica de gerenciar o cache e ver estatsticas sem efetuar login no servidor.
29.6.1 Configurao
Primeiro, necessrio um servidor da Web em execuo no sistema. Configure o Apache como descrito no Captulo 26, Servidor HTTP Apache (p 463). Para verificar se o Apache j est em execuo, como root, digite o comando rcapache status. Se aparecer uma mensagem como a seguinte:
Checking for service httpd: OK Server uptime: 1 day 18 hours 29 minutes 39 seconds
554
Referncia
O Apache estar em execuo na mquina. Caso contrrio, digite rcapache iniciar para iniciar o Apache com as configuraes padro do SUSE Linux. A ltima etapa a configurar copiar o arquivo cachemgr.cgi para o diretrio Apache cgi-bin:
cp /usr/share/doc/packages/squid/scripts/cachemgr.cgi /srv/www/cgi-bin/
Estas regras consideram que o servidor da Web e o Squid esto em execuo na mesma mquina. Se a comunicao entre o gerenciador do cache e o Squid tiver origem em um servidor da Web em outro computador, incluir uma ACL extra como no Exemplo 29.2, Regras de acesso (p 555). Exemplo 29.2 Regras de acesso
acl manager proto cache_object acl localhost src 127.0.0.1/255.255.255.255 acl webserver src 192.168.1.7/255.255.255.255 # webserver IP
Em seguida, adicionar as regras do Exemplo 29.3, Regras de acesso (p 555) para permitir acesso do servidor da Web. Exemplo 29.3 Regras de acesso
http_access allow manager localhost http_access allow manager webserver http_access deny manager
555
Configure uma senha para que o gerenciador acesse mais opes, como fechar o cache remotamente ou mostrar mais informaes sobre o cache. Para isto, configure a entrada cachemgr_passwd com uma senha para o gerenciador e a lista de opes a ser exibida. Esta lista aparece como parte dos comentrios de entrada em /etc/squid/ squid.conf. Reinicie o Squid toda vez que mudar o arquivo de configurao. Faa isto facilmente com rcsquid reload.
29.7 squidGuard
Esta seo no pretende explicar uma configurao do squidGuard em profundidade, apenas apresent-lo e fornecer alguns conselhos para us-lo. Para obter informaes mais detalhadas sobre questes de configurao, consulte o site do squidGuard em http://www.squidguard.org. O squidGuard um plug-in grtis (GPL) e flexvel, alm de atuar como um filtro rpido, redirecionador e controlador de acesso para o Squid. Permite que voc defina vrias regras de acesso com diferentes restries para diferentes grupos de usurio em um cache do Squid. O squidGuard usa a interface redirecionadora padro do Squid. O squidGuard pode fazer o seguinte: Limitar o acesso Web para alguns usurios a uma lista de servidores da Web ou URLs aceitos ou bem conhecidos. Bloquear o acesso a alguns servidores da Web ou URLS listados ou constantes da lista negra para alguns usurios. Bloquear o acesso a URLs correspondentes a uma lista de expresses ou palavras regulares.
556
Referncia
Redirecionar URLs bloqueados para uma pgina de informao intelligent baseada em CGI. Redirecionar usurios no registrados a um formulrio de registro. Redirecionar banners para um GIF vazio. Usar diversas regras de acesso baseadas em hora do dia, dia da semana, data, etc. Usar regras diferentes para grupos de usurios diferentes. O squidGuard e o Squid no podem ser usados para: Editar, filtrar ou censurar texto dentro de documentos. Editar, filtrar ou censurar linguagens de script embutidas em HTML, como JavaScript e VBscript. Para us-los, instale squidGuard. Fornea um arquivo de configurao mnimo, como /etc/squidguard.conf. Encontre exemplos de configurao em http:// www.squidguard.org/config/. Experimente depois com definies de configurao mais complicadas. Em seguida, crie uma pgina de simulao de acesso negado ou uma pgina CGI mais ou menos complexa para redirecionar o Squid se o cliente solicitar um site da Web includo na lista negra. A utilizao do Apache altamente recomendvel. Agora, configure o Squid para usar o squidGuard. Use a seguinte entrada no arquivo /etc/squid/squid.conf:
redirect_program /usr/bin/squidGuard
Outra opo, denominada redirect_children, configura o nmero de processos de redirect (neste caso o squidGuard) executados na mquina. O squidGuard bastante rpido para tratar vrias solicitaes: em um Pentium 500 MHz com 5.900 domnios e 7.880 URLs (totalizando 13.780), podem ser processadas 100.000 solicitaes em 10 segundos. Assim, no recomendado definir mais do que quatro processos, porque a alocao desses processos consumiria uma quantidade excessiva de memria.
redirect_children 4
Finalmente, faa o Squid carregar a nova configurao executando rcsquid reload. Agora, teste suas configuraes com um browser.
557
Isto coloca o relatrio no diretrio do servidor da Web. necessrio usar o Apache para exibir os relatrios. Outra ferramenta avanada para gerao de relatrios de cache o SARG (Squid Analysis Report Generator). Mais informaes sobre isso esto disponveis em: http://sarg.sourceforge.net/.
558
Referncia
559
Parte 5. Mobilidade
30
A computao mvel geralmente associada a laptops, PDAs e telefones celulares, e ao intercmbio de dados entre esses aparelhos. Componentes de hardware mveis, como discos rgidos externos, unidades flash ou cmeras digitais, podem ser conectados a laptops ou sistemas de desktop. Vrios componentes de software esto envolvidos em cenrios de computao e alguns aplicativos so desenvolvidos para uso mvel.
30.1 Laptops
O hardware de laptops difere do hardware de um sistema de desktop normal. Isso ocorre porque critrios como intercambiamento, espao ocupado e consumo de energia so propriedades relevantes. Os fabricantes de hardware mvel desenvolveram o padro PCMCIA (Personal Computer Memory Card International Association - Associao Internacional de Cartes de Memria para Computadores Pessoais). Esse padro abrange cartes de memria, placas de interface de rede, ISDN e placas de modem, alm de discos rgidos externos. A forma como o suporte para tal hardware implementado no Linux, os pontos a serem levados em considerao durante a configurao, qual software est disponvel para o controle do PCMCIA e como solucionar quaisquer possveis problemas so descritos no Captulo 31, PCMCIA (p 575).
importante quanto a do sistema operacional. O SUSE Linux d suporte a diversos mtodos que influenciam o consumo de energia de um laptop e surtem efeitos variveis sobre o tempo de operao com a carga da bateria. A lista a seguir est em ordem decrescente de contribuio para a conservao de energia: Regulagem da velocidade da CPU Desativao da iluminao da tela durante pausas Ajuste manual da iluminao da tela Desconexo de acessrios no utilizados e habilitados para hotplug (CD-ROM USB, mouse externo, placas PCMCIA no utilizadas etc.) Colocar o disco rgido em modo de espera quando inativo Informaes de apoio detalhadas sobre o gerenciamento de energia no SUSE Linux e sobre a operao do mdulo de gerenciamento de energia YaST podem ser encontradas no Captulo 33, Gerenciamento de energia (p 597).
564
Referncia
Printing
?
Mail
? ? ? ?
Proxy X configuration
Network
Os servios afetados no caso de um laptop que transita entre uma pequena rede domstica e uma rede de escritrio so: Rede Inclui a atribuio de endereo IP, a resoluo do nome, a conectividade Internet e a conectividade a outras redes. Impresso Precisam estar presentes um banco de dados atual de impressoras disponveis e um servidor de impresso disponvel, dependendo da rede. E-Mail e proxies Assim como ocorre com a impresso, a lista dos servidores correspondentes precisa ser atual. X Se o seu laptop estiver temporariamente conectado a um projetor ou monitor externo, as diferentes configuraes de exibio precisam estar disponveis.
565
O SUSE Linux oferece vrias opes de integrao de um laptop a ambientes operacionais existentes: SCPM O SCPM (system configuration profile management - gerenciamento de perfil de configurao do sistema) permite o armazenamento de estados de configurao arbitrrios de um sistema em um tipo de instantneo chamado de perfil. Os perfis podem ser criados para diferentes situaes. Eles so teis quando um sistema operado em ambientes variveis (rede domstica, rede de escritrio). Sempre possvel alternar entre perfis. Encontre informaes sobre o SCPM no Captulo 32, System Configuration Profile Management (p 583). Voc pode usar o applet Seletor de Perfil do kicker no KDE para alternar entre perfis. O aplicativo requer a senha do root antes de alternar. NetworkManager O NetworkManager desenvolvido especialmente para rede mvel em laptops. Ele fornece uma maneira para alternar de forma fcil e automtica entre ambientes de rede ou tipos diferentes de redes, como LAN sem fio e ethernet. O NetworkManager suporta a criptografia WEP e WPA-PSK em conexes LANs sem fio, por discagem (com smpppd). Ambos os ambientes de rea de trabalho (GNOME e KDE) incluem um front-end para o NetworkManager. Tabela 30.1 Casos de uso para o NetworkManager Usar NetworkManager Sim Sim No No
Meu computador um laptop algumas vezes est conectado a redes diferentes fornece servios de rede (como DNS ou DHCP) usa somente um endereo IP esttico
Use as ferramentas do YaST para configurar a rede sempre que o NetworkManager no deve gerenciar a configurao de rede. SLP O SLP (Service Location Protocol) simplifica a conexo de um laptop a uma rede existente. Sem o SLP, o administrador do laptop normalmente necessita ter
566
Referncia
conhecimentos detalhados sobre os servios disponveis em uma rede. O SLP transmite a disponibilidade de um determinado tipo de servio a todos os clientes de uma rede local. Os aplicativos que do suporte ao SLP podem processar as informaes despachadas pelo SLP e podem ser configurados automaticamente. O SLP pode at ser usado para a instalao de um sistema, poupando o esforo de busca de uma fonte de instalao adequada. Encontre informaes detalhadas sobre o SLP no Captulo 19, Servios SLP na rede (p 377). O ponto forte do SCPM a habilitao e a manuteno de condies de sistema reproduzveis. O SLP torna a configurao de um computador em rede bem mais fcil, automatizando boa parte desse processo.
Monitoramento do sistema
Duas ferramentas de monitoramento do sistema KDE so oferecidas pelo SUSE Linux: KPowersave O KPowersave um applet que exibe o estado da bateria recarregvel no painel de controle. O cone se ajusta de modo a representar o tipo de fonte de energia. Ao trabalhar em corrente alternada, um pequeno cone de plug exibido. Ao trabalhar com bateria, o cone se transforma em uma bateria. O menu correspondente abre o mdulo YaST de gerenciamento de energia aps solicitar a senha do root. Desse modo, possvel configurar o comportamento do sistema com diferentes tipos de fontes de energia. Encontre informaes sobre gerenciamento de energia e sobre o mdulo YaST correspondente no Captulo 33, Gerenciamento de energia (p 597). KSysguard O KSysguard um aplicativo independente que rene todos os parmetros mensurveis do sistema em um nico ambiente de monitoramento. O KSysguard possui monitores de ACPI (status da bateria), carga da CPU, rede, particionamento e uso da memria. Ele tambm pode observar e exibir todos os processos do sistema. A apresentao e filtragem dos dados coletados podem ser personalizadas. possvel Computao mvel com o Linux 567
monitorar diferentes parmetros do sistema em diversas pginas de dados ou coletar os dados de diversas mquinas em paralelo na rede. O KSysguard tambm pode ser executado como um daemon em mquinas desprovidas de um ambiente KDE. Encontre mais informaes sobre esse programa na sua funo de ajuda integrada ou nas pginas de ajuda do SUSE. Figura 30.2 Monitorando o status da bateria com o KSysguard
Na rea de trabalho do GNOME, use o applet do painel ACPI do GNOME e o aplicativo Monitor do Sistema.
Sincronizando dados
Ao alternar entre o trabalho em uma mquina mvel desconectada da rede e o trabalho em uma estao em rede em um escritrio, necessrio manter a sincronizao dos dados processados em todas as instncias. Isso pode incluir pastas de e-mail, diretrios e arquivos individuais que precisam estar presentes tanto para o trabalho remoto como para o trabalho no escritrio. A soluo nos dois casos a seguinte: Sincronizando e-mail Use uma conta IMAP para armazenar seus e-mails na rede do escritrio. Em seguida, acesse os e-mails da estao de trabalho com o uso de qualquer cliente de e-mail desconectado habilitado para IMAP, como o Mozilla Thunderbird Mail, o Evolution ou o KMail, conforme descrito em Aplicativos. O cliente de e-mail precisa ser configurado de tal modo que as Mensagens enviadas sejam sempre acessadas da mesma pasta. Isso assegura a disponibilidade de todas as mensagens com informaes sobre seu status aps a concluso do processo de sincronizao. Use um servidor SMTP implementado no cliente de e-mail para o envio de mensagens,
568
Referncia
em vez do postfix ou do sendmail do MTA em todo o sistema, para receber retorno confivel sobre e-mails no enviados. Sincronizando arquivos e diretrios Existem diversos utilitrios adequados para a sincronizao de dados entre um laptop e uma estao de trabalho. Para obter informaes detalhadas, consulte o Captulo 27, Sincronizao de arquivos (p 505).
569
IrDA O IrDA a tecnologia sem fio de menor alcance. As duas extremidades da comunicao precisam estar a uma distncia visvel uma da outra. No possvel contornar obstculos como paredes. Uma aplicao possvel do IrDA a transmisso de arquivos de um laptop para um telefone celular. O curto caminho do laptop para o telefone celular coberto com o uso do IrDA. O transporte de longo alcance do arquivo ao seu destinatrio feito pela rede mvel. Outra aplicao do IrDA a transmisso sem fio de servios de impresso no escritrio. H mais informaes a respeito do IrDA na Seo 34.3, Transmisso de dados infravermelhos (p 647).
571
572
Referncia
No caso de problemas com o gerenciamento de energia com o SUSE Linux em laptops, recomendvel ler o arquivo README em /usr/share/doc/packages/ powersave. Como muitas vezes contm comentrios bem recentes de testadores e desenvolvedores, esse diretrio oferece dicas valiosas para a soluo de problemas.
573
PCMCIA
31
O PCMCIA geralmente usado para se referir ao prprio hardware, embora ele se origine da organizao que padronizou todos os tipos possveis de placas PC, a PC Memory Card International Association. No incio, o PCMCIA incluiu somente placas PC (usando um barramento de 16 bits como placas ISA), porm, mais tarde, placas CardBus (usando um barramento de 32 bits) foram includas. Uma ampla variedade de hardware PCMCIA suportada no Linux. Alm disso, o Linux inclui ferramentas para gerenciar o PCMCIA. Placas PCMCIA so geralmente usadas em computao mvel para propsitos diferentes. Exemplos incluem: Adaptadores LAN sem fio e Ethernet Placas Bluetooth Cartes de memria (Flash, SRAM e outros) Adaptadores de carto de memria (SD, MMC, SmartMedia, CompactFlash, MemoryStick) Modems A maioria do gerenciamento de placas tratada silenciosamente por udev e hotplug. Quando for necessria a interao do usurio, use o comando pccardctl. Para obter mais informaes de apoio sobre o PCMCIA, consulte a Seo 31.2, PCMCIA em detalhes (p 576). Para obter detalhes sobre pccardctl, consulte a Seo 31.1, Controlando placas PCMCIA usando pccardctl (p 576).
PCMCIA
575
576
Referncia
1.
A ponte PCMCIA (ou soquete) deve ser configurada de forma apropriada conforme descrito na Seo 31.2.1, Inicializao da ponte (p 577). Os prrequisitos so:
um driver apropriado para a ponte faixas de memria e E/S adicionais para placas PC 2. Aps a ponte ser configurada de forma apropriada, o driver da ponte detecta a presena de uma placa e aciona a sua inicializao conforme descrito na Seo 31.2.2, Inicializao da placa (p 578): a. b. c. d. e. 3. Determine o tipo de placa. Fornea a voltagem apropriada. Atribua faixas de memria e E/S e linhas IRQ placa. Acione a inicializao do dispositivo ou da placa vinculando o driver de placa apropriado. Para algumas placas, preciso fazer o upload da CIS (Card Information Structure).
Finalmente, a prpria interface configurada e est pronta para uso. Consulte a Seo 31.2.3, Configurao de interface (p 579) para obter detalhes.
3.
4.
As etapas a seguir sero omitidas se somente as placas CardBus forem usadas: a. b. c. Os eventos pcmcia_socket acionam o udev para chamar /sbin/hwup e carregar o mdulo de kernel pcmcia. Todas as faixas de memria e E/S especificadas em /etc/pcmcia/ config.opts so adicionadas ao soquete. Os servios da placa no kernel verificam essas faixas. Se as faixas de memria em /etc/pcmcia/config.opts estiverem erradas, essa etapa poder causar falha na sua mquina. Consulte a Seo 31.3.1, A mquina falha com o PCMCIA (p 580) para obter informaes sobre como depurar e corrigir esse problema.
Aps essas etapas serem concludas com xito, a ponte ser totalmente inicializada. Aps isso, a prpria placa ser inicializada conforme descrito na seo seguinte.
3. 4.
Aps essas etapas serem concludas, o sistema continua com a configurao de interface conforme descrito na seo seguinte. Se a sua placa for uma placa PC, voc talvez precise de alguns dos seguintes parmetros em /etc/sysconfig/pcmcia para que ela seja totalmente suportada e funcione sem falhas:
578
Referncia
PCMCIA_LOAD_CIS Um firmware de placa PC chamado de CIS (Card Information Structure). Ele fornece detalhes de implementao adicional da placa. O comando hwup verifica a integridade da CIS integrada da placa e tenta carregar outra CIS do disco se a CIS da placa estiver com defeito. A configurao padro yes. Para desabilitar a CIS de carregar a partir do disco, defina esta varivel como no. PCMCIA_ALLOW_FUNC_MATCH Os drivers de dispositivo do Linux contm uma tabela de ID de dispositivo que informa aos drivers quais dispositivos devem ser gerenciados. Isso significa que somente os dispositivos cujos IDs so conhecidos pelo kernel so suportados. Para suportar essas placas cujo ID no est listado, possvel usar a correspondncia de funo. Isso significa que o driver no est selecionado por ID, mas pela funo da placa (como uma placa de rede) e seria responsvel por qualquer placa PC inserida com essa funo (como placas de rede). A configurao padro yes. Para desabilitar a correspondncia de funo, defina esta varivel para no. PCMCIA_COLDPLUG_REINSERT Placas que foram inseridas antes da inicializao s vezes no so detectadas. Para evitar isso, cause uma ejeo automtica e uma insero automtica da placa definindo PCMCIA_COLDPLUG_REINSERT como yes. A configurao padro no.
PCMCIA
579
Para obter mais informaes sobre SysRq, consulte /usr/src/linux/ Documentation/sysrq.txt. 2 Inicialize o sistema em um ambiente baseado em texto e efetue login como root. 3 Adicione os mdulos PCMCIA apropriados ao kernel:
/sbin/modprobe yenta_socket /sbin/modprobe pcmcia
Substitua N pelo nmero do soquete. Repita esta etapa para cada soquete. 5 Se a etapa anterior causou falhas na mquina, isso pode ter sido causado por faixas de memria ou E/S erradas especificadas em /etc/pcmcia/config .opts. Para evitar isso, execute uma das seguintes aes: Exclua faixas em /ect/pcmcia/config.opts e tente novamente a configurao do soquete. Adicione as faixas manualmente conforme descrito abaixo. Aps ter adicionado com xito as faixas apropriadas manualmente, definaas de forma permanente incluindo-as em /etc/pcmcia/config.opts. 580 Referncia
6 Aps a configurao de soquete ter sido concluda com xito, a inicializao da placa e a configurao da interface funcionam conforme descrito na Seo 31.2.2, Inicializao da placa (p 578) e na Seo 31.2.3, Configurao de interface (p 579). Para adicionar manualmente faixas de E/S, proceda da seguinte maneira (para cada soquete): 1 Mude para o diretrio que mantm as configuraes de faixa (neste caso, pcmcia _socket0, adaptado para outros nmeros de soquete):
cd /sys/class/pcmcia_socket/pcmcia_socket0
Substitua begin e end pelos endereos onde a nova faixa deve iniciar e encerrar. Os valores corretos s podem ser determinados por tentativa e erro. Adicionando manualmente as seguintes faixas:
echo 0x800 - 0x8ff > available_resources_io echo 0xc00 - 0xcff > available_resources_io
O mesmo procedimento se aplica s faixas de memria sob available_resources _mem. IMPORTANTE: Identificando configuraes padro com falhas Se voc encontrar uma faixa com falha no arquivo de configurao padro (/etc/pcmcia/config.opts) enviado com este produto, arquive um relatrio de erros sobre ele em http://bugzilla.novell.com, para que os desenvolvedores possam analisar esse problema.
PCMCIA
581
4 Grave o arquivo para aplicar as configuraes. Se mdulos adicionais precisarem ser ejetados na suspenso, proceda como acima e adicione os nomes de mdulos s seguintes variveis:
UNLOAD_MODULES_BEFORE_SUSPEND2DISK="" UNLOAD_MODULES_BEFORE_SUSPEND2RAM="" UNLOAD_MODULES_BEFORE_STANDBY=""
Para obter informaes gerais sobre o daemon de economia de energia, consulte a Seo 33.5, O Pacote powersave (p 610).
582
Referncia
32
Algumas situaes requerem uma configurao do sistema modificada. Isso seria em geral o caso para computadores mveis que so operados em locais variveis. O SCPM prtico se um sistema do desktop deve ser operado temporariamente usando componentes de hardware diferentes dos normais. A restaurao da configurao do sistema original deve ser fcil e a modificao da configurao do sistema pode ser reproduzida. Com o SCPM, qualquer parte da configurao do sistema pode ser mantida em um perfil personalizado. O campo principal de aplicao do SCPM a configurao de rede em laptops. Configuraes de rede diferentes geralmente requerem configuraes diferentes de outros servios, como e-mail ou proxies. Depois disso, vm outros elementos, como impressoras diferentes em casa e no escritrio, uma configurao personalizada de servidor X para o projetor multimdia em conferncias, configuraes especiais de economia de energia para viagens ou um fuso horrio diferente em uma subsidiria estrangeira.
583
32.1 Terminologia
A seguir, esto alguns termos usados na documentao do SCPM e no mdulo YaST. configurao do sistema Refere-se configurao completa do computador. Ele abrange todas as configuraes fundamentais, como o uso de parties de disco rgido, configuraes de rede, seleo de fuso horrio e mapeamentos de teclado. perfil ou perfil do sistema Um estado que foi preservado e pode ser restaurado a qualquer momento. perfil ativo Refere-se ao perfil selecionado por ltimo. Isso no significa que a configurao do sistema atual corresponde exatamente a este perfil, porque ela pode ser modificada a qualquer momento. recurso Um elemento que contribui para a configurao do sistema. Pode se tratar de um arquivo ou um softlink que inclua metadados (como o usurio), permisses ou tempo de acesso. Tambm pode ser um servio do sistema que executado neste perfil, mas est desabilitado em outro. grupo de recursos Cada recurso pertence a um determinado grupo de recursos. Esses grupos contm todos os recursos que logicamente devem estar juntos. A maioria de grupos conteria um servio e seus arquivos de configurao. muito fcil agrupar recursos gerenciados pelo SCPM porque isso no requer nenhum conhecimento dos arquivos de configurao do servio desejado. O SCPM fornecido com uma seleo de grupos de recursos pr-configurados que devem ser suficientes para a maioria dos cenrios.
584
Referncia
Ambientes de rede variveis, como LAN sem fio em casa e uma ethernet no trabalho Configurao de impressora diferente em casa e no trabalho Para que o SCPM funcione corretamente e gerencie a sua configurao de sistema varivel, proceda como a seguir: 1 Adicione o applet Seletor de Perfil ao seu painel e configure-o para permitir a alternao de usurio conforme descrito na Seo 32.3.1, Configurando o applet do painel Seletor de Perfil (p 585). 2 Configure o SCPM usando o mdulo do Gerenciador de Perfis do YaST conforme descrito na Seo 32.3.2, Definindo configuraes bsicas do SCPM (p 586). 3 Crie um perfil para cada uma das configuraes diferentes usando SUMF (SCPM Unified Management Front-End) conforme descrito na Seo 32.3.3, Criando um novo perfil (p 588). 4 Alterne para o perfil apropriado para sua situao atual conforme descrito na Seo 32.3.4, Alternando perfis (p 589). Se voc preferir controlar o SCPM com a interface de linha de comando, consulte a Seo 32.4, Configurando o SCPM com a linha de comando (p 592) para obter detalhes.
585
No GNOME, clique o boto direito do mouse no painel e selecione Seletor de Perfil na lista de applets disponveis. No KDE, selecione Sistema Applet de Desktop Seletor de Perfil para adicionar o Seletor de Perfil ao seu painel.
586
Referncia
Para o cenrio de exemplo, voc no precisa configurar recursos adicionais, pois os recursos de impressora e rede so includos por padro. Figura 32.1 YaST: Configurao bsica do SCPM
Para permitir que usurios diferentes de root gerenciem perfis, proceda da seguinte maneira: 1 Inicie o YaST no menu principal e selecione o Gerenciador de Perfis do YaST. 2 Marque Permitir que Usurios no-root Gerenciem Perfis. Consulte a Figura 32.2, YaST: Configurar usurios do SCPM (p 588). 3 Clique em Configurar Usurios. 4 Clique em Adicionar para adicionar qualquer usurio que seja capaz de gerenciar perfis. 5 Para cada usurio, especifique se ele deve ter permisses de alternao somente ou se este usurio deve ter permisso para alternar, modificar e criar perfis. 6 Clique em Aceitar para aplicar suas configuraes e fechar o YaST.
587
588
Referncia
Para este exemplo, proceda da seguinte maneira: 1 Na sua configurao inicial, habilite o SCPM. 2 Renomeie o perfil default para um nome mais descritivo iniciando o SUMF e selecionando Perfis Editar e digitando o novo nome. 3 Na sua configurao no trabalho, inicie o SUMF e crie o perfil para o ambiente de sistema no trabalho. Aps ter todos os perfis necessrios, voc j estar pronto para alternar para eles sempre que uma configurao de sistema diferente for necessria. A alternao de perfis descrita na Seo 32.3.4, Alternando perfis (p 589).
3 Use as teclas de seta para selecionar o perfil apropriado e pressione O sistema inicializa na configurao selecionada.
Para alternar perfis em um sistema em execuo, proceda da seguinte maneira: 1 Verifique se voc tem permisso para alternar perfis como um usurio no-root. Se voc no tiver permisso para isso, consulte a Seo 32.3.2, Definindo configuraes bsicas do SCPM (p 586). 2 Clique com o boto esquerdo do mouse no applet de painel Seletor de Perfil. 3 Selecione o perfil necessrio no menu aberto usando as teclas de seta e pressione Enter .
589
O SCPM executa uma verificao para os recursos modificados e solicita uma confirmao da alternao. Se foram feitas mudanas configurao do sistema antes da alternao, o SCPM pergunta se voc deseja mant-las ou descart-las ao alternar para outro perfil.
590
Referncia
2 Na caixa de dilogo System Configuration Profile Management, clique em Configurar Recursos. Todos os grupos de recursos disponveis no sistema so listados como mostrado na Figura 32.3, Configurando grupos de recursos (p 591). 3 Para adicionar ou editar um grupo de recursos: a Defina ou edite Grupo de Recursos e Descrio. b Insira os recursos apropriados (recursos, servios ou ambos) e apague os que no so necessrios. Para redefinir o status dos recursos selecionados, descarte quaisquer mudanas feitas neles e retorne aos valores de configurao inicial, escolha Reconfigurar Grupo. c Clique em OK para sair da configurao de recursos. 4 Clique em OK para gravar as mudanas no perfil ativo. Figura 32.3 Configurando grupos de recursos
591
Ative ou desative um grupo com scpm activate_group NOME ou scpm deactivate_group NOME. Substitua NOME pelo nome de grupo relevante.
592
Referncia
configurao bsica da qual os outros perfis so derivados. Por este motivo, todas as configuraes que devem ser idnticas em todos os perfis devem ser criadas primeiro. Em seguida, armazene essas modificaes no perfil ativo com scpm reload. O perfil default pode ser copiado e renomeado como a base de novos perfis. Existem duas maneiras de adicionar um novo perfil. Se o novo perfil (chamado trabalho aqui) deve ser baseado no perfil default, crie-o com scpm copy default trabalho. O comando scpm switch trabalho muda para o novo perfil, que pode ento ser modificado. Convm modificar a configurao do sistema para finalidades especiais e gravar as mudanas em um novo perfil. O comando scpm add trabalho cria um novo perfil gravando a configurao do sistema atual no perfil trabalho e tornando-a ativa. A execuo de scpm reload grava as mudanas no perfil trabalho. Os perfis podem ser renomeados ou apagados com os comandos scpm rename x y e scpm delete z. Por exemplo, para renomear trabalho para projeto, digite scpm rename trabalho projeto. Para apagar projeto, digite scpm delete projeto. O perfil ativo no pode ser apagado.
O SCPM compara ento a configurao do sistema atual com o perfil para o qual alternar. Nesta fase, o SCPM avalia que servios do sistema precisam ser interrompidos
593
ou reiniciados devido a dependncias mtuas ou a fim de refletir as mudanas na configurao. Isso como uma reinicializao parcial do sistema que somente afeta uma pequena parte do sistema enquanto o resto continua operando sem mudanas. somente neste ponto que os servios do sistema so interrompidos, todos os recursos modificados, como arquivos de configurao, so gravados, e os servios do sistema so reiniciados.
594
Referncia
e chown root:root filename para dar ao root permisses exclusivas aos arquivos. Consulte todas as configuraes adicionais digitadas com set com get. O comando scpm get ps-iniciar, por exemplo, retorna o nome da chamada ps-iniciar ou simplesmente nada se nada foi anexado. Redefina essas configuraes sobregravando com "". O comando scpm set pr-parar "" remove o programa pr-parar anexado. Todos os comandos set e get podem ser aplicados a um perfil arbitrrio da mesma maneira que os comentrios so adicionados. Por exemplo, scpm get pr-parar filename trabalho ou scpm get pr-parar trabalho.
595
596
Referncia
Gerenciamento de energia
33
O gerenciamento de energia especialmente importante em laptops, mas tambm til em outros sistemas. Duas tecnologias esto disponveis: APM (Advanced Power Management - Gerenciamento Avanado Energia) e ACPI (Advanced Configuration and Power Interface - Interface de Energia e Configurao Avanada). Alm delas, tambm possvel controlar o dimensionamento de freqncia de CPU para economizar energia ou reduzir o rudo. Estas opes podem ser configuradas manualmente ou usando um mdulo YaST especial. Ao contrrio de APM, que era usado em laptops apenas para gerenciamento de energia, a ferramenta ACPI de configurao e informaes sobre hardware est disponvel em todos os computadores modernos (laptops, desktops e servidores). Todas as tecnologias de gerenciamento de energia exigem hardware adequado e rotinas BIOS. A maioria dos laptops e muitas reas de trabalho e servidores modernos atendem a estes requisitos. APM era usado em muitos computadores antigos. Como APM consiste amplamente em um conjunto de funes implementado no BIOS, o nvel de suporte de APM pode variar, dependendo do hardware. O mesmo vale para o ACPI, que ainda mais complexo. Por esta razo, virtualmente impossvel recomendar um ou outro. Teste os diversos procedimentos no seu hardware e selecione a tecnologia que suportada de forma melhor. IMPORTANTE: Gerenciamento de energia para processadores AMD64 Processadores AMD64 com kernel de 64 bits suportam apenas o ACPI.
Gerenciamento de energia
597
598
Referncia
Encerramento dos componentes do sistema Desativar o disco rgido o principal aspecto do potencial de economia de energia de todo o sistema. Dependendo da confiabilidade do sistema, o disco rgido pode ser colocado para adormecer por algum tempo. No entanto, o risco de perder dados aumenta com a durao dos perodos de adormecimento. Outros componentes, como dispositivos PCI que podem ser colocados em um modo especial de economia de energia, podem ser desativados com o ACPI (pelo menos em teoria) ou desabilitados de forma permanente na configurao do BIOS. Controle de velocidade do processador Junto com a CPU, possvel economizar energia de trs maneiras: escala de freqncia e voltagem (tambm conhecida como PowerNow! ou Speedstep), obstruindo e colocando o processador para adormecer (estados C). Dependendo do modo operacional do computador, esses mtodos tambm podem ser combinados.
33.2 APM
Algumas das funes de economia de energia so realizadas pelo prprio BIOS do APM. Em muitos laptops, os estados standby e suspender podem ser ativados com combinaes de tecla ou fechando a tampa sem qualquer funo especial do sistema operacional. No entanto, para ativar esses modos com um comando, algumas aes devem ser acionadas antes que o sistema seja suspenso. Para visualizar o nvel de carga da bateria, so necessrios pacotes especiais de programa e um kernel adequado. Os kernels do SUSE Linux tm suporte de APM interno. No entanto, APM s ativado se ACPI no estiver implementada no BIOS e for detectado um BIOS de APM. Para ativar o suporte APM, ACPI deve ser desativado com acpi=off no prompt de inicializao. Digite cat /proc/apm para verificar se APM est ativo. Uma sada composta de vrios nmeros indica que tudo est OK. Voc agora poder desligar o computador com o comando shutdown -h. As implementaes do BIOS que no forem totalmente compatveis com o padro podero provocar problemas com APM. Alguns problemas podero ser contornados com parmetros de boot especiais. Todos os parmetros so digitados no prompt da inicializao na forma de apm=parmetro. parmetro um de: ativar ou desativar Habilitar ou desabilitar suporte APM.
Gerenciamento de energia
599
(no-)allow-ints Permitir interrupes durante a execuo das funes do BIOS (no-)broken-psr A funo GetPowerStatus do BIOS no funciona corretamente. (no-)realmode-power-off Redefina o processador para o modo real antes de desligar. (no-)debug Registre os eventos APM no registro do sistema. (no-)realmode-power-off Desligue o sistema aps o encerramento. bounce-interval=n Tempo em centsimos de segundo aps um evento suspenso durante o qual os eventos suspensos adicionais so ignorados. idle-threshold=n Porcentagem de inatividade do sistema na qual a funo do BIOSidle executada (0=sempre, 100=nunca). idle-period=n Tempo em centsimos de segundo aps o qual a atividade do sistema medida. O daemon APM (apmd) no mais usado. A sua funcionalidade agora tratada pela nova economia de energia, que tambm suporta ACPI e fornece vrios outros recursos.
33.3 ACPI
A ACPI (Interface de Energia e Configurao Avanada) foi projetada para habilitar o sistema operacional a configurar e controlar os componentes individuais do hardware. A ACPI substitui PnP e APM. Envia informaes sobre a bateria, adaptador de CA, temperatura, ventilador e eventos do sistema, como fechar tampa ou bateria fraca. O BIOS fornece tabelas que contm informaes sobre os componentes individuais e mtodos de acesso ao hardware. O sistema operacional usa essas informaes para tarefas como atribuir interrupes ou ativar e desativar componentes. Como o sistema
600
Referncia
operacional executa comandos armazenados no BIOS, a funcionalidade depende da implementao do BIOS. As tabelas que a ACPI podem detectar e carregar so reportadas em /var/log/boot.msg. Consulte a Seo 33.3.4, Soluo de problemas (p 606) para obter mais informaes sobre soluo de problemas da ACPI.
33.3.1 ACPI em ao
Se o kernel detectar um BIOS de ACPI quando o sistema for inicializado, a ACPI ser automaticamente ativada e o APM desativado. O parmetro de inicializao acpi=force poder ser necessrio para algumas mquinas mais antigas. O computador deve aceitar ACPI 2.0 ou posterior. Verifique as mensagens de boot do kernel em /var/log/boot.msg para ver se a ACPI foi ativada. Em seguida, dever ser carregado um nmero de mdulos. Isso feito pelo script de incio de acpid. Se algum destes mdulos causar problemas, o mdulo respectivo poder ser excludo de carregar ou descarregar em /etc/sysconfig/powersave/ common. O registro do sistema (/var/log/messages) contm as mensagens dos mdulos, permitindo que voc veja que componentes foram detectados. /proc/acpi agora contm vrios arquivos que fornecem informaes sobre o estado do sistema ou que podem ser usados para mudar alguns dos estados. Alguns recursos ainda no funcionam porque esto em desenvolvimento e o suporte de algumas funes depende muito da implementao do fabricante. Todos os arquivos (exceto dsdt e fadt) podem ser lidos com cat. Em alguns arquivos, as configuraes podem ser modificadas com echo, por exemplo, echo X > file para especificar valores adequados para X. Uma possibilidade para acesso fcil a esses valores o comando powersave, que age como um front end para o daemon de economia de energia. Os arquivos mais importantes esto descritos abaixo: /proc/acpi/info Informaes gerais sobre a ACPI. /proc/acpi/alarm Aqui, especifique quando o sistema deve ser ativado de um estado de inatividade. Atualmente, esse recurso no totalmente suportado. /proc/acpi/sleep Fornece informaes sobre possveis estados de adormecimento.
Gerenciamento de energia
601
/proc/acpi/event Todos os eventos so reportados aqui e processados pelo daemon do Powersave (powersaved). Se nenhum daemon acessar o arquivo, eventos como um clique rpido no boto de alimentao ou fechamento da tampa podem ser lidos com cat /proc/acpi/event (encerrar com Ctrl + C ). /proc/acpi/dsdt e /proc/acpi/fadt Estes arquivos contm as tabelas DSDT (differentiated system description table tabela de descrio de sistema diferenciado) e FADT (fixed ACPI description table - tabela de descrio de ACPI fixa) da ACPI. Elas podem ser lidas com acpidmp, acpidisasm e dmdecode. Estes programas e sua documentao localizam-se no pmtools do pacote. Por exemplo, acpidmp DSDT | acpidisasm. /proc/acpi/ac_adapter/AC/state Mostra se o adaptador de CA est conectado. /proc/acpi/battery/BAT*/{alarme,info,estado} Informaes detalhadas sobre o estado da bateria. O nvel de carga lido atravs da comparao da ltima capacidade cheia e info com a capacidade remanescente no estado. Um modo mais confortvel de fazer isto usar um dos programas especiais apresentados na Seo 33.3.3, Ferramentas da ACPI (p 606). O nvel de carga em que o evento bateria (como um alerta, baixa e crtica) acionado pode ser especificado em alarme. /proc/acpi/button Este diretrio contm informaes sobre vrios switches, como botes e a tampa do laptop. /proc/acpi/fan/FAN/state Mostra se o ventilador est ativo atualmente. Ativar ou desativar o ventilador manualmente, escrevendo 0 (ligado) ou 3 (desligado) neste arquivo. No entanto, os dois cdigos da ACPI no kernel e no hardware (ou no BIOS) sobregravam esta configurao no caso de aquecimento do sistema. /proc/acpi/processor/* mantido um subdiretrio separado para cada CPU includa no seu sistema. /proc/acpi/processor/*/info Informaes sobre as opes de economia de energia do processador.
602
Referncia
/proc/acpi/processor/*/power Informaes sobre o estado atual do processador. Um asterisco prximo a C2 indica que o processador est inativo. Este o estado mais freqente, como pode ser verificado no valor de utilizao. /proc/acpi/processor/*/throttling Pode ser usado para configurar o throttling do relgio do processador. Normalmente, possvel o throttling em oito nveis. Isto independente do controle de freqncia da CPU. /proc/acpi/processor/*/limit Se o desempenho (desatualizado) e o throttling forem controlados automaticamente por um daemon, os limites mximos podem ser especificados aqui. Alguns dos limites so determinados pelo sistema. Alguns podem ser ajustados pelo usurio. /proc/acpi/thermal_zone/ Existe um subdiretrio separado para cada zona trmica. Uma zona trmica uma rea com propriedades trmicas similares, cujo nmero e nomes so designados pelo fabricante do hardware. No entanto, muitas das possibilidades oferecidas pela ACPI raramente so implementadas. Ao contrrio, o controle de temperatura convencionalmente administrado pelo BIOS. O sistema operacional no tem muita oportunidade de intervir, porque a vida til do hardware est ameaada. Portanto, alguns dos arquivos tm apenas um valor terico. /proc/acpi/thermal_zone/*/temperature Temperatura atual da zona trmica. /proc/acpi/thermal_zone/ O estado indica se tudo est ok ou se a ACPI aplica o resfriamento ativo ou passivo. No caso de controle de ventilador independente da ACPI, o estado est sempre ok. /proc/acpi/thermal_zone/*/cooling_mode Selecione o mtodo de resfriamento controlado pela ACPI Escolha o modo de resfriamento passivo (menor desempenho, econmico) ou ativo (total desempenho, rudo do ventilador). /proc/acpi/thermal_zone/*/trip_points Habilita a determinao de limites de temperatura para acionamento de aes especficas, como resfriamento ativo ou passivo, suspenso (quente), ou um shutdown (crtico). As aes possveis so definidas no DSDT (dependente do Gerenciamento de energia 603
dispositivo). Os pontos de desligamento determinados na especificao da ACPI so crtico, quente, passivo, ativo1 e ativo2. Mesmo que nem todos eles sejam implementados, devem ser sempre digitados neste arquivo nesta ordem. Por exemplo, a entrada echo 90:0:70:0:0 > trip_points configura a temperatura de crtico a 90 e a temperatura de passivo a 70 (todas as temperaturas medidas em graus Celsius). /proc/acpi/thermal_zone/*/polling_frequency Se o valor em temperatura no for atualizado automaticamente quando a temperatura mudar, alterne o modo polling aqui. Com o comando echo X > /proc/acpi/thermal_zone/*/polling_frequency a temperatura verificada a cada X segundos. Configure X=0 para desabilitar o polling. Nenhuma destas configuraes, informaes e eventos precisam ser editados manualmente. Isto pode ser feito com o daemon do Powersave (economia de energia) e diversos front ends, como powersave, kpowersave e wmpowersave. Consulte a Seo 33.3.3, Ferramentas da ACPI (p 606).
604
Referncia
gerenciador de espao de usurio Se o gerenciador de espao de usurio estiver definido, o kernel passa o controle da escala de freqncia de CPU para um aplicativo de espao de usurio, geralmente um daemon. Em distribuies do SUSE Linux, este daemon o pacote powersaved. Quando essa implementao usada, a freqncia de CPU ajustada em relao carga do sistema atual. Por padro, uma das implementaes de kernel usada. Porm, em alguns hardwares ou em relao a drivers ou processadores especficos, a implementao do espao de usurio ainda a nica soluo que funciona. gerenciador em demanda Esta a implementao de kernel de uma poltica de freqncia de CPU dinmica e deve funcionar na maioria dos sistemas. Assim que houver uma carga alta de sistema, a freqncia de CPU imediatamente aumentada. Ela reduzida em uma carga de sistema baixa. gerenciador conservador Esse gerenciador similar implementao em demanda, exceto que uma poltica mais conservadora usada. A carga do sistema deve ser alta por um tempo especfico antes que a freqncia do CPU seja aumentada. gerenciador de economia de energia A freqncia de cpu definida estaticamente para o mais baixo possvel. gerenciador de desempenho A freqncia de cpu definida estaticamente para o mais alto possvel. Throttling da freqncia do relgio Esta tecnologia omite uma determinada porcentagem dos impulsos de sinal do relgio para a CPU. Com throttling a 25%, todo quarto impulso omitido. A 87,5%, apenas cada oitavo impulso chega ao processador. No entanto, as economias de energia so pouco menos que lineares. Normalmente, o throttling s usado se o dimensionamento da freqncia no estiver disponvel ou para maximizar as economias de energia. Essa tecnologia tambm deve ser controlada por um processo especial. A interface do sistema /proc/acpi/processor/*/throttling. Colocando o processador para hibernar O sistema operacional coloca o processador para hibernar sempre que no houver nada para fazer. Neste caso, o sistema operacional envia um comando de halt para a CPU. H trs estados: C1, C2 e C3. No estado mais econmico, C3, at a
Gerenciamento de energia
605
sincronizao do cache do processador com a memria principal interrompida. Portanto, esse estado s pode ser aplicado se nenhum dispositivo modificar o contedo da memria principal por meio de atividade do barramento mestre. Alguns drivers impedem o uso de C3. O estado atual exibido em /proc/acpi/ processor/*/power. O dimensionamento e o throttling da freqncia s so relevantes se o processador estiver ocupado, porque o estado C mais econmico aplicado sempre que o processador est inativo. Se a CPU estiver ocupada, o dimensionamento da freqncia o mtodo recomendado para economia de energia. Em geral o processador s trabalha com carga parcial. Neste caso, pode ser executado com uma freqncia inferior. Normalmente, a escala de freqncia dinmica controlada pelo gerenciador em demanda do kernel ou por um daemon, como powersaved, o melhor mtodo. Uma configurao esttica em baixa freqncia til para operaes bateria ou se voc desejar que o computador permanea frio ou em silncio. Throttling deve ser usado como ltima alternativa, por exemplo, para ampliar o tempo de operao da bateria, apesar de uma alta carga do sistema. Contudo, alguns sistemas no so executados suavemente quando ocorrem throttlings em excesso. Ademais, o throttling da CPU no faz sentido se a CPU tem pouco a fazer. No SUSE Linux estas tecnologias so controladas pelo daemon do powersave. A configurao est explicada na Seo 33.5, O Pacote powersave (p 610).
606
Referncia
para contornar erros na implementao da ACPI em outros sistemas operacionais amplamente utilizados. Componentes de hardware que tm erros srios na implementao da ACPI so gravados em uma lista negra que impede que o kernel do Linux use a ACPI para esses componentes. A primeira ao a ser tomada quando problemas forem detectados, atualizar o BIOS. Se o computador no inicializar de jeito nenhum, um dos seguintes parmetros de inicializao poder ser til: pci=noacpi No use ACPI para configurar os dispositivos PCI. acpi=oldboot Realize apenas uma configurao com recursos simples. No use a ACPI para outros fins. acpi=off Desabilitar a ACPI. ATENO: Problemas de inicializao sem ACPI Algumas mquinas mais novas (especialmente os sistemas SMP e AMD64) precisam de ACPI para configurar o hardware corretamente. Nestas mquinas, desabilitar a ACPI pode causar problemas. Monitore as mensagens de inicializao do sistema com o comando dmesg | grep -2i acpi (ou todas as mensagens, porque o problema pode no ser causado pela ACPI) aps a inicializao. Se ocorrer um erro ao analisar uma tabela da ACPI, a tabela mais importante, a DSDT, pode ser substituda por uma verso aperfeioada. Neste caso, a DSDT defeituosa do BIOS ignorada. O procedimento est descrito na Seo 33.5.4, Soluo de problemas (p 616). Na configurao do kernel, h um switch para ativar as mensagens de depurao da ACPI. Se um kernel com depurao da ACPI for compilado e instalado, os tcnicos que procuram o erro podem ser auxiliados com informaes detalhadas. Se voc tiver problemas com BIOS ou hardware, sempre recomendvel entrar em contato com os fabricantes. Especialmente se eles nem sempre derem assistncia ao Linux, devem ser indagados em caso de problemas. Os fabricantes s levaro a questo a srio se compreenderem que um nmero satisfatrio de seus clientes usa Linux.
Gerenciamento de energia
607
Mais informaes
Documentao adicional e suporte para a ACPI: http://www.cpqlinux.com/acpi-howto.html (ACPI HOWTO detalhado, contm patches DSDT) http://www.intel.com/technology/iapc/acpi/faq.htm (ACPI FAQ @Intel) http://acpi.sourceforge.net/ (O projeto ACPI4Linux em Sourceforge) http://www.poupinou.org/acpi/ (patches DSDT por Bruno Ducrot)
608
Referncia
Muitas vezes no fcil colocar o disco rgido para hibernar. No Linux, vrios processos gravam no disco rgido, ativando-o repetidamente. Portanto, importante entender como o Linux trata os dados que necessitam ser gravados no disco rgido. Primeiro, todos os dados esto no buffer da memria RAM. O buffer monitorado pelo daemon do kernel update (kupdated). Quando os dados atingem uma determinada idade limite ou quando o buffer est cheio at certo grau, o contedo do buffer descarregado para o disco rgido. O tamanho do buffer dinmico e depende do tamanho da memria e da carga do sistema. Por padro, kupdated configurado em intervalos curtos para atingir a integridade de dados mxima. Verifica o buffer a cada 5 segundos e notifica o daemon do bdflush quando os dados tm mais de 30 segundos ou quando o buffer atinge um nvel de preenchimento de 30%. Em seguida, o daemon do bdflush grava os dados no disco rgido. Tambm grava independentemente do kupdated se, por exemplo, o buffer estiver cheio. ATENO: Deficincia da integridade de dados Mudanas nas configuraes do daemon de atualizao do kernel colocam a integridade dos dados em perigo. Alm destes processos, sistemas de arquivo de registro em dirio, como ReiserFS e Ext3, gravam seus metadados independentemente de bdflush, que tambm impede o disco rgido de ser encerrado. Para evitar isso, foi desenvolvida uma extenso especial de kernel para dispositivos mveis. Consulte /usr/src/linux/Documentation/ laptop-mode.txt para obter detalhes. Outro fator importante o modo como se comportam os programas ativos. Por exemplo, os bons editores gravam regularmente backups ocultos do arquivo modificado no momento para o disco rgido, fazendo com que ele saia do modo de hibernao. Recursos como este podem ser desabilitados s custas da integridade dos dados. Com relao a isso, o mail daemon postfix faz uso da varivel POSTFIX_LAPTOP. Se essa varivel for configurada para sim, postfix acessa o disco rgido com muito menos freqncia. No entanto, isto irrelevante se o intervalo para kupdated for aumentado.
Gerenciamento de energia
609
610
Referncia
throttle dethrottle suspend_to_disk suspend_to_ram standby do_suspend_to_disk do_suspend_to_ram do_standby notify screen_saver reread_cpu_capabilities throttle torna o processador mais lento de acordo com o valor definido em MAX_THROTTLING. Este valor depende do esquema atual. dethrottle configura o processador para desempenho total. suspend_to_disk, suspend_to_ram e standby acionam o evento do sistema para um modo adormecido. Essas trs aes so de maneira geral responsveis pelo acionamento do modo adormecido, mas elas devem ser sempre associadas a eventos especficos do sistema. O diretrio /usr/lib/powersave/scripts contm scripts para processamento de eventos: switch_vt til se a tela for deslocada aps suspenso ou standby. wm_logout Salva as configuraes e efetua logout de GNOME, KDE ou outros gerenciadores de janela. wm_shutdown Salva as configuraes GNOME ou KDE e desliga o sistema.
Gerenciamento de energia
611
set_disk_settings Executa as configuraes de disco realizadas em /etc/sysconfig/ powersave/disk. Se, por exemplo, a varivel EVENT_GLOBAL_SUSPEND2DISK="prepare_suspend_to_disk do_suspend_to_disk" for configurada, os dois scripts ou aes so processados na ordem especificada to logo o usurio d ao powersaved o comando para o modo adormecido suspender para disco. O daemon executa o script externo /usr/lib/powersave/scripts/prepare_suspend_to_disk. Aps o script ser processado com xito, o daemon executa a ao interna do_suspend_to_disk e configura o computador para o modo adormecido depois que o script tiver descarregado mdulos crticos e interrompido servios. As aes para o evento de um boto adormecido podem ser modificadas como em EVENT_BUTTON_SLEEP="notify suspend_to_disk". Neste caso, o usurio informado sobre a suspenso por uma janela pop-up em X ou uma mensagem no console. Em seguida, o evento EVENT_GLOBAL_SUSPEND2DISK gerado, resultando na execuo das aes mencionadas e um modo suspenso de sistema seguro. A ao interna notify pode ser personalizada usando a varivel NOTIFY_METHOD em /etc/sysconfig/powersave/common. /etc/sysconfig/powersave/cpufreq Contm variveis para otimizar as configuraes de freqncia de CPU dinmica e determinar se a implementao de kernel ou o espao de usurio deve ser usado. /etc/sysconfig/powersave/battery Contm limites de bateria e outras configuraes especficas da bateria. /etc/sysconfig/powersave/sleep Neste arquivo, ative os modos adormecidos e determine que mdulos crticos devem ser descarregados e que servios devem ser interrompidos antes de um evento suspender ou aguardar. Quando o sistema reiniciado, os mdulos so recarregados e os servios iniciam novamente. Voc pode at retardar um modo adormecido acionado, por exemplo, para gravar arquivos. As configuraes padres referemse sobretudo aos mdulos USB e PCMCIA. Normalmente, uma falha de suspender ou aguardar causada por determinados mdulos. Consulte a Seo 33.5.4, Soluo de problemas (p 616) para obter mais informaes sobre identificao do erro.
612
Referncia
/etc/sysconfig/powersave/cpufreq Ativa o controle de resfriamento e trmico. Detalhes sobre este assunto esto disponveis no arquivo /usr/share/doc/packages/powersave/README .thermal. /etc/sysconfig/powersave/disk Este arquivo de configurao controla as aes e as configuraes realizadas de acordo com o disco rgido. /etc/sysconfig/powersave/scheme_* Estes so os vrios esquemas que adaptam o consumo de energia a determinados cenrios de distribuio. Vrios esquemas so pr-configurados e podem ser usados na forma como so apresentados. Esquemas personalizados podem ser salvos aqui.
Gerenciamento de energia
613
EVENT_GLOBAL_SUSPEND2RAM= "prepare_suspend_to_ram screen_saver do_suspend_to_ram" EVENT_GLOBAL_STANDBY= "prepare_standby screen_saver do_standby" EVENT_GLOBAL_RESUME_SUSPEND2DISK= "restore_after_suspend_to_disk" EVENT_GLOBAL_RESUME_SUSPEND2RAM= "restore_after_suspend_to_ram" EVENT_GLOBAL_RESUME_STANDBY= "restore_after_standby"
As aes ou scripts a executar quando os nveis de carga caem abaixo dos limites especificados esto definidos no arquivo de configurao /etc/sysconfig/ powersave/events. As aes padres para botes podem ser modificadas como descrito na Seo 33.5.1, Configurando o Pacote powersave (p 610).
EVENT_BATTERY_NORMAL="ignore" EVENT_BATTERY_WARNING="notify" EVENT_BATTERY_LOW="notify" EVENT_BATTERY_CRITICAL="wm_shutdown"
614
Referncia
AC_SCHEME="performance" BATTERY_SCHEME="powersave"
Os esquemas so armazenados em arquivos em /etc/sysconfig/powersave. Os nomes de arquivos tm o formato scheme_name-of-the-scheme. O exemplo refere-se a dois esquemas: scheme_performance e scheme_powersave. desempenho, powersave, apresentao e acstico so pr-configurados. Os esquemas existentes podem ser editados, criados, apagados ou associados com diferentes estados de fonte de alimentao com o auxlio do mdulo gerenciamento de energia YaST descrito na Seo 33.6, O mdulo Gerenciamento de energia YaST (p 618).
Gerenciamento de energia
615
carga da CPU ficar abaixo do limite mais tempo do que o tempo de espera, o evento configurado em EVENT_PROCESSOR_IDLE ativado. Se a CPU estiver ocupada novamente, EVENT_PROCESSOR_BUSY executado.
616
Referncia
arquivo DSDT de forma compatvel. Inicie mkinitrd (pacote mkinitrd). Sempre que instalar o kernel e usar mkinitrd para criar um initrd, o DSDT modificado integrado e carregado quando o sistema inicializado.
Gerenciamento de energia
617
Se suspender ou colocar em standby ambientes de rede em transformao ou em conexo com sistemas de arquivo montados remotamente, como Samba e NIS, use automounter para mont-los ou adicionar os servios respectivos como smbfs ou nfs, na varivel acima mencionada. Se um aplicativo acessar o sistema de arquivo montado remotamente antes de suspender ou colocar em standby, o servio no pode ser interrompido corretamente e o sistema de arquivo no pode ser desmontado de forma adequada. Aps reiniciar o sistema, o sistema de arquivo pode estar corrompido e deve ser remontado.
618
Referncia
Nesta caixa de dilogo, selecione os esquemas a usar na operao a bateria e na operao de CA. Para adicionar ou modificar os esquemas, clique em Editar Esquemas, que abre uma viso geral dos esquemas existentes como a da Figura 33.2, Viso geral dos esquemas existentes (p 619). Figura 33.2 Viso geral dos esquemas existentes
Gerenciamento de energia
619
Na viso geral dos esquemas, selecione o esquema a modificar e clique em Editar. Para criar um novo esquema, clique em Adicionar. A caixa de dilogo que abre a mesma nos dois casos e mostrada na Figura 33.3, Configurando um esquema (p 620). Figura 33.3 Configurando um esquema
Primeiro, digite um nome adequado e uma descrio para o esquema novo ou editado. Determine se e como o desempenho da CPU deve ser controlado para este esquema. Decida se e em que medida o dimensionamento de freqncia e o throttling devem ser usados. Na caixa de dilogo seguinte para o disco rgido, defina uma Poltica de Standby para desempenho mximo ou para economia de energia. A Poltica de Acstica controla o nvel de rudo do disco rgido (suportado por poucos discos rgidos). A Poltica de Resfriamento determina o mtodo de resfriamento a ser usado. Infelizmente, este tipo de controle trmico raras vezes suportado pelo BIOS. Leia /usr/share/doc/ packages/powersave/powersave_manual.html#Thermal para aprender como usar o ventilador e mtodos de resfriamento passivos. As configuraes globais de gerenciamento de energia tambm podem ser feitas da caixa de dilogo inicial usando Alerta de Bateria, Configuraes ACPI ou Habilitar Suspend. Clique em Alerta de Bateria para acessar a caixa de dilogo do nvel de carga de bateria, mostrada na Figura 33.4, Nvel de carga de bateria (p 621).
620
Referncia
O BIOS do seu sistema notifica o sistema operacional sempre que o nvel de carga cai abaixo de certos limites configurveis. Nesta caixa de dilogo, defina trs limites: Alerta de Capacidade, Capacidade Baixa e Capacidade Crtica. Aes especficas so acionadas quando o nvel de carga cai abaixo desses limites. Normalmente, os dois primeiros estados apenas acionam uma notificao para o usurio. O terceiro nvel crtico aciona um shutdown, porque a energia restante no suficiente para operao continuada do sistema. Selecione os nveis de carga adequados e as aes desejadas e clique em OK para retornar caixa de dilogo de inicializao.
Gerenciamento de energia
621
Acesse a caixa de dilogo para configurar os botes de ACPI usando Configuraes ACPI. Isso mostrado na Figura 33.5, Configuraes ACPI (p 622). As configuraes dos botes de ACPI determinam como o sistema deve responder a certos switches. Configure a resposta do sistema ao pressionar o boto de energia e o boto sleep e ao fechar a tampa do laptop. Clique em OK para concluir a configurao e retornar caixa de dilogo inicial. Clique em Habilitar Suspenso para inserir uma caixa de dilogo na qual determinar se e como os usurios deste sistema podem usar a funcionalidade suspender ou aguardar. Clique em OK para retornar caixa de dilogo principal. Clique em OK novamente para sair do mdulo e confirmar as suas configuraes de gerenciamento de energia.
622
Referncia
34
H vrias possibilidades de usar o sistema Linux para estabelecer comunicao com outros computadores, telefones celulares ou dispositivos perifricos. A WLAN (wireless LAN - LAN sem fio) pode ser usada para colocar laptops em rede. O bluetooth pode ser usado para conectar componentes individuais do sistema (mouse, teclado), dispositivos perifricos, telefones celulares, PDAs e computadores individuais uns com os outros. O IrDA mais usado para comunicao com PDAs ou telefones celulares. Este captulo introduz todas as trs tecnologias e sua configurao.
623
Viso geral de vrios padres WLAN Banda (GHz) Taxa de Nota transmisso mxima (MBit/s) 2 Desatualizado; praticamente nenhum dispositivo final disponvel Comum Menos comum Compatibilidade retroativa com 11b
802.11
2.4
2.4 5 2.4
11 54 54
Alm disso, existem padres patenteados, como a variao 802.11b da Texas Instruments com uma taxa de transmisso mxima de 22 MBit/s (s vezes conhecida como 802.11b+). Porm, a popularidade de placas que utilizam este padro limitada.
34.1.1 Hardware
Placas 802.11 no so suportadas pelo SUSE Linux. A maioria das placas que utilizam 802.11a, 802.11b e 802.11g suportada. Placas novas normalmente so compatveis com o padro 802.11g, mas as placas que utilizam o 802.11b ainda esto disponveis. Normalmente, placas com os seguintes chips so suportadas: Aironet 4500, 4800 Atheros 5210, 5211, 5212 Atmel at76c502, at76c503, at76c504, at76c506 Intel PRO/Wireless 2100, 2200BG, 2915ABG Intersil Prism2/2.5/3 Intersil PrismGT
624
Referncia
Lucent/Agere Hermes Ralink RT2400, RT2500 Texas Instruments ACX100, ACX111 ZyDAS zd1201 Vrias placas antigas que raramente so usadas e que no esto mais disponveis tambm so suportadas. Uma ampla lista de placas WLAN e os chips que elas utilizam est disponvel no site da Web da AbsoluteValue Systems no endereo http://www .linux-wlan.org/docs/wlan_adapters.html.gz. http://wiki .uni-konstanz.de/wiki/bin/view/Wireless/ListeChipsatz oferece uma viso geral de vrios chips WLAN. Algumas placas precisam de uma imagem de firmware que deve ser carregada na placa quando o driver inicializado. Isto acontece com o Intersil PrismGT, Atmel e TI ACX100 e ACX111. O firmware pode ser facilmente instalado com a Atualizao Online YaST. O firmware para placas Intel PRO/Wireless fornecido com o SUSE Linux e instalado automaticamente pelo YaST assim que uma placa desse tipo detectada. Mais informaes sobre esse assunto esto disponveis no sistema instalado em /usr/share/doc/packages/wireless-tools/README.firmware. Placas sem o suporte nativo do Linux podem ser usadas com a execuo do aplicativo ndiswrapper. O ndiswrapper utiliza os drivers do Windows XP que so fornecidos junto com a maioria das placas WLAN. Para configurar o ndiswrapper, siga estas etapas: 1 Instale o pacote ndiswrapper usando YaST. 2 Faa o download do driver apropriado do Windows XP para o seu adaptador de rede sem fio. Use os drivers mencionados na lista de placas suportadas em http://ndiswrapper.sourceforge.net/mediawiki/index.php/ List. Os drivers no testados do seu CD de instalao da placa de rede talvez funcionem, mas podem causar problemas inesperados. 3 Descompacte o arquivo. Cada driver consiste em um arquivo com a extenso .inf e um ou mais DLLs. Como root, instale o driver com o comando ndiswrapper -i driver_name.inf. Ele copia todos os arquivos
625
necessrios para o diretrio /etc/ndiswrapper/ e cria os arquivos de configurao para a sua placa. 4 Verifique se o driver foi instalado de forma adequada com o comando ndiswrapper -l. 5 Carregue o mdulo com o comando modprobe ndiswrapper. O registro de sistema /var/log/messages indica sucesso ou falha. 6 Se tudo funcionar, voc poder digitar ndiswrapper -m para carregar o mdulo quando o sistema iniciar. 7 Configure o adaptador de rede sem fio no YaST com Dispositivos de Rede Placa de Rede. Escolha Sem Fio para o Tipo de Dispositivo, O para Nome de Configurao e ndiswrapper para Nome do Mdulo. Deixe outros campos com seus padres. possvel encontrar uma descrio do ndiswrapper em /usr/share/doc/ packages/ndiswrapper/README.SUSE quando o pacote ndiswrapper instalado. Para obter informaes mais detalhadas sobre ndiswrapper, consulte o site da Web do projeto em http://ndiswrapper.sourceforge.net/support .html.
34.1.2 Funo
Nas redes sem fio, vrias tcnicas e configuraes so usadas para assegurar conexes rpidas, seguras e com alta qualidade. Tipos operacionais diferentes adaptam-se a configuraes diferentes. Pode ser difcil escolher o mtodo de autenticao correto. Os mtodos de criptografia disponveis possuem diferentes vantagens e armadilhas.
Modo de funcionamento
Basicamente, as redes sem fio podem ser classificadas como redes gerenciadas e redes ad-hoc. As redes gerenciadas possuem um elemento de gerenciamento: o ponto de acesso. Neste modo (tambm conhecido como modo de infra-estrutura), todas as conexes das estaes WLAN na rede passam pelo ponto de acesso, que tambm pode servir como uma conexo para uma ethernet. Redes ad-hoc no possuem um ponto de acesso. As estaes se comunicam diretamente umas com as outras. A faixa de transmisso e o nmero de estaes participantes so muito limitados nas redes ad-hoc.
626
Referncia
Portanto, um ponto de acesso normalmente mais eficiente. at mesmo possvel usar uma placa WLAN como um ponto de acesso. A maioria das placas suporta esta funcionalidade. Como uma rede sem fio muito mais fcil de interceptar e comprometer do que uma rede com fio, os vrios padres incluem mtodos de autenticao e criptografia. Na verso original do padro IEEE 802.11, esses mtodos so descritos sob o termo WEP. Porm, como foi provado que o WEP no seguro (consulte Segurana (p 634)), a indstria WLAN (reunida sob o nome Wi-Fi Alliance) definiu uma nova extenso, chamada WPA, que supostamente elimina os pontos fracos do WEP. O padro IEEE 802.11i posterior (tambm conhecido como WPA2, porque o WPA baseado em uma verso de rascunho do 802.11i) inclui o WPA e alguns outros mtodos de autenticao e criptografia.
Autenticao
Para garantir que apenas as estaes autorizadas possam se conectar, vrios mecanismos de autenticao so usados em redes gerenciadas: Aberto Um sistema aberto um sistema que no precisa de autenticao. Qualquer estao pode se juntar rede. Contudo, a criptografia WEP (consulte Criptografia (p 628)) pode ser usada. Chave compartilhada (de acordo com o padro IEEE 802.11) Neste procedimento, a chave WEP usada para autenticao. Porm, este procedimento no recomendado, porque torna a chave WEP mais suscetvel a ataques. Tudo o que um invasor precisa fazer escutar durante tempo suficiente a comunicao entre a estao e o ponto de acesso. Durante o processo de autenticao, ambos os lados trocam as mesmas informaes, uma vez de forma criptografada e outra de forma no criptografada. Isso possibilita a reconstruo da chave com as ferramentas adequadas. Como esse mtodo utiliza a chave WEP para a autenticao e para a criptografia, ele no melhora a segurana da rede. Uma estao com a chave WEP correta pode ser autenticada, criptografada e descriptografada. Uma estao que no tem a chave no pode descriptografar os pacotes recebidos. Da mesma maneira, ela no pode se comunicar, mesmo que tenha que se autenticar.
627
WPA-PSK (de acordo com o padro IEEE 802.1x) O WPA-PSK (PSK corresponde a preshared key - chave pr-compartilhada) funciona de maneira semelhante ao procedimento Chave compartilhada. Todas as estaes participantes, assim como o ponto de acesso, precisam da mesma chave. A chave tem 256 bits de tamanho e normalmente digitada como uma frase secreta. Este sistema no precisa de um gerenciamento de chave complexo como o WPAEAP e mais adequado para uso privado. Portanto, o WPA-PSK s vezes conhecido como WPA Home. WPA-EAP (de acordo com o padro IEEE 802.1x) Na verdade, o WPA-EAP no um sistema de autenticao, e sim um protocolo para transporte de informaes de autenticao. O WPA-EAP usado para proteger redes sem fio em empresas. Em redes privadas, ele raramente usado. Por este motivo, o WPA-EAP s vezes conhecido como WPA Enterprise. O WPA-EAP precisa de um servidor Radius para autenticar os usurios. O EAP oferece trs mtodos diferentes de conexo e autenticao no servidor: TLS (Transport Layer Security), TTLS (Tunneled Transport Layer Security) e PEAP (Protected Extensible Authentication Protocol). Em resumo, essas opes funcionam da seguinte maneira: EAP-TLS A autenticao TLS utiliza a troca mtua de certificados para servidor e cliente. Primeiro, o servidor apresenta o seu certificado para o cliente, onde ele avaliado. Se o certificado for considerado vlido, o cliente, por sua vez, apresenta o seu certificado para o servidor. Embora o TLS seja seguro, ele exige uma infra-estrutura de gerenciamento de certificao que funcione em sua rede. Esta infra-estrutura raramente encontrada em redes particulares. EAP-TTLS e PEAP Os protocolos TTLS e PEAP so protocolos de dois estgios. No primeiro estgio, a segurana estabelecida e, no segundo, os dados de autenticao do cliente so trocados. Eles exigem muito menos overhead de gerenciamento de certificao do que o TLS, se houver.
Criptografia
Existem vrios mtodos de criptografia para assegurar que pessoas no autorizadas no possam ler os pacotes de dados que so trocados em uma rede sem fio nem obter acesso rede: 628 Referncia
WEP (definido no padro IEEE 802.11) Este padro utiliza o algoritmo de criptografia RC4, originalmente com um tamanho de chave de 40 bits, posteriormente tambm com 104 bits. Muitas vezes, o tamanho declarado como 64 bits ou 128 bits, dependendo da incluso ou no dos 24 bits do vetor de inicializao. Porm, este padro possui algumas fraquezas. Os ataques contra as chaves geradas por este sistema podem ser bem-sucedidos. Contudo, melhor usar o WEP do que no criptografar a rede de nenhuma maneira. TKIP (definido no padro WPA/IEEE 802.11i) Este protocolo de gerenciamento de chave definido no padro WPA utiliza o mesmo algoritmo de criptografia do WEP, mas elimina sua fraqueza. Como uma nova chave gerada para cada pacote de dados, os ataques contra essas chaves so em vo. O TKIP usado junto com o WPA-PSK. CCMP (definido no padro IEEE 802.11i) O CCMP descreve o gerenciamento de chave. Normalmente, ele usado na conexo com o WPA-EAP, mas tambm pode ser usado com o WPA-PSK. A criptografia acontece de acordo com o AES e mais forte do que a criptografia RC4 do padro WEP.
629
Modo de funcionamento Uma estao pode ser integrada em uma WLAN de trs modos diferentes. O modo mais adequado depende da rede na qual deve ocorrer a comunicao: Ad-hoc (rede no-hierrquica sem ponto de acesso), Gerenciada (a rede gerenciada por um ponto de acesso) ou Master (sua placa de rede deve ser usada como o ponto de acesso). Para usar qualquer um dos modos WPA-PSK ou WPA-EAP, o modo de funcionamento dever ser definido como gerenciado. Nome da Rede (ESSID) Todas as estaes em uma rede sem fio precisam do mesmo ESSID para se comunicar umas com as outras. Se nenhuma opo for especificada, a placa selecionar automaticamente um ponto de acesso, que pode no ser o desejado. Modo de Autenticao Selecione um mtodo de autenticao adequado para a sua rede: Abra, Chave Compartilhada, WPA-PSK ou WPA-EAP. Se voc selecionar a autenticao WPA, um nome de rede dever ser definido. Configuraes de Usurio Avanado Este boto abre uma caixa de dilogo com as configuraes detalhadas da sua conexo WLAN. Uma descrio detalhada desta caixa de dilogo ser fornecida posteriormente. 630 Referncia
Aps serem completadas as configuraes bsicas, a sua estao estar pronta para a distribuio na WLAN. IMPORTANTE: Segurana em redes sem fio Certifique-se de usar um dos mtodos de autenticao e criptografia suportados para proteger o trfego da rede. As conexes de WLAN no criptografadas permitem que terceiros interceptem todos os dados da rede. Mesmo uma criptografia mais fraca (WEP) melhor do que nenhuma. Consulte Criptografia (p 628) e a Segurana (p 634) para obter mais informaes. Dependendo do mtodo de autenticao selecionado, o YaST solicita que voc faa um ajuste fino das configuraes em outra caixa de dilogo. Para a opo Aberto, no h nada para definir, porque essa configurao implementa operaes no criptografadas sem autenticao. Chaves WEP Defina um tipo de entrada de chave. Selecione dentre Frase Secreta, ASCII ou Hexadecimal. possvel manter at quatro chaves diferentes para criptografar os dados transmitidos. Clique em Vrias Chaves para informar a caixa de dilogo de configurao de chave. Defina o tamanho da chave: 128 bits ou 64 bits. A configurao padro 128 bits. Na rea de listas na parte inferior da caixa de dilogo, at quatro chaves diferentes podem ser especificadas para serem usadas pela sua estao para a criptografia. Pressione Definir como Padro para definir uma delas como a chave padro. A no ser que voc mude a opo, o YaST utiliza a primeira chave informada como a chave padro. Se a chave padro for apagada, uma das outras chaves dever ser marcada manualmente como a chave padro. Clique em Editar para modificar as entradas de lista existentes ou criar novas chaves. Neste caso, uma janela pop-up solicita que voc selecione um tipo de entrada (Frase Secreta, ASCII ou Hexadecimal). Se voc selecionar Frase Secreta, digite uma palavra ou string de caractere da qual uma chave gerada de acordo com o tamanho especificado anteriormente. O ASCII exige uma entrada de 5 caracteres para uma chave de 64 bits e 13 caracteres para uma chave de 128 bits. Para a opo Hexadecimal, digite 10 caracteres para uma chave de 64 bits ou 26 caracteres para uma chave de 128 bits em notao hexadecimal. WPA-PSK Para digitar uma chave para WPA-PSK, selecione o mtodo de entrada Frase Secreta ou Hexadecimal. No modo Frase Secreta, a entrada deve ser de 8 a 63 caracteres. No modo Hexadecimal, digite 64 caracteres. Comunicao sem fio 631
WPA-EAP Digite as credenciais fornecidas pelo seu administrador de rede. Para TLS, fornea o Certificado de Cliente e o Certificado de Servidor. TTLS e PEAP exigem Identidade e Senha. O Certificado de Servidor opcional. O YaST procura algum certificado em /etc/cert, ento grave os certificados dados a voc neste local e restrinja o acesso a esses arquivos a 0600 (leitura e gravao do proprietrio). Clique em Configuraes Avanadas para entrar na caixa de dilogo de autenticao avanada para sua configurao de WPA-EAP. Selecione o mtodo de autenticao para o segundo estgio da comunicao de EAP-TTLS ou EAP-PEAP. Se voc selecionou TTLS na caixa de dilogo anterior, escolha auto, MD5, GTC, CHAP, PAP, MSCHAPv1 ou MSCHAPv2. Se voc selecionou PEAP, escolha auto, MD5, GTC ou MSCHAPv2. A verso PEAP pode ser usada para forar o uso de uma determinada implementao de PEAP se a configurao determinada automaticamente no funcionar para voc. Saia dessa caixa de dilogo clicando em OK. Clique em Configuraes de Usurio Avanado para sair da caixa de dilogo para a configurao bsica da conexo WLAN e informe a configurao de usurio avanado. As seguintes opes esto disponveis nesta caixa de dilogo: Canal A especificao de um canal no qual a estao WLAN deve funcionar necessria somente nos modos Ad-hoc e Master. No modo Gerenciado, a placa pesquisa automaticamente os canais disponveis para pontos de acesso. No modo Ad-hoc, selecione um dos 12 canais oferecidos para a comunicao da sua estao com as outras estaes. No modo Master, determine em qual canal a sua placa deve oferecer funcionalidade de ponto de acesso. A configurao padro para esta opo Auto. Taxa de Bits Dependendo do desempenho da sua rede, voc pode definir uma determinada taxa de bits para a transmisso de um ponto para outro. Na configurao padro Automtico, o sistema tenta usar a taxa de transmisso de dados mais alta possvel. Algumas placas WLAN no suportam a configurao da taxa de bits. Ponto de Acesso Em um ambiente com vrios pontos de acesso, um deles pode ser pr-selecionado especificando-se o endereo MAC.
632
Referncia
Utilizar o Gerenciamento de Energia Quando voc estiver em trnsito, use as tecnologias de gerenciamento de energia para maximizar o tempo de funcionamento da bateria. Mais informaes sobre o gerenciamento de energia esto disponveis no Captulo 33, Gerenciamento de energia (p 597).
34.1.4 Utilitrios
O hostap (pacote hostap) usado para executar uma placa WLAN como um ponto de acesso. Mais informaes sobre este pacote esto disponveis na home page do projeto (http://hostap.epitest.fi/). O kismet (pacote kismet) uma ferramenta de diagnstico de rede com a qual possvel escutar o trfego de pacote WLAN. Desta forma, voc tambm pode detectar quaisquer tentativas de invaso na rede. Mais informaes esto disponveis em http://www.kismetwireless.net/ e na pgina do manual.
Estabilidade e velocidade
O desempenho e a confiabilidade de uma rede sem fio dependem principalmente do fato de as estaes participantes receberem ou no um sinal claro das outras estaes. Obstrues como paredes podem enfraquecer grandemente o sinal. Quanto menor a fora do sinal, mais lenta fica a transmisso. Durante a operao, verifique a fora do sinal com o utilitrio iwconfig na linha de comando (campo Qualidade do Link) ou com o KInternet no KDE. Se tiver problemas com a qualidade do sinal, tente configurar os dispositivos em outro lugar ou ajuste a posio das antenas do seu ponto de acesso. Antenas auxiliares que melhoram substancialmente a recepo esto disponveis para vrias placas PCMCIA WLAN. A taxa especificada pelo fabricante, como 54 MBit/s, um valor nominal que representa o mximo terico. Na prtica, o throughput mximo de dados no passa da metade desse valor.
633
Segurana
Se voc desejar configurar uma rede sem fio, lembre-se de que qualquer pessoa dentro da faixa de transmisso poder acess-la facilmente se no forem implementadas medidas de segurana. Portanto, certifique-se de ativar o mtodo de criptografia. Todas as placas WLAN e pontos de acesso suportam a criptografia WEP. Embora ainda no seja completamente segura, ela representa um obstculo para um invasor em potencial. A criptografia WEP normalmente adequada para uso particular. A WPA-PSK ainda melhor, mas no implementada em pontos de acesso ou roteadores antigos com funcionalidade WLAN. Em alguns dispositivos, o WPA pode ser implementado por meio de uma atualizao de firmware. Alm disso, o Linux no suporta o WPA em todos os componentes de hardware. Quando esta documentao estava sendo preparada, o WPA funcionava somente com placas que utilizavam chips Atheros, Intel PRO/Wireless ou Prism2/2.5/3. No chip Prism2/2.5/3, o WPA funcionava somente se o driver hostap estivesse em uso (consulte Problemas com placas Prism2 (p 635)). Se o WPA no estiver disponvel, melhor utilizar a criptografia WEP do que nenhum tipo de criptografia. Em empresas com requisitos de segurana avanados, as redes sem fio devem ser operadas somente com WPA.
634
Referncia
WPA
O suporte a criptografia WPA muito novo no SUSE Linux e ainda est em desenvolvimento. Alm disso, o YaST no suporta a configurao de todos os mtodos de autenticao WPA. Nem todas as placas e drivers LAN suportam a criptografia WPA. Algumas placas precisam de uma atualizao do firmware para habilitar a criptografia WPA. Se voc deseja usar a criptografia WPA, leia /usr/share/doc/ packages/wireless-tools/README.wpa.
34.2 Bluetooth
Bluetooth uma tecnologia sem fio para conexo de vrios dispositivos, como telefones celulares, PDAs, dispositivos perifricos ou componentes de sistema como teclado ou mouse. O nome deriva do rei dinamarqus Harold Bluetooth, que uniu vrias faces guerreiras na Escandinvia. O logotipo da Bluetooth baseia-se nas runas de H (lembra uma estrela) e B. Vrios aspectos importantes distinguem o Bluetooth do IrDA. Primeiro, os dispositivos individuais no precisam ver um ao outro diretamente e, segundo, vrios dispositivos podem ser conectados em uma rede. Contudo, a taxa de dados mxima de 720 Kbps (na verso atual 1.2). Teoricamente, o Bluetooth pode se comunicar at atravs de
635
paredes. Na prtica, porm, isto depende das propriedades da parede e da classe do dispositivo. H trs classes de dispositivos com faixas de transmisso entre dez e 100 metros.
Software
Para poder usar o Bluetooth, voc precisa de um adaptador de Bluetooth (adaptador interno ou dispositivo externo), drivers e uma pilha de protocolos Bluetooth. O kernel do Linux j contm os drivers bsicos para usar o Bluetooth. O sistema Bluez usado como pilha de protocolos. Para verificar se os aplicativos funcionam com o Bluetooth, os pacotes bsicos bluez-libs e bluez-utils devem estar instalados. Esses pacotes oferecem diversos servios e utilitrios necessrios. Alm disso, alguns adaptadores, como Broadcom ou AVM BlueFritz! exigem que o pacote bluez-firmware seja instalado. O pacote bluez-cups habilita a impresso nas conexes Bluetooth. Se voc precisa depurar problemas com conexes de Bluetooth, instale o pacote bluez-hcidump.
Interao geral
Um sistema Bluetooth consiste em quatro camadas interbloqueadas que fornecem a funcionalidade desejada: Hardware O adaptador e um driver adequado para suporte pelo kernel do Linux. Arquivos de configurao Usados para controlar o sistema Bluetooth. Daemons Servios que so controlados pelos arquivos de configurao e fornecem a funcionalidade.
636
Referncia
Aplicativos Os aplicativos possibilitam que a funcionalidade fornecida pelos daemons seja usada e controlada pelo usurio. Ao inserir um adaptador Bluetooth, seu driver carregado pelo sistema hotplug. Depois que o driver for carregado, o sistema verifica os arquivos de configurao para ver se o Bluetooth deve ser iniciado. Se for o caso, determina os servios a serem iniciados. Com base nestas informaes, os daemons respectivos so iniciados. Os adaptadores Bluetooth so examinados durante a instalao. Se for encontrado um ou mais, o Bluetooth habilitado. Caso contrrio, o sistema Bluetooth desativado. Qualquer dispositivo Bluetooth acrescentado depois deve ser habilitado manualmente.
Perfis
No Bluetooth, os servios so definidos por meio de perfis, como o perfil de transferncia de arquivo, o perfil de impresso bsica e o perfil de rede de rea pessoal. Para habilitar um dispositivo para usar os servios de outro dispositivo, ambos devem compreender o mesmo perfil. Freqentemente, essa parte das informaes no includa no pacote e no manual do dispositivo. Infelizmente, alguns fabricantes no atendem rigorosamente as definies dos perfis individuais. Apesar disto, a comunicao entre os dispositivos em geral funciona uniformemente. No texto a seguir, os dispositivos locais so os fisicamente conectados ao computador. Os demais dispositivos que s podem ser acessados por conexes sem fio so chamados de dispositivos remotos.
34.2.2 Configurao
Esta seo apresenta a configurao do Bluetooth. Saiba quais os arquivos de configurao envolvidos, que ferramentas so necessrias e como configurar o Bluetooth com YaST ou manualmente.
637
inicializao ou quando voc conectar um adaptador), o Bluetooth inicia automaticamente com as configuraes desse mdulo. Figura 34.2 Configurao YaST do Bluetooth
Na primeira etapa da configurao, determine se os servios Bluetooth devem ser inicializados no sistema. Se tiver habilitado os servios Bluetooth, dois itens podem ser configurados. Primeiro, o Nome do Dispositivo. o nome que outros dispositivos exibem quando o seu computador tiver sido descoberto. H dois marcadores de espao disponveis %h significa o nome de host do sistema (til, por exemplo, se foi atribudo dinamicamente por DHCP) e %d insere o nmero da interface (s til se voc tiver mais de um adaptador Bluetooth no computador). Por exemplo, se voc gravar Laptop %h no campo e DHCP atribuir o nome unidade123 ao seu computador, outros dispositivos remotos reconheceriam o seu computador como Laptop unidade123. O parmetro Gerenciador de Segurana refere-se ao comportamento do sistema local quando um dispositivo remoto tenta se conectar. A diferena est no tratamento do nmero PIN. Permita que qualquer dispositivo se conecte sem um PIN ou, se o PIN for necessrio, determine como o correto escolhido. Voc pode gravar um PIN (armazenado em um arquivo de configurao) no campo de entrada adequado. Se um dispositivo tentar se conectar, primeiro usa este PIN. Se falhar, ele recua para utilizao sem PIN. Para mxima segurana, melhor escolher Solicitar PIN Sempre. Esta opo permite que voc use vrios PINs para vrios dispositivos (remotos).
638
Referncia
Clique em Configurao Daemon Avanada para ativar a caixa de dilogo para selecionar e configurar os servios disponveis (chamados perfis no Bluetooth). Todos os servios disponveis so exibidos em uma lista e podem ser habilitados ou desabilitados clicando em Ativar ou Desativar. Clique em Editar para abrir uma caixa de dilogo na qual especificar argumentos adicionais para o servio selecionado (daemon). No mude nada, a menos que conhea o servio. Aps concluir a configurao dos daemons, saia desta caixa de dilogo clicando em OK. De volta caixa de dilogo principal, clique em Opes de Segurana para abrir a caixa de dilogo de segurana e especificar criptografia, autenticao e configuraes de explorao. Em seguida, saia da caixa de dilogo de segurana para retornar caixa de dilogo principal. Aps fechar a caixa de dilogo principal com Concluir, o sistema Bluetooth est pronto para uso. Da caixa de dilogo principal, voc tambm pode acessar a caixa de dilogo Classes de Dispositivo e Servio. Os dispositivos Bluetooth so agrupados em vrias classes de dispositivo. Nesta caixa de dilogo, escolha o correto para o seu computador, como Desktop ou Laptop. A classe de dispositivo no muito importante, ao contrrio da classe de servio, tambm configurada aqui. s vezes, dispositivos Bluetooth remotos, como telefones celulares, s aceitam determinadas funes se puderem detectar a classe de servio correta configurada no sistema. Isso ocorre com freqncia com os telefones celulares que esperam uma classe chamada Transferncia de Objeto antes de permitir a transferncia dos arquivos de ou para o computador. Voc pode escolher vrias classes. No til selecionar todas as classes por via das dvidas. A seleo padro deve ser adequada na maioria dos casos. Para usar o Bluetooth para configurar uma rede, ative PAND na caixa de dilogo Configurao Daemon Avanada e configure o modo do daemon com Editar. Para uma conexo de rede Bluetooth funcional, um pand deve operar no modo Recepo e o peer no modo Pesquisar. Por padro, o modo Recepo predefinido. Adapte o comportamento do seu pand local. Adicionalmente, configure a interface bnepX (X representa o nmero do dispositivo no sistema) no mdulo YaST daPlaca de Rede.
639
Os arquivos de configurao descritos abaixo s podem ser modificados pelo root do usurio. Atualmente, no h interface de usurio grfico para mudar todas as configuraes. Os mais importantes podem ser configurados com o mdulo YaST do Bluetooth, descrito em Configurando o Bluetooth com YaST (p 637). Todas as outras configuraes s so do interesse de usurios experientes com casos especiais. Normalmente, as configuraes padro devem ser adequadas. Um nmero PIN fornece proteo bsica contra conexes indesejadas. Telefones mveis normalmente consultam o PIN quando estabelecem o primeiro contato (ou quando configuram um dispositivo de contato no telefone). Para que dois dispositivos possam se comunicar, ambos devem se identificar com o mesmo PIN. No computador, o PIN se localiza no arquivo /etc/bluetooth/pin. IMPORTANTE: Segurana das conexes Bluetooth Apesar dos PINs, a transmisso entre dois dispositivos pode no ser totalmente segura. Por padro, a autenticao e a criptografia das conexes Bluetooth so desativadas. Ativar a autenticao e a criptografia pode resultar em problemas de comunicao com alguns dispositivos Bluetooth. Vrias configuraes, como os nomes de dispositivo e o modo de segurana podem ser mudados no arquivo de configurao /etc/bluetooth/hcid.conf. Normalmente, as configuraes padro devem ser adequadas. O arquivo contm comentrios descrevendo as opes para as diversas configuraes. Duas sees no arquivo includo so designadas como opes e dispositivo. O primeiro contm informaes gerais que hcid usa para iniciar. O ltimo contm configuraes para dispositivos Bluetooth individuais e locais. Uma das configuraes mais importantes da seo opes segurana automtica. Se configurado em auto, hcid tenta usar o PIN local para as conexes recebidas. Se falhar, alterna para nenhum e estabelece a conexo. Para maior segurana, esta configurao padro deve ser definida para usurio para verificar se o usurio solicitado a digitar um PIN toda vez que uma conexo estabelecida. Configure o nome sob o qual o computador exibido do outro lado na seo dispositivo. A classe de dispositivo, como Desktop, Laptop ou Servidor definida nessa seo. Autenticao e criptografia tambm so habilitadas ou desabilitadas aqui.
640
Referncia
hcitool
hcitool pode ser usado para determinar se dispositivos locais e remotos so detectados. O comando hcitool dev lista os dispositivos locais. A sada gera uma linha na forma interface_name device_address para todo dispositivo local detectado. Procure dispositivos remotos com o comando hcitool inq. Trs valores retornam para todo dispositivo detectado: o endereo do dispositivo, a diferena de relgio e a classe de dispositivo. O endereo do dispositivo importante, porque outros comandos o usam para identificar o dispositivo de destino. A diferena de relgio serve principalmente para um propsito tcnico. A classe especifica o tipo de dispositivo e o tipo de servio como um valor hexadecimal. O comando hcitool name device-address pode ser usado para determinar o nome do dispositivo de um dispositivo remoto. No caso de um computador remoto, a classe e o nome do dispositivo correspondem s informaes em seu /etc/ bluetooth/hcid.conf. Endereos de dispositivo local geram uma sada de erro.
641
hciconfig
O comando /usr/sbin/hciconfig envia mais informaes sobre o dispositivo local. Se hciconfig for executado sem quaisquer argumentos, a sada mostra informaes do dispositivo, como o nome do dispositivo (hciX), o endereo do dispositivo fsico (um nmero de 12 dgitos no formato 00:12:34:56:78) e informaes sobre a quantidade de dados transmitida. hciconfig hci0 name exibe o nome que retornado pelo seu computador quando recebe solicitaes de dispositivos remotos. Assim como consultar as configuraes do dispositivo local, hciconfig pode ser usado para modificar essas configuraes. Por exemplo, hciconfig hci0 name TEST configura o nome em TEST.
sdptool
O programa sdptool pode ser usado para verificar que servios se tornam disponveis por um dispositivo especfico. O comando sdptool browse device_address retorna todos os servios de um dispositivo. Use o comando sdptool search service_code para procurar um servio especfico. Este comando digitaliza todos os dispositivos acessveis para o servio solicitado. Se um dos dispositivos oferecer o servio, o programa imprime o nome completo do servio retornado pelo dispositivo com uma breve descrio. Veja uma lista de todos os cdigos de servio possveis digitando sdptool sem parmetros.
642
Referncia
34.2.5 Exemplos
Esta seo oferece dois exemplos tpicos de possveis cenrios Bluetooth. O primeiro mostra como uma conexo de rede entre dois hosts pode ser estabelecida atravs do Bluetooth. O segundo apresenta uma conexo entre um computador e um telefone mvel.
Em vez de 00:12:34:56:89:90, a sada deve conter o endereo do dispositivo local baddr1 ou baddr2. Agora necessrio atribuir e ativar um endereo IP a esta interface. Em H1, isso pode ser feito com os dois comandos seguintes:
ip addr add 192.168.1.3/24 dev bnep0 ip link set bnep0 up
Em H2:
ip addr add 192.168.1.4/24 dev bnep0 ip link set bnep0 up
Agora H1 pode ser acessado de H2 com o IP 192.168.1.3. Use o comando ssh 192.168.1.4 para acessar H2 de H1, supondo que H2 executa um sshd, que ativado
643
por padro no SUSE Linux. O comando ssh 192.168.1.4 tambm pode ser executado como um usurio normal.
So usados dois importantes parmetros: --sdp registra o servio com sdpd e --path /tmp instrui o programa onde salvar os dados recebidos, neste caso em /tmp. Voc tambm pode especificar qualquer outro diretrio ao qual tenha acesso de gravao. Se voc usar o kbluetooth, voc ser solicitado por um diretrio onde a fotografia recebida no laptop. Agora o telefone mvel deve reconhecer o computador. Para isso, abra o menu Conectar no telefone e selecione Bluetooth. Se necessrio, clique em Ativar antes de selecionar Meus dispositivos. Selecione Novo dispositivo e deixe o seu telefone procurar o laptop. Se um dispositivo for detectado, o nome aparecer na tela. Selecione o dispositivo associado ao laptop. Se encontrar uma consulta de PIN, digite o PIN especificado em /etc/bluetooth/pin. Agora o seu telefone reconhece o laptop e capaz de trocar dados com o laptop. Saia do menu atual e v para o menu da imagem. Selecione a imagem a transferir e pressione Mais. No menu seguinte, pressione Enviar para selecionar um modo de transmisso. Selecione Via Bluetooth. O laptop deve ser listado como dispositivo de destino. Selecione o laptop para iniciar a transmisso. A imagem ento salva no diretrio especificado com o comando opd. Faixas de udio podem ser transferidas para o laptop da mesma maneira.
644
Referncia
645
o endereo 192.168.1.X do exemplo. Se for o caso, tente vrios endereos, como 10.123.1.2 e 10.123.1.3. O laptop parece um dispositivo de destino (consulte Transferncia de dados de um telefone mvel para o computador (p 644))? O dispositivo mvel reconhece o servio Obex-Push no laptop? Em Meus dispositivos, selecione o respectivo dispositivo e veja a lista de Servios. Se Obex-Push no for exibido (mesmo depois da atualizao da lista), o problema causado por opd no laptop. O opd est ativo? Voc tem acesso de gravao ao diretrio especificado? O cenrio descrito em Transferncia de dados de um telefone mvel para o computador (p 644) funciona na direo contrria? Se o pacote obexftp estiver instalado, o comando obexftp -b device_address -B 10 -p image pode ser usado em alguns dispositivos. Vrios modelos Siemens e Sony Ericsson foram testados e demonstraram ser funcionais. Consulte a documentao em /usr/share/doc/packages/ obexftp. Se voc instalou o pacote bluez-hcidump, poder usar hcidump -X para verificar o que enviado entre os dispositivos. Algumas vezes as ajudas da sada fornecem uma sugesto de onde o problema est, mas esteja ciente de que estar apenas parcialmente em texto legvel.
646
Referncia
34.3.1 Software
Os mdulos de kernel necessrios so includos no pacote do kernel. O pacote irda fornece os aplicativos ajudantes necessrios para suportar a interface infravermelha. A documentao pode ser encontrada em /usr/share/doc/packages/irda/ README, depois da instalao do pacote.
34.3.2 Configurao
O servio do sistema IrDA no iniciado automaticamente quando o sistema iniciado. Use o mdulo IrDA do YaST para a ativao. S possvel modificar uma configurao neste mdulo: a interface serial do dispositivo infravermelho. A janela de teste mostra duas sadas. Uma a sada de irdadump, que registra todos os pacotes de IrDA enviados e recebidos. Essa sada deve conter o nome do computador e os nomes de
647
todos os dispositivos infravermelhos da faixa de transmisso. H um exemplo dessas mensagens na Seo 34.3.4, Soluo de problemas (p 649). Todos os dispositivos para os quais existe uma conexo IrDA so relacionados na parte inferior da janela. O IrDA consome uma quantidade considervel de energia da bateria, pois pacotes de descoberta so enviados com um intervalo de poucos segundos para detectar outros dispositivos perifricos. Portanto, caso voc dependa da energia da bateria, o IrDA s dever ser iniciado quando necessrio. Digite o comando rcirda start para ativlo ou rcirda stop para encerr-lo. Todos os mdulos de kernel necessrios sero carregados automaticamente quando a interface for ativada. A configurao manual pode ser executada no arquivo /etc/sysconfig/irda. O arquivo contm apenas uma varivel, IRDA_PORT, que determina a interface a ser usada no modo SIR.
34.3.3 Uso
Os dados podem ser enviados para o arquivo de dispositivo /dev/irlpt0 para impresso. O arquivo do dispositivo /dev/irlpt0 age como a interface cabeada /dev/lp0 normal, sendo que os dados de impresso so enviados em modo sem fio com a luz infravermelha. Para imprimir, verifique se a impressora est dentro da faixa visual da interface infravermelha do computador e se o suporte a infravermelho foi iniciado. Uma impressora operada pela interface infravermelha pode ser configurada com o mdulo Impressora do YaST. Como ela no detectada automaticamente, configurea manualmente clicando em Outro (no detectado). Na caixa de dilogo seguinte, selecione Impressora IrDA. Normalmente, a conexo correta irlpt0. Os detalhes sobre as impressoras em operao no Linux esto disponveis no Captulo 11, Operao da impressora (p 237). A comunicao com outros hosts e com telefones celulares ou dispositivos semelhantes conduzida por meio do arquivo de dispositivo /dev/ircomm0. Os telefones celulares Siemens S25 e Nokia 6210, por exemplo, podem discar e se conectar com a Internet com o aplicativo wvdial, usando a interface infravermelha. A sincronizao de dados com um Palm Pilot tambm possvel, desde que a configurao do dispositivo do aplicativo correspondente seja definida como /dev/ircomm0.
648
Referncia
Se desejar, voc poder usar apenas dispositivos que suportem os protocolos da impressora ou IrCOMM. Dispositivos que suportam o protocolo IROBEX, como 3Com Palm Pilot, podem ser acessados com aplicativos especiais, como irobexpalm e irobexreceive. Consulte IR-HOWTO (http://tldp.org/HOWTO/ Infrared-HOWTO/) para obter mais informaes. Os protocolos suportados pelo dispositivo so relacionados entre colchetes depois do nome do dispositivo, na sada de irdadump. O suporte ao protocolo rLAN ainda est em andamento.
Verifique a configurao da interface se no houver sada ou se o outro dispositivo no responder. Verifique se a interface correta est sendo usada. Algumas vezes, a interface infravermelha est localizada em /dev/ttyS2 ou em /dev/ttyS3, e interrupes diferentes de IRQ 3 so usadas ocasionalmente. Essas configuraes podem ser verificadas e modificadas no menu de configurao do BIOS de quase todos os laptops. Uma simples cmera de vdeo tambm pode ajudar a determinar se o LED infravermelho est acendendo. A maioria das cmeras de vdeo pode ver a luz infravermelha, que nossos olhos no vem.
649
ndice Remissivo
A
ACLs, 147159 acesso, 150, 153 algoritmo de verificao, 158 bits de permisso, 152 definies, 150 efeitos, 155 estrutura, 150 gerenciando, 150 mscaras, 154 padro, 150, 155 suporte, 158 ajuda pginas de informaes, 229 X, 288 Apache, 463504 configurando, 465 arquivos, 466 assistente de HTTP do YaST, 473 Configurao de Servidor HTTP do YaST, 478 host virtual, 469 manualmente, 465473 YaST, 473480 inicializao rpida, 463 iniciando, 480 instalao, 464 mais informaes, 502 mdulos, 482490 criando mdulos, 489 disponveis, 484 instalando, 483 mdulos de multiprocessamento, 486 mdulos externos, 488
parando, 480 scripts CGI, 490 segurana, 499 soluo de problemas, 501 Squid, 554 SSL, 493499 configurar Apache com SSL, 498 criando um certificado SSL, 493 aplicativos rede remota, 299 remotos FreeNX, 299 arquivos criptografando, 123 localizao, 226 sincronizando, 505526 CVS, 506, 515518 iFolder, 508 mailsync, 507, 523526 rsync, 507 Subversion, 507 Unison, 506, 513515 arquivos bsicos, 227 arquivos de configurao, 366 .bashrc, 224, 227 .emacs, 229 .mailsync, 523 .profile, 224 .xsession, 119 acpi, 601 crontab, 224 csh.cshrc, 233 dhclient.conf, 426 dhcp, 366 dhcpd.conf, 426 economia de energia, 601 exportaes, 420 exports, 419 group, 70
grub.conf, 210 gshadow, 76 host.conf, 369 HOSTNAME, 373 hosts, 348, 368 idioma, 232233 ifcfg-*, 366 inittab, 189, 192, 230 inputrc, 231 irda, 648 kernel, 187 logrotate.conf, 225 menu.lst, 204 modprobe.conf, 72 modules.conf, 72 named.conf, 391401, 545 nscd.conf, 372 nsswitch.conf, 370, 453 pam_unix2.conf, 452 passwd, 70 perfil, 233 permisses, 144 powersave.conf, 82 profile, 223, 227 rede, 366 redes, 369 resolv.conf, 228, 367, 391, 544 rotas, 366 samba, 531 sem fio, 366 servios, 531, 553 slapd.conf, 443 smb.conf, 531, 538 smppd.conf, 375 squid.conf, 544, 546, 549, 552, 555, 557 squidguard.conf, 557 sshd_config, 120 suseconfig, 200 sysconfig, 198200
termcap, 231 XF86Config, 86 xorg.conf, 86, 283 Dispositivo, 287 Monitor, 288 Tela, 285 arquivos de registro, 225 boot.msg, 601 mensagens, 114, 391 Squid, 544, 548, 554 Unison, 515 XFree86, 297 atualizando, 6972 mixers de som, 84 passwd e group, 70 problemas, 70 YaST, 70 autenticao Kerberos, 85 PAM, 313321
B
Bancos de dados NSS, 371 Bash .bashrc, 224 .profile, 224 profile, 223 BIND, 390401 Bluetooth, 569, 635 hciconfig, 642 hcitool, 641 opd, 644 pand, 643 rede, 639 sdptool, 642
C
chown, 76
CJK, 231 codificao ISO-8859-1, 233 UTF-8, 75 comandos chown, 76 fontes-configurao, 289 free, 228 getfacl, 154 grub, 202 head, 76 ldapadd, 449 ldapdelete, 452 ldapmodify, 451 ldapsearch, 451 lp, 247 nice, 76 rpm, 91 rpmbuild, 91 scp, 116 setfacl, 154 sftp, 117 slptool, 379 smbpasswd, 537 sort, 76 ssh, 116 ssh-agent, 119 ssh-keygen, 119 tail, 76 computao remota FreeNX, 299311 conexes sem fio Bluetooth, 635 configurando, 198 DNS, 351, 381 DSL, 357 GRUB, 202, 210 imprimindo, 241244 IPv6, 346 IrDA, 647
ISDN, 354 modem a cabo, 357 modems, 352 PAM, 86 redes, 349 manualmente, 362374 roteamento, 351, 366 Samba, 529535 clientes, 535 Squid, 546 SSH, 115 T-DSL, 359 configuration files smpppd-c.conf, 376 consoles alternando, 230 designando, 230 grficos, 219 cpuspeed, 610 criptografando, 121124 arquivos, 123124 arquivos com o vi, 124 criando parties, 122 mdia removvel, 124 parties, 122123 YaST, com, 122 cron, 224 CVS, 506, 515518 cmeras digitais, 571
D
deltarpm, 95 desinstalando GRUB, 217 Linux, 217 DHCP, 421430 configurando com o YaST, 422 designao de endereo esttico, 428 dhcpd, 426428
pacotes, 426 servidor, 426428 discos boot, 217 DNS, 347 BIND, 390401 configurando, 351, 381 domnios, 367 encaminhamento, 391 iniciando, 391 mail exchanger, 348 multicast, 75 NIC, 348 opes, 393 pesquisa reversa, 400 registro, 395 segurana e, 143 servidores de nomes, 367 soluo de problemas, 391 Squid e, 545 terminologia, 381 top level domain, 347 zonas arquivos, 397 domnios .local, 75 DOS compartilhando arquivos, 527
endereos IP, 335 classes, 335 designao dinmica, 421 IPv6, 338 configurando, 346 mascarando, 107 privados, 337 Evolution, 572 Extenso de teclado X (Ver teclado, XKB)
F
filtros de pacote (Ver firewalls) Firefox comando aberto de URL, 91 firewalls, 105 filtros de pacote, 105 filtros de pacotes, 109 Squid e, 552 SuSEfirewall2, 105, 109 Firewire (IEEE1394) discos rgidos, 571 folhas de estilo TEI XSL nova localizao, 89 fonte compilando, 99 fontes, 289 central X11, 290 indexadas do CID, 294 TrueType, 289 Xft, 291 FreeNX, 299311
E
e-mail sincronizando, 507 mailsync, 523526 sincronizao, 568 editores Emacs, 229230 Emacs, 229230 .emacs, 229 default.el, 229
G
Gerenciador de Volumes Lgicos (Ver LVM) gerenciamento de energia, 563, 597618 ACPI, 597, 600608, 613 APM, 597, 599600, 613 cpufrequency, 610
cpuspeed, 610 hibernao, 598 monitor de bateria, 598 nvel de carga, 614 powersave, 610 standby, 598 suspender, 598 YaST, 618 grficos 3D, 295297 3Ddiag, 297 diagnstico, 296 drivers, 295 SaX, 296 solucionando problemas, 297 suporte para, 295 suporte instalao para, 297 testando, 296 GLIDE, 295297 OpenGL, 295297 drivers, 295 testando, 296 placas 3D, 295297 GRUB, 201221 comandos, 202212 desinstalando, 217 device.map, 203, 209 editor de menu, 208 Erro de geometria do GRUB, 220 grub.conf, 203, 210 inicializando, 202 JFS e GRUB, 220 limitaes, 202 menu de boot, 204 menu.lst, 203204 nomes de dispositivos, 205 nomes de parties, 205 Registro Mestre de Inicializao (MBR), 201
H
hardware ISDN, 354 hciconfig, 642 hcitool, 641 head, 76 help pginas de manual, 229
I
I18N, 231 iFolder, 508 impresso, 237 xpp, 247 imprimindo, 241244 aplicativos, de, 247 arquivo PPD, 242 conexo, 242 configurando com o YaST, 241 CUPS, 247 driver Ghostscript, 242 drivers, 242 filas, 242 impressoras GDI, 253 IrDA, 648 kprinter, 247 linha de comando, 247 porta, 242 pgina de teste, 242 rede, 255 Samba, 528 soluo de problemas rede, 255 inicializando configurando
YaST, 212217 GRUB, 201221 grfico, 219 initramfs, 187 initrd, 187 inicializao, 185 setores de boot, 201202 init, 189 adicionando scripts, 194 inittab, 189 scripts, 192196 instalando GRUB, 202 manualmente, 85 pacotes, 92 internacionalizao, 231 Internet cinternet, 375 discagem, 374376 DSL, 357 ISDN, 354 KInternet, 375 qinternet, 375 smpppd, 374376 TDSL, 359 IrDA, 570, 647649 configurando, 647 encerrando, 647 iniciando, 647 soluo de problemas, 649
L
L10N, 231 laptops, 563570 gerenciamento de energia, 563, 597 609 hardware, 563 IrDA, 647649 NetworkManager, 566 PCMCIA, 563 SCPM, 564, 583 SLP, 566 LDAP, 437462 ACLs, 444 adicionando dados, 448 administrando grupos, 460 administrando usurios, 460 apagando dados, 452 buscando dados, 451 cliente LDAP do YaST, 452 configurao do servidor, 443 controle de acesso, 446 ldapadd, 448 ldapdelete, 452 ldapmodify, 450 ldapsearch, 451 modificando dados, 450 YaST modelos, 453 mdulos, 453 rvore de diretrios, 440 LFS, 278 Lightweight Directory Access Protocol (Ver LDAP) Linux
K
kernels caches, 228 limites, 279 mdulos modprobe.conf, 72 verso 2.6, 72 Kontact, 572
compartilhando arquivos com outro SO, 527 desinstalando, 217 redes e, 331 Linux de 64 bits, 181 desenvolvimento de software, 182 especificaes do kernel, 184 suporte ao tempo de execuo, 181 linuxrc instalao manual, 85 linuxthreads, 73 local UTF-8, 75 localizao, 231 locate, 226 logrotate, 225 LSB instalando pacotes, 91 LVM YaST, 55
YaST, 352 monitoramento do sistema, 567 KPowersave, 567 KSysguard, 567 mountd, 420 mdia removvel subfs, 79
N
NAT (Ver mascarando) NetBIOS, 527 Network File System (Ver NFS) Network Information Service (Ver NIS) NetworkManager, 566 NFS, 415 clientes, 415 exportando, 418 importando, 416 montando, 416 permisses, 419 servidores, 417 nfsd, 420 NGPT, 73 nice, 76 NIS, 405413 clientes, 412 escravos, 405412 masters, 405412 notebooks (Ver laptops) Novell iFolder, 508 NPTL, 7374 NSS, 370
M
mascaramento configurando com o SuSEfirewall2, 109 mascarando, 107 MBR, 201202 memria RAM, 228 mobilidade, 563573 cmeras digitais, 571 discos rgidos externos, 571 Firewire (IEEE1394), 571 laptops, 563 PDAs, 572 segurana de dados, 570 telefones celulares, 572 USB, 571 modems cabo, 357
O
opd, 644 OpenLDAP (Ver LDAP) OpenSSH (Ver SSH) OS/2 compartilhando arquivos, 527
P
pacotes compilando, 99 compilando com build, 101 desinstalando, 92 gerenciador de pacotes, 91 instalando, 92 LSB, 91 RPMs, 91 verificando, 92 pacotes de thread NPTL, 74 pginas de informaes, 229 pginas de manual, 229 PAM, 313321 configurando, 86 pand, 643 parties criptografando, 122 tabela de partio, 201 PBX, 355 PCMCIA, 563, 575 IrDA, 647649 PDAs, 572 permisses ACLs, 147159 permisses de arquivo, 226 placas rede, 348349 vdeo, 288 Pluggable Authentication Modules (Ver PAM) portas 53, 393 explorando, 554 PostgreSQL atualizando, 70 powersave, 610 configurando, 610
protocolos CIFS, 527 IPv6, 338 LDAP, 437 SLP, 377 SMB, 527 proxies (Ver Squid) caches, 539 transparentes, 551 vantagens, 539
R
RAID YaST, 63 RAID de software (Ver RAID) Recursos do Squid, 539 redes, 331 arquivos de configurao, 366373 Bluetooth, 569, 639 configurando, 348359, 362374 IPv6, 346 DHCP, 421 DNS, 347 endereo de broadcast, 337 endereo de rede de base, 337 host local, 337 IrDA, 570 mscaras de rede, 335 roteamento, 335, 351 sem fio, 569 SLP, 377 TCP/IP, 331 WLAN, 569 YaST, 349 Registro Mestre de Inicializao (Ver MBR) RFCs, 331 roteamento, 335, 351, 366367 esttico, 367
mscaras de rede, 335 rotas, 366 roteando mascarando, 107 RPM, 91102 atualizando, 93 banco de dados reconstruindo, 94, 99 consultas, 96 deltarpm, 95 dependncias, 92 desinstalando, 94 ferramentas, 102 patches, 94 rpmnew, 92 rpmorig, 92 rpmsave, 92 segurana, 145 SRPMS, 100 verificando, 92 verificar, 98 rpmbuild, 91 rsync, 507, 521 runlevels, 189192 editando no YaST, 196 mudando, 191192
S
Samba, 527538 CIFS, 527 clientes, 528, 535536 compartilhamentos, 528, 532 configurando, 529535 impressoras, 528 imprimindo, 536 iniciando, 529 instalando, 529 interrompendo, 529 login, 536
nomes, 527 permisses, 534 segurana, 534535 servidor, 528 servidores, 529535 SMB, 527 swat, 531 TCP/IP e, 527 SCPM, 583 alternando perfis, 593 configuraes avanadas, 594 gerenciando perfis, 592 grupos de recursos, 592 iniciando, 592 laptops, 564 scripts init.d, 189, 192196, 373 boot, 193 boot.local, 194 boot.setup, 194 halt, 194 network, 373 nfsserver, 373, 419 portmap, 373, 419 rc, 192, 194 sendmail, 374 squid, 544 ypbind, 374 ypserv, 374 irda, 648 mkinitrd, 187 modify_resolvconf, 228, 368 SuSEconfig, 198200 desabilitando, 200 sdptool, 642 segurana, 134146 assinaturas RPM, 145 ataques, 142143 bugs e, 138, 141 deteco de intrusos, 86
dicas e truques, 143 DNS, 143 engenharia, 135 firewalls, 105 inicializao, 135, 137 local, 136139 permisses, 137138 rede, 140143 relatando problemas, 146 Samba, 534 senhas, 136137 sistema de arquivos criptografados, 570 Squid, 540 SSH, 115121 tcpd, 146 telnet, 115 terminais seriais, 135 vrus, 139 worms, 143 X e, 140 segurana de dados, 570 Service Location Protocol (Ver SLP) servidores de nomes (Ver DNS) SGML diretrios, 79 sincronizao de dados, 569 e-mail, 568 Evolution, 572 Kontact, 572 KPilot, 572 sistema atualizando, 6972 limitao do uso de recursos, 227 localizao, 231 sistema de nomes de domnio (Ver DNS) Sistema X Window (Ver X) sistemas de arquivos, 269280 ACLs, 147159 criptografando, 121 cryptofs, 121
Ext2, 271272 Ext3, 272274 LFS, 278 limitaes, 278 Reiser4, 274275 ReiserFS, 270271 selecionando, 270 suportados, 276278 termos, 269 XFS, 275276 SLP, 377, 566 browser, 379 Konqueror, 379 registrando servios, 377 slptool, 379 SMB (Ver Samba) smpd, 527 software compilando, 99 som mixers, 84 sort, 76 spm, 99 Squid, 539 ACLs, 549 Apache, 554 arquivos de registro, 544, 548, 554 cachemgr.cgi, 554, 556 caches, 539540 danificado, 544 tamanho, 542 Calamaris, 558 configurando, 546 controles de acesso, 555 CPU e, 543 desinstalando, 545 diretrios, 544 DNS, 545 estatsticas, 554, 556 firewalls e, 552
iniciando, 543 interrompendo, 544 permisses, 544, 549 proxies transparentes, 551, 554 RAM e, 543 relatrios, 558 requisitos do sistema, 542 segurana, 540 soluo de problemas, 544 squidGuard, 556 status do objeto, 541 SSH, 115121 daemon, 117 mecanismos de autenticao, 119 pares de chaves, 117, 119 scp, 116 sftp, 117 ssh, 116 ssh-agent, 119120 ssh-keygen, 119 sshd, 117 X e, 120 subfs mdia removvel, 79 Subversion, 507, 518 suporte instalao placas grficas 3D e, 297 SVN (Subversion), 507
Caracteres asiticos, 231 Extenso de teclado X, 231 layout, 230 mapeamento, 230 compor, 231 multikey, 231 XKB, 231 tela resoluo, 287 telefones celulares, 572 Tripwire substitudo por AIDE, 86
U
ulimit, 227 opes, 227 unidades flash, 571 USB discos rgidos, 571 unidades flash, 571 users /etc/passwd, 453 usurios /etc/passwd, 316 UTF-8 codificao, 75
V
variables environment, 232 vdeo placas drivers, 288
T
tail, 76 TCP/IP, 331 ICMP, 332 IGMP, 332 modelo em camadas, 332 pacotes, 333334 TCP, 332 UDP, 332 teclado
W
whois, 348 Windows compartilhando arquivos, 527 WLAN, 569
X
X ajuda, 288 conjuntos de caracteres, 289 drivers, 288 fontes, 289 fontes centrais X11, 290 fontes indexadas do CID, 294 fontes TrueType, 289 otimizando, 283289 SaX2, 284 segurana, 140 sistemas de fontes, 289 SSH e, 120 tela virtual, 287 xf86config, 284 xft, 289 Xft, 291 X.Org, 283 Xen, 323 viso geral, 323 Xft, 291 XKB (Ver teclado, XKB) XML diretrios, 79 xorg.conf Depth, 286 Device, 286 Display, 286 Files, 284 InputDevice, 284 intensidade de cor, 286 Linha modelo, 286 modelines, 284 Modes, 285 Modos, 286 Monitor, 284, 286 ServerFlags, 284
Y
YaST 3D, 295 atualizando, 70 browser SLP, 379 carregador de boot localizao, 214 ordem do disco, 216 senha, 216 tipo, 213 cliente LDAP, 452 clientes NIS, 412 configurao de inicializao, 212 segurana, 216 sistema padro, 215 tempo de espera, 215 DHCP, 422 DSL, 357 editor sysconfig, 198 gerenciamento de energia, 618 GRUB, 213 imprimindo, 241244 ISDN, 354 LILO, 213 LVM, 55 modem a cabo, 357 modems, 352 placa de rede, 349 RAID, 63 runlevels, 196 Samba clientes, 535 T-DSL, 359 YP (Ver NIS)