1.先查看是否安裝cvs
rpm -qa | grep cvs

一般安裝在 /usr/bin/cvs,
如果未安裝,到www.cvshome.org下載一個最新的rpm安裝即可

2.建立cvs user group,便於管理cvs User
groupadd cvs

3.建立cvsroot User,屬於cvs組(組名必須為cvs),根目錄為/home/cvsroot,
不允許 login
useradd -g cvs -s /sbin/nologin cvsroot

4.改變/home/cvsroot的目錄屬性
chmod 775 /home/cvsroot

5.初始化cvs source,此操作產生目錄 /home/cvsroot/CVSROOT,
其下為一些初始化檔
cvs -d /home/cvsroot init

6.Create可以login CVS服務的用戶及密碼,需要創建檔passwd
vi /home/cvsroot/CVSROOT/passwd

檔內容如下:
panpan:xxxxx:cvsroot
gibbs:xxxxx:cvsroot
此檔的意思是panpan和gibbs兩個user可以login cvs伺服器,登入後其 為用戶cvsroot的ower

注意:cvs user 和 server user是可以不一樣的

7.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} ";

8.如果需要密碼為:123456,則敲入:
passwdgen.pl "123456"
回傳即可得到加密密碼,用其替換passwd檔中的xxxxxx

9.加入cvs service
vi /etc/services
cvspserver 2401/tcp #pserver cvs service
cvspserver 2401/udp #pserver cvs service

10.一般cvs服務由 inted 呼叫起來,因此需要改成 inetd提供的服務,如果你的redhat使用的是inetd方式,
則在文件/etc/inetd.conf 中加入以下的內容:
cvspserver stream tcp nowait root /usr/bin/cvs cvs --allow-root=/home/cvsroot pserver

redhat7.3以上使用的是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
}

11.重新啟動 inetd 或 xinetd:
/etc/rc.d/init.d/xinetd restart

12.檢查cvspserver服務是否已經啟動
netstat -l |grep cvspserver 

其結果如下:
tcp 0 0 *:cvspserver *:* LISTEN

 

 

 

創作者介紹

資訊理想化的延伸

hsinichi 發表在 痞客邦 PIXNET 留言(0) 人氣()