[svnbook-pt-br commit] r123 - trunk/book

codesite-noreply at google.com codesite-noreply at google.com
Mon Jul 28 10:07:03 CDT 2008


Author: mfandrade
Date: Mon Jul 28 08:06:37 2008
New Revision: 123

Modified:
   trunk/book/ch06-server-configuration.xml

Log:
Tradução do capítulo 6 - "Configuração do Servidor", seção "svnserve, um 
servidor especializado", subseção "Invocando o Servidor".


Modified: trunk/book/ch06-server-configuration.xml
==============================================================================
--- trunk/book/ch06-server-configuration.xml	(original)
+++ trunk/book/ch06-server-configuration.xml	Mon Jul 28 08:06:37 2008
@@ -443,79 +443,83 @@
   <!-- ================================================================= -->
   <sect1 id="svn.serverconfig.svnserve">
 
-    <title>svnserve, a custom server</title>
+    <title>svnserve, um servidor especializado</title>
 
-    <para>The <command>svnserve</command> program is a lightweight
-      server, capable of speaking to clients over TCP/IP using a
-      custom, stateful protocol.  Clients contact an
-      <command>svnserve</command> server by using URLs that begin with
-      the <literal>svn://</literal> or <literal>svn+ssh://</literal>
-      scheme.  This section will explain the different ways of running
-      <command>svnserve</command>, how clients authenticate themselves
-      to the server, and how to configure appropriate access control
-      to your repositories.</para>
+    <para>O programa <command>svnserve</command> é um servidor leve,
+      capaz de falar com clientes via TCP/IP usando um protocolo
+      específico e robusto.  Os clientes contactam um servidor
+      <command>svnserve</command> usando URLs que começam com o esquema
+      <literal>svn://</literal> ou <literal>svn+ssh://</literal>.  Esta
+      seção vai explicar as diversas formas de se executar o 
+      <command>svnserve</command>, como os clientes se autenticam para o
+      servidor, e como configurar o controle de acesso apropriado aos
+      seus repositórios.</para>
 
     <!-- =============================================================== -->
     <sect2 id="svn.serverconfig.svnserve.invoking">
-      <title>Invoking the Server</title>
+      <title>Invocando o Servidor</title>
 
-      <para>There are a few different ways to run the
-        <command>svnserve</command> program:</para>
+      <para>Há poucas maneiras distintas de se invocar o programa
+        <command>svnserve</command>:</para>
 
       <itemizedlist>
-        <listitem><para>Run <command>svnserve</command> as a
-            standalone daemon, listening for
-            requests.</para></listitem>
-        <listitem><para>Have the Unix <command>inetd</command> daemon
-            temporarily spawn <command>svnserve</command> whenever a
-            request comes in on a certain port.</para></listitem>
-        <listitem><para>Have SSH invoke a
-            temporary <command>svnserve</command> over an encrypted
-            tunnel.</para></listitem>
-        <listitem><para>Run <command>svnserve</command> as a Windows
-            service.</para></listitem>
+        <listitem><para>Executar o <command>svnserve</command> como um
+            daemon independente, aguardando por
+            requisições.</para></listitem>
+        <listitem><para>Fazer com que o daemon <command>inetd</command>
+            do Unix dispare temporariamente o <command>svnserve</command>
+            a cada vez que uma requisição chegar numa dada
+            porta.</para></listitem>
+        <listitem><para>Fazer com que o SSH execute um
+            <command>svnserve</command> temporário sobre um túnel
+            criptografado.</para></listitem>
+        <listitem><para>Executar o <command>svnserve</command> como um
+            serviço do Windows.</para></listitem>
       </itemizedlist>
 
       <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
       <sect3 id="svn.serverconfig.svnserve.invoking.daemon">
-        <title><command>svnserve</command> as Daemon</title>
+        <title><command>svnserve</command> como Daemon</title>
 
-        <para>The easiest option is to run <command>svnserve</command>
-          as a standalone <quote>daemon</quote> process.  Use the
-          <option>-d</option> option for this:</para>
+        <para>A opção mais fácil é executar o
+          <command>svnserve</command> como um <quote>daemon</quote>
+          independente.  Use a opção <option>-d</option> para
+          isto:</para>
 
         <screen>
 $ svnserve -d
