cvs 导入:无法创建 /opt/cvs/test_proj 的路径:权限被拒绝

cvs import: cannot make path to /opt/cvs/test_proj: Permission denied

我使用的是 Centos 7.5 我使用 yum 安装了 cvs 和 cvs-inetd 我按照 https://www.linuxfromscratch.org/blfs/view/5.1/server/cvsserver.html

中的步骤操作

已启动 xinet 服务,似乎一切正常。 但是当我尝试创建一个新的存储库时。失败了

$ cvs import -m "test repo" test_proj HEAD MAIN
I test_proj/test_proj/test.o
cvs import: cannot make path to /opt/cvs/test_proj: Permission denied
cvs import: failed to create lock directory for `/opt/cvs/test_proj' (/opt/cvs/test_proj/#cvs.lock): No such file or directory
cvs import: lock failed - giving up
cvs import: Importing /opt/cvs/test_proj/test_proj
cvs import: ERROR: cannot mkdir /opt/cvs/test_proj/test_proj -- not added: No such file or directory

No conflicts created by this import

当我将旧的 CVS 存储库复制到 /opt/cvs 并尝试结帐时出现同样的错误。

我做错了什么?有什么想法吗?

权限被拒绝,因为您登录的用户没有在 /opt/cvs/* 中创建新文件的权限,所以只需成为超级用户并执行如下操作:

sudo cvs import -m "test repo" test_proj HEAD MAIN

我没有找到确切的根本原因,但发现与 SELINUX 安全性有关。我在 /etc/selinux/config

上关闭了 SELinux
SELINUX=disabled

然后重新启动服务器,一切都像魔术一样工作。现在可以结帐并添加新的回购。我暂时关闭安全性很好。由于这些组件将迁移到 git 并且此服务器将升级。 不建议任何打算永久使用 CVS 的人使用此解决方案。