[svnbook] r5832 committed - branches/1.8/zh/book/ ch06-server-configuration.xml
wuzhouhui at users.sourceforge.net
wuzhouhui at users.sourceforge.net
Fri Nov 23 23:33:14 CST 2018
Revision: 5832
http://sourceforge.net/p/svnbook/source/5832
Author: wuzhouhui
Date: 2018-11-24 05:33:10 +0000 (Sat, 24 Nov 2018)
Log Message:
-----------
1.8/zh: review of chapter 6 in progress
Modified Paths:
--------------
branches/1.8/zh/book/ch06-server-configuration.xml
Modified: branches/1.8/zh/book/ch06-server-configuration.xml
===================================================================
--- branches/1.8/zh/book/ch06-server-configuration.xml 2018-11-24 02:16:52 UTC (rev 5831)
+++ branches/1.8/zh/book/ch06-server-configuration.xml 2018-11-24 05:33:10 UTC (rev 5832)
@@ -49,7 +49,7 @@
<secondary>layers</secondary>
<tertiary>Repository Access (RA) Layer</tertiary>
</indexterm>Subversion 具有一个抽象的仓库访问层, 这就意味着仓库可以
- 被任意类型的服务器进程以编程方式进行访问, 并且客户端 <quote>仓库访问
+ 被任意类型的服务器进程以程序化地方式进行访问, 并且客户端 <quote>仓库访问
API</quote> 允许程序员编写协议相关的插件. 从理论上讲, Subversion 支持
任意类型的网络实现, 但在实际使用中, 只有两种 Subversion 服务器用得比较
广泛.</para>
@@ -93,13 +93,13 @@
<para>
<indexterm>
<primary>svnserve</primary>
- </indexterm>另一种就是 <command>svnserve</command>: 一种小型的轻量服务
+ </indexterm>另一种就是 <command>svnserve</command>: 一种小型的轻量级服务
器程序, 使用定制的协议与客户端通信. 因为它所使用的协议是专为 Subversion
而设计的有状态协议 (相对于无状态的 HTTP 协议), 它提供了更快速的网络操作
—但同时也要付出一些代价. 虽然 <command>svnserve</command> 可以利用
SASL 提供各种各样的认证和加密选项, 但它不支持日志记录和网页浏览. 然而,
- 搭建 <command>svnserve</command> 非常方便, 非常适合刚开始接触 Subversion
- 的小型团队.</para>
+ 搭建 <command>svnserve</command> 服务器非常方便, 非常适合刚开始接触
+ Subversion 的小型团队.</para>
<!--
In the other corner is <command>svnserve</command>:
a small, lightweight server program that speaks a custom
@@ -236,10 +236,10 @@
<entry>High-level operational logging only</entry>
-->
<entry>日志记录</entry>
- <entry>支持在较高的层次记录 Subversion 操作, 也支持为每一个 HTTP
+ <entry>支持在较高的层次上记录 Subversion 操作, 也支持为每一个 HTTP
请求记录日志</entry>
- <entry>只支持从较高的层次记录 Subversion 操作</entry>
- <entry>只支持从较高的层次记录 Subversion 操作</entry>
+ <entry>只支持从较高的层次上记录 Subversion 操作</entry>
+ <entry>只支持从较高的层次上记录 Subversion 操作</entry>
</row>
<row>
<!--
@@ -563,7 +563,7 @@
<para>Built-in repository browsing is available via
web browser.</para>
-->
- <para>内建的仓库浏览可通过网页浏览器访问.</para>
+ <para>内建的仓库浏览特性可被网页浏览器使用.</para>
</listitem>
<listitem>
<!--
@@ -572,7 +572,7 @@
drive for transparent version control (see <xref
linkend="svn.webdav.autoversioning"/>).</para>
-->
- <para>仓库可以被当作网络驱动器, 进行挂载 (见 <xref
+ <para>仓库可以被当作网络驱动器进行挂载 (见 <xref
linkend="svn.webdav.autoversioning"/>).</para>
</listitem>
</itemizedlist>
@@ -633,7 +633,7 @@
<para>Here are some general recommendations and tips, based on
years of supporting users:</para>
-->
- <para>根据支持了多年的用户的反馈, 下面列出几点一般性的建议和技巧:</para>
+ <para>根据多年的用户支持经验, 下面列出几点一般性的建议和技巧:</para>
<itemizedlist>
<listitem>
@@ -772,7 +772,7 @@
<literal>svn://</literal> 或 <literal>svn+ssh://</literal> 形式的 URL
访问 <command>svnserve</command> 服务器. 本节介绍运行
<command>svnserve</command> 的多种方式, 服务器如何认证客户端, 以及如何为
- 仓库配置适当的访问权限.</para>
+ 仓库配置合适的访问权限.</para>
<!--
The <command>svnserve</command> program is a lightweight
server, capable of speaking to clients over TCP/IP using a
@@ -1000,7 +1000,7 @@
Subversion 通信, 这是由 <command>inetd</command> 所启动的程序的标准
行为. IANA 将端口 3690 保留给 Subversion 使用, 所以说在一个类 Unix
系统上, 管理员可以安全地在 <filename>/etc/services</filename> 中添
- 加以下内容 (如果原来没有):</para>
+ 加以下内容 (如果原来没有的话):</para>
<informalexample>
<programlisting>
@@ -1190,7 +1190,7 @@
更新的版本), 管理员就能把 <command>svnserve</command> 作为一个标准
的 Windows 服务启动, 和独立的守护进程启动方式 (添加选项
<option>--daemon</option> (<option>-d</option>)) 相比, 这通常能带
- 来更好的检验. 为了以守护进程的方式启动 <command>svnserve</command>,
+ 来更好的体验. 为了以守护进程的方式启动 <command>svnserve</command>,
我们需要打开一个控制台, 输入命令, 然后任由控制台永远地运行下去. 然而,
在后台运行的 Windows 服务可以在系统引导时自动启动, 可以使用和其他
Windows 服务一样的管理接口, 启动或停止服务.</para>
@@ -1241,7 +1241,7 @@
-->
<para>上面的命令行定义了一个新的, 名为 <literal>svn</literal> 的
Windows 服务, 当服务启动时, 它将执行程序
- <command>svnserve.exe</command>. 在这个例子, 有很多需要注意的地方.
+ <command>svnserve.exe</command>. 在这个例子里有很多需要注意的地方.
</para>
<!--
@@ -1480,7 +1480,7 @@
-->
<para>需要澄清的是, 上面的命令并没有启动 <command>svnserve</command>,
它只是告诉 <command>launchd</command> 当网络端口
- <literal>svn</literal> 有网络数据到达时, 如何启动
+ <literal>svn</literal> 有网络数据到达时如何启动
<command>svnserve</command>, 当网络数据处理完毕后,
<command>svnserve</command> 进程就会终止.</para>
@@ -1629,7 +1629,7 @@
在本质上, 就是服务器向客户端发送了一小段数据. 客户端使用 MD5 散列算法
为数据和密码的混合物创建指纹, 然后发送该指纹, 作为认证请求的响应. 服
务器对存放在本地的密码进行同样的计算, 以验证它们是否相同. <emphasis>在
- 任何情况下都会在网络上传输明文密码</emphasis>.</para>
+ 任何情况下都不会在网络上传输明文密码</emphasis>.</para>
<!--
<para>If your <command>svnserve</command> server was built with
@@ -1929,9 +1929,9 @@
-->
<para>Cyrus Simple Authenticated and Security Layer 是卡耐基梅隆
大学开发的一款开源软件, 可以给任意一种网络协议添加通用的认证和
- 授权功能, 从 subversion 1.5 开始, <command>svnserve</command>
+ 授权功能, 从 Subversion 1.5 开始, <command>svnserve</command>
服务器和 <command>svn</command> 客户端开始支持 SASL. 不过 SASL
- 并非总是可用, 如果 subversion 是你自己编译安装的, 为了利用 SASL,
+ 并非总是可用, 如果 Subversion 是你自己编译安装的, 为了利用 SASL,
系统中至少要安装 SASL 2.1 版, 并且在 Subversion 构建过程能够检测
到 SASL 的存在. 执行 <userinput>svn --version</userinput> 时,
Subversion 客户端命令行工具将报告 Cyrus SASL 是否可用. 如果你安装
@@ -1982,12 +1982,12 @@
-->
<para>正常情况下, 当 Subversion 客户端连接到 <command>svnserve</command>
时, 服务器以宣告它所支持的功能作为响应. 如果服务器的配置要求认证,
- 服务器将向客户端发起认证请求, 并列出它所支持认证机制, 客户端从中选择
+ 服务器将向客户端发起认证请求, 并列出它所支持的认证机制, 客户端从中选择
一种认证机制, 通过几个往返消息携带认证信息. 即使 SASL 不可用, 客户端
和服务器也能使用内建的 CRAM-MD5 和 ANONYMOUS 认证机制 (见 <xref
linkend="svn.serverconfig.svnserve.auth"/>). 如果服务器和客户端
- 支持 SASL, 那么可供选择的认证机制就比较多, 但是管理器必须在服务器
- 端显示式地配置 SASL, 服务端才能向客户端宣告这些认证机制是可用的.
+ 支持 SASL, 那么可供选择的认证机制就比较多, 但是管理员必须在服务器
+ 端显式地配置 SASL, 服务端才能向客户端宣告这些认证机制是可用的.
</para>
<sect3 id="svn.serverconfig.svnserve.sasl.authn">
@@ -2124,7 +2124,7 @@
<para>有些地方需要注意: 首先要确保 <command>saslpasswd2</command> 的
<quote>领域</quote> 参数和定义在 <filename>svnserve.conf</filename>
里的领域是一致的, 如果它们不一致, 认证将会失败. 另外, 受限于 SASL,
- 领域必须不带空格的字符串. 最后, 如果你决定使用标准的 SASL 密码数据
+ 领域必须是不带空格的字符串. 最后, 如果你决定使用标准的 SASL 密码数据
库, 需要确保进程 <command>svnserve</command> 对数据库文件具有读
权限 (某些认证机制—例如 OTP—还会要求写权限).</para>
@@ -2155,7 +2155,7 @@
<para>注意, 如果管理员将服务器配置成仅允许使用 SASL 认证机制, 这同时
也在要求所有连接到服务器的客户端必须支持 SASL, 不支持 SASL 的客户
端 (包括 1.5 版之前的所有客户端) 将无法完成认证, 但是另一个方面,
- 这种配置也放正是你所想要的效果 (<quote>所有的客户端都必须使用
+ 这种配置也正是你所想要的效果 (<quote>所有的客户端都必须使用
Kerberos!</quote>). 然而, 如果仍然存在不支持 SASL 的客户端需要
连接服务器, 就要确保 CRAM-MD5 认证机制是可用的, 因为所有的客户端
都支持 CRAM-MD5.</para>
@@ -2323,7 +2323,7 @@
<command>ssh-agent</command> on a Unix-like system, or
<command>pageant</command> on Windows.</para>
-->
- <para>当使用 <literal>svn+ssh://</literal> URL 访问仓库时, 要记录提出
+ <para>当使用 <literal>svn+ssh://</literal> URL 访问仓库时, 要记住提出
认证要求的程序是 <command>ssh</command>, 而 <emphasis>不是</emphasis>
客户端程序 <command>svn</command>, 这就意味着不会出现密码缓存 (见
<xref linkend="svn.serverconfig.netmodel.credcache"/>). Subversion
@@ -2330,7 +2330,7 @@
客户端经常向仓库发起多个连接, 由于密码缓存, 用户通常不会注意到这点,
然而, 当用户使用 <literal>svn+ssh://</literal> 连接仓库时, 客户端每发起
一次连接, <command>ssh</command> 都会要求用户输入密码, 用户可能会对
- 些感到恼怒. 解决问题的办法是使用一个单独的 SSH 密码缓存工具, 例如
+ 此感到恼怒. 解决问题的办法是使用一个单独的 SSH 密码缓存工具, 例如
类 Unix 系统中的 <command>ssh-agent</command>, 或 Windows 系统中的
<command>pageant</command>.</para>
@@ -2360,7 +2360,7 @@
<para>在隧道模式下操作时, 授权主要由仓库数据文件的操作系统权限控制,
这和 Harry 使用 <literal>file://</literal> 直接访问仓库的情形基本
一致. 如果有多个系统用户会直接访问仓库, 管理员可能想把他们都放到
- 一个用户组里, 同时还要注意文件权限掩码 (记得阅读本章后面的
+ 一个用户组里, 同时还要注意文件模式创建屏蔽字 (记得阅读本章后面的
<xref linkend="svn.serverconfig.multimethod"/>). 即使在隧道模式下,
你也可以使用 <command>svnserve.conf</command> 屏蔽特定的访问方式,
只需要设置 <literal>auth-access = read</literal> 或
@@ -2626,7 +2626,7 @@
URL.</para>
-->
<para>在上面的例子里, <filename>/path/to/svnserve</filename> 可能是
- 一个定制化的 <command>svnserve</command> 包裹脚本, 脚本将会重新
+ 一个定制化的 <command>svnserve</command> 包装脚本, 脚本将会重新
设置文件权限掩码 (见 <xref linkend="svn.serverconfig.multimethod"/>).
例子还展示了如何修改 <command>svnserve</command> 的文件系统根目录,
当以守护进程方式运行 <command>svnserve</command> 时, 修改进程的根
@@ -2777,7 +2777,7 @@
-->
<para>在下面的几节里, 我们将使用正式名称
<filename>svnserve.conf</filename> 指代 <command>svnserve</command>
- 配置文件, 实际上配置文件还可以取其他名字, 但我们想念读者不会感到
+ 配置文件, 实际上配置文件还可以取其他名字, 但我们相信读者不会感到
迷惑.</para>
</note>
@@ -3064,7 +3064,7 @@
encryption).</para>
-->
<para>指定安全层加密算法最大的期望长度—整数的二进制位数.
- 特殊值 <literal>0</literal> 表示 <quote>不加密</quote>,
+ <literal>0</literal> 表示 <quote>不加密</quote>,
<literal>1</literal> 表示 <quote>只检查完整性</quote>,
默认值是 <literal>256</literal> (256 位加密).</para>
More information about the svnbook-dev
mailing list