-$               # svnserve is now running, listening on port 3690
+$               # o svnserve está rodando agora, ouvindo na porta 3690
 </screen>
 
-        <para>When running <command>svnserve</command> in daemon mode,
-          you can use the <option>--listen-port=</option> and
-          <option>--listen-host=</option> options to customize the
-          exact port and hostname to <quote>bind</quote> to.</para>
-
-      <para>Once we successfully start <command>svnserve</command> as above,
-        it makes every repository on your system available to the
-        network.  A client needs to specify an
-        <emphasis>absolute</emphasis> path in the repository URL.  For
-        example, if a repository is located at
-        <filename>/usr/local/repositories/project1</filename>, then a
-        client would reach it via
+        <para>Ao executar o <command>svnserve</command> no modo daemon,
+          você pode usar as opções <option>--listen-port=</option> e
+          <option>--listen-host=</option> para especificar a porta e o
+          hostname exatos aos quais o servidor estará
+          <quote>associado</quote>.</para>
+
+      <para>Uma vez que tenhamos iniciado o <command>svnserve</command>
+        como mostrado acima, isto torna todos os repositórios do sistema
+        disponíveis na rede.  Um cliente precisa especificar uma URL com
+        um caminho <emphasis>absoluto</emphasis> do repositório.  Por
+        exemplo, se um repositório estiver localizado em
+        <filename>/usr/local/repositories/project1</filename>, então um
+        cliente deveria acessá-lo com 
         <uri>svn://host.example.com/usr/local/repositories/project1</uri>.
-        To increase security, you can pass the <option>-r</option>
-        option to <command>svnserve</command>, which restricts it to
-        exporting only repositories below that path.  For example:</para>
+        Para aumentar a segurança, você pode passar a opção
+        <option>-r</option> para o <command>svnserve</command>, o que
+        limita a exportar apenas os repositórios sob o caminho
+        especificado.  Por exemplo:</para>
       
       <screen>
 $ svnserve -d -r /usr/local/repositories
 …
 </screen>
 
-      <para>Using the <option>-r</option> option effectively
-        modifies the location that the program treats as the root of
-        the remote filesystem space.  Clients then use URLs that
-        have that path portion removed from them, leaving much
-        shorter (and much less revealing) URLs:</para>
+      <para>O uso da opção <option>-r</option> efetivamente modifica o
+        local que o programa considera como a raiz do sistema de
+        arquivos remoto.  Os clientes então usam URLs com aquela parte
+        do caminho removida, tornando-as mais curtas (e bem menos
+        informativas):</para>
 
       <screen>
 $ svn checkout svn://host.example.com/project1
@@ -526,174 +530,177 @@
 
       <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
       <sect3 id="svn.serverconfig.svnserve.invoking.inetd">
-        <title><command>svnserve</command> via <command>inetd</command></title>
+        <title><command>svnserve</command> através do <command>inetd</command></title>
 
-        <para>If you want <command>inetd</command> to launch the
-          process, then you need to pass the <option>-i</option>
-          (<option>--inetd</option>) option.  In the example, we've shown the
-          output from running <literal>svnserve -i</literal> at the
-          command line, but note that isn't how you actually start the
-          daemon; see the paragraphs following the example for how to
-          configure <command>inetd</command> to
-          start <command>svnserve</command>.</para>
+        <para>Se você quiser que o <command>inetd</command> execute o
+          processo, então você precisa passar a opção
+          <option>-i</option> (<option>--inetd</option>).  No exemplo,
+          mostramos a saída da execução do comando <literal>svnserve
+          -i</literal> na linha de comando, mas note que atualmente não
+          é assim que se inicia o daemon; leia os parágrafos depois do
+          exemplo para saber como configurar o <command>inetd</command>
+          para iniciar o <command>svnserve</command>.</para>
 
       <screen>
 $ svnserve -i
 ( success ( 1 2 ( ANONYMOUS ) ( edit-pipeline ) ) )
 </screen>
 
