linux 下cvs 服務的配置

CVS 代表協作版本系統;這是一個將一組文件放在層次目錄樹中以保持同步的系統。人們可以從 CVS 服務器上更新他們的本地層次樹副本,並將修改的結果或新文件發回;或者刪除舊文件。 CVS 基於客戶端/服務器的行爲使得其可容納多用戶,構成網絡也很方便。

下面是我自己在配置CVS服務器和客戶端的一點步驟總結,希望能幫你節省時間,一步到位^-^

配置服務器的全部步驟如下:

首先確認一下是否安裝cvs服務:

#rpm  -qa|grep cvs

如出現cvs版本號說明安裝成功.

否則到http://www.cvshome.org去下載rpm包.

安裝    --已經裝好的跳到下一步
rpm –ivh cvsnt-2.0.58d-1.i386.rpm(rpm包名)

1:我用的是Mandrivia linux 2006 free,安裝系統的時候選擇上了CVS的安裝包

2:建立了cvs用戶組

#groupadd cvs(如出現沒有groupadd命令,請用root帳號)

3:與etc 同級目錄下(其實就是掛載點/下)建立一個cvs目錄

# mkdir  cvs

3.建立cvs組的cvsroot用戶和所屬的目錄

#useradd -g cvs -G cvs -d/cvs cvsroot

4:爲cvsroot用戶添加密碼

#passwd cvsroot

5:改變/cvs的目錄屬性

#chmod 775 /cvs

6:初始化cvs源碼庫,此操作生成目錄/cvs/CVSROOT,其下爲一些初始化文件

#cvs -d/cvs init

7:創建可以登陸cvs服務的用戶及密碼,需要創建文件passwd

#vi /cvs/CVSROOT/passwd
文件內容如下:

username:xxxxx:cvsroot

8.xxxxxx爲密碼,
獲得方法:編輯passwd.pl文件:
#> vi /cvsroot/passwd.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}/t/n";

#>chmod a+x passwd.pl


9.
如果你想生成一個密碼是“123456”,則:

#> ./passwd.pl “123456”

回車即可得到加密密碼,用其替換passwd文件中的xxxxxx

10.加入cvs服務(我的Mandrivia 2006缺省就有cvs服務,所以不用加)
#vi /etc/services
cvspserver 2401/tcp #pserver cvs service
cvspserver 2401/udp #pserver cvs service



11.我的
Mandrivia 2006使用的是xinetd方式已經 有了cvs服務,如果沒開啓服務只需要修改一下cvs文件,
如果是自己安裝的rpm包的話,在xinetd.d目錄下添加需要啓動的服務:
#cd /etc/xinetd.d
#vi cvspserver

文件內容:
service cvspserver
{
disable = no
socket_type = stream
wait = no
user = root
env = HOME=
server = /usr/bin/cvs
server_args = -f --allow-root=/cvs pserver
}
12.重新啓動xinetd:

/etc/rc.d/init.d/xinetd restart

13.檢查cvspserver服務是否已經啓動
#netstat -l |grep cvspserver
結果如下:
tcp 0 0 *:cvspserver *:* LISTEN
以上結果全部通過,但是在我的客戶機(redhat9)上執行

14.測試:
ip地址得到:
#ifconfig
#export CVSROOT=:pserver:username@ip:/cvs
這樣你在客戶端就可以直接輸入
#cvs login

發佈了28 篇原創文章 · 獲贊 1 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章