我可以使用cvs root的符号链接来简化服务器整合吗?

时间:2009-03-07 16:20:34

标签: cvs symlink

我们正在将两台旧的cvs服务器整合到一个新的盒子上。

我曾希望如下: 更改oldserver1和oldserver2的dns条目(以及一些用户帐户维护)将使移动对cvs用户透明。

问题:
由于每台旧服务器上的cvs根目录不同,我遇到了问题。

背景
旧服务器具有以下cvs存储库目录:

  • 旧server1 cvs root:/ cvshome
  • 旧server2 cvs root:/ usr / local / cvs

在我们使用默认存储库目录的发行版上是/ var / cvs。我选择坚持这一点,即:

  • 新服务器cvs root:/ var / cvs

目标
我希望对现有的签出项目造成最小的干扰,即不必查找/替换公司每个硬盘上的所有“Root”文件。

为了澄清,旧server1的CVSROOT和CVS / Root条目如下所示:

pserver:username@oldserver1:/cvshome

尝试
我试过这个: 在新服务器上创建一个符号链接

/cvshome points to /var/cvs
ln -s /var/cvs /cvshome

但是,当我尝试更新时(即从指向旧服务器1的工作站),我收到此错误:

/cvshome : no such repository

摘要
我可以使用链接到'别名'cvs存储库吗?

OR 我是否需要“咬紧牙关”并更改所有硬盘上的所有“Root”文件?

感谢,
纸币

2 个答案:

答案 0 :(得分:1)

在Linux上,当你给命令指向指向目录的符号链接的路径时,无论你是否附加斜杠都会有所不同:

$ ls -l /cvsroot

将列出符号链接的inode,而

$ ls -l /cvsroot/

将列出符号链接指向的目录的内容。如果cvsroot是实际目录,则此行为与您将看到的行为不同。

我不确定这是否是您的问题,但请尝试附加斜线。如果它有帮助,您应该能够对存储库根目录下的所有内容进行检查,更新等。

答案 1 :(得分:0)

这可能对某人有所帮助,很遗憾对旧帖子发表评论。

对我有用的是在/etc/xinetd.conf中更改--allow-root:

server_args = -f --allow-root /usr/local/cvsroot pserver

符号链接/别名现在可以在我移动存储库的新服务器上运行。