- 浏览: 5161208 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
silence19841230:
先拿走看看
SpringBoot2.0开发WebSocket应用完整示例 -
wallimn:
masuweng 写道发下源码下载地址吧!三个相关文件打了个包 ...
SpringBoot2.0开发WebSocket应用完整示例 -
masuweng:
发下源码下载地址吧!
SpringBoot2.0开发WebSocket应用完整示例 -
masuweng:
SpringBoot2.0开发WebSocket应用完整示例 -
wallimn:
水淼火 写道你好,我使用以后,图标不显示,应该怎么引用呢,谢谢 ...
前端框架iviewui使用示例之菜单+多Tab页布局
虽然网上有很多关于CVS服务器的配置文档供大家参考,但是本着“纸上得来终觉浅,绝知此事须躬行”的态度,还是自己动手安装一下。因为别人配置的环境和 自己的毕竟不大一样,操作起来可能会有一些步骤有问题。只有我们自己遇到问题并解决时,才能够对CVS服务器的配置理解的更加深入。也建议各位需要用到CVS的朋友也动手装一下,实现你自己的CVS服务器。
闲话少说,转入正题。我用的操作系统是:Fedora 7
(注意:以下操作是以root身份操作的#su root)
一、cvs服务器安装
首先确保系统安装有cvs
# rpm -qa|grep cvs
cvs-1.11.22-9.fc7
如果命令输出类似于上面的输出则说明系统已经安装有cvs,否则就需要从安装光盘中安装cvs的rpm包。
但安装完Fedora7后系统自己就安装好CVS软件了。
前期工作:
Fedora7默认是没有安装上xinetd服务,所以先安装xinetd服务
#yum install xinetd
二、CVS服务器端的配置
1.创建cvs组和用户
1)创建cvs组
#/usr/sbin/groupadd cvs
2)创建新用户HOME目录
#mkdir /home/cvsroot
3)添加新用户cvsroot,并将其添加至cvs组,并指定其HOME目录
#/usr/sbin/useradd -g cvs -G cvs -d /home/cvsroot cvsroot
4)设置cvsroot用户的密码,我这里的密码为:chongqing
#passwd cvsroot
Changing password for user cvsroot.
新的 UNIX 口令:
重新输入新的 UNIX 口令:
passwd: all authentication tokens updated successfully.
5)更改/home/cvsroot/目录及其子目录的属主和属组
因为是在root用户下间的该目录,他的属主和属组都是root,这里我们要将其属主改为cvsroot,属组改为cvs,保证cvs组的用户对该目录有相应的权限。
# chown -R cvsroot.cvs /home/cvsroot/
6)更改/home/cvsroot目录属性
保证cvsroot同组(cvs组)的其他用户也有读写和执行权,我们以后要为cvs组添加用户
# chmod -R 775 /home/cvsroot/
(注意:以下操作是以cvsroot身份进行操作的)
2.切换至cvsroot用户,并创建一个仓库
1)切换用户
#su cvsroot
口令:
bash-3.2$
2)设置全局变量CVSROOT,指定仓库所在的目录
$export CVSROOT=/home/cvsroot/
3)创建仓库
$ cvs init
OK,到目前为目止,就可以在本机上以cvsroot身份提交源代码了
3.提交源入源代码
1)进入你想提交给CVS服务器的代码所在目录
我这里是/home/HelloWorld/
bash-3.2$ cd /home/HelloWorld/
bash-3.2$ ls
helloworld.cpp makefile
装载cvs import -m "[repository test]" [cvstest] [vendortag] [releasetag]
-m后面引号内填入log内容,接下来是源代码模块名称,接着是装载者,最后是标识符号,我这里是:
2)提交工程
$ cvs import -m "my cvs project" myProject cvsroot start
N myProject/makefile
N myProject/helloworld.cpp
No conflicts created by this import
此时,我们的源码也提交了,说明module已经建立了。其目录为:/home/cvsroot/myProject/
$ ls -l /home/cvsroot
总计 20
drwxrwxr-x 3 cvsroot cvs 4096 10-14 10:59 CVSROOT
drwxrwxr-x 2 cvsroot cvs 4096 10-14 12:11 myProject
3)checkout工程
如果我们在root用户(或者其他用户,但必须保证该用户对于存放module的目录有写的权限)下测试,checkout出这一个module,可以执行如下:
# cvs -d /home/cvsroot checkout myProject
cvs checkout: Updating myProject
U myProject/helloworld.cpp
U myProject/makefile
说明在本地可以checkout出来,而且他会自动在当前目录下创建以该module名为名的目录项,不管你checkout出来的是一个源码文件还是整个module。
4.创建登录CVS服务器的用户和密码
CVS默认使用系统用户登录,为了系统安全性的考虑也可以使用独立的用户管理。CVS用户名和密码保存在CVSROOT目录下的passwd文件中,格式为:
[cvs 用户名]:[加密的口令]:[等效系统用户名]
1)先创建一个passwd文件
$ cd /home/cvsroot/CVSROOT/
$ htpasswd -c passwd cvsuser
New password:
Re-type new password:
Adding password for user cvsuser
$ cat passwd
cvsuser:R9oDKNeysScdw
$vi passwd
在末尾添加 :cvsroot
作用是映射到cvsroot用户,最终结果如下:
cvsuser:R9oDKNeysScdw:cvsroot
在创建其他用户时,不用带参数
#htpasswd passwd 用户名
New password:
Re-type new password:
要彻底防止使用系统帐号登陆,可以编辑CVSROOT目录下的config文件,把:
#SystemAuth=yes
这一行前面的#去掉,改为如下形式:
SystemAuth=no
CVS就不会验证系统用户了,否则当用户名不在passwd文件中时,CVS会进行系统用户的验证。
2)配置cvs用户的读写权限
使用 CVSROOT目录下的readers和writers文件进行这个工作。这2个文件默认也是没有的,没关系,自己创建就可以了。
readers文件记录 拥有只读权限的用户名,每行一个用户;
writers文件记录拥有读写权限的用户名,也是每行一个用户。
注意, readers文件比writers优先,也就是说出现在readers中的用户将会是只读的,不管writers文件中是否存在该用户。
5.设置开机启动CVS服务
1)检查/etc/services中,cvspserver是否开启。
cvspserver是远程登录CVS服务器时对用户的验证方式。
$cat /etc/services | grep cvspserver
cvspserver 2401/tcp # CVS client/server operations
cvspserver 2401/udp # CVS client/server operations
如果命令输出类似于上面的输出,这说明我的系统已打开该服务。
2)创建cvspserver文件
切换至root用户下:
#su root
cd /etc/xinetd.d/
#vi cvspserver
编辑该文件,内容如下:
service cvspserver
{
disable = no
socket_type = stream
wait = no
user = root
server = /usr/bin/cvs
server_args = -f --allow-root=/home/cvsroot pserver
log_on_success += USERID
log_on_failure += USERID
}
其中,--allow-root=/home/cvsroot即仓库所在目录。
注意:每行的第一个"="左右两侧要有一个空格。
3)然后更改/etc/xinetd.d/cvs
否则的话,在后面的远程登录本机时会出现下面的问题
“没有该仓库”
[test@liu ~]$ cvs -d :pserver:cvsuser@10.15.5.89:/home/cvsroot login
Logging in to :pserver:cvsuser@10.15.5.89:2401/home/cvsroot
CVS password:
/home/cvsroot: no such repository
[test@liu ~]$
更改方法如下:
把disable=yes 改为 disable=no ;env和server_args中路径改为你的cvsroot路径,我的是/home/cvsroot
更改后的内容如下
# default: off
# description: The CVS service can record the history of your source "
# files. CVS stores all the versions of a file in a single "
# file in a clever way that only stores the differences "
# between versions.
service cvspserver
{
disable = no
port = 2401
socket_type = stream
protocol = tcp
wait = no
user = root
passenv = PATH
server = /usr/bin/cvs
env = HOME=/home/cvsroot
server_args = -f --allow-root=/home/cvsroot pserver
# bind = 127.0.0.1
}
3)重启xinetd服务,使配置生效
重启xinetd
# /etc/init.d/xinetd restart
停止 xinetd: [确定]
启动 xinetd: [确定]
确定cvspserver是否启动
#netstat -l | grep cvspserver
tcp 0 0 *:cvspserver *:* LISTEN
4)最后还必须检查防火墙的设置,看2401端口是否打开打开
#/sbin/iptables -L&line;grep cvs
如果看到
ACCEPT tcp -- anywhere anywhere tcp dpt:cvspserver
说明端口已经打开,否则请打开防火墙2401端口
#/sbin/iptables -A INPUT -i eth0 -p tcp --dport 2401 -j ACCEPT
#/sbin/service iptables save
至此,CVS服务器配置全部完成,下面进行测试。
三、客户端测试
1、连接CVS服务器
刚才建立的CVS服务器端的IP为:10.15.5.89
客户端主机使用非root用户,我的用户名为test
首先建立环境变量CVSROOT,以刚才建立的CVS用户cvsuser登录:
[test@liu ~]$ export CVSROOT=:pserver:cvsuser@10.15.5.89:/home/cvsroot
[test@liu ~]$ cvs login
Logging in to :pserver:cvsuser@10.15.5.89:2401/home/cvsroot
CVS password:
[test@liu ~]$
如果没有错误提示,则代表成功登录CVS服务器。
---------------------------------------
在此却很有可能出现:unrecognized auth response from 10.15.5.89: cvs pserver: cannot open /home/cvsroot/CVSROOT/config: Permission denied
尤其是当你的linux版本较高时。
这是由于selinux的原因,这是一种安全机制,具体可以上网查。
只要关闭selinux就可以了:
编辑/etc/selinux/config,
将SELINUX设置为SELINUX=disabled,禁用SELINUX。
重启电脑就好了
---------------------------------------
2、检出模块
我们上面已经建立了一个仓库了: myProject
我们在客户端将该模块checkout
[test@liu ~]$ cvs checkout myProject
cvs checkout: Updating myProject
U myProject/helloworld.cpp
U myProject/makefile
[test@liu ~]$
好了,在当前目录下生成了目录myProject,现在你就可以进入myProject进行修改,删除,提交等操作了。
四、现在我们来说说多仓库的建立
注意,我们用cvsroot仅仅是用来管理,所以,不要在它$HOME下面创建任何仓库
另外,cvsroot用户的初始环境不应该包含非空的$CVSROOT.(也就是必须设置环境变量) 使用cvsroot来进行的任何管理工作都指明CVSROOT是一个好的习惯.
OK,开始给单个项目建仓库
假设有两个项目,project1,project2,希望单独存放,便于管理
1、分别给两个工程建立各自的cvs主目录
#mkdir /home/cvsroot/pro1
#mkdir /home/cvsroot/pro2
2、 分别更改pro1和pro2目录及其子目录的属主和属组
#chown cvsroot.cvs /home/cvsroot/pro1
#chown cvsroot.cvs /home/cvsroot/pro2
3、更改目录pro1和pro2的权限
#chmod 2775 /home/cvsroot/pro1
#chmod 2775 /home/cvsroot/pro2
(更高的安全要求则$chmod 2770 /home/cvsroot/pro1)
4、OK,开始建立仓库
#su cvsroot
$cvs -d /home/cvsroot/pro1 init
$cvs -d /home/cvsroot/pro2 init
$chmod 2775 /home/cvsroot/pro1
$chmod 2775 /home/cvsroot/pro2
5、修改启动文件
#vi /etc/xinetd.d/cvspserver
内容如下:
service cvspserver
{
disable = no
socket_type = stream
wait = no
user = root
server = /usr/bin/cvs
server_args = -f --allow-root=/home/cvsroot/pro1 --allow-root =/home/cvsroot/pro2 pserver
log_on_success += USERID
log_on_failure += USERID
}
然后更改/etc/xinetd.d/cvs, 否则的话,在后面的远程登录本机时会出现下面的问题
“没有该仓库”
[test@liu ~]$ cvs -d :pserver:cvsuser@10.15.5.89:/home/cvsroot/pro1 login
Logging in to :pserver:cvsuser@10.15.5.89:2401/home/cvsroot/pro1
CVS password:
/home/cvsroot/pro1: no such repository
[test@liu ~]$
更改方法如下:
把disable=yes 改为 disable=no ;env和server_args中路径改为你的cvsroot路径,我的是/home/cvsroot
更改后的内容如下
# default: off
# description: The CVS service can record the history of your source "
# files. CVS stores all the versions of a file in a single "
# file in a clever way that only stores the differences "
# between versions.
service cvspserver
{
disable = no
port = 2401
socket_type = stream
protocol = tcp
wait = no
user = root
passenv = PATH
server = /usr/bin/cvs
env = HOME=/home/cvsroot
server_args = -f –allow-root=/home/cvsroot/pro1 --allow-root=/home/cvsroot/pro2 pserver
# bind = 127.0.0.1
}
6、重启xinetd服务,使配置生效
重启xinetd
# /etc/init.d/xinetd restart
停止 xinetd: [确定]
启动 xinetd: [确定]
7、建立更多的仓库的技巧
由于xinetd的server_args长度限制,当你想运行很多的单个仓库的时候,可以这么做
1)修改cvspserver和cvs文件
#vi /etc/xinetd.d/cvspserver
#vi /etc/xinetd.d/cvs
修改它们的内容中如下:
service cvspserver
{
disable = no
socket_type = stream
wait = no
user = root
server = /home/cvsroot/cvs.run
log_on_success += USERID
log_on_failure += USERID
}
2)然后写脚本/home/cvsroot/cvs.run
#vi /home/cvsroot/cvs.run
脚本内容如下:
#!/bin/bash
/usr/bin/cvs -f "
--allow-root=/home/cvsroot/pro1 "
--allow-root=/home/cvsroot/pro2 "
--allow-root=/home/cvsroot/pro3 "
--allow-root=/home/cvsroot/pro4 "
--allow-root=/home/cvsroot/pro5 "
--allow-root=/home/cvsroot/pro6 "
pserver
3)更改cvs.run的权限:
#chmod +x /home/cvsroot/cvs.run
4)重启服务:
#service xinetd restart
好了,现在多个独立的仓库也建立好了
闲话少说,转入正题。我用的操作系统是:Fedora 7
(注意:以下操作是以root身份操作的#su root)
一、cvs服务器安装
首先确保系统安装有cvs
# rpm -qa|grep cvs
cvs-1.11.22-9.fc7
如果命令输出类似于上面的输出则说明系统已经安装有cvs,否则就需要从安装光盘中安装cvs的rpm包。
但安装完Fedora7后系统自己就安装好CVS软件了。
前期工作:
Fedora7默认是没有安装上xinetd服务,所以先安装xinetd服务
#yum install xinetd
二、CVS服务器端的配置
1.创建cvs组和用户
1)创建cvs组
#/usr/sbin/groupadd cvs
2)创建新用户HOME目录
#mkdir /home/cvsroot
3)添加新用户cvsroot,并将其添加至cvs组,并指定其HOME目录
#/usr/sbin/useradd -g cvs -G cvs -d /home/cvsroot cvsroot
4)设置cvsroot用户的密码,我这里的密码为:chongqing
#passwd cvsroot
Changing password for user cvsroot.
新的 UNIX 口令:
重新输入新的 UNIX 口令:
passwd: all authentication tokens updated successfully.
5)更改/home/cvsroot/目录及其子目录的属主和属组
因为是在root用户下间的该目录,他的属主和属组都是root,这里我们要将其属主改为cvsroot,属组改为cvs,保证cvs组的用户对该目录有相应的权限。
# chown -R cvsroot.cvs /home/cvsroot/
6)更改/home/cvsroot目录属性
保证cvsroot同组(cvs组)的其他用户也有读写和执行权,我们以后要为cvs组添加用户
# chmod -R 775 /home/cvsroot/
(注意:以下操作是以cvsroot身份进行操作的)
2.切换至cvsroot用户,并创建一个仓库
1)切换用户
#su cvsroot
口令:
bash-3.2$
2)设置全局变量CVSROOT,指定仓库所在的目录
$export CVSROOT=/home/cvsroot/
3)创建仓库
$ cvs init
OK,到目前为目止,就可以在本机上以cvsroot身份提交源代码了
3.提交源入源代码
1)进入你想提交给CVS服务器的代码所在目录
我这里是/home/HelloWorld/
bash-3.2$ cd /home/HelloWorld/
bash-3.2$ ls
helloworld.cpp makefile
装载cvs import -m "[repository test]" [cvstest] [vendortag] [releasetag]
-m后面引号内填入log内容,接下来是源代码模块名称,接着是装载者,最后是标识符号,我这里是:
2)提交工程
$ cvs import -m "my cvs project" myProject cvsroot start
N myProject/makefile
N myProject/helloworld.cpp
No conflicts created by this import
此时,我们的源码也提交了,说明module已经建立了。其目录为:/home/cvsroot/myProject/
$ ls -l /home/cvsroot
总计 20
drwxrwxr-x 3 cvsroot cvs 4096 10-14 10:59 CVSROOT
drwxrwxr-x 2 cvsroot cvs 4096 10-14 12:11 myProject
3)checkout工程
如果我们在root用户(或者其他用户,但必须保证该用户对于存放module的目录有写的权限)下测试,checkout出这一个module,可以执行如下:
# cvs -d /home/cvsroot checkout myProject
cvs checkout: Updating myProject
U myProject/helloworld.cpp
U myProject/makefile
说明在本地可以checkout出来,而且他会自动在当前目录下创建以该module名为名的目录项,不管你checkout出来的是一个源码文件还是整个module。
4.创建登录CVS服务器的用户和密码
CVS默认使用系统用户登录,为了系统安全性的考虑也可以使用独立的用户管理。CVS用户名和密码保存在CVSROOT目录下的passwd文件中,格式为:
[cvs 用户名]:[加密的口令]:[等效系统用户名]
1)先创建一个passwd文件
$ cd /home/cvsroot/CVSROOT/
$ htpasswd -c passwd cvsuser
New password:
Re-type new password:
Adding password for user cvsuser
$ cat passwd
cvsuser:R9oDKNeysScdw
$vi passwd
在末尾添加 :cvsroot
作用是映射到cvsroot用户,最终结果如下:
cvsuser:R9oDKNeysScdw:cvsroot
在创建其他用户时,不用带参数
#htpasswd passwd 用户名
New password:
Re-type new password:
要彻底防止使用系统帐号登陆,可以编辑CVSROOT目录下的config文件,把:
#SystemAuth=yes
这一行前面的#去掉,改为如下形式:
SystemAuth=no
CVS就不会验证系统用户了,否则当用户名不在passwd文件中时,CVS会进行系统用户的验证。
2)配置cvs用户的读写权限
使用 CVSROOT目录下的readers和writers文件进行这个工作。这2个文件默认也是没有的,没关系,自己创建就可以了。
readers文件记录 拥有只读权限的用户名,每行一个用户;
writers文件记录拥有读写权限的用户名,也是每行一个用户。
注意, readers文件比writers优先,也就是说出现在readers中的用户将会是只读的,不管writers文件中是否存在该用户。
5.设置开机启动CVS服务
1)检查/etc/services中,cvspserver是否开启。
cvspserver是远程登录CVS服务器时对用户的验证方式。
$cat /etc/services | grep cvspserver
cvspserver 2401/tcp # CVS client/server operations
cvspserver 2401/udp # CVS client/server operations
如果命令输出类似于上面的输出,这说明我的系统已打开该服务。
2)创建cvspserver文件
切换至root用户下:
#su root
cd /etc/xinetd.d/
#vi cvspserver
编辑该文件,内容如下:
service cvspserver
{
disable = no
socket_type = stream
wait = no
user = root
server = /usr/bin/cvs
server_args = -f --allow-root=/home/cvsroot pserver
log_on_success += USERID
log_on_failure += USERID
}
其中,--allow-root=/home/cvsroot即仓库所在目录。
注意:每行的第一个"="左右两侧要有一个空格。
3)然后更改/etc/xinetd.d/cvs
否则的话,在后面的远程登录本机时会出现下面的问题
“没有该仓库”
[test@liu ~]$ cvs -d :pserver:cvsuser@10.15.5.89:/home/cvsroot login
Logging in to :pserver:cvsuser@10.15.5.89:2401/home/cvsroot
CVS password:
/home/cvsroot: no such repository
[test@liu ~]$
更改方法如下:
把disable=yes 改为 disable=no ;env和server_args中路径改为你的cvsroot路径,我的是/home/cvsroot
更改后的内容如下
# default: off
# description: The CVS service can record the history of your source "
# files. CVS stores all the versions of a file in a single "
# file in a clever way that only stores the differences "
# between versions.
service cvspserver
{
disable = no
port = 2401
socket_type = stream
protocol = tcp
wait = no
user = root
passenv = PATH
server = /usr/bin/cvs
env = HOME=/home/cvsroot
server_args = -f --allow-root=/home/cvsroot pserver
# bind = 127.0.0.1
}
3)重启xinetd服务,使配置生效
重启xinetd
# /etc/init.d/xinetd restart
停止 xinetd: [确定]
启动 xinetd: [确定]
确定cvspserver是否启动
#netstat -l | grep cvspserver
tcp 0 0 *:cvspserver *:* LISTEN
4)最后还必须检查防火墙的设置,看2401端口是否打开打开
#/sbin/iptables -L&line;grep cvs
如果看到
ACCEPT tcp -- anywhere anywhere tcp dpt:cvspserver
说明端口已经打开,否则请打开防火墙2401端口
#/sbin/iptables -A INPUT -i eth0 -p tcp --dport 2401 -j ACCEPT
#/sbin/service iptables save
至此,CVS服务器配置全部完成,下面进行测试。
三、客户端测试
1、连接CVS服务器
刚才建立的CVS服务器端的IP为:10.15.5.89
客户端主机使用非root用户,我的用户名为test
首先建立环境变量CVSROOT,以刚才建立的CVS用户cvsuser登录:
[test@liu ~]$ export CVSROOT=:pserver:cvsuser@10.15.5.89:/home/cvsroot
[test@liu ~]$ cvs login
Logging in to :pserver:cvsuser@10.15.5.89:2401/home/cvsroot
CVS password:
[test@liu ~]$
如果没有错误提示,则代表成功登录CVS服务器。
---------------------------------------
在此却很有可能出现:unrecognized auth response from 10.15.5.89: cvs pserver: cannot open /home/cvsroot/CVSROOT/config: Permission denied
尤其是当你的linux版本较高时。
这是由于selinux的原因,这是一种安全机制,具体可以上网查。
只要关闭selinux就可以了:
编辑/etc/selinux/config,
将SELINUX设置为SELINUX=disabled,禁用SELINUX。
重启电脑就好了
---------------------------------------
2、检出模块
我们上面已经建立了一个仓库了: myProject
我们在客户端将该模块checkout
[test@liu ~]$ cvs checkout myProject
cvs checkout: Updating myProject
U myProject/helloworld.cpp
U myProject/makefile
[test@liu ~]$
好了,在当前目录下生成了目录myProject,现在你就可以进入myProject进行修改,删除,提交等操作了。
四、现在我们来说说多仓库的建立
注意,我们用cvsroot仅仅是用来管理,所以,不要在它$HOME下面创建任何仓库
另外,cvsroot用户的初始环境不应该包含非空的$CVSROOT.(也就是必须设置环境变量) 使用cvsroot来进行的任何管理工作都指明CVSROOT是一个好的习惯.
OK,开始给单个项目建仓库
假设有两个项目,project1,project2,希望单独存放,便于管理
1、分别给两个工程建立各自的cvs主目录
#mkdir /home/cvsroot/pro1
#mkdir /home/cvsroot/pro2
2、 分别更改pro1和pro2目录及其子目录的属主和属组
#chown cvsroot.cvs /home/cvsroot/pro1
#chown cvsroot.cvs /home/cvsroot/pro2
3、更改目录pro1和pro2的权限
#chmod 2775 /home/cvsroot/pro1
#chmod 2775 /home/cvsroot/pro2
(更高的安全要求则$chmod 2770 /home/cvsroot/pro1)
4、OK,开始建立仓库
#su cvsroot
$cvs -d /home/cvsroot/pro1 init
$cvs -d /home/cvsroot/pro2 init
$chmod 2775 /home/cvsroot/pro1
$chmod 2775 /home/cvsroot/pro2
5、修改启动文件
#vi /etc/xinetd.d/cvspserver
内容如下:
service cvspserver
{
disable = no
socket_type = stream
wait = no
user = root
server = /usr/bin/cvs
server_args = -f --allow-root=/home/cvsroot/pro1 --allow-root =/home/cvsroot/pro2 pserver
log_on_success += USERID
log_on_failure += USERID
}
然后更改/etc/xinetd.d/cvs, 否则的话,在后面的远程登录本机时会出现下面的问题
“没有该仓库”
[test@liu ~]$ cvs -d :pserver:cvsuser@10.15.5.89:/home/cvsroot/pro1 login
Logging in to :pserver:cvsuser@10.15.5.89:2401/home/cvsroot/pro1
CVS password:
/home/cvsroot/pro1: no such repository
[test@liu ~]$
更改方法如下:
把disable=yes 改为 disable=no ;env和server_args中路径改为你的cvsroot路径,我的是/home/cvsroot
更改后的内容如下
# default: off
# description: The CVS service can record the history of your source "
# files. CVS stores all the versions of a file in a single "
# file in a clever way that only stores the differences "
# between versions.
service cvspserver
{
disable = no
port = 2401
socket_type = stream
protocol = tcp
wait = no
user = root
passenv = PATH
server = /usr/bin/cvs
env = HOME=/home/cvsroot
server_args = -f –allow-root=/home/cvsroot/pro1 --allow-root=/home/cvsroot/pro2 pserver
# bind = 127.0.0.1
}
6、重启xinetd服务,使配置生效
重启xinetd
# /etc/init.d/xinetd restart
停止 xinetd: [确定]
启动 xinetd: [确定]
7、建立更多的仓库的技巧
由于xinetd的server_args长度限制,当你想运行很多的单个仓库的时候,可以这么做
1)修改cvspserver和cvs文件
#vi /etc/xinetd.d/cvspserver
#vi /etc/xinetd.d/cvs
修改它们的内容中如下:
service cvspserver
{
disable = no
socket_type = stream
wait = no
user = root
server = /home/cvsroot/cvs.run
log_on_success += USERID
log_on_failure += USERID
}
2)然后写脚本/home/cvsroot/cvs.run
#vi /home/cvsroot/cvs.run
脚本内容如下:
#!/bin/bash
/usr/bin/cvs -f "
--allow-root=/home/cvsroot/pro1 "
--allow-root=/home/cvsroot/pro2 "
--allow-root=/home/cvsroot/pro3 "
--allow-root=/home/cvsroot/pro4 "
--allow-root=/home/cvsroot/pro5 "
--allow-root=/home/cvsroot/pro6 "
pserver
3)更改cvs.run的权限:
#chmod +x /home/cvsroot/cvs.run
4)重启服务:
#service xinetd restart
好了,现在多个独立的仓库也建立好了
发表评论
-
CentOS在Docker中安装Oracle
2024-02-06 12:13 11601.拉取Oracle镜像,并检 ... -
CentOS7.3防火墙配置
2019-07-23 21:16 11231.查看firewall服务状态 systemctl stat ... -
Linux操作个人总结(持续完善中)
2019-04-09 23:39 9201.查找指定进程并Kill kill -9 `ps -ef|g ... -
crontab执行脚本出错
2016-06-29 01:03 2985最近经常碰到关于crontab不能执行的,初步总结了有以下几个 ... -
一个简单的Shell脚本
2016-06-08 17:52 1585最近新学linux的shell编程。试着写了一个遍历资源目 ... -
Linux Shell编程入门
2016-05-12 16:43 1241转自:http://www.cnblogs.com ... -
常用awk命令
2016-05-04 22:29 1915转自:http://www.cnblogs.com/repos ... -
Valgrind简单用法
2016-01-16 11:18 2204转载鸣谢。原文地址:http://www.cnblogs.co ... -
配置RHEL6使用CentOS6的yum源
2014-12-29 11:25 1694在服务器上安装了RHEL6,没有购买RHN服务,所以使用Cen ... -
批处理详解
2012-07-09 23:45 5234第一章 批处理基础 第 ... -
linux 下制作可启动 img/iso 文件
2012-04-18 11:49 5189来源:http://hi.baidu.com/sxpspace ... -
利用U盘加载控制器驱动来安装Linux系统
2012-04-18 10:51 2919转自:http://hi.baidu.com/ku ... -
使用VMWare体验Openfiler
2012-04-02 16:01 5981网上可以下载到, ... -
Linux网卡配置
2012-04-02 15:43 2047(一)网卡配置文件 (1)/etc/sysconfig/net ... -
成功安装Oracle10g的RAC
2012-01-13 22:28 4510安装虚拟机,我使用的是VMware-server-2.0.2- ... -
Linux修改字符界面下的屏幕分辨率
2011-09-26 11:37 2142grub方式 编辑grub.conf /boot/grub/ ... -
Linux下Telnet、ssh服务的配置和使用
2011-08-05 00:01 1966转自:http://hi.baidu.com/jon028/b ... -
cvs安装配置[for linux]
2009-07-03 23:55 23351、 服务器安装 从www.cvsnt.org下载CVS ... -
RedHat AS 4上成功安装Oracle10g
2009-05-01 20:51 2850前段时间,搜集了些Linux上安装Oracle的资料,看了 ... -
RedHat Linux AS4下安装Oracle 10g[推荐]
2009-05-01 20:35 4963推荐,经本人实践检验 ...
相关推荐
### CVS for Linux 安装与使用指南 #### 一、CVS概述 CVS (Concurrent Versions System) 是一个开源的版本控制系统,主要用于追踪文件的变化历史。它可以帮助开发者轻松地管理项目的版本,尤其是在团队协作中非常...
【cvs-1.12.13 for Linux】是一个针对Linux操作系统的版本控制系统CVS(Concurrent Versions System)的特定版本。CVS是开源软件,广泛用于源代码管理,它允许开发团队协同工作,跟踪代码变更历史,合并不同开发者的...
压缩包内的文件“CVS for the developer or amateur.pdf”可能是一份详细的CVS使用教程,适合初学者或有经验的开发者参考。而“www.pudn.com.txt”可能是额外的资源链接或者说明文档,可以帮助读者找到更多的学习...
### Linux 下 CVS 使用指南 #### 一、简介 CVS (Concurrent Versions System) 是一款开源的版本控制系统,主要用于管理软件开发过程中的源代码版本控制。它能够支持多个开发者同时在一个项目上工作,并确保每个人...
CVS for Windows 资料 本文将指导您如何安装和配置 CVS(Concurrent Versions System)服务器端和客户端在 Windows 环境下。CVS 是版本控制的利器,广泛应用于 Linux 和 Windows 平台。 安装版本 本文使用的是 ...
在本例中,我们将使用Windows XP Professional作为CVS服务器的操作系统,并安装CVSNT(CVS for Windows NT)作为服务器端软件。 ##### 安装CVSNT 首先,从官方网站http://www.cvsnt.org下载CVSNT的最新版本(本文...
### CVS学习过程中遇到的重要问题的详细解答 #### 一、基于Wincvs的配置问题(共22个) ##### 1. win下的权限问题 **问题:** 在Windows环境下,`rwc=` 是否相当于Linux下的 `rwx`?如果希望给予某个用户只读权限...
cvs login: authorization failed: server 172.18.23.201 rejected access to /data/cvsroot for user jiangju ***** CVS exited normally with code 1 ***** ``` **1.2.2 注销** 在使用完毕后,为保证信息安全,...
CVS(Concurrent Versions System)是一种广泛使用的版本控制系统,用于管理和追踪软件开发过程中的源代码、文档等资料的变更历史。它采用客户端/服务器(C/S)架构,使得开发团队成员可以协同工作,有效管理版本,...
- **PostgreSQL 的安装与配置**:详细介绍 PostgreSQL 的安装过程及初始化设置。 - **数据库规范化**:解释第一、第二、第三范式,以及反规范化的基本概念。 - **简单数据库示例**:构建一个简单的数据库,演示如何...
CVS(Concurrent Versions System)是一种版本控制系统,用于管理软件开发过程中产生的源代码、文档等资料,记录它们的更新历史,并促进团队间的协作。CVS采用客户端/服务器架构,支持多种操作系统,包括Linux、...
虽然传统的Linux/Unix平台是CVS服务器部署的首选环境,但在Windows平台上同样可以通过一系列开源工具搭建起功能完善的CVS服务器。 本文将详细介绍如何在Windows环境下搭建CVS服务器,并添加源代码跟踪功能,以满足...
- **CVS for Red Hat Linux環境構築ガイド**:介绍如何在Red Hat Linux环境下搭建CVS环境。 - **eclipse2.1利用ガイド(Tomcat4.x版)** 和 **eclipse2.1利用ガイド(Weblogic7.0版)**:分别针对Tomcat和Weblogic服务器...
CVS支持多种操作系统,如Linux和Windows,并且可以通过多种图形用户界面进行操作。 #### 二、CVS的安装 ##### 2.1 安装CVSNT 对于Windows系统,推荐使用CVSNT作为CVS服务器端的实现。安装过程相对简单,需要注意...
本文将详细介绍如何在Linux系统(CentOS 4.6)上安装并配置SVN独立服务器,包括安装过程、配置步骤以及必要的测试方法。 #### 二、SVN介绍 Subversion,简称SVN,是一款开源的版本控制系统,由CollabNet开发维护。...
目前在Linux和Windows等不同操作系统平台上均可以找到相应的CVS版本。例如,可以在[http://www.cvsnt.org](http://www.cvsnt.org) 或 [http://sourceforge.net/projects/cvsgui/]...