diff options
author | Edson Brandi <ebrandi@FreeBSD.org> | 2018-09-05 23:24:38 +0000 |
---|---|---|
committer | Edson Brandi <ebrandi@FreeBSD.org> | 2018-09-05 23:24:38 +0000 |
commit | 7cf3f8a1895976be57512918d3a779c549f6c67f (patch) | |
tree | a0e62c660095a12870625dfd5776590d95900101 /pt_BR.ISO8859-1 | |
parent | 316b6e99f04b5bfd0eadee53f12c6d3f8b429f77 (diff) | |
download | doc-7cf3f8a1895976be57512918d3a779c549f6c67f.tar.gz doc-7cf3f8a1895976be57512918d3a779c549f6c67f.zip |
pt_BR.ISO8859-1/books/faq: converted to .po
* content synchronized with en_US document (rev 52188)
* book.xml converted to .po
* .po file was translated to pt_BR
* .po and .xml file has been set to UTF-8 encoding
* information about volunteers who translated and/or revised the document was added to the header of the .po file.
Reviewed by: dbaio
Approved by: gabor (mentor, implicit)
Obtained from: The FreeBSD Brazilian Portuguese Documentation Project
Differential Revision: https://reviews.freebsd.org/D16967
Notes
Notes:
svn path=/head/; revision=52209
Diffstat (limited to 'pt_BR.ISO8859-1')
-rw-r--r-- | pt_BR.ISO8859-1/books/faq/book.xml | 14965 | ||||
-rw-r--r-- | pt_BR.ISO8859-1/books/faq/pt_BR.po | 12772 |
2 files changed, 14726 insertions, 13011 deletions
diff --git a/pt_BR.ISO8859-1/books/faq/book.xml b/pt_BR.ISO8859-1/books/faq/book.xml index fd4e9100a1..f9723d8e19 100644 --- a/pt_BR.ISO8859-1/books/faq/book.xml +++ b/pt_BR.ISO8859-1/books/faq/book.xml @@ -1,599 +1,292 @@ -<?xml version="1.0" encoding="iso-8859-1"?> -<!DOCTYPE book PUBLIC "-//FreeBSD//DTD DocBook XML V5.0-Based Extension//EN" - "http://www.FreeBSD.org/XML/share/xml/freebsd50.dtd" [ -<!ENTITY bibliography SYSTEM "../../share/xml/bibliography.xml"> +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE book PUBLIC "-//FreeBSD//DTD DocBook XML V5.0-Based Extension//EN" "http://www.FreeBSD.org/XML/share/xml/freebsd50.dtd" [ +<!ENTITY bibliography SYSTEM "../../../share/xml/bibliography.xml"> +<!ENTITY rel.numbranch "3"> +<!-- number of branches that follow in this list --><!ENTITY rel.head "<emphasis xmlns='http://docbook.org/ns/docbook'>12-CURRENT</emphasis>"> +<!ENTITY rel.head.relx "12.<replaceable xmlns='http://docbook.org/ns/docbook'>X</replaceable>"> +<!ENTITY rel.head.releng "<symbol xmlns='http://docbook.org/ns/docbook'>head/</symbol>"> +<!ENTITY rel.relx "11.<replaceable xmlns='http://docbook.org/ns/docbook'>X</replaceable>"> +<!ENTITY rel.stable "<emphasis xmlns='http://docbook.org/ns/docbook'>11-STABLE</emphasis>"> +<!ENTITY rel.releng "<symbol xmlns='http://docbook.org/ns/docbook'>stable/11/</symbol>"> +<!ENTITY rel.relengdate "April 2016"> +<!ENTITY rel2.relx "10.<replaceable xmlns='http://docbook.org/ns/docbook'>X</replaceable>"> +<!ENTITY rel2.stable "<emphasis xmlns='http://docbook.org/ns/docbook'>10-STABLE</emphasis>"> +<!ENTITY rel2.releng "<symbol xmlns='http://docbook.org/ns/docbook'>stable/10/</symbol>"> +<!ENTITY rel2.relengdate "August 2015"> ]> -<!-- - The FreeBSD Documentation Project - The FreeBSD Brazilian Portuguese Documentation Project +<book xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:its="http://www.w3.org/2005/11/its" version="5.0" xml:lang="pt_BR"> + <info> + <title>Perguntas freqüentes para o FreeBSD 10.<replaceable>X</replaceable> e 11.<replaceable>X</replaceable></title> - Original revision: 1.456 + <author><orgname>Projeto de Documentação do FreeBSD</orgname></author> - $FreeBSD$ ---> -<book xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:lang="pt_br"> - <info><title>Perguntas mais freqüentes sobre FreeBSD 2.X, 3.X e - 4.X</title> - - - <author><orgname>Projeto de Documentação do FreeBSD</orgname></author> - - <copyright> - <year>1995</year> - <year>1996</year> - <year>1997</year> - <year>1998</year> - <year>1999</year> - <year>2000</year> - <year>2001</year> - <year>2002</year> - <holder>Projeto de Documentação do FreeBSD</holder> - </copyright> - - &legalnotice; + <copyright><year>1995</year> <year>1996</year> <year>1997</year> <year>1998</year> <year>1999</year> <year>2000</year> <year>2001</year> <year>2002</year> <year>2003</year> <year>2004</year> <year>2005</year> <year>2006</year> <year>2007</year> <year>2008</year> <year>2009</year> <year>2010</year> <year>2011</year> <year>2012</year> <year>2013</year> <year>2014</year> <year>2015</year> <year>2016</year> <year>2017</year> <year>2018</year> <holder>Projeto de Documentação do FreeBSD</holder></copyright> - <releaseinfo>$FreeBSD$</releaseinfo> + +<legalnotice xml:id="legalnotice"> + <title>Copyright</title> + + <para>Redistribution and use in source (XML DocBook) and 'compiled' forms (XML, HTML, PDF, PostScript, RTF and so forth) with or without modification, are permitted provided that the following conditions are met:</para> + + <orderedlist> + <listitem> + <para>Redistributions of source code (XML DocBook) must retain the above copyright notice, this list of conditions and the following disclaimer as the first lines of this file unmodified.</para> + </listitem> + + <listitem> + <para>Redistributions in compiled form (transformed to other DTDs, converted to PDF, PostScript, RTF and other formats) must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.</para> + </listitem> + </orderedlist> + + <important> + <para>THIS DOCUMENTATION IS PROVIDED BY THE FREEBSD DOCUMENTATION PROJECT "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FREEBSD DOCUMENTATION PROJECT BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS DOCUMENTATION, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</para> + </important> +</legalnotice> + + + <legalnotice xml:id="trademarks" role="trademarks"> + <para>FreeBSD is a registered trademark of the FreeBSD Foundation.</para> + <para>Adobe, Acrobat, Acrobat Reader, Flash and PostScript are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States and/or other countries.</para> + <para>IBM, AIX, OS/2, PowerPC, PS/2, S/390, and ThinkPad are trademarks of International Business Machines Corporation in the United States, other countries, or both.</para> + <para>IEEE, POSIX, and 802 are registered trademarks of Institute of Electrical and Electronics Engineers, Inc. in the United States.</para> + <para>Intel, Celeron, Centrino, Core, EtherExpress, i386, i486, Itanium, Pentium, and Xeon are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries.</para> + <para>Linux is a registered trademark of Linus Torvalds.</para> + <para>Microsoft, IntelliMouse, MS-DOS, Outlook, Windows, Windows Media and Windows NT are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries.</para> + <para>NetBSD is a registered trademark of the NetBSD Foundation.</para> + <para>Motif, OSF/1, and UNIX are registered trademarks and IT DialTone and The Open Group are trademarks of The Open Group in the United States and other countries.</para> + <para>Silicon Graphics, SGI, and OpenGL are registered trademarks of Silicon Graphics, Inc., in the United States and/or other countries worldwide.</para> + <para>Sun, Sun Microsystems, Java, Java Virtual Machine, JDK, JRE, JSP, JVM, Netra, OpenJDK, Solaris, StarOffice, SunOS and VirtualBox are trademarks or registered trademarks of Sun Microsystems, Inc. in the United States and other countries.</para> + <para>Many of the designations used by manufacturers and sellers to distinguish their products are claimed as trademarks. Where those designations appear in this document, and the FreeBSD Project was aware of the trademark claim, the designations have been followed by the <quote>â„¢</quote> or the <quote>®</quote> symbol.</para> + </legalnotice> + + <releaseinfo xml:lang="en">$FreeBSD$</releaseinfo> <abstract> - <para>Estas são as Perguntas Mais Freqüentes - (<literal>FAQ</literal>) para as versões 2.X, 3.X e 4.X - do FreeBSD. Deve-se assumir que todos os assuntos aqui - tratados são relevantes para FreeBSD 2.0.5 ou - posterior, a não ser que o contrário esteja - explicitamente denotado. Todos os assuntos assinalados com - <XXX> estão em processo de desenvolvimento. Se - você estiver interessado em ajudar este projeto, envie - e-mail para &a.doc;. A versão mais atualizada deste - documento está sempre disponível no <link xlink:href="../../../../index.html">servidor WWW do - FreeBSD</link>. Também pode ser obtida como um - único grande arquivo <link xlink:href="book.html">HTML</link> via HTTP; ou, como texto puro, - ou nos formatos postscript, PDF, etc. no <link xlink:href="ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/">servidor FTP do - FreeBSD</link>. Você também pode querer - <link xlink:href="../../../../search/index.html">realizar uma busca - nas Perguntas Mais Freqüentes - (<literal>FAQ</literal>)</link>.</para> + <para>Estas são as Perguntas Mais Frequentes <acronym>(FAQ)</acronym> para as versões do FreeBSD 10.<replaceable>X</replaceable> e 11.<replaceable>X</replaceable>. Todos os esforços foram feitos para tornar este <acronym>FAQ</acronym> o mais informativo possÃvel; Se você tiver alguma sugestão de como ele pode ser melhorado, envie-a para a <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-doc">lista de discussão do projeto de documentação do FreeBSD</link>.</para> + + <para>A versão mais recente deste documento está sempre disponÃvel no <link xlink:href="https://www.FreeBSD.org/doc/en_US.ISO8859-1/books/faq/index.html">website do FreeBSD</link>. Ela também pode ser baixada como um grande arquivo <link xlink:href="book.html">HTML</link> por HTTP ou em uma grande variedade de outros formatos a partir do <link xlink:href="https://download.freebsd.org/ftp/doc/">servidor de FTP do projeto FreeBSD</link>.</para> </abstract> </info> <chapter xml:id="introduction"> - <title>Introdução</title> - - <para>Bem vindo às Perguntas Mais Freqüentes - (<literal>FAQ</literal>) para as versões 2.X à 4.X - do FreeBSD!</para> - - <para>Como é de costume em Perguntas Mais Freqüentes - (<literal>FAQ</literal>) da Usenet, este documento pretende - cobrir as perguntas mais freqüentes relacionadas ao sistema - operacional FreeBSD (e claro, respondê-las todas!). - Embora originalmente tais documentos tivessem apenas a - finalidade de reduzir a utilização da largura de - banda da rede ao evitar que o mesmo tipo de pergunta antiga - fosse sempre repetida, <literal>FAQs</literal> tornaram-se - reconhecidamente uma fonte valiosa de - informações.</para> - - <para>Inúmeros esforços foram feitos para tornar - este <literal>FAQ</literal> o mais informativo possível; - se você tiver alguma sugestão de como esse - documento pode ser melhorado, sinta-se a vontade para enviar - suas sugestões por e-mail para o &a.faq;.</para> + <title>Introdução</title> <qandaset> <qandaentry> <question xml:id="what-is-FreeBSD"> - <para>O que é FreeBSD?</para> + <para>O que é o FreeBSD?</para> </question> <answer> - <para>Em síntese, FreeBSD é um sistema - operacional <foreignphrase>UN*X-like</foreignphrase> para - plataformas i386 e Alpha/AXP, baseado no - <quote>4.4BSD-Lite</quote> da Universidade da - Califórnia em Berkeley, com alguns aprimoramentos - adotados do <quote>4.4BSD-Lite2</quote>. O FreeBSD - também é baseado, indiretamente, na - conversão de William Jolitz conhecida como - <quote>386BSD</quote> para a plataforma i386 do - <quote>Net/2</quote> da Universidade da Califórnia, - em Berkeley; apesar que pouquíssimo código - originado do 386BSD ainda exista no FreeBSD. Uma - descrição mais abrangente do que é - FreeBSD e como o sistema funciona, pode ser encontrada na - <link xlink:href="../../../../index.html">página - principal do FreeBSD</link>.</para> + <para>O FreeBSD é um sistema operacional moderno para desktops, laptops, servidores e sistemas embarcados, com suporte para um grande número de <link xlink:href="https://www.FreeBSD.org/platforms/">plataformas</link>.</para> - <para>O FreeBSD é amplamente utilizado por empresas, - Provedores de Serviço Internet, pesquisadores, - profissionais de informática, estudantes e - usuários domésticos no mundo todo, para - trabalho, educação e - recreação. Alguns destes exemplos podem ser - observados na <link xlink:href="../../../../gallery/index.html">Galeria - FreeBSD,</link>.</para> + <para>Ele é baseado no sistema <quote>4.4BSD-Lite</quote> da U.C. de Berkeley, com algumas melhorias oriundas do <quote>4.4BSD-Lite2</quote>. Ele também se baseia indiretamente no port para <trademark>i386</trademark> feito por William Jolitz do sistema <quote>Net/2</quote> da U.C. Berkeley, conhecido como <quote>386BSD</quote>, embora muito pouco do código original do 386BSD ainda esteja presente.</para> - <para>Para informações mais detalhadas sobre o - FreeBSD, por favor, leia o <link xlink:href="../handbook/index.html">&a.ptbr.p.handbook;</link>.</para> + <para>O FreeBSD é usado por empresas, provedores de serviços de Internet, pesquisadores, profissionais da computação, estudantes e usuários domésticos em todo o mundo em seu trabalho, educação e recreação.</para> + + <para>Para informações mais detalhadas sobre o FreeBSD, consulte o <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/index.html">Manual do FreeBSD</link>.</para> </answer> </qandaentry> <qandaentry> <question xml:id="FreeBSD-goals"> - <para>Qual o objetivo do Projeto FreeBSD?</para> - </question> - - <answer> - <para>O objetivo do Projeto FreeBSD é oferecer - <foreignphrase>software</foreignphrase> que possa ser - utilizado para qualquer finalidade e sem - obrigações anexadas à esse - código. Muitos de nós investimos - significantemente no código (e no projeto como um - todo), e com certeza não nos importaríamos - em receber algum tipo de compensação - financeira neste momento ou qualquer outro no futuro, mas - ninguém no projeto insistirá nisso. - Acreditamos que a nossa primeira e mais importante - missão é oferecer código para toda e - qualquer pessoa, que possa ser utilizado para qualquer - propósito, de forma que esse código - ofereça o maior número possível de - benefícios e formas de uso. Nós acreditamos - que este é um dos objetivos fundamentais do - <foreignphrase>Software</foreignphrase> Livre, e é - um dos quais nós apoiamos com entusiasmo.</para> - - <para>O código fonte em nossa árvore que - é distribuído sob a <link xlink:href="http://www.FreeBSD.org/copyright/COPYING">Licença - Pública Geral GNU (GPL)</link> ou sob a <link xlink:href="http://www.FreeBSD.org/copyright/COPYING.LIB"> - Licença Pública Geral de Bibliotecas GNU - (LGPL)</link> inclue, pode-se dizer, algumas - obrigações anexadas a ele; contudo tais - restrições visam garantir o acesso livre a - esse código, e não o contrário. - Devido à complexidades adicionais que envolvem a - utilização comercial de software licenciado - sob GPL, nós procuramos substituir tais softwares - sob a mais relaxada <link xlink:href="http://www.FreeBSD.org/copyright/freebsd-license.html">licença - de direito autoral FreeBSD</link> sempre que - possível;.</para> + <para>Qual é o objetivo do projeto FreeBSD?</para> + </question> + + <answer> + <para>O objetivo do Projeto FreeBSD é fornecer um sistema operacional de propósito geral estável e rápido que possa ser usado para qualquer propósito sem restrições.</para> </answer> </qandaentry> <qandaentry> <question xml:id="bsd-license-restrictions"> - <para>A licença FreeBSD tem alguma - restrição?</para> + <para>A licença do FreeBSD tem alguma restrição?</para> </question> <answer> - <para>Sim. Entrentanto, essas restrições - não definem regras a respeito de como o - código deve ser utilizado, mas de como você - deve tratar o Projeto FreeBSD ao utilizar código - distribuído pelo mesmo. Se você tem - sérias dúvidas sobre o licençiamento, - sinta-se a vontade para ler a <link xlink:href="http://www.FreeBSD.org/copyright/freebsd-license.html"> - licença</link>. Para os meramente curiosos, a - licença pode ser resumida em:</para> + <para>Sim. Essas restrições não controlam como o código é usado, mas como tratar o próprio projeto FreeBSD. A licença em si está disponÃvel em <link xlink:href="https://www.FreeBSD.org/copyright/freebsd-license.html">licença</link> e pode ser resumida da seguinte forma:</para> <itemizedlist> <listitem> - <para>Não alegue que o código foi escrito - por você.</para> + <para>Não reivindique que você escreveu o sistema.</para> + </listitem> + + <listitem> + <para>Não nos processe se ele quebrar.</para> </listitem> <listitem> - <para>Não nos processe se o código - falhar.</para> + <para>Não remova ou modifique a licença.</para> </listitem> </itemizedlist> + + <para>Muitos de nós têm um investimento significativo no projeto e certamente não nos importarÃamos com uma pequena compensação financeira de vez em quando, mas nós definitivamente não insistimos nisso. Acreditamos que a nossa primeira e principal <quote>missão</quote> é fornecer código a todos os participantes, e para qualquer finalidade, para que o código obtenha o maior uso possÃvel e forneça o maior benefÃcio possÃvel. Este, acreditamos, é um dos objetivos mais fundamentais do Software Livre e um dos que apoiamos entusiasticamente.</para> + + <para>O código em nosso repositório de código-fonte que se enquadra na <link xlink:href="https://www.FreeBSD.org/copyright/COPYING">Licença Pública Geral GNU (GPL)</link> ou na <link xlink:href="https://www.FreeBSD.org/copyright/COPYING.LIB">Licença Pública Geral da Biblioteca GNU (LGPL)</link> vem com algumas restrições adicionais, ainda que sejam no sentido de forçar o acesso, em vez do habitual oposto. Devido à s complexidades adicionais que podem surgir no uso comercial de um software GPL, nós nos esforçamos para substituir tais softwares por outros sob a <link xlink:href="https://www.FreeBSD.org/copyright/freebsd-license.html">Licença FreeBSD</link> que é menos restritiva, sempre que possÃvel.</para> </answer> </qandaentry> <qandaentry> <question xml:id="replace-current-OS"> - <para>O FreeBSD pode substituir meu sistema operacional - atual?</para> - </question> - - <answer> - <para>Para maioria das pessoas, sim. Mas essa não - é uma pergunta tão simples assim.</para> - - <para>A maioria das pessoas, na verdade, não utiliza - um sistema operacional. As aplicações - utilizadas pelos usuários é que realmente - usam o sistema operacional. O FreeBSD é projetado - de forma a oferecer um ambiente robusto e completo para as - aplicações. Suporta uma enorme variedade de - navegadores internet, de suítes de - escritório, clientes de e-mail, programas de - manipulação gráfica, ambientes de - programação, servidores e serviços de - rede, e praticamente tudo mais que você pode - desejar. A maioria destas aplicações podem - ainda ser gerenciadas através da <link xlink:href="http://www.freebsd.org/ports/">Coleção - de <literal>Ports</literal></link>.</para> - - <para>Em circunstâncias nas quais precise usar uma - aplicação disponível apenas para um - determinado sistema operacional, não é - possível substituir aquele sistema operacional. - Entretanto, há uma boa chance que alguma - aplicação similar à que você - precisa, exista para FreeBSD. Se você quer ter, - desde um sólido conjunto de - aplicações para escritório, - até um robusto e altamente escalável - servidor Internet, ou simplesmente uma - estação de trabalho confiável, onde - você possa realizar seu trabalho sem - interrupções, FreeBSD provavelmente vai - suprir todas as suas necessidades. Inúmeras - pessoas pelo mundo todo, desde usuários novatos - à administradores de sistemas UNIX experientes usam - FreeBSD como seu único sistema operacional para - <foreignphrase>desktop</foreignphrase>.</para> - - <para>Se você está migrando para FreeBSD a - partir de algum outro ambiente UNIX, provavelmente - já sabe quase tudo o que precisa pra começar - a se envolver com o sistema. Entretanto, se o seu - histórico em computação envolveu - somente sistemas operacionais baseados em ambientes - gráficos como Windows e antigos Mac OS, será - necessário investir algum tempo a mais aprendendo a - maneira UNIX de fazer as coisas. Este - <literal>FAQ</literal> e o <link xlink:href="../handbook/index.html">&a.ptbr.p.handbook;</link> - são excelentes formas de começar sua - jornada.</para> + <para>O FreeBSD pode substituir meu sistema operacional atual?</para> + </question> + + <answer> + <para>Para a maioria das pessoas, sim. Mas esta questão não é assim tão simples.</para> + + <para>A maioria das pessoas não usa um sistema operacional. Elas usam aplicativos. São os aplicativos que realmente usam o sistema operacional. O FreeBSD é projetado para fornecer um ambiente robusto e completo para aplicativos. Ele suporta uma grande variedade de navegadores da web, pacotes de escritório, leitores de e-mail, programas gráficos, ambientes de programação, servidores de rede e muito mais. A maioria destes aplicativos pode ser gerenciada através da <link xlink:href="https://www.FreeBSD.org/ports/">Coleção de Ports</link>.</para> + + <para>Se um aplicativo estiver disponÃvel apenas para um determinado sistema operacional, esse sistema operacional não poderá ser substituÃdo. No entanto é provável que exista um aplicativo muito semelhante no FreeBSD. Seja como um sólido servidor corporativo, um servidor de Internet ou ainda uma confiável estação de trabalho, o FreeBSD quase certamente fará tudo o que você precisa. Muitos usuários de computador ao redor do mundo, incluindo novatos e experientes administradores <trademark class="registered">UNIX</trademark>, usam o FreeBSD como seu único sistema operacional de desktop.</para> + + <para>Os usuários que migrarem para o FreeBSD vindos de outro ambiente <trademark class="registered">UNIX</trademark>-like irão achar o FreeBSD bastante similar. Os usuários de <trademark class="registered">Windows</trademark> e do <trademark class="registered">Mac OS</trademark> podem se interessar em usar o <link xlink:href="https://www.trueos.org">TrueOS</link>, uma distribuição de desktop baseada no FreeBSD. Os usuários que não estão habituados ao uso de sistemas <trademark class="registered">UNIX</trademark> devem investir algum tempo adicional aprendendo a maneira de fazer as coisas no <trademark class="registered">UNIX</trademark>. Este <acronym>FAQ</acronym> e o <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/index.html">Manual do FreeBSD </link> são excelentes lugares para iniciar.</para> </answer> </qandaentry> <qandaentry> <question xml:id="why-called-FreeBSD"> - <para>Por que o sistema se chama FreeBSD?</para> + <para>Por que ele é chamado de FreeBSD?</para> </question> <answer> <itemizedlist> <listitem> - <para>Pode ser utilizado sem nenhum encargo - monetário, inclusive para uso comercial.</para> + <para>Pode ser usado gratuitamente, até mesmo por usuários comerciais.</para> </listitem> <listitem> - <para>O código fonte completo do sistema - operacional é livremente distribuído, e - pode ser adquirido gratuitamente. O menor - número possível de - restrições foram colocadas sobre o uso - do sistema, sua distribuição e sua - incorporação à outro projeto - (comercial ou não).</para> + <para>O código fonte completo do sistema operacional está disponÃvel gratuitamente, e foram colocadas restrições mÃnimas sobre seu uso, distribuição e incorporação em outro trabalho (comercial ou não comercial).</para> </listitem> <listitem> - <para>Qualquer pessoa que tiver feito alguma - correção ou aprimoramento do - código do sistema pode livremente enviar suas - alterações e ter seu código - adicionado à árvore de código - fonte do sistema (obviamente sujeito a prévias - análises).</para> + <para>Qualquer pessoa que tenha uma melhoria ou correção de bug está livre para enviar seu código e para adicioná-lo ao repositório de código-fonte (sujeito a uma ou duas provisões óbvias).</para> </listitem> </itemizedlist> - <para>É importante ressaltar que a palavra de origem - inglesa <quote>free</quote> em português pode ser - traduzida como <quote>livre</quote> e - <quote>gratuito</quote>. Além disso, a palavra - <quote>free</quote> está sendo usada aqui com dois - significados: <quote>sem custo</quote> e <quote>você - pode fazer o que quiser</quote>. <quote>Free</quote> no - nome do sistema operacional remete aos dois significados - da palavra. O sistema pode ser utilizado <quote>sem - nenhum custo</quote>, e pode ser utilizado <quote>da - forma que você quiser</quote>. Exceto por algumas - poucas coisinhas que você não pode fazer com - o FreeBSD (por exemplo, fingir que foi você quem o - escreveu), você pode realmente fazer o que bem - entender com o sistema.</para> + <para>Vale ressaltar que a palavra <quote>free</quote> está sendo usada de duas formas aqui: uma que significa <quote>sem custo</quote> (grátis) e a outra que significa <quote>faça o que quiser</quote> (Livre). Fora uma ou duas coisas que você <emphasis>não pode</emphasis> fazer com o código do FreeBSD, por exemplo, fingir que você o escreveu, você pode realmente fazer o que quiser com ele.</para> + </answer> + </qandaentry> + + <qandaentry> + <question xml:id="differences-to-other-bsds"> + <para>Quais são as diferenças entre o FreeBSD, o NetBSD, o OpenBSD e os outros sistemas operacionais BSD de código aberto?</para> + </question> + + <answer> + <para>O James Howard escreveu uma boa explicação da história e das diferenças entre os vários projetos BSD, chamada <link xlink:href="https://jameshoward.us/archive/the-bsd-family-tree/">A árvore genealógica do BSD</link>, a qual é uma boa forma de responder a esta pergunta. Algumas das informações estão desatualizadas, mas a parte da história em particular permanece precisa.</para> + + <para>A maioria dos BSDs compartilha patches e códigos, até hoje. Todos os BSDs descendem dos mesmos ancestrais.</para> + + <para>Os objetivos de design do FreeBSD estão descritos em <xref linkend="FreeBSD-goals"/>, acima. Os objetivos de design dos outros BSDs mais populares podem ser resumidos da seguinte forma:</para> + + <itemizedlist> + <listitem> + <para>O OpenBSD visa a segurança do sistema operacional acima de tudo. A equipe do OpenBSD escreveu o <citerefentry><refentrytitle>ssh</refentrytitle><manvolnum>1</manvolnum></citerefentry> e o <citerefentry><refentrytitle>pf</refentrytitle><manvolnum>4</manvolnum></citerefentry>, os quais foram portados para o FreeBSD.</para> + </listitem> + + <listitem> + <para>O NetBSD pretende ser facilmente portado para outras plataformas de hardware.</para> + </listitem> + + <listitem> + <para>O DragonFly BSD é um fork do FreeBSD 4.8 o qual desenvolveu muitas caracterÃsticas interessantes ao longo dos anos, incluindo o sistema de arquivos HAMMER e o suporte para <quote>vkernels</quote> no modo de usuário.</para> + </listitem> + </itemizedlist> </answer> </qandaentry> <qandaentry> <question xml:id="latest-version"> - <para>Qual a versão mais recente do FreeBSD?</para> + <para>Qual é a última versão do FreeBSD?</para> </question> <answer> - <para>A versão <link xlink:href="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/&rel.current;-RELEASE/">&rel.current;</link> - é a versão <emphasis>RELEASE</emphasis> mais - recente; lançada em &rel.current.date;. Esta - também é a versão - <emphasis>STABLE</emphasis> mais recente.</para> + <para>A qualquer momento no desenvolvimento do FreeBSD, podem existir vários branches paralelos. As releases 11.<replaceable>X</replaceable> são geradas a partir da branch <emphasis>11-STABLE</emphasis> e as releases 10.<replaceable>X</replaceable> são geradas a partir do branch <emphasis>10-STABLE</emphasis>.</para> + + <para>Até o lançamento da versão 9.0, a série 10.<replaceable>X</replaceable> era a conhecida como <emphasis>-STABLE</emphasis>. No entanto, a partir da 12.<replaceable>X</replaceable>, a branch 10.<replaceable>X</replaceable> será designada para um status de <quote>suporte estendido</quote> e passará a receber apenas correções para problemas maiores, como as correções relacionadas à segurança.</para> - <para>Resumidamente, <emphasis>-STABLE</emphasis> é a - série voltada para Provedores de Serviço de - Internet, usuários corporativos, ou qualquer - usuário que deseje estabilidade e um número - mínimo de alterações e novas - características adotadas do - <foreignphrase>snapshot</foreignphrase> - <emphasis>-CURRENT</emphasis>. Lançamentos podem - vir de qualquer um dos ramos de desenvolvimento; a - série <emphasis>-CURRENT</emphasis>, todavia, - deveria ser utilizada apenas por usuários - preparados para um ambiente em constante - modificação, instável em muitas de - suas características e extremamente sem garantias - (ao menos, quando comparado ao - <emphasis>-STABLE</emphasis>).</para> + <para>A versão <link xlink:href="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/i386/11.2-RELEASE/">11.2</link> é a última release da branch <emphasis>11-STABLE</emphasis>; ela foi lançada em junho de 2018. A versão <link xlink:href="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/10.4-RELEASE/">10.4</link> é a release mais recente da branch <emphasis>10-STABLE</emphasis>; e foi lançada em outubro de 2017.</para> - <para>Lançamentos são realizados <link linkend="release-freq">de alguns em alguns meses</link>. - Muitos usuários mantém o código fonte - de seus sistemas em mais sincronia com a árvore de - desenvolvimento do FreeBSD (veja as perguntas sobre <link linkend="current">FreeBSD-CURRENT</link> e <link linkend="stable">FreeBSD-STABLE</link>) que isto, fazer - isto é uma demonstração de interesse - e compromisso visto que o código fonte sofre - constantes modificações.</para> + <para>As releases são liberadas a <link linkend="release-freq">cada poucos meses</link>. Embora muitas pessoas se mantenham mais que isso por meio do código fonte do FreeBSD (veja as perguntas em <link linkend="current">FreeBSD-CURRENT</link> e <link linkend="stable">FreeBSD-STABLE</link> ), esta periodicidade está mais para um compromisso, já que o código fonte é um alvo em movimento.</para> + + <para>Mais informações sobre as releases do FreeBSD podem ser encontradas na <link xlink:href="https://www.FreeBSD.org/releng/index.html#release-build">página de Engenharia de Releases</link> e em <citerefentry><refentrytitle>release</refentrytitle><manvolnum>7</manvolnum></citerefentry>.</para> </answer> </qandaentry> <qandaentry> <question xml:id="current"> - <para>O que é FreeBSD-CURRENT?</para> - </question> - - <answer> - <para><link xlink:href="../handbook/cutting-edge.html#CURRENT">FreeBSD-CURRENT</link> - é a versão de desenvolvimento do sistema - operacional, que brevemente se tornará a - série 5.0-<literal>RELEASE</literal>. Exatamente - por ser uma série de desenvolvimento, e portanto - sem garantias de estabilidade, o uso desse sistema - operacional é de interesse exclusivo de - desenvolvedores que trabalham no sistema, usuários - extremamente experientes que acompanham e analisam - (testam) o novo sistema ou daqueles que o fazem por - <foreignphrase>hobby</foreignphrase>. Veja a <link xlink:href="../handbook/cutting-edge.html#CURRENT">seção - relevante</link> no <link xlink:href="../handbook/index.html">&a.ptbr.p.handbook;</link>.</para> - - <para>Se você não tem familiaridade com o - sistema operacional, não é um usuário - experiente ou não consegue distinguir a - diferença entre um problema de verdade e um - problema temporário, então é - desaconselhável que você use o - FreeBSD-CURRENT. Essa série, as vezes, evolui de - forma extremamente rápida, e pode se tornar - extremamente instável e subutilizável por - vários dias seguidos. Usuários do - FreeBSD-CURRENT devem ser capazes de analisar qualquer - problema no sistema, e apenas relatar a falha se o - problema tratar-se de um erro ou um engano no - desenvolvimento do mesmo ao invés de - <quote>pequenos problemas temporários de - instabilidade - (<foreignphrase>glitches</foreignphrase>)</quote>. - Perguntas sobre o porquê de <quote>make world - produzir erros a respeito de grupos</quote> são - devidamente ignoradas ou escrachadas na lista de - discussão da série -CURRENT.</para> - - <para>Diariamente, <link xlink:href="../../../../releases/snapshots.html"><foreignphrase>snapshots</foreignphrase></link> - são lançados baseados no estado atual de - desenvolvimento dos ramos -CURRENT e -STABLE. Atualmente, - distribuições ocasionais de - <foreignphrase>snapshots</foreignphrase> estão - sendo disponibilizadas. Os objetivos por trás do - lançamento de cada - <foreignphrase>snapshot</foreignphrase> são:</para> + <para>O que é o <emphasis>FreeBSD-CURRENT</emphasis>?</para> + </question> + + <answer> + <para>O <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/current-stable.html#current">FreeBSD-CURRENT</link> é a versão de desenvolvimento do sistema operacional, que no devido tempo se tornará o novo branch FreeBSD-STABLE. Como tal, ele é recomendado apenas para os desenvolvedores que trabalham no sistema e usuários amadores obstinados. Consulte a <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/current-stable.html#current">seção relevante</link> no <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/index.html">Handbook</link> para detalhes sobre como executar o <emphasis>-CURRENT</emphasis>.</para> + + <para>Usuários não familiarizados com o FreeBSD não devem usar o FreeBSD-CURRENT. Este branch à s vezes evolui muito rapidamente e, devido a um erro, pode ser difÃcil de compilá-lo à s vezes. Espera-se que as pessoas que usam o FreeBSD-CURRENT possam analisar, depurar e reportar problemas.</para> + + <para>As <link xlink:href="@@URL_RELPREFIX@@/snapshots/">snapshot</link> releases do FreeBSD são disponibilizadas com base no estado atual das branchs <emphasis>-CURRENT</emphasis> e <emphasis>-STABLE</emphasis>. Os objetivos por trás de cada release de snapshot são:</para> <itemizedlist> <listitem> - <para>Testar a versão mais recente do programa de - instalação.</para> + <para>Testar a versão mais recente do software de instalação.</para> </listitem> <listitem> - <para>Dar a oportunidade para aqueles que querem usar o - -CURRENT ou o -STABLE - mas não tem tempo ou - não tem uma conexão Internet - rápida o suficiente para estarem diariamente - sincronizados com a versão mais atualizada do - código no projeto.</para> + <para>Para que as pessoas que gostariam de executar o <emphasis>-CURRENT</emphasis> ou o <emphasis>-STABLE</emphasis> mas que não têm tempo ou largura de banda para acompanhá-lo no dia-a-dia tenham uma maneira fácil de instalá-las em seus sistemas.</para> </listitem> <listitem> - <para>Manter um ponto de referência fixo, em - relação ao código em - desenvolvimento e o código disponível - até então, para o caso de nós - seriamente <quote>quebrarmos</quote> alguma coisa. - (Embora CVS normalmente previna que desastres - horríveis como este aconteçam :)</para> + <para>Para preservar um ponto de referência fixo para o código em questão, apenas no caso de quebrarmos algo de forma muito seria depois. (Embora o Subversion normalmente previna que uma coisa horrÃvel como esta ocorra).</para> </listitem> <listitem> - <para>Garantir que todas as novas características - e funções do sistema que precisem ser - testadas, tenham o maior número possível - de pessoas potencialmente testando-as.</para> + <para>Para garantir que todos os novos recursos e correções que precisam de testes tenham contato o maior número possÃvel de testadores em potencial.</para> </listitem> </itemizedlist> - <para>Sob nenhuma circunstância, nenhum - <foreignphrase>snapshot</foreignphrase> -CURRENT pode ser - considerado software de <quote>qualidade de - produção</quote> para qualquer que seja o - propósito, e por mais maduro que o código - -CURRENT atual possa parecer. Se a intenção - é usar um sistema estável e completamente - testado, você deverá usar apenas - lançamentos, ou - <foreignphrase>snapshots</foreignphrase> do ramo - -STABLE.</para> + <para>Não temos a pretensão de que qualquer snapshot <emphasis>-CURRENT</emphasis> possa ser considerado com <quote>qualidade de produção</quote> para qualquer finalidade. Se você necessita de um sistema estável e totalmente testado, limite-se ao uso das releases completas.</para> - <para>Os <foreignphrase>snapshots</foreignphrase> - lançados podem ser diretamente acessados em <link xlink:href="ftp://current.FreeBSD.org/pub/FreeBSD/"> - ftp://current.FreeBSD.org/pub/FreeBSD/</link> para a - série 5.0-CURRENT e em <link xlink:href="ftp://releng4.FreeBSD.org/pub/FreeBSD"> - releng4.FreeBSD.org</link> para - <foreignphrase>snapshots</foreignphrase> da série - 4-STABLE. <foreignphrase>Snapshots</foreignphrase> para a - série 3-STABLE não estão sendo - produzidos na data em que este documento foi escrito (Maio - de 2000).</para> + <para>As snapshots releases estão disponÃveis em <link xlink:href="@@URL_RELPREFIX@@/snapshots/">snapshot</link>.</para> - <para>Normalmente, os snapshots são gerados uma vez - ao dia, para todas as séries em desenvolvimento - ativo.</para> + <para>Os snapshots oficiais são gerados regularmente para todas as branchs ativamente desenvolvidas.</para> </answer> </qandaentry> <qandaentry> <question xml:id="stable"> - <para>Qual o conceito por trás do - FreeBSD-STABLE?</para> - </question> - - <answer> - <para>Nos primórdios do projeto quando o FreeBSD - 2.0.5 foi lançado, a árvore de - desenvolvimento do sistema foi dividida em dois ramos. Um - ramo foi chamado <link xlink:href="../handbook/current-stable.html#STABLE">-STABLE</link> - e o outro <link xlink:href="../handbook/current-stable.html#CURRENT">-CURRENT</link>. - O FreeBSD-STABLE é direcionado para Provedores de - Serviços de Internet e para outros empreendimentos - comerciais que não pretendem conviver com - mudanças bruscas ou testar novas - características experimentais do sistema. Ele - recebe apenas código que tenha sido totalmente - testado, correções de problemas e outras - pequenas inovações incrementais. O - FreeBSD-CURRENT, por outro lado, tem sido uma linha sem - interrupções visando ao 5.0-RELEASE (e - além) desde o lançamento 2.0. Se uma - pequena ilustração em arte ASCII ajudasse, - isto seria o que pareceria:</para> - - - <programlisting> 2.0 - | - | - | [2.1-STABLE] - *BRANCH* 2.0.5 -> 2.1 -> 2.1.5 -> 2.1.6 -> 2.1.7.1 [2.1-STABLE termina] - | (Mar 1997) - | - | - | [2.2-STABLE] - *BRANCH* 2.2.1 -> 2.2.2-RELEASE -> 2.2.5 -> 2.2.6 -> 2.2.7 -> 2.2.8 [fim] - | (Mar 1997) (Out 97) (Abr 98) (Jul 98) (Dez 98) - | - | - 3.0-SNAPs (inicio Q1 1997) - | - | - 3.0-RELEASE (Out 1998) - | - | [3.0-STABLE] - *BRANCH* 3.1-RELEASE (Fev 1999) -> 3.2 -> 3.3 -> 3.4 -> 3.5 -> 3.5.1 - | (Mai 1999) (Set 1999) (Dez 1999) (Jun 2000) (Jul 2000) - | - | [4.0-STABLE] - *BRANCH* 4.0 (Mar 2000) -> 4.1 -> 4.1.1 -> 4.2 -> 4.3 -> 4.4 -> ... Lançamentos 4.x futuro ... - | - | (Jul 2000) (Set 2000) (Nov 2000) - \|/ - + - [5.0-CURRENT continua]</programlisting> - - - <para>O ramo 2.2-STABLE saiu de produção com o - lançamento 2.2.8. O ramo 3-STABLE saiu de - produção com o lançamento 3.5.1, que - foi também o último -RELEASE 3.X. As - únicas modificações ainda realizadas - em quaisquer destes ramos são praticamente - relacionados apenas à correções de - segurança.</para> - - <para>O 4-STABLE é o ramo -STABLE em desenvolvimento - ativo. A versão mais recente da série - 4-STABLE é &rel.current;-RELEASE, lançada em - &rel.current.date;.</para> - - <para>O ramo 5-CURRENT está lentamente progredindo - para o que se tornará o FreeBSD 5.0-RELEASE e - além. Veja <link linkend="current">O que é - FreeBSD-CURRENT?</link> para obter mais - informações sobre este ramo.</para> + <para>Qual é o conceito do <emphasis>FreeBSD-STABLE</emphasis>?</para> + </question> + + <answer> + <para>De volta quando o FreeBSD 2.0.5 foi lançado, o desenvolvimento do FreeBSD se ramificou em dois. Um ramo (branch) foi nomeado <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/current-stable.html#stable">-STABLE</link>, um <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/current-stable.html#current">-CURRENT</link>. O <emphasis>FreeBSD-STABLE</emphasis> é o branch de desenvolvimento a partir do qual os releases principais são feitos. Mudanças entram nesta branch em um ritmo mais lento e com a suposição geral de que eles foram testados primeiro no FreeBSD-CURRENT. No entanto, a qualquer momento, o código fonte para o FreeBSD-STABLE pode ou não ser adequado para uso geral, devido a descoberta de bugs e/ou outros casos especÃficos que ainda não foram encontrados no FreeBSD-CURRENT. Usuários que não possuem recursos para realizar testes devem, ao invés disso, executar a release mais recente do FreeBSD. O <emphasis>FreeBSD-CURRENT</emphasis>, por outro lado, tem sido uma linha continua desde que o 2.0 foi lançado, levando em direção ao 11.2-RELEASE e além. Para obter informações mais detalhadas sobre branchs, consulte <quote><link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/articles/releng/release-proc.html#rel-branch">Engenharia de Releases do FreeBSD: Criando uma Release Branch</link></quote>, o status dos branches e o cronograma para releases futuros podem ser encontrados na página de informações da <link xlink:href="https://www.FreeBSD.org/releng">Engenharia de Release</link>.</para> + + <para>A 11.2-STABLE é a branch <emphasis>-STABLE</emphasis> desenvolvida ativamente. O último release na branch 11.2-STABLE é a 11.2-RELEASE, lançado em junho de 2018.</para> + + <para>O <emphasis>12-CURRENT</emphasis> é a branch <emphasis>-CURRENT</emphasis> desenvolvida ativamente para a próxima geração do FreeBSD. Veja <link linkend="current">O que é o FreeBSD-CURRENT?</link> para mais informações sobre esta branch.</para> </answer> </qandaentry> <qandaentry> <question xml:id="release-freq"> - <para>Quando são realizados lançamentos - FreeBSD?</para> + <para>Quando são realizados os lançamentos de novas versões do FreeBSD?</para> </question> <answer> - <para>O &a.re; lança uma nova versão do - FreeBSD, em média, a cada 4 meses. As datas de - lançamento são anunciadas com uma certa - antecedência, de forma que os desenvolvedores - trabalhando no sistema saibam quando seus projetos - precisam estar terminados e testados. Um período - de testes antecede cada novo lançamento, de forma a - garantir que a adição de novas - características não comprometa a - estabilidade do lançamento. Muitos usuários - consideram tais precauções uma das - principais vantagens do projeto FreeBSD, mesmo admitindo - que, as vezes, esperar que as novidades sejam adotadas - pelo ramo -STABLE possa ser um pouco frustante.</para> + <para>A Equipe de Engenharia de Releases (Release Engineering Team) <email>re@FreeBSD.org</email> lança uma nova versão principal do FreeBSD a cada 18 meses e uma nova versão secundária a cada 8 meses, em média. As datas de lançamento são anunciadas com bastante antecedência, para que as pessoas que trabalham no sistema saibam quando seus projetos precisam ser finalizados e testados. Um perÃodo de teste precede cada lançamento, para garantir que a adição de novos recursos não comprometa a estabilidade do lançamento. Muitos usuários consideram este cuidado como uma das melhores coisas do FreeBSD, apesar de que a espera para que todas as novidades mais recentes sejam disponibilizadas no <emphasis>-STABLE</emphasis> possa ser um pouco frustrante.</para> - <para>Mais informações sobre o processo de - engenharia de lançamento (incluindo a - programação de novos lançamentos) - podem ser obtidas nas páginas de <link xlink:href="http://www.FreeBSD.org/releng/index.html">engenharia - de lançamento</link> no sítio WWW do - FreeBSD.</para> + <para>Maiores informações sobre o processo de engenharia de releases (incluindo a programação das releases futuros) podem ser encontradas na página <link xlink:href="https://www.FreeBSD.org/releng/index.html">engenharia de release</link> no site do FreeBSD.</para> - <para>Para as pessoas que precisam, ou desejam um pouco mais - de emoção, - <foreignphrase>snapshots</foreignphrase> binários - são feitos diariamente como discutido acima.</para> + <para>Para aquelas pessoas que precisam ou querem um pouco mais de emoção, os snapshots binários são disponibilizados semanalmente, como discutido acima.</para> </answer> </qandaentry> <qandaentry> <question xml:id="responsible"> - <para>Quem é responsável pelo FreeBSD?</para> + <para>Quem é responsável pelo FreeBSD?</para> </question> <answer> - <para>As principais decisões relacionadas ao Projeto - FreeBSD, como os objetivos e direção geral - do projeto, e quem tem permissão para adicionar - código à árvore de código, - são tomadas por um <link xlink:href="../../articles/contributors/article.html#STAFF-CORE">grupo - central (<literal>core team</literal>)</link> composto - de 9 pessoas. Existe um grupo muito maior, composto de - mais de 200 desenvolvedores, denominados <link xlink:href="../../articles/contributors/article.html#STAFF-COMMITTERS"><foreignphrase>committers</foreignphrase></link>, - que tem autorização para fazer - alterações diretamente na árvore de - código do FreeBSD.</para> + <para>As principais decisões relativas ao projeto FreeBSD, tais como a direção geral do projeto e quem tem permissão para adicionar código ao repositório de código fonte, são feitas por meio de um <link xlink:href="@@URL_RELPREFIX@@/administration.html#t-core">core team</link> de 9 pessoas. Existe uma equipe muito maior, com mais de 350 <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/articles/contributors/article.html#staff-committers">committers</link> que estão autorizados a fazer alterações diretamente na árvore de fontes do FreeBSD.</para> - <para>Entretanto, a maioria das alterações - não triviais são previamente discutidas nas - <link linkend="mailing"> listas de - discussões</link>, e não existe - restrição quanto a quem pode participar das - discussões.</para> + <para>No entanto, a maioria das alterações não-triviais é discutida com antecedência nas <link linkend="mailing">listas de discussão</link>, e não há restrições sobre quem pode participar da discussão.</para> </answer> </qandaentry> @@ -603,176 +296,77 @@ </question> <answer> - <para>Todo lançamento significativo do FreeBSD - está disponível via FTP anônimo no - <link xlink:href="ftp://ftp.FreeBSD.org/pub/FreeBSD/">sítio - FTP do Projeto FreeBSD</link>:</para> + <para xml:lang="en">Every significant release of FreeBSD is available via + anonymous FTP from the <link xlink:href="ftp://ftp.FreeBSD.org/pub/FreeBSD/">FreeBSD + FTP site</link>:</para> <itemizedlist> <listitem> - <para>Para obter o lançamento 3.X-STABLE - corrente, 3.5.1-RELEASE, veja <link xlink:href="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/3.5.1-RELEASE/">diretório - 3.5.1-RELEASE</link>.</para> - </listitem> - - <listitem> - <para>O lançamento 4-STABLE corrente, - &rel.current;-RELEASE pode ser encontrado no <link xlink:href="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/&rel.current;-RELEASE/">diretório - &rel.current;-RELEASE</link>.</para> + <para>O último release da série <emphasis>11-STABLE</emphasis>, o 11.2-RELEASE, pode ser encontrado no <link xlink:href="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/i386/11.2-RELEASE/">diretório 11.2-RELEASE</link>.</para> </listitem> <listitem> - <para><link xlink:href="ftp://releng4.FreeBSD.org/pub/FreeBSD/"><foreignphrase>Snapshots</foreignphrase> - 4.X</link> são normalmente criados uma vez - ao dia.</para> + <para>Mensalmente são produzidos <link xlink:href="@@URL_RELPREFIX@@/snapshots/">snapshot</link> releases para as branchs <link linkend="current">-CURRENT</link> e <link linkend="stable">-STABLE</link>, as quais destinam-se primariamente ao uso por parte dos desenvolvedores e testadores.</para> </listitem> <listitem> - <para>Lançamentos <link xlink:href="ftp://current.FreeBSD.org/pub/FreeBSD/"><foreignphrase>Snapshot</foreignphrase> - 5.0</link> são feitos uma vez ao dia no ramo - <link linkend="current">-CURRENT</link>, útil - apenas tanto para aqueles que gostam de viver no - limite quanto para aqueles que precisam usar a - versão mais recente possível com todas - as últimas características; sejam pessoas - conduzindo testes ou desenvolvedores.</para> + <para>O último release da série <emphasis>10-STABLE</emphasis>, o 10.4-RELEASE, pode ser encontrado no <link xlink:href="ftp://ftp.FreeBSD.org/pub/FreeBSD/releases/i386/10.4-RELEASE/">diretório 10.4-RELEASE</link>.</para> </listitem> </itemizedlist> - <para>Informação sobre como obter o FreeBSD em - CD, DVD, e outras mídias, pode ser encontrada no - <link xlink:href="../handbook/mirrors.html">&a.ptbr.p.handbook;</link>.</para> + <para>Informações sobre como obter o FreeBSD em CD, DVD e outras mÃdias podem ser encontradas no <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/mirrors.html">Handbook</link>.</para> </answer> </qandaentry> <qandaentry> <question xml:id="access-pr"> - <para>Como eu acesso o banco de dados de Relatórios - de Problemas?</para> - </question> - - <answer> - <para>A base de dados de Relatórios de Problemas - é um banco de pedidos de alterações - realizados pelos usuários. Todos os pedidos de - alteração já realizados podem ser - consultados (ou novos submetidos) através de - nossas interfaces PR WWW para <link xlink:href="http://www.FreeBSD.org/send-pr.html">submeter - (novos pedidos)</link> e <link xlink:href="http://www.FreeBSD.org/cgi/query-pr-summary.cgi?query">consultar - (já submetidos)</link>. - O comando &man.send-pr.1; também pode ser usado - para submeter relatórios de problema e pedidos - de alteração por meio de correio - eletrônico.</para> - - <para>Antes de enviar um relatório de problema, por - favor, leia o artigo <link xlink:href="../../articles/problem-reports/article.html">Escrevendo - Relatórios de Problemas para o FreeBSD</link>, - que dá boas dicas de como escrever um bom - relatório de problema.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="become-web-mirror"> - <para>Como eu me torno um espelho do sítio WWW - FreeBSD?</para> + <para>Como acesso o banco de dados dos Relatórios de Problemas?</para> </question> <answer> - <para>Existam várias formas de espelhar o - sítio WWW do FreeBSD.</para> + <para>O banco de dados com os Relatórios de Problemas contendo todas as solicitações de mudança enviadas pelos nossos usuários pode ser consultado usando nossa interface web de <link xlink:href="https://bugs.FreeBSD.org/search/">consulta</link> de PRs.</para> - <itemizedlist> - <listitem> - <para>Você pode obter os arquivos já - formatados a partir de um servidor CVSup FreeBSD - usando o aplicativo <package>net/cvsup</package>. O arquivo - <filename>/usr/share/examples/cvsup/www-supfile</filename> - oferece um exemplo de configuração do - CVSup para espelhar o servidor WWW do projeto - FreeBSD.</para> - </listitem> - - <listitem> - <para>Você pode obter o código fonte do - sítio WWW do projeto FreeBSD a partir de - qualquer servidor FTP do projeto usando sua ferramento - de espelhamento ftp favorita. Considere que estes - fontes devem ser processados para publicá-los - em formato WWW tradicional. Você pode - começar a espelhar o projeto a partir de <link xlink:href="ftp://ftp.FreeBSD.org/pub/FreeBSD/FreeBSD-current/www">ftp://ftp.FreeBSD.org/pub/FreeBSD/FreeBSD-current/www</link>.</para> - </listitem> - </itemizedlist> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="other-info-sources"> - <para>Que outras fontes de informações sobre o - FreeBSD existem?</para> - </question> + <para>A <link xlink:href="@@URL_RELPREFIX@@/support/bugreports.html">interface web de envio de relatórios de problemas</link> pode ser usada para enviar relatórios de problemas através de um navegador.</para> - <answer> - <para>Por gentileza, queira verificar a lista de <link xlink:href="http://www.FreeBSD.org/docs.html">Documentação</link> - no sítio WWW principal <link xlink:href="http://www.FreeBSD.org">FreeBSD</link>.</para> + <para>Antes de enviar um relatório de problema, leia <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/articles/problem-reports/article.html">Escrevendo Relatórios de Problemas do FreeBSD</link>, um artigo sobre como escrever bons relatórios de problemas.</para> </answer> </qandaentry> </qandaset> </chapter> <chapter xml:id="support"> - <title>Documentação e Suporte</title> + <title>Documentação e Suporte</title> <qandaset> <qandaentry> <question xml:id="books"> - <para>Quais bons livros existem sobre FreeBSD?</para> + <para>Quais os livros existentes sobre o FreeBSD?</para> </question> <answer> - <para>O projeto FreeBSD produz um grande número de - documentos disponíveis em <link xlink:href="http://www.freebsd.org/docs.html">http://www.FreeBSD.org/docs.html</link>. - Além destes, outros livros recomendados são - referenciados nas Bibliografias disponíveis ao - final deste <literal>FAQ</literal> e do - &a.ptbr.p.handbook;.</para> + <para>O projeto produz uma ampla gama de documentação, disponÃvel on-line a partir deste link: <uri xlink:href="https://www.FreeBSD.org/docs.html">https://www.FreeBSD.org/docs.html</uri>. Além disso, a <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/bibliography.html">referência bibliográfica no Handbook</link> referencia outros livros recomendados.</para> </answer> </qandaentry> <qandaentry> <question xml:id="doc-formats"> - <para>A documentação está - disponível em outros formatos, como texto puro - (ASCII) ou Postscript?</para> + <para>A documentação está disponÃvel em outros formatos, tais como texto simples (ASCII) ou <trademark class="registered">PostScript</trademark>?</para> </question> <answer> - <para>Claro. A documentação pode ser obtida - em uma variedade de formatos e opções de - compressão no servidor FTP do FreeBSD, sob o - diretório <link xlink:href="ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/">/pub/FreeBSD/doc/</link>.</para> + <para>Sim. A documentação está disponÃvel em vários formatos diferentes e esquemas de compressão no site FTP do FreeBSD, no diretório <link xlink:href="https://download.freebsd.org/ftp/doc/">/pub/FreeBSD/doc/</link>.</para> - <para>A documentação é organizada em - diversas categorias, como:</para> + <para>A documentação é categorizada de várias maneiras diferentes. Que incluem:</para> <itemizedlist> <listitem> - <para>O nome do documento, como <literal>faq</literal> - ou <literal>&a.ptbr.p.handbook;</literal>.</para> + <para>O nome do documento, tais como como <literal>faq</literal> ou <literal>handbook</literal>.</para> </listitem> <listitem> - <para>A codificação e língua do - conteúdo do documento. Tal - categorização é baseada nos nomes - de localização, que podem ser - encontrados sob <filename>/usr/share/locale</filename> - no seu FreeBSD. Atualmente existem documentos nas - seguintes línguas e - codificações:</para> - - <informaltable frame="none"> + <para>A linguagem e codificação do documento. Estes são baseados nos nomes de local encontrados sob o diretório <filename>/usr/share/locale</filename> em um sistema FreeBSD. Os idiomas e codificações atuais são os seguintes:</para> + + <informaltable frame="none" pgwide="1"> <tgroup cols="2"> <thead> <row> @@ -783,77 +377,132 @@ </thead> <tbody> - <row> <entry><literal>en_US.ISO8859-1</literal></entry> - <entry>Inglês Americano</entry> + <entry>Inglês (Estados Unidos)</entry> + </row> + + <row> + <entry><literal>bn_BD.ISO10646-1</literal></entry> + + <entry>Bengali ou Bangla (Bangladesh)</entry> + </row> + + <row> + <entry><literal>da_DK.ISO8859-1</literal></entry> + + <entry>Dinamarquês (Dinamarca)</entry> </row> <row> <entry><literal>de_DE.ISO8859-1</literal></entry> - <entry>Alemão</entry> + <entry>Alemão (Alemanha)</entry> </row> <row> - <entry><literal>es_ES.ISO8859-1</literal></entry> + <entry><literal>el_GR.ISO8859-7</literal></entry> - <entry>Espanhol</entry> + <entry>Grego (Grécia)</entry> </row> + <row> + <entry><literal>es_ES.ISO8859-1</literal></entry> + + <entry>Espanhol (Espanha)</entry> + </row> <row> <entry><literal>fr_FR.ISO8859-1</literal></entry> - <entry>Francês</entry> + <entry>Francês (França)</entry> + </row> + + <row> + <entry><literal>hu_HU.ISO8859-2</literal></entry> + + <entry>Húngaro (Hungria)</entry> + </row> + + <row> + <entry><literal>it_IT.ISO8859-15</literal></entry> + + <entry>Italiano (Itália)</entry> </row> <row> <entry><literal>ja_JP.eucJP</literal></entry> - <entry>Japonês (codificação - EUC)</entry> + <entry>Japonês (Japão, codificação EUC)</entry> + </row> + + <row> + <entry><literal>ko_KR.UTF-8</literal></entry> + + <entry>Coreano (Coreia, codificação UTF-8)</entry> + </row> + + <row> + <entry><literal>mn_MN.UTF-8</literal></entry> + + <entry>Mongol (Mongólia, codificação UTF-8)</entry> + </row> + + <row> + <entry><literal>nl_NL.ISO8859-1</literal></entry> + + <entry>Holandês (Holanda)</entry> + </row> + + <row> + <entry><literal>pl_PL.ISO8859-2</literal></entry> + + <entry>Polonês (Polônia)</entry> + </row> + + <row> + <entry><literal>pt_BR.ISO8859-1</literal></entry> + + <entry>Português (Brasil)</entry> </row> <row> <entry><literal>ru_RU.KOI8-R</literal></entry> - <entry>Russo (codificação - KOI8-R)</entry> + <entry>Russo (Rússia, codificação KOI8-R)</entry> + </row> + + <row> + <entry><literal>tr_TR.ISO8859-9</literal></entry> + + <entry>Turco (Turquia)</entry> + </row> + + <row> + <entry><literal>zh_CN.UTF-8</literal></entry> + + <entry>Chinês Simplificado (China, codificação UTF-8)</entry> </row> + <row> - <entry><literal>zh_TW.Big5</literal></entry> + <entry><literal>zh_TW.UTF-8</literal></entry> - <entry>Chinês (codificação - Big5)</entry> + <entry>Chinês Tradicional (Taiwan, codificação UTF-8)</entry> </row> </tbody> </tgroup> </informaltable> <note> - <para>Alguns documentos podem não estar - disponíveis em todas as - línguas.</para> + <para>Alguns documentos podem não estar disponÃveis em todos os idiomas.</para> </note> </listitem> <listitem> - <para>Formato da documentação. A - documentação é produzida em - vários formatos. Cada qual com suas vantagens - e desvantagens. Alguns formatos são mais - apropriados para leitura on-line, enquanto outros - são mais agradéveis estéticamente - em formato impresso. Disponibilizar a - documentação em todos estes formatos, - garante que os leitores poderão sempre ler os - trechos de seu interesse, tanto no monitor do seu - computador quanto em papel impresso. Atualmente os - formatos disponíveis são:</para> - - <informaltable frame="none"> + <para>O formato do documento. Produzimos a documentação em vários formatos de saÃda diferentes. Cada formato tem suas próprias vantagens e desvantagens. Alguns formatos são mais adequados para leitura on-line, enquanto outros estão formatados para serem,esteticamente agradáveis ​​quando impressos em papel. A disponibilização da documentação em diversos formatos garante que os nossos leitores possam ler as partes nas quais estão interessados, seja em seu monitor ou em papel após imprimi-los documentos. Os formatos disponÃveis atualmente são:</para> + + <informaltable frame="none" pgwide="1"> <tgroup cols="2"> <thead> <row> @@ -867,1825 +516,360 @@ <row> <entry><literal>html-split</literal></entry> - <entry>Uma série de pequenos documentos - HTML, devidamente ligados.</entry> + <entry>Uma coleção de pequenos arquivos HTML vinculados.</entry> </row> <row> <entry><literal>html</literal></entry> - <entry>Um único grande arquivo HTML - contendo todo o documento.</entry> - </row> - - <row> - <entry><literal>pdb</literal></entry> - - <entry>Formato de banco de dados pra Palm Pilot, - para ser usado com o visualizador <link xlink:href="http://www.iSilo.com/">iSilo</link>.</entry> + <entry>Um grande arquivo HTML contendo o documento inteiro</entry> </row> <row> <entry><literal>pdf</literal></entry> - <entry>PDF (Formato de Documento - Portável) da Adobe</entry> + <entry>Formato de documento portátil da Adobe</entry> </row> <row> <entry><literal>ps</literal></entry> - <entry>Postscript</entry> + <entry><trademark class="registered">PostScript</trademark></entry> </row> <row> <entry><literal>rtf</literal></entry> - <entry>RTF (Formato de Texto Enriquecido) da - Microsoft<footnote> - <para>A númeração de - página não é - automaticamente atualizada quando este - tipo de arquivo é aberto no Word. - Digite <keycombo action="simul"><keycap>CTRL</keycap><keycap>A</keycap></keycombo>, - <keycombo action="simul"><keycap>CTRL</keycap><keycap>END</keycap></keycombo>, - <keycap>F9</keycap> depois de abrir o - documento no Word, para atualizar a - numeração das - páginas.</para> - </footnote> - </entry> + <entry><trademark class="registered">Rich Text Format da Microsoft</trademark></entry> </row> <row> <entry><literal>txt</literal></entry> - <entry>Texto puro</entry> + <entry>Texto simples</entry> </row> </tbody> </tgroup> </informaltable> + + <note> + <para>Números de página não são atualizados automaticamente ao carregar o formato Rich Text no Word. Pressione <keycombo action="simul"> <keycap>Ctrl</keycap><keycap>A</keycap></keycombo>, <keycombo action="simul"><keycap>Ctrl</keycap><keycap>End</keycap> </keycombo>, <keycap>F9</keycap> após carregar o documento, para atualizar os números das páginas.</para> + </note> </listitem> <listitem> - <para>As técnicas de compressão e - empacotamento dos arquivos. Atualmente, 3 destes - formatos estão em uso:</para> + <para>O esquema de compactação e empacotamento.</para> <orderedlist> <listitem> - <para>Para o formato <literal>html-split</literal>, - os arquivos são todos empacotados com - &man.tar.1;. O resultado é um arquivo - <literal>.tar</literal> que é - posteriormente comprimido usando as - técnicas de compressão detalhadas a - seguir.</para> + <para xml:lang="en">Where the format is + <literal>html-split</literal>, the files are + bundled up using <citerefentry><refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum></citerefentry>. The resulting + <filename>.tar</filename> is then compressed + using the compression schemes detailed in the next + point.</para> </listitem> <listitem> - <para>Todos os outros formatos geram apenas um - arquivo, nomeado - <filename>book.formato</filename> - (por exemplo, <filename>book.pdb</filename>, - <filename>book.html</filename>, e outros).</para> - - <para>Estes arquivos são, então - comprimidos utilizando três técnicas - de compressão:</para> - - <informaltable frame="none"> - <tgroup cols="2"> - <thead> - <row> - <entry>Tipo</entry> - - <entry>Descrição</entry> - </row> - </thead> - - <tbody> - <row> - <entry><literal>zip</literal></entry> - - <entry>Formato Zip. Se você quiser - descomprimir este formato no FreeBSD, - será necessário instalar o - <literal>port</literal> <package>archivers/unzip</package> - antes.</entry> - </row> - - <row> - <entry><literal>gz</literal></entry> - - <entry>Formato GNU Zip. Para descomprimir - estes arquivos, use o comando - &man.gunzip.1; que faz parte do - FreeBSD.</entry> - </row> - - <row> - <entry><literal>bz2</literal></entry> - - <entry>Formato BZip2. Esse formato é - menos popular que os outros, mas - geralmente produz arquivos menores. - Instale o <literal>port</literal> - <package>archivers/bzip2</package> - para descomprimir arquivos deste - formato.</entry> - </row> - </tbody> - </tgroup> - </informaltable> - - <para>Portanto, o &a.ptbr.p.handbook; em formato - Postscript comprimido com o BZip2 será - armazenado como <filename>book.ps.bz2</filename> - sob o diretório - <filename>handbook/</filename>.</para> - </listitem> + <para>Todos os outros formatos geram um único arquivo. Por exemplo, <filename>article.pdf</filename>, <filename>book.html</filename> e assim por diante.</para> - <listitem> - <para>A documentação formatada - está disponível ainda como um pacote - FreeBSD.</para> + <para>Esses arquivos são então compactados usando os esquemas de compactação <literal>zip</literal> ou <literal>bz2</literal>. O comando <citerefentry> <refentrytitle>tar</refentrytitle><manvolnum>1</manvolnum> </citerefentry> pode ser usado para descompactar esses arquivos.</para> + + <para>Portanto, a versão <trademark class="registered">PostScript</trademark> do Handbook, compactada usando <literal>bzip2</literal> será armazenada em um arquivo chamado <filename>book.ps.bz2</filename> no diretório <filename>handbook/</filename>.</para> </listitem> </orderedlist> </listitem> </itemizedlist> - <para>Após escolher o formato e o mecanismo de - compressão, você deve decidir se vai ou - não pegar o documento em formato de - <emphasis>pacote</emphasis> FreeBSD.</para> - - <para>A vantagem de baixar e instalar os pacotes é - que a documentação pode então ser - gerenciada usando os comandos de gerenciamento de pacotes - FreeBSD, como &man.pkg.add.1; e &man.pkg.delete.1;.</para> - - <para>Se decidir baixar e instalar o pacote, então - você deve conhecer o nome do arquivo antes de - começar. Os arquivos de - documentação-como-pacotes estão - estocados em um diretório chamado - <filename>packages</filename>. Cada arquivo de pacote - segue o padrão de nome - <filename>document-name.lang.encoding.format.tgz</filename>.</para> - - <para>Por exemplo, o <literal>FAQ</literal>, em - língua Inglesa e formato PDF, estará no - pacote de nome - <filename>faq.en_US.ISO8859-1.pdf.tgz</filename>.</para> - - <para>Sabendo isto, você pode usar o seguinte comando - pra instalar o pacote contendo o <literal>FAQ</literal> na - língua Inglesa e formato PDF:</para> - - <screen>&prompt.root; <userinput>pkg_add - ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/packages/faq.en_US.ISO8859-1.pdf.tgz</userinput></screen> - - <para>Depois disso, você pode usar o &man.pkg.info.1; - pra determinar onde o documento foi instalado.</para> - - <screen>&prompt.root; <userinput>pkg_info -f faq.en_US.ISO8859-1.pdf</userinput> -Information for faq.en_US.ISO8859-1.pdf: - -Packing list: - Package name: faq.en_US.ISO8859-1.pdf - CWD to /usr/share/doc/en_US.ISO8859-1/books/faq -File: book.pdf - CWD to . -File: +COMMENT (ignored) -File: +DESC (ignored)</screen> - - <para>Como pode ver, <filename>book.pdf</filename> - terá sido instalado sob - <filename>/usr/share/doc/en_US.ISO8859-1/books/faq</filename>.</para> - - <para>Se você preferir não usar pacotes, - será necessário baixar os arquivos - comprimidos, depois descomprimí-los e copiar os - documentos apropriados para os lugares corretos.</para> - - <para>Por exemplo, a versão do <literal>FAQ</literal> - dividido em vários arquivos HTML, comprimido usando - &man.gzip.1;, pode ser encontrado no arquivo - <filename>doc/en_US.ISO8859-1/books/faq/book.html-split.tar.gz</filename>. - Para baixar e descomprimir aquele arquivo, você - deveria fazer o seguinte.</para> - - <screen>&prompt.root; <userinput>fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/en_US.ISO8859-1/books/faq/book.html-split.tar.gz</userinput> -&prompt.root; <userinput>gzip -d book.html-split.tar.gz</userinput> -&prompt.root; <userinput>tar xvf book.html-split.tar</userinput></screen> - - <para>Será criada, então, uma série de - arquivos <filename>.html</filename>. O principal arquivo - é chamado <filename>index.html</filename> contendo - o índice, material introdutório e links para - outras partes do documento. Posteriormente, você - pode copiar ou mover esses arquivos pra onde você - quiser.</para> - </answer> - </qandaentry> + <para>Depois de escolher o formato e o mecanismo de compactação, baixe os arquivos compactados, descompacte-os e copie os documentos para um lugar apropriado.</para> - <qandaentry> - <question xml:id="mailing"> - <para>Onde posso obter informações sobre as - listas de discussão FreeBSD?</para> - </question> + <para>Por exemplo, a versão split HTML do <acronym>FAQ</acronym>, compactada usando <citerefentry><refentrytitle>bzip2</refentrytitle> <manvolnum>1</manvolnum></citerefentry>, pode ser encontrada em <filename>doc/en_US.ISO8859-1/books/faq/book.html-split.tar.bz2</filename> Para baixar e descompactar esse arquivo, digite:</para> - <answer> - <para>Você pode encontrar uma vasta gama de - informações na <link xlink:href="../handbook/eresources.html#ERESOURCES-MAIL">seção - do &a.ptbr.p.handbook; sobre listas de - discussão</link>.</para> + <screen><prompt>#</prompt> <userinput>fetch https://download.freebsd.org/ftp/doc/en_US.ISO8859-1/books/faq/book.html-split.tar.bz2</userinput> +<prompt>#</prompt> <userinput>tar xvf book.html-split.tar.bz2</userinput></screen> + + <para>Se o arquivo estiver compactado, o <application>tar</application> detectará automaticamente o formato apropriado e o descompactará corretamente, resultando em uma coleção de arquivos <filename>.html</filename>. O principal deles é chamado <filename>index.html</filename>, que conterá o sumário, o material introdutório e os links para as outras partes do documento.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="newsgroups"> - <para>Que grupos de notícias (<foreignphrase>news - groups</foreignphrase>) existem sobre o FreeBSD?</para> + <question xml:id="mailing"> + <para>Onde encontro informações sobre as listas de discussão do FreeBSD? Quais grupos de notÃcias do FreeBSD estão disponÃveis?</para> </question> <answer> - <para>Informações completas podem ser - encontradas na <link xlink:href="../handbook/eresources-news.html">seção - do &a.ptbr.p.handbook; sobre grupos de notícias - (<foreignphrase>newsgroups</foreignphrase>)</link>.</para> + <para>Consulte as seções do Handbook sobre as <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/eresources.html#eresources-mail">listas de discussão</link> e sobre os <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/eresources-news.html">grupos de notÃcias</link>.</para> </answer> </qandaentry> <qandaentry> <question xml:id="irc"> - <para>Existem canais de bate-papo retransmitido via Internet - (<acronym>IRC</acronym>) FreeBSD?</para> + <para>Existem canais de IRC (Internet Relay Chat) sobre o FreeBSD?</para> </question> <answer> - <para>Sim, a maioria das grandes redes de bate-papo - retransmitido via Internet (<acronym>IRC</acronym>) tem um - canal de bate-papo sobre FreeBSD:</para> + <para>Sim, a maioria das redes de IRC hospedam um canal de chat do FreeBSD:</para> <itemizedlist> <listitem> - <para>O canal <literal>#FreeBSD</literal> na <link xlink:href="http://www.efnet.org/index.php">EFNet</link> - é essencialmente um fórum sobre FreeBSD, - mas não entre no canal se você procura - suporte técnico, nem se você está - procurando uma maneira de evitar a leitura de - páginas de manual ou fazer suas próprias - pesquisas. Este é essencialmente um canal de - bate-papo geral. Assuntos como sexo, esportes ou - armas nucleares são tão comuns quanto - FreeBSD no canal. Lembre-se, Você Foi Avisado! - Para conectar-se, use o servidor - <systemitem>irc.chat.org</systemitem>.</para> - </listitem> - - <listitem> - <para>O canal <literal>#FreeBSDhelp</literal> na <link xlink:href="http://www.efnet.org/index.php">EFNet</link> - é dedicado a suporte e auxilio de - usuários de FreeBSD. Os participantes neste - canal são bem mais receptivos a perguntas que - os do canal <literal>#FreeBSD</literal>.</para> - </listitem> - - <listitem> - <para>O canal <literal>#FreeBSD</literal> na <link xlink:href="http://www.dal.net/">DALNET</link> pode ser - acessado em <systemitem>irc.dal.net</systemitem> nos Estados - Unidos, e <systemitem>irc.eu.dal.net</systemitem> na - Europa.</para> - </listitem> - - <listitem> - <para>O canal <literal>#FreeBSD</literal> na <link xlink:href="http://www.undernet.org/">UNDERNET</link> pode - ser acessado em <literal>us.undernet.org</literal> nos - Estados Unidos, e <literal>eu.undernet.org</literal> - na Europa. Partindo do princípio que esse - é um canal de ajuda, esteja preparado para ler - todos os documentos a que for referido.</para> - </listitem> - - <listitem> - <para>O canal <literal>#FreeBSD</literal> na <link xlink:href="http://www.hybnet.net/">HybNet</link> - <emphasis>é</emphasis> um canal de ajuda. Uma - lista de servidores pode ser encontrada no <link xlink:href="http://www.hybnet.net/">sítio WWW da - HybNet</link>.</para> + <para>Canal <literal>#FreeBSDhelp</literal> na <link xlink:href="http://www.efnet.org/index.php">EFNet</link> é um canal dedicado a ajudar usuários do FreeBSD.</para> </listitem> - </itemizedlist> - - <para>Cada um destes canais é independente, e - exatamente por estarem em redes distintas, não - é conectada ou relacionada entre si. Os estilos de - bate-papo em cada um dos canais são bastante - distintos, pode ser necessário testar cada um para - descobrir qual á mais adequado ao seu estilo - pessoal de bate-papo. Como em toda rede de bate-papo - retransmitido via Internet (<acronym>IRC</acronym>), nem - considere acessar os canais se você ofende-se - facilmente ou se você não se dá bem - com muita gente jovem (e alguns bem velhos) que usam as - mais irregulares formas de escrita e - conversação possível, quase sempre - assassinando sem o menor pudor todos os princípios - verbais - de qualquer língua que seja.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="training"> - <para>Onde eu consigo treinamento em e suporte comercial ao - FreeBSD?</para> - </question> - - <answer> - <para>DaemonNews oferece treinamento em e suporte comercial - ao FreeBSD. Mais informações podem ser - obtidas no sítio WWW <link xlink:href="http://www.bsdmall.com/">BSD Mall</link>.</para> - - <para>FreeBSD Services oferece suporte comercial ao FreeBSD - no Reino Unido (além de vender o FreeBSD em - mídia DVD). Veja o <link xlink:href="http://www.freebsd-services.com">sítio - WWW</link> deles para maiores - informações.</para> - - <para>A FreeBSD Mall oferece suporte comercial ao FreeBSD. - Maiores informações podem ser obtidas no - <link xlink:href="http://www.freebsdmall.com/">sítio - WWW deles</link>.</para> - - <para>Qualquer outra organização que - ofereça treinamento em ou suporte ao FreeBSD deve - entrar em contato com o projeto para serem listadas - aqui.</para> - </answer> - </qandaentry> - </qandaset> - </chapter> - - <chapter xml:id="install"> - <info><title>Instalação</title> - <author><personname><firstname>Nik</firstname><surname>Clayton</surname></personname><affiliation> - <address><email>nik@FreeBSD.org</email></address> - </affiliation></author> - </info> - - - - <qandaset> - <qandaentry> - <question xml:id="floppy-download"> - <para>De qual arquivo eu devo baixar o FreeBSD da - rede?</para> - </question> - - <answer> - <para>Até a versão 3.1 era necessário - apenas um disquete para instalação do - FreeBSD, o disco era o - <filename>floppies/boot.flp</filename>. Contudo, depois - que o 3.1 foi lançado, o Projeto adicionou ao - <foreignphrase>kernel</foreignphrase> genérico o - suporte a uma grande variedade de dispositivos, de forma - que ele passou a consumir mais espaço. Por este - motivo, desde a série 3.X são - necessários dois disquetes, o - <filename>floppies/kernel.flp</filename> e o - <filename>floppies/mfsroot.flp</filename>. Essas imagens - precisam ser copiadas para disquetes, usando ferramentas - como o <command>fdimage</command> ou o &man.dd.1;.</para> - - <para>Caso seja necessário baixar da rede a - distribuição do sistema (por exemplo, para - uma instalação por meio de um sistema de - arquivos DOS), você terá que obter as - seguintes estruturas da distribuição - padrão:</para> - <itemizedlist> <listitem> - <para>bin/</para> + <para>Canal <literal>#FreeBSD</literal> na <link xlink:href="http://freenode.net/">Freenode</link> é um canal de ajuda geral com muitos usuários a qualquer horário. É de conhecimento que conversas off-topic acontecem em alguns momentos, mas a prioridade é dada aos usuários com perguntas sobre o FreeBSD. Outros usuários podem ajudar com o básico, consultando o Handbook sempre que possÃvel e fornecendo links para ajudá-lo a aprender mais sobre um determinado tópico. Este é um canal em que a comunicação ocorre primariamente em inglês, embora seja frequentado por usuários de todo o mundo. As pessoas que não são falantes nativas do inglês devem tentar fazer as suas perguntas primeiro em inglês e, em seguida, tentar nos canais <literal>## freebsd-lang</literal> conforme apropriado.</para> </listitem> <listitem> - <para>manpages/</para> + <para>Canal <literal>#FreeBSD</literal> na <link xlink:href="http://www.dal.net/">DALNET</link> está disponÃvel em <systemitem>irc.dal.net</systemitem> nos EUA e <systemitem>irc.eu.dal.net</systemitem> na Europa.</para> </listitem> <listitem> - <para>compat*/</para> + <para>O canal <literal>#FreeBSD</literal> na <link xlink:href="http://www.undernet.org/">UNDERNET</link> está disponÃvel em <systemitem>us.undernet.org</systemitem> nos EUA e <systemitem>eu.undernet.org</systemitem> na Europa. Como é um canal de ajuda, prepare-se para ler os documentos aos quais você for direcionado.</para> </listitem> <listitem> - <para>doc/</para> + <para>O canal <literal>#FreeBSD</literal> na <link xlink:href="http://www.rusnet.org.ru/">RUSNET</link> é um canal de lÃngua russa dedicado a ajudar os usuários do FreeBSD. Este também é um bom lugar para discussões não técnicas.</para> </listitem> <listitem> - <para>src/ssys.*</para> + <para>O canal <literal>#bsdchat</literal> na <link xlink:href="http://freenode.net/">Freenode</link> é um canal de idioma chinês tradicional (codificação UTF-8) dedicado a ajudar os usuários do FreeBSD. Este também é um bom lugar para discussões não técnicas.</para> </listitem> </itemizedlist> - <para>Para obter instruções completas sobre o - procedimento de instalação do FreeBSD e - maiores detalhes sobre os meios de - instalação, por gentileza, consulte a <link xlink:href="../handbook/install.html">seção de - instalação</link> no - &a.ptbr.p.handbook;.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="floppy-image-too-large"> - <para>O que eu devo fazer se as imagens de disquete - não couberem em um único disco?</para> - </question> - - <answer> - <para>Um disquete de 3.5 polegadas (1,44 MB) armazena - até 1474560 bytes de dados. O tamanho da imagem de - inicialização é de exatamente 1474560 - bytes.</para> - - <para>Erros comuns, cometidos na - preparação dos discos de - inicialização, são:</para> - - <itemizedlist> - <listitem> - <para>Baixar a imagem de disco via - <acronym>FTP</acronym> sem utilizar o modo de - transferência - <emphasis>binário</emphasis>.</para> - - <para>Alguns clientes de FTP - especialmente navegadores - de Internet - costumam usar por padrão o modo - de transferência <emphasis>ascii</emphasis> nas - sessões FTP, e para normalizar o arquivo de - acordo com o sistema, eles tentam alterar os - caracteres finais de cada linha do arquivo. - Invariavelmente esse comportamento resulta em baixar - uma imagem de inicialização - (<foreignphrase>boot</foreignphrase>) corrompida. - Verifique o tamanho da imagem que você tem em - mãos, se é exatamente do mesmo tamanho - da imagem no servidor. Caso o tamanho não seja - <emphasis>exatamente</emphasis> o mesmo, você - pode suspeitar do arquivo que você - baixou.</para> - - <para>Para garantir que esse problema não ocorra, - digite <emphasis>binary</emphasis> na prompt de - comando do seu cliente FTP, ou defina as - preferências do programa para utilizar o modo - binário. Aí sim, faça baixe da - rede a imagem de inicialização.</para> - </listitem> - - <listitem> - <para>Usar o comando <command>copy</command> do DOS (ou - simplesmente copiar, por meio da Interface - Gráfica do sistema) para transferir a imagem de - inicialização para o disquete.</para> - - <para>Programas como o <command>copy</command> - não vão funcionar para copiar a imagem - de inicialização direto para o disquete, - exatamente porque a imagem foi criada de forma que ela - seja carregada diretamente. A imagem tem o - conteúdo completo que o disquete deve ter, com - seus dados alocados trilha-a-trilha, e portanto - não pode ser copiado para o disquete como um - simples arquivo. Você tem que copiar a imagem - para o disquete usando alguma ferramenta de - <quote>cópia crua</quote> (raw copy, como o - <command>fdimage</command> ou o - <command>rawrite</command>) como descrito no <link xlink:href="../handbook/install.html">guia de - instalação do FreeBSD</link>.</para> - </listitem> - </itemizedlist> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="install-instructions-location"> - <para>Onde estão as instruções para - instalar o FreeBSD?</para> - </question> + <para>A wiki do FreeBSD tem uma <link xlink:href="https://wiki.freebsd.org/IRC/Channels">boa lista</link> dos canais de IRC.</para> - <answer> - <para>As instruções de - instalação do FreeBSD podem ser encontradas - na <link xlink:href="../handbook/install.html">seção de - instalação do FreeBSD no - &a.ptbr.p.handbook;</link>.</para> + <para>Cada um destes canais são distintos e não estão conectados entre si. Como os estilos de bate-papo diferem, experimente cada um deles para encontrar um adequado ao seu estilo de bate-papo.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="need-to-run"> - <para>O que é preciso para usar o FreeBSD?</para> + <question xml:id="forums"> + <para>Existem fóruns na web para discutir o FreeBSD?</para> </question> - <answer> - <para>Você vai precisar, no mínimo de um PC 386 - com 5MB de memória RAM e no mínimo 60 MB em - disco. Essa configuração permite o uso de - uma placa de vídeo MDA simples, mas para usar o - X11R6 é necessário uma placa de vídeo - VGA ou mais avançada.</para> - - <para>Para mais informações consulte <xref linkend="hardware"/></para> + <para>Os fóruns oficiais do FreeBSD estão localizados em <link xlink:href="https://forums.FreeBSD.org/">https://forums.FreeBSD.org/</link>.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="four-meg-ram-install"> - <para>Eu tenho apenas 4 MB de memória RAM. Posso - usar o FreeBSD?</para> + <question xml:id="training"> + <para>Onde posso obter treinamento e suporte comercial para o FreeBSD?</para> </question> <answer> - <para>O FreeBSD 2.1.7 foi a última versão do - sistema que rodava com apenas 4MB de memória. A - partir do FreeBSD 2.2, é necessário no - mínimo 5MB de memória para usar o - sistema.</para> + <para>A <link xlink:href="http://www.ixsystems.com"> iXsystems, Inc. </link>, empresa controladora do <link xlink:href="http://www.freebsdmall.com/">FreeBSD Mall</link>, fornece <link xlink:href="http://www.ixsystems.com/support">supporte</link> comercial para o FreeBSD e TrueOS, e também soluções de desenvolvimento e customização para o FreeBSD.</para> - <para>Praticamente todas as versões do FreeBSD podem - <emphasis>rodar</emphasis> com 4MB de memória RAM, - contudo, a instalação do sistema operacional - não pode ser feita com apenas 4MB. Você pode - colocar mais memória para o processo de - instalação do sistema, e depois de - instalado, voltar a máquina para apenas 4MB de - memória, ou como alternativa, instale o seu disco - rígido em uma máquina com mais de 4MB, - efetue a instalação do sistema, e depois - instale o seu disco de volta na máquina com apenas - 4MB.</para> + <para>A BSD Certification Group, Inc. fornece certificações de administração do sistema para o DragonFly BSD, FreeBSD, NetBSD e OpenBSD. Consulte <link xlink:href="http://www.BSDCertification.org">seu site</link> para maiores informações.</para> - <para>O FreeBSD 2.1.7 não irá instalar em - sistemas que usam 640 Kb de memória base + 3 MB de - memória extendida. Se sua placa mãe pode - fazer o remapeamento da memória - <quote>subutilizada</quote> que vai sobrar dos 640kB da - região de 1MB, ai sim, você vai conseguir - usar o FreeBSD 2.1.7. Entre no Setup da sua BIOS, procure - a opção ``remap'' e habilite-a. Talvez - você tenha que desabilitar a opção de - ROM shadowing. Com certeza é mais fácil - você conseguir mais 4MB apenas para a - instalação, compilar um - <foreignphrase>kernel</foreignphrase> customizado e - portanto menor, e ai sim, tirar esses 4MB sobresalentes e - usar o sistema com apenas os 4MB originais. Também - é possível instalar o FreeBSD 2.0.5 e depois - <quote>atualizá-lo</quote> para o 2.1.7 com a - opção ``upgrade'' disponível no - programa de instalação do FreeBSD - 2.1.7.</para> - - <para>Depois de instalado o sistema, você pode - compilar um <foreignphrase>kernel</foreignphrase> - personalizado, que provavelmente irá permitir que o - sistema seja usado com 4MB de memória apenas. - Existem relatos de sucesso na utilização do - sistema com apenas 2MB de memória, contudo, nesse - caso é praticamente impossível usar alguma - outra aplicação junto ao sistema - operacional.</para> + <para>Quaisquer outras organizações que forneçam treinamento e suporte devem entrar em contato com o Projeto FreeBSD para serem listadas aqui.</para> </answer> </qandaentry> + </qandaset> + </chapter> - <qandaentry> - <question xml:id="custom-boot-floppy"> - <para>Como eu crio meu próprio disquete de - instalação?</para> - </question> - - <answer> - <para>Atualmente não existe uma forma de - <emphasis>simplesmente criar</emphasis> um disco de - instalação personalizado. Para criar um - disquete personalizado você terá que preparar - todo um novo <literal>release</literal>, o qual, aí - sim, teria instruções de - instalação.</para> - - <para>Para montar um <literal>release</literal> - personalizado siga as instruções do artigo - de <link xlink:href="../../articles/releng/article.html">Engenharia de - <literal>Release</literal></link> article.</para> - </answer> - </qandaentry> + <chapter xml:id="install"> + <info> + <title>Instalação</title> - <qandaentry> - <question xml:id="windows-coexist"> - <para>O Windows 95/98 pode co-existir com o FreeBSD?</para> - </question> + <author><personname> <firstname>Nik</firstname> <surname>Clayton</surname> </personname> <affiliation> <address> + <email>nik@FreeBSD.org</email> + </address> </affiliation></author> + </info> - <answer> - <para>Sim. Primeiro você deve instalar o seu Windows, - e depois instalar o FreeBSD. O gerenciador de - inicialização - (<foreignphrase>boot</foreignphrase>) do FreeBSD vai ser - instalado na MBR do seu disco, e vai conseguir controlar o - inicialização entre o FreeBSD e seu Windows. - Se você instalar o Windows depois do FreeBSD, a - instalação dele irá sobrescrever o - setor de inicialização - (<foreignphrase>boot</foreignphrase>) do seu disco, e - conseqüentemente seu gerenciador de - inicialização - (<foreignphrase>boot</foreignphrase>), sem avisar ou pedir - qualquer confirmação. Se esse for o caso, - leia a próxima seção.</para> - </answer> - </qandaentry> + <qandaset> <qandaentry> - <question xml:id="win95-damaged-boot-manager"> - <para>O Windows 95/98 sobrescreveu meu gerenciador de - inicialização - (<foreignphrase>boot</foreignphrase>)! Como eu instalo ele - de volta?</para> + <question xml:id="which-architecture"> + <para>Qual plataforma devo baixar? Eu tenho uma CPU compatÃvel com 64 bits <trademark class="registered">Intel</trademark>, mas eu só encontro <literal>amd64</literal>.</para> </question> <answer> - <para>Você pode reinstalar o gerenciador de - inicialização - (<foreignphrase>boot</foreignphrase>) do FreeBSD de uma - das 3 maneiras:</para> - - <itemizedlist> - <listitem> - <para>Sob o DOS, entre no diretório tools/ da sua - distribuição do FreeBSD (seu CDROM por - exemplo) e procure o programa - <filename>bootinst.exe</filename>. Depois, execute-o - da seguinte forma:</para> - - <screen><prompt>...\TOOLS></prompt> <userinput>bootinst.exe boot.bin</userinput></screen> - - <para>e o gerenciador de inicialização - (<foreignphrase>boot</foreignphrase>) será - reinstalado.</para> - </listitem> - - <listitem> - <para>Faça a inicialização do - FreeBSD pelos disquetes de instalação ou - pelo CDROM novamente. Entre na opção - "Custom" do menu de - instalação, escolha a o ítem de - partições (Partition), selecione o drive - do disco que continha o seu gerenciador de - inicialização - (<foreignphrase>boot</foreignphrase>) (normalmente, se - trata do primeiro disco) e então você - entra no editor de partições. Não - faça nenhuma alteração, apenas - aperte a tecla W (Write). O programa de - instalação irá pedir a - confirmação, se você quer gravar - suas informações mesmo sem ter feito - nenhuma alteração. Escolha Sim. O - programa irá perguntar se você deseja - instalar o gerenciador de inicialização - (<foreignphrase>boot</foreignphrase>) do FreeBSD ou se - você deseja deixar o setor de - inicialização - (<foreignphrase>boot</foreignphrase>) intacto (ou - instalar um setor de inicialização - (<foreignphrase>boot</foreignphrase>) padrão) - exatamente como no instante da primeira - instalação do FreeBSD. Escolha - <quote>Boot Manager</quote>. Agora o gerenciador de - inicialização - (<foreignphrase>boot</foreignphrase>) será - reinstalado no disco. Saia do programa de - instalação e reinicie o processo de - inicialização pelo HD - normalmente.</para> - </listitem> - - <listitem> - <para>Inicie o FreeBSD com o disquete (ou CD) de - inicialização tradicional, escolha a - opção <quote>Fixit</quote> no menu do - sysinstall. Escolha entre o disquete de - correção ou o segundo CDROM (a - opção <quote>live</quote> na - distribuição padrão do FreeBSD) - no menu a seguir, e entre na shell de - correção do sistema. Em seguida execute - o comando:</para> - - <screen><prompt>Fixit#</prompt> <userinput>fdisk -B -b /boot/boot0 bootdevice</userinput></screen> - - <para>substituindo <replaceable>bootdevice</replaceable> - pela device controladora do seu disco, como por - exemplo, <filename>ad0</filename> (para o primeiro - disco IDE),<filename>ad4</filename> (para o - primeiro disco IDE na controladora secundária), - <filename>da0</filename> (para o primeiro disco - SCSI), etc.</para> - </listitem> - </itemizedlist> + <para>amd64 é o termo que o FreeBSD usa para arquiteturas x86 compatÃveis com 64 bits (também conhecidas como "x86-64" ou "x64"). Para a maioria dos computadores modernos você deve usar a opção amd64. Para hardware mais antigo você deve usar o i386. Ao instalar em uma arquitetura não compatÃvel com x86, selecione a plataforma que melhor corresponda ao hardware.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="boot-on-thinkpad"> - <para>O meu IBM Thinkpad série A, T ou X trava - sempre, quando eu tento inicializar - (<foreignphrase>boot</foreignphrase>) o FreeBSD. Como eu - resolvo isso?</para> + <question xml:id="floppy-download"> + <para>Qual arquivo eu baixo para ter o FreeBSD?</para> </question> <answer> - <para>Um bug nas primeiras versões da BIOS da IBM - nessas máquinas, erroneamente identifica as - partições FreeBSD como - partições FAT especiais. Quando a BIOS - tenta reconhecer a partição FreeBSD, o - sistema trava.</para> + <para>Na página <link xlink:href="https://www.freebsd.org/where.html">Como obter o FreeBSD</link>, selecione <literal>[iso]</literal> ao lado da arquitetura que corresponde ao seu hardware.</para> - <para>De acordo com a IBM<footnote><para>Em um e-mail - enviado por Keith Frechettei - <email>kfrechet@us.ibm.com</email>.</para></footnote>, - os seguintes modelos/BIOS tem esse problema - corrigido:</para> + <para>Qualquer um dos itens a seguir pode ser usado:</para> - <informaltable frame="none"> + <informaltable frame="none" pgwide="1"> <tgroup cols="2"> <thead> <row> - <entry>Modelo</entry> - - <entry>Revisão da BIOS</entry> + <entry>arquivo</entry> + <entry>descrição</entry> </row> </thead> <tbody> <row> - <entry>T20</entry> - - <entry>IYET49WW ou posterior</entry> - </row> - - <row> - <entry>T21</entry> - - <entry>KZET22WW ou posterior</entry> - </row> - - <row> - <entry>A20p</entry> - - <entry>IVET62WW ou posterior</entry> - </row> - - <row> - <entry>A20m</entry> - - <entry>IWET54WW ou posterior</entry> + <entry><filename>disc1.iso</filename></entry> + <entry>Contém o suficiente para instalar o FreeBSD e um conjunto mÃnimo de pacotes.</entry> </row> <row> - <entry>A21p</entry> - - <entry>KYET27WW ou posterior</entry> + <entry><filename>dvd1.iso</filename></entry> + <entry>Semelhante ao <filename>disc1.iso</filename>, mas com pacotes adicionais.</entry> </row> <row> - <entry>A21m</entry> - - <entry>KXET24WW ou posterior</entry> + <entry><filename>memstick.img</filename></entry> + <entry>Uma imagem inicializável para se gravar em um pendrive.</entry> </row> <row> - <entry>A21e</entry> - - <entry>KUET30WW</entry> + <entry><filename>bootonly.iso</filename></entry> + <entry>Uma imagem mÃnima e que requer acesso à rede durante a instalação para que possa instalar completamente o FreeBSD.</entry> </row> </tbody> </tgroup> </informaltable> - <para>Existem relatos de que as revisões posteriores - das BIOS IBM re-introduziram esse bug. <link xlink:href="http://www.FreeBSD.org/cgi/getmsg.cgi?fetch=200565+208320+/usr/local/www/db/text/2001/freebsd-mobile/20010429.freebsd-mobile">Essa - mensagem</link> enviada por Jacques Vidrine para a - &a.mobile; descreve uma série de procedimentos que - podem funcionar no seu laptop IBM, caso seja uma - versão um pouco mais nova, e que não consiga - inicializar (<foreignphrase>boot</foreignphrase>) o - FreeBSD corretamente. Você pode ainda fazer uma - atualização ou desatualização - (upgrade ou downgrade) da BIOS.</para> - - <para>Se a BIOS é mais antiga, e você - não considera sua atualização, existe - uma opção que pode sanar seu problema. A - instalação do FreeBSD pode ser feita - alterando-se a identificação da - partição (partition ID) do sistema, e depois - instalar novos setores de inicialização - (<foreignphrase>boot</foreignphrase>) que podem controlar - uma partition ID diferente.</para> - - <para>O primeiro passo é restaurar o seu laptop ao - ponto onde ele pode fazer os auto-testes, ou seja, os - testes básicos de I/O da BIOS. Para fazer isso, - basta ligar o computador de forma que ele não - consiga encontrar a partição primária - do FreeBSD. A maneira mais simples de faze-lo, é - retirando o disco rígido do seu laptop, e - temporariamente ligando-o em um ThinkPad mais antigo (como - oThinkPad 600) ou em um PC comum, com um cabo de - conversão apropriado. Uma vez feito isso, basta - apagar a partição FreeBSD e colocar o disco - de volta no laptop. Agora sim, o ThinkPad deve estar de - volta ao estado onde ele pode reconhecer o disco.</para> - - <para>Com a máquina funcionando, basta seguir as - próximas instruções para fazer o seu - FreeBSD instalar:</para> - - <procedure> - <step> - <para>Baixe da rede os arquivos - <filename>boot1</filename> e - <filename>boot2</filename> no site <link xlink:href="http://people.FreeBSD.org/~bmah/ThinkPad/">http://people.FreeBSD.org/~bmah/ThinkPad/</link>. - Coloque esses arquivos em algum lugar onde você - possa acessá-los posteriormente.</para> - </step> - - <step> - <para>Instale o FreeBSD normalmente no ThinkPad. - <emphasis>Não</emphasis> use o modo - <literal>Dangerously Dedicated</literal>. - <emphasis>Não</emphasis> reinicie o sistema - quando o processo de instalação for - concluído.</para> - </step> - - <step> - <para>Vá para a <quote>Shell Holográfica - de Emergência</quote> (<keycombo action="simul"><keycap>ALT</keycap> - <keycap>F4</keycap></keycombo>) ou inicie uma shell - de recuperação - - <quote>fixit</quote></para> - </step> - - <step> - <para>Use o &man.fdisk.8; para alterar a partition ID de - <literal>165</literal> para <literal>166</literal> - (166 é o ID usado pelo OpenBSD).</para> - </step> - - <step> - <para>Coloque os arquivos <filename>boot1</filename> e - <filename>boot2</filename> no sistema de arquivos - local.</para> - </step> - - <step> - <para>Use o &man.disklabel.8; para escrever o - <filename>boot1</filename> e o - <filename>boot2</filename> na sua - partição FreeBSD.</para> - - <screen>&prompt.root; <userinput>disklabel -B -b boot1 -s boot2 ad0sn</userinput></screen> - - <para><replaceable>n</replaceable> é o - número da partição onde o FreeBSD - está instalado.</para> - </step> - - <step> - <para>Reinicie o sistema. O gerenciador de - inicialização - (<foreignphrase>boot</foreignphrase>) - oferecerá a opção de iniciar o - <literal>OpenBSD</literal>, mas na verdade essa - opção estará iniciando o - FreeBSD.</para> - </step> - </procedure> - - <para>Agora, se você quer manter os sistemas - operacionais OpenBSD e FreeBSD no mesmo laptop ThinkPad, - pode considerar isso um exercício prático - que fica a critério do leitor.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="install-bad-blocks"> - <para>Posso instalar o FreeBSD em um disco com bad - blocks?</para> - </question> - - <answer> - <para>Até a versão 3.0, o FreeBSD tinha um - utilitário chamado <command>bad144</command>, que - automaticamente remapeava os bad blocks. Atualmente, os - discos IDE modernos são capazes de fazer isso - sozinhos, portanto o <command>bad144</command> foi - retirado da árvore do FreeBSD. Se sua - intenção é instalar o FreeBSD 3.0 ou - alguma versão mais recente, nós sinceramente - aconselhamos que você compre um novo disco. Se - você não quer comprar um disco novo, - então use o FreeBSD 2.X.</para> - - <para>Se você esta tendo problemas de bad block com - algum disco IDE moderno, provavelmente o disco será - perdido em breve, já que ele está tão - corrompido que a controladora interna não - está conseguindo corrigir e remapear os bad blocks. - Sugerimos que você compre um disco novo logo, e - realize cópia de segurança - (<foreignphrase>backup</foreignphrase>) dos dados, - enquanto o disco ainda funciona.</para> - - <para>Se o drive de disco é SCSI e está - apresentando bad blocks, leia <link linkend="awre">essa - resposta</link>.</para> + <para>Instruções completas sobre este procedimento e um pouco mais sobre problemas de instalação em geral podem ser encontradas na seção do Handbook <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/bsdinstall.html">sobre instalação do FreeBSD</link>.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="bad144-3x-4x"> - <para>Eu acabei de atualizar o sistema da série 3.X - para 4.X, e a minha primeira inicialização - (<foreignphrase>boot</foreignphrase>) falhou com a - mensagem <errorname>bad sector table not - supported</errorname></para> + <question xml:id="floppy-image-too-large"> + <para>O que eu faço se a imagem de instalação não inicializar?</para> </question> <answer> - <para>O FreeBSD 3.X e anteriores suportavam o programa - <command>bad144</command>, que automaticamente remapeava - bad blocks. O FreeBSD 4.X e posteriores não - suportam mais esse programa, devido ao fato que os - controladores de discos IDE atuais conseguem remapear bad - blocks automaticamente. Leia <link linkend="install-bad-blocks">essa pergunta</link> para - mais informações.</para> - - <para>Para corrigir esse problema depois de uma - atualização, é necessário - mover fisicamente o disco com problemas para um outro - sistema FreeBSD funcional e usar o &man.disklabel.8; da - forma discutida a seguir.</para> - </answer> - </qandaentry> + <para>Isso pode ocorrer caso você não tenha baixado a imagem no modo <emphasis>binário</emphasis> ao usar o <acronym>FTP</acronym>.</para> - <qandaentry> - <question xml:id="find-bad144"> - <para>Como eu faço se um disco tem - informações criadas pelo - <command>bad144</command> antes de atualizar o sistema, e - depois de atualizado para o FreeBSD 4.0 ou posterior, a - inicialização falha?</para> - </question> - - <answer> - <para>Use o &man.disklabel.8; para identificar esse ambiente. - <command>disklabel -r drive - device</command> vai te mostrar o - conteúdo do disco. Procure o campo - <literal>flags</literal>. Se encontrar a - informação <literal>flags: badsect</literal> - é porque esse disco está usando o bad144. - Por exemplo, o disco a seguir tem o - <command>bad144</command> habilitado:</para> + <para>Alguns clientes FTP padronizam seu modo de transferência para <emphasis>ascii</emphasis> e tentam alterar quaisquer caracteres de end-of-line recebidos para corresponder à s convenções usadas pelo sistema do cliente. Isso quase invariavelmente corromperá a imagem de inicialização. Verifique checksum SHA-256 da imagem de inicialização baixada: se não estiver<emphasis>exatamente</emphasis> como no servidor, o processo de download pode ter corrompido o arquivo.</para> - <screen>&prompt.root; disklabel -r wd0 -# /dev/rwd0c: -type: ESDI -disk: wd0s1 -label: -flags: badsect -bytes/sector: 512 -sectors/track: 63</screen> + <para>Ao usar um cliente FTP de linha de comando, digite <emphasis>binary</emphasis> no prompt de comando FTP depois de se conectar ao servidor e antes de iniciar o download da imagem.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="disable-bad144"> - <para>Como eu removo o <command>bad144</command> do meu - sistema anterior ao 4.X de forma que eu possa - atualizá-lo com segurança?</para> + <question xml:id="install-instructions-location"> + <para>Onde estão as instruções para instalar o FreeBSD?</para> </question> <answer> - <para>Use o comando <command>disklabel -e -rwd0</command> - para editar as informações do seu disco. - Basta retirar a palavra <literal>badsect</literal> do seu - campo flags, salvar a alteração e sair do - programa. O bad144 ainda estará ocupando algum - espaço no seu disco, mas ele estará - funcional para série 4.X e posteriores.</para> - - <para>Caso seu disco tenha um número muito alto de - bad blocks, é recomendado a troca do disco.</para> + <para>As instruções para instalação podem ser encontradas na seção do Handbook <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/bsdinstall.html">sobre instalação do FreeBSD</link>.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="boot-floppy-strangeness"> - <para>Coisas estranhas acontecem quando inicio o sistema com - o disco de instalação! O que está - acontecendo?</para> + <question xml:id="need-to-run"> + <para>Quais são os requisitos mÃnimos para executar o FreeBSD?</para> </question> <answer> - <para>Se sua máquina está desligando ou - espontâneamente reiniciando sempre que você - tenta iniciar o sistema com o disco de - instalação, aqui vão algumas - perguntas que você deveria fazer a si mesmo:</para> - - <orderedlist> - <listitem> - <para>O disco de instalação foi feito a - partir de um disquete novo, recém formatado e - completamente livre de erros (de preferência - algum disco que acabou de sair da caixa, ao - contrário desse seu disco que estava perdido - há quase 3 anos debaixo da cama)?</para> - </listitem> - - <listitem> - <para>Você baixou da rede a imagem em modo - binário? (não se envergonhe, até - o melhor de nós já baixou um arquivo - binário em modo ASCII ao menos uma vez na - vida!)</para> - </listitem> - - <listitem> - <para>No Windows 95 ou 98, você usou o - <command>fdimage</command> ou o - <command>rawrite</command> em modo DOS? Esses sistemas - operacionais as vezes interferem na forma com que os - programas escrevem dados diretamente no hardware, - exatamente o que o processo de criação - da imagem de disco faz, mesmo que você execute - um prompt do DOS no ambiente gráfico o problema - pode ocorrer.</para> - </listitem> - </orderedlist> - - <para>Ainda existem notícias de arquivos de imagens - sendo corrompidos pelo Netscape, durante o - <foreignphrase>download</foreignphrase>, por isso é - mais seguro utilizar um cliente de FTP diferente.</para> + <para>O FreeBSD requer um PC 486 ou melhor, 64 MB ou mais de RAM e pelo menos 1.1 GB de espaço em disco.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="no-install-cdrom"> - <para>Eu inicializei o FreeBSD a partir do meu CDROM ATAPI, - mas o programa de instalação diz que o CDROM - não foi encontrado. Para onde ele foi?</para> + <question xml:id="custom-boot-floppy"> + <para>Como posso criar minha própria versão personalizada ou disco de instalação?</para> </question> <answer> - <para>A causa desse problema curioso é a - configuração errada do seu drive de CDROM. - Hoje em dia muitos PCs vem com o CDROM instalado como - escravo na segunda controladora IDE, sem nenhum disco ou - drive óptico do tipo mestre na mesma controladora. - De acordo com as especificações ATAPI esse - tipo de configuração é incorreta e - ilegal. Alguns sistemas, como o Windows, simplesmente - ignoram uma série de especificações - legais na arquitetura de computadores pessoais, e acabam - oferecendo suporte a essa configuração - errônea - o que mais tarde pode causar outros - conflitos. Depois que o sistema inicia, a BIOS passa a - ignorar esse drive, e por isso o FreeBSD não - consegue encontrá-lo, para completar a - instalação.</para> - - <para>Reconfigure o seu computador de forma que o CDROM - esteja como mestre na sua controladora IDE, ou que exista - um outro periférico como mestre na controladora - onde o CD estiver como escravo.</para> + <para>Uma mÃdia customizada de instalação do FreeBSD pode ser criada através da construção de uma release personalizada. Siga as instruções do artigo <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/articles/releng/article.html">Release Engineering</link>.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="install-PLIP"> - <para>Posso instalar o FreeBSD no meu laptop via PLIP (IP em - Linha Paralela)?</para> + <question xml:id="windows-coexist"> + <para>O <trademark class="registered">Windows</trademark> pode coexistir com o FreeBSD?</para> </question> <answer> - <para>Claro. Use o cabo laplink padrão. Caso - necessário, verifique a <link xlink:href="../handbook/plip.html">seção de - PLIP</link> do &a.ptbr.p.handbook; para obter detalhes - sobre a instalação do FreeBSD via rede em - porta paralela.</para> - - <para>Se você está usando o FreeBSD 3.X ou - anterior, dê uma olhada na página de <link xlink:href="http://www.FreeBSD.org/docs.html#PAO">Computação - Móvel</link>.</para> + <para>Se <trademark class="registered">o Windows</trademark> for instalado primeiro, então sim. O gerenciador de boot do FreeBSD irá então inicializar o <trademark class="registered">Windows</trademark> e o FreeBSD. Se o <trademark class="registered">Windows</trademark> for instalado posteriormente, ela sobrescreverá o gerenciador de inicialização. Se isso acontecer, veja a próxima seção.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="geometry"> - <para>Qual geometria eu devo utilizar para um disco?</para> + <question xml:id="bootmanager-restore"> + <para>Outro sistema operacional destruiu meu gerenciador de inicialização. Como faço para recuperá-lo?</para> </question> <answer> - <note> - <para>Por <quote>geometria</quote>, nós entendemos - o número de cilindros, cabeças e - setores/trilhas de um disco. Por conveniência, - vamos nos referir à esses dados como C/H/S - (Cylinders/Heads/Sectores). É a partir dessa - informação que a BIOS dos PCs definem - quais áreas de um disco podem ser usadas para - leitura/escrita.</para> - </note> + <para>Isso depende do gerenciador de inicialização. O menu de seleção de inicialização do FreeBSD pode ser reinstalado usando <citerefentry> <refentrytitle>boot0cfg</refentrytitle><manvolnum>8</manvolnum> </citerefentry>. Por exemplo, para restaurar o menu de inicialização no disco <replaceable>ada0</replaceable>:</para> - <para>A geometria de disco costuma causar uma série - de confusões entre administradores de sistemas - menos experientes. Para começar, a geometria - <emphasis>física</emphasis> de um disco SCSI - é totalmente irrelevante, pois o FreeBSD trabalha - com blocos de discos. Na verdade, não existe - exatamente <quote>a</quote> geometria física de um - disco, visto que a densidade de um setor varia de acordo - com os discos. Os fabricantes chamam de <quote>geometria - física</quote> as especificações - que eles definem para que o menor espaço - possível em disco seja desperdiçado. Em - discos IDE, o FreeBSD trabalha com as - informações de C/H/S, mas todos os - dispositivos modernos, internamente convertem essa - informações em referências a blocos de - disco.</para> - - <para>O que importa, portanto, é a geometria - <emphasis>lógica</emphasis>. O valor lógico - é a resposta que a BIOS obtém quando - pergunto <quote>qual sua geometria?</quote> ao disco. - É esse valor, então, que é usado para - definir a forma de acesso ao dispositivo de armazenamento. - O FreeBSD usa as informações da BIOS quando - inicializa (<foreignphrase>boot</foreignphrase>), e por - isso é extremamente importante obter essa - informação de maneira correta. No geral, se - você tem mais de um sistema operacional no mesmo - disco, eles devem concordar no valor lógico da - geometria do disco, caso contrário você - terá sérios problemas ao iniciar o - sistema.</para> - - <para>Em discos SCSI, a geometria à ser utilizada - depende do suporte à tradução - extendida definido na sua controladora de disco - (normalmente esse suporte é chamado de - <quote>support for DOS disks >1GB</quote>, que - identifica o suporte à discos DOS cuja capacidade - de armazenamento é maior que 1GB - ou alguma - identificação similar.). Se essa - opção está desabilitada, então - o C/H/S do disco será de - <replaceable>N</replaceable> cilindros, 64 cabeças - e 32 setores/trilhas, onde o valor - <replaceable>N</replaceable> equivale a capacidade (em MB) - do disco. Por exemplo, um disco de 2GB teria 2048 - cilindros, 64 cabeças e 32 setores/trilhas.</para> - - <para>Se a opção <emphasis>estiver</emphasis> - habilitada (normalmente ela é habilitada por - padrão, para sanar algumas limitações - de sistemas baseados em MSDOS), e a capacidade do disco - forma maior que 1GB, os valores C/H/S do disco - serão M cilindros, 63 setores por trilha - (<emphasis>não</emphasis> 64) e 255 cabeças, - sendo 'M' a capacidade do disco, em MB, dividido por - 7.844238 (!). Então, por exemplo, o mesmo disco de - 2GB nessa situação teria 261 cilindros, 63 - setores por trilha e 255 cabeças.</para> - - <para>Se você não entendeu o porque disso, ou - se o seu FreeBSD falha no momento de reconhecer a - geometria correta do seu disco durante a - instalação, existe uma forma de tentar - resolver esse problema. Crie uma pequena - partição do tipo DOS no seu disco, e - verifique se a BIOS consegue identificar corretamente a - geometria do mesmo. Caso consiga, a - instalação vai se completar com - tranqüilidade, e a pequena partição DOS - pode sempre ser deletada, com o editor de - partições do FreeBSD.</para> - - <para>Como alternativa, existe uma aplicação - gratuitamente disponível com a - distribuição do FreeBSD, chamada de - <filename>pfdisk.exe</filename>. Ela pode ser encontrada - sob o diretório <filename>tools</filename> no CDROM - do FreeBSD ou nos servidores FTP do projeto. Esse - programa serve para descobrir qual a geometria usada por - outros sistemas operacionais no disco local. Nesse caso, - esse valor pode ser definido no editor de - partições do FreeBSD.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="disk-divide-restrictions"> - <para>Existem restrições quanto ao - particionamento de discos?</para> - </question> - - <answer> - <para>Sim, existem. A principal delas, é que a - partição <quote>root</quote> não pode - ter mais de 1024 cilindros, senão a BIOS não - consegue iniciar o <foreignphrase>kernel</foreignphrase> - do sistema a partir dessa partição. (Note - que essa é uma limitação das BIOS dos - computadores pessoais, e não do FreeBSD).</para> - - <para>Em um disco SCSI, essa limitação implica - que a partição raiz (root) deve estar - alocada nos primeiros 1024MB do disco (ou nos primeiros - 4096MB, caso o suporte a tradução extendida - esteja habilitada - veja pergunta anterior). Em discos - IDE, o valor correspondente equivale a 504MB para - partição raiz (root).</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="disk-manager"> - <para>O FreeBSD suporta programas gerenciadores de - discos?</para> - </question> - - <answer> - <para>O FreeBSD reconhece apenas o <quote>Ontrack Disk - Manager</quote>. Outros gerenciadores de discos - não são suportados.</para> - - <para>Se sua intenção é usar o disco - com FreeBSD, você não precisa de um - gerenciador de discos. Basta configurar o disco para o - total de espaço que a BIOS reconhece (normalmente - 504MB) e o FreeBSD vai conseguir identificar o tamanho - real do disco. Se você estiver usando um disco - antigo com uma controladora MFM, será - necessário avisar ao FreeBSD quantos cilindros o - disco tem.</para> + <screen><prompt>#</prompt> <userinput>boot0cfg -B ada0</userinput></screen> - <para>Caso queira usar o disco com FreeBSD e algum outro - sistema operacional, provavelmente também - não será necessário um gerenciador de - discos. Certifique-se apenas que a partição - de inicialização - (<foreignphrase>boot</foreignphrase>) do FreeBSD e a - partição do outro sistema operacional - estejam nos primeiros 1024 cilindros do disco. - Normalmente, para administradores de sistemas que tomam - decisões racionais, 20MB de espaço em uma - partição de inicialização - (<foreignphrase>boot</foreignphrase>) é mais que o - suficiente.</para> - </answer> - </qandaentry> + <para>O gerenciador de inicialização MBR não interativo pode ser instalado usando <citerefentry><refentrytitle>gpart</refentrytitle><manvolnum>8</manvolnum></citerefentry>:</para> - <qandaentry> - <question xml:id="missing-os"> - <para>Quando eu inicio o FreeBSD, eu obtenho a mensagem - <errorname>Missing Operating System</errorname>. O que - está acontecendo?</para> - </question> + <screen><prompt>#</prompt> <userinput>gpart bootcode -b /boot/mbr ada0</userinput></screen> - <answer> - <para>Esse é um caso tópico do FreeBSD e o DOS - ou qualquer outro sistema operacional discordando de suas - definições em relação a <link linkend="geometry">geometria</link> do disco. - Provavelmente você terá que reinstalar o - FreeBSD, mas se seguir as instruções citadas - nas perguntas anteriores, raramente esse problema vai - acontecer.</para> + <para>Para situações mais complexas, incluindo discos GPT, consulte <citerefentry><refentrytitle>gpart</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="stop-at-boot-manager"> - <para>Porque eu não consigo passar da tela - <prompt>F?</prompt> do gerenciador de - inicialização - (<foreignphrase>boot</foreignphrase>)?</para> + <question xml:id="need-complete-sources"> + <para>Preciso instalar o código fonte?</para> </question> <answer> - <para>Esse é mais um sintoma do problema descrito na - pergunta anterior. A geometria que a sua BIOS reconhece - não equivale ao valor definido no FreeBSD! Se a sua - controladora de disco ou sua BIOS suportam o modo de - tradução de cilindros (normalmente chamado - de <quote>>1GB drive support</quote>), tente alterar - essa opção e reinstalar o FreeBSD.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="need-complete-sources"> - <para>Eu preciso instalar todos os fontes do sistema - operacional?</para> - </question> - - <answer> - <para>Geralmente não, mas é altamente - recomendável que você instale ao menos os - fontes <literal>base</literal>, que incluem - inúmeros arquivos mencionados ao longo desse - documento, como as fontes do sistema, - <literal>sys</literal> que inclui as fontes do - <foreignphrase>kernel</foreignphrase> do FreeBSD, sem os - quais não se pode criar um - <foreignphrase>kernel</foreignphrase> personalizado. - Não existe qualquer dependência do sistema - operacional em relação aos seus fontes; com - a única exceção do programa - &man.config.8;, o resto do sistema operacional não - precisa dos fontes para funcionar. Os outros fontes do - sistema operacional - exceto os fontes do - <foreignphrase>kernel</foreignphrase> - podem ser montados - remotamente (via NFS, por exemplo) em qualquer lugar, e - ainda assim novos binários podem ser compilados a - partir dos mesmos. Devido a restrição - única dos fontes do - <foreignphrase>kernel</foreignphrase>, é - recomendável que os outros fontes não sejam - diretamente montados sob <filename>/usr/src</filename> mas - sim, que sejam montados separadamente e depois - interligados com links simbólicos - apropriados.</para> - - <para>Tendo todos os fontes disponíveis, e sabendo - reconstruir o sistema a partir dos mesmos, será - muito mais fácil manter o FreeBSD sincronizado e - atualizado com futuros releases.</para> - - <para>Para escolher um subconjunto dos fontes do sistema, - escolha a opção <literal>Custom</literal> - quando estiver na opção - <literal>Distributions</literal> do programa de - instalação do sistema.</para> + <para>Em geral, não. Não há nada no sistema base que exija a presença do código fonte para operar. Alguns ports, como o <package>sysutils/lsof</package>, não serão compilados a menos que o código fonte esteja instalado. Em particular, se o port compila um módulo de kernel ou opera diretamente em estruturas de kernel, o código fonte deve ser instalado.</para> </answer> </qandaentry> <qandaentry> <question xml:id="need-kernel"> - <para>Eu preciso criar um - <foreignphrase>kernel</foreignphrase> - personalizado?</para> + <para>Eu preciso compilar um kernel?</para> </question> <answer> - <para>Construir um novo - <foreignphrase>kernel</foreignphrase> costumava ser uma - obrigação na instalação do - FreeBSD, mas hoje em dia existe uma interface de - configuração do - <foreignphrase>kernel</foreignphrase> muito mais - amigável, que permite a redefinição - de recursos do sistema. Para acessar essa ferramenta, - basta inicializar (<foreignphrase>boot</foreignphrase>) o - sistema com a opção <option>-c</option> no - prompt de (<literal>boot:</literal>). Em especial, os - principais periféricos ISA - normalmente os mais - problemáticos - podem ser facilmente configurados - com essa opção.</para> - - <para>Ainda é recomendável que se construa um - <foreignphrase>kernel</foreignphrase> personalizado, - apenas com suporte aos equipamentos e - características do sistema que você precisa, - de forma a economizar recursos no sistema (especialmente - memória RAM), mas essa recompilação - não é mais uma obrigação na - maioria dos sistemas - mas é sem dúvida um - hábito saudável.</para> + <para>Geralmente não. O kernel <literal>GENERIC</literal> fornecido contém todos os drivers que um computador comum precisará. O <citerefentry><refentrytitle>freebsd-update</refentrytitle><manvolnum>8</manvolnum></citerefentry>, a ferramenta de atualização binária do FreeBSD, não pode atualizar kernels customizados, o que é uma outra razão para se manter com o kernel <literal>GENERIC</literal> sempre que possÃvel. Para computadores com uma quantidade de memória RAM muito limitada, como sistemas embarcados, pode valer a pena compilar um kernel customizado menor contendo apenas os drivers necessários.</para> </answer> </qandaentry> <qandaentry> <question xml:id="password-encryption"> - <para>Eu devo usar criptografia DES, Blowfish, ou MD5 para - senhas do sistema? Como eu defino qual delas o - usuário deve usar?</para> - </question> - - <answer> - <para>O formato padrão para senhas no FreeBSD - é a criptografia <emphasis>MD5</emphasis>. Esse - padrão é considerado mais seguro do que os - formatos tradicionais de senhas Unix, que normalmente eram - baseados no algorítimo <emphasis>DES</emphasis>. O - FreeBSD ainda pode trabalhar com senhas em formato DES - caso você precise compartilhá-las com - sistemas que ainda armazenam suas senhas no formato antigo - - e menos seguro - dos sistemas Unix originais (para isso - você terá que instalar a - distribuição <quote>crypto</quote> via - sysinstall ou apartir do código fonte). Instalando - as bibliotecas crypto será possivel utilizar outros - tipos de criptografia, como o formato Blowfish, que - é ainda mais seguro do que o MD5. A - definição de qual codificação - utilizar é definida no campo - <quote>passwd_format</quote> do arquivo de - configurações de login, o - <filename>/etc/login.conf</filename>. Esse campo deve ter - o valor <quote>des</quote>, <quote>blf</quote> (caso suas - bibliotecas estejam disponíveis) ou - <quote>md5</quote>. Veja a página de manuais do - &man.login.conf.5; para maiores - informações.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="boot-floppy-hangs"> - <para>Por que o disco de inicialização - (<foreignphrase>boot</foreignphrase>) inicia, mas trava na - tela <literal>Probing Devices...</literal>?</para> - </question> - - <answer> - - <para>Se você tem um drive Zip IDE ou um Jaz conectado - ao seu computador, remova-o e tente de novo. A - inicialização - (<foreignphrase>boot</foreignphrase>) de - instalação do sistema se confunde as vezes - quando esses dispositivos estão disponíveis - no computador. Depois da instalação os - drives são reconhecidos e controlados normalmente. - Provavelmente - esperamos - esse problema será - corrigido nas próximas versões.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="panic-on-install-reboot"> - <para>Por que ocorre o erro <errorname>panic: can't mount - root</errorname>, quando eu reinicio o sistema, depois - de tê-lo instalado.</para> - </question> - - <answer> - <para>Esse problema costuma ocorrer por conta de uma pequena - confusão entre os blocos do setor de - inicialização - (<foreignphrase>boot</foreignphrase>) do disco, e as - definições de disco no - <foreignphrase>kernel</foreignphrase>. É um erro - típico apenas de sistemas com dois discos IDE, - quando os mesmos estão definidos como disco mestre - e escravo, mas em controladoras distintas, e com o FreeBSD - instalado na controladora secundária. Os blocos de - inicialização - (<foreignphrase>boot</foreignphrase>) acham que o sistema - está instalado no segundo disco IDE (o segundo - disco reconhecido pela BIOS) enquanto o - <foreignphrase>kernel</foreignphrase> assume o primeiro - disco na segunda controladora IDE. Depois do - reconhecimento dos equipamentos do sistema o - <foreignphrase>kernel</foreignphrase> tenta montar a - partição raiz no disco que o bloco de - inicialização - (<foreignphrase>boot</foreignphrase>) acredita ser o disco - de inicialização - (<foreignphrase>boot</foreignphrase>), wd1, ao - invés do disco correto na segunda controladora, - wd2, e por isso o processo de inicialização - falha.</para> - - <para>Para corrigir esse problema, você tem três - opções:</para> - - <orderedlist> - <listitem> - <para>No FreeBSD 3.3 e posteriores, reincie o sistema e - aperte <keycap>Enter</keycap> na tela <literal>Booting - kernel in 10 seconds; hit [Enter] to - interrupt</literal>. Você será - direcionado ao <literal>boot loader</literal>.</para> - - <para>Depois, digite <literal> set - root_disk_unit="disk_number"</literal>. - <replaceable>disk_number</replaceable> deverá - ser <literal>0</literal> se o FreeBSD estiver - instalado como mestre na primeira controladora IDE, - <literal>1</literal> se for o escravo na primeira - controladora, <literal>2</literal> se for o mestre da - segunda controladora IDE, e <literal>3</literal> se - for o escravo na segunda controladora.</para> - - <para>Depois digite <literal>boot</literal>, e seu sistema deve ser iniciado corretamente.</para> - - <para>Para tornar essa alteração - permanente, (para que você não tenha que - digitar isso na mão toda vez que seu FreeBSD - tiver que reiniciar) basta colocar a linha <literal> - root_disk_unit="disk_number"</literal> - no arquivo - <filename>/boot/loader.conf.local</filename>.</para> - </listitem> - - <listitem> - <para>Se você estiver usando o FreeBSD 3.2 ou - alguma versão anterior, digite - <literal>1:wd(2,a)kernel</literal> na prompt de - inicialização do sistema e aperte - <keycap>Enter</keycap>. Se o sistema iniciar - normalmente, execute o comando <command>echo - "1:wd(2,a)kernel" > /boot.config</command> para - tornar essa alteração permanente.</para> - </listitem> - - <listitem> - <para>Mude o disco com o FreeBSD para primeira - controladora IDE.</para> - </listitem> - - <listitem> - <para><link xlink:href="../handbook/kernelconfig.html">Recompile o - <foreignphrase>kernel</foreignphrase></link>, - altere as linhas de configuração wd - para: </para> - - <programlisting>controller wdc0 at isa? port "IO_WD1" bio irq 14 vector wdintr -disk wd0 at wdc0 drive 0 -# disk wd1 at wdc0 drive 1 # comment out this line - -controller wdc1 at isa? port "IO_WD2" bio irq 15 vector wdintr -disk wd1 at wdc1 drive 0 # change from wd2 to wd1 -disk wd2 at wdc1 drive 1 # change from wd3 to wd2</programlisting> - - <para>E instale o novo - <foreignphrase>kernel</foreignphrase>. Se você - mudou seu disco e quer voltar ele para - configuração original, mude a ordem - deles no PC e reinicie o sistema. Seu sistema deve - iniciar com sucesso.</para> - </listitem> - </orderedlist> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="memory-limits"> - <para>Quais são as limitações de - memória?</para> + <para>Devo usar senhas DES, Blowfish ou MD5 e como eu especÃfico qual tipo meus usuários irão receber?</para> </question> <answer> - <para>A limitação de memória é - de 4 gigabytes. Essa definição foi testada, - veja a <link xlink:href="ftp://ftp.cdrom.com/archive-info/configuration">configuração - do wcarchive</link> para obter mais detalhes. Se - você pretende instalar essa quantidade de - memória no FreeBSD, seja cuidadoso. Dê - preferência para memórias ECC e reduza a - capacidade de carga usando modules de memória de 9 - chips, ai invés dos módulos de 18 - chips.</para> + <para>O FreeBSD usa <emphasis>SHA512</emphasis> por padrão. Senhas DES ainda estão disponÃveis para compatibilidade com sistemas operacionais que ainda usam um formato de senha menos seguro. O FreeBSD também suporta os formatos de senha Blowfish e MD5. O formato de senha que será usado para novas senhas é controlado pelo recurso de login <literal>passwd_format</literal> no arquivo <filename>/etc/login.conf</filename>, que recebe valores de <literal>des</literal>, <literal>blf</literal> (se estiverem disponÃveis) ou <literal>md5</literal>. Veja a página de manual <citerefentry><refentrytitle>login.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> para maiores informações sobre as capacidades de login.</para> </answer> </qandaentry> <qandaentry> <question xml:id="ffs-limits"> - <para>Qual a limitação para o sistema de - arquivos FFS?</para> + <para>Quais são os limites para sistemas de arquivos FFS?</para> </question> <answer> - <para>Para o sistema de arquivos FFS, o limite - máximo, na teoria é de 8 terabytes (para - blocos de 2K), ou 16TB para o tamanho padrão dos - blocos, que é de 8K. Na prática os limites - variam de 1TB a 4TB de acordo com algumas - modificações no sistema de arquivos.</para> - - <para>O tamanho máximo para um arquivo no sistema FFS - é de 1G de blocos (4TB) caso os blocos sejam de - 4K.</para> - - <table> - <title>Tamanho máximo dos arquivos.</title> - - <tgroup cols="5"> - <thead> - <row> - <entry>Tamanho do bloco</entry> - - <entry>2.2.7-stable</entry> - - <entry>3.0-current</entry> - - <entry>Funciona com</entry> - - <entry>Deve funcionar</entry> - </row> - </thead> - - <tbody> - <row> - <entry>4K</entry> - - <entry>4T-1</entry> - - <entry>4T-1</entry> - - <entry>4T-1</entry> - - <entry>>4T</entry> - </row> - - <row> - <entry>8K</entry> - - <entry>>32G</entry> - - <entry>8T-1</entry> - - <entry>>32G</entry> - - <entry>32T-1</entry> - </row> - - <row> - <entry>16K</entry> - - <entry>>128G</entry> - - <entry>16T-1</entry> - - <entry>>128G</entry> - - <entry>32T-1</entry> - </row> - - <row> - <entry>32K</entry> - - <entry>>512G</entry> - - <entry>32T-1</entry> - - <entry>>512G</entry> - - <entry>64T-1</entry> - </row> - - <row> - <entry>64K</entry> - - <entry>>2048G</entry> + <para>Para os sistemas de arquivos FFS, o tamanho máximo é praticamente limitado pela quantidade de memória necessária para executar o <citerefentry><refentrytitle>fsck</refentrytitle><manvolnum>8</manvolnum></citerefentry> no sistema de arquivo. O <citerefentry><refentrytitle>fsck</refentrytitle><manvolnum>8</manvolnum></citerefentry> requer um bit por fragmento, que com o tamanho de fragmento padrão de 4 KB equivale a 32 MB de memória por TB de disco. Isso significa que nas arquiteturas que limitam os processos userland a 2 GB (por exemplo, <trademark>i386</trademark>), o tamanho máximo do sistema de arquivos que o <citerefentry><refentrytitle> fsck</refentrytitle><manvolnum>8</manvolnum></citerefentry> permite operar é de ~ 60 TB.</para> - <entry>64T-1</entry> + <para>Se não houvesse um limite de memória para o <citerefentry><refentrytitle>fsck</refentrytitle><manvolnum>8</manvolnum></citerefentry>, o tamanho máximo do sistema de arquivos seria 2 ^ 64 (blocks) * 32 KB => 16 Exa * 32 KB => 512 ZettaBytes.</para> - <entry>>2048G</entry> - - <entry>128T-1</entry> - </row> - </tbody> - </tgroup> - </table> - - <para>Quando o sistema de arquivos possui blocos de 4K, o - triplo de blocos indiretores funcionam, e o limite - máximo do sistema de arquivos deveria ser atingido, - mas a triplicação dos blocos indiretores - (representados aproximadamente pelo resultado de 1K^3 + - 1K^2 + 1K) se limita ao valor (errôneo) de 1G-1 no - número de blocos do sistema de arquivos. O limite - do número de blocos deveria ser 2G-1. Mas por - causa de alguns problemas com o número dos blocos - no sistema de arquivos, esse valor não pode ser - alcançado quando o tamanho dos blocos no sistema de - arquivos é 4K.</para> - - <para>Em blocos com tamanho de 8K ou maiores, o limite geral - é de 2G-1 no número de blocos do sistema de - arquivos, exceto no FreeBSD -STABLE onde o triplo indireto - do número de blocos pode ser alcançado, de - forma que o limite máximo do sistema de arquivos - seja representado pela equação - ((blocksize/4)^2 + (blocksize/4)), e sob o -CURRENT onde a - exceção desse limite pode causar - problemas.</para> + <para>O tamanho máximo de um único arquivo FFS é de aproximadamente 2 PB com o tamanho de bloco padrão de 32 KB. Cada bloco de 32 KB pode apontar para 4096 blocos. Com blocos triplo indiretos, o cálculo é 32 KB * 12 + 32 KB * 4096 + 32 KB * 4096 ^ 2 + 32 KB * 4096 ^ 3. Aumentar o tamanho do bloco para 64 KB aumentará o tamanho máximo do arquivo por um fator de 16.</para> </answer> </qandaentry> <qandaentry> <question xml:id="archsw-readin-failed-error"> - <para>Por que a mensagem de erro - <errorname>archsw.readin.failed</errorname> me perturba - sempre, depois que eu recompilo e carrego um - <foreignphrase>kernel</foreignphrase> novo?</para> - </question> - - <answer> - <para>Você pode carregar um novo - <foreignphrase>kernel</foreignphrase> ao especifica-lo - diretamente no segundo estágio do processo de - inicialização, simplesmente apertando - qualquer tecla quando o pipe ( | ) aparecer, antes que o - loader seja carregado. Provavelmente você atualizou - todo o sistema operacional, mas recompilou apenas o - <foreignphrase>kernel</foreignphrase>, <emphasis>sem dar - um make world</emphasis>. Essa ação - é arriscada e não é suportada. - Faça um Make World!!!!</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="upgrade-3x-4x"> - <para>Como eu atualizo meu sistema da série 3.X para 4.X?</para> + <para>Por que recebo uma mensagem de erro, <errorname>readin failed</errorname> depois de compilar e inicializar um novo kernel?</para> </question> <answer> - <para>É <emphasis>altamente</emphasis> - recomendável que você use - <foreignphrase>snapshots</foreignphrase> binários - para fazer isso. <foreignphrase>Snapshots</foreignphrase> - binário do 4-STABLE podem ser encontrados em <link xlink:href="ftp://releng4.FreeBSD.org/">ftp://releng4.FreeBSD.org/</link>.</para> - - <para>Devido às inúmeras - alterações da série 3.X para - série 4-STABLE, uma atualização - direta, a partir dos fontes, corre grande riscos de - falhar. A atualização dos fontes pode ser - feita, inclusive desde as primórdias versões - 2.X até as mais recentes 4-STABLE ou até - mesmo 5-CURRENT, mas essa atualização deve - ser realizada em vários estágios. Primeiro, - atualize a sua série 3.X pra versão mais - recente, a 3-STABLE (<literal>RELENG_3</literal>). Depois - atualize para o 4.1.1-RELEASE - (<literal>RELENG_4_1_1_RELEASE</literal>). Finalmente, - tente atualizar para o 4-STABLE - (<literal>RELENG_4</literal>).</para> + <para>O world (aplicativos e bicliotecas do userland)e o kernel estão fora de sincronia. Isso não é suportado. Certifique-se de usar <command>make buildworld</command> e <command>make build-kernel</command> para atualizar o kernel.</para> - <para>Se você pretende atualizar seu sistema a partir - dos fontes, por gentileza, refira-se ao <link xlink:href="../handbook/cutting-edge.html">&a.ptbr.p.handbook;</link> - para maiores informações.</para> - - <caution> - <para>A atualização direta por meio dos - fontes nunca é aconselhável para - usuários inexperientes, a - atualização da série 3.X para 4.X - portanto é menos aconselhável ainda, - portanto, caso você não tenha - experiências com esse processo de - atualização, leia todas as - instruções disponíveis no - &a.ptbr.p.handbook; com cuidado.</para> - </caution> + <para>Inicialize o sistema especificando o kernel diretamente no segundo estágio, pressionando qualquer tecla quando o <literal>|</literal> aparecer antes que o utilitário de carga (loader) seja iniciado.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="security-profiles"> - <para>Onde estão essas - <quote>especificações de - segurança</quote>?</para> + <question xml:id="general-configuration-tool"> + <para>Existe uma ferramenta para realizar tarefas de configuração pós-instalação?</para> </question> <answer> - <para>Uma <quote>especificação de - segurança</quote> se refere a um conjunto de - configurações e de opções no - sistema, que tendem a garantir um nível - desejável de segurança, por meio de definir - ou desabilitar algumas opções e programas no - FreeBSD. Para maiores detalhes, veja a - seção de <link xlink:href="../handbook/install-post.html#SECURITYPROFILE"> - Especificação de Segurança</link> - no <link xlink:href="../handbook/install-post.html">capítulo de - pós-instalação</link> do - &a.ptbr.p.handbook;.</para> + <para>Sim. O <application>bsdconfig</application> fornece uma boa interface para configurar o FreeBSD na pós-instalação.</para> </answer> </qandaentry> </qandaset> @@ -2694,5250 +878,1385 @@ disk wd2 at wdc1 drive 1 # change from wd3 to wd2</programlisting <chapter xml:id="hardware"> <title>Compatibilidade de Hardware</title> - <qandaset> - <qandaentry> - <question xml:id="architectures"> - <para>O FreeBSD suporta outras arquiteturas além da - x86?</para> - </question> + <sect1 xml:id="compatibility-general"> + <title>Geral</title> - <answer> - <para>Sim. Atualmente o FreeBSD tem suporte para - arquiteturas Intel x86 e DEC (agora Compaq) Alpha. - Também existe um interesse conhecido no - <literal>port</literal> FreeBSD para plataforma SPARC. - Caso exista interesse em participar desse projeto ou saber - mais informações sobre - <literal>port</literal> para esta arquitetura, queira - juntar-se à lista de discussão do &a.sparc;. - As plataformas IA-64 e Power-PC foram recentemente - adicionadas à lista de arquiteturas que - serão futuramente suportadas; entre na lista do - &a.ia64; e/ou &a.ppc; para mais informações - sobre tais arquiteturas. Para discussões gerais - sobre outras arquiteturas, entre na lista de - discussão &a.platforms;.</para> + <qandaset> + <qandaentry> + <question xml:id="which-hardware-to-get"> + <para>Eu quero obter um componente de hardware para o meu sistema FreeBSD. Qual modelo/marca/tipo é o melhor?</para> + </question> - <para>Caso seu computador seja de uma arquitetura não - suportada pelo FreeBSD e precise de uma - solução imediata, nós sugerimos uma - olhada no <link xlink:href="http://www.netbsd.org/">NetBSD</link> ou <link xlink:href="http://www.openbsd.org/">OpenBSD</link>.</para> - </answer> - </qandaentry> + <answer> + <para>Isso é discutido continuamente nas listas de discussão do FreeBSD, mas isto é de se esperar, já que o hardware muda tão rapidamente. Leia as Notas de Hardware do FreeBSD <link xlink:href="https://www.FreeBSD.org/releases/11.2R/hardware.html">11.2</link> ou <link xlink:href="https://www.FreeBSD.org/releases/10.4R/hardware.html">10.4</link> e pesquise os <link xlink:href="https://www.FreeBSD.org/search/#mailinglists">arquivos</link> da lista de discussão antes de perguntar sobre o hardware mais recente e melhor. As chances são de que uma discussão sobre esse tipo de hardware tenha acontecido na semana passada.</para> - <qandaentry> - <question xml:id="which-hardware-to-get"> - <para>Preciso adquirir um novo hardware para um sistema com - FreeBSD. Qual o melhor modelo/marca/tipo?</para> - </question> + <para>Antes de comprar um laptop, verifique os arquivos da <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-mobile">lista de discussão sobre computadores portáteis FreeBSD</link> e da <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-questions">lista de discussão de questões gerais do FreeBSD</link>, ou possivelmente uma lista de discussão especÃfica para um tipo especÃfico de hardware.</para> + </answer> + </qandaentry> - <answer> - <para>Essa é uma discussão tradicional nas - listas do FreeBSD. Partindo do princípio que os - tipos de equipamentos e suas características - alteram-se de forma muita rápida, e que nós - tentamos suportar essas mudanças e torná-las - suportadas, é <emphasis>fortemente - recomendado</emphasis> que você sempre leia as - <link xlink:href="&rel.current.hardware;">Notas de - Hardware</link> e faça uma busca nos <link xlink:href="http://www.freebsd.org/search/#mailinglists">histórico - das listas de discussão</link> antes de - perguntar sobre os melhores e mais novos equipamentos - disponíveis. É muito provável que as - informações que você quer sobre - determinado equipamento tenham sido discutidas há - menos de uma semana.</para> + <qandaentry> + <question xml:id="memory-upper-limitation"> + <para>Quais são os limites para a memória? O FreeBSD suporta mais de 4 GB de memória (RAM)? Mais de 16 GB? Mais de 48 GB?</para> + </question> - <para>Caso você esteja procurando - informações sobre - <foreignphrase>laptops</foreignphrase>, verifique o - histórico da lista FreeBSD-mobile. Do - contrário, o histórico da FreeBSD-questions - será o mais indicado, ou de alguma lista - específica sobre o tipo de hardware em - questão.</para> - </answer> - </qandaentry> + <answer> + <para>O FreeBSD como sistema operacional geralmente suporta tanta memória fÃsica (RAM) quanto a disponÃvel na plataforma em que está rodando. Tenha em mente que plataformas diferentes têm limites diferentes para a memória; por exemplo <trademark>i386</trademark> sem <acronym>PAE</acronym> suporta no máximo 4 GB de memória (e geralmente menos que isso por causa do espaço de endereçamento PCI) e <trademark>i386</trademark> com PAE suporta no máximo 64 GB de memória. A partir do FreeBSD 10, as plataformas AMD64 suportam até 4 TB de memória fÃsica.</para> + </answer> + </qandaentry> - <qandaentry> - <question xml:id="supported-hard-drives"> - <para>Que tipos de discos rígido o FreeBSD - suporta?</para> - </question> + <qandaentry> + <question xml:id="memory-i386-over-4gb"> + <para>Por que o FreeBSD reporta menos de 4 GB de memória quando instalado em uma máquina <trademark>i386</trademark>?</para> + </question> - <answer> - <para>O FreeBSD suporta discos EIDE e SCSI (com alguma - controladora compatível; veja a próxima - pergunta) e todos os outros discos que usam a interface de - controle original da <quote>Western Digital</quote> (MFM, - RLL, ESDI, e é claro IDE). Algumas controladoras - ESDI que usam interfaces de controle proprietária - não funcionarão no FreeBSD: mude para - controladoras do tipo WD1002/3/6/7 ou algum clone dessa - interface.</para> - </answer> - </qandaentry> + <answer> + <para>O espaço total de endereços nas máquinas <trademark>i386</trademark> é de 32 bits, o que significa que no máximo 4 GB de memória são endereçáveis ​​(podem ser acessados). Além disso, alguns endereços nesse intervalo são reservados por hardware para diferentes finalidades, por exemplo, para usar e controlar dispositivos PCI, para acessar a memória de vÃdeo e assim por diante. Portanto, a quantidade total de memória utilizável pelo sistema operacional para o seu kernel e aplicativos é limitada a significativamente menos de 4 GB. Normalmente, temos de 3,2 GB a 3,7 GB de memória fÃsica máxima utilizável nessa configuração.</para> - <qandaentry> - <question xml:id="supported-scsi-controllers"> - <para>Quais controladoras SCSI são suportadas pelo - FreeBSD?</para> - </question> + <para>Para acessar mais de 3,2 GB a 3,7 GB de memória instalada (ou seja, até 4 GB, mas também mais de 4 GB), um ajuste especial chamado <acronym>PAE</acronym> deve ser usado. PAE significa Physical Address Extension e é uma maneira das CPUs x86 de 32 bits endereçarem mais de 4 GB de memória. Ele remapeia a memória que de outra forma seria sobreposta pelas reservas de endereço para dispositivos de hardware acima do intervalo de 4 GB e a usa como memória fÃsica adicional (veja <citerefentry><refentrytitle>pae</refentrytitle><manvolnum>4</manvolnum></citerefentry>). Usar o PAE tem alguns inconvenientes; este modo de acesso à memória é um pouco mais lento que o modo normal (sem PAE) e módulos carregáveis ​​(veja <citerefentry><refentrytitle>kld</refentrytitle><manvolnum>4</manvolnum> </citerefentry>) não são suportados. Isso significa que todos os drivers devem ser compilados estaticamente no kernel.</para> - <answer> - <para>Veja a lista completa de equipamentos suportados nas - <link xlink:href="&rel.current.hardware;">Notas de - Hardware</link> atuais.</para> - </answer> - </qandaentry> + <para>A maneira mais comum de ativar o PAE é compilar um novo kernel com o arquivo especial de configuração do kernel, chamado <filename>PAE</filename>, que já está configurado para compilar um kernel seguro. Observe que algumas entradas neste arquivo de configuração do kernel são muito conservadoras e alguns drivers marcados como não prontos para serem usados ​​com o PAE na verdade são possÃveis de serem utilizados. Uma regra básica é que, se o driver for utilizável em arquiteturas de 64 bits (como o AMD64), ele também poderá ser usado com o PAE. Ao criar um arquivo de configuração de kernel personalizado, o suporte ao PAE pode ser ativada adicionando a seguinte linha:</para> - <qandaentry> - <question xml:id="supported-cdrom-drives"> - <para>Quais drives de CDROM são suportados pelo - FreeBSD?</para> - </question> + <programlisting>options PAE</programlisting> - <answer> - <para>Quaisquer drives SCSI ligados à controladoras - suportadas são controladas pelo FreeBSD.</para> + <para>O PAE não é muito usado atualmente porque a maioria dos novos hardwares x86 também suporta a execução no modo de 64 bits, conhecido como AMD64 ou <trademark class="registered">Intel</trademark>64. Ele tem um espaço de endereçamento muito maior e não precisa tais ajustes. O FreeBSD suporta o AMD64 e é recomendado que esta versão do FreeBSD seja usada no lugar da versão <trademark>i386</trademark> se forem necessários 4 GB ou mais de memória.</para> + </answer> + </qandaentry> + </qandaset> + </sect1> - <para>As seguintes interfaces proprietárias de CDROM - também são suportadas:</para> + <sect1 xml:id="compatibility-processors"> + <title>Arquiteturas e Processadores</title> - <itemizedlist> - <listitem> - <para>Mitsumi LU002 (8bits), LU005 (16bits) e FX001D - (16bits velocidade 2x (2x Speed)).</para> - </listitem> + <qandaset> + <qandaentry> + <question xml:id="architectures"> + <para>O FreeBSD suporta arquiteturas diferentes do x86?</para> + </question> - <listitem> - <para>Sony CDU 31/33A.</para> - </listitem> + <answer> + <para>Sim. O FreeBSD divide o suporte em vários nÃveis. Arquiteturas de Tier 1, como i386 ou amd64; são totalmente suportados. Tiers 2 e 3 são suportados com base no melhor esforço. Uma explicação completa do sistema de tiers está disponÃvel no <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/articles/committers-guide/archs.html">Guia dos Committers.</link></para> - <listitem> - <para>CDROM Sound Blaster não-SCSI.</para> - </listitem> + <para>Uma lista completa de arquiteturas suportadas pode ser encontrada na <link xlink:href="https://www.FreeBSD.org/platforms/">páginas de plataformas.</link></para> + </answer> + </qandaentry> - <listitem> - <para>CDROM Matsushita/Panasonic.</para> - </listitem> + <qandaentry> + <question xml:id="smp-support"> + <para>O FreeBSD suporta o Multiprocessamento Simétrico (SMP)?</para> + </question> - <listitem> - <para>CDROMs IDE compatíveis com o padrão - ATAPI.</para> - </listitem> - </itemizedlist> + <answer> + <para>O FreeBSD suporta multiprocessadores simétricos (SMP) em todas as plataformas não-embarcadas (por exemplo, i386, amd64, etc.). O SMP também é suportado em kernels arm e MIPS, embora algumas CPUs possam não suportar isso. A implementação do SMP do FreeBSD usa o bloqueio refinado, e o desempenho escala quase linearmente com o número de CPUs.</para> - <para>Todo equipamento não-SCSI é - reconhecidamente mais lento do que os SCSI, e alguns - drives de CDROM ATAPI podem não funcionar - corretamente.</para> + <para>A página de manual do <citerefentry><refentrytitle>smp</refentrytitle><manvolnum>4</manvolnum></citerefentry> tem maiores detalhes.</para> + </answer> + </qandaentry> - <para>A partir da versão 2.2, todos os CDROM do - FreeBSD distribuídos pela FreeBSD Mall podem ser - iniciados (booting) diretamente pela unidade de CD.</para> - </answer> - </qandaentry> + <qandaentry> + <question xml:id="microcode"> + <para>O que é microcódigo? Como eu instalo as atualizações de microcódigo da <trademark class="registered">Intel</trademark>?</para> + </question> - <qandaentry> - <question xml:id="supported-cdrw-drives"> - <para>Quais drives de CD-RW são suportados pelo - FreeBSD?</para> - </question> + <answer> + <para>Microcódigo é um método de implementar programaticamente instruções de nÃvel de hardware. Isso permite que os bugs da CPU sejam corrigidos sem a necessidade de substituir fisicamente o chip.</para> - <answer> - <para>O FreeBSD suporta qualquer tipo de unidade CD-RW ou - CD-R IDE compatíveis com o padrão ATAPI. No - FreeBSD 4.0 e posteriores, leia a página de manual - do &man.burncd.8;.Em versões anteriores, veja os - exemplos de utilização desses equipamentos - em <filename>/usr/share/examples/atapi</filename>.</para> + <para>Instale o <package>sysutils/devcpu-data</package> e adicione:</para> - <para>O FreeBSD também suporta qualquer drive de CD-R - ou CD-RW do tipo SCSI. Instale o aplicativo - <command>cdrecord</command> a partir da - coleção de <literal>ports</literal> ou como - pacote, e tenha certeza de ter o device - <filename>pass</filename> compilado no seu - <foreignphrase>kernel</foreignphrase>.</para> - </answer> - </qandaentry> + <programlisting>microcode_update_enable="YES"</programlisting> - <qandaentry> - <question xml:id="zip-support"> - <para>O FreeBSD suporta ZIP Drives?</para> - </question> + <para>no <filename>/etc/rc.conf</filename></para> + </answer> + </qandaentry> + </qandaset> + </sect1> - <answer> - <para>O FreeBSD suporta ZIP Drives do tipo SCSI, é - claro. Essa unidade deve ser configurada apenas nos SCSI - ID números 5 ou 6, mas se a sua BIOS tem suporte - à inicializãço(boot) pela unidade - SCSI, essa característica pode ser usada sem - problemas. Não está claro exatamente quais - adaptadores SCSI suportam a característica de - inicializãço(boot) em IDs diferentes de 0 ou - 1, portanto será necessário consultar o - manual do seu equipamento para obter - informações mais precisas sobre esse - recurso.</para> + <sect1 xml:id="compatibility-drives"> + <title>Discos, Unidades de Fita e Unidades de CD e DVD</title> - <para>Os ZIP Drives padrão ATAPI (IDE) são - suportados pelo FreeBSD desde a versão 2.2.6 e em - todas as posteriores.</para> + <qandaset> + <qandaentry> + <question xml:id="supported-hard-drives"> + <para>Que tipo de disco o FreeBSD suporta?</para> + </question> - <para>O FreeBSD tem suporte ainda a ZIP Drives de Porta - Paralela desde a versão 3.0. Caso seu sistema seja - dessa versão ou superior, verifique o suporte a - <filename>scbus0</filename>, - <filename>da0</filename>, - <filename>ppbus0</filename>, - <filename>vp0</filename> no seu - <foreignphrase>kernel</foreignphrase> (o - <foreignphrase>kernel</foreignphrase> GENERIC tem todos - esses suportes, exceto à device - <filename>vp0</filename>). Com esses suportes - presentes no <foreignphrase>kernel</foreignphrase>, o - drive de Porta Paralela deve estar disponível em - <filename>/dev/da0s4</filename>. Os discos ZIP podem - ser montados usando o comando <command>mount /dev/da0s4 - /mnt</command> OU (discos formatados como DOS) - <command>mount_msdos /dev/da0s4 /mnt</command>, como - é de costume.</para> + <answer> + <para>O FreeBSD suporta unidades EIDE, SATA, SCSI e SAS (com um controlador compatÃvel; veja a próxima seção), e todas as unidades usando a interface original da <quote>Western Digital</quote> (MFM, RLL, ESDI e, é claro, IDE). Alguns controladores ESDI que usam interfaces proprietárias podem não funcionar: use interfaces e clones WD1002/3/6/7.</para> + </answer> + </qandaentry> - <para>Verifique também o <link linkend="jaz"><literal>FAQ</literal> sobre discos - removíveis</link> disponível ainda nesse - capítulo, e <link linkend="disklabel">as notas - sobre <quote>formatação</quote></link> no - capítulo de Administração.</para> - </answer> - </qandaentry> + <qandaentry> + <question xml:id="supported-scsi-controllers"> + <para>Quais controladores SCSI ou SAS são suportados?</para> + </question> - <qandaentry> - <question xml:id="jaz-zip-removable-support"> - <para>O FreeBSD suporta discos JAZ, EZ ou outras unidades - removíveis?</para> - </question> + <answer> + <para>Veja a lista completa em Notas de Hardware para o FreeBSD <link xlink:href="https://www.FreeBSD.org/releases/11.2R/hardware.html">11.2</link> ou <link xlink:href="https://www.FreeBSD.org/releases/10.4R/hardware.html">10.4</link>.</para> + </answer> + </qandaentry> - <answer> - <para>Fora a versão IDE dos discos EZ, os outros - discos são todos do tipo SCSI, e portanto devem - todos ser reconhecidos como discos SCSI no FreeBSD. O - drive EZ tipo IDE deve ser reconhecido como disco - IDE.</para> + <qandaentry> + <question xml:id="tape-support"> + <para>Quais tipos de unidades de fita são suportados?</para> + </question> - <para><anchor xml:id="jaz"/>Não há uma certeza - quanto à forma que o FreeBSD trata uma - alteração de mídia enquanto o sistema - está em pleno uso, então é - necessário desmontar a unidade antes de trocar de - disco e garantir que qualquer unidade externa esteja - ligada quando o sistema for bootado, de forma que o - FreeBSD possa reconhecê-las.</para> + <answer> + <para>O FreeBSD suporta todas as interfaces de fita SCSI padrão.</para> + </answer> + </qandaentry> - <para>Veja essa <link linkend="disklabel">nota sobre - <quote>formatação</quote></link>.</para> - </answer> - </qandaentry> + <qandaentry> + <question xml:id="tape-changer-support"> + <para>O FreeBSD suporta trocadores de fita (tape changers)?</para> + </question> - <qandaentry> - <question xml:id="multiport-serial-support"> - <para>Que dispositivos seriais de múltiplas portas - são suportados pelo FreeBSD?</para> - </question> + <answer> + <para>O FreeBSD suporta trocadores SCSI usando o dispositivo <citerefentry><refentrytitle>ch</refentrytitle><manvolnum>4</manvolnum></citerefentry> e o comando <citerefentry><refentrytitle>chio</refentrytitle><manvolnum>1</manvolnum></citerefentry>. Os detalhes de como controlar o trocador podem ser encontrados em <citerefentry><refentrytitle>chio</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para> - <answer> - <para>Existe uma lista dessas unidades na - seção de <link xlink:href="../handbook/install.html#INSTALL-MISC">Dispositivos - Diversos</link> do &a.ptbr.p.handbook;.</para> + <para>Embora o <application>AMANDA</application> e alguns outros produtos já entendam os trocadores, outros aplicativos só sabem como mover uma fita de um ponto para outro. Nesse caso, rastreie em qual slot uma fita está e para qual slot a fita que está atualmente na unidade precisa voltar.</para> + </answer> + </qandaentry> - <para>Alguns dispositivos clones parecem também - funcionar normalmente no sistema, em especial equipamentos - que se dizem ser AST compatíveis.</para> + <qandaentry> + <question xml:id="supported-cdrom-drives"> + <para>Quais drives de CD-ROM e CD-RW são suportados pelo FreeBSD?</para> + </question> - <para>Verifique a página de manual do &man.sio.4; para - obter mais informações quanto à - configuração desses dispositivos.</para> - </answer> - </qandaentry> + <answer> + <para>Qualquer unidade SCSI conectada a um controlador suportado é suportada. A maioria dos CD-ROMs IDE compatÃveis com ATAPI é suportada.</para> - <qandaentry> - <question xml:id="usbkbd"> - <para>O FreeBSD suporta meu teclado USB?</para> - </question> + <para>O FreeBSD suporta qualquer drive IDE CD-R ou CD-RW compatÃvel com ATAPI.</para> - <answer> - <para>O suporte a dispositivos USB foi adicionado no FreeBSD - desde a versão 3.1. Contudo, na versão 3.1, - o suporte ainda é muito preliminar, e alguns - equipamentos podem não funcionar antes da - versão 3.2. Caso você queira usar o suporte - a teclados USB, tente o seguinte.</para> + <para>O FreeBSD também suporta qualquer unidade de CD-R ou CD-RW SCSI. Instale o port ou pacote do <package> sysutils/cdrtools</package> e, em seguida, use o <command> cdrecord </command>.</para> + </answer> + </qandaentry> + </qandaset> + </sect1> - <procedure> - <step> - <para>No FreeBSD 3.2 ou posterior.</para> - </step> + <sect1 xml:id="compatibility-kbd-mice"> + <title>Teclados e Mouses</title> - <step> - <para>Adicione as seguintes linhas no arquivo de - configuração do seu - <foreignphrase>kernel</foreignphrase>, e - recompile-o.</para> - - <programlisting>device uhci -device ohci -device usb -device ukbd -options KBD_INSTALL_CDEV</programlisting> - - <para>Em versões anteriores à 4.0, - use:</para> - - <programlisting>controller uhci0 -controller ohci0 -controller usb0 -controller ukbd0 -options KBD_INSTALL_CDEV</programlisting> - </step> + <qandaset> + <qandaentry> + <question xml:id="moused"> + <para>É possÃvel usar um mouse fora do sistema X Window?</para> + </question> - <step> - <para>No diretório <filename>/dev</filename>, - crie os seguintes devices:</para> + <answer> + <para>O driver de console padrão, <citerefentry><refentrytitle>syscons</refentrytitle><manvolnum>4</manvolnum></citerefentry>, fornece a capacidade de usar um ponteiro de mouse em consoles de texto para cortar & colar o texto. Execute o daemon do mouse, <citerefentry><refentrytitle>moused</refentrytitle><manvolnum>8</manvolnum> </citerefentry> e ative o ponteiro do mouse no console virtual:</para> - <screen>&prompt.root; <userinput>cd /dev</userinput> -&prompt.root; <userinput>./MAKEDEV kbd0 kbd1</userinput></screen> - </step> + <screen><prompt>#</prompt> <userinput>moused -p /dev/xxxx -t yyyy</userinput> +<prompt>#</prompt> <userinput>vidcontrol -m on</userinput></screen> - <step> - <para>Edite o <filename>/etc/rc.conf</filename> e - adicione as seguintes linhas:</para> + <para>No qual <replaceable>xxxx</replaceable> é o nome do dispositivo de mouse e <replaceable>yyyy</replaceable> é o tipo de protocolo para o mouse. O daemon do mouse pode determinar automaticamente o tipo de protocolo da maioria dos mouses, exceto antigos mouses seriais. Especifique o protocolo <literal>auto</literal> para invocar a detecção automática. Se a detecção automática não funcionar, consulte a página de manual <citerefentry><refentrytitle>moused</refentrytitle><manvolnum>8</manvolnum></citerefentry> para obter uma lista dos tipos de protocolos suportados.</para> - <programlisting>usbd_enable="YES" -usbd_flags=""</programlisting> - </step> - </procedure> + <para>Para um mouse PS/2, adicione <literal>moused_enable="YES"</literal> ao arquivo <filename>/etc/rc.conf</filename> para iniciar o daemon do mouse no momento da inicialização. Além disso, para usar o daemon do mouse em todos os terminais virtuais em vez de apenas no console, adicione <literal>allscreens_flags="-m on"</literal> ao arquivo <filename>/etc/rc.conf</filename>.</para> - <para>Depois de reiniciado(rebooting) o sistema, o teclado - AT aparece como <filename>/dev/kbd0i</filename> e o - teclado USB aparece como - <filename>/dev/kbd1</filename> , se ambos estiverem - conectados ao sistema. Se estiver somente o teclado USB, - ele estará como - <filename>/dev/ukbd0</filename>.</para> + <para>Quando o daemon do mouse está em execução, o acesso ao mouse deve ser coordenado entre o daemon do mouse e outros programas, tais como o X Windows. Consulte o <acronym>FAQ</acronym> <link linkend="x-and-moused"> Por que meu mouse não funciona com o X?</link> para obter mais detalhes sobre esse problema.</para> + </answer> + </qandaentry> - <para>Caso queira usar o teclado USB no console, é - necessário informar explicitamente ao driver do - console que ele deve usar esse teclado. Isso pode ser - feito com o seguinte comando em tempo de - inicialização do sistema:</para> + <qandaentry> + <question xml:id="text-mode-cut-paste"> + <para>Como faço para cortar e colar texto com um mouse no console de texto?</para> + </question> - <screen>&prompt.root; <userinput>kbdcontrol -k /dev/kbd1 < /dev/ttyv0 > /dev/null</userinput></screen> + <answer> + <para>Não é possÃvel remover (cortar) dados usando o mouse. No entanto, é possÃvel copiar e colar. Quando o daemon do mouse estiver em execução, conforme descrito na <link linkend="moused">pergunta anterior</link>, mantenha pressionado o botão 1 (botão esquerdo) e mova o mouse para selecionar uma região do texto. Em seguida, pressione o botão 2 (botão do meio) para colar no cursor de texto. Pressionar o botão 3 (botão direito) irá <quote> estender </quote> a região selecionada do texto.</para> - <para>Note que se o teclado USB for o único teclado - disponível, ele será acessado via - <filename>/dev/kbd0</filename>, portanto a linha de - comando deve-se parecer com:</para> + <para>Se o mouse não tiver um botão do meio, é possÃvel emular um ou remapear os botões usando as opções do daemon do mouse. Consulte a página de manual <citerefentry><refentrytitle>moused</refentrytitle><manvolnum>8</manvolnum></citerefentry> para obter detalhes.</para> + </answer> + </qandaentry> - <screen>&prompt.root; <userinput>kbdcontrol -k /dev/kbd0 < /dev/ttyv0 > /dev/null</userinput></screen> + <qandaentry> + <question xml:id="mouse-wheel-buttons"> + <para>Meu mouse tem uma roda e botões extravagantes. Posso usá-los no FreeBSD?</para> + </question> - <para>O arquivo <filename>/etc/rc.i386</filename> é - um bom lugar para colocar o comando acima.</para> + <answer> + <para>A resposta é, infelizmente, <quote>Depende</quote>. Esses mouses com recursos adicionais exigem um driver especializado na maioria dos casos. A menos que o driver do dispositivo do mouse ou o programa do usuário tenha suporte especÃfico para o mouse, ele funcionará exatamente como um mouse padrão de dois ou três botões.</para> - <para>Depois de configurado, o teclado USB deve funcionar - também no ambiente X, sem nenhuma outra - configuração especial.</para> + <para>Para o possÃvel uso de rodas do mouse no ambiente X Window, consulte <link linkend="x-and-wheel">essa seção</link>.</para> + </answer> + </qandaentry> - <para>Conectar e desconectar o teclado USB com o sistema - ligado ainda não é um comportamento - completamente suportado, portando é - aconselhável ligar o teclado antes de iniciar o - sistema e apenas desligá-lo depois que o computador - estiver desligado, para evitar possíveis - problemas.</para> + <qandaentry> + <question xml:id="keyboard-delete-key"> + <para>Como eu uso a minha tecla de delete no <command>sh</command> e <command>csh</command>?</para> + </question> - <para>Veja a página de manual do &man.ukbd.4; para - maiores informações.</para> - </answer> - </qandaentry> + <answer> + <para>Para o <application>Bourne Shell</application>, inclua as seguintes linhas no arquivo <filename>~/.shrc</filename>. Veja <citerefentry><refentrytitle>sh</refentrytitle><manvolnum>1</manvolnum></citerefentry> e <citerefentry> <refentrytitle>editrc</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para> - <qandaentry> - <question xml:id="busmouse"> - <para>Eu tenho um mouse de barramento não tradicional. - Como o configuro?</para> - </question> + <programlisting>bind ^? ed-delete-next-char # para o console +bind ^[[3~ ed-delete-next-char # para o xterm</programlisting> - <answer> - <para>O FreeBSD suporta o barramento de mouse tradicional do - tipo InPort fabricados pela Microsoft, Logitech e ATI. O - suporte a esse periférico é compilado por - padrão no <foreignphrase>kernel</foreignphrase> - GENERIC do FreeBSD na versão 2.X, mas não - é suportado por padrão na versão 3.0 - e posteriores. Se você quer recompilar um - <foreignphrase>kernel</foreignphrase> com suporte ao - barramento de mouse, adicionando a linha ao seu arquivo de - configuração:</para> + <para>Para o <application>C Shell</application>, adicione as seguintes linhas ao <filename>~/.cshrc</filename>. Veja <citerefentry><refentrytitle>csh</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para> - <para>No FreeBSD 3.0 e anteriores, adicione:</para> + <programlisting>bindkey ^? delete-char # para o console +bindkey ^[[3~ delete-char # para o xterm</programlisting> - <programlisting>device mse0 at isa? port 0x23c tty irq5 vector mseintr</programlisting> + <para>Para maiores informações, consulte <link xlink:href="http://www.ibb.net/~anne/keyboard.html"> esta página </link>.</para> + </answer> + </qandaentry> + </qandaset> + </sect1> - <para>Na série 3.X do FreeBSD, a linha deve - ser:</para> + <sect1 xml:id="compatibility-other"> + <title>Outro hardware</title> - <programlisting>device mse0 at isa? port 0x23c tty irq5</programlisting> + <qandaset> + <qandaentry> + <question xml:id="es1370-silent-pcm"> + <para>Algum workaround para o problema de não sair nenhum som da minha placa de som <citerefentry><refentrytitle>pcm</refentrytitle><manvolnum>4</manvolnum></citerefentry>?</para> + </question> - <para>E na série 4.X e posteriores, a linha deve - ser:</para> + <answer> + <para>Algumas placas de som definem seu volume de saÃda como 0 em cada inicialização. Execute o seguinte comando toda vez que a máquina inicializar:</para> + + <screen><prompt>#</prompt> <userinput>mixer pcm 100 vol 100 cd 100</userinput></screen> + </answer> + </qandaentry> - <programlisting>device mse0 at isa? port 0x23c irq5</programlisting> + <qandaentry> + <question xml:id="power-management-support"> + <para>O FreeBSD suporta o gerenciamento de energia no meu laptop?</para> + </question> - <para>Barramentos de mouse costumam ter uma interface - dedicada que permite definir o endereço de - memória e a IRQ que a placa vai funcionar. Nesse - caso, refira-se ao manual do seu equipamento e à - página de manual do &man.mse.4; para maiores - informações.</para> - </answer> - </qandaentry> + <answer> + <para>O FreeBSD suporta os recursos <acronym>ACPI</acronym> encontrados em componentes modernos de hardware. Maiores informações podem ser encontradas em <citerefentry><refentrytitle>acpi</refentrytitle><manvolnum>4</manvolnum></citerefentry>.</para> + </answer> + </qandaentry> + </qandaset> + </sect1> + </chapter> + + <chapter xml:id="troubleshoot"> + <title>Solução de problemas</title> + <qandaset> <qandaentry> - <question xml:id="ps2mouse"> - <para>Como eu uso o meu mouse (<quote>mouse port</quote> ou - <quote>keyboard</quote>) PS/2?</para> + <question xml:id="pae"> + <para>Por que o FreeBSD está encontrando a quantidade errada de memória no hardware <trademark>i386</trademark>?</para> </question> <answer> - <para>Em versões posteriores ao 2.2.5, o - <foreignphrase>kernel</foreignphrase> do FreeBSD inclui - por padrão o suporte ao device - <filename>psm</filename>, que controlará seu - mouse PS/2 desde o momento de inicialização - do sistema.</para> - - <para>Caso seu FreeBSD seja 2.1.X ou similar, o suporte a - PS/2 pode ser incluído no - <foreignphrase>kernel</foreignphrase>, no momento da - instalação, ou mesmo depois desse processo, - com a opção <option>-c</option> na tela de - <command>boot:</command> do sistema. O suporte nesse caso - é desabilitado por padrão e por isso deve - ser explicitamente habilitado.</para> - - <para>Caso sua versão de FreeBSD seja antiga, - adicione a seguinte linha ao seu - <foreignphrase>kernel</foreignphrase> e - recompile-o:</para> - - <para>No FreeBSD 3.0 e anteriores, a linha é:</para> + <para>O motivo mais provável é a diferença entre endereços de memória fÃsica e endereços virtuais.</para> - <programlisting>device psm0 at isa? port "IO_KBD" conflicts tty irq 12 vector psmintr</programlisting> + <para>A convenção para a maioria dos hardwares de PC é usar a área de memória entre 3,5 GB e 4 GB para uma finalidade especial (geralmente para PCI). Este espaço de endereço é usado para acessar o hardware PCI. Como resultado real, a memória fÃsica não pode ser acessada por esse espaço de endereço.</para> - <para>No FreeBSD 3.1 e posteriores da mesma série, a - linha deve ser:</para> + <para>O que acontece com a memória que deveria aparecer nesse local depende do hardware. Infelizmente, alguns hardwares não fazem nada e a capacidade de usar estes últimos 500 MB de RAM é totalmente perdida.</para> - <programlisting>device psm0 at isa? tty irq 12</programlisting> + <para>Felizmente, a maioria dos hardwares faz o remapeamento da memória para um local mais alto, para que ela ainda possa ser usada. No entanto, isso pode causar alguma confusão ao observar as mensagens de inicialização.</para> - <para>No FreeBSD 4.0 e posteriores, a linha é:</para> + <para>Em uma versão de 32 bits do FreeBSD, a memória parece perdida, uma vez que ela será remapeada acima de 4 GB, uma área a qual um kernel de 32 bits não consegue acessar. Neste caso, a solução é construir um kernel habilitado para PAE. Veja a seção sobre os limites de memória para mais informações.</para> - <programlisting>device psm0 at atkbdc? irq 12</programlisting> - - <para>Veja a seção de <link xlink:href="../handbook/kernelconfig.html">configuração - do <foreignphrase>kernel</foreignphrase></link> no - &a.ptbr.p.handbook; caso você não tenha - experiência com a compilação do - <foreignphrase>kernel</foreignphrase>.</para> - - <para>Uma vez detectado o <filename>psm0</filename> - durante a inicialização - (<foreignphrase>boot</foreignphrase>) do seu sistema, - tenha certeza de que existe uma entrada - <filename>psm0</filename> no - <filename>/dev</filename>. Faça o seguinte:</para> - - <screen>&prompt.root; <userinput>cd /dev; sh MAKEDEV psm0</userinput></screen> - - <para>logado como usuário - <systemitem class="username">root</systemitem>.</para> + <para>Em uma versão de 64 bits do FreeBSD, ou quando o kernel estiver habilitado para PAE, o FreeBSD irá corretamente detectar e remapear a memória para que ela seja utilizável. Durante a inicialização, no entanto, pode parecer que o FreeBSD está detectando mais memória do que o sistema realmente possui, devido ao remapeamento descrito. Isso é normal e a memória disponÃvel será corrigida conforme o processo de inicialização for concluÃdo.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="moused"> - <para>É possível usar mouse de alguma forma, - fora do sistema X Windows?</para> + <question xml:id="signal11"> + <para>Por que meus programas morrem ocasionalmente com erros <errorname> Signal 11 </errorname>?</para> </question> <answer> - <para>Se estiver utilizando o driver padrão de - console, o syscons, pode-se usar o mouse para copiar & - colar texto. Execute o mouse daemon, - <command>moused</command>, para habilitar o mouse nos - consoles virtuais da seguinte forma:</para> - - <screen>&prompt.root; <userinput>moused -p /dev/xxxx -t yyyy</userinput> -&prompt.root; <userinput>vidcontrol -m on</userinput></screen> - - <para>Onde <replaceable>xxxx</replaceable> deve ser - substituído pelo nome de device do seu mouse e - <replaceable>yyyy</replaceable> pelo tipo de protocolo do - mesmo. Veja a página de manual do &man.moused.8; - para maiores informações quanto aos tipos de - protocolos suportados.</para> - - <para>É provável que você queira usar o - mouse daemon automaticamente, sempre que o FreeBSD for - iniciado. Na versão 2.2.1, defina as seguintes - variáveis, no arquivo - <filename>/etc/sysconfig</filename>.</para> + <para>Os erros de sinal 11 são causados ​​quando um processo tentou acessar a memória à qual o sistema operacional não concedeu acesso. Se algo assim está acontecendo em intervalos aparentemente aleatórios, comece a investigar a causa.</para> - <programlisting>mousedtype="yyyy" -mousedport="xxxx" -mousedflags=""</programlisting> + <para>Esses problemas geralmente podem ser atribuÃdos a:</para> - <para>Da versão 2.2.2 até a 3.0, defina as - seguintes variáveis no - <filename>/etc/rc.conf</filename>.</para> - - <programlisting>moused_type="yyyy" -moused_port="xxxx" -moused_flags=""</programlisting> - - <para>Da versão 3.1 em diante, caso você tenha - um mouse PS/2 é necessário apenas adicionar - a opção - <literal>moused_enable="YES"</literal> no - arquivo <filename>/etc/rc.conf</filename>.</para> - - <para>E se a intenção é usar o mouse em - todos os terminais virtuais ao invés de apenas no - console, insira a seguinte linha no - <filename>/etc/rc.conf</filename>.</para> - - <programlisting>allscreens_flags="-m on"</programlisting> - - <para>Desde a versão 2.2.6 do FreeBSD, o mouse daemon - é capaz de detectar o tipo de protocolo do mouse - automaticamente, a não ser que o dispositivo em - questão seja um mouse serial muito velho. Defina - <literal>auto</literal> para que o programa identifique o - protocolo do mouse automaticamente.</para> + <orderedlist> + <listitem> + <para>Se o problema está ocorrendo apenas em um aplicativo customizado especÃfico, é provavelmente um bug no código.</para> + </listitem> - <para>Quando o daemon está rodando, o acesso ao - dispositivo deve ser coordenado entre ele e qualquer outra - aplicação, como o X-Windows, por exemplo. - Leia uma <link linkend="x-and-moused">outra - pergunta</link> sobre esse assunto.</para> - </answer> - </qandaentry> + <listitem> + <para>Se é um problema com parte do sistema base do FreeBSD, também pode ser resultado de um código com bugs, mas na maioria das vezes esses problemas são encontrados e corrigidos muito antes que o publico em geral e que normalmente lê o <acronym> FAQ </acronym> usem essas partes do código (é para isso que -CURRENT existe).</para> + </listitem> + </orderedlist> - <qandaentry> - <question xml:id="text-mode-cut-paste"> - <para>Como eu copio e colo com o mouse em um console modo - texto?</para> - </question> + <para>Provavelmente não é um erro do FreeBSD se o problema ocorrer na compilação de um programa, mas sim da atividade que o compilador está realizando e que muda a cada vez.</para> - <answer> - <para>Uma vez configurado o mouse (<link linkend="moused">veja a pergunta anterior</link>), - aperte o botão 1 (botão esquerdo) do mouse e - mova o cursor por toda a região desejada, - selecionando o texto em questão. Depois, basta - apertar o botão 2 (do meio) ou o botão 3 - (direito) para colar o conteúdo selecionado - anteriormente.</para> + <para>Por exemplo, se <command>make buildworld</command> falhar ao tentar compilar <filename>ls.c</filename> para <filename>ls.o</filename> e, quando executado novamente, ele falhar no mesmo lugar, significa que o código está quebrado. Tente atualizar o código fonte e tente compilar novamente. Se a compilação falhar em outro lugar, é quase certo que a causa é um problema de hardware.</para> - <para>A partir da versão 2.2.6 o botão 2 cola - o texto copiado, enquanto o botão 3 ``extende'' a - região selecionada. Caso seu mouse não - tenha o botão do meio, é possível - remapear (ou emular) os botões do periférico - usando algumas opções específicas do - mouse daemon. Veja a página de manual do - &man.moused.8; para maiores detalhes.</para> - </answer> - </qandaentry> + <para>No primeiro caso, use um depurador como o <citerefentry><refentrytitle>gdb</refentrytitle><manvolnum>1</manvolnum></citerefentry> para localizar o ponto no programa que está tentando acessar um endereço falso e corrija-o.</para> - <qandaentry> - <question xml:id="usbmouse"> - <para>O FreeBSD suporta mouse USB?</para> - </question> + <para>No segundo caso, verifique qual peça de hardware está com defeito.</para> - <answer> - <para>No FreeBSD 3.1 existe um suporte preliminar à - recursos USB que não funciona muito bem dependendo - da situação. A partir da versão 4.0 - o FreeBSD suporta dispositivos USB por padrão. Caso - queira usar um mouse USB no FreeBSD 3.X, siga as seguintes - instruções.</para> + <para>As causas comuns disso incluem:</para> - <procedure> - <step> - <para>Atualize seu sistema para FreeBSD 3.2 ou - posterior.</para> - </step> + <orderedlist> + <listitem> + <para>Os discos rÃgidos podem estar superaquecidos: Verifique se os ventiladores ainda estão funcionando, pois o disco e outros componentes de hardware podem estar superaquecendo.</para> + </listitem> - <step> - <para>Adicione o seguinte suporte ao seu - <foreignphrase>kernel</foreignphrase>, e - recompile-o:</para> - - <programlisting>device uhci -device ohci -device usb -device ums</programlisting> - - <para>Em versões anteriores à 4.0 o - suporte à ser adicionado é:</para> - - <programlisting>controller uhci0 -controller ohci0 -controller usb0 -device ums0</programlisting> - </step> + <listitem> + <para>O processador está superaquecendo: pode ser porque o processador sofreu overclock ou o ventilador do processador pode ter parado de funcionar. Em ambos os casos, certifique-se de que o hardware esteja sendo utilizado de acordo com as condições especificadas pelo fabricante, pelo menos ao tentar resolver esse problema. Se não estiver, volte o clock para as configurações padrão.)</para> - <step> - <para>Entre no diretório - <filename>/dev</filename> e crie os devices - necessários:</para> + <para>Em relação ao overclocking, é muito mais barato ter um sistema lento do que um sistema frito que precisa ser substituÃdo! Além disso, a comunidade não é simpática a problemas em sistemas com overclock.</para> + </listitem> - <screen>&prompt.root; <userinput>cd /dev</userinput> -&prompt.root; <userinput>./MAKEDEV ums0</userinput></screen> - </step> + <listitem> + <para>Memória Errática: se vários módulos de memórias SIMMS/DIMMS estiverem instalados, retire-os e tente executar a máquina instalando cada SIMM ou DIMM individualmente para encontrar o modulo DIMM/SIMM problemático ou até mesmo encontrar uma combinação de módulos com problema.</para> + </listitem> - <step> - <para>Edite o <filename>/etc/rc.conf</filename> e - adicione as linhas:</para> - - <programlisting>moused_enable="YES" -moused_type="auto" -moused_port="/dev/ums0" -moused_flags="" -usbd_enable="YES" -usbd_flags=""</programlisting> - - <para>Veja a <link linkend="moused">seção - anterior</link> para uma discussão mais - detalhada sobre o moused.</para> - </step> + <listitem> + <para>Configurações over-otimizadas da placa-mãe: as configurações da BIOS e alguns jumpers da placa-mãe oferecem opções para definir vários intervalos de tempo. Os valores padrões geralmente são suficientes, mas, à s vezes, a configuração dos estados de espera na RAM para valores muito baixos, ou a configuração da opção <quote>RAM Speed: Turbo</quote> causará um comportamento estranho. Uma ideia válida é restaurar a configuração padrão da BIOS, depois é claro de anotar as configurações atuais.</para> + </listitem> - <step> - <para>Para configurar o mouse USB no X, edite o - <filename>XF86Config</filename> e, caso esteja usando - o XFree86 3.3.2 ou posterior, adicione as seguintes - linhas na seção - <emphasis>Pointer</emphasis>:</para> - - <programlisting>Device "/dev/sysmouse" -Protocol "Auto"</programlisting> - - <para>Caso esteja usando uma versão anterior do - Xfree86, adicione também na seção - <emphasis>Pointer</emphasis> as seguintes - linhas:</para> - - <programlisting>Device "/dev/sysmouse" -Protocol "SysMouse"</programlisting> - </step> - </procedure> + <listitem> + <para>Fonte com potência insuficiente para energizar a placa-mãe: Remova qualquer placa de I/O não utilizada, discos rÃgidos ou CD-ROMs, desconectando o cabo de alimentação deles para ver se a fonte de alimentação pode gerenciar uma carga menor. Ou utilize outra fonte de alimentação, de preferência uma com um pouco mais de potência. Por exemplo, se a fonte de alimentação atual é recomendada para uma carga de 250 Watts, tente uma que seja recomendada para uma carga de 300 Watts.</para> + </listitem> + </orderedlist> - <para>Leia também uma <link linkend="x-and-moused">outra pergunta</link> sobre o uso - do mouse em ambiente X.</para> + <para>Leia a seção sobre o <link linkend="signal11">Signal 11</link> para obter maiores explicações e a discussão sobre como um software ou hardware de teste de memória ainda pode deixar passar uma memória defeituosa. Existe uma extensa <acronym>FAQ</acronym> sobre o problema do SIG11 disponÃvel <link xlink:href="http://www.bitwizard.nl/sig11/">neste link</link>.</para> - <para>Conectar e desconectar o teclado USB com o sistema - ligado ainda não é um comportamento - completamente suportado, portando é - aconselhável ligar o teclado antes de iniciar o - sistema e apenas desligá-lo depois que o computador - estiver desligado, para evitar possíveis - problemas.</para> + <para>Por fim, se nada disso ajudou, trata-se possivelmente de um bug no FreeBSD. Siga <link linkend="access-pr">estas instruções</link> para enviar um relatório de problemas.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="mouse-wheel-buttons"> - <para>Eu tenho um mouse do tipo Wheel com uma rodinha e - botões adicionais. Posso usá-lo no - FreeBSD?</para> + <question xml:id="trap-12-panic"> + <para>Meu sistema trava com <errorname>Fatal trap 12: page fault in kernel mode</errorname> ou <errorname>panic:</errorname>, e mostra um monte de informações. O que devo fazer?</para> </question> <answer> - <para>A resposta, infelizmente é, - <quote>Depende</quote>. Esse tipo de mouse tem algumas - características especiais que requerem o uso de - <foreignphrase>drivers</foreignphrase> especiais na - maioria dos casos. A não ser que o device do seu - mouse tenha suporte específico, ou se a - aplicação em questão reconhecer esse - tipo de equipamento, ele irá funcionar simplesmente - como um mouse tradicional de dois ou três - botões.</para> - - <para>Mais informações sobre o uso de mouse do - tipo Wheel em ambiente X Windows, refira-se a essa <link linkend="x-and-wheel">seção</link>.</para> + <para>Os desenvolvedores do FreeBSD estão interessados ​​nesses erros, mas precisam de mais informações do que apenas a mensagem de erro. Copie a mensagem completa da falha. Em seguida, consulte a seção <acronym>FAQ</acronym> em <link linkend="kernel-panic-troubleshooting">kernel panics</link>, compile um kernel de depuração e obtenha um backtrace. Isso pode parecer difÃcil, mas não requer nenhuma habilidade de programação. Apenas siga as instruções.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="psmerr"> - <para>Por que meu mouse PS/2 do tipo Wheel fica louco, - pulando pela tela?</para> + <question xml:id="proc-table-full"> + <para>Qual é o significado do erro <errorname>maxproc limit exceeded by uid %i, please see tuning(7) and login.conf(5)</errorname>?</para> </question> <answer> - <para>O suporte ao mouse PS/2 no FreeBSD 3.2 e anteriores - é falho quanto a mouses do tipo Wheel, incluindo o - modelo M-S48 da Logitech e seus similares OEM. Aplique o - seguinte patch no arquivo - <filename>/sys/i386/isa/psm.c</filename> e recompile seu - <foreignphrase>kernel</foreignphrase>:</para> + <para>O kernel do FreeBSD permitirá que apenas um certo número de processos exista ao mesmo tempo. O número é baseado na variável <varname>kern.maxusers</varname> do <citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></citerefentry>. O valor da variável <varname>kern.maxusers</varname> também afeta vários outros limites dentro do kernel, como por exemplo os buffers de rede. Se a máquina estiver muito carregada, aumente o <varname>kern.maxusers</varname>. Isso aumentará esses outros limites do sistema além do número máximo de processos.</para> - <programlisting>Index: psm.c -=================================================================== -RCS file: /src/CVS/src/sys/i386/isa/Attic/psm.c,v -retrieving revision 1.60.2.1 -retrieving revision 1.60.2.2 -diff -u -r1.60.2.1 -r1.60.2.2 ---- psm.c 1999/06/03 12:41:13 1.60.2.1 -+++ psm.c 1999/07/12 13:40:52 1.60.2.2 -@@ -959,14 +959,28 @@ - sc->mode.packetsize = vendortype[i].packetsize; + <para>Para ajustar o valor da variável <varname>kern.maxusers </varname>, consulte a seção <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/configtuning-kernel-limits.html#kern-maxfiles">Limites de Arquivos / Processos</link> do Handbook. Apesar desta seção se referir a arquivos abertos, os mesmos limites se aplicam aos processos.</para> - /* set mouse parameters */ -+#if 0 -+ /* -+ * A version of Logitech FirstMouse+ won't report wheel movement, -+ * if SET_DEFAULTS is sent... Don't use this command. -+ * This fix was found by Takashi Nishida. -+ */ - i = send_aux_command(sc->kbdc, PSMC_SET_DEFAULTS); - if (verbose >= 2) - printf("psm%d: SET_DEFAULTS return code:%04x\n", unit, i); -+#endif - if (sc->config & PSM_CONFIG_RESOLUTION) { - sc->mode.resolution - = set_mouse_resolution(sc->kbdc, -- (sc->config & PSM_CONFIG_RESOLUTION) - 1); -+ (sc->config & PSM_CONFIG_RESOLUTION) - 1); -+ } else if (sc->mode.resolution >= 0) { -+ sc->mode.resolution -+ = set_mouse_resolution(sc->kbdc, sc->dflt_mode.resolution); -+ } -+ if (sc->mode.rate > 0) { -+ sc->mode.rate = set_mouse_sampling_rate(sc->kbdc, sc->dflt_mode.rate); - } -+ set_mouse_scaling(sc->kbdc, 1); - - /* request a data packet and extract sync. bits */ - if (get_mouse_status(sc->kbdc, stat, 1, 3) < 3) {</programlisting> - - <para>Em versões posteriores à 3.2, o suporte - deve funcionar.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="laptop-mouse-trackball"> - <para>Como eu uso o mouse/bolinha-de-rolagem/touchpad no meu - laptop?</para> - </question> - - <answer> - <para>Por gentileza, <link linkend="ps2mouse">leia a - pergunta anterior</link>. Verifique também a - <link xlink:href="http://www.FreeBSD.org/docs.html#PAO">página - de Computação Móvel</link> do - Projeto.</para> + <para>Se a máquina estiver levemente carregada, mas executando um número muito grande de processos, ajuste o valor do <varname>kern.maxproc</varname> definindo-o no arquivo <filename>/boot/loader.conf</filename>. O ajuste não terá efeito até que o sistema seja reinicializado. Para mais informações sobre o tuning de variáveis, consulte o manual do <citerefentry><refentrytitle>loader.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>. Se esses processos estiverem sendo executados por um único usuário, ajuste o <varname>kern.maxprocperuid</varname> para que fique menor em 1 unidade do novo valor do <varname>kern.maxproc</varname>. Ele deve ser pelo menos uma unidade menor porque o programa do sistema, <citerefentry><refentrytitle>init</refentrytitle><manvolnum>8</manvolnum></citerefentry>, deve estar sempre em execução.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="tape-support"> - <para>Que tipos de dispositivos de fitas são - suportados pelo FreeBSD?</para> + <question xml:id="remote-fullscreen"> + <para>Por que aplicativos de tela cheia em máquinas remotas se comportam de forma errática?</para> </question> <answer> - <para>O FreeBSD suporta dispositivos de fitas do tipo SCSI e - QIC-36 (com interface QIC-02). Tal suporte inclui drives - 8-mm (também conhecidos como Exabyte) e unidades de - fita DAT.</para> - - <para>Alguns dispositivos 8-mm mais antigos não - são compatíveis com o padrão SCSI-2 e - por isso podem não funcionar bem no FreeBSD.</para> - </answer> - </qandaentry> + <para>A máquina remota pode estar configurando o tipo de terminal para algo diferente de <literal> xterm </literal>, que é o tipo requerido pelo console do FreeBSD. Alternativamente, o kernel pode ter valores errados para a largura e a altura do terminal.</para> - <qandaentry> - <question xml:id="tape-changer-support"> - <para>O FreeBSD suporta bibliotecas de fitas?</para> - </question> + <para>Verifique se o valor da variável de ambiente <envar>TERM</envar> é <literal>xterm</literal>. Se a máquina remota não suportar isso, tente<literal>vt100</literal>.</para> - <answer> - <para>O FreeBSD suporta alternadores (também - conhecidos com carrosséis) SCSI, usando o device - &man.ch.4; e o comando &man.chio.1;. Os detalhes - relativos a como controlar o alternador de fitas podem ser - encontrados na página de manual do - &man.chio.1;.</para> + <para>Execute o <command>stty -a</command> para verificar o que o kernel acha que são as dimensões do terminal. Se estiverem incorretos, eles podem ser alterados executando <command>stty rows<replaceable>RR</replaceable>cols<replaceable>CC</replaceable></command>.</para> - <para>Caso você não esteja usando o - <application>AMANDA</application> ou qualquer outro - produto que entenda o funcionamento dos alternadores, - lembre-se que tal equipamento simplesmente alterna a - posição da fita, de um compartimento para - outro, e portanto deve-se saber em qual compartimento a - fita está e para qual ela deve voltar.</para> + <para>Alternativamente, se a máquina do cliente tiver o <package>x11/xterm</package> instalado, a execução do <command>resize</command> consultará o terminal para as dimensões corretas e as definirá.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="sound-card-support"> - <para>Quais placas de som são suportadas pelo - FreeBSD?</para> + <question xml:id="connection-delay"> + <para>Por que demora tanto para conectar ao meu computador via <command>ssh</command> ou <command>telnet</command>?</para> </question> <answer> - <para>O FreeBSD suporta as placas SoundBlaster, SoundBlaster - Pro, SoundBlaster 16, Pro Audio Spectrum 16, AdLib e - Gravis UltraSound. Existe ainda um suporte - limitado, - é verdade - para as placas MPU-401 e placas MIDI - compatíveis. Placas de som que estiverem em - conformidade com a especificação MSS - (Microsoft Sound System) também são - suportadas pela controladora pcm do - <foreignphrase>kernel</foreignphrase>.</para> - - <note> - <para>Esse suporte é específico para apenas - som! Exceto no caso das placas SoundBlaster, o suporte - não inclui controle de joysticks, CDROMs ou SCSI. - A interface SCSI da SoundBlaster e alguns CDROMs - não-SCSI são suportados, mas o sistema - não pode iniciar(booting) a partir desses - dispositivos.</para> - </note> - </answer> - </qandaentry> + <para>O sintoma: há um longo atraso entre o momento em que a conexão TCP é estabelecida e a hora em que o software cliente solicita uma senha (ou, no caso do <citerefentry><refentrytitle>telnet</refentrytitle><manvolnum>1</manvolnum></citerefentry>, quando um prompt de login aparece).</para> - <qandaentry> - <question xml:id="es1370-silent-pcm"> - <para>Qual a solução para falta de som da - minha placa es1370 com o controlador pcm?</para> - </question> + <para>O problema: mais provável do que não, o atraso é causado pelo software do servidor tentando resolver o endereço IP do cliente em um nome de host. Muitos servidores, incluindo os servidores <application>Telnet</application> e <application>SSH</application> que vêm com o FreeBSD, fazem isso para armazenar o nome do host em um arquivo de log para referência futura pelo administrador.</para> - <answer> - <para>Basta aumentar o volume do seu som ;-) Use os - seguintes comandos, sempre que o sistema iniciar:</para> + <para>A solução: se o problema ocorrer sempre, independente do servidor ao que o computador cliente se conecta, o problema está no cliente. Se o problema ocorrer apenas quando o computador cliente se conecta a um determinado servidor, o problema está no servidor.</para> - <screen>&prompt.root; <userinput>mixer pcm 100 vol 100 cd 100</userinput></screen> - </answer> - </qandaentry> + <para>Se o problema for com o cliente, a única solução é corrigir o DNS para que o servidor possa resolvê-lo. Se isso estiver ocorrendo em uma rede local, considere um problema no servidor e continue lendo. Se isso estiver ocorrendo na Internet, entre em contato com seu ISP.</para> - <qandaentry> - <question xml:id="network-cards"> - <para>Quais placas de rede o FreeBSD suporta?</para> - </question> + <para>Se o problema for com um servidor em uma rede local, configure o servidor para resolver as consultas de endereço para nome de host para o intervalo de endereços da rede local. Veja as páginas de manual para o <citerefentry><refentrytitle>hosts</refentrytitle><manvolnum>5</manvolnum></citerefentry> e o <citerefentry><refentrytitle>named</refentrytitle><manvolnum>8</manvolnum></citerefentry> para maiores informações. Se o problema for com um servidor na Internet, o problema pode ser que o resolver local do servidor não está funcionando corretamente. Para verificar se é isto, tente procurar outro host, como <systemitem>www.yahoo.com</systemitem>. Se isso não funcionar, este é o problema.</para> - <answer> - <para>Veja a seção de <link xlink:href="../handbook/install.html#INSTALL-NICS">Placas - Ethernet</link> do &a.ptbr.p.handbook; para uma lista - detalhada dos dispostivos suportados.</para> + <para>Após uma nova instalação do FreeBSD, também é possÃvel que as informações do domÃnio e do servidor de nomes estejam faltando no <filename>/etc/resolv.conf</filename>. Isso geralmente causará um atraso no <application>SSH</application>, já que a opção <literal>UseDNS</literal> é definida como <literal>yes</literal> por padrão no <filename>/etc/ssh/sshd_config</filename>. Se isso estiver causando o problema, preencha as informações ausentes no arquivo <filename>/etc/resolv.conf</filename> ou configure a opção <literal>UseDNS</literal> para <literal>no</literal> no arquivo <filename>sshd_config</filename> como uma solução temporária.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="no-math-coprocessor"> - <para>Eu não tenho um co-processador - matemático. Isso é ruim?</para> + <question xml:id="file-table-full"> + <para>Por que a mensagem <errorname>file: table is full</errorname> aparece repetidamente no <citerefentry> <refentrytitle>dmesg</refentrytitle><manvolnum>8</manvolnum></citerefentry>?</para> </question> <answer> - <note> - <para>Vale apenas para proprietários de - 386/486SX/486SLC - outras máquinas terão - um co-processador integrado à CPU.</para> - </note> - - <para>No geral, a falta de um co-processador - matemático não traz nenhum problema, mas - existem algumas circunstâncias onde você - encontrará sérias limitações, - seja no desempenho ou na precisão da - emulação dos seus cálculos (veja a - seção de <link linkend="emul">emulação FP</link>). Por - exemplo, a renderização de círculos e - arcos no ambiente gráfico será uma tarefa - muito lenta. É recomendável comprar um - co-processador matemático; vale a pena.</para> - - <note> - <para>Alguns co-processadores matemáticos - são melhores que outros. É estranho ter - que dizer isso, mas ninguém nunca se deu mal ao - comprar co-processadores Intel, portanto tenha certeza - absoluta que o produto vai funcionar com o FreeBSD antes - de comprar um clone.</para> - </note> + <para>Essa mensagem de erro indica que o número de file descriptors disponÃveis no sistema esgotaram. Consulte a informação sobre a variável <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/configtuning-kernel-limits.html#kern-maxfiles">kern.maxfiles</link> na seção <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/configtuning-kernel-limits.html"> Ajustando os Limites do Kernel </link> do Handbook para uma discussão e solução.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="other-device-support"> - <para>Que outros dispositivos o FreeBSD suporta?</para> + <question xml:id="computer-clock-skew"> + <para>Por que o relógio do meu computador mantém-se com o horário incorreto?</para> </question> <answer> - <para>Veja o <link xlink:href="../handbook/install.html#INSTALL-MISC">&a.ptbr.p.handbook;</link> - para obter uma listagem dos outros dispostivos - suportados.</para> - </answer> - </qandaentry> + <para>O computador tem dois ou mais relógios e o FreeBSD escolheu usar o errado.</para> - <qandaentry> - <question xml:id="power-management-support"> - <para>O FreeBSD suporta gerenciamento de energia no meu - laptop?</para> - </question> + <para>Execute o comando <citerefentry><refentrytitle>dmesg</refentrytitle><manvolnum>8</manvolnum></citerefentry> e verifique as linhas que contêm a palavra <literal>Timecounter</literal>. Aquele com o maior valor de quality é o que o FreeBSD escolheu.</para> - <answer> - <para>O FreeBSD suporta <acronym>APM</acronym> em alguns - computadores. Por gentileza, refira-se ao arquivo - <filename>LINT</filename> de configuração do - <foreignphrase>kernel</foreignphrase>; procure pela - palavra <acronym>APM</acronym>. Mais - informações na página de manual do - &man.apm.4;.</para> - </answer> - </qandaentry> + <screen><prompt>#</prompt> <userinput>dmesg | grep Timecounter</userinput> +Timecounter "i8254" frequency 1193182 Hz quality 0 +Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000 +Timecounter "TSC" frequency 2998570050 Hz quality 800 +Timecounters tick every 1.000 msec</screen> - <qandaentry> - <question xml:id="micron-hang-boot"> - <para>Por que placas Micron travam na - inicialização(boot)?</para> - </question> + <para>Confirme isso verificando o valor da variável <varname>kern.timecounter.hardware</varname> no <citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para> - <answer> - <para>Algumas placas-mãe Micron não tem - conformidade na implementação de sua BIOS e - por isso confundem o FreeBSD no momento da - inicialização(boot), pois os equipamentos em - questão não foram configurados nos - endereços que a BIOS reportou.</para> + <screen><prompt>#</prompt> <userinput>sysctl kern.timecounter.hardware</userinput> +kern.timecounter.hardware: ACPI-fast</screen> - <para>Procure a opção <quote>Plug and Play - Operating System</quote> - ou algo parecido - na sua - BIOS e desabilite-a para corrigir o problema. Mais - informações sobre esse problema podem ser - encontradas em <link xlink:href="http://cesdis.gsfc.nasa.gov/linux/drivers/vortex.html#micron">http://cesdis.gsfc.nasa.gov/linux/drivers/vortex.html#micron</link>.</para> - </answer> - </qandaentry> + <para>Pode ser um timer ACPI quebrado. A solução mais simples é desabilitar o timer ACPI no arquivo <filename>/boot/loader.conf</filename>:</para> - <qandaentry> - <question xml:id="newer-adaptec-support"> - <para>Por que o FreeBSD não reconhece nenhuma - controladora SCSI Adaptec?</para> - </question> + <programlisting>debug.acpi.disabled="timer"</programlisting> - <answer> - <para>As séries mais novas (AIC789x) dos chips - Adaptec tem suporte no modo CAM SCSI, que será - redefinido na versão 3.0 do FreeBSD. Na - versão 2.2-STABLE, você pode aplicar as - correções disponíveis em <link xlink:href="ftp://ftp.FreeBSD.org/pub/FreeBSD/development/cam/">ftp://ftp.FreeBSD.org/pub/FreeBSD/development/cam/</link>. - Caso você precise instalar um sistema com essas - controladoras, existe um disquete de - inicialização(boot) com suporta a CAM, - disponível em <link xlink:href="http://people.FreeBSD.org/~abial/cam-boot/"> - http://people.FreeBSD.org/~abial/cam-boot/</link>. Nos - dois casos leia o arquivo README antes de tomar qualquer - ação.</para> - </answer> - </qandaentry> + <para>Ou a BIOS poderá modificar o relógio TSC - talvez para mudar a velocidade do processador quando estiver funcionando a partir de baterias, ou quando estiver entrando em modo de economia de energia, mas o FreeBSD não tem conhecimento desses ajustes e parece ganhar ou perder tempo.</para> - <qandaentry> - <question xml:id="internal-plugnplay-modem"> - <para>Por que o FreeBSD não encontra o meu Modem Plug - & Play interno?</para> - </question> + <para>Neste exemplo, o relógio <literal>i8254</literal> também está disponÃvel e pode ser selecionado alterando-se a variável <varname>kern.timecounter.hardware</varname> do <citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>3</manvolnum></citerefentry>.</para> - <answer> - <para>Será necessário adicionar o ID PnP do - modem na lista de drivers seriais do sistema para que ele - reconheça-o normalmente. Isso requer hackear um - pouco o sistema. Pra habilitar o suporte Plug & Play, - compile um novo <foreignphrase>kernel</foreignphrase> com - a opção <literal>controller pnp0</literal> e - reinicie o seu FreeBSD. O - <foreignphrase>kernel</foreignphrase> irá mostrar - os IDs PnP de todos os dispositivos que ele encontrar, no - momento da inicialização(boot). Copie o ID - PnP do modem em questão para a tabela no arquivo - <filename>/sys/i386/isa/sio.c</filename>, por volta da - linha 2777. Procure a expressão - <literal>SUP1310</literal> na estrutura - <literal>siopnp_ids[]</literal> para encontrar essa - tabela. Recompile o seu - <foreignphrase>kernel</foreignphrase>, instale-o e - reinicie o sistema. Seu modem deve ser encontrado.</para> + <screen><prompt>#</prompt> <userinput>sysctl kern.timecounter.hardware=i8254</userinput> +kern.timecounter.hardware: TSC -> i8254</screen> - <para>Provavelmente será necessário configurar - o dispositivo PnP manualmente, usando o comando - <literal>pnp</literal> no momento do boot, como a - seguir:</para> + <para>O computador agora deve começar a manter seu relógio mais preciso.</para> - <programlisting>pnp 1 0 enable os irq0 3 drq0 0 port0 0x2f8</programlisting> + <para>Para que essa mudança seja executada automaticamente no momento da inicialização, adicione a seguinte linha ao arquivo <filename>/etc/sysctl.conf</filename>:</para> - <para>para forçar detecção do - modem.</para> + <programlisting>kern.timecounter.hardware=i8254</programlisting> </answer> </qandaentry> <qandaentry> - <question xml:id="support-winmodem"> - <para>O FreeBSD suporta software modems, como os - Winmodems?</para> + <question xml:id="indefinite-wait-buffer"> + <para>O que significa o erro <errorname>swap_pager: indefinite wait buffer:</errorname>?</para> </question> <answer> - <para>O FreeBSD suporta alguns software modems por meio de - programas adicionais. A aplicação <package>comms/ltmdm</package> disponível - na coleção de <literal>Ports</literal> do - FreeBSD suporta os modems baseados no popular chipset - Lucent LT. A aplicação <package>comms/mwavem</package> suporta o modem - em laptops IBM Thinkpad 600 e 700.</para> - - <para>Não é possível instalar o FreeBSD - via software modem, visto que os programas adicionais para - controlar esse equipamento só podem ser - configurados depois que o sistema operacional já - está instalado.</para> + <para>Isso significa que um processo está tentando armazenar em memória RAM a memória do disco (swap), e que o processo foi interrompido depois de tentar sem sucesso acessar o disco por mais de 20 segundos. Isso pode ser causado por blocos defeituosos na unidade de disco, fiação de disco defeituosa, cabos ou qualquer outro hardware relacionado a I/O de disco. Se a própria unidade estiver com problemas, erros de disco aparecerão em <filename>/var/log/messages</filename> e na saÃda do comando <command>dmesg</command>. Caso contrário, verifique os cabos e conexões.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="serial-console-prompt"> - <para>Como eu faço para o interpretador(prompt) de - inicialização(boot): aparecer no console - serial?</para> + <question xml:id="lock-order-reversal"> + <para>O que é um <errorname>lock order reversal</errorname> (inversão de ordem de bloqueio)?</para> </question> <answer> - <orderedlist> - <listitem> - <para>Construa um <foreignphrase>kernel</foreignphrase> - com a opção <literal>options - COMCONSOLE</literal>.</para> - </listitem> + <para>O kernel do FreeBSD usa vários locks de recursos para arbitrar a contenção de certos recursos. Quando várias threads do kernel tentam obter vários locks de recursos, há sempre o potencial para um impasse (deadlock), em que duas threads obtiveram cada uma um dos locks e trava para sempre esperando que a outra thread libere um dos outros locks. Esse tipo de problema de locking pode ser evitado se todas as threads obtiverem os locks na mesma ordem.</para> - <listitem> - <para>Crie o arquivo /boot.config e coloque os - caracteres <option>-P</option> como o único - texto no arquivo. </para> - </listitem> + <para>Um sistema de diagnóstico lock em tempo de execução chamado <citerefentry><refentrytitle>witness</refentrytitle><manvolnum>4</manvolnum></citerefentry>, ativado no FreeBSD-CURRENT e desabilitado por padrão para a branch stable e releases, detecta o potencial para deadlocks devido a erros de locking, incluindo erros causados ​​pela obtenção de vários locks de recursos com uma ordem diferente de partes diferentes do kernel. O framework <citerefentry><refentrytitle>witness</refentrytitle><manvolnum>4</manvolnum></citerefentry> tenta detectar esse problema quando ele ocorre e relata isso imprimindo uma mensagem no console do sistema sobre um <errorname>lock order reversal</errorname> (geralmente também chamado de <acronym>LOR</acronym>).</para> - <listitem> - <para>Desligue o teclado do computador.</para> - </listitem> - </orderedlist> + <para>É possÃvel obter falsos positivos, uma vez que o <citerefentry><refentrytitle>witness</refentrytitle><manvolnum>4</manvolnum></citerefentry> é conservador. Um relatório positivo verdadeiro <emphasis>não</emphasis> significa que um sistema está travado; em vez disso, deve ser entendido como um aviso de que um deadlock poderia ter acontecido.</para> - <para>Leia o arquivo - <filename>/usr/src/sys/i386/boot/biosboot/README.serial</filename> - para mais informações.</para> + <note> + <para>Os problemas de <acronym>LOR</acronym> tendem a ser consertados rapidamente, então verifique a lista de discussão do <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-current">FreeBSD-CURRENT</link> antes de postar sobre um.</para> + </note> </answer> </qandaentry> <qandaentry> - <question xml:id="micron-3comnic-failure"> - <para>Por que a placa de rede PCI da 3Com não - funciona com motherboards Micron?</para> + <question xml:id="called-with-non-sleepable-locks-held"> + <para>O que significa o erro <errorname>Called ... with the following non-sleepable locks held</errorname>?</para> </question> <answer> - <para>Algumas placas-mãe Micron não tem - conformidade na implementação de sua BIOS e - por isso confundem o FreeBSD no momento do boot, pois os - equipamentos em questão não foram - configurados nos endereços que a BIOS - reportou.</para> + <para>Isso significa que uma função que pode dormir foi chamada enquanto um lock mutex (ou outro unsleepable) era mantido.</para> - <para>Procure a opção <quote>Plug and Play - Operating System</quote> - ou algo parecido - na sua - BIOS e desabilite-a para corrigir o problema.</para> + <para>A razão pela qual isso é um erro é porque os mutexes não devem ser mantidos por longos perÃodos de tempo; eles deveriam existir apenas para manter curtos perÃodos de sincronização. Este contrato de programação permite que os drivers de dispositivos usem mutexes para sincronizar com o resto do kernel durante as interrupções. As interrupções (no FreeBSD) podem não dormir. Por isso, é imperativo que nenhum subsistema bloqueie o kernel por um longo perÃodo mantendo um mutex ativo.</para> - <para>Mais informações sobre esse problema - podem ser encontradas em <link xlink:href="http://cesdis.gsfc.nasa.gov/linux/drivers/vortex.html#micron">http://cesdis.gsfc.nasa.gov/linux/drivers/vortex.html#micron</link></para> - </answer> - </qandaentry> + <para>Para capturar tais erros, asserções podem ser adicionadas ao kernel que interage com o subsistema <citerefentry><refentrytitle>witness</refentrytitle><manvolnum>4</manvolnum></citerefentry> para emitir um aviso ou erro fatal (dependendo a configuração do sistema) quando uma chamada potencialmente de bloqueio é feita enquanto um mutex estiver sendo mantido.</para> - <qandaentry> - <question xml:id="smp-support"> - <para>O FreeBSD suporta Multiprocessamento Simétrico - (SMP)?</para> - </question> + <para>Em resumo, tais avisos não são fatais, no entanto, com um timing infeliz, podem causar efeitos indesejáveis, desde um pequeno erro na capacidade de resposta do sistema até o seu travamento completo.</para> - <answer> - <para>SMP é suportado a partir do FreeBSD 3.0-STABLE. - O suporte ao SMP (multiprocessamento simétrico) - não está disponível por padrão - no <foreignphrase>kernel</foreignphrase> - <emphasis>GENERIC</emphasis>, portanto é - necessário compilar um novo - <foreignphrase>kernel</foreignphrase> para habilitar o - suporte SMP. Veja o arquivo - <filename>/sys/i386/conf/LINT</filename> para descobrir - quais opções são necessárias - adicionar ao seu - <foreignphrase>kernel</foreignphrase>.</para> + <para>Para obter informações adicionais sobre locking no FreeBSD, consulte <citerefentry><refentrytitle>locking</refentrytitle><manvolnum>9</manvolnum></citerefentry>.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="asusk7v-boot-failure"> - <para>O disquete de inicialização(boot) trava - em um computador cuja placa-mãe é a ASUS - K7V. O que eu faço?</para> + <question xml:id="touch-not-found"> + <para>Por que o <buildtarget>buildworld</buildtarget> / <buildtarget>installworld</buildtarget> morre com a mensagem <errorname>touch: not found</errorname>?</para> </question> <answer> - <para>Entre na configuração da BIOS da sua - placa e desligue a opção <quote>boot virus - protection</quote>.</para> + <para>Este erro não significa que o utilitário <citerefentry><refentrytitle>touch</refentrytitle><manvolnum>1</manvolnum></citerefentry> esteja ausente. O erro é provavelmente devido à s datas dos arquivos que estão sendo definidos em algum momento no futuro. Se o relógio do CMOS estiver configurado para a hora local, execute <command>adjkerntz -i</command> para ajustar o relógio do kernel ao inicializar no modo de usuário único.</para> </answer> </qandaentry> </qandaset> </chapter> - <chapter xml:id="troubleshoot"> - <title>Resolução de Problemas</title> + <chapter xml:id="applications"> + <title>Aplicativos do Usuário</title> <qandaset> <qandaentry> - <question xml:id="awre"> - <para>O que fazer quando meu disco rígido tiver bad - blocks? - </para> - </question> - - <answer> - <para>Com controladoras SCSI, o drive (HD) deveria ser capaz - de remapear blocos ruins e corrigí-los - automaticamente. Porém, muitos desses discos - mantém essa função desabilitada por - alguma razão misteriosa...</para> - - <para>Para habilitar essa função é - necessário editar o primeiro modo de página - do dispositivo, o qual pode ser feito com o comando abaixo - (como <systemitem class="username">root</systemitem>)</para> - - <screen>&prompt.root; <userinput>scsi -f /dev/rsd0c -m 1 -e -P 3</userinput></screen> - - <para>E mudando os valores de AWRE e ARRE de 0 para - 1:-</para> - - <programlisting>AWRE (Auto Write Reallocation Enbld): 1 -ARRE (Auto Read Reallocation Enbld): 1</programlisting> - - <para>Os parágrafos seguintes foram enviados por Ted - Mittelstaedt <email>tedm@toybox.placo.com</email>:</para> - - <para>Para os discos IDE, qualquer bad block é - considerado um sinal de dificuldade em potencial. Todos - os discos IDE modernos já vêm com um - remapeador interno que realoca bad blocks por outros - blocos em bom estado, automaticamente. Todos os disco - rígido IDE fabricados hoje em dia oferecem - garantias extensas.</para> - - <para>Se ainda quiser tentar salvar um drive IDE com bad - blocks, pode fazer um download do programa de - diagnóstico e correção do - próprio fabricante do disco rígido. - Às vezes estes programas podem fixar e - forçar eletronicamente o disco a marcar estes - blocos ruins e desativá-los.</para> - - <para>Em discos ESDI, RLL e MFM, a existência de bad - blocks é normal e não representa nenhum - sinal de dificuldade,geralmente. Em um PC, a placa - controladora das unidades de disco e, a BIOS se encarregam - da tarefa de re-mapear os bad blocks. Isso funciona em - sistemas operacionais como DOS que usa código da - BIOS para acessar o disco. Porém, o driver - (software controlador) do FreeBSD não trabalha ou - acessa comandos da BIOS para para interagir com o drive - (HD), então um mecanismo chamado bad144, existente - no FreeBSD, acaba substituindo esta funcionalidade. O - bad144 só trabalha com o drive wd (portanto, - não é suportado no FreeBSD 4.0), e - não pode ser usado com drive SCSI. O bad144 - trabalha marcando e organizando setores ruins encontrados - no HD, em um arquivo especial no disco.</para> - - <para>Uma característica do bad144 - o bloco - danificado é colocado em um arquivo especial - situado na última trilha do disco. Como este - arquivo contém uma lista de setores defeituosos que - pode incluir valores perto do início do disco, onde - o /kernel pode estar alocado, esse arquivo deverá - ser acessível ao bootstrap para que o programa - - por meio da BIOS - leia o - <foreignphrase>kernel</foreignphrase>; isso significa que - o disco usado com bad144 não deve exceder 1024 - cilindros, 16 cabeças, e 63 setores, logo, temos um - limite efetivo de 500MB para discos mapeados com o - bad144..</para> - - <para>Para ativar o uso do bad144, simplesmente defina a - opção de procurar por <quote>Bad - Block</quote> como ON na tela do fdisk do FreeBSD, - durante a instalação. Essas - instruções funcionam a partir do FreeBSD - 2.2.7, e o disco deve ter menos que 1024 cilindros. - Geralmente recomenda-se que a unidade de disco esteja em - operação durante pelo menos 4 horas antes de - executar o bad144, permitindo assim a expansão - térmica do HD.</para> - - <para>Se o disco tem mais de 1024 cilindros (como um disco - ESDI grande) a controladora ESDI usa um tipo de - tradução especial em modo DOS. A device wd - também entende esses mesmos modos de - tradução e conversão, isso se o - <quote>tradutor</quote> de geometria for ativado como - <quote>geometria fixa</quote>, quando particionado pelo - fdisk. Você também não deve usar o - modo <quote>dangerously dedicated</quote> para criar - partições do FreeBSD, pois isso ignora o - tipo de geometria. Embora o fdisk use a geometria - definida pelo usuário, ele continua reconhecendo o - tamanho verdadeiro do disco, e tentará criar uma - partição maior para o FreeBSD. Se a - geometria de disco for alterada para geometria - traduzida(translated geometry), a partição - DEVE ser criada manualmente, informando os números - de blocos do HD.</para> - - <para>Um truque rápido é usar um disco grande - ESDI com uma controladora ESDI, iniciar(booting) o sistema - com um disco DOS e formatar uma partição - DOS. Depois reiniciar o sistema com um disco de - instalação do FreeBSD, e anotar o - número e tamanho dos blocos que serão - apresentados na tela do fdisk para a - partição DOS. Redefina a geometria do disco - com os valores anotados, apague a partição - DOS e crie uma partição FreeBSD - <quote>cooperativa</quote>. Defina essa - partição como bootável e habilite o - reconhecimento de bad blocks. Na - instalação, o bad144 é carregado - antes que qualquer outro sistema de arquivos seja criado - (você pode ver isso com um - <keycombo action="simul"><keycap>Alt</keycap><keycap>F2</keycap></keycombo>). - Se houver problemas na criação do arquivo de - definições de setor danificado (o arquivo de - badsector) é porque a geometria definida é - maior do que o seu valor real - reinicie o sistema e - comece todos os procedimentos novamente, inclusive o - particionamento e formatação da - partição DOS.</para> - - <para>Se o remapeamento já estiver habilitado e os - problemas com bad block continuarem, considere a - substituição imediata do disco, pois os - danos e os bad blocks aumentarão consideravelmente - com o passar do tempo.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="bustek742a-eisa-scsi"> - <para>Por que o FreeBSD não reconhece a minha - controladora SCSI EISA Bustek 742a?</para> - </question> - - <answer> - <para>As informações a seguir são para - o modelo 742a, mas provavelmente também servem para - as placas Buslogic. (Bustek = Buslogic).</para> - - <para>Existem duas <quote>versões</quote> - tradicionais da placa 742a. São os equipamentos de - revisão A-G e de revisão H; as letras de - cada revisão são colocadas depois do - número de fabricação, ao lado das - placas. A placa 742a possui 2 chips ROM acoplados, o - primeiro é o chip da BIOS e o segundo é o do - Firmware. Para o FreeBSD a versão da BIOS é - irrelevante, mas a versão do Firmware é uma - informação fundamental. É - interessante dizer que, se você fizer uma chamada ao - departamento de suporte da Buslogic, eles irão te - enviar um upgrade desses ROMs, e é muito bom sempre - manter a versão mais recente do ROM do seu Firmware - para a versão de revisão do seu - equipamento.</para> - - <para>As placas cuja letra de revisão é A-G - aceitam apenas atualizações da BIOS/Firmware - de versão 2.41/2.21 respectivamente. A - revisão H (REV H) aceita as versões mais - recentes da BIOS/Firmware até a versão - 4.70/3.37. A principal diferença entre as - versões do Firmware é que a versão - 3.37 tem suporte a<quote>round robin</quote>.</para> - - <para>As placas Buslogic também tem um número - serial. Caso seu equipamento seja antigo, tente abrir uma - chamada no departamento de RMA da Buslogic e informe-os o - número de série da sua placa. Se ela - estiver entre os seriais de abrangência, a Buslogic - vai aceitar seu equipamento para revisão.</para> - - <para>O FreeBSD 2.1 aceita apenas as revisões de - Firmware até o 2.21. Caso o seu Firmware seja mais - antigo do que o 2.21 sua placa não será - reconhecida como Buslogic. Contudo, é - possível que o equipamento seja reconhecido como - Adaptec 1540, já que os Firmware mais antigos da - Buslogic possuem um modo de - <quote>emulação</quote> da AHA1540, o que - não é uma boa coisa, para uma placa - EISA.</para> - - <para>Caso seu Firmware seja antigo e você conseguiu - obter uma revisão para a versão 2.21, - não se esqueça que é - necessário alterar o jumper W1 da - posição A-B (padrão) para - posição B-C ao atualizar a placa.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="hpnetserver-scsi-failure"> - <para>Por que o FreeBSD não detecta a controladora - SCSI do Netserver HP??</para> - </question> - - <answer> - <para>Isso já é um problema conhecido. A - controladora SCSI on-board EISA dos servidores HP - Netserver estão no slot EISA número 11, - portanto todos os <quote>verdadeiros</quote> slots EISA - estão na sua frente. O endereço definido - para os slots EISA >= 10 ocupa um endereço - compartilhado com o barramento PCI, e portanto entra em - conflito com seus recursos. Essa é uma - situação onde a configuração - automática do FreeBSD não se comporta muito - bem.</para> - - <para>Portanto o que você deve fazer, é fingir - que não existe limitação quanto ao - intervalo de endereços, definindo a - opção option <literal>EISA_SLOTS</literal> - do <foreignphrase>kernel</foreignphrase> para o valor 12. - Configure e compile um novo - <foreignphrase>kernel</foreignphrase>, conforme descrito - no <link xlink:href="../handbook/kernelconfig.html">capítulo de - configuração do - <foreignphrase>kernel</foreignphrase> no - &a.ptbr.p.handbook;</link>.</para> - - <para>Obviamente esse problema é ainda maior quando - se trata de uma nova instalação. Para - corrigir esse problema é necessário uma - pequena alteração no modo - <emphasis>UserConfig</emphasis>. Não use a - interface de configuração - <quote>visual</quote> do - <foreignphrase>kernel</foreignphrase>, use a Interface de - Linha de Comando (CLI), simplesmente digitando:</para> - - <programlisting>eisa 12 -quit</programlisting> - - <para>na tela do modo CLI, e continue a - instalação do FreeBSD como de costume. De - qualquer forma, é recomendável recompilar e - instalar um novo <foreignphrase>kernel</foreignphrase> - depois da instalação do sistema..</para> - - <para>Futuras versões do FreeBSD terão esse - problema corrigido automaticamente.</para> - - <note> - <para>Não use discos em modo <literal>dangerously - dedicated</literal> com um HP Netserver. Veja <link linkend="dedicate">essa nota</link> para maiores - informações.</para> - </note> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="cmd640-ide"> - <para>O que está havendo com minha controladora IDE - CMD640?</para> + <question xml:id="user-apps"> + <para>Onde estão todas as aplicações de usuário?</para> </question> <answer> - <para>Está com defeito! Não suporta mais - comandos nos dois canais de forma simultânea.</para> + <para>Consulte <link xlink:href="@@URL_RELPREFIX@@/ports/index.html"> a página de ports </link> para informações sobre os pacotes de software portados para o FreeBSD. A lista atualmente tem 24.000 aplicativos e está crescendo diariamente, então volte sempre para conferir ou assine a <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-announce"> lista de discussão de anúncios do FreeBSD </link> para atualizações periódicas com as novidades.</para> - <para>Existe uma correção disponível e - automaticamente habilitada, se você usa uma - controladora com esse chip. Para maiores detalhes, - refira-se a página de manual da controladora de - disco (&man.wd.4;).</para> + <para>A maioria dos ports deve funcionar em todas as versões suportadas do FreeBSD. Aqueles que não funcionam, estão especificamente sinalizados como tal. Cada vez que uma release do FreeBSD é construida, um snapshot da coleção de ports no momento da construção também é incluÃda no diretório <filename>ports/</filename>.</para> - <para>Se o FreeBSD em questão é o FreeBSD - 2.2.1 ou 2.2.2 com essa controladora em questão, e - você quer usar o segundo canal, compile um novo - <foreignphrase>kernel</foreignphrase> com a - opção <literal>options "CMD640"</literal> - habilitada. Essa configuração é - padrão para o FreeBSD 2.2.5 e posteriores.</para> + <para>O FreeBSD suporta pacotes binários compactados para facilitar a instalação e desinstalação dos ports. Use o comando <citerefentry><refentrytitle>pkg</refentrytitle><manvolnum>7</manvolnum></citerefentry> para controlar a instalação de pacotes.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="ed1-timeout"> - <para>Eu sempre vejo mensagens como <errorname>ed1: - timeout</errorname>. O que elas significam?</para> + <question xml:id="how-do-download-ports-tree"> + <para>Como faço para baixar a coleção de ports? Eu deveria estar usando o Subversion?</para> </question> <answer> - <para>Normalmente esse problema é causado por um - conflito de interrupções (por exemplo, duas - placas usando a mesma IRQ). O FreeBSD até a - versão 2.0.5R costumava ser tolerante quanto a esse - problema e a placa de rede continuava funcionando mesmo - com IRQ conflitantes. Contudo desde a versão - 2.0.5R os conflitos de interrupções - não são mais tolerados. Inicie o sistema - com a opção de boot -c e mude as device - ed0/de0/... para o valor correspondente ao da - placa.</para> - - <para>Caso esteja usando um conector BNC na sua placa de - rede, é provável que existam device timeout - por causa de má terminação do - barramento. Pra tirar isso a limpo coloque um terminador - direto na placa (sem cabos) e veja se as mensagens de erro - param.</para> + <para>Qualquer um dos métodos listados aqui funciona:</para> - <para>Algumas placas compatíveis NE2000 - apresentarão esse problema caso a porta UTP - não receba sinal de link, ou se o cabo estiver - desconectado.</para> + <itemizedlist> + <listitem> + <para>Use o portsnap para a maioria dos casos de uso. Consulte a seção <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/ports-using.html">Usando a coleção de ports</link> para obter instruções sobre como usar essa ferramenta .</para> + </listitem> + <listitem> + <para>Use o Subversion se for necessário a aplicação de patches customizados na árvore de ports. Consulte a seção <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/svn.html"> Usando o Subversion </link> para obter detalhes.</para> + </listitem> + </itemizedlist> </answer> </qandaentry> <qandaentry> - <question xml:id="bad-3c509"> - <para>Por que minha placa 3COM 3C509 parou de funcionar sem - motivo aparente?</para> + <question xml:id="java"> + <para>O FreeBSD suporta o <trademark>Java</trademark>?</para> </question> <answer> - <para>Esse cartão tem um hábito - horrível de perder suas informações - de configuração. Redefina as - informações da placa usando o programa de - DOS chamado <command>3c5x9.exe</command>.</para> + <para>Sim. Consulte a página web <link xlink:href="@@URL_RELPREFIX@@/java/index.html">https://www.FreeBSD.org/java/</link> para mais informações.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="printer-slow"> - <para>Minha impressora paralela está ridiculamente - lenta. O que devo fazer?</para> + <question xml:id="ports-4x"> + <para>Por que não posso compilar esse port na minha máquina 10.<replaceable>X</replaceable> - ou 11.<replaceable>X</replaceable> -STABLE?</para> </question> <answer> - <para>Se o único problema é a lerdeza - terrível da sua impressora, tente mudar seu <link xlink:href="../handbook/printing-intro-setup.html#PRINTING-PARALLEL-PORT-MODE">modo - da porta de impressão</link> conforme discutido - na seção de <link xlink:href="../handbook/printing-intro-setup.html">Configuração - de Impressoras</link> no &a.ptbr.p.handbook;.</para> + <para>Se a versão do FreeBSD instalada estiver significativamente atrás do <emphasis>-CURRENT</emphasis> ou do <emphasis>-STABLE</emphasis>, atualize a coleção de ports usando as instruções disponÃveis na seção <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/ports-using.html">Usando a coleção de ports</link>. Se o sistema estiver atualizado, alguém pode ter feito uma alteração no port que funciona para <emphasis>-CURRENT</emphasis> mas que quebrou o port para o <emphasis>-STABLE</emphasis>. <link xlink:href="https://bugs.FreeBSD.org/submit/">Envie</link> um relatório de bug, já que a Coleção de Ports deve funcionar tanto para o branch <emphasis>-CURRENT</emphasis> e quanto o <emphasis>-STABLE</emphasis>.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="signal11"> - <para>Por que alguns programas ocasionalmente morrem com - erro de <errorname>Signal 11</errorname> ?</para> + <question xml:id="make-index"> + <para>Acabei de tentar compilar o <filename>INDEX</filename> usando o comando <command>make index</command>, e ele falhou. Por quê?</para> </question> <answer> - <para>Erros de sinal 11 são fruto de tentativas de - acesso indevido a memória. Esse acesso normalmente - é controlado pelo sistema operacional, e quando o - sistema não permite acessar determinados - endereços, o processo é morto com signal 11. - Se isso estiver acontecendo em intervalos - aleatórios de tempo, é preciso investigar as - causas com cuidado.</para> - - <para>Esse problema normalmente é atribuído - a:</para> - - <orderedlist> - <listitem> - <para>Se o problema ocorre apenas em um programa - específico que você mesmo esta - desenvolvendo, se trata de um bug no código do - seu programa.</para> - </listitem> - - <listitem> - <para>Se o problema é com algum programa que faz - parte da base do FreeBSD, é possível que - também seja um problema de bug no código - em questão. Contudo, esses problemas costumam - ser corrigidos antes que os usuários - tradicionais percebam sua existência - e - necessitem ler este <literal>FAQ</literal> - afinal, - é para isso que o -CURRENT existe.</para> - </listitem> - </orderedlist> - - <para>Em especial, uma indicação que esse - problema <emphasis>não</emphasis> é um bug - do FreeBSD, é um erro repetitivo no mesmo instante - da compilação, mas o problema que o - compilador apresenta muda de linha a cada nova - compilação.</para> - - <para>Por exemplo, suponha que você esteja executando - um <quote>make buildworld</quote>, e a - compilação falha na hora de compilar o - <filename>ls.c</filename> em <filename>ls.o</filename>. Se - você rodar o <quote>make buildworld</quote> de novo - e a compilação falha exatamente no mesmo - trecho do código, então o problema realmente - é com o fonte da aplicação, nesse - caso atualize os fontes do FreeBSD e tente novamente. - Agora se a compilação falhar em um trecho - diferente do código, é quase certo que o - problema seja físico, ou seja, com o seu - equipamento.</para> - - <para>O que deve ser feito:</para> - - <para>Em primeiro lugar, deve-se usar um debugador, como o - gdb, por exemplo, para encontrar o ponto exato do - código que está tentando acessar um - endereço problemático de memória, e - corrigi-lo.</para> - - <para>Em segundo lugar, verifique se a culpa não - é do seu equipamento.</para> - - <para>As causas mais comuns para o problema incluem::</para> - - <orderedlist> - <listitem> - <para>Os seus discos rígidos podem estar - superaquecidos: Verifique se o sistema de - ventilação do seu PC está - funcionando. Verifique coolers internos (da fonte) e - externos, e verifique se não existe - superaquecimento de outros componentes do - computador.</para> - </listitem> - - <listitem> - <para>O processador está superaquecido: Pode ser - porque foi feito um overclock no processador em - questão, ou no caso mais tradicional, pode ser - que o cooler tenha parado de funcionar ou que esteja - sujo e portanto funcionando em rotação - baixa. Em ambos os casos, o primeiro passo é - garantir que o processador esteja rodando sob as - mesmas condições que ele foi - construído para funcionar - por exemplo, com a - velocidade do clock original e com a - ventilação adequada.</para> - - <para>Caso tenha sido feito overclock no processador, - lembre-se que é mais barato usar um computador - um pouco mais lento, do que trocar o processador da - máquina por causa de um chip fritado ;-) - Além do que a maioria das pessoas não - são simpatizantes de overclock, mesmo que - você considere a ação segura ou - não.</para> - </listitem> - - <listitem> - <para>Caso tenha múltiplos pentes de - memória SIMM/DIMM, tente desligá-los e - experimente usar cada pente de uma vez, - indiviualmente. Com isso é possível - descobrir se o problema é com algum chip - DIMM/SIMM ou se o problema é a - combinação entre os pentes.</para> - </listitem> - - <listitem> - <para>Configurações super otimistas na - BIOS da sua placa mãe são outra causa - provável. Algumas BIOS tem - opções que permitem alterar a velocidade - e frequência de vários recursos. - Normalmente os valores padrão na BIOS - são os mais conservadores, e portanto devem ser - o bastante para controlar corretamente o equipamento; - contudo algumas opções como por exemplo - <quote>RAM Speed: Turbo</quote> ou alguma - opção parecida coloca o estado de espera - para o acesso a memória em um valor muito - baixo, e as vezes, por mais otimista que você - seja, sua memória pode não ser - rápida o bastante. O ideal é definir os - valores padrão da sua BIOS, mas é - interessante anotar os valores atuais primeiro!</para> - </listitem> - - <listitem> - <para>Alimentação insuficiente de energia - na placa-mãe. Caso exista alguma placa que - não esteja sendo utilizada, algum disco - rígido ou CDROM, é interessante - desliga-los temporariamente do computador, ou - simplesmente remover o cabo de energia desses - equipamentos. Mesmo em sub utilização, - essas placas e discos estão sob constante - alimentação e talvez sua fonte consiga - suprir uma carga menor. Ou tente trocar a fonte do - seu PC, de preferência por uma com maior poder - de alimentação (por exemplo, se a sua - fonte é de 250 Watts troque por uma de 300 - Watts).</para> - </listitem> - - </orderedlist> + <para>Primeiro, certifique-se de que a Coleção de Ports esteja atualizada. Erros que afetam a compilação do <filename>INDEX</filename> a partir de uma cópia atualizada da coleção de ports são de alta visibilidade e, portanto, quase sempre são corrigidos imediatamente.</para> - <para>Leia ainda o <literal>FAQ</literal> SIG11 - (disponível a seguir) que tem outras boas - explicações sobre esses problemas. O - <literal>FAQ</literal> também discute como alguns - programas de teste de memória podem pensar que um - pente problemático está funcionando - corretamente.</para> - - <para>Finalmente, se nenhum dos casos acima ajudou a - solucionar seu problema, pode ser que exista um bug no - FreeBSD. Você deve seguir as - intruçõoes para enviar um relatório - de problemas para o Projeto FreeBSD.</para> - - <para>Existe um <literal>FAQ</literal> extenso que cobre - esse assunto, disponível <link xlink:href="http://www.bitwizard.nl/sig11/"> no - <literal>FAQ</literal> dos problemas com - SIG11.</link></para> + <para>Existem casos raros em que o <filename>INDEX</filename> não será compilado devido a casos estranhos envolvendo a variável <varname>OPTIONS_SET</varname> sendo definida em <filename>make.conf</filename>. Se você suspeitar que este é o caso, tente fazer o <filename>INDEX</filename> com estas variáveis desativadas antes de reportar o erro para a <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-ports">Lista de discussão de ports do FreeBSD</link>.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="trap-12-panic"> - <para>O meu sistema trava com o erro <errorname>Fatal trap - 12: page fault in kernel mode</errorname>, ou - <errorname>panic:</errorname>, e sai mostrando uma - quantidade enorme de informações. O que eu - faço?</para> + <question xml:id="ports-update"> + <para>Eu atualizei os fontes, agora como faço para atualizar meus ports instalados?</para> </question> <answer> - <para>A equipe de desenvolvimento do FreeBSD tem muito - interesse nesse tipo de erro, mas é - necessário obter algumas informações - suplementares, do que apenas o erro que você - está tendo. Copie sua mensagem de erro inteira, - consulte o <literal>FAQ</literal> sobre <link linkend="kernel-panic-troubleshooting"><foreignphrase>kernel</foreignphrase> - panics</link>, compile um - <foreignphrase>kernel</foreignphrase> em modo de - debugação e tente analisar o problema. - Parece uma tarefa difícil, mas não é - necessário conhecimento de - programação; basta seguir as - instruções.</para> + <para>O FreeBSD não inclui uma ferramenta de atualização de ports, mas possui algumas ferramentas para facilitar o processo de atualização. Ferramentas adicionais estão disponÃveis para simplificar o manuseio dos ports e são descritas na seção <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/ports-using.html">Atualizando Ports</link> no Handbook do FreeBSD .</para> </answer> </qandaentry> <qandaentry> - <question xml:id="screen-loses-sync"> - <para>Por que a tela fica preta e perde sincronia quando eu - inicio o sistema?</para> + <question xml:id="ports-major-upgrade"> + <para>Preciso recompilar todos os ports sempre que realizo uma atualização de versão principal?</para> </question> <answer> - <para>Esse é um problema conhecido da placa de - vídeo ATI Mach 64. O problema é que essa - placa usa o endereço <literal>2e8</literal>, o - mesmo utilizado pela quarta porta serial dos computadores - pessoais. Devido a um bug (ou uma vantagem?) da - &man.sio.4; ,essa porta será sempre reconhecida, - ainda que não exista a quarta porta serial no seu - computador, ou <emphasis>mesmo</emphasis> se o sio3 (a - quarta porta) estiver desabilitado.</para> + <para>Sim! Apesar de um sistema recente ser capaz de executar os softwares compilados em uma versão mais antiga, as coisas irão falhar aleatoriamente e deixar de funcionar quando outros ports forem instalados ou atualizados.</para> - <para>Até que o bug seja corrigido, você pode - usar essa solução:</para> + <para>Quando o sistema é atualizado, várias bibliotecas compartilhadas, módulos carregáveis ​​e outras partes do sistema serão substituÃdas por versões mais recentes. Os aplicativos vinculados à s versões mais antigas podem não iniciar ou, em outros casos, não funcionar corretamente.</para> - <orderedlist> - <listitem> - <para>Entre no modo de configuração do - <foreignphrase>kernel</foreignphrase> com - opção <option>-c</option> na tela de - inicialização(boot). (Isto colocara o - <foreignphrase>kernel</foreignphrase> no modo de - configuração).</para> - </listitem> - - <listitem> - <para>Desabilite a <filename>sio0</filename>, - <filename>sio1</filename>, - <filename>sio2</filename> e - <filename>sio3</filename> (todas elas). Dessa - forma será ativada, logo, você não - terá -> problemas.</para> - </listitem> - - <listitem> - <para>Digite exit para continuar o boot.</para> - </listitem> - </orderedlist> - - <para>Caso queira usar as portas seriais, será - necessário construir um - <foreignphrase>kernel</foreignphrase> customizado, com as - seguintes alterações: no fonte - <filename>/usr/src/sys/i386/isa/sio.c</filename> encontre - a ocorrência da expressão - <literal>0x2e8</literal> e apague essa expressão e - a vírgula que a antecede (mantenha a outra). - Depois compile o novo - <foreignphrase>kernel</foreignphrase> normalmente.</para> - - <para>Mesmo depois dessa correção, é - provável que o X Windows ainda não funcione - como esperado. Se for o caso, garanta que a versão - do Xfree86 em questão seja ao menos o XFree86 3.3.3 - ou uma versão superior. Esse XFree86 e os - posteriores tem suporte nativo às placas de - vídeo Mach64, e tem inclusive um X Server dedicado - para tal equipamento.</para> + <para>Para obter maiores informações, consulte a <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/updating-upgrading-freebsdupdate.html#freebsdupdate-upgrade">seção sobre atualizações</link> no Handbook do FreeBSD.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="reallybigram"> - <para>Por que o FreeBSD só detecta 64MB de - memória RAM se eu tenho 128MB instalados?</para> + <question xml:id="ports-minor-upgrade"> + <para>Preciso recompilar cada port toda vez que faço uma atualização de versão secundária?</para> </question> <answer> - <para>Devido à maneira que o FreeBSD obtém as - informações quanto ao tamanho da - memória disponível por intermédio da - BIOS, pode acontecer de apenas 16 bits válidos - serem detectados (65535 Kbytes = 64MB) ou até - menos, dependendo da BIOS (em alguns casos, apenas 16MB). - Mesmo nessa situação o FreeBSD tenta - detectar mais que 64MB de memória, mas esse - reconhecimento pode falhar.</para> - - <para>Pra corrigir esse problema pode ser usada a - opção do - <foreignphrase>kernel</foreignphrase> descrita a seguir. - Existe uma forma de obter informações - completas quanto ao tamanho da memória, a partir da - BIOS, mas devido a algumas limitações isso - nem sempre é possível hoje em dia. - Futuramente será. De qualquer forma, temos ainda a - opção do - <foreignphrase>kernel</foreignphrase> para - situações onde toda a memória - não puder ser reconhecida.</para> - - <para><literal>options - "MAXMEM=n"</literal></para> - - <para>Onde <replaceable>n</replaceable> equivale à - memória (em Kilobytes) disponível no - sistema. Para 128 MB de memória, use o valor - <literal>131072</literal>.</para> + <para>Em geral, não. Os desenvolvedores do FreeBSD fazem o máximo para garantir compatibilidade binária em todos os releases com o mesmo número de versão principal. Quaisquer exceções serão documentadas nas Release Notes, e os conselhos dados lá devem ser seguidos.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="panic-kmemmap-too-small"> - <para>Por que o FreeBSD 2.0 entre em pânico com a - mensagem <errorname>kmem_map too - small!</errorname>?</para> + <question xml:id="minimal-sh"> + <para>Por que o <command>/bin/sh</command> é tão pequeno? Por que o FreeBSD não usa o <command>bash</command> ou outro shell?</para> </question> <answer> - <note> - <para>A mensagem em questão também pode ser - <literal>mb_map too small!</literal></para> - </note> - - <para>Essa mensagem de pânico indica que o sistema - ficou sem memória suficiente pros buffers de rede - (especificamente, os mbuf clusters). A quantidade de - memória virtual disponível para os clusters - mbuf pode ser elevada com a opção::</para> - - <para><literal>options - "NMBCLUSTERS=n"</literal></para> + <para>Muitas pessoas precisam escrever shell scripts que serão portados para muitos sistemas. É por isso que o <trademark class="registered">POSIX</trademark> especifica os comandos shell e utilitários em grande detalhe. A maioria dos scripts são escritos em Bourne shell (<citerefentry><refentrytitle>sh</refentrytitle><manvolnum>1</manvolnum></citerefentry>) e porque várias interfaces de programação importantes (<citerefentry><refentrytitle>make</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>system</refentrytitle><manvolnum>3</manvolnum></citerefentry>, <citerefentry><refentrytitle>popen</refentrytitle><manvolnum>3</manvolnum></citerefentry> e análogos em linguagens de script de alto nÃvel como Perl e Tcl) são especificados para usar o Bourne shell para interpretar comandos. Como o Bourne shell é usado com tanta frequência e em larga escala, é importante que ele seja iniciado rapidamente, que seja determinÃstico em seu comportamento e que ocupe o menor espaço possÃvel na memória.</para> - <para>no arquivo de configuração do seu - <foreignphrase>kernel</foreignphrase>, onde - <replaceable>n</replaceable> equivale ao valor entre - 512-4096, dependendo do número de conexões - TCP simultâneas que você espera poder - suportar. O valor 2048 é recomendável, e - provavelmente será o bastante para sanar o problema - que causa o pânico em questão O número - de clusters mbuf em uso pode ser monitorado com o comando - <command>netstat -m</command> (veja &man.netstat.1;). O - valor padrão para a variável NMBCLUSTERS no - <foreignphrase>kernel</foreignphrase> do FreeBSD é - <literal>512 + MAXUSERS * 16</literal>.</para> + <para>A implementação existente é resultado do nosso melhor esforço para atender simultaneamente o quanto pudermos desses requisitos. Para manter o <command>/bin/sh</command> pequeno, não fornecemos muitos dos recursos de conveniência que os outros shells possuem. É por isso que outras shells com mais recursos, como o <command>bash</command>, o <command>scsh</command>, o <citerefentry><refentrytitle>tcsh</refentrytitle><manvolnum>1</manvolnum></citerefentry>, e o <command>zsh</command> estão disponÃveis. Compare a utilização de memória desses shells observando as colunas <quote> VSZ </quote> e <quote> RSS </quote> em uma listagem gerada com o comando <command>ps -u</command>.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="proc-table-full"> - <para>Por que o erro <errorname>/kernel: proc: table is - full</errorname>ocorre?</para> + <question xml:id="midi-sound-files"> + <para>Como faço para criar CDs de áudio dos meus arquivos MIDI?</para> </question> <answer> - <para>O <foreignphrase>kernel</foreignphrase> do FreeBSD - limita o número máximo de processos - simultâneos existentes no sistema. O número - em questão é baseado na opção - <literal>MAXUSERS</literal>. do sistema. A - opção <literal>MAXUSERS</literal> afeta - ainda inúmeros outros limites do - <foreignphrase>kernel</foreignphrase> do FreeBSD, como por - exemplo os buffers disponíveis para o stack de rede - do sistema (veja <link linkend="panic-kmemmap-too-small">esta</link> resposta - anterior). Se o computador estiver sob grande carga, - provavelmente será necessário aumentar o - <literal>MAXUSERS</literal>. Essa alteração - aumentará os limites do sistema em - adição ao número de processos - permitido.</para> - - <para>Desde a versão 4.4 do FreeBSD, o valor para - <literal>MAXUSERS</literal> se tornou configurável, - não sendo mais necessário recompilar o - <foreignphrase>kernel</foreignphrase> para - alterá-lo, bastando definir a variável - <varname>kern.maxusers</varname> no arquivo - <filename>/boot/loader.conf</filename>. Em - versõoes mais recentes do FreeBSD, deve-se ajustar - o <literal>MAXUSERS</literal> em sua - configuração do - <foreignphrase>kernel</foreignphrase>.</para> + <para>Para criar CDs de áudio a partir de arquivos MIDI, primeiro instale o <package> audio/timidity++</package> a partir dos ports e instale manualmente os patches GUS criados por Eric A. Welsh, disponÃveis em <uri xlink:href="http://alleg.sourceforge.net/digmid.html">http://alleg.sourceforge.net/digmid.html</uri>. Depois que o <application>TiMidity++</application> estiver corretamente instalado, os arquivos MIDI poderão ser convertidos em arquivos WAV com a seguinte linha de comando:</para> - <para>Caso seu sistema não esteja muito carregado, - mas o número de processos simultâneos ainda - assim é alto basta definir a variável - <varname>kern.maxproc</varname> com o sysctl. Em casos - especiais, onde esses inúmeros processos - estão sendo executados por um único - usuário, será preciso alterar ainda alterar - o valor da variável - <varname>kern.maxprocperuid</varname> para um a menos do - que o valor de <varname>kern.maxproc</varname>. (deve ser - ao menos 1 processo a menos, visto que ao menos o - &man.init.8; do sistema vai estar sempre em - execução.)</para> + <screen><prompt>%</prompt> <userinput>timidity -Ow -s 44100 -o /tmp/juke/01.wav 01.mid</userinput></screen> - <para>Para tornar uma alteração de - variável do sysctl permanente, defina-a no arquivo - <filename>/etc/sysctl.conf</filename> nas versões - mais recentes do FreeBSD, ou então no arquivo - <filename>/etc/rc.local</filename> em versões mais - antigas do sistema.</para> + <para>Os arquivos WAV podem ser convertidos para outros formatos ou gravados em CDs de áudio, conforme descrito no <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/creating-cds.html"> Handbook do FreeBSD</link>.</para> </answer> </qandaentry> + </qandaset> + </chapter> - <qandaentry> - <question xml:id="cmap-busy-panic"> - <para>Por que acontece o erro <errorname>CMAP - busy</errorname> quando eu reinicio com um novo - <foreignphrase>kernel</foreignphrase>?</para> - </question> - - <answer> - <para>A lógica que tenta detectar uma data errada nos - arquivos <filename>/var/db/kvm_*.db</filename> as vezes - é falha, o que leva o sistema a entrar em - pânico.</para> - - <para>Se for o caso, reinicie seu sistema em modo - monousuário e faça:</para> - - <screen>&prompt.root; <userinput>rm /var/db/kvm_*.db</userinput></screen> - </answer> - </qandaentry> + <chapter xml:id="kernelconfig"> + <title>Configuração do Kernel</title> + <qandaset> <qandaentry> - <question xml:id="brkadrint-illegal-host-access"> - <para>O que a mensagem <errorname>ahc0: brkadrint, Illegal - Host Access at seqaddr 0x0</errorname> - significa??</para> + <question xml:id="make-kernel"> + <para>Eu gostaria de customizar meu kernel. É difÃcil?</para> </question> <answer> - <para>Trata-se de um conflito com o Ultrastor SCSI Host - Adapter.</para> - - <para>Durante o processo de - inicialização(boot), entre no menu de - configuração do - <foreignphrase>kernel</foreignphrase> e desabilite a - <filename>uha0</filename>, que esta causando o - problema.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="aci0-illegal-cable"> - <para>Quando eu inicio o sistema, encontro o erro - <errorname>ahc0: illegal cable configuration</errorname>, - mas o meu cabo está certo. O que está - havendo?</para> - </question> + <para>De modo nenhum! Confira a seção <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/kernelconfig.html">configuração do kernel do Handbook</link>.</para> - <answer> - <para>A placa-mãe em questão não - consegue se dar bem com o suporte a - terminação automática do barramento. - Altere sua BIOS SCSI para a terminação - correta, de acordo com a configuração do - equipamento, ao invés de usar - terminação automática. O driver - AIC7XXX não consegue descobrir se o reconhecimento - externo dos cabos (e conseqüente - auto-terminação) está - disponível, e portanto ele simplesmente assume que - o suporte existe, caso a configuração da - EEPROM serial esteja definida como automatic termination. - Sem o reconhecimento de cabo externo o driver irá - sempre configurar a terminação de forma - incorreta, o que compromete a confiabilidade do barramento - SCSI.</para> + <note> + <para>O novo <filename>kernel</filename> será instalado no diretório <filename>/boot/kernel</filename> junto com os seus módulos, enquanto o kernel antigo e seus módulos serão movidos para o diretório <filename>/boot/kernel.old</filename>. Se um erro for cometido na configuração, basta inicializar utilizando a versão anterior do kernel.</para> + </note> </answer> </qandaentry> <qandaentry> - <question xml:id="mail-loopback"> - <para>Por que o Sendmail retorna um erro que diz - <quote><errorname>mail loops back to - myself</errorname></quote>?</para> + <question xml:id="why-kernel-big"> + <para>Por que meu kernel é tão grande?</para> </question> <answer> - <para>Essa pergunta é respondida no - <literal>FAQ</literal> do próprio Sendmail, e - diz:-</para> + <para>Os kernels <literal>GENERIC</literal> enviados com o FreeBSD são compilados com o <emphasis>modo de depuração</emphasis> habilitado. Kernels compilados no modo de depuração contêm dados de depuração em arquivos separados que são usados ​​para depuração. Versões do FreeBSD anteriores a 11.0 armazenam esses arquivos de depuração no mesmo diretório que o próprio kernel, <filename>/boot/kernel/</filename>. No FreeBSD 11.0 e posterior, os arquivos de depuração são armazenados em <filename>/usr/lib/debug/boot/kernel/</filename>. Observe que haverá pouca ou nenhuma perda de desempenho ao executar um kernel com o modo de depuração habilitado, e é útil manter um por perto em caso de panic no sistema.</para> -<literallayout> * Eu estou tendo problemas de configurações local "Local configuration error" como essas: + <para>Quando estiver com pouco espaço em disco, existem diferentes opções para reduzir o tamanho de <filename>/boot/kernel/</filename> e <filename>/usr/lib/debug/</filename>.</para> - 553 relay.domain.net config error: mail loops back to myself - 554 <user@domain.net>... Local configuration error + <para>Para não instalar os arquivos de sÃmbolos, certifique-se que a seguinte linha existe em <filename>/etc/src.conf</filename>:</para> - Como posso resolver esse problema? + <programlisting>WITHOUT_KERNEL_SYMBOLS=yes</programlisting> - Você definiu que as mensagens enviadas para o domínio - em questão (domain.net) devem ser repassadas para uma outra - estação específica (nesse caso para - relay.domain.net) usando um registro MX, mas essa máquina de - relay não se reconhece como a estação - responsável pelas mensagens do domínio domain.net. - Adicione domain.net no arquivo /etc/mail/local-host-names - (caso você esteja usando FEATURE(use_cw_file)) ou então - adicione a linha "Cw domain.net" em /etc/mail/sendmail.cf. - </literallayout> + <para>Para mais informações veja <citerefentry><refentrytitle>src.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para> - <para>Atualmente a versão mais recente do <link xlink:href="ftp://rtfm.mit.edu/pub/usenet/news.answers/mail/sendmail-faq"><literal>FAQ</literal> - do sendmail</link> é mantida em sincronia com as - versões mais atuais do MTA, mas ela ainda é - enviada regularmente para os grupos de notícias - <link xlink:href="news:comp.mail.sendmail">comp.mail.sendmail</link>, - <link xlink:href="news:comp.mail.misc">comp.mail.misc</link>, - <link xlink:href="news:comp.mail.smail">comp.mail.smail</link>, - <link xlink:href="news:comp.answers">comp.answers</link>, e - <link xlink:href="news:news.answers">news.answers</link>. - Ainda é possível receber um cópia por - e-mail do <literal>FAQ</literal>, enviando uma mensagem - para <email>mail-server@rtfm.mit.edu</email> com o comando - <literal>send - usenet/news.answers/mail/sendmail-faq</literal> no corpo - da mensagem.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="remote-fullscreen"> - <para>Porque algumas aplicações que usam tela - inteira não se comportam muito bem em - estações remotas?</para> - </question> - - <answer> - <para>A estação remota deve estar definindo o - terminal como algum tipo diferente do - <literal>cons25</literal> que é o tipo de terminal - usado pelo console do FreeBSD.</para> - - <para>Existem inúmeras correções para - esse problema:</para> + <para>Se você quiser evitar completamente a criação de arquivos de depuração, certifique-se de que ambos os itens a seguir sejam verdadeiros:</para> <itemizedlist> <listitem> - <para>Depois de logar-se na estação - remota, defina a variável de ambiente TERM como - <literal>ansi</literal> ou <literal>sco</literal> caso - a máquina em questão tenha - informações quanto a esse tipo de - terminal.</para> - </listitem> - - <listitem> - <para>Use um emulador VT100 como o - <application>screen</application> no console do - FreeBSD. O <application>screen</application> oferece - a possibilidade de usar múltiplas - sessões concorrentes em um mesmo terminal, e - é um grande programa. Cada janela do - <application>screen</application> se comporta como um - terminal VT100, portanto a variável TERM deve - ser definida como <literal>vt100</literal>.</para> - </listitem> + <para>Esta linha não existe no arquivo de configuração do kernel:</para> - <listitem> - <para>Instale a base do <literal>cons25</literal> na - estação remota. A maneira correta de - faze-lo depende do sistema operacional em - questão na estação remota. - Consulte os manuais de administração do - sistema remoto em questão para descobrir como - faze-lo.</para> + <programlisting>makeoptions DEBUG=-g</programlisting> </listitem> <listitem> - <para>Levante um X server do lado FreeBSD da coisa e - acesse a estação remota usando um - terminal baseado no ambiente X, como o - <command>xterm</command> ou o <command>rxvt</command>. - A variável TERM deve ser definida - como<literal>xterm</literal> ou - <literal>vt100</literal> no lado remoto.</para> + <para>Não execute o comando <citerefentry><refentrytitle>config</refentrytitle><manvolnum>8</manvolnum></citerefentry> com a opção <option>-g</option>.</para> </listitem> </itemizedlist> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="calcru-negative"> - <para>Por que meu computador apresenta a mensagem - <errorname>calcru: negative time...</errorname>?</para> - </question> - - <answer> - <para>Esse comportamento pode ser causado por diversos - motivos relacionados a interrupções de - <foreignphrase>hardware</foreignphrase> e/ou software. - Pode ser devido a algum bug, mas também pode - acontecer por causa da natureza de alguns devices. Por - exemplo, usar TCP/IP via porta paralela com uma MTU muito - grande é uma boa forma de provocar esse - comportamento. Aceleradores gráficos também - são eficientes para criar esse tipo de problema, - nesse caso, sendo necessário analisar as - configurações de interrupções - do software.</para> - - <para>Um efeito colateral desse problema são - processos que morrem<quote>SIGXCPU exceeded cpu time - limit</quote>.</para> - <para>No FreeBSD 3.0 e sistemas posteriores a 29 de Novembro - de 1998, caso o problema não possa ser solucionado - de outra forma, uma correção pode ser - definir a seguinte variável do sysctl:</para> - - <screen>&prompt.root; <userinput>sysctl -w kern.timecounter.method=1</userinput></screen> - - <para>Isso causa um impacto de performance, mas dependendo - do problema que causava esse comportamento, é - provável que nem consiga-se notar a mudança - nessa performance. Se o problema continuar, mantenha a - variável do sysctl habilitada e defina a - opção <literal>NTIMECOUNTER</literal> no - <foreignphrase>kernel</foreignphrase> para valores - crescentes. Se chegar a um ponto em que foi - necessário definir - <literal>NTIMECOUNTER=20</literal> e o problema ainda - não tiver sido resolvido, as - interrupções são serias demais e seu - comportamento não é confiável.</para> - </answer> - </qandaentry> + <para>Qualquer uma das configurações acima fará com que o kernel seja construÃdo com suporte ao modo de depuração.</para> - <qandaentry> - <question xml:id="pcm0-not-found"> - <para>Acontece da pcm não ser encontrada, com a - mensagem <errorname>pcm0 not found</errorname> ou - então minha placa de som é encontrada na - <filename>pcm1</filename> mas no meu - <foreignphrase>kernel</foreignphrase> a entrada se refere - a <literal>device pcm0</literal>. O que está - havendo?</para> - </question> + <para>Para construir e instalar somente os módulos desejados, liste-os em <filename>/etc/make.conf</filename>:</para> - <answer> - <para>Isso acontece no FreeBSD 3.X com placas de som PCI. A - <filename>pcm0</filename> é reservada - exclusivamente para placas de som ISA e por isso se a - placa em questão é PCI, ela será - reconhecida como <filename>pcm1</filename> e a - mensagem em questão pode acontecer. - </para> + <programlisting>MODULES_OVERRIDE= <replaceable>accf_http ipfw</replaceable></programlisting> - <note> - <para>Não é possível evitar a - mensagem de advertência simplesmente alterando o - seu <foreignphrase>kernel</foreignphrase> e definindo - <literal>device pcm1</literal> pois isso - resultará na <filename>pcm1</filename> sendo - reservada para placas ISA, e o seu equipamento PCI - será reconhecido na <filename>pcm2</filename> - (e a mensagem de advertência <errorname>pcm1 not - found</errorname> continuará).</para> - </note> + <para>Substitua <emphasis>accf_httpd ipfw</emphasis> com a lista dos módulos que precisa. Apenas os módulos listados serão compilados. Isso reduz o tamanho do diretório do kernel e diminui o tempo necessário para compilar o kernel. Para mais informações, leia <filename>/usr/share/examples/etc/make.conf</filename>.</para> - <para> - Caso sua placa de som seja PCI ainda será preciso - criar a device <filename>snd1</filename> ao - invés da <filename>snd0</filename>:</para> + <para>Dispositivos desnecessários podem ser removidos do kernel para reduzir ainda mais o tamanho. Veja <xref linkend="make-kernel"/> para mais informações.</para> - <screen>&prompt.root; <userinput>cd /dev</userinput> -&prompt.root; <userinput>./MAKEDEV snd1</userinput></screen> + <para>Para colocar qualquer uma dessas opções em vigor, siga as instruções para <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/kernelconfig-building.html">compilar e instalar</link> um novo kernel.</para> - <para>Esse comportamento não ocorre na série - 4.X do FreeBSD, muito trabalho foi feito para tornar o - sistema mais <emphasis>PnP-centric</emphasis> e a device - <filename>pcm0</filename> não é mais - reservada exclusivamente para placas ISA.</para> + <para>Para referência, o kernel amd64 do FreeBSD 11 (<filename>/boot/kernel/kernel</filename>) é de aproximadamente 25 MB.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="pnp-not-found"> - <para>Porque a minha placa PnP não é mais - encontrada (ou é encontrada como - <literal>unknown</literal>) desde a - atualização para o FreeBSD 4.X?</para> + <question xml:id="generic-kernel-build-failure"> + <para>Por que todo kernel que eu tento construir falha ao compilar, até mesmo o <filename>GENERIC</filename>?</para> </question> <answer> - <para>O FreeBSD 4.X é muito mais - <emphasis>PnP-centric</emphasis> do que as versões - anteriores, e isso causou alguns efeitos distintos em - algumas placas PnP (como algumas placas de som e alguns - modems interno por exemplo) que não funcionam mais - da forma como funcionavam no FreeBSD 3.X.</para> - - <para>O motivo para esse comportamento é explicado no - seguinte e-mail, que foi enviada na lista - freebsd-questions pelo Reter Wemm, respondendo uma - pergunta sobre um modem interno que não era mais - reconhecido no FreeBSD depois de atualizar o sistema para - versão 4.X (os comentários entre - <literal>[]</literal>foram adicionados com a - intenção de explicar melhor o contexto da - mensagem).</para> - - <note> - <para>Os índices dessa citação foram - atualizados de seu texto original</para> - </note> - - <blockquote> - <para>A bios PNP configurou ele [o modem] e o deixou - conectado na porta em questão, por isso o estilo - antigo [no 3.X] <quote>reconhece</quote> o equipamento - ISA.</para> - - <para>No FreeBSD 4 o código ISA é bem mais - PnP-centric. Era possível [no 3.X] encontrar uma - placa ISA que funcionava com <quote>determinada</quote> - device e depois, o id PNP da mesma device encontrava a - mesma placa novamente, como se fosse uma outra usando os - mesmos recursos do sistema, e por isso ele falhava, como - se fosse um conflito de recursos. Portanto, agora ele - desabilita o suporta às placas - programáveis de forma que essa confusão e - dupla detecção de - <foreignphrase>hardware</foreignphrase> não - ocorra. Essa mudança implica também na - necessidade de se saber previamente os ids PnP para cada - tipo de equipamento suportado, aumentando um pouco mais - a lista de TODO do suporte PnP no sistema.</para> - </blockquote> - - <para>Para fazer o equipamento voltar a funcionar, é - necessário encontrar seu PnP id e - adicioná-lo a lista de devices ISA reconhecidas - como PnP. Essa informação pode ser obtida - usando &man.pnpinfo.8; que detecta a - configuração dos equipamentos. Por exemplo, - veja a saída do &man.pnpinfo.8; de um modem - interno:</para> - - <screen>&prompt.root; <userinput>pnpinfo</userinput> -Checking for Plug-n-Play devices... - -Card assigned CSN #1 -Vendor ID PMC2430 (0x3024a341), Serial Number 0xffffffff -PnP Version 1.0, Vendor Version 0 -Device Description: Pace 56 Voice Internal Plug & Play Modem - -Logical Device ID: PMC2430 0x3024a341 #0 - Device supports I/O Range Check -TAG Start DF - I/O Range 0x3f8 .. 0x3f8, alignment 0x8, len 0x8 - [16-bit addr] - IRQ: 4 - only one type (true/edge)</screen> - - <para>[algumas linhas com TAG foram eliminadas]</para> - - <screen>TAG End DF -End Tag - -Successfully got 31 resources, 1 logical fdevs --- card select # 0x0001 - -CSN PMC2430 (0x3024a341), Serial Number 0xffffffff - -Logical device #0 -IO: 0x03e8 0x03e8 0x03e8 0x03e8 0x03e8 0x03e8 0x03e8 0x03e8 -IRQ 5 0 -DMA 4 0 -IO range check 0x00 activate 0x01</screen> - - <para>A informação que você quer - é a linha <quote>Vendor ID</quote> no começo - da saída do comando. O valor hexadecimal entre - parênteses (0x3024a341 esse caso) é PnP id e - o conjunto de caracteres que o antecede (PMC2430) é - a identificação ASCII única.</para> - - <para>Alternativamente, se o &man.pnpinfo.8; não - listou sua placa em questão, o &man.pciconf.8; pode - ser usado preferivelmente. Esta é a saída - do comando <command>pciconf -vl</command> de uma placa de - som onboard:</para> - - <screen>&prompt.root; <userinput>pciconf -vl</userinput> -chip1@pci0:31:5: class=0x040100 card=0x00931028 chip=0x24158086 rev=0x02 hdr=0x00 - vendor = 'Intel Corporation' - device = '82801AA 8xx Chipset AC'97 Audio Controller' - class = multimedia - subclass = audio</screen> - - <para>Aqui deve-se usar o valor do <varname>chip</varname>, - <quote>0x24158086</quote>.</para> - - <para>Tais informações (Vendor ID ou valor do - chip) precisam ser adicionadas ao arquivo - <filename>/usr/src/sys/isa/sio.c</filename>.</para> - - <para>Primeiro faça uma cópia de - segurança do <filename>sio.c</filename> no caso de - algo dar errado e também para que você possa - fazer um patch para enviar junto com o seu - Relatório de Problemas (você vai enviar um - PR, não vai?) e depois edite o - <filename>sio.c</filename> e procure a linha</para> - - <programlisting>static struct isa_pnp_id sio_ids[] = {</programlisting> - - <para>Depois analise as linhas logo abaixo para encontrar o - lugar apropriado para sua placa. As entradas na tabela - ficam todas parecidas com essa logo abaixo, e são - ordenadas de acordo com a identificação - ASCII do fabricante do produto a qual deve ser - incluída como comentário na coluna do lado - do código em questão, e junto com a - <emphasis>descrição da placa</emphasis> ou - parte dela, conforme identificada na saída do - &man.pnpinfo.8;:</para> - - <programlisting>{0x0f804f3f, NULL}, /* OZO800f - Zoom 2812 (56k Modem) */ -{0x39804f3f, NULL}, /* OZO8039 - Zoom 56k flex */ -{0x3024a341, NULL}, /* PMC2430 - Pace 56 Voice Internal Modem */ -{0x1000eb49, NULL}, /* ROK0010 - Rockwell ? */ -{0x5002734a, NULL}, /* RSS0250 - 5614Jx3(G) Internal Modem */</programlisting> - - <para>Adicione o ID hexadecimal do fabricante da placa no - local apropriado, salve o arquivo e recompile o - <foreignphrase>kernel</foreignphrase>, depois reinicie o - sistema. Agora a sua placa deve ter sido encontrada como - uma device <literal>sio</literal> exatamente como era - encontrada no FreeBSD 3.X</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="nlist-failed"> - <para>Qual a causa do erro <errorname>nlist - failed</errorname> quando eu executo, por exemplo, o - <command>top</command> ou o - <command>systat</command>?</para> - </question> - - <answer> - <para>O problema é que o programa que você - está tentando executar tenta ler alguma - informação específica do - <foreignphrase>kernel</foreignphrase>, baseando-se no - <foreignphrase>kernel</foreignphrase> symbol em - questão, mas por algum motivo, essa - informação não pode ser encontrada; - esse erro é causado por um dos seguintes - problemas:</para> - - <itemizedlist> - <listitem> - <para>O <foreignphrase>kernel</foreignphrase> e o - userland do sistema não estão em - sincronia (por exemplo, você compilou um - <foreignphrase>kernel</foreignphrase> novo e o - instalou sem de dar um - <buildtarget>installworld</buildtarget>, ou vice-versa), - e por isso a tabela de informações dos - <foreignphrase>kernel</foreignphrase> symbols é - diferente do que o programa pensa que é. Se - esse for o caso basta completar os procedimentos de - atualização do sistema (veja o arquivo - <filename>/usr/src/UPDATING</filename> para a correta - seqüência de ações).</para> - </listitem> - - <listitem> - <para>O <command>/boot/loader</command> não - está sendo usado para carregar o - <foreignphrase>kernel</foreignphrase> dessa - estação, ao invés dele, o boot2 - (veja &man.boot.8;) está sendo usado - diretamente. Apesar de não ter problema algum - deixar de usar o <command>/boot/loader</command>, ele - costuma se comportar melhor na hora de tornar os - <foreignphrase>kernel</foreignphrase> symbols - disponíveis para aplicações em - nível de usuário.</para> - </listitem> - </itemizedlist> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="connection-delay"> - <para>Porque demora tanto para a conexão se - estabelecer via <command>ssh</command> ou - <command>telnet</command>?</para> - </question> - - <answer> - <para>O sintoma: existe um atraso muito grande entre o - estabelecimento da conexão TCP e o momento que o - programa cliente pede a senha (ou no caso do - &man.telnet.1;, quando a tela de login aparece).</para> - - <para>O problema: o programa servidor dessa - transação leva muito tempo tentando resolver - o nome da estação cliente que está se - conectando. A maioria dos servidores, incluindo os - servidores Telnet e SSH que vem junto com o FreeBSD tentam - resolver o número IP do cliente no nome da - estação, para, entre outras coisas, gravar - essa informação em um arquivo de log para - referências futuras por parte do - administrador.</para> - - <para>A solução: Se o problema acontece apenas - quando você (o cliente) tenta se conectar no - servidor, o problema é com o lado cliente da - transação; se o problema acontece com - qualquer estação que tente se conectar ao - computador (servidor) então o problema é do - lado servidor.</para> - - <para>Se o problema é com o cliente, a única - maneira de corrigir o problema é configurar - corretamente o servidor DNS que responde autoritativamente - pelo endereço da estação. Se for uma - rede local considere esse comportamento um problema do - servidor, e continue lendo; se a conexão deve ser - estabelecida na rede global (internet) , então - entre em contato com o seu Provedor de Serviços - Internet e solicite que eles corrijam o problema.</para> - - <para>Se o problema é do lado servidor, e a rede em - questão, se trata de uma rede local, será - necessário configurar o servidor de forma que ele - consiga resolver os endereços dos clientes em - nomes. Veja as páginas de manual do &man.hosts.5; - e &man.named.8; para obter mais informações. - Se a conexão é na Internet, provavelmente o - resolvedor (lado cliente do serviço de nomes) do - seu servidor não está funcionando - corretamente. Pra fazer o teste, tente descobrir o - endereço IP do site <systemitem>www.yahoo.com</systemitem> - por exemplo. Se não funcionar, esta ai o - problema.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="stray-irq"> - <para>O que a mensagem <errorname>stray IRQ</errorname> quer - dizer?</para> - </question> - - <answer> - <para>Stray IRQs são sintomas de - <foreignphrase>hardware</foreignphrase> que interrompe o - pedido de interrupção no meio de um ciclo de - autorização de - interrupção.</para> - - <para>Existem três formas de tratar o problema:</para> + <para>Há várias causas possÃveis para esse problema:</para> <itemizedlist> <listitem> - <para>Aprenda a conviver com as mensagens de - advertência. De qualquer forma, todas as - mensagens exceto as 5 primeiras para cada IRQ - são suprimidas pelo sistema mesmo.</para> + <para>A o código fonte de origem é diferente do usado para construir o sistema atualmente em execução. Ao tentar uma atualização, leia o arquivo <filename>/usr/src/UPDATING</filename>, prestando atenção especial à seção <quote>ITENS COMUNS</quote> no final.</para> </listitem> <listitem> - <para>Evite o inconveniente alterando de 5 para 0 na - função - <function>isa_strayintr()</function> o número - de mensagens antes de suprimir as - advertências.</para> + <para xml:lang="en">The <command>make buildkernel</command> did not + complete successfully. The <command>make + buildkernel</command> target relies on files + generated by the <command>make buildworld</command> + target to complete its job correctly.</para> </listitem> <listitem> - <para>Evite as advertências instalando algum - equipamento de porta paralela que use a IRQ 7 e o - driver PPP (é o usual, na maioria dos sistemas) - e instale algum driver IDE ou qualquer outro - dispositivo que use a IRQ 15 e seu respectivo - suporte.</para> + <para>Mesmo quando estiver compilando o <link linkend="stable">FreeBSD-STABLE</link>, é possÃvel que o código fonte tenha sido obtido em um momento em que estava sendo modificado ou em que estava quebrado. Somente os releases possuem a garantia de que podem ser compilados, apesar do <link linkend="stable">FreeBSD-STABLE</link> compilar corretamente na maioria das vezes. Tente atualizar novamente o código fonte e veja se o problema desaparece. Tente usar um servidor de distribuição diferente, caso o anterior esteja com problemas.</para> </listitem> </itemizedlist> </answer> </qandaentry> <qandaentry> - <question xml:id="file-table-full"> - <para>Por que a mensagem <errorname>file: table is - full</errorname> aparece repetidas vezes no - dmesg?</para> - </question> - - <answer> - <para> - Esse erro indica que você excedeu o número - máximo de descrevedores (descriptors) de arquivos - no sistema. Leia a seção <link xlink:href="../handbook/configtuning-kernel-limits.html#KERN-MAXFILES"> - kern.maxfiles </link>da<link xlink:href="../handbook/configtuning-kernel-limits.html"> - capítulo de Ajuste de Limites do - <foreignphrase>Kernel</foreignphrase></link> no - &a.ptbr.p.handbook; do FreeBSD para obter mais - informações sobre o problema.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="laptop-clock-skew"> - <para>Por que o relógio do meu laptop mantem a hora - incorreta?</para> - </question> - - <answer> - <para>Rode o comando &man.dmesg.8;, e procure algumas linhas - com a expressão <literal>Timecounter</literal>. A - última linha encontrada será o - relógio que o FreeBSD escolheu, e com certeza ele - será <literal>TSC</literal>.</para> - - <screen>&prompt.root; <userinput>dmesg | grep Timecounter</userinput> -Timecounter "i8254" frequency 1193182 Hz -Timecounter "TSC" frequency 595573479 Hz</screen> - - <para>Essa informação pode ser confirmada ao - verificar a variável - <varname>kern.timecounter.hardware</varname> do - &man.sysctl.3;.</para> - - <screen>&prompt.root; <userinput>sysctl kern.timecounter.hardware</userinput> -kern.timecounter.hardware: TSC</screen> - - <para>A BIOS do laptop altera a frequência do - relógio TSC de forma a modificar a velocidade do - processador quando o computador estiver sendo utilizado - com baterias, ou se o mesmo entrar em modo de economia de - energia. O FreeBSD não faz distinção - entre frequência do clock e modos especiais de - trabalho, e por isso pode atrasar ou adiantar a hora do - sistema.</para> - - <para>Esse exemplo, o laptop em questão tem dois - relógios; portanto o <literal>i8254</literal> pode - ser definido como padrão na variável - <varname>kern.timecounter.hardware</varname> do - &man.sysctl.3;.</para> - - <screen>&prompt.root; <userinput>sysctl -w kern.timecounter.hardware=i8254</userinput> -kern.timecounter.hardware: TSC -> i8254</screen> - - <para>Agora o seu laptop deve conseguir manter a data e hora - de forma mais precisa.</para> - - <para>Pra tornar essa alteração - automática, adicione a seguinte linha no arquivo - <filename>/etc/sysctl.conf</filename>.</para> - - <programlisting>kern.timecounter.hardware=i8254</programlisting> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="null-null"> - <para>Por que o meu laptop não funciona muito bem na - hora de identificar cartões PCMCIA?</para> - </question> - - <answer> - <para>Esse problema é comum em laptops que tem mais - de um sistema operacional instalado. Alguns sistemas - não-BSD fazem os cartões PCMCIA ficarem em - um estado inconsistente, causando um reconhecimento - problemático dos dispositivos por parte do - <command>pccardd</command>, como por exemplo, detectando - os cartões como - <errorname>"(null)""(null)"</errorname> ao invés da - sua marca e modelo verdadeiros.</para> - - <para>É necessário desligar completamente a - alimentação de energia do equipamento para - garantir que o mesmo seja completamente resetado. - Desligue completamente o laptop (não suspenda seu - funcionamento, não o deixe entrar em modo de - espera, conhecido como standby, a - alimentação deve ser completamente - interrompida), espere alguns - poucos - minutos e reinicie - o laptop. Tudo deve correr bem.</para> - - <para>Alguns laptops são grandes mentirosos quando - afirmam estar desligados. Se o procedimento acima - não funcionar, tire a bateria do laptop, espere - alguns minutos e ligue o sistema novamente.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="boot-read-error"> - <para>Por que o bootloader do FreeBSD mostra a mensagem - <errorname>Read error</errorname> e pára - completamente logo após a tela da BIOS?</para> + <question xml:id="scheduler-in-use"> + <para>Qual agendador está em uso em um sistema em execução?</para> </question> <answer> - <para>O inicializador do FreeBSD reconheceu a geometria de - disco de forma incorreta e por isso esse valor deve ser - definido manualmente com o fdisk(8) ao criar ou modificar - uma partição FreeBSD.</para> - - <para>A geometria correta do disco pode ser verificada na - BIOS do computador. Procure pelo número de - cilindros, cabeças e de setores do disco em - questão. - </para> - - <para>No fdisk do &man.sysinstall.8;, aperte a tecla - <keycap>G</keycap> para definir a geometria do disco - manualmente. - </para> - - <para>Irá aparecer uma janela de diálogo - perguntando o número de cilindros, cabeças e - setores do disco. Defina esses valores, conforme anotados - da BIOS do sistema e separados por barras.</para> - - <para>5000 cilindros, 250 cabeças e 60 setores, por - exemplo, seria definido como - <userinput>5000/250/60.</userinput> - </para> - - <para>Aperte ENTER para confirmar os valores e depois aperte - a tecla <keycap>W</keycap> para escrever as novas - informações na tabela de - partições do disco.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="bootmanager-restore"> - <para>Outro sistema operacional destruiu o meu gerenciador - de inicialização(Boot Manager). Como eu o - recupero? - </para> - </question> + <para>O nome do agendador que atualmente sendo usado está diretamente disponÃvel como o valor da variavel <varname>kern.sched.name</varname> do sysctl:</para> - <answer> - <para>Entre no &man.sysinstall.8; e escolha o menu - Configure, seguido do Fdisk. Escolha o disco onde o - gerenciador de boot costumava ficar e aperte a barra de - <keycap>espaços(space)</keycap>. Depois aperte a - tecla <keycap>W</keycap> para escrever as novas - informações no disco. Vai aparecer uma - tela, perguntando o que deve ser instalado na MBR do - disco. Escolha o Gerenciador de - inicialização(Boot Manager), e ele - será reinstalado.</para> + <screen><prompt>%</prompt> sysctl <replaceable>kern.sched.name</replaceable> +kern.sched.name: ULE</screen> </answer> </qandaentry> <qandaentry> - <question xml:id="indefinite-wait-buffer"> - <para>O que o erro <errorname>swap_pager: indefinite wait - buffer:</errorname> quer dizer?</para> + <question xml:id="scheduler-kern-quantum"> + <para>O que é o <varname>kern.sched.quantum</varname>?</para> </question> <answer> - <para>Quer dizer que existe um processo tentando paginar uma - área da memória para o disco, e que esse - processo demorou mais de 20 segundos; portanto falhou. - É provável que a causa desse erro sejam - blocos defeituosos no disco, falha nos cabos, ou - até mesmo algum outro erro de I/O relacionado ao - <foreignphrase>hardware</foreignphrase>. Se o disco - estiver danificado, serão apresentadas mensagens de - erro referentes ao mesmo em - <filename>/var/log/messages</filename> e também na - saída do <command>dmesg</command>. Do - contrário, verifique seus cabos e - conectores.</para> + <para>A variável <varname>kern.sched.quantum</varname> define o número máximo de pulsos que um processo pode executar sem ser "preempted" no scheduler 4BSD.</para> </answer> </qandaentry> </qandaset> </chapter> - <chapter xml:id="commercial"> - <title>Aplicações Comerciais</title> - - <note> - <para>Esta seção se encontra ainda muito - escassa, embora esperamos, naturalmente, que as empresas - façam adições a ela! :) Os - desenvolvedores do FreeBSD não tem interesses - financeiros em nenhuma das empresas listadas aqui, mas apenas - as listam como um serviço público (e sente que o - interesse comercial no FreeBSD pode ter muitos efeitos - positivos na viabilidade do uso do sistema a longo prazo). - Nós encorajamos que os vendedores de softwares - comerciais mandem seus softwares para inclusão. - Consulte <link xlink:href="../../../../commercial/index.html"> a - página de Fabricantes</link> para obter uma lista - maior.</para> - </note> + <chapter xml:id="disks"> + <title>Discos, sistemas de arquivos e boot loaders</title> <qandaset> <qandaentry> - <question xml:id="officesuite"> - <para>Onde eu posso conseguir <foreignphrase>Office - Suite</foreignphrase>) para o FreeBSD?</para> + <question xml:id="adding-disks"> + <para>Como posso adicionar o meu novo disco rÃgido ao meu sistema FreeBSD?</para> </question> - <answer> - <itemizedlist> - <listitem> - <para><link xlink:href="http://www.freebsdmall.com/">A FreeBSD - Mall</link> oferece uma versão nativa do - <link xlink:href="http://www.vistasource.com/">VistaSource</link> - ApplixWare 5 para o FreeBSD.</para> - - <para>O ApplixWare é uma poderosa suíte - comercial de aplicações para - escritório no FreeBSD. Ela contém um - processador de texto, planilha de cálculos, um - programa de apresentação e um pacote - para desenho vetorial e outros aplicativos.</para> - - <para>O ApplixWare é vendido com parte integrante - da edição de Desktops BSD da FreeBSD - Mall.</para> - </listitem> - <listitem> - <para>A versão para Linux do <link xlink:href="http://www.sun.com/staroffice/">StarOffice</link> - funciona sem problemas no FreeBSD. A maneira mais - fácil de instalar a versão para Linux do - StarOffice é pela <link xlink:href="../handbook/ports.html">Coleção - de <literal>Ports</literal> do FreeBSD</link>. - Versões futuras da suíte Open-Source de - escritório,<link xlink:href="http://www.openoffice.org/">OpenOffice</link> - deverão funcionar também.</para> - </listitem> - </itemizedlist> + <answer> + <para>Veja a seção <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/disks-adding.html">Adicionando Discos</link> no Handbook do FreeBSD.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="motif"> - <para>Onde posso conseguir o Motif para o FreeBSD?</para> + <question xml:id="new-huge-disk"> + <para>Como faço para mover meu sistema para o meu novo disco enorme?</para> </question> <answer> - <para>O Open Group lançou o código fonte do - Motif 2.1.30, que pode ser instalado como o pacote - <literal>open-motif</literal>, ou então ser - compilado pelo <literal>Ports</literal>. Consulte a - <link xlink:href="../handbook/ports.html"> seção - sobre o <literal>Ports</literal> no - &a.ptbr.p.handbook;</link> para obter mais - informações sobre o assunto. - - <note> - <para>O Open Motif pode ser redistribuído apenas - se sua distribuição estiver sendo usada - em sistemas operacionais <link xlink:href="http://www.opensource.org/">open - source</link>.</para> - </note> - </para> - - <para>Em contrapartida, existem distribuições - comerciais do Motif disponíveis. Tais - distribuições contudo não são - gratuitas, mas suas licenças permitem que ele seja - utilizando em softwares de código fechado. Contate - a <link linkend="apps2go">Apps2go</link> para obter - informações quanto a versão mais - barata do ELF Motif 2.1.20 para FreeBSD (tanto para i386 - quanto para Alpha).<anchor xml:id="apps2go"/></para> - - <para>Existem duas distribuições, a - <quote>development edition</quote> e a <quote>runtime - edition</quote> (bem mais barata). Tais - distribuições incluem:</para> - - <itemizedlist> - <listitem> - <para>OSF/Motif manager, xmbind, panner, wsm.</para> - </listitem> - - <listitem> - <para>Kit de Desenvolvimento com uil, mrm, xm, xmcxx, - arquivos include e arquivos.</para> - </listitem> - - <listitem> - <para>Bibliotecas ELF estáticas e dinâmicas - (para serem usadas com FreeBSD 3.0 e - superiores).</para> - </listitem> + <para>A melhor maneira é reinstalar o sistema operacional no novo disco e depois passar os dados do usuário. Isto é altamente recomendado ao seguir o <emphasis>-STABLE</emphasis> por mais de uma release ou ao atualizar uma release ao invés de instalar uma nova. Instale o booteasy em ambos os discos com <citerefentry><refentrytitle>boot0cfg</refentrytitle><manvolnum>8</manvolnum></citerefentry> e use a opção de dual boot até que esteja satisfeito com a nova configuração. Pule o próximo parágrafo para descobrir como mover os dados depois de fazer isso.</para> - <listitem> - <para>Applets de demonstração.</para> - </listitem> - </itemizedlist> + <para>Alternativamente, particione e rotule o novo disco utilizando o <citerefentry><refentrytitle>sade</refentrytitle><manvolnum>8</manvolnum></citerefentry> ou o <citerefentry><refentrytitle>gpart</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Se os discos forem formatados com MBR, o booteasy pode ser instalado em ambos os discos utilizando-se o <citerefentry><refentrytitle>boot0cfg</refentrytitle><manvolnum>8</manvolnum></citerefentry> para que o computador possa inicializar dualmente com o antigo ou novo sistema após a conclusão da cópia.</para> - <para>Lembre-se de especificar que você quer a - versão para FreeBSD do Motif quando encomendado - (não esqueça de mencionar a arquitetura que - você quer também)! Versões para - NetBSD e OpenBSD também são vendidas pela - <emphasis>Apps2go</emphasis>. Atualmente o produto - é apenas disponível para download via - FTP.</para> + <para>Depois que o novo disco estiver configurado, os dados não podem ser simplesmente copiados. Em vez disso, use ferramentas que entendam device files e system flags, tais como o <citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Embora seja recomendado que você mova os dados com o sistema em modo single user, isto não é necessário.</para> - <variablelist> - <varlistentry> - <term>Mais informações:</term> - <listitem> - <para><link xlink:href="http://www.apps2go.com/"> - Página WWW da Apps2go</link></para> - </listitem> - </varlistentry> + <para>Quando os discos estiverem formatados com <acronym>UFS</acronym>, nunca use nada além do <citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry> e do <citerefentry><refentrytitle>restore</refentrytitle><manvolnum>8</manvolnum></citerefentry> para mover o sistema de arquivos raiz. Esses comandos também devem ser usados para mover uma única partição para uma outra partição vazia. A seqüência de etapas para usar o comando <command>dump</command> para mover os dados de uma partição <acronym>UFS</acronym> para uma nova partição é:</para> - <varlistentry> - <term>ou</term> - <listitem> - <para> - <email>sales@apps2go.com</email> ou - <email>support@apps2go.com</email> - </para> - </listitem> - </varlistentry> - - <varlistentry> - <term>ou</term> - <listitem> - <para>fone [EUA] (817) 431 8775 ou +1 817 - 431-8775</para> - </listitem> - </varlistentry> - </variablelist> + <procedure> + <step> + <para>Execute o <command>newfs</command> na nova partição</para> + </step> - <para>Contate <link linkend="metrox">Metro Link</link> para - obter informações quanto a versão ELF - ou a versão a.out do Motif 2.1 para o - FreeBSD.</para> + <step> + <para>Utilize o <command>mount</command> para disponibilizá-la em um ponto de montagem temporário.</para> + </step> - <para>Tal distribuição inclui:</para> + <step> + <para>Vá para o diretório desejado utilizando o comando <command> cd </command>.</para> + </step> - <itemizedlist> - <listitem> - <para>Gerenciador OSF/Motif, xmbind, panner, wsm.</para> - </listitem> + <step> + <para>Faça o <command> dump </command> da partição antiga e redirecione a saÃda para a nova.</para> + </step> + </procedure> - <listitem> - <para>Kit de desenvolvimento com uil, mrm, xm, xmcxx, - arquivos include e arquivos Imake.</para> - </listitem> + <para>Por exemplo, para mover <filename>/dev/ada1s1a</filename> tendo <filename>/mnt</filename> como o ponto de montagem temporário, digite:</para> - <listitem> - <para>Bibliotecas estáticas e dinâmicas - (não se esqueça de especificar que - você quer o formato ELF, caso queira usar com o - FreeBSD 3.0 e posteriores; ou o formato a.out para - usar com FreeBSD 2.2.8 e anteriores).</para> - </listitem> + <screen><prompt>#</prompt> <userinput>newfs /dev/ada1s1a</userinput> +<prompt>#</prompt> <userinput>mount /dev/ada1s1a /mnt</userinput> +<prompt>#</prompt> <userinput>cd /mnt</userinput> +<prompt>#</prompt> <userinput>dump 0af - / | restore rf -</userinput></screen> - <listitem> - <para>Applets de Demonstração.</para> - </listitem> + <para>Reorganizar as partições com o comando <command>dump</command> requer um pouco mais de trabalho. Para mesclar uma partição como <filename>/var</filename> com a partição pai, crie uma nova partição grande o suficiente para conter ambas, mova a partição pai conforme descrito acima e mova a partição filha para o diretório vazio criado pela primeira movimentação:</para> - <listitem> - <para>Páginas de manual previamente - formatadas.</para> - </listitem> - </itemizedlist> + <screen><prompt>#</prompt> <userinput>newfs /dev/ada1s1a</userinput> +<prompt>#</prompt> <userinput>mount /dev/ada1s1a /mnt</userinput> +<prompt>#</prompt> <userinput>cd /mnt</userinput> +<prompt>#</prompt> <userinput>dump 0af - / | restore rf -</userinput> +<prompt>#</prompt> <userinput>cd var</userinput> +<prompt>#</prompt> <userinput>dump 0af - /var | restore rf -</userinput></screen> - <para>Certifique-se de especificar que você quer a - versão para FreeBSD do Motif quando - encomendá-lo! Versões para Linux - também são vendidas pela <emphasis>Metro - Link</emphasis>. O produto está - disponível em CDROM ou download via FTP.</para> + <para>Para separar um diretório do seu pai, digamos colocar <filename>/var</filename> em sua própria partição quando não era antes, crie as duas partições, monte a partição filho no diretório apropriado no ponto de montagem temporário e mova a antiga partição única:</para> - <para>Contate a <link linkend="xig">Xi Graphics</link> para - obter informações quanto a versão - a.out do Motif 2.0 para o FreeBSD.</para> + <screen><prompt>#</prompt> <userinput>newfs /dev/ada1s1a</userinput> +<prompt>#</prompt> <userinput>newfs /dev/ada1s1d</userinput> +<prompt>#</prompt> <userinput>mount /dev/ada1s1a /mnt</userinput> +<prompt>#</prompt> <userinput>mkdir /mnt/var</userinput> +<prompt>#</prompt> <userinput>mount /dev/ada1s1d /mnt/var</userinput> +<prompt>#</prompt> <userinput>cd /mnt</userinput> +<prompt>#</prompt> <userinput>dump 0af - / | restore rf -</userinput></screen> - <para>A distribuição inclui:</para> + <para>Os utilitários <citerefentry><refentrytitle>cpio</refentrytitle><manvolnum>1</manvolnum></citerefentry> e <citerefentry><refentrytitle>pax</refentrytitle><manvolnum>1</manvolnum></citerefentry> também estão disponÃveis para mover dados do usuário. Estes comandos são conhecidos por perder as flags com as informações dos arquivo, portanto, use-os com cuidado.</para> + </answer> + </qandaentry> - <itemizedlist> - <listitem> - <para>Gerenciador OSF/Motif, xmbind, panner, wsm.</para> - </listitem> + <qandaentry> + <question xml:id="safe-softupdates"> + <para>Quais partições podem usar com segurança o Soft Updates? Ouvi dizer que o uso de Soft Updates no <filename>/</filename> pode causar problemas. E quanto ao Journaled Soft Updates?</para> + </question> - <listitem> - <para>Kit de desenvolvimento com uil, mrm, xm, xmcxx, - arquivos include e arquivos Imake.</para> - </listitem> + <answer> + <para>Resposta curta: Soft Updates geralmente podem ser usados ​​com segurança em todas as partições.</para> - <listitem> - <para>Bibliotecas estáticas e dinâmicas - (para o FreeBSD 2.2.8 e anteriores).</para> - </listitem> + <para>Resposta longa: o Soft Updates possui duas caracterÃsticas que podem ser indesejáveis ​​em determinadas partições. Primeiro, uma partição com Soft Updates tem uma pequena chance de perder dados durante uma falha do sistema. A partição não será corrompida, pois os dados serão simplesmente perdidos. Em segundo lugar, o uso de Soft Updates pode causar escassez temporária de espaço.</para> - <listitem> - <para>Applets de Demonstração.</para> - </listitem> + <para>Ao usar o Soft Updates, o kernel pode levar até trinta segundos para gravar alterações no disco fÃsico. Quando um arquivo grande é excluÃdo, o arquivo ainda reside no disco até que o kernel execute a exclusão. Isso pode causar uma "race condition" muito simples. Suponha que um arquivo grande seja excluÃdo e outro arquivo grande seja criado imediatamente. O primeiro arquivo grande ainda não foi removido do disco fÃsico, portanto, o disco pode não ter espaço suficiente para o segundo arquivo grande. Isso produzirá um erro de que a partição não tem espaço suficiente, mesmo que um grande espaço tenha acabado de ser liberado. Alguns segundos depois, a criação do arquivo funciona conforme o esperado.</para> - <listitem> - <para>Páginas de manual previamente - formatadas.</para> - </listitem> - </itemizedlist> + <para>Se um sistema travar depois que o kernel tiver aceito um bloco de dados para gravar no disco, mas antes que os dados sejam realmente gravados, os dados poderão ser perdidos. Esse risco é extremamente pequeno, e geralmente gerenciável.</para> - <para>certifique-se de especificar que você quer a - versão para FreeBSD do Motif quando - encomendá-lo! Versões para BSDI e para - Linux também são vendidas pela <emphasis>Xi - Graphics</emphasis>. Atualmente o produto se trata de - um conjunto de 4 disquetes... futuramente se - tornará uma distribuição única - em CD, como o CDE da mesma empresa.</para> - </answer> - </qandaentry> + <para>Esses problemas afetam todas as partições usando as Soft Updates. Então, o que isso significa para a partição raiz?</para> - <qandaentry> - <question xml:id="cde"> - <para>Onde posso adquirir o CDE para o FreeBSD?</para> - </question> + <para>Informações vitais sobre a partição raiz mudam muito raramente. Se o sistema travar dentro da janela de 30 segundos depois de uma alteração ter sido feita, é possÃvel que os dados possam ser perdidos. Esse risco é insignificante para a maioria dos aplicativos, mas esteja ciente de que existe. Se o seu sistema não puder tolerar este risco, não use as Soft Updates no sistema de arquivos raiz!</para> - <answer> - <para><link linkend="xig">A Xi Graphics</link> costumava - vender o CDE para o FreeBSD, mas não o faz - mais.</para> + <para>O <filename>/</filename> é tradicionalmente uma das menores partições. Se o <filename>/tmp</filename> estiver localizado dentro do <filename>/</filename>, pode haver problemas intermitentes de falta de espaço. A criação de um link simbólico apontando o <filename>/tmp</filename> para <filename>/var/tmp</filename> resolverá esse problema.</para> - <para><link xlink:href="http://www.kde.org/">O KDE</link> - é um Desktop de código fonte aberto para X11 - similar ao CDE em muitos aspectos. Talvez você - também aprecie o visual e as características - do <link xlink:href="http://www.xfce.org/">xfce</link>. KDE e - xfce estão ambos disponíveis no <link xlink:href="../../../../ports/index.html">sistema de - <literal>ports</literal> do FreeBSD</link>.</para> + <para>Por fim, o <citerefentry><refentrytitle>dump</refentrytitle><manvolnum>8</manvolnum></citerefentry> não funciona no modo live (-L) em um sistema de arquivos, com Journaled Soft Updates (<acronym>SU + J</acronym>).</para> </answer> </qandaentry> <qandaentry> - <question xml:id="commercial-xserver"> - <para>Existe algum servidor X comercial de - alta-performance?</para> + <question xml:id="mount-foreign-fs"> + <para>Posso acessar outros sistemas de arquivos não-nativos do FreeBSD?</para> </question> <answer> - <para>Sim, a <link xlink:href="http://www.xig.com/">Xi - Graphics</link> e a <link xlink:href="http://www.metrolink.com/">Metro Link</link> - vendem produtos da Accelerated-X para o FreeBSD e para - outros sistemas baseados em Intel.</para> - - <para>O que a Metro Link oferece é um servidor X de - alta-performance que possui um esquema de - configuração extremamente fácil, - fazendo uso da suíte de ferramentas de - gerenciamento de pacotes do FreeBSD, com suporte a - múltiplas placas de vídeo simultâneas - e é distribuído apenas em forma - binária, por meio conveniente de um download via - FTP. Sem esquecer que, o produto oferecido pela Metro - Link está disponível a um preço muito - razoável, $39 dólares.<anchor xml:id="metrox"/></para> - - <para>A Metro Link vende também o Motif e formato ELF - e a.out para o FreeBSD (veja pergunta anterior).</para> + <para>O FreeBSD suporta uma variedade de outros sistemas de arquivos.</para> <variablelist> <varlistentry> - <term>informações:</term> - <listitem> - <para><link xlink:href="http://www.metrolink.com/"> - Página WWW da Metro Link</link></para> - </listitem> - </varlistentry> + <term>UFS</term> - <varlistentry> - <term>ou</term> <listitem> - <para><email>sales@metrolink.com</email> ou - <email>tech@metrolink.com</email> - </para> + <para>Os CD-ROMs UFS podem ser montados diretamente no FreeBSD. Montar partições de disco do Digital UNIX e de outros sistemas que suportam o UFS pode ser mais complexo, dependendo dos detalhes do particionamento do disco para o sistema operacional em questão.</para> </listitem> </varlistentry> <varlistentry> - <term>ou</term> + <term>ext2/ext3</term> + <listitem> - <para>fone [EUA] (954) 938-0283 ou +1 954 - 938-0283</para> + <para>O FreeBSD suporta partições <literal>ext2fs</literal> e <literal>ext3fs</literal>. Veja <citerefentry><refentrytitle>ext2fs</refentrytitle><manvolnum>5</manvolnum></citerefentry> para mais informações.</para> </listitem> </varlistentry> - </variablelist> - <para>O produto oferecido pela Xi Graphics é um - servidor X de alta performance, que oferece uma interface - fácil de configuração e com suporte a - múltiplas placas de vídeo simultâneas, - e é distribuído apenas de forma - binária em uma distribuição - única para FreeBSD e Linux. A Xi Graphics oferece - ainda um servidor X de alta performance com suporte - desenvolvido especificamente para laptops.<anchor xml:id="xig"/></para> - - <para>Existe uma versão - de<quote>demonstração de - compatibilidade</quote> disponível na - versão 5.0 do servidor gráfico.</para> - - <para>A Xi Graphics vende ainda o Motif e o CDE para o - FreeBSD (veja acima).</para> - - <variablelist> <varlistentry> - <term>Mais informações:</term> + <term>NTFS</term> + <listitem> - <para><link xlink:href="http://www.xig.com/"> Página - WWW da Xi Graphics</link></para> + <para>O suporte ao NTFS baseia-se no FUSE está disponÃvel como um port (<package>sysutils/fusefs-ntfs</package>). Para mais informações, consulte <link xlink:href="http://www.tuxera.com/community/ntfs-3g-manual/"><application>ntfs-3g</application></link>.</para> </listitem> </varlistentry> <varlistentry> - <term>ou</term> + <term>FAT</term> + <listitem> - <para><email>sales@xig.com</email> ou - <email>support@xig.com</email> - </para> + <para>O FreeBSD inclui um driver FAT de leitura-gravação. Para obter mais informações, consulte <citerefentry><refentrytitle>mount_msdosfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para> </listitem> </varlistentry> <varlistentry> - <term>ou</term> + <term>ZFS</term> + <listitem> - <para>fone [EUA] (800) 946 7433 ou +1 303 - 298-7478.</para> + <para>O FreeBSD inclui um port do driver ZFS da <trademark>Sun</trademark>. A recomendação atual é usá-lo apenas em plataformas amd64 com memória suficiente. Para obter mais informações, consulte <citerefentry><refentrytitle>zfs</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para> </listitem> </varlistentry> </variablelist> + + <para>O FreeBSD inclui o sistema de arquivos de rede <acronym>NFS</acronym> e a Coleção de Ports do FreeBSD fornece vários aplicativos FUSE para suportar muitos outros sistemas de arquivos.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="database-systems"> - <para>Existe algum sistema de Banco de Dados para o - FreeBSD?</para> + <question xml:id="mount-dos"> + <para>Como faço para montar uma partição secundária do DOS?</para> </question> <answer> - <para>Sim! Veja a seção de <link xlink:href="../../../../commercial/software_bycat.html#CATEGORY_DATABASE"> - Fabricantes Comerciais</link> do Web site do - FreeBSD.</para> + <para>As partições secundárias do DOS são encontradas depois de <emphasis>todas</emphasis> as partições primárias. Por exemplo, se <literal>E</literal> for a segunda partição DOS na segunda unidade SCSI, haverá um arquivo de dispositivo para a <quote>slice 5</quote> em <filename>/dev</filename>. Para montá-lo:</para> - <para>Dê uma olhada também na - seção de <link xlink:href="../../../../ports/databases.html"> - Databases</link> da Coleção de - <literal>Ports</literal> do FreeBSD.</para> + <screen><prompt>#</prompt> <userinput>mount -t msdosfs /dev/da1s5 /dos/e</userinput></screen> </answer> </qandaentry> <qandaentry> - <question xml:id="oracle-support"> - <para>Posso rodar o Oracle no FreeBSD?</para> + <question xml:id="crypto-file-system"> + <para>Existe um sistema de arquivos criptográficos para o FreeBSD?</para> </question> <answer> - <para>Pode. As páginas a seguir descrevem exatamente - como configurar o Oracle para Linux no FreeBSD:</para> - - <itemizedlist> - <listitem> - <para><link xlink:href="http://www.scc.nl/~marcel/howto-oracle.html"> - http://www.scc.nl/~marcel/howto-oracle.html</link></para> - </listitem> - - <listitem> - <para><link xlink:href="http://www.lf.net/lf/pi/oracle/install-linux-oracle-on-freebsd"> - http://www.lf.net/lf/pi/oracle/install-linux-oracle-on-freebsd</link></para> - </listitem> - </itemizedlist> + <para>Sim, o <citerefentry><refentrytitle>gbde</refentrytitle><manvolnum>8</manvolnum></citerefentry> e o <citerefentry><refentrytitle>geli</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Consulte a seção <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/disks-encrypting.html">Partições de Disco com Criptografia</link> do Handbook do FreeBSD.</para> </answer> </qandaentry> - </qandaset> - </chapter> - - <chapter xml:id="applications"> - <title>Aplicações de Usuário</title> - <qandaset> <qandaentry> - <question xml:id="user-apps"> - <para>Então, onde estão todas as - aplicações de usuários?</para> - </question> - - <answer> - <para>Por gentileza, dê uma olhada <link xlink:href="../../../../ports/index.html">na página do - <literal>Ports</literal></link> para - informações sobre pacotes de programas - disponíveis na Coleção de - <literal>Ports</literal> do FreeBSD. A lista atualmente - ultrapassa &os.numports; aplicações e - está crescendo diariamente, então retorne - à página e verifique freqüentemente as - aplicações, ou entã inscreva-se na - lista de discussão - <literal>freebsd-announce</literal> <link linkend="mailing">mailing list</link> para - atualizações periódicas ou novas - adições.</para> - - <para>A maioria dos <literal>ports</literal> devem estar - disponíveis para as versões 2.2, 3.x e 4.x, - e muitos deles devem funcionar também em sistemas - 2.1.x. Cada vez que um lançamento do FreeBSD - é produzido, um - <foreignphrase>snapshot</foreignphrase> da árvore - do <literal>ports</literal> do momento da - lançamento também é incluída - no diretório <filename>ports/</filename>.</para> - - <para>O FreeBSD também suporta o conceito de - <quote>pacote</quote>, que essencialmente nada mais - é do que uma distribuição - binária compactada com o gzip e com um pouco de - inteligência extra embutido nesse pacote, para fazer - o trabalho que é requerido para uma - instalação customizada. Um pacote pode ser - instalado e desinstalado repetidas vezes de forma - fácil, sem ter que se conhecer os detalhes - horrendos dos arquivos que ele inclui.</para> - - <para>Use o menu de instalação de pacotes em - <filename>/stand/sysinstall</filename> (sobre a - opção do pos-configuration menu) ou invoque - o comando &man.pkg.add.1; nos arquivos de pacotes - específicos que voc;ê quer instalar. Os - pacotes podem ser identificados normalmente pelo sufixo - <filename>.tgz</filename> e o pessoal da - distribuição em CDROM tem um - diretório <filename>/packages/All </filename> no cd - que conté esses arquivos. Eles podem também - ser baixados pela rede para várias versões - do FreeBSD nos seguintes endereços: do (sobre a - opção PostConfiguration do menu) ou invoque - o comando &man.pkg.add.1;</para> - - <variablelist> - <varlistentry> - <term>para o 2.2.8-RELEASE/2.2.8-STABLE </term> - <listitem> - <para><link xlink:href="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-2.2.8/"> - ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-2.2.8/</link></para> - </listitem> - </varlistentry> - - <varlistentry> - <term>para o 3.X-RELEASE/3.X-STABLE</term> - <listitem> - <para><link xlink:href="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-3-stable/"> - ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-3-stable/</link></para> - </listitem> - </varlistentry> - - <varlistentry> - <term>para o 4.X-RELEASE/4-STABLE</term> - <listitem> - <para><link xlink:href="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-4-stable/"> - ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-4-stable/</link></para> - - </listitem> - </varlistentry> + <question xml:id="grub-loader"> + <para>Como inicializo o FreeBSD e o <trademark class="registered"> Linux </trademark> utilizando o <application>GRUB</application>?</para> + </question> - <varlistentry> - <term>para o 5.X-CURRENT</term> - <listitem> - <para><link xlink:href="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-5-current/"> - ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/i386/packages-5-current</link></para> - </listitem> - </varlistentry> - </variablelist> + <answer> + <para>Para inicializar o FreeBSD usando o <application>GRUB</application>, adicione o seguinte ao <filename>/boot/grub/menu.lst</filename> ou ao <filename> /boot/grub/grub.conf</filename>, dependendo de qual é usado pela sua distribuição <trademark class="registered"> Linux </trademark>.</para> - <para>ou em um sítio espelho mais perto de - você.</para> + <programlisting>title FreeBSD 9.1 + root <replaceable>(hd0,a)</replaceable> + kernel /boot/loader</programlisting> - <para>Note que nem todos os <literal>Ports</literal> podem - estar disponíveis em formato de pacotes, visto que - a atualização da Coleção de - <literal>Ports</literal> do FreeBSD é muito - freqüente, e novos programas são - constantemente adicionados, e outros são - atualizados. É sempre bom verificar periodicamente - quais pacotes estão disponíveis no servidor - FTP mestre do projeto FreeBSD, o <link xlink:href="ftp://ftp.FreeBSD.org/pub/FreeBSD/">ftp.FreeBSD.org.</link> - </para> + <para>No qual <replaceable>hd0,a</replaceable> aponta para a partição raiz no primeiro disco. Para especificar o número da slice, use algo como isto <replaceable>(hd0,2,a)</replaceable>. Por padrão, se o número da slice for omitido, o <application>GRUB</application> pesquisará a primeira slice que tiver a partição <literal>a</literal>.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="missing-libcso30"> - <para>Onde eu encontro a libc.so.3.0?</para> + <question xml:id="booteasy-loader"> + <para>Como inicializo o FreeBSD e o <trademark class="registered">Linux</trademark> usando o <application>BootEasy?</application></para> </question> <answer> - <para>Você está tentando usar um pacote - construído para o FreeBSD 2.2 ou para - versões posteriores, em um sistema 2.1.X. Por - gentileza, dê uma olhada na seção - anterior e pegue o <literal>port</literal>/pacote correto - para o seu sistema.</para> + <para>Instale o LILO no inÃcio da partição de inicialização <trademark class="registered">Linux</trademark> em vez de no Master Boot Record. Você poderá então inicializar o LILO a partir do <application>BootEasy</application>.</para> + + <para>Isto é recomendado ao executar o <trademark class="registered">Windows</trademark> e o <trademark class="registered">Linux</trademark>, pois torna mais fácil fazer o <trademark class="registered">Linux</trademark> inicializar novamente se o <trademark class="registered">Windows</trademark> for reinstalado.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="missing-libcso40"> - <para> Por que eu estou tendo problemas cuja mensagem de - erro mostra <quote>Error: can't find - libc.so.4.0</quote>?.</para> + <question xml:id="changing-bootprompt"> + <para>Como faço para alterar o prompt de inicialização de <literal>???</literal> para algo mais significativo?</para> </question> <answer> - <para>Acidentalmente você pegou um pacote - construído para FreeBSD 4.X ou para o 5.X e - está tentando instala-lo no seu FreeBSD 2.X ou 3.X. - Por favor, pegue a versão correta dos - pacotes.</para> + <para>Isso não pode ser feito com o gerenciador de inicialização padrão sem reescrevê-lo. Há vários outros gerenciadores de inicialização na categoria <filename>sysutils</filename> da coleção de ports.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="emul"> - <para> Por que o ghostscript gera um monte de erros no meu - 386/486SX?</para> + <question xml:id="removable-drives"> + <para>Como faço para usar uma nova unidade removÃvel?</para> </question> <answer> - <para>Deixe-me adivinhar. Você não tem um - co-processador matemático, certo? Será - necessário adicionar um co-processador - matemático alternativo ao seu - <foreignphrase>kernel</foreignphrase>; você pode - fazer isso adicionando a seguinte linha no arquivo de - configuração do seu - <foreignphrase>kernel</foreignphrase>, e depois - recompilá-lo:</para> + <para>Se a unidade já tiver um sistema de arquivos, use um comando como este:</para> - <programlisting>options GPL_MATH_EMULATE</programlisting> + <screen><prompt>#</prompt> <userinput>mount -t msdosfs /dev/da0s1 /mnt</userinput></screen> - <note> - <para>Quando você fizer isto, será - necessário remover a opção - <literal>MATH_EMULATE</literal></para> - </note> - </answer> - </qandaentry> + <para>Se a unidade só for usada com sistemas FreeBSD, particione-a com <acronym>UFS</acronym> ou <acronym>ZFS</acronym>. Isso fornecerá suporte a nomes longos de arquivo, melhoria no desempenho e na estabilidade. Se a unidade for usada por outros sistemas operacionais, uma escolha mais portátil, como por exemplo o msdosfs, será mais apropriada.</para> - <qandaentry> - <question xml:id="sco-socksys"> - <para>Por que aplicações do SCO/iBCS2 - bombardeiam o ``socksys''? (FreeBSD 3.0 e anteriores, - apenas).</para> - </question> + <screen><prompt>#</prompt> <userinput>dd if=/dev/zero of=/dev/da0 count=2</userinput> +<prompt>#</prompt> <userinput>gpart create -s GPT /dev/da0</userinput> +<prompt>#</prompt> <userinput>gpart add -t freebsd-ufs /dev/da0</userinput></screen> - <answer> - <para>Primeiro, é necessário editar o arquivo - <filename>/etc/sysconfig</filename> (ou - <filename>/etc/rc.conf</filename>, veja o &man.rc.conf.5;) - e modificar a última seção, alterando - para <literal>YES</literal> a seguinte - variável:</para> + <para>Finalmente, crie um novo sistema de arquivos:</para> - <programlisting># Set to YES if you want ibcs2 (SCO) emulation loaded at startup -ibcs2=NO</programlisting> + <screen><prompt>#</prompt> <userinput>newfs /dev/da0p1</userinput></screen> - <para>Essa alteração fará o sistema - carregar os módulos de - <foreignphrase>kernel</foreignphrase> do ibcs2 na - inicialização.</para> + <para>e monte-o:</para> - <para>Depois, será necessário alterar o - /compat/ibcs2/dev para parecer com:</para> + <screen><prompt>#</prompt> <userinput>mount /dev/da0s1 /mnt</userinput></screen> - <screen>lrwxr-xr-x 1 root wheel 9 Oct 15 22:20 X0R@ -> /dev/null -lrwxr-xr-x 1 root wheel 7 Oct 15 22:20 nfsd@ -> socksys --rw-rw-r-- 1 root wheel 0 Oct 28 12:02 null -lrwxr-xr-x 1 root wheel 9 Oct 15 22:20 socksys@ -> /dev/null -crw-rw-rw- 1 root wheel 41, 1 Oct 15 22:14 spx</screen> + <para>É uma boa ideia adicionar uma linha ao <filename>/etc/fstab</filename> (veja <citerefentry><refentrytitle>fstab</refentrytitle><manvolnum>5</manvolnum></citerefentry>) para que você possa digitar apenas <command>mount /mnt</command>no futuro:</para> - <para>É necessário que o socksys aponte para - <filename>/dev/null</filename> (veja &man.null.4;) para - fingir o processo de abertura e fechamento do device. O - código mais recente (<literal>-CURRENT</literal>) - se encarregará dos outros detalhes. Essa maneira - de trabalhar o socksys é bem mais limpa do que a - forma que era usada anteriormente. Se você quer que - o driver <filename>spx</filename> fique - disponível para um socket X local, defina a - opção <literal>SPX_HACK</literal> no - <foreignphrase>kernel</foreignphrase> do FreeBSD quando - você o recompilar.</para> + <programlisting>/dev/da0p1 /mnt ufs rw,noauto 0 0</programlisting> </answer> </qandaentry> <qandaentry> - <question xml:id="configure-inn"> - <para> Como eu configuro um sistema de INN (Internet News) - na minha estação? - </para> - </question> - - <answer> - <para>Depois de instalar o pacote <package>news/inn</package> ou o - <literal>port</literal>, um excelente lugar para iniciar - é <link xlink:href="http://www.cis.ohio-state.edu/~barr/INN.html">Dave - Barr's INN Page</link> onde voçe - encontrará o <literal>FAQ</literal> do INN. - </para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="ms-frontpage"> - <para>Qual versão do Microsoft FrontPage eu devo - usar?</para> + <question xml:id="mount-cd-superblock"> + <para>Por que recebo o erro <errorname>Incorrect super block</errorname> ao montar um CD?</para> </question> <answer> - <para>Use os <literal>Ports</literal>, Luke! Uma - versão previamente corrigida do Apache,<package>apache13-fp</package>, está - disponível na árvore do - <literal>Ports</literal>.</para> + <para>O tipo de dispositivo a ser montado deve ser especificado. Isso está descrito no Handbook na seção <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/creating-cds.html#mounting-cd"> Usando CDs de Dados</link>.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="java"> - <para>O FreeBSD suporta Java?</para> + <question xml:id="cdrom-not-configured"> + <para>Por que recebo o erro <errorname>Device not configured</errorname> ao montar um CD?</para> </question> <answer> - <para>Veja a página <link xlink:href="../../../../java/index.html"> - http://www.FreeBSD.org/java/</link>.</para> + <para>Isso geralmente significa que não há CD na unidade ou a unidade não está visÃvel no barramento. Consulte a seção <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/creating-cds.html#mounting-cd"> Usando CDs de Dados</link> do Handbook para uma discussão detalhada desta questão.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="ports-3x"> - <para>Por que eu não consigo compilar determinado - <literal>port</literal> na minha estação - 3.X-STABLE?</para> + <question xml:id="cdrom-unicode-filenames"> + <para>Por que todos os caracteres não-ingleses em nomes de arquivos aparecem como <quote>?</quote> em meus CDs quando montados no FreeBSD?</para> </question> <answer> - <para>Caso esteja usando uma versão do FreeBSD - significativamente mais velha do que o -CURRENT ou o - -STABLE, será necessário usar o kit de - atualização dos <literal>Ports</literal>, - disponível em <link xlink:href="../../../../ports/index.html">http://www.FreeBSD.org/ports/</link>. - Caso esteja atualizado mas ainda assim você tem - dificuldades, é provável que alguém - disponibilizou uma versão do programa que funciona - perfeitamente no -CURRENT mas que não compila - corretamente no -STABLE. Por gentileza, envie um - Relatório de Problemas com o comando &man.send-pr.1; - porque a coleção de <literal>Ports</literal> - deve funcionar tanto no -STABLE quanto no -CURRENT.</para> + <para>O CD provavelmente usa a extensão <quote>Joliet</quote> para armazenar informações sobre arquivos e diretórios. Isso é discutido na seção <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/creating-cds.html#mounting-cd">Usando CD-ROMs de Dados</link> do Handbook.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="find-ldso"> - <para>Onde posso encontrar o arquivo ld.so?</para> + <question xml:id="burncd-isofs"> + <para>Um CD gravado no FreeBSD não pode ser lido sob nenhum outro sistema operacional. Por quê?</para> </question> <answer> - <para>Algumas aplicações cujo formato - binário é o a.out, como o Netscape - Navigator, necessitam das bibliotecas a.out. Uma - versão do FreeBSD nativamente construído com - bibliotecas ELF não instala as bibliotecas a.out - por padrão. Você terá problemas por - não ter o <filename>/usr/libexec/ld.so</filename>, - se esse for o caso do seu sistema. Estas bibliotecas - estão disponíveis embutidas na - distribuição compat22. Utilize o - &man.sysinstall.8; para instalá-los. Pode-se - instalá-lo apartir do código fonte do - FreeBSD:</para> - - <screen>&prompt.root; <userinput>cd /usr/src/lib/compat/compat22</userinput> -&prompt.root; <userinput>make install clean</userinput></screen> - - <para>Se quiser instalar as bibliotecas mais recentes do - compat22 sempre que executar o <command>make - world</command>, edite - <filename>/etc/make.conf</filename> para incluir - <varname>COMPAT22=YES</varname>. Bibliotecas de - compatibilidade antigas raramente sofrem mudanças , - as vezes nunca, então geralmente não - é necessário.</para> - <para> Também veja as páginas de ERRATAS para - o 3.1-RELEASE e 3.2-RELEASE.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="ports-update"> - <para>Eu atualizei meus fontes. E agora, como eu atualizo - meus <literal>Ports</literal> instalados?</para> - </question> - - <answer> - <para>FreeBSD não inclui uma ferramenta de - atualização do <literal>ports</literal>, mas - existem algumas ferramentas que tornam o processo de - atualização dos <literal>Ports</literal> uma - tarefa, digamos, fácil. É possível - ainda instalar algumas ferramentas adicionais que - facilitam o gerenciamento dos <literal>Ports</literal> - instalados</para> - - <para>O comando &man.pkg.version.1; pode gerar um script que - atualizará os <literal>ports</literal> instalados - para as últimas versões da árvore de - <literal>Ports</literal>.</para> - - <screen>&prompt.root; <userinput>pkg_version -c > /tmp/myscript</userinput></screen> - - <para>O script de saída <emphasis>deve</emphasis> ser - editado manualmente antes de ser usado. As versões - mais recentes do &man.pkg.version.1; forçam a - edição do arquivo, colocando um &man.exit.1; - no começo do script.</para> - - <para>A saída do script deve ser salva pois ela gera - informações sobre os pacotes que são - dependências dos que estão sendo atualizados. - Tais dependências podem precisar ser atualizadas ou - não, dependendo de cada uma delas. Os casos comuns - onde as dependências precisam ser atualizadas - é quando a versão das bibliotecas - compartilhadas foram alteradas, portanto o - <literal>port</literal> que usava aquela biblioteca - precisa ser atualizado para que a nova versão seja - usada.</para> - - <para>Caso tenha espaço o bastante em disco , pode - ser interessante usar a ferramenta - <command>portupgrade</command> para automatizar o processo - de atualização das aplicações - instalados por meio de <literal>ports</literal> ou - pacotes. Posto que ele foi programado em Ruby, o - <command>portupgrade</command> é um candidato - improvável à se tornar parte da - árvore principal do FreeBSD. Mas isso não - evita que qualquer pessoa use o programa. Alias, ele - é uma ótima ferramenta. Ele está - disponível em <package>sysutils/portupgrade</package>.</para> - - <para>Se a estação fica constantemente - conectada, é interessante usar o sistema - &man.periodic.8; para gerar um relatório semanal - sobre as versões do <literal>Ports</literal> que - podem ser atualizadas. Pra configurar o sistema para - isso, insira a linha - <literal>weekly_status_pkg_enable="YES"</literal> no - <filename>/etc/periodic.conf</filename>.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="minimal-sh"> - <para>Por que o <command>/bin/sh</command> é - tão pequeno? Por que o FreeBSD não usa o - <command>bash</command> ou outro interpretador de comandos - (<foreignphrase>shell</foreignphrase>)?</para> - </question> - - <answer> - <para>Porque o POSIX diz que é assim que deve ser um - interpretador de comandos - (<foreignphrase>shell</foreignphrase>)?</para> - - <para>A reposta mais complicada: muitas pessoas precisam - escrever scripts <foreignphrase>shell</foreignphrase> que - sejam portáveis através de muitos sistemas. - É por isso que o POSIX especifica o interpretador - de comandos (<foreignphrase>shell</foreignphrase>) e - comandos utilitários com tanto detalhe. A maioria - dos scripts são escritos para o interpretador de - comandos Bourne (Bourne - <foreignphrase>shell</foreignphrase>), e várias - interfaces importantes de programação - (&man.make.1;, &man.system.3;, &man.popen.3; e - análogos em linguagens de alto-nível como - Perl e Tcl) o usam como interpretador de comandos - (<foreignphrase>shell</foreignphrase>) padrão. Por - ser tão amplamente utilizado é importante - que o interpretador de comandos - (<foreignphrase>shell</foreignphrase>) Bourne seja - rápido para carregar, seja determinístico em - seu comportamento, e que tenha uma pequena - alocação de memória. - </para> - - <para>A implementação atual é o nosso - melhor esforço para encontrar a maior parte destes - requerimentos simultaneamente. Como forma de manter o - <command>/bin/sh</command> do menor tamanho - possível, não incluímos muitas das - características convenientes que outros - interpretadores de comando - (<foreignphrase>shell</foreignphrase>) possuem. É - por isso que a Coleção de - <literal>Ports</literal> disponibiliza outros - interpretadores de comandos - (<foreignphrase>shell</foreignphrase>) com - características mais abrangentes, como o bash, o - csh, o tcsh, e o zsh. (Você pode comparar a - utilização de memória entre todos - esses interpretadores de comandos - (<foreignphrase>shell</foreignphrase>), analisando as - colunas <quote>VSZ</quote> e <quote>RSS</quote> na - saída do comando <command>ps -u</command>.)</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="netscape-slow-startup"> - <para>Por que o Netscape e o Opera demoram tanto para - iniciar?</para> - </question> - - <answer> - <para>A resposta tradicional é que o DNS no seu - computador está mal configurado. O Netscape e o - Opera fazem verificação de DNS ao iniciar, e - por isso não se tornarão disponíveis - até que obtenham uma resposta do servidor DNS ou - até que eles determinem que a estação - não está conectada na rede.</para> + <para>Isso significa que um raw file foi gravado no CD, em vez de criar um sistema de arquivos ISO 9660. Dê uma olhada na seção <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/creating-cds.html#mounting-cd">Usando <acronym> CD</acronym>s de Dados</link>.</para> </answer> </qandaentry> - </qandaset> - </chapter> - - <chapter xml:id="kernelconfig"> - <title>Configuraçãao do - <foreignphrase>Kernel</foreignphrase></title> - <qandaset> <qandaentry> - <question xml:id="make-kernel"> - <para>Eu gostaria de configurar meu - <foreignphrase>kernel</foreignphrase>. É - difícil?</para> + <question xml:id="copy-cd"> + <para>Como posso criar uma imagem de um CD de dados?</para> </question> <answer> - <para>De modo algum! Veja a <link xlink:href="../handbook/kernelconfig.html">seção - "kernel config" do &a.ptbr.p.handbook;</link>.</para> - - <note> - <para>Recomenda-se que você faça uma - cópia datada do seu <filename>kernel</filename> - na forma <filename>/kernel.AAMMDD</filename> e o - diretório <filename>/modules</filename> para - <filename>/modules.AAMMDD</filename> depois que estiver - tudo funcionando. Desta forma se você fizer - alguma bobagem quando mexer com a sua - configuração, pode-se iniciar aquele - <foreignphrase>kernel</foreignphrase> ao invés de - ter que desfazer tudo novamente no - <filename>kernel.GENERIC</filename>. Isso é - particularmente importante se você estiver dando - boot em um equipamento não suportado pelo - <foreignphrase>kernel</foreignphrase> genérico - (<literal>GENERIC</literal>).</para> - </note> + <para>Isso é discutido na seção Handbook sobre <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/creating-cds.html#mkisofs">como gravar dados em um sistema de arquivos <acronym>ISO</acronym> </link>. Para mais informações sobre como trabalhar com CD-ROMs, consulte a <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/creating-cds.html"> Seção Criando CDs </link> no capÃtulo sobre Armazenamento do Handbook.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="missing-hw-float"> - <para>A compilação do meu - <foreignphrase>kernel</foreignphrase> falha porque - está faltando o <literal>_hw_float</literal>. Como - eu resolvo o problema?</para> + <question xml:id="mount-audio-CD"> + <para>Por que não consigo usar o comando <command>mount</command> com um CD de áudio?</para> </question> <answer> - <para>Deixa eu adivinhar. Você removeu o - <filename>npx0</filename> (veja &man.npx.4;) do - arquivo de configuração do - <foreignphrase>kernel</foreignphrase> porque você - não possui um co-processador aritmético, - certo? Errado! :-) O <filename>npx0</filename> - é <emphasis>OBRIGATÓRIO</emphasis>. Mesmo - que você não tenha um co-processador - aritmético, o dispositivo - <filename>npx0</filename> <emphasis>deve</emphasis> - ser incluido.</para> + <para>Tentar montar um CD de áudio produzirá um erro do tipo <errorname>cd9660: /dev/cd0: Invalid argument</errorname>. Isso ocorre porque o comando <command>mount</command> só funciona em sistemas de arquivos. CDs de áudio não possuem sistemas de arquivos; eles têm apenas dados. Em vez disso, use um programa que leia CDs de áudio, como o pacote ou port <package>audio/xmcd</package>.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="why-kernel-big"> - <para>Por que meu <foreignphrase>kernel</foreignphrase> - é tão grande (cerca de 10MB)?</para> - </question> - - <answer> - <para>Provavelmente, seu - <foreignphrase>kernel</foreignphrase> foi compilado em - <emphasis>modo de depuração - (<literal>debug</literal>)</emphasis>. Um - <foreignphrase>kernel</foreignphrase> construído em - modo de depuração (<literal>debug</literal>) - contêm muitos símbolos usados para - depuração que aumentam muito o seu tamanho. - Note que se você está executando um FreeBSD - 3.0 ou superior, terá pouca, ou nenhuma, perda de - performance por usar um - <foreignphrase>kernel</foreignphrase> em modo de - depuração (<literal>debug</literal>), sendo - útil ter um para o caso de pane no sistema. - </para> - - <para>Entretanto, se você possui pouco espaço - em disco, ou simplesmente não quer executar um - <foreignphrase>kernel</foreignphrase> para - depuração, certifique-se que os dois itens - abaixo sejam verdadeiros:</para> - - <itemizedlist> - <listitem> - <para>Não existe a seguinte linha no arquivo de - configuração do - <foreignphrase>kernel</foreignphrase></para> - - <programlisting>makeoptions DEBUG=-g</programlisting> - </listitem> - - <listitem> - <para>Você não está executando - &man.config.8; com a opção - <option>-g</option>.</para> - </listitem> - </itemizedlist> - - <para>Ambas as situações acima fazem com que o - <foreignphrase>kernel</foreignphrase> seja compilado no - modo de depuração - (<literal>debug</literal>). Tão logo você - tenha certeza que não se enquadra naqueles itens, o - <foreignphrase>kernel</foreignphrase> poderá ser - compilado normalmente e notadamente diminuirá o - tamanho; a maioria dos - <foreignphrase>kernels</foreignphrase> tendem a ficar em - torno de 1.5MB a 2MB.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="multiport-serial-interrupts"> - <para>Porque estão ocorrendo conflitos de - interrupção com portas multi-seriais?</para> + <question xml:id="multi-session-CD"> + <para>Como eu faço para usar o comando <command>mount</command> com um CD multi-sessão?</para> </question> <answer> - <para>Quando se compila um - <foreignphrase>kernel</foreignphrase> com suporte a porta - multi-serial, ele avisa que somente a primeira porta - é testada e as demais são ignoradas devido a - conflitos de interrupção. Como eu conserto - isto?</para> - - <para>O problema, neste caso, é que o FreeBSD possui - código para evitar que o - <foreignphrase>kernel</foreignphrase> fique com lixo - (<foreignphrase>trashed kernel</foreignphrase>) por causa - de conflitos de hardware ou software. A maneira de - corrigir isto é excluindo as - definiçõs de IRQ em todas as portas exceto - uma. Veja o exemplo:</para> - - <programlisting># -# Multiport high-speed serial line - 16550 UARTS -# -device sio2 at isa? port 0x2a0 tty irq 5 flags 0x501 vector siointr -device sio3 at isa? port 0x2a8 tty flags 0x501 vector siointr -device sio4 at isa? port 0x2b0 tty flags 0x501 vector siointr -device sio5 at isa? port 0x2b8 tty flags 0x501 vector siointr</programlisting> + <para>Por padrão, o <citerefentry><refentrytitle>mount</refentrytitle><manvolnum>8</manvolnum></citerefentry> tentará montar a última trilha de dados (sessão) de um CD. Para carregar uma sessão anterior, use o argumento de linha de comando <option>-s</option>. Consulte <citerefentry><refentrytitle>mount_cd9660</refentrytitle><manvolnum>8</manvolnum></citerefentry> para exemplos especÃficos.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="generic-kernel-build-failure"> - <para>Porque todo <foreignphrase>kernel</foreignphrase> que - eu tento construir falha na compilação, - mesmo o GENERIC?</para> + <question xml:id="user-floppymount"> + <para>Como posso permitir que usuários não privilegiados montem CD-ROMs, DVDs, unidades USB e outras mÃdias removÃveis?</para> </question> <answer> - <para>Existem várias causas possíveis para - esse problema. Elas são, sem uma ordem particular: - </para> - - <itemizedlist> - <listitem> - <para>Você não está usando os - comandos <command>make buildkernel</command> e - <command>make installkernel</command>, e seus fontes - estão estruturados de forma diferente daqueles - usados para construir o sistema atual (por exemplo, - está sendo um 4.3-RELEASE em um sistema - 4.0-RELEASE). Se estiver sendo feita uma - atualização, leia o arquivo - <filename>/usr/src/UPDATING</filename>, prestando - atenção ao final da seção - <quote>COMMON ITEMS</quote>.</para> - </listitem> + <para>Como <systemitem class="username">root</systemitem>, defina a variável <varname>vfs.usermount</varname> do sysctl como <literal>1</literal>.</para> - <listitem> - <para>Você está usando os comandos - <command>make buildkernel</command> e <command>make - installkernel</command>, mas não garantiu a - correta finalização do comando - <command>make buildworld</command>. O <command>make - buildkernel</command> depende de arquivos gerados - pelo <command>make buildworld</command> para fazer seu - trabalho corretamente.</para> - </listitem> + <screen><prompt>#</prompt> <userinput>sysctl vfs.usermount=1</userinput></screen> - <listitem> - <para>Mesmo que você esteja tentando construir um - <link linkend="stable">FreeBSD-STABLE</link>, é - possível que os fontes tenham sido pegos quando - estavam sendo modificados, ou inconsistentes por - alguma outra razão; somente os releases - são absolutamente garantidos de serem - compilados, embora o <link linkend="stable">FreeBSD-STABLE</link> possa ser - compilado com sucesso na grande maioria das vezes. - Caso já não tenha conseguido, tente - buscar os fontes novamente e veja se o problema - já não foi resolvido. Tente um servidor - diferente, para o caso daquele que está sendo - usado estar com problemas.</para> - </listitem> - </itemizedlist> - </answer> - </qandaentry> - </qandaset> - </chapter> + <para>Para tornar o ajuste permanente, adicione a linha <literal>vfs.usermount=1</literal> ao arquivo <filename>/etc/sysctl.conf</filename> para que a variável seja redefinids no momento da inicialização do sistema.</para> - <chapter xml:id="disks"> - <title>Discos, Sistemas de Arquivos e Carregadores de - Inicialização (<foreignphrase>Boot - Loaders</foreignphrase>)</title> + <para>Os usuários só podem montar dispositivos para os quais tenham permissões de leitura. Para permitir que os usuários montem um dispositivo, as permissões devem ser definidas em <filename>/etc/devfs.conf</filename>.</para> - <qandaset> - <qandaentry> - <question xml:id="new-huge-disk"> - <para>Como eu mudo todo o meu sistema operacional para um - disco novo?</para> - </question> - - <answer> - <para>A melhor maneira de migrar seu sistema de um disco - para o outro é reinstalar completamente o SO na - nova unidade de armazenamento e depois migrar os dados dos - usuários do disco antigo para nova - instalação. Essa forma é a mais - recomendada, caso o sistema tenha sido -STABLE por mais de - uma versão, ou caso tenha atualizado um Release ao - invés de ter instalado um novo sistema. O booteasy - pode ser facilmente instalado com o comando - &man.boot0cfg.8;, de forma a permitir que o sistema possa - iniciar dois sistemas distintos, até que você - esteja satisfeito com o novo sistema. Pule o - próximo parágrafo para saber algumas formas - seguras de migrar os dados dos usuários para o novo - disco.</para> - - <para>Você pode ter decidido por não refazer - uma nova instalação; nesse caso será - necessário reparticionar o novo disco com o - <filename>/stand/sysinstall</filename>, ou &man.fdisk.8; - ou &man.disklabel.8;. Também é - necessário instalar o booteasy em ambas as unidades - com o comando &man.boot0cfg.8;, de forma que você - possa alternar a inicialização entre o novo - sistema e a configuração atual do mesmo, - até que a cópia dos dados tenha sido - efetuada.</para> - - <para>Agora, com um novo disco configurado, você - está pronto para começar a mover os dados da - antiga para nova unidade de armazenamento. Infelizmente - os dados não podem simplesmente ser copiados ao - acaso. Existem alguns arquivos especiais (como os - arquivos de dispositivos <filename>/dev</filename>), - flags, e links que tendem a não funcionar no novo - sistema, visto que esses arquivos ocupam inodes ou tem - informações específicas da unidade, e - por isso não podem ser copiados como um arquivo - comum. É necessário usar ferramentas que - entendam esse comportamento. Isso significa que - você terá que usar o &man.dump.8;. É - sempre uma boa idéia realizar esse processo de - cópia de dados em modo mono-usuário, contudo - tal precaução não é - obrigatória - é apenas sinal de - cuidado.</para> - - <para>Não é aconselhável usar nenhuma - outra ferramenta a não ser o &man.dump.8; e - &man.restore.8; para copiar o sistema de arquivos da - partição raiz ("/"). O - &man.tar.1; pode funcionar de forma satisfatória, - mas pode ser que não. Também é - ótima idéia usar o &man.dump.8; e - &man.restore.8; para copiar (ou mover completamente) os - dados em uma partição para uma outra - partição vazia. Os passos - necessários para usar o dump para copiar os dados - de uma partição existente para uma nova - partição são:</para> + <para>Por exemplo, para permitir que os usuários montem a primeira unidade USB, adicione:</para> - <procedure> - <step> - <para>Crie um novo sistema de arquivos com o - &man.newfs.8; na nova partição.</para> - </step> + <programlisting># Allow all users to mount a USB drive. + own /dev/da0 root:operator + perm /dev/da0 0666</programlisting> - <step> - <para>Monte a partição em um ponto de - montagem temporário.</para> - </step> + <para>Todos os usuários agora podem montar dispositivos que eles podem ler em um diretório que eles possuem:</para> - <step> - <para>Entre (cd) no ponto de montagem em - questão.</para> - </step> + <screen><prompt>%</prompt> <userinput>mkdir ~/my-mount-point</userinput> +<prompt>%</prompt> <userinput>mount -t msdosfs /dev/da0 ~/my-mount-point</userinput></screen> - <step> - <para>Finalmente mova os dados da partição - existente para a nova partição com o - &man.dump.8;.</para> - </step> - </procedure> + <para>Desmontar o dispositivo é simples:</para> - <para>Por exemplo, se a intenção é - copiar os dados da partição raiz para a - partição - <filename>/dev/ad1s1a</filename>, cujo ponto de - montagem temporário é o - <filename>/mnt</filename>, faça o seguinte:</para> - - <screen>&prompt.root; <userinput>newfs /dev/ad1s1a</userinput> -&prompt.root; <userinput>mount /dev/ad1s1a /mnt</userinput> -&prompt.root; <userinput>cd /mnt</userinput> -&prompt.root; <userinput>dump 0af - / | restore xf -</userinput></screen> - - <para>Redefinir a estrutura das partições com - o &man.dump.8; é um processo um pouco mais - trabalhoso. Caso você queira, por exemplo, unir o - conteúdo da partição - <filename>/var</filename> com as partições - de nível acima, crie uma partição que - seja grande o bastante para alocar o conteúdo de - ambas, copie a partição principal como no - exemplo descrito acima e depois copie as - sub-partições para os diretórios - vazios que o primeiro comando deve ter criado:</para> - - <screen>&prompt.root; <userinput>newfs /dev/ad1s1a</userinput> -&prompt.root; <userinput>mount /dev/ad1s1a /mnt</userinput> -&prompt.root; <userinput>cd /mnt</userinput> -&prompt.root; <userinput>dump 0af - / | restore xf -</userinput> -&prompt.root; <userinput>cd var</userinput> -&prompt.root; <userinput>dump 0af - /var | restore xf -</userinput></screen> - - <para>Para separar um diretório de sua estrutura - atual, ou seja, no mesmo exemplo ainda, alocar os dados de - <filename>/var</filename> em uma partição - própria quando na definição atual o - /var é apenas um diretório comum, é - necessário montar a sub partição no - diretório apropriado do ponto de montagem - temporário, simulando assim o sistema de arquivos a - ser criado a partir da raiz (montada no diretório - temporário), depois basta copiar os dados do - diretório antigo para nova - partição:</para> - - <screen>&prompt.root; <userinput>newfs /dev/ad1s1a</userinput> -&prompt.root; <userinput>newfs /dev/ad1s1d</userinput> -&prompt.root; <userinput>mount /dev/ad1s1a /mnt</userinput> -&prompt.root; <userinput>mkdir /mnt/var</userinput> -&prompt.root; <userinput>mount /dev/ad1s1d /mnt/var</userinput> -&prompt.root; <userinput>cd /mnt</userinput> -&prompt.root; <userinput>dump 0af - / | restore xf -</userinput></screen> - - <para>Talvez você prefira usar &man.cpio.1;, - &man.pax.1;, &man.tar.1; ao invés de &man.dump.8; - na hora de copiar os dados de usuários. Quando - este <literal>FAQ</literal> foi escrito, esses comandos - costumavam perder atributos especiais dos arquivos ou - mesmo alterar algumas permissões ou autoridade - (dono dos arquivos), portanto use esses comandos com - cuidado.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="dangerously-dedicated"> - <para>Um disco no modo <quote>dangerously dedicated</quote> - pode ser prejudicial a minha saúde?</para> - </question> - - <answer> - <para><anchor xml:id="dedicate"/>O processo de - instalação permite a escolha entre dois - modos distintos de particionar o(s) disco(s) - rígido. A maneira tradicional permite que outros - sistemas operacionais na mesma estação - possam acessar essas partições, criando - entradas na tabela do fdisk (entradas chamadas de - <quote>slices</quote> no FreeBSD) sob uma - partição FreeBSD própria. Uma - característica desse particionamento é - permitir múltiplos sistemas operacionais e permitir - a instalação de um gerenciador de - inicialização - (<foreignphrase>boot</foreignphrase>) para alternar entre - esses sistemas. A segunda maneira, a alternativa ao modo - tradicional faz uso do disco todo para o FreeBSD e - não faz esforços para se tornar - compatível com outros sistemas operacionais.</para> - - <para>Então, por que esse modo é chamado de - <quote>modo perigosamente dedicado</quote>? Um disco - particionado dessa forma não tem algumas - características tradicionais que os PCs poderiam - considerar entradas válidas do fdisk. Dependendo - das circunstâncias o PC pode reclamar e gerar - advertências sobre o disco em questão, assim - que o primeiro contato com essa unidade seja feito, ou - pior, o PC pode ainda danificar o processo de - inicialização - (<foreignphrase>boot</foreignphrase>) do BSD - (<foreignphrase>bootstrap</foreignphrase>) sem pedir - confirmação da alteração ou - até mesmo sem avisar o usuário dessa - mudança. O <quote>modo perigosamente - dedicado</quote> ainda costuma confundir várias - BIOS, inclusive as BIOS AWARD (encontradas, por exemplo no - HP Netserver e em sistemas Micronics assim como em muitos - outros) e as BIOS Symbios/NCR (da popular série - 53C8xx de controladoras SCSI). Não são - apenas esses dois modelos que podem apresentar - dificuldades com esse modo de particionamento de disco, a - lista completa é ainda maior. O principal sintoma - desse tipo de confusão é a presença - de mensagens de <errorname>read error</errorname> - apresentada pelo <foreignphrase>bootstrap</foreignphrase> - do FreeBSD quando ele tem dificuldades de encontrar-se; - outro sintoma é a falta de sistema operacional no - momento da inicialização do PC.</para> - - <para>Então porque esse modo de particionamento de - disco existe? Esse modo economiza o uso de alguns poucos - kbytes de espaço em disco, e pode, em contrapartida - gerar grandes problemas em uma nova - instalação do sistema. O modo - <quote>perigosamente dedicado</quote> em sua origem - é um desejo antigo dos usuários do FreeBSD, - especialmente durante a instalação, que - é simplesmente poder ignorar a - <quote>geometria</quote> de disco reconhecida pela BIOS e - usar o disco todo de forma independente, sem prestar - satisfação ao sistema básico de - entrada/saída do PC.</para> - - <para>O conceito de <quote>Geometria</quote> é - ultrapassado, mas infelizmente ainda faz parte do - coração da BIOS dos Computadores Pessoais, - sendo extremamente necessário para a - interação do computador com seus discos. - Quando o FreeBSD cria as partições, ele tem - que gravar sua localização de forma - correspondente a maneira que a BIOS irá - procurá-la. Se essa informação - não é acessível à BIOS, pode - ser que o sistema não consiga iniciar-se.</para> - - <para><quote>O modo Dangerously dedicated</quote> tenta - evitar esse desconforto fazendo a operação - se tornar mais simples. Em muitos casos essa forma de - particionamento funciona, mas ela foi criada para ser - usada como última alternativa à necessidade - de definir a geometria do disco - em 99% dos casos existem - formas mais vantajosas de resolver problemas com - geometria.</para> - - <para>Mas então, como evitar a necessidade do modo - <quote>DD</quote> na instalação do sistema? - Comece anotando os valores pra geometria que a BIOS diz - estar usando pros discos locais. Esses valores podem ser - apresentados pelo kernel do FreeBSD, especificando a - opção <option>-v</option> no prompt de - <literal>boot:</literal> usando <command>boot - -v</command> nas configurações do loader - do sistema operacional. Antes do programa de - instalação ser carregado o kernel apresenta - a listagem dos valores para a Geometria de discos - reconhecida pela BIOS do computador; não se - precipite nem se preocupe, essas informações - podem ser visualizadas paginando a tela para as - notações anteriores, sendo possível - assim verificar esses valores. Normalmente as unidades de - disco da BIOS são apresentadas na mesma ordem que o - FreeBSD as encontra, sendo primeiro as unidades IDE - seguido das SCSI.</para> - - <para>No momento do particionamento do disco, verifique se a - geometria apresentada pelo FDISK corresponde ao valor - apresentado pela BIOS; caso não corresponda use a - tecla <keycap>g</keycap> para redefinir esses valores. - Também pode ser necessário definir a - geometria manualmente em casos onde o disco em - questão está vazio e sem nenhum outro tipo - de partição criada, ou se o disco foi - instalado em um outro computador e foi colocado na - estação atual recentemente. Note que esse - tipo de complicação não é - comum, e quando acontece, acontece apenas com o disco onde - o FreeBSD está iniciando; Qualquer outro disco - existente no computador será controlado - perfeitamente pelo FreeBSD em qualquer - situação.</para> - - <para>Uma vez existindo a concordância de Geometria - entre a BIOS e o FreeBSD, com certeza seus problemas - terão acabado, e não existia a necessidade - de usar o modo <quote>DD</quote>. Contudo, se em casos - extremos ainda ocorrerem erros de <errorname>read - error</errorname> então pode cruzar os dedos e - usar o modo dedicado (DD), afinal não há - nada a perder, visto que das formas tradicionais sua BIOS - insiste em não cooperar de forma correta.</para> - - <para>Para voltar um disco particionado em modo - <quote>dangerously dedicated</quote> para uso normal em um - PC existem duas alternativas. A primeira é alocar - dados nulos (NULL bytes) o bastante na MBR do disco, de - forma que qualquer instalação posterior - acredite que o disco está vazio. Isso pode ser - feito, por exemplo, da seguinte maneira:</para> - - <screen>&prompt.root; <userinput>dd if=/dev/zero of=/dev/rda0 count=15</userinput></screen> - - <para>E a segunda forma, a - <quote>opção</quote> não documentada - do DOS:</para> - - <screen><prompt>C:\></prompt> <userinput>fdisk /mbr</userinput></screen> - - <para>instalará um novo registro mestre de - inicialização no disco em questão, - sobrepondo inclusive o - <foreignphrase>bootstrap</foreignphrase> do BSD.</para> - </answer> - </qandaentry> + <screen><prompt>%</prompt> <userinput>umount ~/my-mount-point</userinput></screen> - <qandaentry> - <question xml:id="safe-softupdates"> - <para>Em quais partições podemos seguramente - usar o softupdates? Eu tenho ouvido falar de problemas em - se usar o softupdates na partição - <filename>/</filename>?</para> - </question> - - <answer> - <para>A resposta breve: o softupdates pode ser usado com - segurança em todas as - partições.</para> - - <para>A resposta mais completa: existiam algumas - restrições quanto ao uso do softupdates na - partição raiz do sistema. Tais - restrições se deviam a duas - características causadas pelo softupdates, que eram - a pouquíssima chance de perder alguns dados da - partição raiz se acontecesse algum system - crash; apesar das probabilidades de perda de dados serem - mínimas, elas existem; não existe uma - danificação ou corrosão do sistema de - arquivos, apenas alguns arquivos podem ser simplesmente - perdidos. E a segunda característica é a - diminuição temporária de - espaço em disco.</para> - - <para>Quando o softupdates está ativado o kernel pode - levar até trinta segundos para realmente escrever - alguns dados fisicamente em disco. Caso algum arquivo - grande seja apagado, ela permanece temporariamente em - disco até que o kernel realmente o apague, o que - pode causar uma condição de corrida - simples(simple race condition). Imagine, apenas para - ilustrar, que você apague um arquivo enorme do - disco, e logo em seguida crie um outro arquivo tão - grande quanto o primeiro; a gravação de - metadados no disco pode não ter sido realizada - ainda quando o segundo arquivo é criado, ou seja o - primeiro não foi realmente definido como um arquivo - apagado. Nesse caso é provável que - você receba uma mensagem dizendo que não - existe espaço o bastante em disco para o segundo - arquivo, quando você tem certeza absoluta que o - espaço que acabou de ser liberado ao apagar o - primeiro arquivo é o suficiente para alocar o - segundo! Aí você tenta gravar o segundo - arquivo mais uma vez, alguns meros segundos depois, e o - processo de criação do mesmo, simplesmente - funciona como esperado. Esse tipo de comportamento - já levou mais de um usuário a - balançar sua cabeça e duvidar de sua - própria sanidade, ou mesmo da sanidade do sistema - de arquivos do FreeBSD; em caso extremos, de - dúvidas do bom estado de ambos, a sanidade do - sistema de arquivos e do próprio usuário - ;-)</para> - - <para>Se o sistema falhar antes do kernel aceitar um - conjunto de dados que tem que ser escrito no disco antes - do mesmo ser gravado, é provável que exista - perda dos dados em questão. Esse risco é - extremamente baixo, e geralmente é - contornável. O uso, por exemplo, das - opções de cache de gravação - das unidades de disco IDE é um fator que causa a - possibilidade desse tipo de desconforto, portanto é - altamente recomendável que essa opção - seja desativada nos discos IDE quando for usar o - softupdates.</para> - - <para>Esse comportamento afeta todas as - partições que estiverem com softupdates. - Portanto, o que isso implica para a partição - raiz?</para> - - <para>A maioria das informações vitais da - partição raiz mudam com pouquíssima - freqüência. Arquivos como o - <filename>/kernel</filename> e o conteúdo do - <filename>/etc</filename> são alterados apenas - durante a manutenção do sistema operacional, - ou quando os usuários alteram suas senhas. Caso o - sistema falhe durante essa janela de trinta segundos, - depois que uma dessas alterações foi feita, - é possível que alguns dados sejam perdidos. - Esse risco é baixíssimo e praticamente - indiferente para maioria das aplicações, mas - deve-se atentar que o risco existe. Caso seu sistema - não tolere nem uma possibilidade tão baixa - de riscos, não use o softupdates na - partição raiz!</para> - - <para>A <filename>/</filename> normalmente é uma das - menores partições do sistema. Por - padrão o FreeBSD coloca o diretório - <filename>/tmp</filename> na partição - <filename>/</filename>, comportamento este que pode ser - modificado por administradores de sistemas mais - experientes. Caso seu <filename>/tmp</filename> costume - ocupar muito espaço, pode ser criado um link - simbólico para o <filename>/var/tmp</filename>, o - comportamento inverso também é válido - e bastante seguro, caso o /tmp seja uma - partição grande o bastante para alocar os - dados do /var/tmp também.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="inappropriate-ccd"> - <para>O que é inapropriado no meu ccd?</para> - </question> - - <answer> - <para>Os sintomas desse tipo de dúvida:</para> - - <screen>&prompt.root; <userinput>ccdconfig -C</userinput> -ccdconfig: ioctl (CCDIOCSET): /dev/ccd0c: Inappropriate file type or format</screen> - - <para>Esse problema normalmente ocorre quando se tenta - concatenar as partições <literal>c</literal> - cujo tipo padrão é - <literal>unused</literal>. O ccd requer que a - partição que ele esteja usando seja do tipo - FS_BSDFFS. Edite o disklabel dos discos em questão - e altere o tipo das partições para - <literal>4.2BSD</literal>.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="ccd-disklabel"> - <para>Porque eu não posso editar o disklabel do meu - ccd?</para> - </question> - - <answer> - <para>Os sintomas desse tipo de dúvida:</para> - - <screen>&prompt.root; <userinput>disklabel ccd0</userinput> -(it prints something sensible here, so let us try to edit it) -&prompt.root; <userinput>disklabel -e ccd0</userinput> -(edit, save, quit) -disklabel: ioctl DIOCWDINFO: No disk label on disk; -use "disklabel -r" to install initial label</screen> - - <para>Isso acontece por que o disklabel que o ccd retorna - é na verdade um valor <quote>falso</quote>, que - não está realmente gravado no disco. Esse - problema pode ser resolvido ao reescrever explicitamente - esse dado, da seguinte forma:</para> + <para>Ativar a variável <varname>vfs.usermount</varname>, no entanto, tem implicações negativas de segurança. Uma maneira melhor de acessar uma mÃdia formatada para o <trademark class="registered">MS-DOS</trademark> é usar o pacote <package>emulators/mtools</package> da Coleção de Ports.</para> - <screen>&prompt.root; <userinput>disklabel ccd0 > /tmp/disklabel.tmp</userinput> -&prompt.root; <userinput>disklabel -Rr ccd0 /tmp/disklabel.tmp</userinput> -&prompt.root; <userinput>disklabel -e ccd0</userinput> -(agora irá funcionar)</screen> + <note> + <para>O nome do dispositivo usado nos exemplos anteriores deve ser alterado de acordo com a configuração.</para> + </note> </answer> </qandaentry> <qandaentry> - <question xml:id="mount-foreign-fs"> - <para>Posso montar outros tipos de partições - externas sobre FreeBSD?</para> + <question xml:id="du-vs-df"> + <para>Os comandos <command>du</command> e <command>df</command> mostram informações diferentes sobre a quantia disponÃvel de espaço em disco. O que está acontecendo?</para> </question> <answer> - <variablelist> - <varlistentry> - <term>Digital UNIX</term> - - <listitem> - <para>CDROMs do tipo UFS podem ser montados - diretamente no FreeBSD, já a montagem de - partições de disco do Digital UNIX que - usam o UFS pode ser um pouco mais complexa, - dependendo dos detalhes do particionamento de disco - para o sistema operacional em questão.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term>Linux</term> + <para>Isso se deve ao modo como esses comandos realmente funcionam. O <command>du</command> passa pela árvore de diretórios, ele mede o tamanho de cada arquivo e apresenta os totais. O <command> df </command> apenas pergunta ao sistema de arquivos quanto espaço ainda resta. Eles parecem ser a mesma coisa, mas um arquivo sem uma entrada de diretório afetará <command>df</command> mas não <command>du</command>.</para> - <listitem> - <para>A partir do 2.2, o FreeBSD suporta - partições do tipo - <literal>ext2fs</literal>. Veja o - &man.mount.ext2fs.8; para obter mais - informações.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term>NT</term> + <para>Quando um programa está usando um arquivo e o arquivo é excluÃdo, o arquivo não é realmente removido do sistema de arquivos até que o programa pare de usá-lo. O arquivo é imediatamente excluÃdo da listagem do diretório, no entanto. Como exemplo, considere um arquivo grande o suficiente para afetar a saÃda de <command>du</command> e <command>df</command>. Um arquivo sendo visualizado com <command> more </command> pode ser excluÃdo sem causar um erro. A entrada é removida do diretório para que nenhum outro programa ou usuário possa acessá-la. No entanto, o <command>du</command> mostra que ele desapareceu, já que percorreu a árvore de diretórios e o arquivo não está mais listado. Já o <command>df</command> mostra que ele ainda está lá, pois o sistema de arquivos sabe que o comando <command>more</command> ainda está usando esse espaço. Quando a sessão do <command>more</command> terminar, o <command>du</command> e <command>df</command> apresentarão o mesmo resultado.</para> - <listitem> - <para>Existe suporte somente-leitura as - partições NTFS no FreeBSD. Para obter - mais informações leia esse tutorial, - escrito por Mark Ovens em <link xlink:href="http://ukug.uk.FreeBSD.org/~mark/ntfs_install.html">http://ukug.uk.FreeBSD.org/~mark/ntfs_install.html</link>.</para> - </listitem> - </varlistentry> - </variablelist> + <para>Essa situação é comum em servidores web. Muitas pessoas configuram um servidor web no FreeBSD e esquecem de rotacionar os arquivos de log. O log de acesso enche o <filename>/var</filename>. O administrador novato exclui o arquivo, mas o sistema ainda reclama que a partição está cheia. Parar e reiniciar o programa do servidor Web liberaria o arquivo, permitindo que o sistema liberasse o espaço em disco. Para evitar que isso aconteça, configure o <citerefentry><refentrytitle>newsyslog</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para> - <para>Mais informações sobre esse assunto - seriam bem vindas :-)</para> + <para>Observe que o Soft Updates pode atrasar a liberação de espaço em disco e pode levar até 30 segundos para que a alteração fique visÃvel.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="mount-dos"> - <para>Como montar uma partição DOS - secundária?</para> + <question xml:id="add-swap-space"> + <para>Como posso adicionar mais espaço de swap?</para> </question> <answer> - <para>As partições secundárias do DOS - são encontradas depois que TODAS as - partições primárias foram definidas. - Por exemplo, se você tem a partição - <quote>E</quote> como a segunda partição - DOS no segundo disco SCSI, será necessário - criar um arquivo especial para essa <quote>quinta - partição</quote> (slice 5) no /dev, depois - montar /dev/da1s5:</para> - - <screen>&prompt.root; <userinput>cd /dev</userinput> -&prompt.root; <userinput>sh MAKEDEV da1s5</userinput> -&prompt.root; <userinput>mount -t msdos /dev/da1s5 /dos/e</userinput></screen> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="crypto-filesystem"> - <para>Existe um sistema de arquivos criptografado para o - FreeBSD?</para> - </question> - - <answer> - <para>Sim, veja o <literal>port</literal> <package>security/cfs</package>.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="nt-bootloader"> - <para>Como posso usar o carregador do NT para iniciar o - FreeBSD?</para> - </question> - - <answer> - <para>Esse procedimento é um pouco diferente entre o - FreeBSD 2.2.X e o 3.X (que tem um sistema de inicío - (<foreignphrase>boot</foreignphrase>) de 3 fases).</para> - - <para>A idéia geral se consiste em copiar os - primeiros setores da partição raiz nativa do - FreeBSD e transforma-los em um arquivo, para ser colocado - dentro da partição DOS/NT. Se assumir-mos - que você vai chamar esse arquivo de - <filename>c:\bootsect.bsd</filename> (inspirado por - <filename>c:\bootsect.dos</filename>), pode-se - então editar o arquivo - <filename>c:\boot.ini</filename> de forma a - carregá, mais ou menos assim:</para> - - <programlisting>[boot loader] -timeout=30 -default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS -[operating systems] -multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows NT" -C:\BOOTSECT.BSD="FreeBSD" -C:\="DOS"</programlisting> - - <para>No 2.2.X esse procedimento assume que o DOS, o NT, o - FreeBSD, ou o que quer que seja, tenha sido instalado em - suas partições respectivas do fdisk no - <emphasis>mesmo</emphasis> disco. Esse exemplo foi - testado em um sistema onde o DOS & NT estavam - instalados na primeira partição do fdisk, e - o FreeBSD na segunda. O FreeBSD havia sido configurado - para iniciar a partir de sua partição - nativa, e não pela MBR do disco.</para> - - <para>Monte um disquete formatado em DOS (caso ele tenha - sido convertido para NTFS) ou em FAT, por exemplo, sob o - ponto de montagem <filename>/mnt</filename>.</para> - - <screen>&prompt.root; <userinput>dd if=/dev/rda0a of=/mnt/bootsect.bsd bs=512 count=1</userinput></screen> - - <para>Reinicie o computador no DOS ou NT. Sobre o NTFS, - copie o arquivo <filename>bootsect.bsd</filename> e/ou - arquivo <filename>bootsect.lnx</filename> do disquete para - <filename>C:\</filename>. Modifique os atributos - originais(permissões) do - <filename>boot.ini</filename> com:</para> - - <screen><prompt>C:\></prompt> <userinput>attrib -s -r c:\boot.ini</userinput></screen> - - <para>Edite e adicione as entradas apropriadas no - <filename>boot.ini</filename> seguindo o exemplo anterior - e volte os atributos originais:</para> - - <screen><prompt>C:\></prompt> <userinput>attrib +s +r c:\boot.ini</userinput></screen> - - <para>Se o FreeBSD estiver inicializando pela MBR, - reconstrua-a com o comando <command>fdisk</command> do DOS - depois de configurar os sistemas para iniciar a partir de - suas partições nativas.</para> - - <para>No FreeBSD 3.X esse procedimento é mais - simples.</para> - - <para>Se o FreeBSD estiver instalado no mesmo disco que a - partição de inicialização - (<foreignphrase>boot</foreignphrase>) do NT está - instalada, copie o <filename>/boot/boot1</filename> para - <filename>C:\BOOTSECT.BSD</filename>. Contundo, se o - FreeBSD estiver em uma partição distinta, o - <filename>/boot/boot1</filename> não irá - funcionar, nesse caso, o <filename>/boot/boot0</filename> - será necessário. - - <warning> - <para>NÃO COPIE SIMPLESMENTE O - <filename>/boot/boot0</filename> NO LUGAR DO - <filename>/boot/boot1</filename>, POIS A TABELA DE - PARTIÇÃO SERÁ REESCRITA, E O - COMPUTADOR SE TORNARÁ NÃO - INICIALIZÁVEL!!</para> - </warning> O <filename>/boot/boot0</filename> precisa ser - instalado com o sysinstall, selecionando o gerenciador de - inicialização - (<foreignphrase>boot</foreignphrase>) do FreeBSD na tela - que o programa pergunta se você deseja usar um - gerenciador de inicialização(boot manager). - Isso se deve ao fato que o - <filename>/boot/boot0</filename> contém - informações sobre a área da tabela de - partições definidas como caracteres nulos, - mas o sysinstall copia a tabela de partições - antes de copiar o <filename>/boot/boot0</filename> para a - MBR.</para> - - <para>Quando o gerenciador de inicialização - (<foreignphrase>boot</foreignphrase>) do FreeBSD é - executado, ele grava qual último sistema - operacional foi carregado, definindo uma flag de sistema - ativo na tabela de partição referente aquele - sistema, e depois ele escreve todos os 512 bytes do - próprio gerenciador de inicialização - (<foreignphrase>boot</foreignphrase>) de volta na MBR, - portanto se o <filename>/boot/boot0</filename> - simplesmente for copiado para - <filename>C:\BOOTSECT.BSD</filename> será definida - uma tabela de partição vazia com a flag de - partição ativa, na MBR.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="lilo-bootloader"> - <para>Como posso iniciar o FreeBSD e o Linux com o - LILO?</para> - </question> - - <answer> - <para>Caso o FreeBSD e o Linux estejam no mesmo disco, basta - seguir as instruções de - instalação do LILO para carregar sistemas - operacionais não-Linux. De forma breve, tais - instruções são</para> - - <para>Carregue o Linux e adicione as seguintes linhas no - <filename>/etc/lilo.conf</filename>:</para> - - <programlisting>other=/dev/hda2 - table=/dev/hda - label=FreeBSD</programlisting> - - <para>(A definição acima assume que a sua - partição FreeBSD é conhecida pelo - Linux como <filename>/dev/hda2</filename>; altere esse - valor para sua necessidade). Depois basta executar o - comando <command>lilo</command> como usuário - <systemitem class="username">root</systemitem> e deve estar pronto.</para> - - <para>Caso o FreeBSD esteja em um outro disco, será - preciso criar uma entrada - <literal>loader=/boot/chain.b</literal> no LILO. Por - exemplo:</para> - - <programlisting>other=/dev/dab4 - table=/dev/dab - loader=/boot/chain.b - label=FreeBSD</programlisting> - - <para>Em alguns casos é necessário especificar - o número da unidade da BIOS para que o loader do - FreeBSD consiga carregar o sistema com sucesso, a partir - do segundo disco. Por exemplo, caso o disco SCSI com o - FreeBSD seja reconhecido pela BIOS como o disco 1, na tela - do carregadir de inicialização - (<foreignphrase>boot loader</foreignphrase>) do FreeBSD - será necessário definir:</para> - - <screen>Boot: <userinput>1:da(0,a)/kernel</userinput></screen> - - <para>No FreeBSD 2.2.5 e posteriores, o &man.boot.8; pode - ser configurado para que ele automaticamente defina essa - informação na hora da - inicialização - (<foreignphrase>boot</foreignphrase>).</para> - - <para>The <link xlink:href="http://sunsite.unc.edu/LDP/HOWTO/mini/Linux+FreeBSD.html"> - Linux+FreeBSD mini-HOWTO</link> é uma boa - referência sobre a utilização do - FreeBSD com o Linux.</para> + <para>Esta seção <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/adding-swap-space.html">do Handbook</link> descreve como fazer isso.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="booteasy-loader"> - <para>Como eu inicio o FreeBSD e o Linux usando o - BootEasy?</para> + <question xml:id="manufacturer-disk-size"> + <para>Por que o FreeBSD vê meu disco como sendo menor do que o fabricante diz que ele é?</para> </question> <answer> - <para>Instale o LILO no começo da sua - partição de inicialização - (<foreignphrase>boot</foreignphrase>) do Linux ao - invés de instala-lo na MBR. Agora o LILO pode ser - carregado a partir do BootEasy.</para> + <para>Os fabricantes de discos calculam gigabytes como um bilhão de bytes cada, enquanto o FreeBSD os calcula como 1.073.741.824 bytes cada. Isso explica por que, por exemplo, as mensagens de boot do FreeBSD reportarão um disco que supostamente tem 80 GB como contendo 76.319 MB.</para> - <para>Com Windows 9x e Linux essa é uma - ação recomendada sempre, para garantir que o - Linux possa ser iniciado de forma mais fácil caso - seja necessário reinstalar o Windows (que é - um sistema operacional que não espera nenhum outro - sistema na MBR).</para> + <para>Observe também que o FreeBSD irá (por padrão) <link linkend="disk-more-than-full">reservar</link> cerca de 8% do espaço em disco.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="changing-bootprompt"> - <para>Como eu altero a tela de inicialização - (<foreignphrase>boot</foreignphrase>) de - <literal>???</literal> para algo mais - significativo?</para> + <question xml:id="disk-more-than-full"> + <para>Como é possÃvel que uma partição esteja com mais de 100% de ocupação?</para> </question> <answer> - <para>Você não pode alterar esse comportamento - no gerenciador de inicialização - (<foreignphrase>boot</foreignphrase>) padrão sem - reescreve-lo. Existem inúmeros outros - gerenciadores de inicialização - (<foreignphrase>boot</foreignphrase>) na categoria - <filename>sysutils</filename> da da coleção - de <literal>ports</literal>, que oferecem esse - recurso.</para> - </answer> - </qandaentry> + <para>Uma parte de cada partição UFS (8%, por padrão) é reservada para uso pelo sistema operacional e pelo usuário <systemitem class="username">root</systemitem>. O <citerefentry><refentrytitle>df</refentrytitle><manvolnum>1</manvolnum></citerefentry> não contabiliza esse espaço ao calcular a coluna <literal>Capacity</literal>, portanto, ela pode exceder 100%. Observe que a coluna <literal>Blocks</literal> é sempre maior que a soma das colunas <literal>Used</literal> e <literal>Avail</literal>, geralmente por um fator de 8%.</para> - <qandaentry> - <question xml:id="removable-drives"> - <para>Possuo uma nova unidade de disco removível, - como posso usa-la?</para> - </question> - - <answer> - <para>Ainda que seja uma unidade removível como um - ZIP Drive, um EZ Drive (ou até um disquete, caso - queira usa-lo dessa maneira), ou um novo disco, uma vez - instalado e reconhecido pelo sistema e assim que o - cartucho/disquete/outra-coisa esteja ligado a unidade em - questão, as coisas passam a funcionar da mesma - forma para qualquer tipo de dispositivo.</para> - - <para><anchor xml:id="disklabel"/>(essa seção - é baseada no <link xlink:href="http://www.vmunix.com/mark/FreeBSD/ZIP-FAQ.html">ZIP - <literal>FAQ</literal> de Mark Mayo</link>)</para> - - <para>Caso o dispositivo seja um ZIP Drive ou um disquete - cujo sistema de arquivos já tenha sido criado como - sendo do tipo DOS, o seguinte comando é o bastante - para montá-lo:</para> - - <screen>&prompt.root; <userinput>mount -t msdos /dev/fd0c /floppy</userinput></screen> - - <para>caso seja um disquete, ou então:</para> - - <screen>&prompt.root; <userinput>mount -t msdos /dev/da2s4 /zip</userinput></screen> - - <para>caso seja um disco ZIP com as - configurações de fábrica.</para> - - <para>Para outros tipos de disco, veja como eles são - tratados, usando o &man.fdisk.8; ou - &man.sysinstall.8;.</para> - - <para>Os próximos exemplos serão para um ZIP - Drive controlado pela device da2, ou seja, correspondente - ao terceiro disco SCSI.</para> - - <para>A não ser que se trate de um disquete ou de um - disco removível que se planeje compartilhar com - outras pessoas, provavelmente é mais sensata a - idéia de colocar um sistema de arquivos do tipo BSD - nesse disco. Um sistema de arquivos desse tipo - possibilita usar o suporte a nomes longos de arquivos, ter - uma performance de, pelo menos 2x, e oferece muito mais - estabilidade e confiança. O primeiro passo - é redefinir a partição DOS da unidade - removível de forma que a mesma passe a ser do tipo - BSD; o &man.fdisk.8; ou - <filename>/stand/sysinstall</filename> podem ser usados - para esse fim, em um disco pequeno onde não se - queira preocupações quanto a possibilidade - de manter suporte a múltiplos sistemas - operacionais. Nesse caso simplesmente elimine toda a - partição FAT do disco e use o particionador - do BSD:</para> - - <screen>&prompt.root; <userinput>dd if=/dev/zero of=/dev/rda2 count=2</userinput> -&prompt.root; <userinput>disklabel -Brw da2 auto</userinput></screen> - - <para>O disklabel ou <filename>/stand/sysinstall</filename> - podem ser usados para criar múltiplas - partições do tipo BSD. Certamente o - usuário vai querer criar mais de uma - partição BSD se a intenção for - criar espaço de Swap. De qualquer forma, esse tipo - de ação é irrelevante em um disco - removível do tipo ZIP.</para> - - <para>Finalmente, crie um novo sistema de arquivos como - esse, que usa todo o disco em um ZIP Drive:</para> - - <screen>&prompt.root; <userinput>newfs /dev/rda2c</userinput></screen> - - <para>e monte-o:</para> - - <screen>&prompt.root; <userinput>mount /dev/da2c /zip</userinput></screen> - - <para>provavelmente é uma boa idéia adicionar - uma entrada no <filename>/etc/fstab</filename> para - facilitar o processo de montagem dessa unidade(veja - &man.fstab.5;)de forma que seja apenas necessário - digitar o comando <command>mount /zip</command> no - futuro:</para> - - <programlisting>/dev/da2c /zip ffs rw,noauto 0 0</programlisting> + <para>Para mais detalhes, procure prls opção <option>-m</option> em <citerefentry><refentrytitle>tunefs</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para> </answer> </qandaentry> - <qandaentry> - <question xml:id="mount-cd-superblock"> - <para>Por que eu tive o erro <errorname>Incorrect super - block</errorname> na hora de montar um CDROM?</para> - </question> + </qandaset> + </chapter> - <answer> - <para>É necessário avisar ao &man.mount.8; que - tipo de unidade está sendo montada. Essa - definição é tratada com mais detalhes - em <link xlink:href="../handbook/creating-cds.html"> na - seção de mídias ópticas do - &a.ptbr.p.handbook; </link>, mais precisamente na - seção <link xlink:href="../handbook/creating-cds.html#MOUNTING-CD">Usando - CDs de Dados</link>.</para> - </answer> - </qandaentry> + <chapter xml:id="all-about-zfs"> + <title>ZFS</title> + <qandaset> <qandaentry> - <question xml:id="cdrom-not-configured"> - <para><errorname>Device not configured</errorname> ocorre na - hora de montar o CDROM?</para> + <question xml:id="how-much-ram-for-zfs"> + <para>Qual é a quantidade mÃnima de RAM que um usuário deve ter para utilizar o ZFS?</para> </question> <answer> - <para>Geralmente esse tipo de comportamento indica que - não existe nenhum CD na unidade de CDROM, ou - então, que o CD em questão não - é visível ao barramento de dados do seu PC, - comum quando um CD-RW não pode ser lido por um - drive tradicional. Por gentileza, queira referir-se a - <link xlink:href="../handbook/creating-cds.html#MOUNTING-CD">Usando - CDs de Dados </link> da seção do - &a.ptbr.p.handbook; para uma discussão mais - detalhada sobre esse assunto.</para> + <para>É necessário um mÃnimo de 4 GB de RAM para uso confortável, mas as cargas de trabalho individuais podem variar muito.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="cdrom-unicode-filenames"> - <para>Porque todos caracteres não-Inglês - são apresentados como <quote>?</quote> no sistema - de arquivos do CD que acabou de ser montado no - FreeBSD?</para> + <question xml:id="what-is-zil"> + <para>O que é o ZIL e quando ele é usado?</para> </question> <answer> - <para>Provavelmente seu CDROM usa extensões - <quote>Joliet</quote> para armazenar - informações sobre tipos de arquivos e - diretórios. Esse assunto é discutido no - capítulo de <link xlink:href="../handbook/creating-cds.html"> - Criação e Uso de CDROMs do - &a.ptbr.p.handbook;</link>, mais precisamente na - seção <link xlink:href="../handbook/creating-cds.html#MOUNTING-CD">de Uso - de CDs de Dados</link>.</para> + <para>O <acronym>ZIL</acronym> (log de intenção do <acronym> ZFS </acronym>) é um log de gravação usado para implementar semânticas de compromisso de escrita posix entre travamentos. Normalmente, as gravações são agrupadas em grupos de transações e gravadas no disco quando preenchidas (<quote>Transaction Group Commit </quote>). No entanto, syscalls como <citerefentry><refentrytitle>fsync</refentrytitle><manvolnum>2</manvolnum></citerefentry> requerem um compromisso de que os dados são gravados no armazenamento estável antes de retornar. O ZIL é necessário para gravações que foram reconhecidas como gravadas, mas que ainda não estão no disco como parte de uma transação. Os grupos de transações contam com registro de data e hora. No caso de uma falha, o último registro de data e hora válido é encontrado e os dados ausentes são mesclados a partir do ZIL.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="burncd-isofs"> - <para>Eu queimei um CD no FreeBSD e agora esse disco - não pode ser lido em nenhum outro sistema - operacional. Por que?</para> + <question xml:id="need-ssd-for-zil"> + <para>Preciso de um SSD para o ZIL?</para> </question> <answer> - <para>Provavelmente você queimou um CD de forma crua - (usando raw mode) no seu sistema, ao invés de criar - um sistema de arquivos do tipo ISO 9660. Dê uma - olhada no <link xlink:href="../handbook/creating-cds.html"> - Capítulo de Criação de CDROMs do - &a.ptbr.p.handbook;</link>, em específico na - seção <link xlink:href="../handbook/creating-cds.html#RAWDATA-CD">criando - CDS de dados puros</link>.</para> + <para>Por padrão, o ZFS armazena o ZIL no pool com todos os demais dados. Se um aplicativo tiver uma carga de gravação pesada, o armazenamento do ZIL em um dispositivo separado e que tenha um desempenho de gravação sequencial sÃncrono muito rápido pode melhorar a performance do sistema de uma forma geral. Para outras cargas de trabalho, é improvável que um SSD consiga uma melhoria significativa.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="copy-cd"> - <para>Como posso criar uma imagem de um CD de dados?</para> + <question xml:id="what-is-l2arc"> + <para>O que é o L2ARC?</para> </question> <answer> - <para>A criação de imagens de CDs de dados - é discutida na seção <link xlink:href="../handbook/creating-cds.html#IMAGING-CD">duplicando - CDs de dados do &a.ptbr.p.handbook;</link>. Para mais - informações sobre unidades ópticas, - por gentileza, queira referir-se a seção - <link xlink:href="../handbook/creating-cds.html"> - Criação de CDs</link> no capítulo - de Armazenamento do &a.ptbr.p.handbook;.</para> + <para>O <acronym>L2ARC</acronym> é um cache de leitura armazenado em um dispositivo rápido, como um <acronym>SSD</acronym>. Esse cache não é persistente nas reinicializações. Observe que a RAM é usada como a primeira camada de cache e o L2ARC só é necessário se a quantidade de memória RAM for insuficiente.</para> + + <para>O L2ARC precisa de espaço no ARC para indexá-lo. Então, perversamente, um conjunto de trabalho que se encaixa perfeitamente no ARC não se encaixará mais perfeitamente se um L2ARC for usado porque parte do ARC estará mantendo o Ãndice L2ARC, empurrando parte do conjunto de trabalho para o L2ARC que é mais lento que a RAM.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="mount-audio-CD"> - <para>Por que um CD de áudio não pode ser - montado com o comando <command>mount</command>?</para> + <question xml:id="should-enable-dedup"> + <para>A ativação da funcionalidade de desduplicação é recomendável?</para> </question> <answer> - <para>Ao tentar montar um CD de áudio, o mais - provável é que ocorra um erro do tipo - <errorname>cd9660: /dev/acd0c: Invalid - argument</errorname>. Isso se deve ao fato que o - comando <command>mount</command> trabalha exclusivamente - com sistema de arquivos, o que não é o caso - de CDs de áudio. CDs de áudio contém - apenas dados, e por isso é necessário alguma - aplicação capaz de ler tais CDs. Use algum - programa como o <package>audio/xmcd</package>na - coleção de <literal>Ports</literal> do - FreeBSD para ler dados em CDs desse tipo.</para> - </answer> - </qandaentry> + <para>De um modo geral, não.</para> - <qandaentry> - <question xml:id="multi-session-CD"> - <para>Como eu monto um CD com múltiplas - sessões de gravação?</para> - </question> + <para>A deduplicação ocupa uma quantidade significativa de RAM e pode tornar mais lento os tempos de acesso ao disco para leitura e gravação. A menos que um esteja armazenando dados muito duplicados, como imagens de máquinas virtuais ou backups de usuários, é possÃvel que a deduplicação faça mais mal do que bem. Outra consideração é a incapacidade de reverter o status da deduplicação. Se os dados forem gravados quando a deduplicação estiver ativada, desabilitar a deduplicação não fará com que os blocos deduplicados sejam replicados até que sejam modificados em novamente.</para> - <answer> - <para>Por padrão, o &man.mount.8; tenta montar a - última trilha de dados (sessão) de um CD. - Caso queira montar uma sessão anterior pode-se usar - o argumento <option>-s</option> na linha de comando em - questão. Por gentileza, refira-se a página - de manual do comando &man.mount.cd9660.8; para obter - exemplos específicos do uso dessa e de outras - opções.</para> + <para>A deduplicação também pode levar há algumas situações inesperadas. Em particular, a exclusão de arquivos pode se tornar muito mais lenta.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="user-floppymount"> - <para>Como posso permitir que usuários comuns montem - disquetes, CDROMs e outros tipos de mídia - removível?</para> + <question xml:id="zpool-fully-full"> + <para>Não consigo excluir ou criar arquivos no meu pool do ZFS. Como posso consertar isso?</para> </question> <answer> - <para>Usuários comuns podem ter a permissão de - montar dispositivos. Veja como:</para> - - <procedure> - <step> - <para>Como <systemitem class="username">root</systemitem> defina a - variável <varname>vfs.usermount</varname> do - sysctl para <literal>1</literal>.</para> - - <screen>&prompt.root; <userinput>sysctl -w vfs.usermount=1</userinput></screen> - </step> - - <step> - <para>Como <systemitem class="username">root</systemitem> defina as - permissões apropriadas nos dispositivos - associados ao controle da mídia - removível.</para> - - <para>Por exemplo, para permitir que os usuários - possam montar a primeira unidade de disquete, - use:</para> - - <screen>&prompt.root; <userinput>chmod 666 /dev/fd0</userinput></screen> - - <para>Para permitir que os usuários do grupo - <systemitem class="groupname">operator</systemitem> montem a unidade de - CDROM, use:</para> + <para>Isso pode acontecer porque o pool está 100% cheio. O ZFS requer espaço no disco para gravar metadados de transação. Para restaurar o pool para um estado utilizável, primeiro faça o truncate do arquivo que irá excluir:</para> - <screen>&prompt.root; <userinput>chgrp operator /dev/cd0c</userinput> -&prompt.root; <userinput>chmod 640 /dev/cd0c</userinput></screen> - </step> - - <step> - <para>Finalmente, para tornar essa - alteração permanente, adicione a linha - <literal> vfs.usermount=1</literal> - no arquivo - <filename>/etc/sysctl.conf</filename>.</para> - </step> - </procedure> - - <para>Agora todos os usuários podem montar qualquer - disquete no <filename>/dev/fd0</filename> em algum - ponto de montagem que lhes pertença:</para> - - <screen>&prompt.user; <userinput>mkdir ~/my-mount-point</userinput> -&prompt.user; <userinput>mount -t msdos /dev/fd0 ~/my-mount-point</userinput></screen> - - <para>Os usuários no grupo - <systemitem class="groupname">operator</systemitem> agora tem permissão - para montar os CDs no <filename>/dev/cd0c</filename> - em qualquer ponto de montagem que lhes - pertença:</para> + <screen><prompt>%</prompt> <userinput>truncate -s 0 unimportant-file</userinput></screen> - <screen>&prompt.user; <userinput>mkdir ~/my-mount-point</userinput> -&prompt.user; <userinput>mount -t msdos /dev/cd0c ~/my-mount-point</userinput></screen> + <para>O truncamento de arquivo funciona porque uma nova transação não é iniciada, novos blocos de reserva são criados.</para> - <para>Desmontar o dispositivo é extremamente - simples:</para> - - <screen>&prompt.user; <userinput>umount ~/my-mount-point</userinput></screen> - - <para>Contudo, habilitar a opção - <varname>vfs.usermount</varname>, contudo, causa algumas - implicâncias quanto ao quesito segurança;. A - forma mais racional de acessar mídia do tipo MSDOS - no FreeBSD é usando a aplicação - <link xlink:href="http://www.FreeBSD.org/cgi/ports.cgi?query=%5Emtools-&stype=name">mtools - </link>, disponível na Coleção de - <literal>Ports</literal>.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="du-vs-df"> - <para>Os comandos <command>du</command> e - <command>df</command> apresentam quantias distintas de - espaço em disco disponível. O que - está havendo?</para> - </question> - - <answer> - <para>É necessário entender o que os comandos - <command>du</command> e <command>df</command> realmente - fazem. O <command>du</command> percorre a árvore - de diretórios medindo o tamanho de cada arquivo e - apresentando o total da soma de todos os arquivos - encontrados em um dado diretório, e posteriormente - apresentando a soma de ambos subdiretórios no - diretório de nível seguinte, - <command>df</command> simplesmente pergunta ao sistema de - arquivos quanto espaço ainda lhe resta. Parece o - mesmo comportamento, mas um arquivo alocado fora de um - diretório, por exemplo, afeta os dados apresentados - pelo <command>df</command>, mas não afeta o - <command>du</command>.</para> - - <para>Quando um programa está usando algum arquivo, e - este é apagado, o arquivo não é - retirado do sistema de arquivos até que o programa - em questão pare de usá-lo. Contudo, esse - arquivo é imediatamente deletado da listagem de - diretórios; isso pode ser mais bem observado com - algum paginador como o <command>more</command>. Por - exemplo, assuma que existe um arquivo grande o bastante - que sua presença seja perceptível claramente - na saída dos comandos <command>du</command> e - <command>df</command>. (Considerando que hoje em dia os - discos são bem grandes, o arquivo em questão - deve ser um arquivo de tamanho <emphasis>extremamente - considerável!</emphasis>) Caso o arquivo seja - apagado em quanto ele esteja sendo paginado com o - <command>more</command>, pode-se perceber que o - <command>more</command> não passa a reclamar que o - arquivo não pode mais ser visualizado no mesmo - instante. Contudo, a listagem, do diretório em - questão não apresentará mais esse - arquivo, de forma que nenhum usuário ou outro - programa possa acessá-lo. A entrada do arquivo no - diretório é simplesmente removida. O - <command>du</command> vai mostrar que esse arquivo - não existe mais — -- afinal, o du percorreu - todo o diretório e não encontrou esse - arquivo listado -- contudo o <command>df</command> mostra - que o arquivo continua no disco, pois o sistema de - arquivos sabe que o <command>more</command> continua - usando aquele espaço de dados que se encontram no - disco. Uma vez terminada a sessão do - <command>more</command>,<command>du</command> e - <command>df</command> concordarão entre si.</para> - - <para>Note que em sistemas de arquivos com softupdates, a - liberação de espaço em disco - também pode ser atrasada em até 30 segundos - dependendo da situação; apenas depois desse - tempo, a alteração em disco será - visível!</para> - - <para>Esse comportamento é comum e fácil de - ser observado em Servidores Web. Muitos usuários - configuram algum Servidor Web no FreeBSD e se esquecem de - rotacionar os arquivos de log da aplicação, - os quais entopem o <filename>/var</filename>. O novo - administrador do sistema deleta os arquivos de log em - questão, mas o sistema operacional continua - reclamando que a partição está cheia, - até que o Servidor Web seja desligado e religado, - de forma que a aplicação libera o arquivo e - permite que o sistema apague o arquivo, recuperando o - espaço em disco em questão. Para prevenir - que isso ocorra, configure o &man.newsyslog.8;.</para> + <note> + <para>Em sistemas que utilizam o ZFS com um dataset customizado, por exemplo com a funcionalidade de deduplicação ativada, o espaço pode não ficar disponÃvel imediatamente.</para> + </note> </answer> </qandaentry> <qandaentry> - <question xml:id="add-swap-space"> - <para>Como eu posso adicionar mais espaço para - <foreignphrase>swap</foreignphrase>?</para> + <question xml:id="zfs-ssd-trim"> + <para>O ZFS suporta TRIM para unidades de estado sólido?</para> </question> <answer> - <para>No capítulo <link xlink:href="../handbook/config-tuning.html">Configuração - e Ajuste Fino - (<foreignphrase>Tuning</foreignphrase>)</link> do - &a.ptbr.p.handbook;, pode ser encontrada uma <link xlink:href="../handbook/adding-swap-space.html">seção - </link> descrevendo como fazer isto.</para> + <para>O suporte ao ZFS TRIM foi adicionado ao FreeBSD 10-CURRENT com revisão r<revnumber>240868</revnumber>. O suporte ao ZFS TRIM foi adicionado a todas as branchs do FreeBSD-STABLE na revisão r<revnumber>252162</revnumber> e r<revnumber>251419</revnumber>, respectivamente.</para> + + <para>O ZFS TRIM é ativado por padrão e pode ser desativado adicionando-se esta linha ao arquivo <filename>/etc/sysctl.conf</filename>:</para> + + <programlisting>vfs.zfs.trim_disable=1</programlisting> + + <note> + <para>O ZFS TRIM pode não funcionar com todas as configurações, tal como um sistema de arquivos ZFS em um dispositivo com suporte a GELI.</para> + </note> </answer> </qandaentry> </qandaset> </chapter> <chapter xml:id="admin"> - <title>Administração do Sistema</title> + <title>Administração do Sistema</title> <qandaset> <qandaentry> <question xml:id="startup-config-files"> - <para>Onde estão os arquivos que configuram a - inicialização do sistema ?</para> - </question> - - <answer> - <para>Do FreeBSD 2.0.5R até o 2.2.1R, o arquivo de - configurações primário é o - <filename>/etc/sysconfig</filename>. Todas as - opções devem ser definidas nesse arquivo ou - então em outros, como o - <filename>/etc/rc</filename> (veja o manual para o - &man.rc.8;) e o <filename>/etc/netstart</filename></para> - - <para>Dê uma olhada no - <filename>/etc/sysconfig</filename> e altere as - variáveis de acordo com o que você quer - configurar no seu sistema. O arquivo é repleto de - comentários que auxiliam a correta - definição dos valores a serem - definidos.</para> - - <para>A partir do 2.2.1 até o 3.0, o - <filename>/etc/sysconfig</filename> foi renomeado para - &man.rc.conf.5;, que é auto-descritivo, e cuja - sintaxe foi melhorada no processo de - substituição. O - <filename>/etc/netstart</filename> agora se chama - <filename>/etc/rc.network</filename>, de forma que todos - os arquivos possam ser copiados com um simples comando - como um <command>cp /usr/src/etc/rc* /etc</command></para> - - <para>E depois, a partir do FreeBSD 3.1, o - <filename>/etc/rc.conf</filename> foi alterado para o - <filename>/etc/defaults/rc.conf</filename>. - <emphasis>Não edite esse arquivo!</emphasis> Ao - invés disso, para todas as entradas que você - queira alterar no - <filename>/etc/defaults/rc.conf</filename>, basta apenas - copiar a linha relativa à essa entrada para o - <filename>/etc/rc.conf</filename> e depois modificar seu - valor.</para> - - <para>Por exemplo, caso deseje iniciar o named, o servidor - DNS disponível no FreeBSD, a partir do FreeBSD 3.1 - basta fazer isso:</para> - - <screen>&prompt.root; <userinput>echo named_enable="YES" >> /etc/rc.conf</userinput></screen> - - <para>Para iniciar serviços locais no FreeBSD 3.1 e - posteriores, basta colocar os scripts shell de - inicialização desses serviços no - diretório <filename>/usr/local/etc/rc.d</filename>. - Tais shell scripts devem ser executáveis e - terminarem com a extensão .sh. No FreeBSD 3.0 ou - anteriores, o arquivo <filename>/etc/rc.local</filename> - era a única opção para iniciar - serviços/processos locais automaticamente.</para> - - <para>O arquivo <filename>/etc/rc.serial</filename> é - usado para a inicialização de portas seriais - (por exemplo, para definir as características das - portas, e assim por diante).</para> - - <para>O arquivo <filename>/etc/rc.i386</filename> é - usado para configurações específicas - de sistemas Intel e compatíveis, como por exemplo, - emulação iBCS2 ou definições - do sistema de console dos PC.</para> + <para>Onde estão os arquivos de configuração de inicialização do sistema?</para> + </question> + + <answer> + <para>O arquivo de configuração principal é o <filename>/etc/defaults/rc.conf</filename>, o qual está descrito em <citerefentry><refentrytitle>rc.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>. Os scripts de inicialização do sistema, tais como <filename>/etc/rc</filename> e <filename>/etc/rc.d</filename>, que são descritos em <citerefentry><refentrytitle>rc</refentrytitle><manvolnum>8</manvolnum></citerefentry>, incluem este arquivo. <emphasis>Não edite este arquivo!</emphasis> Em vez disso, para editar uma entrada do <filename>/etc/default/rc.conf</filename>, copie a linha para o arquivo <filename>/etc/rc.conf</filename> e altere-a lá.</para> + + <para>Por exemplo, se para iniciar <citerefentry><refentrytitle>named</refentrytitle><manvolnum>8</manvolnum></citerefentry>, o servidor DNS incluÃdo:</para> + + <screen><prompt>#</prompt> <userinput>echo 'named_enable="YES"' >> /etc/rc.conf</userinput></screen> + + <para>Para iniciar serviços locais, coloque seus shell scripts no diretório <filename>/usr/local/etc/rc.d</filename>. Estes shell scripts devem estar definidos como executáveis, o modo de arquivo padrão é <literal>555</literal>.</para> </answer> </qandaentry> <qandaentry> <question xml:id="adding-users"> - <para>Como posso adicionar um usuário de forma - simples?</para> + <para>Como eu adiciono um usuário facilmente?</para> </question> <answer> - <para>Use o comando &man.adduser.8;. Caso prefira uma forma - mais complexa (e mais completa), use o comando - &man.pw.8;.</para> + <para>Use o comando <citerefentry> <refentrytitle> adduser </refentrytitle> <manvolnum> 8 </manvolnum> </citerefentry>, para as situações mais complexas utilize o comando <citerefentry> <refentrytitle> pw </refentrytitle> <manvolnum> 8 </manvolnum> </citerefentry>.</para> - <para>Para remover o usuário do sistema, use o - comando &man.rmuser.8;. Mais uma vez, o &man.pw.8; - também funciona muito bem nesse caso.</para> + <para>Para remover o usuário, use o comando <citerefentry><refentrytitle>rmuser</refentrytitle><manvolnum>8</manvolnum></citerefentry> ou, se necessário, o comando <citerefentry><refentrytitle>pw</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para> </answer> </qandaentry> <qandaentry> <question xml:id="root-not-found-cron-errors"> - <para>Depois de editar o crontab, mensagens como - <errorname>root: not found</errorname> ficam aparecendo - sempre. Por que?</para> + <para>Por que eu continuo recebendo mensagens como <errorname>root: not found</errorname> depois de editar o arquivo <filename>/etc/crontab</filename>?</para> </question> <answer> - <para>Normalmente esse é um problema causado ao se - editar o crontab do sistema - (<filename>/etc/crontab</filename>) e depois usar o - &man.crontab.1; para instala-lo:</para> - - <screen>&prompt.root; <userinput>crontab /etc/crontab</userinput></screen> - - <para>Essa não é a forma correta de fazer as - coisas. O crontab do sistema tem um formato distinto do - crontab dos usuários, o qual o &man.crontab.1; - atualiza (o manual do &man.crontab.5; explica tais - diferenças de forma mais detalhada).</para> - - <para>Caso você tenha cometido esse engano, o novo - crontab é uma simples cópia do - <filename>/etc/crontab</filename>, ou seja, com um formato - errado. Apague-o com o comando:</para> + <para>Isto normalmente é causado pela edição do crontab do sistema. Esta não é a maneira correta de fazer as coisas, pois o crontab do sistema tem um formato diferente dos crontabs por usuário. O crontab do sistema possui um campo extra, especificando qual usuário irá executar o comando. O <citerefentry><refentrytitle>cron</refentrytitle> <manvolnum>8</manvolnum></citerefentry> assume que este usuário é a primeira palavra do comando a ser executado. Como esse comando não existe, essa mensagem de erro é exibida.</para> - <screen>&prompt.root; <userinput>crontab -r</userinput></screen> + <para>Para excluir o crontab extra incorreto:</para> - <para>Da próxima vez que editar o - <filename>/etc/crontab</filename>, nenhuma - ação precisa ser tomada para avisar o - &man.cron.8; das alterações. Ele vai - perceber as mudanças automaticamente.</para> - - <para>Caso queira executar alguma tarefa diária, - semanal ou mensal, é mais indicado adicionar alguns - scripts de shell sob o - <filename>/usr/local/etc/periodic</filename> e deixar o - programa &man.periodic.8;, chamado a partir da tabela cron - do sistema, cuidar das suas tarefas assim como ele faz com - as outras tarefas pertinentes ao sistema.</para> - - <para>A única razão para esse erro é - que a tabela de cron do sistema tem um campo a mais, que - especifica o usuário que deve executar o comando. - No crontab do sistema padrão do FreeBSD, esse - usuário é o <systemitem class="username">root</systemitem>, em - todas as entradas. Quando essa crontab é usada - como a tabela de cron do <systemitem class="username">root</systemitem> (que - é diferente da tabela de cron do sistema), o - &man.cron.8; assume que a string <systemitem class="username">root</systemitem> - fosse um primeiro comando, mas esse comando não - existe, por isso ocorre o erro.</para> + <screen><prompt>#</prompt> <userinput>crontab -r</userinput></screen> </answer> </qandaentry> <qandaentry> <question xml:id="su-wheel-group"> - <para>Porque o erro <errorname>you are not in the correct - group to su root</errorname> ocorre, quando eu tento - virar <systemitem class="username">root</systemitem> com o su ?</para> + <para>Por que eu recebo o erro, <errorname>you are not in the correct group to su root</errorname> quando tento executar o comando <command>su</command> para o usuário <systemitem class="username">root</systemitem> ?</para> </question> <answer> - <para>Essa é uma característica de - segurança do FreeBSD. Para se tornar - <systemitem class="username">root</systemitem> com o su (ou qualquer outro - usuário com privilégios de super - usuário), é preciso fazer parte do grupo - <systemitem class="groupname">wheel</systemitem>. Sem essa - característica, qualquer usuário com uma - conta válida no sistema que soubesse a senha de - <systemitem class="username">root</systemitem> poderia obter privilégios - de super usuário. Por causa do comportamento - atual, essa afirmação não é - verdadeira, uma vez que o su não vai nem permitir - que o usuário dê a senha de - <systemitem class="username">root</systemitem>, caso ele não esteja no - grupo <systemitem class="groupname">wheel</systemitem>.</para> + <para>Este é um recurso de segurança. Para executar <command>su</command> para <systemitem class="username">root</systemitem>, ou qualquer outra conta com privilégios de superusuário, a conta do usuário deve ser um membro do grupo <systemitem class="groupname">wheel</systemitem>. Se este recurso não estivesse lá, qualquer pessoa com uma conta em um sistema e que também descobrisse a senha do <systemitem class="username">root</systemitem> seria capaz de obter acesso de nÃvel de superusuário ao sistema.</para> - <para>Para permitir que algum usuário se torne - <systemitem class="username">root</systemitem>, basta que ele faça parte - do grupo <systemitem class="groupname">wheel</systemitem>.</para> - </answer> - </qandaentry> + <para>Para permitir que alguém execute o comando <command>su</command> <systemitem class="username"> root </systemitem>, coloque-os no grupo <systemitem class="groupname">wheel</systemitem> usando o comando <command>pw</command>:</para> - <qandaentry> - <question xml:id="rcconf-readonly"> - <para>Cometi um erro no <filename>rc.conf</filename>, ou em - algum outro arquivo de inicialização, e - agora não posso corrigir essa - alteração porque o sistema de arquivos - é apenas-leitura. O que devo fazer?</para> - </question> - - <answer> - <para>Nessa situação, o comportamento esperado - é que o sistema entre em modo monousuário e - peça o caminho completo para o seu interpretador de - comandos (sua shell). Basta confirmar a shell - padrão, que ele oferece, com um simples - <literal>ENTER</literal>, e depois executar um - <command>mount /</command> para remontar o sistema de - arquivos raiz ( / ) em modo leitura/escrita (rw). - Também pode ser necessário executar um - <command>mount -a -t ufs</command> para montar o sistema - de arquivos onde o seu editor de texto preferido vai estar - disponível. Caso seu editor esteja em um sistema - de arquivos da rede, será necessário - configurar a rede manualmente, ou usar um editor - disponível localmente, como o &man.ed.1;.</para> - - <para>Caso queira usar um editor de tela inteira como o - &man.vi.1; ou &man.emacs.1;, será necessário - definir a variável de ambiente TERM como do tipo - cons25, bastando um simples export TERM=cons25, de forma - que tais editores possam carregar as - informações corretas da base de dados do - &man.termcap.5;.</para> - - <para>Depois disso, o <filename>/etc/rc.conf</filename> pode - ser editado normalmente, e a sintaxe problemática, - corrigida. A mensagem de erro apresentada imediatamente - após o carregamento do - <foreignphrase>kernel</foreignphrase> indica o - número da linha e o arquivo onde o erro - aconteceu.</para> + <screen><prompt>#</prompt> <userinput>pw groupmod wheel -m lisa</userinput></screen> + + <para>O exemplo acima adicionará o usuário <systemitem class="username"> lisa </systemitem> ao grupo <systemitem class="groupname"> wheel </systemitem>.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="printer-setup"> - <para>Porque estou tendo problemas ao configurar minha - impressora?</para> + <question xml:id="rcconf-readonly"> + <para>Cometi um erro no <filename>rc.conf</filename>, ou outro arquivo de inicialização, e agora não posso editá-lo porque o sistema de arquivos está montado somente leitura. O que devo fazer?</para> </question> <answer> - <para>Por gentileza, dê uma olhada nas páginas - sobre impressão do &a.ptbr.p.handbook;. O - documento deve responder a maioria de suas dúvidas. - Veja a entrada sobre <link xlink:href="../handbook/printing.html">Impressão no - &a.ptbr.p.handbook;</link>.</para> + <para>Reinicie o sistema usando <userinput>boot -s</userinput> no prompt do loader para entrar no modo single user. Quando o sistema solicitar o caminho do shell, apenas pressione <keycap>Enter</keycap> e execute <command>mount -urw /</command> para remontar novamente o sistema de arquivos raiz no modo de leitura e gravação. Você também pode precisar executar o comando <command>mount -a -t ufs</command> para montar o sistema de arquivos no qual seu editor favorito é mantido. Se esse editor estiver em um sistema de arquivos de rede, configure a rede manualmente antes de montar os sistemas de arquivos de rede ou use um editor que resida em um sistema de arquivos local, tal como o <citerefentry><refentrytitle>ed</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para> + + <para>Para usar um editor de tela inteira, tal como o <citerefentry><refentrytitle>vi</refentrytitle><manvolnum>1</manvolnum></citerefentry> ou <citerefentry vendor="ports"><refentrytitle>emacs</refentrytitle><manvolnum>1</manvolnum></citerefentry>, execute <command>export TERM=xterm</command> para que esses editores possam carregar os dados corretos do banco de dados do <citerefentry><refentrytitle>termcap</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para> - <para>Algumas impressoras precisam de um driver local, - baseado em estações, para prover qualquer - tipo de impressão. Essas impressoras são - chamadas de <quote>WinPrinters</quote> e não - são suportadas nativamente pelo FreeBSD. Se sua - impressora não funciona sob DOS ou com Windows NT - 4.0, provavelmente ela é uma WinPrinter. A - única esperança de se obter uma impressora - desse tipo funcionando, é verificar se o - <literal>port</literal> <package>print/pnm2ppa</package> tem suporte para - ela.</para> + <para>Depois de executar estas etapas, edite o arquivo <filename>/etc/rc.conf</filename> para corrigir o erro de sintaxe. A mensagem de erro exibida imediatamente após as mensagens de inicialização do kernel deve indicar o número da linha no arquivo que está com erro.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="keyboard-mappings"> - <para>Como posso corrigir o mapeamento de teclados do meu - sistema?</para> + <question xml:id="printer-setup"> + <para>Por que estou tendo problemas para configurar minha impressora?</para> </question> <answer> - <para>Por gentileza, refira-se à seção - usando <link xlink:href="../handbook/using-localization.html">localização - do &a.ptbr.p.handbook;</link>, mais precisamente na - parte sobre a <link xlink:href="../handbook/using-localization.html#SETTING-CONSOLE">configuração - do console</link>.</para> + <para>Consulte a seção sobre <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/printing.html">impressão</link> no Handbook do FreeBSD para dicas de soluções de problemas.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="pnp-resources"> - <para>O que causa mensagens como: <errorname>unknown: - <PNP0303> can't assign resources</errorname> na - inicialização do sistema?</para> + <question xml:id="keyboard-mappings"> + <para>Como posso corrigir os mapeamentos de teclado para o meu sistema?</para> </question> <answer> - <para>O trecho a seguir é citação de - uma mensagem enviada na lista freebsd-current.</para> - - <blockquote> - <attribution>&a.wollman;, 24 Abril 2001</attribution> - - <para>A mensagem <quote>can't assign resources</quote> - indica que os equipamentos em questão são - do tipo ISA, e que não existem entradas indicando - drivers não-PnP compiladas no - <foreignphrase>kernel</foreignphrase>. Esses - equipamentos podem ser controladoras de teclados, - controladora de interrupção - programável e várias outras peças - da infra-estrutura padrão do sistema. Os - recursos não podem ser atribuídos por - já existirem drivers usando tais - endereços.</para> - </blockquote> + <para>Consulte a seção <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/using-localization.html">usando localização</link> do Handbook, mais especificamente a seção sobre a <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/using-localization.html#setting-console"> configuração do console </link>.</para> </answer> </qandaentry> <qandaentry> <question xml:id="user-quotas"> - <para>Porque eu não consigo fazer as quotas de - usuários funcionarem de forma correta?</para> + <para>Por que não consigo colocar as quotas de usuários para funcionar corretamente?</para> </question> <answer> <orderedlist> <listitem> - <para>Não habilite quotas na - <filename>/</filename>,</para> + <para>É possÃvel que o kernel não esteja configurado para usar quotas. Neste caso, adicione a seguinte linha ao arquivo de configuração do kernel e recompile o kernel:</para> + + <programlisting>options QUOTA</programlisting> + + <para>Consulte a <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/quotas.html"> seção do Handbook sobre quotas</link> para obter detalhes completos.</para> + </listitem> + + <listitem> + <para>Não ative o uso de quotas na partição <filename>/</filename>.</para> </listitem> <listitem> - <para>Coloque o arquivo de quotas indicando o sistema de - arquivos onde se deseja estabelecer as quotas, por - exemplo:</para> + <para>Coloque o arquivo de quotas no sistema de arquivos para o qual quotas precisam ser aplicadas:</para> - <informaltable frame="none"> + <informaltable frame="none" pgwide="1"> <tgroup cols="2"> <thead> <row> - <entry>Sistemas de arquivos</entry> + <entry>Sistema de arquivo</entry> - <entry>Arquivos de quotas</entry> + <entry>Arquivo de quota</entry> </row> </thead> @@ -7955,9 +2274,9 @@ C:\="DOS"</programlisting> </row> <row> - <entry>…</entry> + <entry>…</entry> - <entry>…</entry> + <entry>…</entry> </row> </tbody> </tgroup> @@ -7969,3252 +2288,994 @@ C:\="DOS"</programlisting> <qandaentry> <question xml:id="sysv-ipc"> - <para>O FreeBSD suporta as primitivas de IPC do System - V?</para> + <para>O FreeBSD suporta System V IPC primitives?</para> </question> <answer> - <para>Sim, o FreeBSD suporta IPC ao estilo do System V. - Esse suporte inclui compartilhamento de memória, - mensagens e semáforos. É necessário - adicionar as seguintes linhas no arquivo de - configurações do seu - <foreignphrase>kernel</foreignphrase>, para ativar o - suporte:</para> - - <programlisting>options SYSVSHM # habilita memória compartilhada -options SYSVSEM # habilita semáforos -options SYSVMSG # habilita mensagens</programlisting> - - <note> - <para>No FreeBSD 3.2 e posteriores, tais - opções já fazem parte do - <foreignphrase>kernel</foreignphrase> - <emphasis>GENERIC</emphasis>, o que significa que tal - suporte já deve estar compilado no seu - sistema.</para> - </note> + <para>Sim, o FreeBSD suporta o IPC no estilo do System V, incluindo memória compartilhada, mensagens e semáforos, no kernel <filename>GENERIC</filename>. Em um kernel personalizado, o suporte pode ser por meio do carregamento dos módulos de kernel <filename>sysvshm.ko</filename>, <filename>sysvsem.ko</filename> e <filename>sysvmsg.ko</filename>, ou habilitado de forma estática no kernel personalizado adicionando as seguintes linhas ao arquivo de configuração do mesmo:</para> - <para>Recompile e instale o novo - <foreignphrase>kernel</foreignphrase>.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="uucpmail"> - <para>Como posso usar o sendmail para entregar mensagens com - UUCP?</para> - </question> - - <answer> - <para>A configuração do sendmail - disponível por padrão no FreeBSD é - direcionada para sites que estejam conectados à - Internet. Servidores que pretendem entregar suas - mensagens via UUCP devem instalar um novo arquivo de - configurações do sendmail.</para> - - <para>Alterar o <filename>/etc/mail/sendmail.cf</filename> - manualmente é considerado tarefa para os mais - puristas. A versão 8 do sendmail tem uma nova - abordagem de arquivos de configuração por - meio de pré processamento com o &man.m4.1;, onde os - modelos de configuração são - manipulados em um nível mais alto de - abstração. Use os arquivos de - configuração disponíveis sob - /usr/src/usr.sbin/sendmail/cf.</para> - - <para>Caso seu sistema não tenha sido instalado com - os fontes, os arquivos de configuração do - sendmail foram divididos em pacotes separados. Assumindo - que você tenha o CDROM do FreeBSD montado, - faça o seguinte:</para> - - <screen>&prompt.root; <userinput>cd /cdrom/src</userinput> -&prompt.root; <userinput>cat scontrib.?? | tar xzf - -C /usr/src contrib/sendmail</userinput></screen> - - <para>Não se desespere, são apenas algumas - centenas de Kilobytes em tamanho. O arquivo README no - diretório cf serve de introdução - básica ao uso do m4.</para> - - <para>Para entregar mensagens via UUCP, o melhor conselho - é usar o <literal>mailtertable</literal>. Trata-se - de uma base de dados que o sendmail usa para basear suas - decisões de roteamento de mensagens.</para> - - <para>Primeiro, é necessário criar seu arquivo - <filename>.mc</filename>. O diretório - <filename>/usr/src/usr.sbin/sendmail/cf/cf</filename> - é o diretório home para esse tipo de - arquivo. Dê uma olhada, já existem alguns - exemplos disponíveis por lá. Se assumirmos - que você chamou o arquivo de - <filename>foo.mc</filename>, para converte-lo para um - arquivo <filename>sendmail.cf</filename> válido - basta:</para> - - <screen>&prompt.root; <userinput>cd /usr/src/usr.sbin/sendmail/cf/cf</userinput> -&prompt.root; <userinput>make foo.cf</userinput> -&prompt.root; <userinput>cp foo.cf /etc/mail/sendmail.cf</userinput></screen> - - <para>Um arquivo <filename>.mc</filename> típico, se - parece com algo mais ou menos assim:</para> - - <programlisting>VERSIONID(`<replaceable>Número da sua versão</replaceable>') -OSTYPE(bsd4.4) - -FEATURE(accept_unresolvable_domains) -FEATURE(nocanonify) -FEATURE(mailertable, `hash -o /etc/mail/mailertable') - -define(`UUCP_RELAY', <replaceable>your.uucp.relay</replaceable>) -define(`UUCP_MAX_SIZE', 200000) -define(`confDONT_PROBE_INTERFACES') - -MAILER(local) -MAILER(smtp) -MAILER(uucp) - -Cw <replaceable>your.alias.host.name</replaceable> -Cw <replaceable>youruucpnodename.UUCP</replaceable></programlisting> - - <para>As linhas contendo as entradas - <literal>accept_unresolvable_domains</literal>, - <literal>nocanonify</literal>, e - <literal>confDONT_PROBE_INTERFACES</literal> previnem o - uso do DNS durante a entrega das mensagens. A - cláusula <literal>UUCP_RELAY</literal> é - necessária por razões bizarras, nem pergunte - quais. Apenas coloque o nome de uma estação - que possa manipular endereços com - pseudo-domínio .UUCP; normalmente o - endereço de relay de e-mail do seu Provedor de - Serviço Internet deve servir.</para> - - <para>Depois disso, é necessário usar o - arquivo <filename>/etc/mail/mailertable</filename>. Caso - exista apenas um link para fora, por onde todos os e-mails - são roteados, as seguintes definições - são o bastante:</para> - - <programlisting># -# makemap hash /etc/mail/mailertable.db < /etc/mail/mailertable -. uucp-dom:<replaceable>your.uucp.relay</replaceable></programlisting> - - <para>Um exemplo mais complexo, se pareceria com:</para> - - <programlisting># -# makemap hash /etc/mail/mailertable.db < /etc/mail/mailertable -# -horus.interface-business.de uucp-dom:horus -.interface-business.de uucp-dom:if-bus -interface-business.de uucp-dom:if-bus -.heep.sax.de smtp8:%1 -horus.UUCP uucp-dom:horus -if-bus.UUCP uucp-dom:if-bus -. uucp-dom:</programlisting> - - <para>Como pode-se perceber, se trata de um arquivo usado na - vida real. As primeiras três linhas tratam - situações especiais onde as mensagens - endereçadas aquele domínio não devem - ser roteadas pela saída padrão, mas ao - invés disso, ser entregues para algum servidor UUCP - vizinho, de forma a encurtar o caminho para entrega dos - e-mails. A linha seguinte trata mensagens para rede - Ethernet local, para domínios onde os mails possam - ser entregues via SMTP. Finalmente, os vizinhos UUCP - são mencionados na notação do - pseudo-domínio .UUCP, que permite um - <literal>uucp-neighbor!recipient</literal> - sobrescrever as regras padrão. A última - linha é sempre um ponto, que indica que todos os - e-mails que não foram tratados pelas entradas - anteriores cuja entrega seja do tipo UUCP, devem ser - tratados por um dos vizinhos UUCP que sirva como gateway - universal com o resto do mundo. Todas as - estações antecedendo a entrada - <literal>uucp-dom:</literal> devem ser nomes de vizinhos - UUCP válidos, que podem ser checados com o comando - <literal>uuname</literal>.</para> - - <para>Para lembrar que esse arquivo precisa ser convertido - em base de dados do tipo DBM, o comando necessário - para tomar essa ação está comentado - no início do arquivo mailertable. Esse comando - deve ser executado sempre que o mailertable for - alterado.</para> - - <para>Dica final: caso tenha dúvidas se uma rota de - e-mail em particular irá funcionar, lembre-se que a - opção <option>-bt</option> do sendmail - permite que ele seja iniciado em modo de testes de - endereço; simplesmente digite - <literal>3,0</literal> seguido do endereço que - você quer testar o roteamento de mensagens. A - última linha irá indicar o agente de - transferência interno que foi usado, a - estação de destino com a qual esse agente de - entrega irá se comunicar, e o seu endereço. - Para sair desse modo, digite Control-D.</para> - - <screen>&prompt.user; <userinput>sendmail -bt</userinput> -ADDRESS TEST MODE (ruleset 3 NOT automatically invoked) -Enter <ruleset> <address> -<prompt>></prompt> <userinput>3,0 foo@example.com</userinput> -canonify input: foo @ example . com -... -parse returns: $# uucp-dom $@ <replaceable>your.uucp.relay</replaceable> $: foo < @ example . com . > -<prompt>></prompt> <userinput>^D</userinput></screen> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="ispmail"> - <para>Como eu configuro e-mail em uma conexão dialup - com a rede?</para> - </question> - - <answer> - <para>Se a sua conexão discada lhe atribui um - endereço IP estático, não é - necessário configurar nenhuma opção - extra. Ajuste o nome da sua estação para o - nome que a identifica na Internet, e o sendmail - fará o resto.</para> - - <para>Mas se a conexão PPP lhe atribui - endereços dinâmicos, provavelmente o seu - Provedor de Serviço Internet oferece uma conta de - correio eletrônico em seus servidores. Vamos - assumir que o nome do domínio do seu provedor - é <systemitem class="fqdomainname">example.net</systemitem>, e - que o nome do seu usuário é - <systemitem class="username">user</systemitem>. Vamos assumir também - que o nome da sua estação seja <systemitem class="fqdomainname">bsd.home</systemitem> e que o Provedor de - Serviço Internet defina que o endereço - <systemitem class="fqdomainname">relay.example.net</systemitem> deva ser - usado para relay de mensagens eletrônicas.</para> - - <para>Para acessar as mensagens da sua caixa de correio, - é necessário usar um agente de busca. O - <application>Fetchmail</application> é uma boa - escolha, já que ele suporta vários - protocolos distintos. Normalmente o provedor em - questão oferece serviço de POP3. Caso sua - conexão PPP seja estabelecida à nível - de usuário (user-PPP), para acessar suas mensagens - automaticamente ao estabelecer-se uma conexão com a - rede, basta adicionar a seguinte entrada no arquivo - <filename>/etc/ppp/ppp/linkup</filename>:</para> + <programlisting>options SYSVSHM # enable shared memory +options SYSVSEM # enable for semaphores +options SYSVMSG # enable for messaging</programlisting> - <programlisting>MYADDR: - !bg su user -c fetchmail</programlisting> - - <para>Caso esteja usando o - <application>sendmail</application> (como foi descrito - anteriormente) para entregar suas mensagens para - endereços não-locais, insira o - comando:</para> - - <programlisting> !bg su user -c "sendmail -q"</programlisting> - - <para>depois da entrada apresentada anteriormente. Esse - comando irá forçar o - <application>sendmail</application> a processar sua fila - de e-mail tão logo uma conexão com a - rede seja estabelecida.</para> - - <para>Assumindo que exista uma conta para o - <systemitem class="username">user</systemitem> na máquina <systemitem class="fqdomainname">bsd.home</systemitem>. No diretório home - do <systemitem class="username">user</systemitem> na estação - <systemitem class="fqdomainname">bsd.home</systemitem>, crie um arquivo - <filename>.fetchmailrc</filename> com o seguinte - conteúdo:</para> - - <programlisting>poll example.net protocol pop3 fetchall pass MySecret</programlisting> - - <para>Esse arquivo não deve ter permissão de - leitura para nenhum outro usuário, a não ser - o <systemitem class="username">user</systemitem> já que ele - contém a <literal>sua senha</literal>.</para> - - <para>Para garantir que o cabeçalho - <literal>from:</literal> esteja sempre correto, é - necessário indicar ao - <application>sendmail</application> que o endereço - <literal>user@example.net</literal> deve ser usado ao - invés de <literal>user@bsd.home</literal>. - Também é interessante configurar o - <application>sendmail</application> para entregar suas - mensagens via <systemitem class="fqdomainname">relay.example.net</systemitem>, permitindo - transmissão de mensagens de forma mais - rápida.</para> - - <para>O seguinte arquivo <filename>.mc</filename> deve ser o - bastante:</para> - - <programlisting>VERSIONID(`bsd.home.mc version 1.0') -OSTYPE(bsd4.4)dnl -FEATURE(nouucp)dnl -MAILER(local)dnl -MAILER(smtp)dnl -Cwlocalhost -Cwbsd.home -MASQUERADE_AS(`example.net')dnl -FEATURE(allmasquerade)dnl -FEATURE(masquerade_envelope)dnl -FEATURE(nocanonify)dnl -FEATURE(nodns)dnl -define(`SMART_HOST', `relay.example.net') -Dmbsd.home -define(`confDOMAIN_NAME',`bsd.home')dnl -define(`confDELIVERY_MODE',`deferred')dnl</programlisting> - - <para>Por gentileza, refira-se à seção - anterior para obter detalhes sobre como transformar esse - arquivo <filename>.mc</filename> em um arquivo - <filename>sendmail.cf</filename>. Não se - esqueça também de reiniciar o - <application>sendmail</application> depois de alterar o - <filename>sendmail.cf</filename>.</para> + <para>Recompile e instale o kernel.</para> </answer> </qandaentry> <qandaentry> <question xml:id="sendmail-alternative"> - <para>Que outros servidores de correio eletrônico - posso usar no lugar do Sendmail?</para> + <para>Qual outro software de servidor de correio posso usar em substituição ao <application>Sendmail</application>?</para> </question> <answer> - <para>O <link xlink:href="http://www.sendmail.org/">Sendmail</link> é - o programa servidor de correio eletrônico - padrão no FreeBSD, mas ele pode ser facilmente - substituído por qualquer outro MTA (por - instância, um MTA instalado a partir do - <literal>ports</literal>).</para> - - <para>Existem vários MTA's que servem de alternativa - ao Sendmail na Coleção de - <literal>Ports</literal> do FreeBSD, sendo o <package>mail/exim</package>, <package>mail/postfix</package>, <package>mail/qmail</package>, <package>mail/zmailer</package>, os mais - populares.</para> - - <para>A diversidade é sempre uma boa - indicação, e o fato de ter vários - servidores de e-mail disponíveis é - ótimo. Conteúdo, evite perguntas como - <quote>O Sendmail é melhor que o Qmail?</quote> nas - listas de discussão. Se você realmente quer - saber, procure no histórico das listas. As - vantagens e desvantagens de cada MTA já foram - discutidas inúmeras vezes.</para> + <para>O servidor <link xlink:href="http://www.sendmail.org/"><application>Sendmail</application> </link> é o software de servidor de email padrão do FreeBSD, mas pode ser substituÃdo por outro MTA instalado a partir da coleção de ports. Os ports disponÃveis incluem o <package>mail/exim</package>, o <package>mail/postfix</package> e o <package>mail/qmail</package>. Procure informações nas listas de discussão sobre as vantagens e desvantagens dos MTAs disponÃveis.</para> </answer> </qandaentry> <qandaentry> <question xml:id="forgot-root-pw"> - <para>Esqueci a senha de root! O que eu faço?</para> + <para>Esqueci a senha do <systemitem class="username">root</systemitem>! O que eu faço?</para> </question> <answer> - <para>Em primeiro lugar, não entre em pânico! - Reinicie o seu FreeBSD, digite <userinput>boot - -s</userinput> na tela do Boot: (ou apenas - <userinput>-s</userinput> para as versões - anteriores à 3.2 do FreeBSD) para entrar e modo - monousuário. Quando o sistema perguntar sobre que - shell usar, aperte ENTER. Você estará em uma - prompt de comandos; digite <command>mount -u /</command> - para montar o sistema de arquivos raiz com - leitura/escrita, e depois <command>mount -a</command> para - remontar todos os seus sistemas de arquivos. Execute o - comando <command>passwd root</command> para modificar a - senha de root do sistema, e depois digite &man.exit.1; - para continuar a inicialização em modo - multiusuário.</para> + <para>Não entre em pânico! Reinicie o sistema, digite <userinput>boot -s</userinput> no prompt <literal>Boot:</literal> para entrar no modo single user. Na pergunta sobre o shell a ser usado, pressione <keycap>Enter</keycap>, que será exibido um prompt <prompt>#</prompt>. Insira o comando <command>mount -urw /</command> para remontar o sistema de arquivos raiz no modo de leitura e gravação e, em seguida, execute o comando <command>mount -a</command> para remontar todos os sistemas de arquivos. Execute o comando <command>passwd root</command> para alterar a senha do usuário <systemitem class="username">root</systemitem> e então execute o comando <citerefentry><refentrytitle>exit</refentrytitle><manvolnum>1</manvolnum></citerefentry> para continuar a inicialização.</para> + + <note> + <para>Se você ainda for solicitado a entrar com a senha do usuário <systemitem class="username">root</systemitem> ao entrar no modo single user único, isso significa que o console foi configurado como <literal>inseguro</literal> no arquivo <filename>/etc/ttys</filename>. Neste caso, será necessário inicializar a partir de um disco de instalação do FreeBSD, escolher o <guimenuitem>Live CD</guimenuitem> ou <guimenuitem>Shell</guimenuitem> no inÃcio do processo de instalação e executar os comandos mencionados acima. Monte a partição especÃfica neste caso e, em seguida, execute o chroot para ela. Por exemplo, substitua <command>mount -urw /</command> por <command>mount /dev/ada0p1 /mnt; chroot /mnt</command> para um sistema em instalado em <replaceable>ada0p1</replaceable>.</para> + </note> + + <note> + <para>Se a partição raiz não puder ser montada a partir do modo de usuário único, é possÃvel que as partições estejam criptografadas e será impossÃvel montá-las sem as chaves de acesso. Para obter mais informações, consulte a seção sobre discos criptografados no <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/disks-encrypting.html">Handbook</link> do FreeBSD.</para> + </note> </answer> </qandaentry> <qandaentry> <question xml:id="CAD-reboot"> - <para>Como posso evitar que a seqüência de teclas - <keycombo action="simul"><keycap>Control</keycap><keycap>Alt</keycap><keycap>Delete</keycap></keycombo> - reinicie o sistema?</para> - </question> + <para>Como evito que a combinação de teclas <keycombo action="simul"><keycap>Control</keycap><keycap>Alt</keycap><keycap>Delete</keycap></keycombo> reinicialize o sistema?</para> + </question> <answer> - <para>Caso esteja usando o syscons (o driver padrão - para o console) em um sistema FreeBSD 2.2.7 ou posterior, - construa e instale um novo - <foreignphrase>kernel</foreignphrase> com a - opção:</para> + <para>Se estiver utilizando o <citerefentry><refentrytitle>syscons</refentrytitle><manvolnum>4</manvolnum></citerefentry> que é o driver padrão de console, compile e instale um novo kernel que contenha esta linha no arquivo de configuração:</para> <programlisting>options SC_DISABLE_REBOOT</programlisting> - <para>Caso use o driver de console PCVT em um FreeBSD 2.2.5 - ou posterior, use a seguinte linha:</para> + <para>Isto também pode ser feito definindo a variável abaixo do <citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></citerefentry>, este processo não requer uma reinicialização ou recompilação do kernel:</para> - <programlisting>options PCVT_CTRL_ALT_DEL</programlisting> + <screen><prompt>#</prompt> <userinput>sysctl hw.syscons.kbd_reboot=0</userinput></screen> - <para>Em versões anteriores às citadas, edite - o mapeamento do seu teclado, usado para o console, e - substitua a palavra <literal>boot</literal> por - <literal>nop</literal>. O mapeamento de teclado - padrão está em - <filename>/usr/share/syscons/keymaps/us.iso.kbd</filename>. - O <filename>/etc/rc.conf</filename> deve ser - instruído de forma que esse arquivo seja lido. Se - você estiver usando um outro mapa específico - para o seu país, edite esse mapa ao invés do - padrão.</para> - </answer> + <note> + <para>Os dois métodos acima são exclusivos: Esta variável do <citerefentry><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></citerefentry> não existirá se o kernel tiver sido compilado com a opção <literal>SC_DISABLE_REBOOT</literal>.</para> + </note> + </answer> </qandaentry> <qandaentry> <question xml:id="dos-to-unix-txt"> - <para>Como posso converter arquivos de texto do DOS para o - formato do Unix?</para> - </question> + <para>Como faço para converter arquivos de texto do DOS para <trademark class="registered">UNIX</trademark>?</para> + </question> <answer> - <para>Use esse comando do perl:</para> + <para>Use este comando <citerefentry><refentrytitle>perl</refentrytitle><manvolnum>1</manvolnum></citerefentry>:</para> + + <screen><prompt>%</prompt> <userinput>perl -i.bak -npe 's/\r\n/\n/g' file(s)</userinput></screen> - <screen>&prompt.user; <userinput>perl -i.bak -npe 's/\r\n/\n/g' file... </userinput></screen> + <para>no qual <replaceable>files(s)</replaceable> trata-se de um ou mais arquivos que desejamos processar. A modificação é feita in-place, o arquivo original é preservado com uma extensão <filename>.bak</filename>.</para> - <para>onde <literal>file</literal> indica o arquivo ou - arquivos a serem processados. As - modificações são feitas no - próprio arquivo e o original é salvo com a - extensão .bak.</para> + <para>Alternativamente, use o <citerefentry><refentrytitle>tr</refentrytitle><manvolnum>1</manvolnum></citerefentry>:</para> - <para>O comando &man.tr.1; também pode ser - usado:</para> + <screen><prompt>%</prompt> <userinput>tr -d '\r' < dos-text-file > unix-file</userinput></screen> - <screen>&prompt.user; <userinput>tr -d '\r' < dos-text-file > unix-file</userinput></screen> + <para>O <replaceable>dos-text-file</replaceable> é o arquivo que contém o texto no formato DOS, enquanto o <replaceable>unix-file</replaceable> contém a saÃda convertida. Esta opção pode ser um pouco mais rápida do que usar o <command>perl</command>.</para> - <para>Onde <replaceable>dos-text-file</replaceable> é - o arquivo com o texto em formato DOS, enquanto o - <replaceable>unix-file</replaceable> armazenará a - saída convertida. Usar o &man.tr.1; é um - pouco mais rápido do que usar o perl.</para> + <para>Uma outra maneira de reformatar arquivos de texto do DOS é usar o port <package>converters/dosunix</package> da Coleção de Ports. Consulte a sua documentação para maiores detalhes.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="kill-by-name"> - <para>Como eu mato processos pelo seu nome?</para> + <question xml:id="reread-rc"> + <para>Como faço para reler o arquivo <filename>/etc/rc.conf</filename> e reiniciar o <filename>/etc/rc</filename> sem dar boot?</para> </question> <answer> - <para>Use o comando &man.killall.1;.</para> + <para>Entre no modo single user e retorne ao modo multi usuário:</para> + + <screen><prompt>#</prompt> <userinput>shutdown now</userinput> +<prompt>#</prompt> <userinput>return</userinput> +<prompt>#</prompt> <userinput>exit</userinput></screen> </answer> </qandaentry> <qandaentry> - <question xml:id="root-acl"> - <para>Por que motivos o su está me atazanando pelo - fato de não pertencer à ACL do - <systemitem class="username">root</systemitem>?</para> + <question xml:id="release-candidate"> + <para>Tentei atualizar o meu sistema para a versão <emphasis>-STABLE</emphasis> mais recente, mas obtive a <emphasis>-BETA<replaceable>x</replaceable></emphasis>, <emphasis>-RC</emphasis> ou <emphasis>-PRERELEASE</emphasis>! O que está acontecendo?</para> </question> <answer> - <para>Esse erro é proveniente do sistema de - autenticação da distrição do - Kerberos. O problema não é uma - perturbação fatal. Basta executar o su com - a opção -K ou então desinstalar o - Kerberos, como será descrito na próxima - questão.</para> + <para>Resposta curta: é apenas um nome. <emphasis>RC</emphasis> significa <quote>Release Candidate</quote>. Isso significa que uma nova release é iminente. No FreeBSD, <emphasis>-PRERELEASE</emphasis> é tipicamente sinônimo do congelamento de código antes de uma release. (Para algumas versões, o rótulo <emphasis>-BETA</emphasis> foi usado da mesma forma que o <emphasis>-PRERELEASE</emphasis>.)</para> + + <para>Resposta longa: o FreeBSD deriva suas releases de um de dois lugares. Releases principais (major) ponto-zero, como a 9.0-RELEASE são derivadas a partir do branch principal de desenvolvimento, comumente referida como <link linkend="current">-CURRENT</link>. Releases secundárias (minor), como a 6.3-RELEASE ou a 5.2-RELEASE, foram snapshots da branch <link linkend="stable">-STABLE</link> ativa. A partir do 4.3-RELEASE, cada release também tem sua própria branch, a qual pode ser seguida por pessoas que exigem uma taxa extremamente conservadora de desenvolvimento (geralmente apenas avisos de segurança).</para> + + <para>Quando um release está prestes a ser feito, o branch do qual ele será derivado tem que passar por um determinado processo. Parte desse processo é um congelamento de código. Quando um congelamento de código é iniciado, o nome da branch é alterado para refletir que está prestes a se tornar uma release. Por exemplo, se a ramificação costumava ser chamada de 6.2-STABLE, seu nome será alterado para 6.3-PRERELEASE para indicar o congelamento de código e indicar que testes extras de pré-release devem estar acontecendo. Correções de bugs ainda podem ser adicionadas ao repositório de código fonte para fazer parte da release. Quando o código-fonte estiver estabilizado para a release, o nome será alterado para 6.3-RC para indicar que uma release está prestes a ser feita a partir dele. Uma vez no estágio RC, somente os bugs mais crÃticos que forem encontrados podem ser corrigidos. Uma vez que o release (6.3-RELEASE neste exemplo) e o branch de release foram feitos, o branch será renomeado para 6.3-STABLE.</para> + + <para>Para mais informações sobre números de versão e as várias branches do Subversion, consulte o artigo <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/articles/releng/article.html">Release Engineering</link>.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="uninstall-kerberos"> - <para>Como eu desinstalo o Kerberos?</para> + <question xml:id="kernel-chflag-failure"> + <para>Tentei instalar um novo kernel, e o <citerefentry><refentrytitle>chflags</refentrytitle><manvolnum>1</manvolnum></citerefentry> falhou. Como faço para contornar isso?</para> </question> <answer> - <para>Para remover o Kerberos do sistema, reinstale a - distribuição <literal>bin</literal> da - versão que está sendo usada. Caso tenha o - CDROM do FreeBSD, monte-o (vamos assumir, em /cdrom) e - execute os comandos:</para> + <para>Resposta curta: o nÃvel de segurança é maior que 0. Reinicialize diretamente para o modo de single user para instalar o kernel.</para> + + <para>Resposta longa: O FreeBSD não permite alterar os flags do sistema em nÃveis de segurança superiores a 0. Para verificar o nÃvel de segurança atual:</para> - <screen>&prompt.root; <userinput>cd /cdrom/bin</userinput> -&prompt.root; <userinput>./install.sh</userinput></screen> + <screen><prompt>#</prompt> <userinput>sysctl kern.securelevel</userinput></screen> - <para>Ou então, apague todas as opções - <quote>MAKE_KERBEROS</quote> do - <filename>/etc/make.conf</filename> e recompile todo o - sistema com um build world.</para> + <para>O nÃvel de segurança não pode ser diminuÃdo no modo multiusuário, portanto, inicialize no modo single user para instalar o kernel ou altere o nÃvel de segurança em <filename> /etc/rc.conf </filename> e reinicialize. Veja a página de manual <citerefentry><refentrytitle>init</refentrytitle><manvolnum>8</manvolnum></citerefentry> para detalhes sobre o <literal>securelevel</literal>, e veja <filename>/etc/defaults/rc .conf</filename> e a página de manual <citerefentry><refentrytitle>rc.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> para mais informações sobre o <filename> rc.conf </filename>.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="add-pty"> - <para>Como posso adicionar pseudo-terminais ao - sistema?</para> + <question xml:id="kernel-securelevel-time"> + <para>Não consigo alterar a hora no meu sistema em mais de um segundo! Como faço para contornar isso?</para> </question> <answer> - <para>Caso tenha inúmeras conexões telnet, - ssh, X, ou tela de usuário, é - provável que você atingirá o limite - dos seus pseudo-terminais. Aqui estão as - instruções de como adicionar mais - pseudo-terminais:</para> - - <procedure> - <step> - <para>Construa e instale um novo - <foreignphrase>kernel</foreignphrase> com a - linha</para> - <programlisting>pseudo-device pty 256</programlisting> - <para>em seu arquivo de - configurações.</para> - </step> + <para>Resposta curta: o sistema está em um nÃvel de segurança maior que 1. Reinicialize diretamente para o modo de single user para alterar a data.</para> - <step> - <para>Execute os comandos</para> - <screen>&prompt.root; <userinput>cd /dev</userinput> -&prompt.root; <userinput>sh MAKEDEV pty{1,2,3,4,5,6,7}</userinput></screen> - <para>de forma a criar 256 novos devices para os novos - terminais.</para> - </step> + <para>Resposta longa: O FreeBSD proÃbe a alteração do tempo em mais de um segundo em nÃveis de segurança superiores a 1. Para verificar o nÃvel de segurança:</para> - <step> - <para>Edite o <filename>/etc/ttys</filename> e adicione - uma linha para cada um dos 256 terminais. Tais - entradas devem ter o formato correspondente às - entradas já existentes, por exemplo:</para> - <programlisting>ttyqc none network</programlisting> - <para>A ordem de definição das letras - é expressa como - <literal>tty[pqrsPQRS][0-9a-v]</literal>, ao - ilustrarmos em expressões regulares.</para> - </step> + <screen><prompt>#</prompt> <userinput>sysctl kern.securelevel</userinput></screen> - <step> - <para>Reinicie o sistema com o novo - <foreignphrase>kernel</foreignphrase>, e - pronto.</para> - </step> - </procedure> + <para>O nÃvel de segurança não pode ser diminuÃdo no modo multiusuário. Inicialize no modo single user para alterar a data ou altere o nÃvel de segurança no arquivo <filename>/etc/rc.conf</filename> e reinicialize. Veja a página de manual <citerefentry><refentrytitle>init</refentrytitle><manvolnum>8</manvolnum></citerefentry> para detalhes sobre o <literal>securelevel</literal>, e veja <filename>/etc/defaults/rc .conf</filename> e a página de manual <citerefentry><refentrytitle>rc.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> para mais informações sobre o <filename> rc.conf </filename>.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="create-snd0"> - <para>Por que motivo não consigo criar a device - snd0?</para> + <question xml:id="statd-mem-leak"> + <para>Por que o <command>rpc.statd</command> está usando 256 MB de memória?</para> </question> <answer> - <para>Simples, porque não existe a device - <filename>snd</filename>. Esse nome é usado - para identificar o conjunto de devices que compõem - os drivers de som do FreeBSD, como as devices - <filename>mixer</filename>, - <filename>sequencer</filename>, e - <filename>dsp</filename>.</para> - - <para>Para criar tais devices, basta executar:</para> + <para>Não, não há vazamento de memória e ele não está usando 256 MB de memória. Por conveniência, o <command>rpc.statd</command> mapeia uma quantidade obscena de memória em seu espaço de endereço. Não há nada terrivelmente errado com isso do ponto de vista técnico; mas isso confunde o <citerefentry><refentrytitle>top</refentrytitle><manvolnum>1</manvolnum></citerefentry> e o <citerefentry><refentrytitle>ps</refentrytitle><manvolnum>1</manvolnum></citerefentry>.</para> - <screen>&prompt.root; <userinput>cd /dev</userinput> -&prompt.root; <userinput>sh MAKEDEV snd0</userinput></screen> + <para>O <citerefentry><refentrytitle>rpc.statd</refentrytitle><manvolnum>8</manvolnum> </citerefentry> mapeia seu arquivo de status (residente no <filename>/var</filename>) em seu espaço de endereçamento; para evitar se preocupar com o remapeamento do arquivo de status mais tarde quando ele precisar crescer, ele mapeia o arquivo de status com um tamanho generoso. Isso é muito evidente no código-fonte, onde é possÃvel ver que o argumento length para o <citerefentry><refentrytitle>mmap</refentrytitle><manvolnum>2</manvolnum></citerefentry> é <literal> 0x10000000 </literal> , ou décima sexta parte do espaço de endereço em um IA32, ou seja, exatamente 256 MB.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="reread-rc"> - <para>Como posso reler o <filename>/etc/rc.conf</filename> e - reiniciar o <filename>/etc/rc</filename> sem rebootar o - sistema?</para> + <question xml:id="unsetting-schg"> + <para>Por que não posso dar unset na flag <literal>schg</literal> de um arquivo?</para> </question> <answer> - <para>Vá para o modo monousuário e volte para - o modo multiusuário.</para> - - <para>É simples; no console, faça:</para> - - <screen>&prompt.root; <userinput>shutdown now</userinput> -(Note: without -r or -h) - -&prompt.root; <userinput>return</userinput> -&prompt.root; <userinput>exit</userinput></screen> + <para>O sistema está sendo executado em um nÃvel de segurança maior que 0. Reduza o nÃvel de segurança e tente novamente. Para obter mais informações, consulte <link linkend="securelevel"> a entrada do <acronym>FAQ</acronym> referente ao securelevel</link> e a página de manual do <citerefentry><refentrytitle>init</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="sandbox"> - <para>O que é uma sandbox?</para> + <question xml:id="vnlru"> + <para>O que é <literal>vnlru</literal>?</para> </question> <answer> - <para><quote>Sandbox</quote> é um jargão usado - em discussões pertinentes à segurança - de sistemas. Pode significar duas coisas:</para> - - <itemizedlist> - <listitem> - <para>Um processo enquadrado em um conjunto de paredes - virtuais que são criadas para prevenir que - algum usuário, ao explorar alguma - inconformidade do processo, possa também - explorar e obter privilégios no sistema - operacional como um todo.</para> - - <para>O processo deve conseguir <quote>rodar</quote> - dentro dessas paredes, ou seja, nada que o processo - possa fazer ao executar seu código, pode ser - capaz de violar tais paredes. Dessa forma não - é necessária uma auditoria detalhada do - código e das ações do processo - para que se possa realizar algumas - afirmações pertinentes à - segurança de tal sistema.</para> - - <para>Tais paredes podem ser a - identificação de um usuário - (userid), por exemplo. Essa é a - definição de sandbox usada nas - páginas de manuais do named e de - security.</para> - - <para>Observe o serviço <literal>ntalk</literal>, - como exemplo (veja o /etc/inetd.conf). Esse - serviço costumava ser executado com userid do - <systemitem class="username">root</systemitem>. Hoje em dia o processo - roda com o userid do <systemitem class="username">tty</systemitem>. O - usuário <systemitem class="username">tty</systemitem>, portanto, - é uma sandbox criada para dificultar qualquer - atividade de um usuário malicioso que por - ventura consiga acesso ao sistema por meio do ntalk. - Com essa sandbox, uma violação de - segurança bem sucedida via - <literal>ntalk</literal> dificultaria qualquer - ação tomada além das - possíveis com o userid do - <systemitem class="username">tty</systemitem>.</para> - </listitem> - - <listitem> - <para>Um processo criado dentro de um ambiente de - simulação. Essa é uma - situação mais complexa. Basicamente - implica que qualquer pessoa má intencionada que - consiga explorar tal processo, acreditará que - pode obter acesso à todo o ambiente, nas na - verdade, estará apenas acessando um sistema de - simulação, não alterando nenhum - dado real.</para> - - <para>A forma mais comum de conseguir criar um ambiente - simulado como esse, é criando um - subdiretório à partir de onde o processo - consiga acessar (uma cópia de) qualquer arquivo - do sistema que por ventura ele precise, e executar - esse processo simulando um diretório raiz (ou - seja, para o processo, o <filename>/</filename> - será o subdiretório determinado, e - não o verdadeiro <filename>/</filename> do - sistema).</para> - - <para>Outra situação comum é montar - um sistema de arquivos base com apenas - permissão de leitura, e depois criar um outro - sistema de arquivos em uma camada superior, com acesso - de escrita/leitura, dando ao processo a - impressão de poder ler/escrever em todo o - sistema de arquivos. Apenas o processo em - questão percebe esse ambiente, enquanto os - outros não são necessariamente - ludibriados.</para> - - <para>A intenção é que tais sandbox - sejam tão transparentes que qualquer - usuário (ou hacker) não consiga perceber - que está dentro de uma.</para> - </listitem> - </itemizedlist> - - <para>Os sistemas Unix costumam implementar esses dois - principais tipos de sandbox, um em nível de - processo e o outro, muito comum, em nível de - userid.</para> - - <para>Cada processo Unix é completamente separado dos - outros, por meio de algum tipo de parede de - segurança. Um processo nunca modifica o - espaço de endereçamento de outro, diferente - do ambiente Windows onde cada processo pode facilmente - sobrescrever endereços de outros processos, fazendo - o sistema travar.</para> - - <para>Cada processo Unix é de propriedade de um - userid em particular. Caso o userid não seja do - <systemitem class="username">root</systemitem>, ele serve de parede de - segurança em relação aos processos - pertencentes a outros usuários. Os userid - também são usados para proteger dados - armazenados em disco.</para> + <para>O <literal>vnlru</literal> descarrega e libera vnodes quando o sistema atinge o limite de <varname>kern.maxvnodes</varname>. Essa thread do kernel fica ociosa na maior parte do tempo e só é ativada quando existe uma quantidade enorme de RAM e os usuários estiverem acessando dezenas de milhares de arquivos minúsculos.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="securelevel"> - <para>O que é <literal>securelevel</literal> - (nível de segurança do sistema)?</para> + <question xml:id="top-memory-states"> + <para>O que os vários estados de memória exibidos pelo <command> top </command> significam?</para> </question> + <!-- Provided by John Dyson via Usenet --> <answer> - <para><literal>securelevel</literal> (nível de - segurança do sistema) é um mecanismo de - segurança implementado no - <foreignphrase>kernel</foreignphrase> do FreeBSD. - Basicamente, quando o <literal>securelevel</literal> - é positivo, o <foreignphrase>kernel</foreignphrase> - restringe algumas tarefas do sistema; nem mesmo o - superusuário (por exemplo, o - <systemitem class="username">root</systemitem>) tem permissão de - realizar tais tarefas. Na data que este - <literal>FAQ</literal> foi escrito, o mecanismo de - <literal>securelevel</literal> do FreeBSD era capaz de, - entre outras coisas, limitar as habilidades de:</para> - <itemizedlist> <listitem> - <para>retirar algumas flags de arquivos, como a - <literal>schg</literal> (flag de imutabilidade do - sistema),</para> + <para><literal>Active</literal>: são páginas usadas recentemente </para> </listitem> <listitem> - <para>escrever na memória do - <foreignphrase>kernel</foreignphrase> por meio do - <filename>/dev/mem</filename> e - <filename>/dev/kmem</filename>,</para> + <para><literal>Inactive</literal>: são páginas que não foram utilizadas recentemente.</para> </listitem> <listitem> - <para>carregar módulos do - <foreignphrase>kernel</foreignphrase>, e</para> + <para><literal>Cache</literal>: (na maioria das vezes) são páginas que foram filtradas de inativas para um status no qual elas mantêm seus dados, mas que podem ser reutilizadas imediatamente (com sua associação antiga ou reutilizadas com uma nova associação). Podem ocorrer certas transições imediatas do estado de <literal>ativa</literal> para o estado de <literal>cache</literal> se a página for conhecida por estar limpa (não modificada), mas essa transição é uma questão de polÃtica, dependendo da escolha do algoritmo do mantenedor do sistema de VM.</para> </listitem> <listitem> - <para>alterar regras de Firewall do - &man.ipfirewall.4;.</para> + <para><literal>Free</literal>: são páginas sem conteúdo de dados e que podem ser usadas imediatamente em determinadas circunstâncias, nas quais as páginas de cache podem estar inelegÃveis. As páginas livres podem ser reutilizadas no estado de interrupção ou de processo.</para> </listitem> - </itemizedlist> - <para>Para verificar o estado do - <literal>securelevel</literal> (nível de - segurança do sistema) em um sistema em funcionando, - simplesmente execute o seguinte comando:</para> - - <screen>&prompt.root; <userinput>sysctl kern.securelevel</userinput></screen> - - <para>A saída apresentará o nome da - variável do &man.sysctl.8; (nesse caso, - <varname>kern.securelevel</varname>) e um número. - Esse último será o valor atual do - nível de segurança do - <foreignphrase>kernel</foreignphrase> do FreeBSD. Caso - esse valor seja positivo (maior que 0), ao menos algumas - das características dos níveis de - segurança estarão habilitadas.</para> - - <para>Os níveis de segurança não podem - ser diminuídos em um sistema que está - funcionando se isso fosse possível o - <literal>securelevel</literal> (nível de - segurança do sistema) perderia sua funcionalidade. - Caso seja necessário executar alguma tarefa que - necessite que o nível de segurança seja - não-positivo (por exemplo, um - <buildtarget>installworld</buildtarget> ou alterar a data do - sistema) será preciso alterar as - definições de <literal>securelevel</literal> - (nível de segurança do sistema) no - <filename>/etc/rc.conf</filename> (mais precisamente, as - variáveis <varname>kern_securelevel</varname> e - <varname>kern_securelevel_enable</varname>) e reiniciar o - sistema.</para> - - <para>Para obter mais informações quanto aos - níveis de segurança e sobre as - funções específicas de cada - nível, por gentileza, consulte a página de - manual do &man.init.8;.</para> + <listitem> + <para><literal> Wired </literal>: são páginas que estão fixadas na memória, geralmente para propósitos do kernel, mas também para uso especial em processos.</para> + </listitem> + </itemizedlist> - <warning> - <para>O <literal>securelevel</literal> (nível de - segurança do sistema) não é uma - bala de prata; ele tem várias deficiências - óbvias. A mais frequênte é provocar - uma falsa sensação de - segurança.</para> - - <para>Um dos maiores problemas, e portanto que deve ser - bem observada pelo administrador do sistema, é - que, para que o <literal>securelevel</literal> - (nível de segurança do sistema) se torne - efetivo, todos os arquivos usados pelo processo de - inicialização até que os - níveis de segurança se tornem positivos, - devem estar seguros. Se um usuário que deseja - atacar o sistema, conseguir que seu código seja - executado antes que o nível de segurança - seja definido (o que ocorre pouco depois do processo de - inicialização, visto que algumas - funções que o sistema precisa realizar, - não podem ser iniciadas com um nível - elevado de segurança), a proteção - do <literal>securelevel</literal> (nível de - segurança do sistema) será invalidada. - Por outro lado, a tarefa de assegurar que todos os - arquivos necessários pelo processo de - inicialização estejam em conformidade, - não é tecnicamente impossível, mas, - O processo de manutenção de um ambiente em - tais condições se tornaria um pesadelo, - visto que seria necessário baixar o sistema, no - mínimo para modo monousuário sempre que - fosse necessário modificar os arquivos de - configuração do mesmo.</para> - - <para>Esse e outros pontos são freqüentemente - discutidos nas listas do FreeBSD, em especial na - freebsd-security. Por gentileza, queira fazer uma busca - no histórico da lista, <link xlink:href="../../../../search/index.html">clicando - aqui</link>, para uma discussão extensa sobre - o assunto. Algumas pessoas estão - esperançosas de que o securelevel logo - será afastado, em favor de um mecanismo de - segurança mais refinado, mas as coisas ainda - estão confusas a este respeito.</para> - - <para>Considere-se advertido.</para> - </warning> - </answer> - </qandaentry> + <para>As páginas geralmente são gravadas em disco (um tipo de sincronização de VM) quando elas estão no estado inativo, mas as páginas ativas também podem ser sincronizadas. Isso depende do rastreamento da CPU do bit modificado estar disponÃvel e, em determinadas situações pode haver uma vantagem para um bloco de páginas da VM serem sincronizadas, estejam elas ativas ou inativas. Na maioria dos casos comuns, é melhor pensar na fila inativa como uma fila de páginas relativamente não usadas que podem ou não estar no processo de serem gravadas no disco. As páginas em cache já estão sincronizadas, não mapeadas, mas disponÃveis para uso imediato do processo com sua associação antiga ou com uma nova associação. As páginas livres estão disponÃveis no nÃvel de interrupção, mas as páginas em cache ou livres podem ser usadas no estado do processo para reutilização. As páginas de cache não estão adequadamente bloqueadas para estarem disponÃveis no nÃvel de interrupção.</para> - <qandaentry> - <question xml:id="release-candidate"> - <para>Tentei atualizar meu sistema para o último - -STABLE, mas ele se tornou -RC ou -PRERELEASE! O que - está havendo?</para> - </question> - - <answer> - <para>A resposta mais curta: É só um nome, RC - é um acrônimo para <quote>Release - Candidate</quote>. Significa que uma nova versão - está eminente. No FreeBSD, -PRERELEASE é - tipicamente um sinonimo de código congelado antes - de uma nova versão. (Em algumas versões, o - título -BETA foi usado sob as mesmas - circunstâncias em que o -PRERELEASE seria).</para> - - <para>A resposta longa: O FreeBSD normalmente deriva suas - versões de duas fontes de origem. As - versões principais, ponto-zero, como o 3.0-RELEASE - e o 4.0-RELEASE que são marcadas inicialmente como - o topo da cadeia de desenvolvimento, normalmente chamados - de <link linkend="current">-CURRENT</link>. As - versões menores (como 3.1-RELEASE ou 4.2-RELEASE), - são criados a partir do - <foreignphrase>snapshot</foreignphrase> mais recente da - ramificação ativa marcada como <link linkend="stable">-STABLE</link>. A partir do - 4.3-RELEASE, cada versão conta também com - sua própria ramificação, que pode ser - acessada por usuários que queiram apenas um - nível extremamente conservador de desenvolvimento - (tipicamente, apenas consultores de - segurança).</para> - - <para>Quando uma versão está para ser criada, - a ramificação de onde ela se derivará - deve passar por um certo processo. Parte desse processo - é o congelamento do código. Quando o - processo de congelamento do código se inicia, o - nome desta ramificação é alterado - para indicar que ela está para se tornar uma - versão. Por exemplo, se a - ramificação usada chamava-se 4.5-STABLE, ela - passa a se chamar 4.6-PRERELEASE para indicar que o - código está congelado, e indicar que testes - extras, pré versão, estão - acontecendo. Durante esse período - alterações pertinentes a - correções de problemas são - realizadas. Quando o novo código está - pronto para ser lançado, ele passa a ser chamado de - -RC (nesse exemplo, 4.6-RC), indicando que provavelmente a - nova versão será criada a partir do - código atual. Nesse estágio, apenas os - problemas mais sérios são corrigidos. - Depois que a versão é finalmente - lançado (4.6-RELEASE nesse exemplo) e a nova - ramificação com o nome dessa versão - foi criada, ela passa a se chamar -STABLE; 4.6-STABLE no - nosso exemplo.</para> - - <para>Para obter mais informações sobre a - numeração das versões e sobre as - várias ramificações CVS, por - gentileza, refira-se ao artigo sobre a <link xlink:href="../../articles/releng/article.html">Engenharia de - Releases</link>.</para> + <para>Existem alguns outros flags (por exemplo, flag de ocupado ou de contagem ocupada) que podem modificar algumas das regras descritas.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="kernel-chflag-failure"> - <para>Tentei instalar um novo - <foreignphrase>kernel</foreignphrase>, mas a rotina de - chflags falhou. O que posso fazer?</para> + <question xml:id="free-memory-amount"> + <para>Quanta memória livre está disponÃvel?</para> </question> + <!-- Provided by John Dyson via Usenet --> <answer> - <para>A resposta curta: provavelmente você está - com o <literal>securelevel</literal> (nível de - segurança do sistema) acima do 0. Reinicie o - sistema em modo mono usuário e instale o - <foreignphrase>kernel</foreignphrase>.</para> - - <para>A resposta mais completa: O FreeBSD não permite - que as flags do sistema sejam alteradas caso o - <literal>securelevel</literal> (nível de - segurança do sistema) seja maior que 0. O - nível atual do <literal>securelevel</literal> - (nível de segurança do sistema) pode ser - verificado com o comando:</para> - - <screen>&prompt.root; <userinput>sysctl kern.securelevel</userinput></screen> - - <para>O <literal>securelevel</literal> (nível de - segurança do sistema) não pode ser - diminuído; é necessário iniciar o - sistema em modo mono usuário, ou alterar o - nível de segurança em - <filename>/etc/rc.conf</filename>, depois reiniciar. Veja - a página de manual do &man.init.8; para obter - informações mais detalhadas sobre o - <literal>securelevel</literal> (nível de - segurança do sistema), e veja também o - <filename>/etc/defaults/rc.conf</filename> e a - página de manual do &man.rc.conf.5; para obter mais - informações quanto ao rc.conf.</para> + <para>Existem alguns tipos de <quote>memória livre</quote>. Um tipo é a quantidade de memória imediatamente disponÃvel sem fazer a paginação de mais nada para a VM. Isso é aproximadamente o tamanho da fila de cache + tamanho da fila livre (com um fator de redução de capacidade, dependendo do ajuste do sistema). Outro tipo de <quote>memória livre</quote> é a quantidade total de espaço <acronym>VM</acronym>. Isto pode ser complexo, mas depende da quantidade de espaço de swap e memória. Outros tipos de descrições de <quote>memória livre</quote> também são possÃveis, mas é relativamente inútil defini-los, mas por outro lado é importante certificar-se de que a taxa de paginação está mantida baixa para evitar a falta de espaço de swap.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="kernel-securelevel-time"> - <para>Não consigo alterar mais de um segundo na hora - no meu sistema. O que posso fazer?</para> + <question xml:id="var-empty"> + <para>O que é o <filename>/var/empty</filename>?</para> </question> <answer> - <para>A resposta curta: provavelmente o sistema está - com <literal>securelevel</literal> (nível de - segurança do sistema) acima do 1. Reinicie o - sistema em modo mono usuário e altere a - data.</para> - - <para>A resposta mais completa: O FreeBSD não permite - que a hora do sistema seja alterada por mais de um segundo - quando o <literal>securelevel</literal> (nível de - segurança do sistema) do - <foreignphrase>kernel</foreignphrase> é maior que - 1. O nível atual do <literal>securelevel</literal> - (nível de segurança do sistema) pode ser - verificado com o comando:</para> - - <screen>&prompt.root; <userinput>sysctl kern.securelevel</userinput></screen> - - <para>O <literal>securelevel</literal> (nível de - segurança do sistema) não pode ser - diminuído; é necessário iniciar o - sistema em modo mono usuário, ou alterar o - nível de segurança em - <filename>/etc/rc.conf</filename>, depois reiniciar. Veja - a página de manual do &man.init.8; para obter - informações mais detalhadas sobre o - <literal>securelevel</literal> (nível de - segurança do sistema), e veja também o - <filename>/etc/defaults/rc.conf</filename> e a - página de manual do &man.rc.conf.5; para obter mais - informações quanto ao rc.conf.</para> + <para>O <filename>/var/empty</filename> é um diretório que o programa <citerefentry><refentrytitle>sshd</refentrytitle><manvolnum>8</manvolnum></citerefentry> utiliza ao executar a separação de privilégios. O diretório <filename>/var/empty</filename> está vazio, pertence ao usuário <systemitem class="username">root</systemitem> e possui as flags <literal>schg</literal> definidas. Este diretório não deve ser excluÃdo.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="statd-mem-leak"> - <para>Por que motivo o <command>rpc.statd</command> - está usando 256 megabytes de memória?</para> + <question xml:id="newsyslog-expectations"> + <para>Acabei de alterar o <filename>/etc/newsyslog.conf </filename>. Como posso verificar se ele faz o que eu espero?</para> </question> <answer> - <para>Não, mão existe nenhuma falha no uso da - memória, e ele nã é usando 256MB de - RAM. Ele simplesmente gosta de (ele sempre faz isso) - mapear uma quantia obscena de memória em seu - endereçamento, simplesmente por conveniência. - Não existe nada terrivelmente errado com esse - comportamento, de um ponto de vista técnico; a - única questão é que assim o - &man.top.1; e o &man.ps.1; ficam completamente - perdidos.</para> + <para>Para ver o que <citerefentry><refentrytitle>newsyslog</refentrytitle><manvolnum>8</manvolnum></citerefentry> vai fazer, use o seguinte:</para> - <para>O &man.rpc.statd.8; mapeia seu arquivo de status - (localizado sob o <filename>/var</filename>) no seu - endereçamento para economiza - preocupações sobre esse remapeamento em um - segundo momento, quando o arquivo precisa crescer. O - mapeamento é feito a um valor enorme. Analisando o - código fonte, podemos evidenciar que o tamanho do - argumento do &man.mmap.2; é - <literal>0x10000000</literal>, ou exatos 256MB em sistemas - de arquitetura IA32.</para> + <screen><prompt>%</prompt> <userinput>newsyslog -nrvv</userinput></screen> </answer> </qandaentry> <qandaentry> - <question xml:id="unsetting-schg"> - <para>Por que eu não posso retirar a flag - <literal>schg</literal> dos arquivos?</para> + <question xml:id="timezone"> + <para>Minha hora está errada, como posso mudar o fuso horário?</para> </question> <answer> - <para>O sistema está sendo executado em um - nível de segurança elevado (maior que 0). - Diminua o nível de segurança e tente - novamente. Para obter mais informações, por - gentileza, refira-se à seção sobre - <link linkend="securelevel"><literal>securelevel</literal> - (nível de segurança do sistema)</link> do - <literal>FAQ</literal>, e à página de manual - do &man.init.8;</para> + <para>Use o <citerefentry><refentrytitle>tzsetup</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para> </answer> </qandaentry> + </qandaset> + </chapter> + <chapter xml:id="x"> + <title>O sistema X Window e consoles virtuais</title> + + <qandaset> <qandaentry> - <question xml:id="ssh-shosts"> - <para>Por que a autenticação do SSH via - <filename>.shosts</filename> não funciona por - padrão nas versões recentes do - FreeBSD?</para> + <question xml:id="whatis-X"> + <para>O que é o sistema X Window?</para> </question> <answer> - <para>O motivo é simples. A - autenticação via - <filename>.shosts</filename> não funciona mais por - padrão porque o &man.ssh.1; não está - instalado com suid de root por padrão. - Razões óbvias de segurança. Para - <quote>corrigir</quote> isto, pode-se fazer o - seguinte:</para> - - <itemizedlist> - <listitem> - <para>Para uma alteração permanente, - defina <varname>ENABLE_SUID_SSH</varname> como - <literal>true</literal> no arquivo - <filename>/etc/make.conf</filename> e recompile o ssh - (ou execute um make world).</para> - </listitem> + <para>O sistema de janelas X (comumente chamado de <literal>X11</literal>) é o sistema de janelas mais amplamente disponÃvel capaz de executar em Sistemas <trademark class="registered">UNIX</trademark> e sistemas <trademark class="registered">UNIX</trademark>-Like, incluindo o FreeBSD. A <link xlink:href="http://www.x.org/wiki/">Fundação X.Org</link> administra os <link xlink:href="http://en.wikipedia.org/wiki/X_Window_System_core_protocol"> padrões de protocolo X</link>, sendo que a implementação de referência atual é a versão 11 release 7.7, então as referências são frequentemente encurtadas para <literal>X11</literal>.</para> - <listitem> - <para>Uma correção temporária pode - ser mudar os modos de permissão do - <filename>/usr/bin/ssh</filename> para - <literal>4555</literal> simplesmente executando o - comando <command>chmod 4555 /usr/bin/ssh</command> - logado como <systemitem class="username">root</systemitem>. Depois, defina - <varname>ENABLE_SUID_SSH= true</varname> no - <filename>/etc/make.conf</filename> para que as - alterações tenham efeito todas as vezes - que um make world for feito.</para> - </listitem> - </itemizedlist> + <para>Muitas implementações estão disponÃveis para diferentes arquiteturas e sistemas operacionais. Uma implementação do código do lado do servidor é conhecida como um <literal>Servidor X</literal>.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="vnlru"> - <para>O que é o <literal>vnlru</literal>?</para> + <question xml:id="running-X"> + <para>Eu quero rodar o Xorg, como faço para isso?</para> </question> <answer> - <para>O <literal>vnlru</literal> limpa e libera os vnodes - quando o sistema atinge o limite do - <varname>kern.maxvnodes</varname>. Essa thread do - <foreignphrase>kernel</foreignphrase> se mantém - inativa a maior parte do tempo, e só se inicia caso - exista uma grande quantidade de memória RAM, e o - sistema esteja acessando dezenas de milhares de arquivos - pequenos.</para> - </answer> - </qandaentry> - </qandaset> - </chapter> + <para>Para instalar o Xorg, siga um destes procedimentos:</para> - <chapter xml:id="x"> - <title>O sistema X, sistema de interface gráfica e os - Consoles Virtuais</title> + <para>Use o meta-port <package>x11/xorg</package>, que constrói e instala todos os componentes do Xorg.</para> - <qandaset> - <qandaentry> - <question xml:id="running-X"> - <para>Quero rodar a interface gráfica X, como - procedo?</para> - </question> + <para>Use <package>x11/xorg-minimal</package>, que constrói e instala apenas os componentes Xorg necessários.</para> - <answer> - <para>A maneira mais fácil é simplesmente - especificar o desejo de usar o X durante o processo de - instalação do FreeBSD.</para> + <para>Instale o Xorg a partir de pacotes do FreeBSD:</para> - <para>Depois disso, leia e siga as instruções - documentadas na ferramenta <command>xf86config</command>, - que auxilia o usuário a configurar o XFree86 para - os diversos monitores, placas de vídeo, mouse e - etc, suportados pelo X, sistema de interface - gráfica.</para> + <screen><userinput><prompt>#</prompt> pkg install xorg</userinput></screen> - <para>Também pode ser interessante dar uma olhada no - servidor Xaccel. Confira a seção do - <literal>FAQ</literal> pertinente à <link linkend="xig">Xi Graphics</link> ou <link linkend="metrox">Metro Link</link> para obter mais - detalhes.</para> + <para>Após a instalação do Xorg, siga as instruções da seção <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/x-config.html">Configuração X11</link> do Handbook do FreeBSD.</para> </answer> </qandaentry> <qandaentry> <question xml:id="running-X-securelevels"> - <para><emphasis>Tentei</emphasis> rodar o X, mas o erro - <errorname>KDENABIO failed (Operation not - permitted)</errorname> sempre aparece, quando eu digito - o comando <command>startx</command>. O que posso - fazer?</para> + <para>Eu <emphasis>tentei</emphasis> executar o X, mas eu recebo um erro <errorname>No devices detected.</errorname> quando eu digito <command>startx</command>. O que eu faço agora?</para> </question> <answer> - <para>Seu sistema está rodando com um - <literal>securelevel</literal> (nível de - segurança do sistema) elevado, não - está? É impossível iniciar o X com um - secureleve elevado. Para saber exatamente os motivos - dessa inviabilidade, por gentileza, de uma olhada na - página de manual do &man.init.8;.</para> + <para>O sistema provavelmente está sendo executado em um <literal>securelevel</literal> alto. Não é possÃvel iniciar o X em <literal>securelevel</literal> alto porque o X requer acesso de ao <citerefentry> <refentrytitle>io</refentrytitle><manvolnum>4</manvolnum></citerefentry>. Para obter mais informações, consulte a página de manual do <citerefentry><refentrytitle>init</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para> - <para>Então, a pergunta pode ser sobre o que - você deve fazer nesse caso; basicamente, existem - duas escolhas: diminua seu <literal>securelevel</literal> - (nível de segurança do sistema), colocando-o - de volta para zero (normalente via - <filename>/etc/rc.conf</filename>), ou então inicie - o &man.xdm.1; durante o processo de - inicialização do sistema (antes que o - <literal>securelevel</literal> (nível de - segurança do sistema) seja elevado).</para> + <para>Existem duas soluções para o problema: definir o <literal>securelevel</literal> novamente a zero ou executar <citerefentry vendor="xfree86"><refentrytitle>xdm</refentrytitle><manvolnum>1</manvolnum></citerefentry> (ou um gerenciador de exibição alternativo) no momento da inicialização antes que o <literal>securelevel</literal> seja elevado.</para> - <para>Veja a pergunta <xref linkend="xdm-boot"/>, para obter - mais informações sobre como iniciar o - &man.xdm.1; durante o boot.</para> + <para>Veja <xref linkend="xdm-boot"/> para mais informações sobre como executar o <citerefentry vendor="xfree86"><refentrytitle>xdm</refentrytitle><manvolnum>1</manvolnum></citerefentry> no momento da inicialização.</para> </answer> </qandaentry> <qandaentry> <question xml:id="x-and-moused"> - <para>Por que meu mouse não funciona com o X?</para> + <para>Por que meu mouse não funciona com o X?</para> </question> <answer> - <para>Caso esteja usando o syscons (o driver padrão - do console), o FreeBSD pode ser configurado para suportar - um cursor de mouse em cada tela virtual. Com o - intúito de evitar conflitos com o X, o syscons - suporta um dispositivo virtual, chamado - <filename>/dev/sysmouse</filename>. Todos os eventos - relacionados ao mouse, que o sistema recebe, são - antes enviados para o device sysmouse, por meio do moused. - Se a intenção é usar o mouse em um ou - mais consoles virtuais, e também usar o X, leia - <xref linkend="moused" remap="another section"/> e - configure o moused.</para> + <para>Ao usar <citerefentry><refentrytitle>syscons</refentrytitle><manvolnum>4</manvolnum></citerefentry>, o driver de console padrão, o FreeBSD pode ser configurado para suportar um ponteiro de mouse em cada tela virtual. Para evitar conflito com o X, o <citerefentry><refentrytitle>syscons</refentrytitle><manvolnum>4</manvolnum></citerefentry> suporta um dispositivo virtual chamado <filename>/dev/sysmouse</filename>. Todos os eventos de mouse recebidos do dispositivo de mouse real são gravados no dispositivo via <citerefentry><refentrytitle>sysmouse</refentrytitle><manvolnum>4</manvolnum></citerefentry><citerefentry><refentrytitle> moused </refentrytitle><manvolnum>8</manvolnum></citerefentry>. Para usar o mouse em um ou mais consoles virtuais, <emphasis> e </emphasis> usar X, veja <xref linkend="moused" remap="outra seção"/> e configure o <citerefentry> <refentrytitle>moused</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para> - <para>Depois, edite o <filename>/etc/XF86Config</filename> e - garanta que existam as seguintes linhas no arquivo:</para> + <para>Em seguida, edite o arquivo <filename>/etc/X11/xorg.conf</filename> e verifique se as seguintes linhas existem:</para> - <programlisting>Section Pointer -Protocol "SysMouse" -Device "/dev/sysmouse" + <programlisting>Section "InputDevice" + Option "Protocol" "SysMouse" + Option "Device" "/dev/sysmouse" .....</programlisting> - <para>O exemplo acima refere-se ao XFree86 3.3.2 e - posteriores. Para versões anteriores, a - cláusula <emphasis>Protocol</emphasis> deve ser - substituída por - <emphasis>MouseSystems</emphasis>.</para> + <para>Começando com a versão 7.4 do Xorg, as seções <literal>InputDevice</literal> no <filename>xorg.conf</filename> são ignoradas em favor dos dispositivos autodetectados. Para restaurar o comportamento antigo, adicione a seguinte linha à seção <literal>ServerLayout</literal> ou <literal>ServerFlags</literal>:</para> + + <programlisting>Option "AutoAddDevices" "false"</programlisting> + + <para>Algumas pessoas preferem usar o <filename>/dev/mouse </filename> com o X. Para fazer esse trabalho, <filename>/dev/mouse</filename> deve estar vinculado a <filename>/dev/sysmouse</filename> (veja <citerefentry> <refentrytitle>sysmouse</refentrytitle><manvolnum>4</manvolnum></citerefentry>) adicionando a seguinte linha ao <filename>/etc/devfs.conf</filename> (veja <citerefentry><refentrytitle>devfs.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>):</para> - <para>Alguns preferem usar a device - <filename>/dev/mouse</filename> sob o X. Para que - isso funcione, faça um link de - <filename>/dev/mouse</filename> para - <filename>/dev/sysmouse</filename> (veja a - página de manual do &man.sysmouse.4;).</para> + <programlisting>link sysmouse mouse</programlisting> - <screen>&prompt.root; <userinput>cd /dev</userinput> -&prompt.root; <userinput>rm -f mouse</userinput> -&prompt.root; <userinput>ln -s sysmouse mouse</userinput></screen> + <para>Este link pode ser criado reiniciando o <citerefentry vendor="current"><refentrytitle>devfs</refentrytitle><manvolnum>5</manvolnum></citerefentry> com o seguinte comando (executado como <systemitem class="username"> root </systemitem>):</para> + + <screen><prompt>#</prompt> <userinput>service devfs restart</userinput></screen> </answer> </qandaentry> <qandaentry> <question xml:id="x-and-wheel"> - <para>Meu mouse possui aquela bolinha (esfera) - simpática de scroll. Posso usa-lo no X?</para> + <para>Meu mouse tem uma fancy wheel. Posso usá-lo no X?</para> </question> <answer> - <para>Pode, mas é necessário customizar os - programas do X. Veja a página do Colas Nahaboo - sobre o assunto (<link xlink:href="http://www.inria.fr/koala/colas/mouse-wheel-scroll/"> - http://www.inria.fr/koala/colas/mouse-wheel-scroll/</link>.</para> - - <para>Caso queira usar o programa - <application>imwheel</application>, simplesmente siga os - seguintes passos:</para> - - <orderedlist> - <listitem> - <para>Traduza os eventos da esfera de scroll:</para> - <para>O programa <application>imwheel</application> - funciona assim: ele traduz os botões 4 e 5 do - mouse em eventos do teclado do computador. Dessa - forma é necessário assegurar que o - driver do mouse esteja traduzindo os eventos da esfera - de scroll para os eventos dos botões 4 e 5, ou - seja assimilar suas funções. Existem - duas formas de fazer isso, a primeira é usando - o &man.moused.8; para fazer essas - assimilações, e a segunda, é usar - o próprio X para traduzir os eventos.</para> + <para>Sim, se o X estiver configurado para um mouse de 5 botões. Para fazer isso, adicione as linhas <literal>Buttons 5</literal> e <literal>ZAxisMapping 4 5</literal> na seção <quote>InputDevice</quote> do arquivo <filename>/etc/X11/xorg.conf</filename>, como visto neste exemplo:</para> - <orderedlist> - <listitem> - <para>Usando o &man.moused.8; para traduzir os - eventos da bolinha de scroll.</para> - - <para>Para que o &man.moused.8; faça as - assimilações de eventos, basta - adicionar as opções <option>-z - 4</option> nas opções de linhas de - comando, usadas para iniciar o &man.moused.8;. - Por exemplo, se normalmente você inicia o - &man.moused.8; via <command>moused -p - /dev/psm0</command> basta substituir o comando - por <command>moused -p /dev/psm0 -z 4</command>. - Se o &man.moused.8; é executado - automaticamente durante o processo de - inicialização do FreeBSD, por meio - das entradas definidas no - <filename>/etc/rc.conf</filename>, basta adicionar - <option>-z 4</option> na variável - <varname>moused_flags</varname> do - <filename>/etc/rc.conf</filename>.</para> - - <para>Você precisa agora dizer para o X que - você tem o botão 5 no mouse. Para - fazer isto, simplesmente adicione a linha - <literal>Buttons 5</literal> para a - seção <quote>Pointer</quote> do - <filename>/etc/XF86Config</filename>. Por - exemplo, você pode seguir a - seção <quote>Pointer</quote> em - <filename>/etc/XF86Config</filename>.</para> - - <example> - <title>Seção <quote>Pointer</quote> - no XF86Config para o mouse com bolinha de - scroll, da série 3.3.x do XFree86, usando - a tradução se;rie 3.3.x do - XFree86, usando a tradução por - meio do moused</title> - - <programlisting>Section "Pointer" -Protocol "SysMouse" -Device "/dev/sysmouse" -Buttons 5 -EndSection</programlisting> - </example> - - <example> - <title>Seção - <quote>InputDevice</quote> do XF86Config para - usar a tradução do X Server na - série 4.X do XFree86.</title> - - <programlisting>Section "InputDevice" -Identifier "Mouse1" -Driver "mouse" -Option "Protocol" "auto" -Option "Device" "/dev/sysmouse" -Option "Buttons" "5" + <programlisting>Section "InputDevice" + Identifier "Mouse1" + Driver "mouse" + Option "Protocol" "auto" + Option "Device" "/dev/sysmouse" + Option "Buttons" "5" + Option "ZAxisMapping" "4 5" EndSection</programlisting> - </example> - <example> - <title>Exemplo de <quote>.emacs</quote> para usar - paginamento em mouse com bolinha de - scroll.</title> + <para>O mouse pode ser habilitado no <application>Emacs</application> adicionando estas linhas ao <filename> ~/.emacs</filename>:</para> - <programlisting>;; wheel mouse + <programlisting>;; wheel mouse (global-set-key [mouse-4] 'scroll-down) (global-set-key [mouse-5] 'scroll-up)</programlisting> - </example> - </listitem> + </answer> + </qandaentry> - <listitem> - <para>Usando o X Server para traduzir os eventos da - esfera de scroll.</para> - - <para>Se você não usa o &man.moused.8; - ou simplesmente não quer que ele - faça a tradução de eventos, - é possível que o servidor X - faça o trabalho, no lugar do - &man.moused.8;. Essa ação requer - algumas alterações no seu arquivo - <filename>/etc/XF86Config</filename>. Primeiro, - é necessário definir o protocolo - apropriado para o mouse. A maioria dos mouses com - esferas de scroll usam o protocolo - <quote>IntelliMouse</quote>. De qualquer forma, o - XFree86 não suporta outros protocolos como - o <quote>MouseManPlusPS/2</quote> dos MouseMan+ - Logitechfor. Uma vez definido o protocolo, - é necessário criar uma entrada - apropriada na seção - <quote>Pointer</quote>.</para> - - <para>Depois, é preciso definir que o - servidor X deve remapear os eventos 4 e 5 do - mouse. A opção - <varname>ZAxisMapping</varname> é usada - para essa finalidade.</para> - - <para>Por exemplo, caso não estejas usando o - &man.moused.8; e exista um IntelliMouse ligado na - PS/2 do seu computador, use o seguinte, no - <filename>/etc/XF86Config</filename>.</para> - - <example> - <title>Seção <quote>Pointer</quote> - do <filename>XF86Config</filename> com um mouse - com scroll na série 3.3.x do - XFree86.</title> - - <programlisting>Section "Pointer" -Protocol "IntelliMouse" -Device "/dev/psm0" -ZAxisMapping 4 5 -EndSection</programlisting> - </example> - - <example> - <title>Seção - <quote>InputDevice</quote> do - <filename>XF86Config</filename> com um mouse com - scroll na série 4.x do XFree86.</title> - - <programlisting>Section "InputDevice" -Identifier "Mouse1" -Driver "mouse" -Option "Protocol" "auto" -Option "Device" "/dev/psm0" -Option "ZAxisMapping" "4 5" -EndSection</programlisting> - </example> + <qandaentry> + <question xml:id="x-and-synaptic"> + <para>Meu laptop tem um touchpad Synaptics. Posso usá-lo no X?</para> + </question> - <example> - <title>Arquivo <quote>.emacs</quote> para usar - paginamento em mouse com bolinha de - scroll.</title> + <answer> + <para>Sim, depois de configurar algumas coisas para que funcione.</para> - <programlisting>;; wheel mouse -(global-set-key [mouse-4] 'scroll-down) -(global-set-key [mouse-5] 'scroll-up)</programlisting> - </example> - </listitem> - </orderedlist> - </listitem> + <para>Para usar o driver synaptics do Xorg, primeiro remova <literal> moused_enable </literal> do <filename> rc.conf </filename>.</para> - <listitem> - <para>Instale o - <application>imwheel</application></para> - - <para>Depois, instale o - <application>imwheel</application> à partir da - coleção de <literal>ports</literal> do - FreeBSD; ele pode ser encontrado sob a categoria - <filename>x11</filename>. A finalidade desse programa - é assimilar os eventos dos botões 4 e 5 - do mouse, com os eventos de alguma tecla do teclado. - Por exemplo, o programa deve enviar o evento da tecla - <keycap>Page Up</keycap> quando a esfera for deslocada - para frente. O <application>imwheel</application> usa - um arquivo de configurações para - assimilar esses eventos à uma tecla, de forma - que possam ser configuradas ações - diferentes (teclas diferentes) para - aplicações diferentes. O arquivo de - configuração padrão do - <application>imwheel</application> é instalado - em <filename>/usr/X11R6/etc/imwheelrc</filename>. Ele - pode ser copiado para - <filename>~/.imwheelrc</filename> e editado, caso se - deseja customizar o arquivo de - configuração. O formato esperado para o - arquivo é documentado na página de - manual do &man.imwheel.1;.</para> - </listitem> + <para>Para habilitar a synaptics, adicione a seguinte linha ao <filename> /boot/loader.conf </filename>:</para> - <listitem> - <para>Configure o <application>Emacs</application> para - trabalhar em conjunto com o - <application>Imwheel</application> - (<emphasis>optional</emphasis>)</para> - - <para>Se você usa o - <application>emacs</application> ou o - <application>Xemacs</application>, será - necessário adicionar uma breve - seção ao arquivo - <filename>~/.emacs</filename>. No - <application>emacs</application>, adicione o - seguinte:</para> - - <example> - <title>Configuração do - <application>Emacs</application> para - <application>Imwheel</application></title> - - <programlisting>;;; For imwheel -(setq imwheel-scroll-interval 3) -(defun imwheel-scroll-down-some-lines () - (interactive) - (scroll-down imwheel-scroll-interval)) -(defun imwheel-scroll-up-some-lines () - (interactive) - (scroll-up imwheel-scroll-interval)) -(global-set-key [?\M-\C-\)] 'imwheel-scroll-up-some-lines) -(global-set-key [?\M-\C-\(] 'imwheel-scroll-down-some-lines) -;;; end imwheel section</programlisting> - </example> - - <para>Pro <application>Xemacs</application>, adicione o - seguinte, no seu arquivo - <filename>~/.emacs</filename>:</para> - - <example> - <title>Configuração do - <application>Xemacs</application> para - <application>Imwheel</application></title> - - <programlisting>;;; For imwheel -(setq imwheel-scroll-interval 3) -(defun imwheel-scroll-down-some-lines () - (interactive) - (scroll-down imwheel-scroll-interval)) -(defun imwheel-scroll-up-some-lines () - (interactive) - (scroll-up imwheel-scroll-interval)) -(define-key global-map [(control meta \))] 'imwheel-scroll-up-some-lines) -(define-key global-map [(control meta \()] 'imwheel-scroll-down-some-lines) -;;; end imwheel section</programlisting> - </example> - </listitem> + <programlisting>hw.psm.synaptics_support="1"</programlisting> - <listitem> - <para>Execute o - <application>Imwheel</application></para> - - <para>Basta digitar <command>imwheel</command> em algum - terminal X (xterm) para inicia-lo, uma vez que tudo - esteja pronto. Imediatamente o programa vai estar - efetivo e vai se tornar um processo em segundo plano. - Caso queira sempre iniciar o - <application>imwheel</application>, basta adicionar o - comando no seu arquivo <filename>.xinitrc</filename> - ou no <filename>.xsession</filename>. É - possível que o - <application>imwheel</application> mostre algumas - mensagens de advertência sobre arquivos PID; - elas podem ser seguramente ignoradas, visto que - são mensagens que se aplicam à - versão para Linux.</para> - </listitem> - </orderedlist> + <para>Adicione o seguinte ao <filename> /etc/X11/xorg.conf </filename>:</para> + + <programlisting>Section "InputDevice" +Identifier "Touchpad0" +Driver "synaptics" +Option "Protocol" "psm" +Option "Device" "/dev/psm0" +EndSection</programlisting> + + <para>E não se esqueça de adicionar o seguinte na seção <quote> ServerLayout </quote>:</para> + + <programlisting>InputDevice "Touchpad0" "SendCoreEvents"</programlisting> </answer> </qandaentry> <qandaentry> - <question xml:id="window-menu-weird"> - <para>Por quê os menus e caixas de diálogo do - X, sistema de interface gráfica não - funcionam direito?</para> + <question xml:id="no-remote-x11"> + <para>Como eu uso displays X remotos?</para> </question> <answer> - <para>Tente desativar a tecla <keycap>Num - Lock</keycap>.</para> + <para>Por motivos de segurança, a configuração padrão é não permitir que uma máquina abra remotamente uma janela.</para> - <para>Se por padrão seu <keycap>Num Lock</keycap> - é ativo na hora do processo de - inicialização, adicione a seguinte linha a - seção <literal>Keyboard</literal> do seu - arquivo <filename>XF86Config</filename>.</para> + <para>Para ativar esse recurso, inicie o <application> X </application> com o argumento opcional <option> -listen_tcp </option>:</para> - <programlisting># Deixar o servidor fazer o trabalho do NumLock. Deve ser usado apenas em versoes anteriores a R6 - ServerNumLock</programlisting> + <screen><prompt>%</prompt> <userinput>startx -listen_tcp</userinput></screen> </answer> </qandaentry> <qandaentry> <question xml:id="virtual-console"> - <para>O que é um console virtual, e como eu crio mais - consoles?</para> - </question> - - <answer> - <para>Consoles virtuais simplesmente permitem que se tenha - várias sessões simultâneas em uma - mesma máquina, sem a necessidade de fazer nada - complicado como configurar uma rede ou usar um servidor - X.</para> - - <para>Quando o sistema é iniciado, a primeira - ação é apresentar um prompt de login - na tela do usuário, tão logo todas as - mensagens do processo de inicialização sejam - apresentadas. Nesse momento é possível - entrar com seu nome de usuário e senha para - começar trabalhar (ou brincar!) no primeiro console - virtual.</para> - - <para>Em algum momento, é provável que se - deseje iniciar uma outra sessão, talvez para ler a - documentação de alguma - aplicação que está sendo usada, ou - para ler e-mail enquanto a transferência FTP se - conclúi, enfim, qualquer ação - (a)típica de um sistema multitarefa. Nesse caso, - basta pressionar <keycombo action="simul"><keycap>Alt</keycap><keycap>F2</keycap></keycombo> - (segure a tecla <keycap>Alt</keycap> e depois aperte a - tecla <keycap>F2</keycap>), e outro prompt de login - estará esperando você no segundo - <quote>console virtual</quote>! Quando quizer alternar de - volta à sessão original, digite <keycombo action="simul"><keycap>Alt</keycap><keycap>F1</keycap></keycombo>.</para> - - <para>A instalação padrão do FreeBSD - oferece três consoles virtuais já habilitados - (8 a partir do 3.3-RELEASE), e as teclas <keycombo action="simul"><keycap>Alt</keycap><keycap>F1</keycap></keycombo>, - - <keycombo action="simul"><keycap>Alt</keycap><keycap>F2</keycap></keycombo>, - e <keycombo action="simul"><keycap>Alt</keycap><keycap>F3</keycap></keycombo> - irá alternar entre esses consoles.</para> - - <para>Para habilitar mais consoles, edite o - <filename>/etc/ttys</filename> (veja a página de - manual do &man.ttys.5;) e adicione as entradas da - <filename>ttyv4</filename> à - <filename>ttyvc</filename> depois do comentário - sobre <quote>Virtual terminals</quote>:</para> - - <programlisting># Edite as entradas existentes para ttyv3 e mude de "off" para "on" -ttyv3 "/usr/libexec/getty Pc" cons25 on secure -ttyv4 "/usr/libexec/getty Pc" cons25 on secure -ttyv5 "/usr/libexec/getty Pc" cons25 on secure -ttyv6 "/usr/libexec/getty Pc" cons25 on secure -ttyv7 "/usr/libexec/getty Pc" cons25 on secure -ttyv8 "/usr/libexec/getty Pc" cons25 on secure -ttyv9 "/usr/libexec/getty Pc" cons25 on secure -ttyva "/usr/libexec/getty Pc" cons25 on secure -ttyvb "/usr/libexec/getty Pc" cons25 on secure</programlisting> - - <para>Use quantos consoles desejar. Quanto mais, maior o - uso de recursos; essa é uma - consideração relevante quando se tem 8MB de - RAM ou menos. Também pode ser interessante mudar o - terminal de <literal>secure</literal> para - <literal>insecure</literal>.</para> - - <important> - <para>Caso se deseje usar um servidor X, é - necessário garantir que exista ao menos um - terminal virtual fora de uso (ou desligado). Com isso, - entenda que, se sua inteção for usar - consoles virtuais nas suas doze teclas de - funções, nada feito; apenas onze - poderão ser usadas caso deseje-se usar o X na - mesma máquina.</para> - </important> - - <para>A maneira mais simples de desabilitar um console, - é desligando-o. Por exemplo, caso existam 12 - terminais definidos, como mencionado na - situação acima, e se queira usar o servidor - X, o mais interessante é mudar as - configurações do terminal 12 de:</para> + <para>O que é um console virtual e como faço outros?</para> + </question> - <programlisting>ttyvb "/usr/libexec/getty Pc" cons25 on secure</programlisting> + <answer> + <para>Os consoles virtuais fornecem várias sessões simultâneas na mesma máquina sem fazer nada complicado, como configurar uma rede ou executar o X.</para> - <para>para:</para> + <para>Quando o sistema iniciar, ele exibirá um prompt de login no monitor depois de exibir todas as mensagens de inicialização. Digite seu nome de login e senha para começar a trabalhar no primeiro console virtual.</para> - <programlisting>ttyvb "/usr/libexec/getty Pc" cons25 off secure</programlisting> + <para>Para iniciar outra sessão, talvez para examinar a documentação de um programa ou para ler mensagens enquanto aguarda a conclusão de uma transferência por FTP, pressione <keycap>Alt</keycap> e pressione <keycap>F2</keycap>. Isso exibirá o prompt de login do segundo console virtual. Para voltar à sessão original, pressione <keycombo action="simul"> <keycap>Alt</keycap><keycap>F1</keycap></keycombo>.</para> - <para>Caso seu teclado tenha apenas dez teclas de - funções, basta encerrar as - definições com:</para> + <para>A instalação padrão do FreeBSD possui oito consoles virtuais habilitados. A combinação de teclas <keycombo action="simul"> <keycap> Alt </keycap> <keycap> F1 </keycap> </keycombo>, <keycombo action="simul"> <keycap> Alt </keycap> <keycap> F2 </keycap> </keycombo>, <keycombo action="simul"> <keycap> Alt </keycap> <keycap> F3 </keycap> </keycombo>, e assim por diante alternará entre esses consoles virtuais.</para> -<programlisting>ttyv9 "/usr/libexec/getty Pc" cons25 off secure -ttyva "/usr/libexec/getty Pc" cons25 off secure -ttyvb "/usr/libexec/getty Pc" cons25 off secure</programlisting> + <para>Para habilitar mais consoles virtuais, edite <filename>/etc/ttys</filename> (veja <citerefentry><refentrytitle>ttys</refentrytitle><manvolnum>5</manvolnum></citerefentry>) e adicione entradas do <filename> ttyv8 </filename> até o <filename> ttyvc </filename>, após os comentários na seção <quote>Virtual terminals</quote>:</para> - <para>(Claro que as linhas poderiam simplesmente ser - apagadas.)</para> + <programlisting># Edit the existing entry for ttyv8 in /etc/ttys and change +# "off" to "on". +ttyv8 "/usr/libexec/getty Pc" xterm on secure +ttyv9 "/usr/libexec/getty Pc" xterm on secure +ttyva "/usr/libexec/getty Pc" xterm on secure +ttyvb "/usr/libexec/getty Pc" xterm on secure</programlisting> - <para>Uma vez editado o <filename>/etc/ttys</filename>, o - passo seguinte é garantir que existam devices o - bastante pros terminais virtuais. A forma mais - fácil de fazer isso é:</para> + <para>Quanto mais terminais virtuais estiverem ativos, mais recursos serão usados. Isso pode ser um problema em sistemas com 8 MB de RAM ou menos. Considere mudar a opção <literal>secure</literal> para <literal>insecure</literal>.</para> - <screen>&prompt.root; <userinput>cd /dev</userinput> -&prompt.root; <userinput>sh MAKEDEV vty12</userinput></screen> + <important> + <para>Para executar um servidor X, pelo menos um terminal virtual deverá ser deixado como <literal>off</literal> para ele usar. Isso significa que apenas onze das teclas de função Alt podem ser usadas como consoles virtuais, de modo que uma deverá ser deixada livre para uso do servidor X.</para> + </important> - <para>Em seguida, a maneira mais fácil (e mais limpa) - de ativar cada um dos consoles virtuais é reiniciar - o sistema. Mas se reiniciar o FreeBSD não é - a intenção, basta desligar o servidor X, - sistema de interface gráfica e executar (logado - como <systemitem class="username">root</systemitem>):</para> + <para>Por exemplo, para executar o X e onze consoles virtuais, a configuração para o terminal virtual 12 deve ser:</para> - <screen>&prompt.root; <userinput>kill -HUP 1</userinput></screen> + <programlisting>ttyvb "/usr/libexec/getty Pc" xterm off secure</programlisting> - <para>É obrigatório tirar por completo o X, - sistema de interface gráfica do ar antes de dar - esse comando, caso o X esteja sendo usado. Se isso - não for feito, o sistema vai parecer que - travou.</para> + <para>A maneira mais fácil de ativar os consoles virtuais é reinicializar.</para> </answer> </qandaentry> <qandaentry> <question xml:id="vty-from-x"> - <para>Como posso acessar os consoles virtuais quando eu - estiver no X?</para> - </question> - - <answer> - <para>Use <keycombo action="simul"> - <keycap>Ctrl</keycap> - <keycap>Alt</keycap> - <keycap>F<replaceable>n</replaceable></keycap> - </keycombo> para alternar de volta para algum console - virtual. Por exemplo, - <keycombo action="simul"> - <keycap>Ctrl</keycap> - <keycap>Alt</keycap> - <keycap>F1</keycap> - </keycombo> retornaria ao primeiro console virtual.</para> - - <para>Uma vez de volta ao console textual, pode-se usar - <keycombo action="simul"> - <keycap>Alt</keycap> - <keycap>F<replaceable>n</replaceable></keycap> - </keycombo> normalmente, para alternar entre os consoles - virtuais.</para> - - <para>Pra voltar para sessão X basta alternar para o - console virtual onde o X está sendo executado. - Caso o X tenha sido iniciado por linha de comando (por - exemplo, com o comando <command>startx</command>) a - sessão terá sido assimilada ao - próximo console virtual fora de uso, e não - ao console onde o comando foi digitado. Caso existam oito - terminais virtuais ativos, o X estará sendo - executado no nono. Nesse caso as teclas - <keycombo action="simul"> - <keycap>Alt</keycap> - <keycap>F9</keycap> - </keycombo> retornarão ao sistema - gráfico.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="xdm-boot"> - <para>Como eu inicio o XDM no processo de - inicialização?</para> - </question><answer> - - <para>Existem duas formas clássicas de iniciar o - <link xlink:href="http://www.FreeBSD.org/cgi/man.cgi?manpath=xfree86&query=xdm">xdm</link>. - A primeira consiste em inciá-lo a partir do - <filename>/etc/ttys</filename> (veja a página de - manual do &man.ttys.5;) usando o exemplo disponível - no arquivo; a segunda forma é simplesmente executar - o xdm a partir do <filename>rc.local</filename> (veja a - página de manual do &man.rc.8;) ou então por - um script <filename>X.sh</filename> em - <filename>/usr/local/etc/rc.d</filename>. As duas - maneiras são igualmente válidas, mas algumas - podem ser mais eficientes em algumas - situações, onde a outra forma não - seria ideal. Nos dois casos, o resultado será o - mesmo: o X iniciará o mostrando uma tela de login: - gráfica.</para> - - <para>O método de inicialização via - ttys oferece a vantagem de definir explicitamente em qual - vtyX o servidor gráfico vai ser carregado, passando - a responsabilidade da reinicialização do X - para o init, no momento do logout. O método via - rc.local oferece facilidades caso seja necessário - encerrar o processo xdm, no caso, por exemplo, de - ocorrerem problemas ao carregar o servidor - gráfico.</para> - - <para>Ao usar o rc.local para carregar o - <command>xdm</command>, ele não deve ser - acompanhado de nenhum argumento (deve ser iniciado como um - daemon e deve ser iniciado DEPOIS que o getty já - estiver em execussão, senão é - provável que ocorram conflitos entre ambos, podendo - travar o console. A melhor forma de assegurar o correto - funcionamento desse método é fazer com que o - script espere 10 segundos (por exemplo, com um sleep 10;) - antes de iniciar o xdm.</para> - - <para>Se a inteção é iniciar o - <command>xdm</command> a partir do - <filename>/etc/ttys</filename>, ainda existe a - probabilidade de conflitos entre o <command>xdm</command> - e o &man.getty.8;. Uma forma interessante de evitar esse - tipo de desconforto, é definir, no arquivo - <filename>/usr/X11R6/lib/X11/xdm/Xservers</filename>, o - número do <literal>vt</literal> onde o X deve ser - iniciado, da seguinte forma:</para> - - <programlisting>:0 local /usr/X11R6/bin/X vt4</programlisting> - - <para>O exemplo acima indica que o servidor X será - ativado no <filename>/dev/ttyv3</filename>. Note que - existe um offset de um vt, já que o X começa - a contar os terminais (vty) a partir do um, enquando o - <foreignphrase>kernel</foreignphrase> do FreeBSD os conta - a partir do zero.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="xconsole-failure"> - <para>Por que eu enfrento um <errorname>Couldn't open - console</errorname> ao executar o xconsole? </para> + <para>Como eu acesso os consoles virtuais a partir do X?</para> </question> <answer> - <para>Se o <application>X</application> for iniciado com um - <command>startx</command>, as permissões do - <filename>/dev/console</filename> não - serão redefinidas, resultando em - situações onde um <command>xterm - -C</command> ou mesmo o <command>xconsole</command> - não funcionarão corretamente.</para> - - <para>O motivo disso é a forma como as - permissões são definidas por padrão. - Em sistemas multiusuário, normalmente não se - espera que qualquer pessoa possa escrever no console do - sistema. Para os usuários que estão se - logando diretamente na máquina, em algum VTY, - existe o arquivo &man.fbtab.5; que resolve esse tipo de - problema.</para> + <para>Utilize <keycombo action="simul"><keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>F<replaceable>n</replaceable></keycap></keycombo> para voltar a um console virtual. Pressione <keycombo action="simul"> <keycap> Ctrl </keycap> <keycap> Alt </keycap> <keycap> F1 </keycap> </keycombo> para retornar ao primeiro console virtual.</para> - <para>Se for apropriado, garanta que exista uma linha - assim</para> + <para>Uma vez em um console de texto, use <keycombo action="simul"> <keycap> Alt </keycap> <keycap> F <replaceable> n </replaceable> </keycap> </keycombo> para mover-se entre eles.</para> - <programlisting>/dev/ttyv0 0600 /dev/console</programlisting> - - <para>No arquivo <filename>/etc/fbtab</filename> (veja a - página de manual do &man.fbtab.5;). Essa linha - garantirá que qualquer usuário que se logar - no <filename>/dev/ttyv0</filename> será - também proprietário do console.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="xfree86-root"> - <para>Antes eu conseguia usar o XFree86 com um - usuário sem privilégios. Porque agora o - servidor diz que eu tenho que ser - <systemitem class="username">root</systemitem>?</para> - </question> - - <answer> - <para>Todo servidor gráfico precisa ser executado - como <systemitem class="username">root</systemitem> para que o sistema permita - acesso direto aos equipamentos de vídeo. Acontece - que nas versões mais antigas, o XFree86 - (versões <= 3.3.6) instalava o servidor de forma - que ele era automaticamente executado como - <systemitem class="username">root</systemitem> (setuid de - <systemitem class="username">root</systemitem>). Óbviamente esse - comportamente implica em riscos de segurança em - qualquer caso onde o programa em questão seja - complexo e grande; esse é o caso dos servidores X. - As versões mais atuais do XFree86 não - instalam os servidores gráficos com todo esse - poder, exatamente por esse motivo.</para> - - <para>É claro que rodar o X como usuário - <systemitem class="username">root</systemitem> não é uma - idéia muito aceitável, especialmente em - relação à segurança. Existem - duas formas de usar o X como usuário comum. A - primeira é usar o <command>xdm</command> ou - qualquer outro gerenciador de display (como o - <command>kdm</command>); a segunda é usar o - <command>Xwrapper</command>.</para> - - <para>O <command>xdm</command> é um daemon que - controla logins gráficos. Normalmente ele é - iniciado no processo de inicialização e - é responsável pela - autenticação dos usuários, e por - inciar suas sessões; essencialmente é a - união gráfica do &man.getty.8; como o - &man.login.1;. Para mais informações sobre - o <command>xdm</command>, por gentileza, refira-se - à <link xlink:href="http://www.xfree86.org/support.html">documentação - do XFree86</link> e à questão do <link linkend="xdm-boot"><literal>FAQ</literal> sobre - xdm</link>.</para> - - <para>O <command>Xwrapper</command> é um - intermediador do servidor gráfico; é um - programa bem pequeno que possibilita a - inicialização manual do servidor - gráfico por qualquer usuário, garantindo - razoável segurança à - operação. O programa ainda faz algumas - verificações na linha de comando definida - pelo usuário, para garantir a sanidade das - intenções do mesmo. Se todas as - intenções forem aprovadas, ele executa o X. - Se por qualquer razão, a idéia de usar um - gerenciador de displays não te agrada, o - <command>Xwrapper</command> é feito para - você. Caso a coleção de - <literal>Ports</literal> esteja instalada, o programa pode - ser encontrado em - <filename>/usr/ports/x11/wrapper</filename>.</para> + <para>Para retornar à sessão X, mude para o console virtual que está executando o X. Se o X foi iniciado a partir da linha de comando usando <command> startx </command>, a sessão X será anexada ao próximo console virtual não utilizado, e não ao console de texto no qual foi invocado. Para oito terminais virtuais ativos, o X será executado no nono, portanto use <keycombo action="simul"> <keycap> Alt </keycap> <keycap> F9 </keycap> </keycombo>.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="ps2-x"> - <para>Por que meu mouse PS/2 não se comporta - corretamente no X?</para> - </question> - - <answer> - <para>O seu mouse e a device que o controla devem ter - desincronizado.</para> - - <para>Nas versões 2.2.5 e anteriores, a simples - alternância entre o X e o terminal, e voltar para o - X, força a resincronização do mouse. - Se o problema se tornar frequênte, adicione a - seguinte opção ao arquivo de - configuração do seu - <foreignphrase>kernel</foreignphrase>, e o - recompile:</para> - - <programlisting>options PSM_CHECKSYNC</programlisting> - - <para>Veja a seção sobre a <link linkend="make-kernel">compilação do - <foreignphrase>kernel</foreignphrase></link>, caso - você não tenha experiência com - isso.</para> - - <para>Com essa opção as chances de ter - problemas com a sincronia do mouse são bem - pequenas. Contudo, se ainda assim o problema persistir, - clique em qualquer botão durante o movimento do - mouse. É o bastante para resincroniza-lo.</para> - - <para>Infelizmente essa opção pode não - funcionar em alguns sistemas, dependendo de qual driver - controle o seu mouse PS/2; especialmente se a device de - controle for do tipo ALPS GlidePoint.</para> - - <para>Na versão 2.2.6 e posteriores, a - verificação de sincronia se tornou - razoávelmente melhor, e é padrão nos - mouses PS/2. Deve funcionar corretamente com GlidePoint, - inclusive (como o código de - verificação de sincronia ter se tornado - padrão, a opção PSM_CHECKSYNC - não existe mais). Contudo, em - situações muito raras, o driver de controle - do mouse pode, errôneamente reportar problemas de - sincronização, mostrando a seguinte mensagem - do <foreignphrase>kernel</foreignphrase>:</para> + <question xml:id="xdm-boot"> + <para>Como faço para carregar o <application> XDM </application> na inicialização?</para> + </question> - <programlisting>psmintr: out of sync (xxxx != yyyy)</programlisting> + <answer> + <para>Existem duas escolas de pensamento sobre como iniciar o <citerefentry vendor="xfree86"><refentrytitle>xdm</refentrytitle><manvolnum>1</manvolnum></citerefentry>. Uma escola inicia o <command>xdm</command> a partir do <filename>/etc/ttys</filename> (veja <citerefentry><refentrytitle>ttys</refentrytitle><manvolnum>5</manvolnum></citerefentry>) usando o exemplo fornecido, enquanto o outro executa o <command>xdm</command> a partir do <filename>rc.local</filename> (veja <citerefentry><refentrytitle>rc</refentrytitle><manvolnum>8</manvolnum></citerefentry>) ou de um script <filename>X</filename> localizado em <filename>/usr/local/etc/rc.d</filename>. Ambos são igualmente válidos, e um pode funcionar em situações em que o outro não funciona. Em ambos os casos, o resultado é o mesmo: O X mostrará um prompt de login gráfico.</para> - <para>Pensando que seu mouse não está - funcionando corretamente.</para> + <para>O método <citerefentry><refentrytitle>ttys</refentrytitle><manvolnum>5</manvolnum></citerefentry> tem a vantagem de documentar qual vty X iniciará e passando a responsabilidade de reiniciar o servidor X no logout para o <citerefentry><refentrytitle>init</refentrytitle><manvolnum>8</manvolnum></citerefentry>. O método <citerefentry><refentrytitle>rc</refentrytitle><manvolnum>8</manvolnum></citerefentry> facilita o <command>kill</command> <command>xdm</command> se houver um problema ao iniciar o servidor X.</para> - <para>Se for o caso, desligue o código de - verificação de sincronia do mouse PS/2, - definindo a flag 0x100 na device de controle do mesmo. - Entre no modo <emphasis>UserConfig</emphasis> definindo a - opção <option>-c</option> na tela do - processo de inicialização:</para> + <para>Se carregado pelo <citerefentry><refentrytitle>rc</refentrytitle><manvolnum>8</manvolnum></citerefentry>, o <command>xdm</command> deve ser iniciado sem nenhum argumento. <command>xdm</command> deve iniciar <emphasis>após</emphasis> o <citerefentry><refentrytitle>getty</refentrytitle><manvolnum>8</manvolnum></citerefentry> ser executado, ou então <command>getty</command> e <command>xdm</command> entrarão em conflito, bloqueando o console. A melhor maneira de contornar isso é fazer com que o script espere 10 segundos ou mais e, em seguida, iniciar o <command>xdm</command>.</para> - <screen>boot: <userinput>-c</userinput></screen> + <para>Ao iniciar o <command>xdm</command> pelo <filename>/etc/ttys</filename>, ainda há uma chance de conflito entre <command>xdm</command> e <citerefentry><refentrytitle>getty</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Uma maneira de evitar isso é adicionar o número <literal> vt </literal> no arquivo <filename>/usr/local/lib/X11/xdm/Xservers</filename>:</para> - <para>Depois, na linha de comando do - <emphasis>UserConfig</emphasis>, digite:</para> + <programlisting>:0 local /usr/local/bin/X vt4</programlisting> - <screen>UserConfig> <userinput>flags psm0 0x100</userinput> -UserConfig> <userinput>quit</userinput></screen> + <para>O exemplo acima irá direcionar o servidor X para ser executado em <filename>/dev/ttyv3</filename>. Observe que o número é compensado por um. O servidor X conta a vty a partir de 1, enquanto o kernel do FreeBSD numera a vty a partir de zero.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="ps2-mousesystems"> - <para>Por que meu mouse PS/2 da MouseSystems não - funciona?</para> + <question xml:id="xconsole-failure"> + <para>Por que eu obtenho o erro <errorname>Couldn't open console</errorname> quando executo o <command>xconsole</command>?</para> </question> <answer> - <para>Existem notícias que alguns modelos de mouse - PS/2 da MouseSystems funcionam corretamente apenas em modo - de alta resolução. Do contrário, o - cursor do mouse costuma pular para diagonal superior - esquerda da tela com certa frequência.</para> + <para>Quando o <application>X</application> é iniciado com o comando <command>startx</command>, as permissões em <filename>/dev/console</filename> <emphasis>não</emphasis> serão alteradas, o que resultará um comportamento errático de algumas coisas tais como o não funcionamento do <command>xterm -C</command> e do <command>xconsole</command>.</para> - <para>Infelizmente não existe solução - à esse problema, nas versões 2.0.X e 2.1.X. - Contudo, das versões 2.2 à 2.2.5, basta - aplicar o seguinte patch, no - <filename>/sys/i386/isa/psm.c</filename> e recompilar o - <foreignphrase>kernel</foreignphrase>. Veja a - seção sobre <link linkend="make-kernel"> - compilação do - <foreignphrase>kernel</foreignphrase></link> caso - não tenha experiência com o assunto.</para> + <para>Isso ocorre devido à maneira como as permissões do console são definidas por padrão. Em um sistema multiusuário, não é necessário que qualquer usuário possa escrever no console do sistema. Para os usuários que estão logando diretamente em uma máquina com um VTY, existe o arquivo <citerefentry><refentrytitle>fbtab</refentrytitle><manvolnum/></citerefentry> para resolver tais problemas.</para> - <programlisting>@@ -766,6 +766,8 @@ - if (verbose >= 2) - log(LOG_DEBUG, "psm%d: SET_DEFAULTS return code:%04x\n", - unit, i); -+ set_mouse_resolution(sc->kbdc, PSMD_RES_HIGH); -+ - #if 0 - set_mouse_scaling(sc->kbdc); /* 1:1 scaling */ - set_mouse_mode(sc->kbdc); /* stream mode */</programlisting> + <para>Em poucas palavras, certifique-se de que uma linha não comentada do formulário esteja no <filename>/etc/fbtab</filename> (veja <citerefentry><refentrytitle>fbtab</refentrytitle><manvolnum>5</manvolnum></citerefentry>):</para> - <para>Na versão 2.2.6 e versões posteriores, - basta especificar a flag 0x04 para device de controle do - mouse PS/2, colocando-o em modo de alta - resolução. Entre no modo - <emphasis>UserConfig</emphasis> com a opçãp - <option>-c</option> na tela do processo de - inicialização:</para> - - <screen>boot: <userinput>-c</userinput></screen> - - <para>Depois, na linha de comando do - <emphasis>UserConfig</emphasis> digite:</para> - - <screen>UserConfig> <userinput>flags psm0 0x04</userinput> -UserConfig> <userinput>quit</userinput></screen> + <programlisting>/dev/ttyv0 0600 /dev/console</programlisting> - <para>Veja a pergunta anterior, sobre outra causa - possível de problemas com o mouse.</para> + <para>Ele irá garantir que quem fizer o login em <filename>/dev/ttyv0</filename> será o dono do console.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="imake-tmpl"> - <para>Ao compilar uma aplicação X, o - <command>imake</command> não consegue encontrar o - <filename>Imake.tmpl</filename>. Onde ele - está?</para> + <question xml:id="ps2-x"> + <para>Por que meu mouse PS/2 não funciona direito no X?</para> </question> <answer> - <para>O <filename>Imake.tmpl</filename> é parte do - pacote Imake, uma aplicação padrão - para construção de aplicações - gráficas. O <filename>Imake.tmpl</filename>, assim - como vários outros arquivos de cabeçalhos - necessários para compilar aplicações - gráficas, é parte da - distribuição do X. Eles podem ser - instalados pelo sysinstall ou manualmente a partir dos - arquivos da distribuição.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="xfree86-version"> - <para>Estou construindo uma aplicação - gráfica que depende do XFree86 3.3.X, mas eu estou - com o XFree86 4.X instalado. O que fazer?</para> - </question> + <para>O mouse e o driver do mouse podem estar fora de sincronização. Em casos raros, o driver também pode relatar erroneamente erros de sincronização:</para> - <answer> - <para>Pra definir que a construção do - <literal>Port</literal> deve ser linkada às - bibliotecas do XFree86 4.X, adicione o seguinte, no seu - <filename>/etc/make.conf</filename>, (se o arquivo - não existir, crie-o):</para> + <programlisting>psmintr: out of sync (xxxx != yyyy)</programlisting> - <programlisting>XFREE86_VERSION= 4</programlisting> + <para>Se isso acontecer, desative o código de verificação de sincronização definindo as flags de driver para o driver de mouse PS/2 como <literal>0x100</literal>. Isto pode ser mais facilmente alcançado adicionando <literal>hint.psm.0.flags="0x100"</literal> ao arquivo <filename>/boot/loader.conf</filename> e reiniciando.</para> </answer> </qandaentry> <qandaentry> <question xml:id="mouse-button-reverse"> - <para>Como posso inverter as funções dos - botões do mouse?</para> + <para>Como eu inverto os botões do mouse?</para> </question> + <answer> - <para>Execute o comando <command>xmodmap -e "pointer = 3 2 - 1"</command> à partir do - <filename>.xinitrc</filename> ou do - <filename>.xsession</filename>.</para> + <para>Digite <command>xmodmap -e "pointer = 3 2 1"</command>. Adicione este comando ao <filename>~/.xinitrc</filename> ou <filename>~/.xsession</filename> para que isso aconteça automaticamente.</para> </answer> </qandaentry> <qandaentry> <question xml:id="install-splash"> - <para>Como instalar uma Splash Screen e onde posso - encontra-las?</para> - </question> - - <answer> - <para>A partir da lançamento do FreeBSD 3.1, uma nova - característica foi adicionada ao sistema, - permitindo que alguns arquivos de imagens sejam usados - como <quote>Splash Screens</quote> durante as mensagens do - processo de inicialização. Tais imagens - devem ser arquivos do tipo bitmap com 256 cores - (<filename>*.BMP</filename>) ou então ZSoft PCX - (<filename>*.PCX</filename>). Devem ainda ter - resolução de 320x200 pixels (ou menos), para - funcionarem corretamente em adaptadores de vídeo - VGA tradicionais. Caso o - <foreignphrase>kernel</foreignphrase> tenha sido compilado - com suporte à VESA, então podem ser usados - bitmaps maiores, até 1024.768 px. O suporte - à VESA pode ser diretamente compilado no - <foreignphrase>kernel</foreignphrase>, com a - opção VESA no arquivo de - configuração, ou carregado como - módulo, com o kld, durante o processo de - inicialização do sistema.</para> - - <para>Para definir a <quote>Splash Screens</quote>, basta - modificar alguns arquivos de inicialização - que controlam o processo de inicialização do - FreeBSD. Tais arquivos foram alterados na versão - 3.2 do FreeBSD, existindo portanto duas formas de carregar - uma <quote>Splash Screens</quote>:</para> - - <itemizedlist> - <listitem> - <para>No FreeBSD 3.1</para> - - <para>O primeiro passo é escolher o seu bitmap, e - sua versão. Até o FreeBSD 3.1, apenas - os bitmaps do tipo Windows eram suportados. Assim que - escolher (ou criar) sua <quote>Splash Screens</quote>, - copie-a para <filename>/boot/splash.bmp</filename>. - Depois, basta editar (ou criar, caso não - exista) o arquivo <filename>/boot/loader.rc</filename> - e adicionar as seguintes linhas:</para> - - <programlisting>load kernel -load -t splash_image_data /boot/splash.bmp -load splash_bmp -autoboot</programlisting> - </listitem> - - <listitem> - <para>No FreeBSD 3.2 e posteriores</para> - - <para>Além de adicionar suporte a <quote>Splash - Screens</quote> de formato PCX, o FreeBSD 3.2 passou - a oferecer uma maneira mais interessante de configurar - o processo de inicialização. Caso - prefira, o método descrito acima, para o - FreeBSD 3.1 também funciona. Nesse caso, se a - imagem for do tipo PCX basta substituir a entrada - <literal>splash_bmp</literal> por - <literal>splash_pcx</literal>. Caso queira usar a - nova configuração do processo de - inicialização, basta criar um arquivo - <filename>/boot/loader.rc</filename> com o seguinte - conteúdo:</para> - - <programlisting>include /boot/loader.4th -start</programlisting> - - <para>e depois, um - <filename>/boot/loader.conf</filename> com o - seguinte:</para> - - <programlisting>splash_bmp_load="YES" -bitmap_load="YES"</programlisting> - - <para>Essa configuração assume que o - <filename>/boot/splash.bmp</filename> deve ser usado - como sua <quote>Splash Screens</quote>. Caso prefira - usar um arquivo PCX, copie para o - <filename>/boot/splash.pcx</filename>, e crie um - <filename>/boot/loader.rc</filename>, da forma como - foi indicado anteriormente; depois crie um - <filename>/boot/loader.conf</filename> com o - seguinte:</para> - - <programlisting>splash_pcx_load="YES" -bitmap_load="YES" -bitmap_name="/boot/splash.pcx"</programlisting> - </listitem> - </itemizedlist> + <para>Como faço para instalar uma splash screen e onde posso encontrá-las?</para> + </question> - <para>Agora você só precisa de uma imagem, para - servir de <quote>Splash Screens</quote>. Pra isso, - dê uma navegada na galeria disponível em - <link xlink:href="http://www.baldwin.cx/splash/">http://www.baldwin.cx/splash/</link>.</para> + <answer> + <para>A resposta detalhada para essa pergunta pode ser encontrada na seção <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/boot-splash.html">Telas de inicialização do tempo de inicialização</link> do FreeBSD Handbook.</para> </answer> </qandaentry> <qandaentry> <question xml:id="windows-keys"> - <para>Posso usar as teclas do Windows® que meu teclado - possui, sob o X?</para> + <para>Posso usar as teclas do <keycap>Windows</keycap> do meu teclado no X?</para> </question> <answer> - <para>Pode. Basta usar o &man.xmodmap.1; para redefinir a - função das teclas.</para> + <para>Sim. Use o <citerefentry vendor="xfree86"><refentrytitle>xmodmap</refentrytitle><manvolnum>1</manvolnum></citerefentry> para definir quais funções as teclas devem executar.</para> - <para>Assumindo que todos os teclados <quote><trademark class="registered">Windows</trademark></quote> sejam - padrão, os códigos de mapeamento pras 3 - teclas são:</para> + <para>Supondo que todos os teclados Windows sigam um padrão, os códigos de teclas para essas três teclas são os seguintes:</para> <itemizedlist> <listitem> - <para>115 - <trademark class="registered">Windows</trademark>, entre a - tecla Ctr e a Alt do lado esquerdo.</para> + <para><keycode> 115 </keycode> - tecla <keycap> Windows </keycap>, entre as teclas <keycap> Ctrl </keycap> e <keycap> Alt </keycap> do lado esquerdo</para> </listitem> <listitem> - <para>116 - <trademark class="registered">Windows</trademark>, à - direita a tecla AltGr.</para> + <para><keycode> 116 </keycode> - tecla <keycap> Windows </keycap>, à direita de <keycap> AltGr </keycap></para> </listitem> <listitem> - <para>117 - <keycap>Menu</keycap>, do lado esquerdo da - tecla Ctrl esquerda</para> + <para><keycode> 117 </keycode> - <keycap> Menu </keycap>, à esquerda da tecla <keycap>Ctrl</keycap> da direita</para> </listitem> </itemizedlist> - <para>Por exemplo, para fazer com que a tecla Windows® - esquerda imprima uma vírgula, faça o - seguinte:</para> - - <screen>&prompt.root; <userinput>xmodmap -e "keycode 115 = comma"</userinput></screen> + <para>Para que a tecla <keycap> Windows </keycap> da esquerda imprima uma vÃrgula, tente isto.</para> - <para>É provável que seu gerenciador de - janelas tenha que ser reiniciado, para visualizar o - resultado.</para> + <screen><prompt>#</prompt> <userinput>xmodmap -e "keycode 115 = comma"</userinput></screen> - <para>Pra forçar o carregamento automático do - mapeamento das teclas <trademark class="registered">Windows</trademark>, coloque os - comandos do <command>xmodmap</command> no arquivo - <filename>~/.xinitrc</filename> ou de preferência, - crie um arquivo <filename>~/.xmodmaprc</filename> e inclua - as opções do <command>xmodmap</command> uma - por linha, nesse arquivo. Depois adicione:</para> + <para>Para que os mapeamentos de teclas <keycap>Windows</keycap> sejam ativados automaticamente toda vez que X for iniciado, coloque os comandos <command>xmodmap</command> em <filename>~/.xinitrc</filename> ou, preferencialmente, crie um <filename>~/.xmodmaprc</filename> e inclua as opções <command>xmodmap</command>, uma por linha, e adicione a seguinte linha ao <filename>~/.xinitrc</filename>:</para> <programlisting>xmodmap $HOME/.xmodmaprc</programlisting> - <para>No seu <filename>~/.xinitrc</filename>.</para> + <para>Por exemplo, para mapear as 3 chaves para serem <keycap>F13</keycap>, <keycap>F14</keycap> e <keycap>F15</keycap>, respectivamente. Isso facilitaria mapeá-los para funções úteis em aplicativos ou no gerenciador de janelas.</para> - <para>Por exemplo, pode-se mapear as 3 teclas em - questão para fazer o papel das teclas - <keycap>F13</keycap>, <keycap>F14</keycap>, e - <keycap>F15</keycap>, respectivamente. Dessa forma, seria - fácil mapear as aplicações de forma - que as teclas tivessem ações no seu sistema, - como veremos agora.</para> - - <para>Adicione o seguinte conteúdo, no arquivo - <filename>~/.xmodmaprc</filename>.</para> + <para>Para fazer isto, coloque o seguinte em <filename> ~/.xmodmaprc</filename>.</para> <programlisting>keycode 115 = F13 keycode 116 = F14 keycode 117 = F15</programlisting> - <para>Se o gerenciador de janelas em questão for o - <command>fvwm2</command>, por exemplo, pode-se mapear as - teclas de forma que o <keycap>F13</keycap> minimize (ou - maximize) a janela que o cursor está apontando, a - tecla <keycap>F14</keycap> de forma que ela traga a janela - marcada pelo cursor para frente (ou volte para - trás, caso já esteja à frente), e o - <keycap>F15</keycap> pode alternar o menu da área - detrabalho principal, o que é bem útil - quando a tela não é visível.</para> - - <para>As seguintes definições no - <filename>~/.fvwmrc</filename> implementam a - configuração acima descrita:</para> - - <programlisting>Key F13 FTIWS A Iconify + <para>Para o gerenciador da área de trabalho <package>x11-wm/fvwm2</package>, pode-se mapear as chaves para que <keycap>F13</keycap> seja minimizada a janela em que o cursor está ou a maximize, <keycap>F14</keycap> traz a janela em que o cursor está para a frente ou, se já estiver na frente, a coloca em background <keycap>F15</keycap> aparece no menu principal do Workplace mesmo que o cursor não esteja a área de trabalho, o que é útil quando nenhuma parte da área de trabalho está visÃvel.</para> + + <para>As seguintes entradas em <filename> ~/.fvwmrc </filename> implementam a configuração acima mencionada:</para> + + <programlisting>Key F13 FTIWS A Iconify Key F14 FTIWS A RaiseLower Key F15 A A Menu Workplace Nop</programlisting> - </answer> + </answer> </qandaentry> <qandaentry> <question xml:id="x-3d-acceleration"> - <para>Como posso obter a aceleração de - equipamentos 3D para o OpenGL?</para> - </question> - - <answer> - <para>A disponibilidade da aceleração 3D - depende da versão do XFree86 e da placa de - vídeo. Caso a placa seja NVIDIA, verifique a - página da <link xlink:href="http://nvidia.netexplorer.org/">Iniciativa de - Driver NVIDIA para o FreeBSD</link>, que discute a - aceleração 3D em chips NVIDIA com XFree86-4. - Pra outras placas em conjunto com o XFree86-4, incluindo a - Matrox G200/G400, a ATI Rage 128/Radeon, as 3dfx Voodoo 3, - 4, 5, e Banshee, refira-se à página sobre - <link xlink:href="http://gladstone.uoregon.edu/~eanholt/dri/">Renderização - Direta do XFree86-4 no FreeBSD</link>. Usuários - do XFree86 na versão 3.3 podem usar o - <literal>port</literal> do Utah-GLX que pode ser - encontrado em <package>graphics/utah-glx</package> para - conseguir alguma (limitada) aceleração 3D - para o OpenGL em placas Matrox Gx00, ATI Rage Pro, SiS - 6326, i810, Savage, e algumas NVIDIA antigas.</para> - </answer> - </qandaentry> + <para>Como posso obter aceleração de hardware 3D para o <trademark class="registered"> OpenGL </trademark>?</para> + </question> + + <answer> + <para>A disponibilidade da aceleração 3D depende da versão do Xorg e do tipo de chip de vÃdeo. Para um chip da nVidia, use os drivers binários fornecidos para o FreeBSD instalando um dos seguintes ports:</para> + + <para>As versões mais recentes das placas nVidia são suportadas pelo port <package> x11/nvidia-driver </package>.</para> + + <para>Drivers mais antigos estão disponÃveis como <package>x11/nvidia-driver-<replaceable> ###</replaceable> </package></para> + + <para>A nVidia fornece informações detalhadas sobre qual placa é suportada por qual driver em seu site: <uri xlink:href="http://www.nvidia.com/object/IO_32667.html">http://www.nvidia.com /object/IO_32667.html</uri>.</para> + + <para>Para a Matrox G200/G400, verifique o port <package> x11-drivers/xf86-video-mga</package>.</para> + + <para>Para a ATI Rage 128 e Radeon, consulte <citerefentry vendor="xorg"><refentrytitle>ati</refentrytitle><manvolnum>4</manvolnum></citerefentry>, <citerefentry vendor="xorg"><refentrytitle>r128</refentrytitle><manvolnum>4</manvolnum></citerefentry> and <citerefentry vendor="xorg"><refentrytitle>radeon</refentrytitle><manvolnum>4</manvolnum></citerefentry>.</para> + </answer> + </qandaentry> </qandaset> </chapter> <chapter xml:id="networking"> - <title>Redes</title> + <title>Networking</title> <qandaset> <qandaentry> <question xml:id="diskless-booting"> - <para>Onde obter informações a respeito do - processo de processo de inicialização sem - disco rígido (<foreignphrase>diskless - booting</foreignphrase>)?</para> + <para>Onde posso obter informações sobre a <quote>inicialização sem disco</quote>?</para> </question> <answer> - <para>O processo de processo de inicialização - sem disco implica na possibilidade de uma máquina - FreeBSD ser inicializada através da rede, lendo os - arquivos necessários à partir de um - servidor, ao invés de um disco rígido. Para - maiores detalhes, por favor, consulte o ítem <link xlink:href="../handbook/diskless.html"><foreignphrase>diskless - booting</foreignphrase> no - &a.ptbr.p.handbook;</link>.</para> + <para><quote>Inicialização sem disco</quote> significa que o sistema FreeBSD é inicializado através de uma rede e lê os arquivos necessários de um servidor ao invés de seu disco rÃgido. Para maiores detalhes, consulte a entrada do Handbook <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/network-diskless.html">Inicialização sem disco</link>.</para> </answer> </qandaentry> <qandaentry> <question xml:id="router"> - <para>Um sistema FreeBSD pode ser utilizado como roteador - dedicado para uma rede?</para> + <para>Uma maquina FreeBSD pode ser usada como um roteador de rede dedicado?</para> </question> <answer> - <para>Pode. Por gentileza, refira-se à <link xlink:href="../handbook/routing.html">documentação - do &a.ptbr.p.handbook; sobre configurações - avançadas de rede</link>, mais especificamente, - a seção sobre <link xlink:href="../handbook/routing.html#DEDICATED-ROUTER">roteamento - e gateways</link>.</para> + <para>Sim. Consulte a entrada do Manual em <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/advanced-networking.html">rede avançada</link>, especificamente a seção sobre <link xlink:href="@@URL_RELPREFIX@@/doc/pt_BR.ISO8859-1/books/handbook/network-routing.html">roteamento e gateways</link>.</para> </answer> </qandaentry> <qandaentry> <question xml:id="win95-connection"> - <para>Posso conectar minha máquina com Win95 à - Internet, através do meu FreeBSD?</para> + <para>Posso conectar minha maquina <trademark class="registered">Windows</trademark> à Internet via FreeBSD?</para> </question> <answer> - <para>Normalmente, as pessoas que propõem esse tipo - de questão possuem dois computadores em casa, um - com FreeBSD e outro com Win95. A idéia é - utilizar a maquina com FreeBSD para se conectar à - Internet, e então oferecer acesso Internet a - máquina Win95 através do FreeBSD. Essa - é apenas uma extensão especial da - questão anterior.</para> + <para>Normalmente, as pessoas que fazem essa pergunta têm dois PCs em casa, um com o FreeBSD e outro com alguma versão do <trademark class="registered">Windows</trademark>, a idéia é usar o sistema FreeBSD para conectar-se à Internet e depois ser capaz de acessar a Internet a partir do sistema <trademark class="registered">Windows</trademark> através do sistema FreeBSD. Este é realmente apenas um caso especial da pergunta anterior e funciona perfeitamente bem.</para> - <para>... e a resposta é sim! No FreeBSD 3.x, o - &man.ppp.8; em modo usuário oferece a - opção <option>-nat</option>. Se o - &man.ppp.8; for executado com essa opção, - basta definir a variável - <literal>gateway_enable</literal> para - <emphasis>YES</emphasis> no arquivo - <filename>/etc/rc.conf</filename>, e configurar - corretamente a máquina Windows. Isso é o - bastante.</para> + <para>Usuários de rede discada devem usar <option>-nat</option> e definir <literal>gateway_enable</literal> para <emphasis>YES</emphasis> no arquivo <filename>/etc/rc.conf</filename>. Para obter mais informações, consulte <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> ou o <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/userppp.html ">manual no usuário PPP</link>.</para> - <para>Para obter mais informações, por - gentileza, refira-se a página de manual do - &man.ppp.8;</para> - - <para>Se o &man.ppp.8; estiver sendo usado em modo - <foreignphrase>kernel</foreignphrase> - (<foreignphrase>kernel-mode</foreignphrase>) ou a - conexão com a Internet for via Ethernet, a - opção mais viável será - utilizar o &man.natd.8;. Por favor, consulte a - seção <link linkend="natd">natd</link> dessa - documentação.</para> + <para>Se a conexão com a Internet for pela Ethernet, use <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum> </citerefentry>. Um tutorial pode ser encontrado na seção <link xlink:href="@@URL_RELPREFIX@@/doc/pt_BR.ISO8859-1/books/handbook/firewalls-ipfw.html#network-natd">natd</link> do manual.</para> </answer> </qandaentry> <qandaentry> <question xml:id="slip-ppp-support"> - <para>O FreeBSD suporta SLIP e PPP?</para> + <para>O FreeBSD suporta PPP?</para> </question> <answer> - <para>Claro. Veja as páginas de manual do - &man.slattach.8;, &man.sliplogin.8;, &man.ppp.8;, e - &man.pppd.8;. O &man.ppp.8; e o &man.pppd.8; oferecem - suporte à conexões entrantes e de - saída (conexões incoming/outgoing), enquanto - o &man.slattach.8; à conexões de - saída (outgoing).</para> - - <para>Para obter mais informações sobre a - correta utilização desses recursos, por - gentileza, refira-se ao Capítulo sobre <link xlink:href="../handbook/ppp-and-slip.html">PPP e SLIP do - &a.ptbr.p.handbook;</link>.</para> + <para>Sim. O <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> fornece suporte para conexões de entrada e saÃda.</para> - <para>Se o seu acesso à Internet for apenas por meio - de uma conta Shell, pode ser interessante dar uma olhada - no <literal>port</literal> da aplicação - <package>net/slirp</package>. Esse - <literal>port</literal> oferece acesso (limitado) à - serviços como FTP e HTTP direto da máquina - local.</para> + <para>Para obter mais informações sobre como usar isso, consulte o <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/ppp-and-slip.html">capÃtulo sobre o PPP</link> no Handbook.</para> </answer> </qandaentry> <qandaentry> <question xml:id="natd"> - <para>O FreeBSD suporta NAT ou Masquerading?</para> + <para>O FreeBSD suporta NAT ou Mascaramento de IPs?</para> </question> <answer> - <para>Se no seu caso, existe uma subrede (uma ou mais - máquinas locais interconectadas em rede), mas o seu - Provedor de Internet disponibiliza apenas um IP (ou se o - endereço IP em questão é - dinâmico), com certeza é interessante dar uma - olhada no &man.natd.8;. O &man.natd.8; possibilita que - uma subrede inteira acesse a Internet através de um - único endereço IP.</para> - - <para>O &man.ppp.8; oferece suporte interno à essa - mesma funcionalidade, através da - opção <option>-nat</option> do programa. A - biblioteca &man.libalias.3; é usada tanto pelo - &man.ppp.8; quanto pelo &man.natd.8;.</para> + <para>Sim. Para obter instruções sobre como usar o NAT em uma conexão PPP, consulte a seção do <link xlink:href="@@URL_RELPREFIX@@/doc/pt_BR.ISO8859-1/books/handbook/userppp.html">PPP</link> no manual. Para usar o NAT em algum outro tipo de conexão de rede, consulte a seção <link xlink:href="@@URL_RELPREFIX@@/doc/pt_BR.ISO8859-1/books/handbook/firewalls-ipfw.html#network-natd">natd</link> do manual.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="parallel-connect"> - <para>Como posso conectar duas estações - FreeBSD por linha paralela, usando o PLIP?</para> + <question xml:id="ethernet-aliases"> + <para>Como posso configurar aliases de Ethernet?</para> </question> <answer> - <para>Por gentileza, refira-se à seção - sobre <link xlink:href="../handbook/plip.html">PLIP do - &a.ptbr.p.handbook;</link>.</para> + <para>Se o alias estiver na mesma sub-rede que um endereço já configurado na interface, adicione <literal>netmask 0xffffffff </literal>a este comando:</para> + + <screen><prompt>#</prompt> <userinput>ifconfig <replaceable>ed0</replaceable> alias <replaceable>192.0.2.2 </replaceable>netmask 0xffffffff</userinput></screen> + + <para>Caso contrário, especifique o endereço de rede e a máscara de rede como de costume:</para> + + <screen><prompt>#</prompt> <userinput>ifconfig <replaceable>ed0</replaceable> alias <replaceable>172.16.141.5</replaceable> netmask 0xffffff00</userinput></screen> + + <para>Mais informações podem ser encontradas <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/configtuning-virtual-hosts.html">Handbook</link> do FreeBSD.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="create-dev-net"> - <para>Por que eu não posso criar um dispositivo - /dev/ed0?</para> + <question xml:id="nfs-linux"> + <para>Por que não posso montar o NFS de uma máquina <trademark class="registered">Linux</trademark>?</para> </question> <answer> - <para>Porque não é preciso! Na estrutura de - redes de Berkeley, as interfaces de rede são - acessadas somente (e diretamente) pelo código do - <foreignphrase>kernel</foreignphrase>. Por favor - verifique o arquivo <filename>/etc/rc.network</filename> e - as páginas do manual para os diversos programas de - rede ali mencionados, para maiores - informações. Se isto deixá-lo - completamente confuso, consulte um livro que descreva a - administração de rede em um outro sistema - operacional baseado no modelo BSD. Com poucas - exceções significativas, a - administração de rede em sistemas FreeBSD - é basicamente a mesma da utilizada em sistemas como - o SunOS 4.0 ou o Ultrix.</para> + <para>Algumas versões do código NFS do <trademark class="registered">Linux</trademark> aceitam somente solicitações de montagem vindas de uma porta privilegiada; tente executar o seguinte comando:</para> + + <screen><prompt>#</prompt> <userinput>mount -o -P linuxbox:/blah /mnt</userinput></screen> </answer> </qandaentry> <qandaentry> - <question xml:id="ethernet-aliases"> - <para>Como eu configuro aliases (apelidos) de - Ethernet?</para> + <question xml:id="exports-errors"> + <para>Por que o comando <command>mountd</command> continua me dizendo que ele <errorname>can't change attributes</errorname> (não pode alterar os atributos) e que eu tenho uma <errorname>bad exports list</errorname> (lista de exports ruins) no meu servidor NFS do FreeBSD?</para> </question> <answer> - <para>Se a intenção é definir um - apelido IP para uma subrede previamente configurada, basta - adicionar a máscara <literal>0xffffffff</literal> - junto à sintaxe usual para definição - de alias no &man.ifconfig.8;:</para> - - <screen>&prompt.root; <userinput>ifconfig ed0 alias 192.0.2.2 netmask 0xffffffff</userinput></screen> - - <para>Do contrário, basta definir o endereço - de rede e a netmask em questão, da forma - tradicional:</para> - - <screen>&prompt.root; <userinput>ifconfig ed0 alias 172.16.141.5 netmask 0xffffff00</userinput></screen> + <para>O problema mais freqüente é não entender o formato correto de <filename>/etc/exports</filename>. Revise <citerefentry> <refentrytitle>exports</refentrytitle><manvolnum>5</manvolnum></citerefentry> e o <link xlink:href="@@URL_RELPREFIX@@/doc/pt_BR.ISO8859-1/books/handbook/network-nfs.html ">NFS</link> no manual, especialmente na seção <link xlink:href=" @@URL_RELPREFIX@@/doc/pt_BR.ISO8859-1/books/handbook/network-nfs html#configuring-nfs ">configurando o NFS</link>.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="port-3c503"> - <para>Como eu configuro minha placa 3Com 3C503 para utilizar - outra interface de conexão ?</para> + <question xml:id="ip-multicast"> + <para>Como faço para ativar o suporte a multicast IP?</para> </question> <answer> - <para>Se você deseja utilizar uma outra interface de - conexão, deverá especificar alguns - parâmetros adicionais na linha de comando do - &man.ifconfig.8;. A porta padrão é a - <literal>link0</literal>. Para usar a porta AUI ao - invés da porta BNC utilize a flag - <literal>link2</literal>. Tais flags devem ser definidas - através das variáveis ifconfig_* no arquivo - <filename>/etc/rc.conf</filename>. (consulte o - &man.rc.conf.5;).</para> + <para>Instale o pacote ou port <package>net/mrouted</package> e adicione <literal>mrouted_enable="YES"</literal> ao <filename>/etc/rc.conf</filename> para que o FreeBSD inicie este serviço no momento da inicialização.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="nfs"> - <para>Por que eu tenho problemas com NFS no FreeBSD?</para> + <question xml:id="fqdn-hosts"> + <para>Por que preciso usar o FQDN para hosts na minha rede?</para> </question> <answer> - <para>Certas interfaces de rede para PC são melhores - do que outras (para adotarmos um eufemismo) e as vezes - podem causar problemas em aplicações que - utilizam a rede de modo intensivo, como o NFS.</para> - - <para>Consulte o item <link xlink:href="../handbook/nfs.html">NFS</link> do - &a.ptbr.p.handbook; para obter mais - informações sobre o assunto.</para> + <para>Veja a resposta no <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/mail-trouble.html">Handbook</link> do FreeBSD.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="nfs-linux"> - <para>Por que não é possível montar - sistemas de arquivos NFS de máquinas Linux?</para> + <question xml:id="network-permission-denied"> + <para>Por que recebo oerro, <errorname>Permission denied</errorname>, para todas as operações de rede?</para> </question> <answer> - <para>Algumas versões do código NFS do Linux - aceitam requisições de montagem provenientes - apenas de portas privilegiadas, experimente o - comando:</para> + <para>Se o kernel é compilado com a opção <literal>IPFIREWALL</literal>, esteja ciente de que a polÃtica padrão é negar todos os pacotes que não são explicitamente permitidos.</para> - <screen>&prompt.root; <userinput>mount -o -P linuxbox:/blah /mnt</userinput></screen> + <para>Se o firewall foi inadvertidamente configurado de forma errada, restaure a operacionalidade da rede digitando o seguinte comando como <systemitem class="username">root</systemitem>:</para> + + <screen><prompt>#</prompt> <userinput>ipfw add 65534 allow all from any to any</userinput></screen> + + <para>Considere configurar a opção <literal>firewall_type="open"</literal> no <filename>/etc/rc.conf</filename>.</para> + + <para>Para obter mais informações sobre como configurar seu firewall, consulte o <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/firewalls-ipfw.html">Handbook</link>.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="nfs-sun"> - <para>Por que não é possível montar - sistemas de arquivos NFS de máquinas Sun?</para> + <question xml:id="ipfw-fwd"> + <para>Por que minha regra <command>ipfw</command> <quote>fwd</quote> para redirecionar um serviço para outra máquina que não está funcionando?</para> </question> <answer> - <para>Estações de trabalho Sun rodando SunOS - 4.X aceitam requisições de montagem - provenientes apenas de portas privilegiadas, experimente o - comando:</para> + <para>Possivelmente porque você precisa utilizar a conversão de endereços de rede (NAT) em vez de apenas encaminhar os pacotes. Uma regra <quote>fwd</quote> apenas encaminha os pacotes, ela não altera os dados dentro do pacote. Considere esta regra:</para> - <screen>&prompt.root; <userinput>mount -o -P sunbox:/blah /mnt</userinput></screen> + <screen>01000 fwd <replaceable>10.0.0.1</replaceable> from any to <replaceable>foo 21</replaceable></screen> + + <para>Quando um pacote com um endereço de destino <replaceable>foo</replaceable> chega à máquina com esta regra, o pacote é encaminhado para <replaceable>10.0.0.1</replaceable>, mas ainda tem o endereço de destino <replaceable>foo</replaceable>. O endereço de destino do pacote não é alterado para <replaceable>10.0.0.1</replaceable>. A maioria das máquinas provavelmente descartaria um pacote que recebesse com um endereço de destino que não fosse o seu. Portanto, usar uma regra <quote>fwd</quote> geralmente não funciona da maneira esperada pelo usuário. Esse comportamento é um recurso e não um bug.</para> + + <para>Veja o <link linkend="service-redirect"><acronym>FAQ</acronym> sobre redirecionamento de serviços</link>, o manual do <citerefentry><refentrytitle>natd</refentrytitle><manvolnum>8</manvolnum></citerefentry>, ou um dos vários utilitários de redirecionamento de porta na <link xlink:href="@@URL_RELPREFIX@@/ports/index.html">Coleção de Portas</link> para uma maneira correta de fazer isso.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="exports-errors"> - <para>Por que o <command>mountd</command> informa - repetidamente que <errorname>can't change - attributes</errorname> e <errorname>bad exports - list</errorname> utilizando o servidor de NFS do - FreeBSD?</para> + <question xml:id="service-redirect"> + <para>Como posso redirecionar as solicitações de serviço de uma máquina para outra?</para> </question> <answer> - <para>O problema mais freqüente é o não - entendimento correto do formato do arquivo - <filename>/etc/exports</filename>. Por gentileza, leia - com atenção a página de manual do - &man.exports.5; e a documentação sobre - <link xlink:href="../handbook/nfs.html">NFS</link> no - &a.ptbr.p.handbook;, especialmente a seção - sobre a <link xlink:href="../handbook/nfs.html#CONFIGURING-NFS">configuração - do NFS</link>.</para> + <para>FTP e outras solicitações de serviço podem ser redirecionadas com o pacote ou port <package>sysutils/socket</package>. Substitua a entrada para o serviço em <filename>/etc/inetd.conf</filename> para chamar <command>socket</command>, conforme visto neste exemplo para <application>ftpd</application>:</para> + + <programlisting>ftp stream tcp nowait nobody /usr/local/bin/socket socket <replaceable>ftp.example.com</replaceable> <replaceable>ftp</replaceable></programlisting> + + <para>na qual <replaceable>ftp.example.com</replaceable> e <replaceable>ftp</replaceable> são o host e a porta de destino do redirecionamento, respectivamente.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="ppp-nextstep"> - <para>Por que existem problemas na comunicação - (via protocolo PPP) com máquinas NeXTStep?</para> + <question xml:id="bandwidth-mgr-tool"> + <para>Onde posso obter uma ferramenta de gerenciamento de largura de banda?</para> </question> - <answer> - <para>Experimente desabilitar a variável TCP - extensions no arquivo <filename>/etc/rc.conf</filename> - (consulte &man.rc.conf.5;) alterando a variável - abaixo para NO:</para> - <programlisting>tcp_extensions=NO</programlisting> - - <para>Máquinas Annex da Xylogic também - apresentam um problema similar neste aspecto, e você - deve adotar a mesma solução para conectar-se - a estes sistemas.</para> + <answer> + <para>Existem três ferramentas de gerenciamento de largura de banda disponÃveis para o FreeBSD. <citerefentry><refentrytitle>dummynet</refentrytitle><manvolnum>4</manvolnum></citerefentry> é integrado ao FreeBSD como parte do <citerefentry><refentrytitle>ipfw</refentrytitle><manvolnum>4</manvolnum></citerefentry>. <link xlink:href="http://www.sonycsl.co.jp/person/kjc/programs.html">ALTQ</link> foi integrado ao FreeBSD como parte do <citerefentry><refentrytitle>pf</refentrytitle><manvolnum>4</manvolnum></citerefentry>. O Bandwidth Manager das <link xlink:href="http://www.etinc.com/"> Tecnologias Emergentes </link> é um produto comercial.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="ip-multicast"> - <para>Como habilitar o suporte a IP multicast?</para> + <question xml:id="bpf-not-configured"> + <para>Por que estou recebendo o erro <errorname>/dev/bpf0: device not configured</errorname>?</para> </question> <answer> - <para>Desde o FreeBSD 2.0 que operações - Multicast são completamente suportadas por - padrão. Se a itenção é fazer - o sistema FreeBSD atuar como um roteador multicast, - será necessário que o - <foreignphrase>kernel</foreignphrase> do sistema seja - recompilado com a opção - <literal>MROUTING</literal> e que o &man.mrouted.8; seja - executado. O FreeBSD, à partir da versão - 2.2, pode iniciar o &man.mrouted.8; durante o processo de - inicialização se a variável - <literal>mrouted_enable</literal> estiver configurada com - o parâmetro <literal>"YES"</literal> no arquivo - <filename>/etc/rc.conf</filename>.</para> + <para>O aplicativo em execução requer o Packet Filter da Berkeley (<citerefentry><refentrytitle>bpf</refentrytitle><manvolnum>4</manvolnum></citerefentry>), mas ele foi removido de um kernel personalizado. Adicione isto ao arquivo de configuração do kernel e construa um novo kernel:</para> - <para>As ferramentas MBONE estão disponíveis - em sua própria categoria na coleção - de <literal>ports</literal>, <link xlink:href="http://www.FreeBSD.org/ports/mbone.html">mbone</link>. - Se você está procurando as ferramentas de - conferência <command>vic</command> e - <command>vat</command>, procure neste - diretório!</para> + <programlisting>device bpf # Berkeley Packet Filter</programlisting> </answer> </qandaentry> <qandaentry> - <question xml:id="dec-pci-chipset"> - <para>Quais interfaces de rede são baseadas no - chipset DEC PCI?</para> + <question xml:id="mount-smb-share"> + <para>Como faço para montar um disco de uma máquina <trademark class="registered">Windows</trademark> que esteja na minha rede, tal como o smbmount no <trademark class="registered">Linux</trademark>?</para> </question> <answer> - <para>Esta é uma lista compilada por Glen Foster - <email>gfoster@driver.nsta.org</email>, com algumas - adições recentes:</para> - - <table> - <title>Interfaces de rede baseadas no chipset DEC - PCI</title> - <tgroup cols="2"> - <thead> - <row> - <entry>Vendedor</entry> - - <entry>Modelo</entry> - </row> - </thead> - - <tbody> - <row> - <entry>ASUS</entry> - - <entry>PCI-L101-TB</entry> - </row> - - <row> - <entry>Accton</entry> - - <entry>ENI1203</entry> - </row> - - <row> - <entry>Cogent</entry> - - <entry>EM960PCI</entry> - </row> - - <row> - <entry>Compex</entry> - - <entry>ENET32-PCI</entry> - </row> - - <row> - <entry>D-Link</entry> - - <entry>DE-530</entry> - </row> - - <row> - <entry>Dayna</entry> - - <entry>DP1203, DP2100</entry> - </row> - - <row> - <entry>DEC</entry> - - <entry>DE435, DE450</entry> - </row> - - <row> - <entry>Danpex</entry> - - <entry>EN-9400P3</entry> - </row> - - <row> - <entry>JCIS</entry> - - <entry>Condor JC1260</entry> - </row> - - <row> - <entry>Linksys</entry> - - <entry>EtherPCI</entry> - </row> - - <row> - <entry>Mylex</entry> - - <entry>LNP101</entry> - </row> - - <row> - <entry>SMC</entry> - - <entry>EtherPower 10/100 (Model 9332)</entry> - </row> - - <row> - <entry>SMC</entry> - - <entry>EtherPower (Model 8432)</entry> - </row> - - <row> - <entry>TopWare</entry> - - <entry>TE-3500P</entry> - </row> - - <row> - <entry>Znyx (2.2.x)</entry> - - <entry>ZX312, ZX314, ZX342, ZX345, ZX346, - ZX348</entry> - </row> - - <row> - <entry>Znyx (3.x)</entry> - - <entry>ZX345Q, ZX346Q, ZX348Q, ZX412Q, ZX414, ZX442, - ZX444, ZX474, ZX478, ZX212, ZX214 - (10mbps/hd)</entry> - </row> - </tbody> - </tgroup> - </table> + <para>Use o conjunto de ferramentas <application>SMBFS</application>. Ele inclui um conjunto de modificações do kernel e um conjunto de programas da área de usuário. Os programas e as informações necessárias estão disponÃveis como <citerefentry><refentrytitle>mount_smbfs</refentrytitle><manvolnum>8</manvolnum></citerefentry> no sistema base.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="fqdn-hosts"> - <para>Por que preciso utilizar um FQDN (Nomes de - domínio completamente qualificados) pras - estações da minha rede?</para> + <question xml:id="icmp-response-bw-limit"> + <para>O que são essas mensagens sobre: ​​<errorname>Limiting icmp/open port/closed port response</errorname> em meus arquivos de log?</para> </question> <answer> - <para>Provavelmente você vai estar trabalhando com - estações em domínios diferentes. Por - exemplo, se você esta em foo.bar.edu e deseja - alcançar uma estação chamada - <systemitem>mumble</systemitem> no domínio <systemitem class="fqdomainname">foo.bar.edu</systemitem>, deverá - referir-se à essa esse host através do seu - nome de domínio qualificado, <systemitem class="fqdomainname">mumble.foo.bar.edu</systemitem>, ao invés - de apenas <systemitem>mumble</systemitem>.</para> + <para>Esta mensagem do kernel indica que alguma atividade está provocando o envio de uma grande quantidade de respostas de reset de ICMP ou TCP (RST). As respostas ICMP são frequentemente geradas como resultado de tentativas de conexão a portas UDP não utilizadas. Os resets TCP são geradas como resultado de tentativas de conexão a portas TCP não abertas. Entre outros, esses são os tipos de atividades que podem causar essas mensagens:</para> - <para>Normalmente era possível alcançar a - estação apenas por seu nome. Essa - função era realizada pelos resolvedores BIND - do ISC. Contudo, as versões atuais do - <application>BIND</application> (veja o &man.named.8;) que - acompanham o FreeBSD não oferecem mais - abreviações padrão para - domínios que não sejam FQDN, com a - única exceção do domínio que - sua própria estação faz parte. Dessa - forma, o host <systemitem>mumble</systemitem>, se não for - localizado como <systemitem class="fqdomainname">mumble.foo.bar.edu</systemitem>, será - localizado através de uma busca direta à - partir da raiz dos servidores de - resolução.</para> + <itemizedlist> + <listitem> + <para>Ataques de negação de serviço (DoS) de força bruta (em oposição a ataques de pacote único que exploram uma vulnerabilidade especÃfica).</para> + </listitem> - <para>Este comportamento é diferente do verificado - anteriormente onde a pesquisa continuaria através - de <systemitem class="fqdomainname">mumble.bar.edu</systemitem> e - <systemitem class="fqdomainname">mumble.edu</systemitem>. Consulte a - RFC 1535 para descobrir porque isso é considerado - uma prática ruím, e até mesmo uma - brecha de segurança.</para> + <listitem> + <para>Varreduras de porta que tentam se conectar a um grande número de portas (em oposição a apenas tentar algumas portas conhecidas).</para> + </listitem> + </itemizedlist> - <para>Uma alternativa é adicionar a linha - abaixo:</para> + <para>O primeiro número na mensagem indica quantos pacotes o kernel teria enviado se o limite não estivesse no lugar e o segundo indica o limite. Este limite é controlado usando <varname>net.inet.icmp.icmplim</varname>. Este exemplo define o limite para <literal>300</literal> pacotes por segundo:</para> - <programlisting>search foo.bar.edu bar.edu</programlisting> + <screen><prompt>#</prompt> <userinput>sysctl net.inet.icmp.icmplim=300</userinput></screen> - <para>ao invés da linha previamente existente</para> + <para>Para desativar essas mensagens sem desativar a limitação de resposta, use o <varname>net.inet.icmp.icmplim_output</varname> para desativar a saÃda:</para> - <programlisting>domain foo.bar.edu</programlisting> + <screen><prompt>#</prompt> <userinput>sysctl net.inet.icmp.icmplim_output=0</userinput></screen> - <para>em seu arquivo <filename>/etc/resolv.conf</filename> - (consulte &man.resolv.conf.5;). Contudo verifique se a - ordem de pesquisa não vai além da fronteira - entre a administração pública e a - local, conforme definido na RFC 1535.</para> + <para>Finalmente, para desabilitar completamente a limitação de resposta, configure <varname>net.inet.icmp.icmplim</varname> para <literal>0</literal>. Desabilitar a limitação de resposta é desencorajado pelos motivos listados acima.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="network-permission-denied"> - <para>Por que obtenho o erro, <errorname>Permission - denied</errorname>, para todas as - operações de rede?</para> + <question xml:id="unknown-hw-addr-format"> + <para>O que são essas mensagens de erro <errorname>arp: unknown hardware address format</errorname>?</para> </question> <answer> - <para>Se o <foreignphrase>kernel</foreignphrase> do seu - FreeBSD foi compilado com a opção - <literal>IPFIREWALL</literal>, você deve compreender - que a política padrão, à partir da - versão 2.1.7 (atualmente alterada durante o - desenvolvimento da versão 2.1-STABLE) é - negar todos os pacotes que não forem explicitamente - permitidos.</para> - - <para>A seu firewall foi erroneamente configurado, de forma - não intencional, a operacionalidade do sistema pode - ser restaurada, simplesmente digitando o seguinte - (conectado como <systemitem class="username">root</systemitem>):</para> - - <screen>&prompt.root; <userinput>ipfw add 65534 allow all from any to any</userinput></screen> - - <para>A variável - <literal>firewall_type="open"</literal> também pode - ser definida, no arquivo - <filename>/etc/rc.conf</filename>.</para> - - <para>Para maiores informações sobre a - configuração de firewall, por gentileza, - consulte a seção correspondente no <link xlink:href="../handbook/firewalls.html">&a.ptbr.p.handbook;</link>.</para> + <para>Isso significa que algum dispositivo na Ethernet local está usando um endereço MAC em um formato que o FreeBSD não reconhece. Isso provavelmente é causado por alguém que está experimentando uma placa Ethernet em algum outro lugar da rede. Isso é mais comumente visto em redes de modem a cabo. É inofensivo e não deve afetar o desempenho do sistema FreeBSD.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="ipfw-overhead"> - <para>Qual o acréscimo de sobrecarga ocasionado pelo - IPFW?</para> + <question xml:id="arp-wrong-iface"> + <para>Por que eu continuo vendo mensagens como: <errorname>192.168.0.10 is on fxp1 but got reply from 00:15:17:67:cf:82 on rl0</errorname>, e como desabilitá-lo?</para> </question> <answer> - <para>Por gentileza, refira-se ao capítulo sobre - <link xlink:href="../handbook/firewalls.html">Firewalls</link> - do &a.ptbr.p.handbook; mais específicamente, a - seção sobre <link xlink:href="../handbook/firewalls.html#IPFW-OVERHEAD">Overhead - & Otimização do IPFW</link>.</para> + <para>Porque um pacote está vindo de fora da rede inesperadamente. Para desativá-los, defina <varname>net.link.ether.inet.log_arp_wrong_iface</varname> como <literal>0</literal>.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="ipfw-fwd"> - <para>Minha regra de fwd do IPFW, que deveria redirecionar - um serviço para outra estação, - não está funcionando. Por que?</para> + <question xml:id="ipv6-only"> + <para>Como faço para compilar um kernel com suporte somente ao IPv6?</para> </question> <answer> - <para>Provavelmente porque a verdadeira - intenção é traduzir os pacotes que - chegam na sua estação, e rescrevê-los - para renviar para a outra máquina, e não - simplesmente redirecionar o pacote. Normalmente o ideal - é fazer NAT (tradução de - endereços de rede). Uma regra de reenvio de - pacotes, faz exatamente o que ela deve fazer: reenviar - pacotes. As regras não alteram (rescrevem) o - conteúdo ou cabeçalhos dos dados presentes - no pacote. Por exemplo, digamos que a questão seja - a seguinte regra:</para> - - <screen>01000 fwd <replaceable>10.0.0.1</replaceable> from any to <replaceable>foo 21</replaceable></screen> - - <para>Quando um pacote destinado à - estação <replaceable>foo</replaceable> - chegar no FreeBSD que filtra essa regra, ele será - encaminhado para a máquina cujo endereço IP - é <replaceable>10.0.0.1</replaceable>, mas o - endereço de destino original do pacote será - mantido, ou seja, os pacotes chegando em - <replaceable>10.0.0.1</replaceable> ainda terão a - estação <replaceable>foo</replaceable> como - destino final, marcado em seu cabeçalho TCP. O - endereço de destino não é alterado - (reescrito) para a máquina - <replaceable>10.0.0.1</replaceable>, o que propicia um - comportamento de verificação de checksum do - cabeçalho IP. O comportamento normal é que - a máquina <replaceable>10.0.0.1</replaceable> - descarte o pacote, já que o endereço de - destino do mesmo não é o endereço da - estação em questão. Esse - comportamento costuma confundir alguns usuários - menos experientes, não correspondendo a - ação com suas expectativas. Essa é - uma característica do IPFW, e não um - problema.</para> - - <para>Consulte o <literal>FAQ</literal> sobre <link linkend="service-redirect">Redirecionamento de - Serviços</link>, a página de manual do - &man.natd.8;, ou uma das diversas ferramentas de - redirecionamento disponíveis na - Coleção de <literal>Ports</literal>, para - verificar a forma correta de obter o comportamento - desejado.</para> + <para>Configure seu kernel com estas configurações: <screen>include GENERIC +ident GENERIC-IPV6ONLY +makeoptions MKMODULESENV+="WITHOUT_INET_SUPPORT=" +nooptions INET +nodevice gre</screen></para> </answer> </qandaentry> + </qandaset> + </chapter> + + <chapter xml:id="security"> + <title>Segurança</title> + <qandaset> <qandaentry> - <question xml:id="service-redirect"> - <para>Como redirecionar requisições de - serviço de uma máquina para outra?</para> + <question xml:id="sandbox"> + <para>O que é uma caixa de areia (sandbox)?</para> </question> - <answer> - <para>Serviços como FTP (e outros) podem ser - redirecionados com o pacote <literal>socket</literal>, - disponível na árvore de - Coleção do <literal>Ports</literal>, sob a - categoria <quote>sysutils</quote>. Simplesmente substitua - a linha de comando do serviço a ser redirecionado - para executar a ferramenta <literal>socket</literal>, como - no exemplo abaixo:</para> + <para><quote>Sandbox</quote> é um termo de segurança. Isso pode significar duas coisas:</para> - <programlisting>ftp stream tcp nowait nobody /usr/local/bin/socket socket <replaceable>ftp.example.com</replaceable> <replaceable>ftp</replaceable></programlisting> + <itemizedlist> + <listitem> + <para>Um processo que é colocado dentro de um conjunto de paredes virtuais que são projetadas para impedir que alguém que interrompa o processo seja capaz de invadir o sistema mais amplo.</para> - <para>Onde ftp.foo.com e ftp são a máquina - (host) e a porta de conexão que será - utilizada para o redirecionamento, respectivamente.</para> - </answer> - </qandaentry> + <para>O processo só é capaz de correr dentro das barreiras. Desde que nada que o processo faça em relação à execução de código seja capaz de violar as barreiras, uma auditoria detalhada de seu código não é necessária para poder dizer certas coisas sobre sua segurança.</para> - <qandaentry> - <question xml:id="bandwidth-mgr-tool"> - <para>Onde obtenho uma ferramenta de gerenciamento de - banda?</para> - </question> + <para>As barreiras podem ser um ID do usuário, por exemplo. Esta é a definição usada nas páginas de manual de <citerefentry><refentrytitle>security</refentrytitle><manvolnum>7</manvolnum></citerefentry> e <citerefentry> <refentrytitle>named</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para> - <answer> - <para>Existem três ferramentas de gerenciamento de - banda disponíveis para o FreeBSD. O - &man.dummynet.4;, integrada ao FreeBSD (ou mais - especificamente ao &man.ipfw.4;);, o <link xlink:href="http://www.csl.sony.co.jp/person/kjc/programs.html">ALTQ</link>, - disponível gratuitamente, e o <link xlink:href="http://www.etinc.com/">Bandwidth Manager da - Emerging Technologies</link>, um produto - comercial.</para> - </answer> - </qandaentry> + <para>Veja o serviço <literal>ntalk</literal>, por exemplo (veja <citerefentry><refentrytitle>inetd</refentrytitle><manvolnum>8</manvolnum></citerefentry>). Este serviço costumava rodar como ID de usuário <systemitem class="username">root</systemitem>. Agora ele é executado como ID do usuário <systemitem class="username">tty</systemitem>. O usuário <systemitem class="username">tty</systemitem> é um sandbox projetado para tornar mais difÃcil para alguém que invadiu o sistema com sucesso através do <literal>ntalk</literal> ser capaz de hackear além do seu ID de usuário.</para> + </listitem> - <qandaentry> - <question xml:id="bpf-not-configured"> - <para>O que causa o erro <errorname>/dev/bpf0: device not - configured</errorname>?</para> - </question> + <listitem> + <para>Um processo que é colocado dentro de uma simulação da máquina. Isso significa que alguém que é capaz de entrar no processo pode acreditar que ele pode invadir a máquina mais ampla, mas está, na verdade, apenas invadindo uma simulação dessa máquina e não modificando nenhum dado real.</para> - <answer> - <para>Você está tentando usar um programa que - precisa do Berkeley Packet Filter (veja a página de - manual do &man.bpf.4; para obter maiores - informações), mas ele não está - compilado no <foreignphrase>kernel</foreignphrase>. - Adicione a seguinte linha no arquivo de - configuração do seu - <foreignphrase>kernel</foreignphrase> e - recompile-o:</para> + <para>A maneira mais comum de fazer isso é construir um ambiente simulado em um subdiretório e então executar os processos nesse diretório chrooted para que o diretório <filename> / </filename> para esse processo seja este, não o diretório <filename>/</filename> real do sistema).</para> + + <para>Outro uso comum é montar um sistema de arquivos subjacente somente leitura e, em seguida, criar uma camada do sistema de arquivos sobre ele, o que dá a um processo uma visualização aparentemente gravável nesse sistema de arquivos. O processo pode acreditar que é capaz de escrever nesses arquivos, mas o processo apenas vê os efeitos - outros processos no sistema não, necessariamente.</para> - <programlisting>pseudo-device bpf # Berkeley Packet Filter</programlisting> + <para>Foi feita uma tentativa de tornar esse tipo de sandbox tão transparente que o usuário (ou hacker) não percebe que está dentro dele.</para> + </listitem> + </itemizedlist> - <para>Depois que reiniciar o sistema com o novo - <foreignphrase>kernel</foreignphrase>, basta criar a - interface do dispositivo, o que pode ser feito ao executar - o seguinte comando, no diretório - <filename>/dev</filename>:</para> + <para>O <trademark class="registered">UNIX</trademark> implementa dois sandboxes principais. Um está no nÃvel do processo e o outro está no nÃvel do usuário.</para> - <screen>&prompt.root; <userinput>sh MAKEDEV bpf0</userinput></screen> + <para>Todo processo <trademark class="registered">UNIX</trademark> é completamente protegido contra qualquer outro processo <trademark class="registered">UNIX</trademark>. Um processo não pode modificar o espaço de endereço de outro.</para> - <para>Por gentileza, refira-se à seção - sobre <link xlink:href="../handbook/kernelconfig-nodes.html">Criação - de interface de Dispositivos</link> do - &a.ptbr.p.handbook;, para obter mais - informações sobre o assunto.</para> + <para>Um processo <trademark class="registered">UNIX</trademark> é de propriedade de um determinado ID de usuário. Se o ID de usuário não for o usuário <systemitem class="username">root</systemitem>, ele servirá para proteger o processo contra processos pertencentes a outros usuários. O ID do usuário também é usado para proteger os dados no disco.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="mount-smb-share"> - <para>Como montar o disco de uma estação - Windows na minha rede, de forma semelhante ao smbmount em - sistemas Linux?</para> + <question xml:id="securelevel"> + <para>O que é securelevel?</para> </question> <answer> - <para>Use o conjunto de ferramentas - <application>SMBFS</application>. Se trata de um conjunto - de modificações no - <foreignphrase>kernel</foreignphrase>, e uma série - de aplicações específicas. O - programa e outras informações podem ser - obtidos na Coleção de - <literal>Ports</literal> do FreeBSD, em <package>net/smbfs</package>, ou no sistema base - do FreeBSD a partir da versão 4.5-RELEASE.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="icmp-response-bw-limit"> - <para>O que são as mensagens sobre - <quote>icmp-response bandwidth limit 300/200 pps</quote> - em meus registros de logs?</para> - </question> - - <answer> - <para>É o resultado de seu - <foreignphrase>kernel</foreignphrase> informando-o que - alguma atividade esta provocando o envio de um - número de respostas ICMP ou TCP reset (RST) - superior ao número que o - <foreignphrase>kernel</foreignphrase> julga adequado. - Respostas ICMP são, geralmente, comportamento - ocasionado pela tentativa de conexão em portas UDP - não utilizadas. As respostas TCP reset são - o resultado gerado pelas tentativas de conexão em - portas TCP não poníveis. Entre outras - causas, algumas das atividades que podem ocasionar esse - tipo de mensage, são:</para> + <para><literal>securelevel</literal> é um mecanismo de segurança implementado no kernel. Quando o nÃvel de segurança é positivo, o kernel restringe certas tarefas; nem mesmo o superusuário (<systemitem class="username">root</systemitem>) pode executá-los. O mecanismo de securelevel limita a capacidade de:</para> <itemizedlist> <listitem> - <para>Ataques de negação de serviço - (DoS) por força bruta (em - oposição a ataques baseados em um - único pacote que visa explorar uma - vulnerabilidade específica).</para> + <para>Desativar determinados flags de arquivo, tais como <literal>schg</literal> (o flag de sistema imutável).</para> + </listitem> + + <listitem> + <para>Escrever na memória do kernel através de <filename>/dev/mem</filename> e <filename>/dev/kmem</filename>.</para> + </listitem> + + <listitem> + <para>Carregar módulos do kernel.</para> </listitem> <listitem> - <para>Varreduras de porta (<foreignphrase>port - scans</foreignphrase>) que visam rastrear um elevado - número de portas (em oposição a - ataques que tentam varrer apenas um pequeno - número de portas conhecidas).</para> + <para>Alterar as regras do firewall.</para> </listitem> </itemizedlist> - <para>O primeiro número (valor) na mensagem indica - quantos pacotes foram enviados pelo - <foreignphrase>kernel</foreignphrase> antes do limite - passar a vigorar e o segundo valor indica o limite - estabelecido no <foreignphrase>kernel</foreignphrase>. - Você pode controlar este limite através da - variável <varname>net.inet.icmp.icmplim</varname> - do sysctl com instruções como esta abaixo, - onde estabelecemos um limite de 300 pacotes por - segundo:</para> + <para>Para verificar o status do securelevel em um sistema em execução:</para> + + <screen><prompt>#</prompt> <userinput>sysctl -n kern.securelevel</userinput></screen> + + <para>A saÃda contém o valor atual do nÃvel de segurança. Se for maior que 0, pelo menos algumas das proteções do securelevel são ativadas.</para> + + <para>O securelevel de um sistema em execução não pode ser reduzido, pois isso invalidaria seu propósito. Se uma tarefa exigir que o securelevel seja não-positivo, altere as variáveis ​​<varname>kern_securelevel</varname> e <varname>kern_securelevel_enable</varname> em <filename>/etc/rc.conf</filename> e reinicialize.</para> - <screen>&prompt.root; <userinput>sysctl -w net.inet.icmp.icmplim=300</userinput></screen> + <para>Para obter mais informações sobre o securelevel e as coisas especÃficas que todos os nÃveis fazem, consulte <citerefentry><refentrytitle>init</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para> - <para>Se a intenção é não - registrar essas mensagens nos arquivos de registros, mas - ainda assim manter a capacidade do - <foreignphrase>kernel</foreignphrase> limitar as - respostas, a variável - <varname>net.inet.icmp.icmplim_output</varname> do sysctl - pode ser usada para desabilitar o registro:</para> + <warning> + <para>O securelevel não é uma bala de prata; tem muitas deficiências conhecidas. Mais frequentemente do que não, fornece uma falsa sensação de segurança.</para> - <screen>&prompt.root; <userinput>sysctl -w net.inet.icmp.icmplim_output=0</userinput></screen> + <para>Um dos seus maiores problemas é que, para que seja eficaz, todos os arquivos usados ​​no processo de inicialização até que o nÃvel de segurança seja definido devem ser protegidos. Se um invasor puder fazer o sistema executar seu código antes do nÃvel de segurança que está sendo definido (o que acontece muito tarde no processo de inicialização, pois algumas coisas que o sistema deve fazer na inicialização não podem ser feitas em um nÃvel elevado), suas proteções são invalidadas . Embora essa tarefa de proteger todos os arquivos usados ​​no processo de inicialização não seja tecnicamente impossÃvel, se for obtida, a manutenção do sistema se tornará um pesadelo, já que seria necessário desativar o sistema, pelo menos no modo de usuário único, para modificar um arquivo de configuração.</para> - <para>Finalmente se a inteção é - desabilitar esse comportamento por completo, basta definir - a variável <varname>net.inet.icmp.icmplim</varname> - do sysctl (conforme o exemplo acima) como 0. Desabilitar - o recurso de limite de resposta é desencorajado - pelas razões acima expostas.</para> + <para>Este ponto e outros são frequentemente discutidos nas listas de discussão, particularmente na <link xlink:href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-security">lista de discussão de segurança do FreeBSD</link>. Pesquise nos arquivos <link xlink:href="@@URL_RELPREFIX@@/search/index.html">aqui</link> para uma discussão extensa. Um mecanismo mais refinado é o preferido.</para> + </warning> </answer> </qandaentry> <qandaentry> - <question xml:id="unknown-hw-addr-format"> - <para>Do que se trata estas mensagens de erro - <errorname>arp: unknown hardware address - format</errorname>?</para> - </question> - - <answer> - <para>Significa que alguma interface de rede no mesmo - barramento Ethernet que você, está usando um - endereço de MAC cujo formato não é - reconhecido pelo FreeBSD. Provavelmente isso deve estar - sendo causado por algum outro usuário, fazendo - experiências com placas Ethernet em algum lugar na - sua mesma rede. Em redes com Cable Modens esse - comportamento é ainda mais comum; não - é prejudicial e não atrapalha a performance - do seu FreeBSD.</para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="cvsup-missing-libs"> - <para>Acabei de instalar o CVSup, mas ao tentar usá-lo, - aparecem erros. O que está havendo?</para> - </question> - - <answer> - <para>Primeiro, verifique se as mensagens de erro em - questão são como essas:</para> - - <programlisting>/usr/libexec/ld-elf.so.1: Shared object "libXaw.so.6" not found</programlisting> - - <para>Esse tipo de erro se deve à - instalação do <literal>port</literal> - <package>net/cvsup</package> em - estações sem o XFree86. Se a - inteção é usar a interface - gráfica oferecida pelo - <application>CVSup</application>, então instale o - <application>XFree86</application> imediatamente. Do - contrário, se a intenção é - usar o <application>CVSup</application> apenas por linha - de comando, basta desinstalar a aplicação - anterior e instalar o <literal>port</literal> <package>net/cvsup-without-gui</package>. A - seção sobre <link xlink:href="http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/cvsup.html">CVSup</link> - do &a.ptbr.p.handbook; cobre essas questões de - forma mais detalhada.</para> - </answer> - </qandaentry> - </qandaset> - </chapter> - - <chapter xml:id="security"> - <title>Segurança</title> - <qandaset> - <qandaentry> <question xml:id="extra-named-port"> - <para>O BIND (<command>named</command>) está - escutando na porta 53 e em outras portas elevadas. O que - está havendo?</para> + <para>O <application>BIND9</application> (<command>named</command>) está escutando em algumas portas de numeração alta. O que está acontecendo?</para> </question> <answer> - <para>O FreeBSD, a partir da versão 3.0, utiliza - portas não privilegiadas e elevadas, - aleatoriamente, para responder à - requisições de DNS. Se a - intenção é usar a porta 53 para - responder a estas requisições, para adequar - o comportamento do BIND à um - <foreignphrase>firewall</foreignphrase> ou apenas para - sentir-se melhor, experimente acrescentar a - instruçõo abaixo no arquivo - <filename>/etc/namedb/named.conf</filename>:</para> - - <programlisting>options { - query-source address * port 53; - };</programlisting> + <para>O BIND usa uma porta aleatória de numeração alta para consultas de saÃda. Versões recentes dele escolhem uma nova porta UDP aleatória para cada consulta. Isso pode causar problemas para algumas configurações de rede, especialmente se um firewall bloquear pacotes UDP de entrada em portas especÃficas. Para passar por esse firewall, tente as opções <literal>avoid-v4-udp-ports</literal> e <literal>avoid-v6-udp-ports</literal> para evitar a seleção de números de porta aleatórios dentro de um intervalo bloqueado.</para> - <para>O <literal>*</literal> deve ser substituído por - um endereço IP único, caso se deseje - restringir ainda mais este comportamento.</para> + <warning> + <para>Se um número de porta (como 53) for especificado através das opções <literal>query-source</literal> ou <literal>query-source-v6</literal> em <filename>/usr/local/etc/namedb/named .conf</filename>, a seleção de portas aleatórias não será usada. É altamente recomendável que essas opções não sejam usadas para especificar números de porta fixos.</para> + </warning> - <para>De qualquer forma, parabéns. É uma - pratica saudável verificar registros não - usuais no conteúdo de saída do - &man.sockstat.1; </para> + <para>Parabéns, a propósito. É uma boa prática ler a saÃda <citerefentry><refentrytitle>sockstat</refentrytitle><manvolnum>1</manvolnum></citerefentry> e observar coisas estranhas!</para> </answer> </qandaentry> <qandaentry> <question xml:id="sendmail-port-587"> - <para>O Sendmail está ouvindo na porta 587 - além da tradicional porta 25! O que está - havendo?</para> + <para>O daemon <application>Sendmail</application> está escutando na porta 587, assim como na porta padrão 25! O que está acontecendo?</para> </question> <answer> - <para>As versões mais novas do Sendmail tem suporte - à uma característica que se chama - <foreignphrase>Mail Submission</foreignphrase>, que ouve - na porta 587. Esse serviço não é - completamente suportado ainda, mas sua popularidade vem - crescendo.</para> + <para>Versões recentes do <application>Sendmail</application> suportam um recurso de envio de mensagens que é executado pela porta 587. Isso ainda não é amplamente suportado, mas está crescendo em popularidade.</para> </answer> </qandaentry> <qandaentry> <question xml:id="toor-account"> - <para>O que é a conta do usuário - <systemitem class="username">toor</systemitem> que tem UID 0? Meu sistema foi - comprometido?</para> - </question> - - <answer> - <para>Não se preocupe. O usuário - <systemitem class="username">toor</systemitem> é uma conta - <quote>alternativa</quote> com poderes de super - usuário (toor é root escrito ao - contrário). Normalmente esse usuário era - criado quando o interpretador de comandos &man.bash.1; era - instalado, mas agora o usuário existe por - padrão no sistema. A intenção - é que o usuário seja usado com um - interpretador de comandos fora do padrão, de forma - que o ambiente de linha de comando do usuário - <systemitem class="username">root</systemitem> não tenha que ser - alterada. Essa é uma situação - importante quando nos referimos à interpretadores - de comandos que não fazem parte da base do sistema - operacional (por exemplo, que foram instaladas do - <literal>Ports</literal> ou como pacotes, já que - normalmente, elas são instaladas sob o - <filename>/usr/local/bin</filename> que por padrão - está em um sistema de arquivos diferente da raiz do - sistema. Em uma situação onde o - interpretador de comandos do usuário estiver sob - <filename>/usr/local/bin</filename> ou sob - <filename>/usr</filename> (ou onde quer que seja) e esse - sistema de arquivos não puder ser montado por - alguma razão, o usuário - <systemitem class="username">root</systemitem> estará impossibilitado de - se logar no sistema para corrigir o problema (contudo, ao - entrar em modo mono tarefa, o sistema pede o caminho - completo para algum interpretador de comandos. - </para> - - <para>Alguns administradores costumam usar o - <systemitem class="username">toor</systemitem> para tarefas do dia-a-dia, com - um interpretador de comandos - (<foreignphrase>shell</foreignphrase>) não comum, e - deixando o <systemitem class="username">root</systemitem> com seu interpretador - de comandos (<foreignphrase>shell</foreignphrase>) - padrão para realizar tarefas de emergência ou - de modo mono usuário. Por padrão, o - usuário <systemitem class="username">toor</systemitem> não pode - ser usado, já que ele não tem uma senha - definida. Para habilitar a conta, logue-se como - <systemitem class="username">root</systemitem> no sistema e defina uma senha - para o <systemitem class="username">toor</systemitem>. - </para> - </answer> - </qandaentry> - - <qandaentry> - <question xml:id="suidperl"> - <para>Por que o <command>suidperl</command> não - está funcionando corretamente?</para> - </question> - - <answer> - <para>Por motivos de segurança, a - instalação padrão do - <command>suidperl</command> não tem o bit suid - definido. Os administradores de sistemas podem reaver o - comportamento esperado com o seguinte comando:</para> - - <screen>&prompt.root; <userinput>chmod u+s /usr/bin/suidperl</userinput></screen> - - <para>Se a intenção é que o - <command>suidperl</command> seja compilado com suid - durante as atualizações do sistema, edite o - <filename>/etc/make.conf</filename> e adicione a linha - <varname>ENABLE_SUIDPERL=true</varname> no arquivo, antes - de começar um <command>make - buildworld</command>.</para> + <para>O que é essa conta UID 0 <systemitem class="username">toor</systemitem>? Eu fui comprometido?</para> + </question> + + <answer> + <para>Não se preocupe. <systemitem class="username">toor</systemitem> é uma conta de superusuário <quote>alternativa</quote>, onde toor é root soletrada para ao contrário. Ele deve ser usado com um shell não padrão, portanto, o shell padrão para <systemitem class="username">root</systemitem> não precisa ser alterado. Isto é importante porque os shells que não fazem parte da distribuição base, mas que são instalados a partir de ports ou packages, são instalados em <filename>/usr/local/bin</filename> que, por padrão, reside em um sistema de arquivos diferente . Se o shell do <systemitem class="username">root</systemitem> estiver localizado em <filename>/usr/local/bin</filename> e o sistema de arquivos contendo <filename>/usr/local/bin</filename>) não está montado, <systemitem class="username">root</systemitem> não poderá efetuar login para corrigir um problema e terá que reinicializar no modo de usuário único para inserir o caminho para um shell.</para> + + <para>Algumas pessoas usam <systemitem class="username">toor</systemitem> para tarefas do dia-a-dia do <systemitem class="username">root</systemitem> com um shell não padrão, deixando o <systemitem class="username">root</systemitem>, com um shell padrão, para o modo de usuário único ou emergências. Por padrão, um usuário não pode logar usando <systemitem class="username">toor</systemitem> porque ele não tem uma senha, então efetue login como <systemitem class="username">root</systemitem> e defina um senha para <systemitem class="username">toor</systemitem> antes de usá-lo para efetuar login.</para> </answer> </qandaentry> </qandaset> @@ -11226,281 +3287,139 @@ Key F15 A A Menu Workplace Nop</programlisting> <qandaset> <qandaentry> <question xml:id="userppp"> - <para>Não consigo fazer meu &man.ppp.8; funcionar. O - que estou fazendo de errado?</para> + <para>Não consigo fazer o <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> funcionar. O que estou fazendo de errado?</para> </question> <answer> - <para>Deve-se primeiro ler a man page do &man.ppp.8; e <link xlink:href="../handbook/ppp-and-slip.html#USERPPP"> - seção PPP do &a.ptbr.p.handbook;</link>. - Habilite os logs com o comando</para> + <para>Primeiro, leia o <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> e o <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/ppp-and-slip.html#userppp">seção sobre PPP do Handbook</link>. Para ajudar na solução de problemas, ative os logs com o seguinte comando:</para> <programlisting>set log Phase Chat Connect Carrier lcp ipcp ccp command</programlisting> - <para>Este comando pode ser digitado no prompt do &man.ppp.8; - ou pode ser colocado no - <filename>/etc/ppp/ppp.conf</filename> (A - seção <literal>default</literal> no - início do arquivo é o melhor lugar para - colocar isso). Tenha certeza de que - seu<filename>/etc/syslog.conf</filename> (veja - &man.syslog.conf.5;) tenha as linhas</para> + <para>Este comando pode ser digitado no prompt de comando <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> ou pode ser inserido no inÃcio da seção <literal>default</literal> do arquivo <filename>/etc/ppp/ppp.conf</filename>. Certifique-se de que o arquivo <filename>/etc/syslog.conf</filename> contenha as linhas abaixo e de que o arquivo <filename>/var/log/ppp.log</filename> exista:</para> - <programlisting>!ppp *.*/var/log/ppp.log</programlisting> + <programlisting>!ppp +*.* /var/log/ppp.log</programlisting> - <para>e que o arquivo <filename>/var/log/ppp.log</filename> - exista. Agora pode-se ver o que está acontecendo - analisando seu arquivo de log. Não se preocupe se - isso não faz sentido mas se precisar de ajuda, esta - informação fará sentido a - eles.</para> - - <para>Se a sua versão do &man.ppp.8; não - suporta o comando set log ,deve-se fazer o download da - <link xlink:href="http://people.FreeBSD.org/~brian/"> - versão mais recente</link>. O FreeBSD 2.1.5 (e - posteriores) suporta a compilação do - código mais recente.</para> + <para>Muito sobre o que está acontecendo pode ser aprendido no arquivo de log. Não se preocupe se isso não faz sentido, pois pode fazer sentido para outra pessoa.</para> </answer> </qandaentry> <qandaentry> <question xml:id="ppp-hangs"> - <para>Por que o &man.ppp.8; fica pendurado quando eu o - inicializo?</para> + <para>Por que o <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> é interrompido quando eu o executo?</para> </question> <answer> - <para>Isso normalmente acontece porque seu hostname - não esta sendo resolvido. A melhor maneira de - corrigir isso é certificar-se de que o - <filename>/etc/hosts</filename> está sendo - consultado pelo resolvedor; editando primeiro o - <filename>/etc/host.conf</filename> e colocando - <literal>hosts</literal> na primeira linha. Para isso, - simplesmente adicione no <filename>/etc/hosts/</filename> - uma entrada para sua máquina local. Se não - tem nenhuma rede local, mude a linha do - <systemitem>localhost</systemitem>:</para> + <para>Geralmente, isso ocorre porque o nome do host não será resolvido. A melhor maneira de corrigir isso é certificar-se de que <filename>/etc/hosts</filename> seja lido primeiro, garantindo que a linha <literal>hosts</literal> seja listada primeiro em <filename>/etc/host.conf</filename>. Em seguida, insira uma entrada em <filename>/etc/hosts</filename> para a máquina local. Se não houver nenhuma rede local, altere a linha <systemitem>localhost</systemitem>:</para> <programlisting>127.0.0.1 foo.example.com foo localhost</programlisting> - <para>Senão, adicione uma outra entrada para seu - host. Consulte as man pages relevantes para maiores - detalhes.</para> + <para>Caso contrário, adicione outra entrada para o host. Consulte as páginas de manual relevantes para mais detalhes.</para> - <para>Ao terminar, deve ser possível dar um - <command>ping -c1 `nomedohost`</command> com sucesso. - </para> + <para>Quando terminar, verifique se este comando foi bem sucedido: <command> ping -c1 `hostname`</command>.</para> </answer> </qandaentry> <qandaentry> <question xml:id="ppp-nodial-auto"> - <para>Porque o &man.ppp.8; não disca em - modo<literal>-auto</literal> - </para> + <para>Por que o <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> não disca no modo <literal>-auto</literal>?</para> </question> <answer> - <para>Primeiro verifique se há uma rota - padrão. Ao executar um <command>netstat - -rn</command> (veja &man.netstat.1;), devem aparecer duas - entradas como essas:</para> + <para>Primeiro, verifique se existe uma rota padrão. Este comando deve exibir duas entradas:</para> <programlisting>Destination Gateway Flags Refs Use Netif Expire default 10.0.0.2 UGSc 0 0 tun0 10.0.0.2 10.0.0.1 UH 0 0 tun0</programlisting> - <para>Assume-se o uso do endereço recomendado pelo - &a.ptbr.p.handbook;, páginas de manual ou no - arquivo ppp.conf.sample. Se a rota padrão - não foi definida, é possível que a - versão do &man.ppp.8; seja antiga, uma vez que - não entendem a palavra <literal>HISADDR</literal> - no arquivo ppp.conf. Se a versão do seu FreeBSD - for anterior a 2.2.5, mude a linha</para> - - <programlisting>add 0 0 HISADDR</programlisting> - - <para>para</para> - - <programlisting>add 0 0 10.0.0.2</programlisting> + <para>Se uma rota padrão não estiver listada, certifique-se de que a linha <literal>HISADDR</literal> foi adicionada ao <filename>/etc/ppp/ppp.conf</filename>.</para> - <para>Outra razão para a rota padrão estar - ausente, pode ser porquê você equivocadamente - definiu uma rota default em seu arquivo - <filename>/etc/rc.conf</filename> (veja &man.rc.conf.5;) - (este arquivo era chamado - <filename>/etc/sysconfig</filename> nas versões - anteriores a 2.2.2) e omitiu a linha</para> + <para>Outro motivo para a falta da linha de rota padrão é que uma rota padrão foi adicionada ao <filename>/etc/rc.conf</filename> e esta linha está faltando no arquivo <filename>/etc/ppp/ppp.conf</filename>:</para> <programlisting>delete ALL</programlisting> - <para>no <filename>ppp.conf</filename>. Se este for o - problema, volte para <link xlink:href="../handbook/ppp-and-slip.html#USERPPP-FINAL"> - seção de configurações - Finais do &a.ptbr.p.handbook;.</link></para> + <para>Se esse for o caso, volte para seção <link xlink:href="@@URL_RELPREFIX@@/doc/en_US.ISO8859-1/books/handbook/userppp.html#userppp-final">Configuração final do sistema</link> no Handbook.</para> </answer> </qandaentry> <qandaentry> <question xml:id="no-route-to-host"> - <para>O que <errorname>No route to host</errorname> - significa?</para> + <para>O que o erro <errorname>No route to host</errorname> significa?</para> </question> <answer> - <para>Este erro é causado pela falta das linhas</para> + <para>Este erro geralmente ocorre porque a seguinte seção está faltando no arquivo <filename>/etc/ppp/ppp.linkup</filename>:</para> <programlisting>MYADDR: delete ALL add 0 0 HISADDR</programlisting> - <para>no seu arquivo - <filename>/etc/ppp/ppp.linkup</filename>. Isso somente - é necessário se você tem um IP - dinâmico ou não sabe o endereço do seu - gateway. Se você esta usando o modo interativo, - pode-se digitar o seguinte, depois de ter entrado no - <literal>modo packet</literal> (O modo packet é - indicado pelo <acronym>PPP</acronym> maiísculo no - prompt): - </para> + <para>Isso é necessário apenas para um endereço IP dinâmico ou quando o endereço do gateway padrão é desconhecido. Ao usar o modo interativo, o seguinte pode ser digitado depois de entrar no modo de pacote. O modo de pacote é indicado pelo <acronym>PPP</acronym> em letras maiúsculas no prompt:</para> <programlisting>delete ALL add 0 0 HISADDR</programlisting> - <para>Consulte a <link xlink:href="../handbook/ppp-and-slip.html#USERPPP-DYNAMICIP"> - seção PPP e Endereços IPs - dinâmicos</link> do &a.ptbr.p.handbook; para - maiores detalhes - </para> + <para>Consulte a seção <link xlink:href="@@URL_RELPREFIX@@/doc/pt_BR.ISO8859-1/books/handbook/userppp.html#userppp-dynamicip">Endereços IP dinâmicos e PPP</link> do manual para mais detalhes.</para> </answer> </qandaentry> <qandaentry> <question xml:id="connection-threeminutedrop"> - <para>Porque minha conexão cai depois de (em média) - 3 minutos?</para> + <para>Por que minha conexão cai depois de 3 minutos?</para> </question> <answer> - <para>O default timeout do PPP é de 3 minutos. Isso pode - ser ajustado com a linha</para> + <para>O tempo limite padrão do PPP é de 3 minutos. Isso pode ser ajustado com a seguinte linha:</para> <programlisting>set timeout <replaceable>NNN</replaceable></programlisting> - <para>Onde NNN é o número em - segundos de inatividade antes da conexão ser - fechada. Se <replaceable>NNN</replaceable> é zero a conexão - nunca será fechada devido a um timeout. É - possível colocar esse comando no - <filename>ppp.conf</filename> ou digitá-lo no modo - interativo. Também é - possível que isso seja ajustado enquanto sua - conexão esta ativa conectando - pelo socket do servidor <application>ppp</application> usando - &man.telnet.1; ou &man.pppctl.8;. Consulte a man - page do &man.ppp.8; para maiores detalhes. - </para> + <para>onde <replaceable>NNN</replaceable> é o número de segundos de inatividade antes que a conexão seja fechada. Se <replaceable>NNN</replaceable> for zero, a conexão nunca será fechada devido a um tempo limite. É possÃvel colocar este comando em <filename>ppp.conf</filename>, ou digitá-lo no prompt no modo interativo. Também é possÃvel ajustá-lo rapidamente enquanto a linha está ativa conectando-se ao socket de servidor do <application>ppp</application> usando <citerefentry><refentrytitle>telnet</refentrytitle><manvolnum>1</manvolnum></citerefentry> ou <citerefentry><refentrytitle>pppctl</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Consulte a página do manual <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> para obter mais detalhes.</para> </answer> </qandaentry> <qandaentry> <question xml:id="ppp-drop-heavy-load"> - <para>Por que minha conexão cai quando está - sobrecarregada?</para> + <para>Por que minha conexão cai sob carga pesada?</para> </question> <answer> - <para>Se você tem o relatório da qualidade da - ligação (opção LPR) - configurado é possível que muitos pacotes - LQR entre sua máquina e a origem estejam sendo - perdidos. O ppp deduz que sua linha deve ser ruim e - desconecta. Antes da versão 2.2.5 do FreeBSD, o - LQR era habilitado por default. Agora ele é - desabilitado por default. O LQR pode ser desabilitado com - a linha</para> + <para>Se o relatório de qualidade de link (<acronym>LQR</acronym>) estiver configurado, é possÃvel que muitos pacotes <acronym>LQR</acronym> sejam perdidos entre o sistema FreeBSD e o peer. <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> deduz que a linha deve ser ruim e desconectada. O <acronym>LQR</acronym> vem desativado por padrão e pode ser ativado com a seguinte linha:</para> - <programlisting>disable lqr</programlisting> + <programlisting>enable lqr</programlisting> </answer> </qandaentry> <qandaentry> <question xml:id="ppp-drop-random"> - <para>Por que minha conexão cai após um - período aleatório de tempo?</para> + <para>Por que minha conexão cai depois de um perÃodo de tempo aleatório?</para> </question> <answer> - <para>Às vezes, em uma linha telefônica com - ruídos, ou quando a linha tem espera de - ligações, seu modem pode desligar, pensando - (incorretamente) que perdeu o sinal de linha.</para> - - <para>Existem ajustes em grande parte dos modems - determinando o quão tolerante ele deve ser a - respeito de perdas de sinal de linha. No USR Sportster, - por exemplo, isso é medido pelo registrador S10 em - décimos de segundo. Para fazer com que seu modem - não caia, poderia-se adicionar a seguinte string - dial up para envio/espera:</para> + <para>Às vezes, em uma linha telefônica barulhenta ou mesmo em uma linha com a chamada em espera ativada, o modem pode desligar porque acha incorretamente que perdeu conexão com a operadora.</para> - <programlisting>set dial "...... ATS10=10OK......" - </programlisting> - - <para>Consulte o manual do seu modem para detalhes.</para> + <para>Há uma configuração na maioria dos modems para determinar quão tolerante deve ser a perda temporária de conexão com portadora. Consulte o manual do modem para detalhes.</para> </answer> </qandaentry> <qandaentry> <question xml:id="ppp-hangs-random"> - <para>Por que minha conexão fica pendurada depois de - um período aleatório de tempo?</para> - </question><answer> - - <para>Muitas pessoas experimentam conexões presas sem - aparentemente nenhuma explicação.</para> - - <para>Se você usa um modem externo, você - simplesmente pode tentar um &man.ping.8; para ver se a luz - <acronym>TD</acronym> fica piscando quando você - transmite dados. Se piscar (e a luz do - <acronym>RD</acronym> não), o problema é com - a extremidade remota. Se o <acronym>TD</acronym> - não piscar, o problema é local. Com um - modem interno você precisará usar o comando - <literal>set server</literal> no seu arquivo ppp.conf. - Quando ocorrer de cair, conecte com o &man.ppp.8; usando o - &man.pppctl.8;. Se a conexão de sua rede voltar de - repente (o ppp voltou devido a atividade no - diagnóstico do socket) ou se você não - consegue conectar (assumindo que o comando <literal>set - socket</literal> foi iniciado com sucesso) o problema - é local. Se você puder conectar e ainda as - coisas estiverem "penduradas" habilite os logs do async - local com o comando <literal>set log local async</literal> - e use o &man.ping.8; de outra janela ou terminal para - forçar a atividade da conexão. Os logs - async irão mostrar os dados que estão sendo - transmitidos e recebidos durante a ligação. - Se os dados estão indo e não estão - voltando, o problema é remoto.</para> - - <para>Tendo estabelecido que o problema é local ou - remoto, você tem agora duas possibilidades:</para> - - <itemizedlist> + <para>Por que minha conexão cai após um perÃodo aleatório de tempo?</para> + </question> + + <answer> + <para>Muitas pessoas experimentam conexões pendentes sem explicação aparente. A primeira coisa a estabelecer é de que lado do link está pendurado.</para> + + <para>Ao usar um modem externo, tente usar <citerefentry><refentrytitle>ping</refentrytitle><manvolnum>8</manvolnum></citerefentry> para ver se a luz de <acronym>TD</acronym> está piscando quando os dados são transmitidos . Se piscar, mas a luz de <acronym>RD</acronym> não, o problema é com a extremidade remota. Se <acronym>TD</acronym> não piscar, o problema é local. Com um modem interno, use o comando <literal>set server</literal> em <filename>ppp.conf</filename>. Quando o problema ocorrer, conecte-se ao <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> usando <citerefentry> <refentrytitle>pppctl</refentrytitle><manvolnum>8</manvolnum></citerefentry>. Se a conexão de rede reviver repentinamente devido à atividade no socket de diagnóstico ou se não se conectar, mas o comando <literal>set socket</literal> for bem-sucedido na inicialização, o problema é local. Se ele puder se conectar, mas as coisas ainda estiverem travadas, ative o log local com <literal>set log local async</literal> e use <citerefentry><refentrytitle>ping</refentrytitle><manvolnum>8</manvolnum></citerefentry> de outra janela ou terminal para fazer uso do link. O registro assÃncrono mostrará os dados sendo transmitidos e recebidos no link. Se os dados estão saindo e não voltando, o problema é remoto.</para> + + <para>Tendo estabelecido se o problema é local ou remoto, existem agora duas possibilidades:</para> + + <itemizedlist> <listitem> - <para>Se o problema é remoto, leia a - secção <xref linkend="ppp-remote-not-responding"/>.</para> + <para>Se o problema for remoto, leia a entrada <xref linkend="ppp-remote-not-responding"/>.</para> </listitem> <listitem> - <para>Se o problema for remoto, leia a - secção <xref linkend="ppp-hung"/>.</para> + <para>Se o problema é local, leia a entrada <xref linkend="ppp-hung"/>.</para> </listitem> </itemizedlist> </answer> @@ -11508,538 +3427,218 @@ add 0 0 HISADDR</programlisting> <qandaentry> <question xml:id="ppp-remote-not-responding"> - <para>A extremidade remota não está - respondendo. O que eu posso fazer?</para> + <para>A ponta remota não está respondendo. O que eu posso fazer?</para> </question> <answer> - <para>Há muito pouco que pode ser feito em - relação a isso. A maioria dos provedores - irão recusar ajuda-lo se você não usar - o Windows. Você pode habilitar a - <literal>lqr</literal> no seu arquivo - <filename>ppp.conf</filename>, permitindo ao &man.ppp.8; - detectar a falha remota e desligar-se, mas essa - detecção é relativamente lenta e - consequentemente inútil. Pode-se querer evitar - dizer ao seu provedor que você está rodando o - user-ppp....</para> + <para>Há muito pouco que pode ser feito sobre isso. Muitos ISPs recusam-se a ajudar usuários que não estejam executando um SO da <trademark class="registered">Microsoft</trademark>. Adicione <literal>enable lqr</literal> ao <filename>/etc/ppp/ppp.conf</filename>, permitindo <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> para detectar a falha remota e desligar. Essa detecção é relativamente lenta e, portanto, não é tão útil.</para> - <para>Primeiro tente desabilitar toda compressão - local adicionando o seguinte em sua - configuração:</para> + <para>Primeiro, tente desativar toda a compactação local adicionando o seguinte à configuração:</para> <programlisting>disable pred1 deflate deflate24 protocomp acfcomp shortseq vj deny pred1 deflate deflate24 protocomp acfcomp shortseq vj</programlisting> - <para>Então reconecte para assegurar de que isso - não fez diferença. Se as coisas melhoraram - ou se o problema foi resolvido completamente, determine - quais ajustes fizeram a diferença através de - tentativas e erros. Isto fornecerá uma boa cartada - quando você contactar seu provedor (embora possa - parecer que você não esteja rodando um - produto Microsoft).</para> + <para>Em seguida, reconecte para garantir que isso não faz diferença. Se as coisas melhorarem ou se o problema for resolvido completamente, determine qual configuração faz a diferença através de tentativa e erro. Esta é uma boa informação para o ISP, embora possa tornar aparente que não é um sistema <trademark class="registered">Microsoft</trademark>.</para> - <para>Antes de contactar seu provedor, habilite o log async - localmente e aguarde até que sua conexão - caia novamente. Isto pode usar um bocado de espaço - em disco. A última leitura de dados da porta pode - ser de seu interesse. São geramente dados em - ascii, e podem mesmo descrever o problema (<quote>Memory - fault, core dumped</quote>?).</para> + <para>Antes de entrar em contato com o ISP, ative o registro assÃncrono localmente e aguarde até que a conexão seja interrompida novamente. Isso pode usar um pouco de espaço em disco. Os últimos dados lidos da porta podem ser de interesse. Geralmente são dados ASCII e podem até descrever o problema (<errorname>Memory fault</errorname>, <errorname>Core dumped</errorname>).</para> - <para>Se seu provedor for prestativo, ele deve ser capaz de - habilitar o log da extremidade da conexão dele, - então quando a proxima queda de link ocorrer, eles - podem ser capazes de dizer porque o seu lado esta tendo - problemas. Sinta-se livre para enviar os detalhes para - &a.brian; ou peça para seu provedor - contactá-lo diretamente.</para> + <para>Se o ISP for útil, eles devem ser capazes de habilitar o log em sua finalização, então quando o próximo link falhar, eles poderão dizer por que seu lado está tendo um problema.</para> </answer> </qandaentry> <qandaentry> <question xml:id="ppp-hung"> - <para>O &man.ppp.8; está travado. O que eu posso - fazer?</para> + <para><citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> foi desativado. O que eu posso fazer?</para> </question> <answer> - <para>A melhor coisa a fazer aqui é recompilar o - &man.ppp.8; adicionando <literal>CFLAGS+=-g </literal>e - <literal>STRIP=</literal> no final do Makefile, depois - faça <command>make clean && make && - make install</command>. Quando o &man.ppp.8; ficar - travado, procure o id do processo com um <command>ps ajxww - | fgrep ppp</command> e execute <command>gdb ppp - </command>PID. No prompt do gdb você pode - então usar o <command>bt</command> para obter um - rastreamento da pilha.</para> + <para>Nesse caso, reconstrua o <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> com informações de depuração e, em seguida, use <citerefentry><refentrytitle>gdb</refentrytitle><manvolnum>1</manvolnum></citerefentry> para pegar um rastrear uma pilha do processo <application>ppp</application> que está travado. Para reconstruir o utilitário <application>ppp</application> com informações de depuração, digite:</para> + + <screen><prompt>#</prompt> <userinput>cd /usr/src/usr.sbin/ppp</userinput> +<prompt>#</prompt> <userinput>env DEBUG_FLAGS='-g' make clean</userinput> +<prompt>#</prompt> <userinput>env DEBUG_FLAGS='-g' make install</userinput></screen> + + <para>Em seguida, reinicie o <application>ppp</application> e espere até que ele seja interrompido novamente. Quando a compilação de depuração do <application>ppp</application> é interrompida, inicie o <application>gdb</application> no processo travado digitando:</para> - <para>Envie os resultados para: - <email>brian@Awfulhak.org</email>.</para> + <screen><prompt>#</prompt> <userinput>gdb ppp `pgrep ppp`</userinput></screen> + + <para>No prompt <application>gdb</application>, use os comandos <command> bt </command> ou <command> where </command> para obter um rastreamento de pilha. Salve a saÃda da sessão <application> gdb </application> e <quote> desconecte </quote> do processo em execução, digitando <command> quit </command>.</para> </answer> </qandaentry> <qandaentry> - <question xml:id="ppp-loginok-thennothing"> - <para>Por que não acontece nada depois da mensagem - <quote>Login OK!</quote>?</para> + <question xml:id="ppp-same-magic"> + <para>Eu continuo vendo erros sobre a magia sendo a mesma. O que isso significa?</para> </question> <answer> - <para>Antes da versão 2.2.5 do FreeBSD, uma vez que a - conexão foi estabelecida, o &man.ppp.8; espera que o - modem remoto inicie o protocolo do controle de linha - (LCP), Muitos provedores não iniciarão a - negociação e esperarção que o - cliente a faça. Para forçar o &man.ppp.8; - para iniciar o LCP, use a seguinte linha:</para> + <para>Ocasionalmente, logo após a conexão, pode haver mensagens no log que digam que <errorname>Magic é o mesmo</errorname>. Às vezes, essas mensagens são inofensivas e, à s vezes, um lado ou outro termina. A maioria das implementações do PPP não pode sobreviver a esse problema, e mesmo se o link aparecer, haverá solicitações de configuração repetidas e configuração de reconhecimentos no arquivo de log até que o <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> eventualmente desiste e fecha a conexão.</para> - <programlisting>set openmode active</programlisting> + <para>Isso normalmente acontece em máquinas servidor com discos lentos que estão gerando um <citerefentry><refentrytitle>getty</refentrytitle><manvolnum>8</manvolnum></citerefentry> na porta e executando <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> a partir de um script de login ou programa após o login. Houve relatos de que isso acontecia de forma consistente ao usar slirp. A razão é que no tempo entre <citerefentry><refentrytitle>getty</refentrytitle><manvolnum>8</manvolnum></citerefentry> terminar e o <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> iniciar, o cliente <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> inicia o envio de pacotes do protocolo de controle de linha (LCP). Como o ECHO ainda está ligado à porta do servidor, o cliente <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> vê esses pacotes sendo <quote> refletidos </quote> de volta.</para> - <note> - <para>Nota: isto geralmente não prejudica em nada - se a negociação for iniciada por ambos os - lados, assim, a opção openmode é - agora ativada por padrão. Entretanto, na - próxima seção será explicado - quando isso realmente <emphasis>proporciona</emphasis> - algum problema.</para> - </note> - </answer> - </qandaentry> + <para>Uma parte da negociação do LCP é estabelecer um número mágico para cada lado do link para que as <quote>reflexões</quote> possam ser detectadas. O protocolo diz que quando o parceiro tenta negociar o mesmo número mágico, um NAK deve ser enviado e um novo número mágico deve ser escolhido. Durante o perÃodo em que a porta do servidor tem o ECHO ligado, o cliente <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> envia pacotes LCP, vê o mesmo numero mágica no pacote refletido e reflete o NAK. Ele também vê a reflexão NAK (que também significa que o <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> deve mudar seu numero magico). Isso produz um número potencialmente enorme de mudanças no número mágico, todas as quais estão se acumulando alegremente no buffer tty do servidor. Assim que <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> é iniciado no servidor, ele é inundado com alterações de numeros mágicos e quase imediatamente decide que tentou o suficiente para negociar LCP e desiste. Enquanto isso, o cliente, que não vê mais as reflexões, fica feliz a tempo de ver um desligamento do servidor.</para> - <qandaentry> - <question xml:id="ppp-same-magic"> - <para>Eu vejo os mesmos erros sobre <literal>magic is the - same</literal>. O que significa?</para> - </question> - - <answer> - <para>Ocasionalmente, depois da conexão, você - pode ver mensagens no log dizendo <quote>"magic is the - same"</quote>. Às vezes essas mensagens - são sem importância e as vezes um lado ou o - outro sai. A maioria das implementações do - ppp não consegue continuar com esse problema, e - mesmo se a conexão estiver para ser estabelecida, - você verá repetidas requisições - de configuração e reconhecimentos de - configuração no arquivo de log até - que o &man.ppp.8; eventualmente desista e feche a - conexão.</para> - - <para>Isto normalmente acontece em máquinas com - discos lentos que estão dando spawning getty na - porta e executam o &man.ppp.8; através de um login - script ou programa depois do login. Eu também ouvi - relatórios disso estar acontecendo consistentemente - ao usar slirp. A razão é que no tempo entre - saída do &man.getty.8; e a - inicialização do &man.ppp.8;, o &man.ppp.8; do - lado cliente começa a emitir pacotes do protocolo - do controle da linha LCP). Porque o ECHO ainda esta - ligado na porta do servidor, o cliente então - vê esses pacotes serem <quote>refletidos</quote> de - volta.</para> - - <para>Uma parte da negociação LCP deve - estabelecer um número mágico para cada lado - da ligação de modo que as - <quote>reflexões</quote> possam ser detectadas. O - protocolo diz que quando um ponto tenta negociar o mesmo - número mágico, um NAK deve ser emitido e um - novo número mágico deve ser escolhido. - Durante o período que a porta do server tem o ECHO - ligado, o &man.ppp.8; cliente manda pacotes LCP, vê o - mesmo número mágico nos pacotes refletidos e - manda NAKs a ele. Ve-se também o NAK que foi - refletido (que significa que o &man.ppp.8; deve mudar o seu - número mágico). Isto produz um - número potencialmente enorme de mudanças de - números mágicos que estão sendo - empilhados no buffer do tty do servidor. Tão logo - o &man.ppp.8; se inicia no servidor, ele é inundado - com mudanças de números mágicos - imediatamente ao negociar o LCP, e desiste. Enquanto - isso, o cliente não vê por muito tempo as - reflexões e fica feliz apenas por algum tempo, - até receber a desconexão do servidor.</para> - - <para>Isto pode ser evitado permitindo que a - negociação seja iniciada pelo servidor - (peer), adicionando a seguinte linha no seu arquivo - ppp.conf:</para> + <para>Isto pode ser evitado permitindo que o par comece a negociar com a seguinte linha em <filename>ppp.conf</filename>:</para> <programlisting>set openmode passive</programlisting> - <para>Isso diz ao &man.ppp.8; para esperar que o servidor - inicie as negociações LCP. Alguns - servidores, entretanto, podem nunca iniciar as - negociações. Se este for o caso, você - deve fazer algo como:</para> + <para>Isto diz ao <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> para esperar que o servidor inicie as negociações do LCP. Alguns servidores, no entanto, nunca podem iniciar negociações. Nesse caso, tente algo como:</para> <programlisting>set openmode active 3</programlisting> - <para>Isto diz ao &man.ppp.8; para ser passivo durante 3 - segundos, e então começar a enviar - requisições LCP. Se o servidor (peer) - começar a enviar requisições durante - esse período, o &man.ppp.8; irá responder - imediatamente, ao invés de aguardar pelo - período completo de 3 segundos.</para> + <para>Isso informa ao <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> para ser passivo por 3 segundos e, em seguida, para iniciar o envio de solicitações de LCP. Se o peer começar a enviar pedidos durante este perÃodo, <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> responderá imediatamente, em vez de esperar pelo perÃodo completo de 3 segundos.</para> </answer> </qandaentry> <qandaentry> <question xml:id="ppp-lcp-constant"> - <para>As negociações LCP continuam até - que a conexão seja fechada. O que está - errado?</para> - </question> - - <answer> - <para>Há atualmente uma característica - faltando no ppp onde ele não associa respostas LCP - , CCP & IPCP com suas requisições - originais. Como consequência, se uma - implementação ppp é 6 segundos mais - lenta do que o outro lado, esse lado emitirá duas - requisões adicionais de configuração - LCP. Isto é fatal.</para> - - <para>Considere duas implementações, - <systemitem>A</systemitem> e <systemitem>B</systemitem>. - <systemitem>A</systemitem> emite requisições LCP - imediatamente após a conexão e - <systemitem>B</systemitem> leva 7 segundos para iniciar. Quando - <systemitem>B</systemitem> inicia, <systemitem>A</systemitem> emitiu 3 LCP - REQs. Nós estamos supondo que a linha ECHO esteja - desabilitada, senão nós veríamos - problemas com número mágico como descritos - na seção anterior. <systemitem>B</systemitem> emite - um REQ, entao um ACK para o primeiro dos REQs de - <systemitem>A</systemitem>. Isto resulta em <systemitem>A</systemitem> - entrando no estado <acronym>OPENED</acronym> e enviando um - ACK (o primeiro) de volta a <systemitem>B</systemitem>. Enquanto - isso, <systemitem>B</systemitem> envia de volta mais dois ACKs em - resposta aos dois REQs adicionais enviados por - <systemitem>A</systemitem> antes de <systemitem>B</systemitem> ter - iniciado. <systemitem>B</systemitem> então recebe o - primeiro ACK de <systemitem>A</systemitem> e também entra - no estado de <acronym>OPENED</acronym>. - <systemitem>A</systemitem> recebe o segundo ACK de - <systemitem>B</systemitem> e retorna ao estado de - <acronym>REQ-SENT</acronym>, enviando um outro (seguinte) - REQ conforme a RFC ordena. Então, recebe o - terceiro ACK e entra no estado OPENED. Enquanto isso, - <systemitem>B</systemitem> recebe REQ (posterior) de - <systemitem>A</systemitem>, tendo como resultado uma - reversão para o estado <acronym>ACK-SENT</acronym> - e enviando um outro (segundo) REQ e (depois) ACK conforme - a RFC. Conseguindo o REQ, <systemitem>A</systemitem> entra em - <acronym>REQ-SENT</acronym> e envia outro REQ. - Imediatamente recebe o ACK seguinte e entra em - <acronym>OPENED</acronym>.</para> - - <para>Isto continuará até que um dos lados - descubra que eles não estão indo a lugar - algum e desista.</para> - - <para>A melhor maneira de evitar isso é configurar um - lado para ser <literal>passivo</literal> - isso faz com - que um lado espere pelo outro para iniciar uma - negociação. Isto pode ser feito com o - comando</para> + <para>As negociações LCP continuam até que a conexão seja encerrada. O que está errado?</para> + </question> - <programlisting>set openmode passive</programlisting> + <answer> + <para>Há atualmente uma implementação incorreta no <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> onde ele não associa LCP, CCP & Respostas IPCP com seus pedidos originais. Como resultado, se uma implementação de PPP for mais de 6 segundos mais lenta do que o outro lado, o outro lado enviará duas solicitações adicionais de configuração de LCP. Isso é fatal.</para> + + <para>Considere duas implementações, <systemitem>A</systemitem> e <systemitem>B</systemitem>. <systemitem>A</systemitem> começa a enviar solicitações LCP imediatamente após a conexão e <systemitem>B</systemitem> leva 7 segundos para iniciar. Quando <systemitem>B</systemitem> é iniciado, <systemitem>A</systemitem> enviou 3 LCP REQs. Estamos supondo que a linha esteja com ECHO desligado, caso contrário, verÃamos problemas com números mágicos conforme descrito na seção anterior. <systemitem>B</systemitem> envia um REQ e, em seguida, um ACK para o primeiro dos REQs de <systemitem>A</systemitem>. Isso resulta em <systemitem>A</systemitem> inserindo o estado <acronym>OPENED</acronym> e enviando e ACK (o primeiro) de volta para <systemitem>B</systemitem>. Enquanto isso, <systemitem>B</systemitem> envia de volta mais dois ACKs em resposta aos dois REQs adicionais enviados por <systemitem>A</systemitem> antes de <systemitem>B</systemitem> ser iniciado. <systemitem>B</systemitem> recebe o primeiro ACK de <systemitem>A</systemitem> e entra no estado <acronym>OPENED</acronym>. <systemitem>A</systemitem> recebe o segundo ACK de <systemitem>B</systemitem> e retorna ao estado de <acronym>REQ-SENT</acronym>, enviando outro (adiante) REQ de acordo com o RFC. Em seguida, recebe o terceiro ACK e entra no estado <acronym>OPENED</acronym>. Enquanto isso, <systemitem>B</systemitem> recebe o quarto REQ de <systemitem>A</systemitem>, resultando na sua reversão para o estado <acronym>ACK-SENT</acronym> e enviando outro (segundo) REQ e (adiante) ACK de acordo com o RFC. <systemitem>A</systemitem> obtém o REQ, entra em <acronym>REQ-SENT</acronym> e envia outro REQ. Ele recebe imediatamente o seguinte ACK e insere <acronym>OPENED</acronym>.</para> - <para>Deve-se ter cuidado com esta opção. - Você também deve usar o comando</para> + <para>Isso continua até que um lado conclui que eles estão chegando a lugar nenhum e desiste.</para> - <programlisting>set stopped N</programlisting> + <para>A melhor maneira de evitar isso é configurar um lado para ser <literal>passivo</literal> - isto é, fazer um lado esperar que o outro comece a negociar. Isso pode ser feito com o seguinte comando:</para> - <para>para limitar a quantidade de tempo que o &man.ppp.8; - esperará pelo outro lado iniciar a - negociação. Alternativamente o - comando</para> + <programlisting>set openmode passive</programlisting> - <programlisting>set openmode active N</programlisting> + <para>Deve ser tomado cuidado com esta opção. Este comando também pode ser usado para limitar a quantidade de tempo que o <citerefentry><refentrytitle>ppp</refentrytitle><manvolnum>8</manvolnum></citerefentry> aguarda que o par inicie as negociações:</para> - <para>(onde <replaceable>N</replaceable> é o - número de segundos para esperar antes de iniciar as - negociações) pode ser usado. Consulte as - páginas de manual para detalhes.</para> - </answer> - </qandaentry> + <programlisting>set stopped <replaceable>N</replaceable></programlisting> - <qandaentry> - <question xml:id="ppp-lockups"> - <para>Por que o &man.ppp.8; trava logo apó a - conexão?</para> - </question> + <para>Alternativamente, o seguinte comando (onde <replaceable>N</replaceable> é o número de segundos a aguardar antes de iniciar as negociações) pode ser usado:</para> - <answer> - <para>Antes da versão 2.2.5 do FreeBSD, era - possível que sua ligação fosse - desabilitada logo após a co |