![如何为 debian linux 创建 SVN 用户?](https://linux22.com/image/523549/%E5%A6%82%E4%BD%95%E4%B8%BA%20debian%20linux%20%E5%88%9B%E5%BB%BA%20SVN%20%E7%94%A8%E6%88%B7%EF%BC%9F.png)
我继承了一个 debian svn 服务器,现在我猜想已经分配了 svn 管理任务。问题是我现在需要添加一个新用户,我搜索了 google 却无果。
有人能给我指出正确的方向吗?
答案1
这取决于你的配置。请查看文件
[subversion_repos]/[仓库]/svnserve.conf
(在我的服务器上,存储库位于 /var/local/subversion)
svnserve.conf 指定 SVN 应如何验证用户。
例如,如果它使用该password-db
指令,则您的用户将位于它指向的文件中。
答案2
可以通过多种方式提供 Subversion 存储库;如果您使用捆绑的 svnserve 守护程序,则 Joril 的答案是正确的。
如果您正在使用 apache 模块 mod_dav_svn,那么您需要查看 Apache 配置并确定 Apache 使用什么作为其用户身份验证基础。
我没有 Debian 服务器可以在这里检查,但我的 Ubuntu 用作/etc/apache2
标准 apache 配置路径。
答案3
如果您的 SVN 通过 apache 提供服务,您可以使用以下步骤快速找出要修改/更新的正确文件。
cd /etc/apache2
grep -r AuthUserFile *
这应该会让你得到 apache 用于验证 SVN 服务器访问的 htpasswd 文件的文件名。
然后您可以像这样添加新用户:
htpasswd filename newuser
如果 grep 行返回多个匹配项,则必须手动检查 apache 配置以确定适合您的存储库的配置。还要搜索 AuthzSVNAccessFile - 您可能必须授予此新用户访问正确路径的明确权限,具体取决于您的配置。这是一个“ini”格式的文件,易于修改,但如果您有它并且对语法有疑问,请发布它。
答案4
如果您的用户通过 TortoiseSVN 等 Windows 客户端连接,那么他们很可能使用 ssh 进行连接。
您需要在服务器上创建一个具有 ssh 访问权限的用户。可能已创建了一个可以访问 svn 存储库目录的组。授予用户该组的成员资格或创建一个组。用户需要对存储库具有读写访问权限才能签入和签出文件。