Linux平台上CVS服务器的配置与测试(2)

2)如果我们在root用户(或者其他用户,但必须保证该用户对于存放module的目录有写的权限)下测试,checkout出这一个module,可以执行如下:

debian:/home/usbprj# cvs -d /home/cvsroot checkout usbprj

cvs checkout: Updating usbprj

U usbprj/Makefile

U usbprj/Module.symvers

U usbprj/test.c

U usbprj/usb-skeleton.c

说明在本地可以checkout出来,而且他会自动在当前目录下创建以该module名为名的目录项,不管你checkout出来的是一个源码文件还是整个module。我这里checkout出来的module路径为/home/usbprj/usbprj/下。

4.创建登录CVS服务器的用户和密码

1)在/home/cvsroot/CVSROOT/下创建passwd文件,并编辑内容如下:

cvSUSEr1:*****:cvsroot

cvsuser2:*****:cvsroot

这个文件的意思是有cvsuser1和cvsuser2两个登录cvs服务器的用户,登陆后的权限是cvsroot权限,即第三个字段指定。

注意:这里的新建用户的两个新建登录cvs服务器的用户和系统用户是不同的,这两个用户不能用来登录系统,只能登录cvs服务器。这里我们默认不允许系统用户登录cvs服务器。

2)其中,passwd文件中每行的第二个字段“*****”为用户cvsuser1和cvsuser2密码的加密口令。可以通过下面文件对用户密码加密。

文件名:passwdgen.pl.该文件是perl的脚本。必须保证系统安装了perl才可执行该文件。

内容如下:

#!/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";

为该文件添加可执行权限,

debian:~$ chmod +x passwdgen.pl

用户cvsuser1和cvsuser2用户生成加密口令:

debian:~$ ./passwdgen.pl cvsuser1

ZGzWKlE1mv4EY

debian:~$ ./passwdgen.pl cvsuser2

LFfpGaDMC/Cj6

用法:passwdgen.pl yourpasswd. 其中,yourpasswd即你所需要设定的密码。我这里给我的两个用户的密码和用户名同名,呵呵,为了方便。其中生成的加密口令为13个字符,是由[0-9][A-Z][a-z][.][/]组成。把生成的加密口令替换到passwd文件中相应的“*****”字段即可。

5.设置开机启动CVS服务

我们这里使用xinetd启动,如果系统没有安装xinetd的话,安装之。

1)检查/etc/services中,cvspserver是否开启。cvspserver是远程登录CVS服务器时对用户的验证方式。

debian:~$ cat /etc/services | grep cvspserver

# sources like .

cvspserver      2401/tcp                        # CVS client/server operations

cvspserver      2401/udp

这说明我的系统已打开该服务。如果最后两行前面有“#”字符,把他删除就可以了。

2)创建cvspserver文件

切换至root用户下:

debian:~# cd /etc/xinetd.d/

debian:/etc/xinetd.d# touch 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即仓库所在目录。

注意:每行的第一个"="左右两侧要有一个空格。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wwyyws.html