开源软件现状
开源软件当今已经发展的如火如荼,对于免费的软件资源可以极大的降低企业的成本,提高工作效率。开源软件的优点这里不在啰嗦。至于它也不是没有缺点的。本部分内容介绍开源软件世界中比较有实用价值的软件,详细介绍这些软件的运行环境,编译方法,配置,实用等。主要目的在于介绍这些资源给可能用到的人。
软件1:CVS(Current version system): 这个软件应该是名声响当当的,很多知名的大公司即便是在windows平台开发软件也实用他管理自己的项目source code。开源项目基本实用它提供软件下载等。
这个软件的优点是体积小功能强大,运行稳定。缺点是实用起来比较麻烦。针对这个缺点windows平台开发出了具有UI界面的WinCVS,本人使用过,十分方便。
软件下载地址:
可以到sourceforge.net上查找下载
安装配置方法:
一般并不需要我们自己由源码build binary,可以根据各自工作的系统平台去下载线程的安装包,甚至于有的系统自身就有这样的安装文件(Redhat等),找到光盘安装一下即可。由于安装比较简单这里不赘述。
安装好CVS后必须对该软件进行配置才能正常工作,主要是一些CVS相关的环境变量。
1:系统环境linux redhat
2:建立cvs用户组(不创建也可以,不过创建一个有利于用户管理)
命令:groupadd cvs
注:必须以root身份运行该命令
3.建立cvs组的cvsroot用户和所属的目录
useradd -g cvs -G cvs -d/home/cvsroot xxx
以上命令选项的含义可以通过man page查看
4:为xxx用户添加密码
passwd xxx
5:改变/home/cvsroot的目录属性
chmod rw /home/cvsroot
6:初始化cvs源码库,生成目录/home/cvsroot/CVSROOT,其下为一些初始化文件
cvs -d /home/cvsroot init
7:创建可以登陆cvs服务的用户及密码,需要创建文件passwd
vi /home/cvsroot/CVSROOT/passwd
文件内容如下:
stphen_du:xxxxx:xxx
8.xxxxxx为密码,由以下文件生成: vi /home/cvsroot/passwdgen.pl 文件内容:
#!/usr/bin/perl
srand (time());
my $randletter = "(int (rand (26)) + (int (rand (1) + .5) % 2 ? 65 : 97))";
my $salt = sprintf ("%c%c", eval $randletter, eval $randletter);
my $plaintext = shift; my $crypttext = crypt ($plaintext, $salt);
print "${crypttext}\n";
9.如果需要密码为:some,则敲入: passwdgen.pl "some" 回车即可得到加密密码,用其替换passwd文件中的xxxxxx
10.cvs服务
vi /etc/services
cvspserver 2401/tcp #pserver cvs service
cvspserver 2401/udp #pserver cvs service
11.cvs 服务由inted来唤起,因此需要修改inetd服务,redhat使用的是inetd 方式则在文件/etc/inetd.conf中加入如下的内容:cvspserver stream tcp nowait root /usr/bin/cvs cvs --allow-root=/home/cvsroot pserver
redhat使用的是xinetd方式,所以在xinetd.d目录下添加需要启动的服务:
cd /etc/xinetd.d
vi cvspserver
文件内容:
service cvspserver
{
disable = no
flags = REUSE
socket_type = stream
wait = no
user = root
server = /usr/bin/cvs
server_args = -f --allow-root=/home/cvsroot pserver
log_on_failure += USERID
}
12.重新启动inetd或者xinetd:
/etc/rc.d/init.d/xinetd restart
13.检查cvspserver服务是否已经启动
netstat -l |grep cvspserver
结果如下:
tcp 0 0 *:cvspserver *:* LISTEN
以上结果全部通过,但是在我的客户机上执行
cvs -d :pserver:stephen_du@192.168.211.72:/home/cvsroot login
输入密码后,返回connection confuse信息
补:
cvs -d :pserver:stephen_du@192.168.211.72:/home/cvsroot login
输入密码后,没有收到任何消息,即表示成功
在客户端,设置环境变量如下:
export CVS_RSH=ssh
export CVSROOT=:pserver:username@ip:/home/cvsroot
软件2:SVN:它是针对CVS使用上的缺点进行改进的CVS,最近大家纷纷将代码由CVS移植到SVN上。
阅读(1382) | 评论(0) | 转发(0) |