-      <para>When invoked with the <option>--inetd</option> option,
-        <command>svnserve</command> attempts to speak with a
-        Subversion client via <emphasis>stdin</emphasis> and
-        <emphasis>stdout</emphasis> using a custom protocol.  This is
-        the standard behavior for a program being run via
-        <command>inetd</command>.  The IANA has reserved port 3690
-        for the Subversion protocol, so on a Unix-like system you can
-        add lines to <filename>/etc/services</filename> like these (if
-        they don't already exist):</para>
+      <para>Quando invocado com a opção <option>--inetd</option>, o
+        <command>svnserve</command> tenta se comunicar com um cliente
+        Subversion por meio do <emphasis>stdin</emphasis> e
+        <emphasis>stdout</emphasis> usando um protocolo específico.
+        Este é o comportamento padrão para um programa sendo executado
+        através do <command>inetd</command>.  A IANA reservou a porta
+        3690 para o protocolo Subversion, assim, em um sistema Unix-like
+        você poderia adicionar linhas como estas ao arquivo
+        <filename>/etc/services</filename> (se elas já não
+        existirem):</para>
 
       <screen>
 svn           3690/tcp   # Subversion
 svn           3690/udp   # Subversion
 </screen>
 
-      <para>And if your system is using a classic Unix-like
-        <command>inetd</command> daemon, you can add this line to
-        <filename>/etc/inetd.conf</filename>:</para>
+      <para>E se seu sistema Unix-like estiver usando um daemon
+        <command>inetd</command> clássico, você pode adicionar esta
+        linha ao arquivo <filename>/etc/inetd.conf</filename>:</para>
 
       <screen>
 svn stream tcp nowait svnowner /usr/bin/svnserve svnserve -i
 </screen>
 
-      <para>Make sure <quote>svnowner</quote> is a user which has
-        appropriate permissions to access your repositories.  Now, when
-        a client connection comes into your server on port 3690,
-        <command>inetd</command> will spawn an
-        <command>svnserve</command> process to service it.  Of course,
-        you may also want to add <option>-r</option> to the
-        configuration line as well, to restrict which repositories are
-        exported.</para>
+      <para>Assegure-se de que <quote>svnowner</quote> seja um usuário
+        com permissões apropriadas para acesso aos seus repositórios.
+        Agora, quando uma conexão do cliente atingir seu servidor na
+        porta 3690, o <command>inetd</command> vai disparar um processo
+        <command>svnserve</command> para atendê-la.  Obviamente, você
+        também pode querer adicionar a opção <option>-r</option> para
+        restringir quais repositórios serão exportados.</para>
 
       </sect3>
 
       <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
       <sect3 id="svn.serverconfig.svnserve.invoking.tunnel">
-        <title><command>svnserve</command> over a Tunnel</title>
+        <title><command>svnserve</command> sobre um Túnel</title>
 
-        <para>A third way to invoke <command>svnserve</command> is in
-          <quote>tunnel mode</quote>, with the <option>-t</option>
-          option.  This mode assumes that a remote-service program
-          such as <command>RSH</command> or <command>SSH</command> has
-          successfully authenticated a user and is now invoking a
-          private <command>svnserve</command> process <emphasis>as
-          that user</emphasis>.  (Note that you, the user, will
-          rarely, if ever, have reason to invoke
-          <command>svnserve</command> with the <option>-t</option> at
-          the command line; instead, the <command>SSH</command> daemon
-          does so for you.)  The <command>svnserve</command> program
-          behaves normally (communicating via
-          <emphasis>stdin</emphasis> and <emphasis>stdout</emphasis>),
-          and assumes that the traffic is being automatically
-          redirected over some sort of tunnel back to the client.
-          When <command>svnserve</command> is invoked by a tunnel
-          agent like this, be sure that the authenticated user has
-          full read and write access to the repository database files.
-          It's essentially the same as a local user accessing the
-          repository via <literal>file://</literal> URLs.</para>
+        <para>Uma terceira forma de se invocar o
+          <command>svnserve</command> é no <quote>modo túnel</quote>,
+          com a opção <option>-t</option>.  Este modo assume que um
+          programa de acesso remoto como o <command>RSH</command> ou o
+          <command>SSH</command> autenticou um usuário com sucesso e
+          está agora invocando um processo <command>svnserve</command>
+          privativo <emphasis>como aquele usuário</emphasis>.  (Note que
+          você, o usuário, vai raramente, ou talvez nunca, precisar
+          invocar o <command>svnserve</command> com a opção
+          <option>-t</option> na linha de comando; já que o próprio
+          daemon <command>SSH</command> faz isso para você.)  O programa
+          <command>svnserve</command> funciona normalmente (se
+          comunicando por meio do <emphasis>stdin</emphasis> e
+          <emphasis>stdout</emphasis>), e assume que o tráfego está
+          sendo automaticamente redirecionado por algum tipo de túnel de
+          volta para o cliente.  Quando o <command>svnserve</command> é
+          invocado por um túnel agente como este, assegure-se de que o
+          usuário autenticado tenha completo acesso de leitura e escrita
+          aos arquivos da base de dados do repositório.  É
+          essencialmente o mesmo que um usuário local acessando o
+          repositório por meio de URLs
+          <literal>file://</literal>.</para>
 
-        <para>This option is described in much more detail in
+        <para>Esta opção está descrita com mais detalhes em
           <xref linkend="svn.serverconfig.svnserve.sshauth"/>.</para>
 
       </sect3>
 
       <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
       <sect3 id="svn.serverconfig.svnserve.invoking.winservice">
-        <title><command>svnserve</command> as Windows Service</title>
+        <title><command>svnserve</command> como um Serviço do Windows</title>
 
-        <para>If your Windows system is a descendant of Windows NT
-          (2000, 2003, XP, Vista), then you can
-          run <command>svnserve</command> as a standard Windows
-          service.  This is typically a much nicer experience than
-          running it as a standalone daemon with the <option>--daemon
-          (-d)</option> option.  Using daemon-mode requires launching
-          a console, typing a command, and then leaving the console
-          window running indefinitely.  A Windows service, however,
-          runs in the background, can start at boot time
-          automatically, and can be started and stopped using the same
-          consistent administration interface as other
-          Windows services. </para>
-
-        <para>You'll need to define the new service using the
-          command-line tool <command>SC.EXE</command>.  Much like
-          the <command>inetd</command> configuration line, you must
-          specify an exact invocation of <command>svnserve</command>
-          for Windows to run at start-up time:</para>
+        <para>Se seu sistema Windows é descendente dos Windows NT (2000,
+          2003, XP, Vista), então você pode executar o
+          <command>svnserve</command> como um serviço padrão do Windows.
+          Esta é tipicamente uma experiência mais proveitosa do que
+          executá-lo como um daemon independente com a opção
+          <option>--daemon (-d)</option>.  Usar o modo daemon implica em
+          executar um console, digitar um comando, e então deixar a
+          janela do console executando indefinidamente.  Um serviço do
+          Windows, no entanto, executa em segundo plano, pode ser
+          executado automaticamente na inicialização, e pode se iniciado
+          e parado através da mesma interface de administração como
+          os outros serviços do Windows.</para>
+
+        <para>Você vai precisar definir o novo serviço usando a
+          ferramenta de linha de comando <command>SC.EXE.</command>.
+          Semelhantemente à linha de configuração do
+          <command>inetd</command>, você deve especificar a forma exata
+          de invocação do <command>svnserve</command> para que o Windows
+          o execute na inicialização:</para>
 
         <screen>
 C:\> sc create svn
         binpath= "C:\svn\bin\svnserve.exe --service -r C:\repos"
-        displayname= "Subversion Server"
+        displayname= "Servidor Subversion"
         depend= Tcpip
         start= auto
 </screen>
 
-        <para>This defines a new Windows service
-          named <quote>svn</quote>, and which executes a
-          particular <command>svnserve.exe</command> command when
-          started (in this case, rooted
-          at <filename>C:\repos</filename>.)  There are a number of
-          caveats in the prior example, however.</para>
-
-        <para>First, notice that the <command>svnserve.exe</command>
-          program must always be invoked with
-          the <option>--service</option> option.  Any other options to
-          <command>svnserve</command> must then be specified on the
-          same line, but you cannot add conflicting options such
-          as <option>--daemon
-          (-d)</option>, <option>--tunnel</option>, or <option>--inetd
-          (-i)</option>.  Options such as <option>-r</option>
-          or <option>--listen-port</option> are fine, though.  Second, be
-          careful about spaces when invoking
-          the <command>SC.EXE</command> command: the
-          <literal>key= value</literal> patterns must have no
-          spaces between <literal>key=</literal> and exactly one
-          space before the <literal>value</literal>.  Lastly, be
-          careful about spaces in your command-line to be invoked.  If
-          a directory name contains spaces (or other characters that
-          need escaping), place the entire inner value
-          of <literal>binpath</literal> in double-quotes, by escaping
-          them:</para>
+        <para>Isto define um novo serviço do Windows chamado
+          <quote>svn</quote>, o qual executa um comando
+          <command>svnserve.exe</command> particular quando iniciado
+          (neste caso, com raiz em <filename>C:\repos</filename>.)  No
+          entanto, há diversos pontos a considerar neste exemplo
+          anterior.</para>
+
+        <para>Primeiramente, note que o programa
+          <command>svnserve.exe</command> deve sempre ser chamado com a
+          opção <option>--service</option>.  Quaisquer outras opções
+          para o <command>svnserve</command> então devem ser
+          especificadas na mesma linha, mas você não pode adicionar
+          opções conflitantes tais como <option>--daemon (-d)</option>,
+          <option>--tunnel</option>, ou <option>--inetd (-i)</option>.
+          Já opções como <option>-r</option> ou
+          <option>--listen-port</option> não terão problemas.  Em
+          segundo lugar, tenha cuidado com relação a espaços ao invocar
+          o comando <command>SC.EXE</command>: padrões <literal>chave=
+          valor</literal> não devem conter espaços entre
+          <literal>chave=</literal> e devem ter exatamente um espaço
+          antes de <literal>valor</literal>.  Por último, tenha cuidado
+          também com espaços na sua linha de comando a ser executada.
+          Se um nome de diretório contiver espaços (ou outros caracteres
+          que precisem de escape), coloque todo o valor interno de
+          <literal>binpath</literal> entre aspas duplas,
+          escapando-as:</para>
 
         <screen>
 C:\> sc create svn
-        binpath= "\"C:\program files\svn\bin\svnserve.exe\" --service -r C:\repos"
-        displayname= "Subversion Server"
+        binpath= "\"C:\arquivos de programas\svn\bin\svnserve.exe\" --service -r C:\repos"
+        displayname= "Servidor Subversion"
         depend= Tcpip
         start= auto
 </screen>
 
-        <para>Also note that the word <literal>binpath</literal> is
-          misleading—its value is a <emphasis>command
-          line</emphasis>, not the path to an executable.  That's why
-          you need to surround it with quote marks if it contains
-          embedded spaces.</para>
-
-        <para>Once the service is defined, it can stopped, started, or
-          queried using standard GUI tools (the Services
-          administrative control panel), or at the command line as
-          well:</para>
+        <para>Também observe que o termo <literal>binpath</literal> é
+          confuso—seu valor é a <emphasis>linha de
+          comando</emphasis>, não o caminho para um executável.  Por
+          isso que você precisa delimitá-lo com aspas se o valor
+          contiver espaços.</para>
+
+        <para>Uma vez que o serviço esteja definido, ele pode ser
+          parado, iniciado, ou consultado usando-se as ferramentas GUI
+          (o painel de controle administrativo Serviços), bem como
+          através da linha decomando:</para>
 
         <screen>
 C:\> net stop svn
 C:\> net start svn
 </screen>
 
-        <para>The service can also be uninstalled (i.e. undefined) by
-          deleting its definition:  <literal>sc delete svn</literal>.
-          Just be sure to stop the service first!
-          The <command>SC.EXE</command> program has many other
-          subcommands and options; run <literal>sc /?</literal> to
-          learn more about it.</para>
+        <para>O serviço também pode ser desinstalado (i.e. indefinido)
+          excluindo-se sua definição:  <literal>sc delete svn</literal>.
+          Apenas certifique-se de parar o serviço antes!  O programa 
+          <command>SC.EXE</command> tem diversos outros subcomandos e
+          opções; digite <literal>sc /?</literal> para saber mais sobre
+          ele.</para>
 
       </sect3>
 




More information about the svn-pt_br mailing list