天天看點

redhat下cvs伺服器配置及用戶端使用

1.redhat上安裝cvs:

   redhat 上自帶了cvs,可以用rpm -q | grep cvs,的是删除後重新以編譯源碼方式安裝的.删除rpm -e cvs包名;

   下載下傳cvs源碼檔案:http://www.cvshome.org

   tar -xzvf cvs-1.11.15.tar.gz

   cd cvs-1.11.15

   ./configure --prefix=/usr/local/cvs

   make

   make install

   至此安裝完成

2.配置cvs服務

   說明:cvs服務隻能通過xinted來啟動。相關配置如下:

   2.1 先增加相應的使用者組和使用者

   groupadd cvs

   useradd -g cvs -d /home/cvs cvs

   passwd cvs(設定密碼為111111)

   chmod 775 /home/cvs

   2.2 修改/etc/service

   vi /etc/service

   增加兩行:

   cvspserver 2401/tcp

   cvspserver 2401/udp

   2.3 修改xinted.d服務,以下的相關操作都是在redhat9裡面完成

   cd /etc/xinted.d

   vi cvspserver(說明cvspserve名稱為service增加的服務名稱)

   service cvspserver

   {

       port=2401

       socket_type=stream

       protocol=tcp

       wait=no

       user=root

       passenv=PATH

       server=/usr/local/cvs/bin/cvs

       server_args=-f --allow-root=/home/cvs pserver

   }

   2.4 初始化cvs伺服器及使用者管理

   /usr/local/cvs/bin/cvs -d /home/cvs init

   這個時候 /home/cvs下面會新出一個目錄/home/cvs/CVSROOT

   建立cvs登陸使用者.該使用者可以通過cvs用戶端登陸到cvs伺服器,我這裡采用的時在cvs伺服器裡增加一些登陸使用者,這些使用者與redhat

   系統使用者沒有如何關系,新增使用者本身很簡單,唯一要注意的是使用者密碼生成(密碼是加密的)。先用一段shell程式生成密碼,然後寫到

   cvs配置檔案。

   生成密碼的shell script如下:

   cd /home/cvs

   vi 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";  

   生成密碼

   ./passwdgen.pl 111111

   NbcUcaU7UoObs

   列印出的結果即為配置檔案中記錄的密碼。現在可以新增使用者了

   vi /home/cvs/CVSROOT/passwd

   usertest:NbcUcaU7UoObs:cvs

   2.5系統基本配置完成,現在開始測試伺服器是否能夠正常工作

   /etc/rc.d/init.d/xinted restart

   netstat -l | grep cvspserver

   如果結果為

   tcp        0      0 *:cvspserver            *:*                     LISTEN

   則表示cvs服務啟動正常,如果沒有正常啟動,主要原因是因為/etc/xinted.d/cvspserver檔案内容有問題,可以修改一下再測試

   測試是否能夠正常登陸

   cvs -d:pserver:[email protected]:/home/cvs login

   如果執行該指令的時候沒有任何提示表示已經可以登陸到cvs伺服器了

   2.6在cvs中建立一個項目

   export CVSROOT=/home/cvs

   比如說項目檔案在/usr/local/mis

   cd /usr/local/mis

   /usr/local/cvs/bin/cvs import -m "this is a mis system"  mis version_1 start

   如果正常的話cvs會在home/cvs目錄下建一個mis目錄。

   需要将該目錄的屬主改cvs,用戶端才能下載下傳

   chown -R cvs /home/cvs/mis