隨筆-86  評論-33  文章-0  trackbacks-0

          一 CVS服務(wù)器的安裝:
          1。查看你的操作系統(tǒng)上是否安裝了CVS:
          #> rpm -qa|grep cvs

          如果沒有安裝你可以在Redhat 第2張光盤上找到

          2。建立cvs用戶組:

          #> groupadd cvs

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

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

          4。為cvsroot用戶添加密碼:

          #> passwd cvsroot

          5。改變 /cvsroot/ 的目錄屬性:

          #> chmod –R 770 /cvsroot

          6。改變用戶登陸身份:

          #> su cvsroot

          7。開始創(chuàng)建單個(gè)項(xiàng)目:

          #> cd /cvsroot
          #> mkdir project1
          #>mkdir project2
          8。開始建立倉庫:

          #> cvs –d /cvsroot/project1 init
          #> cvs –d /cvsroot/project2 init
          #> chmod –R 770 ./project1/ ./project2/

          9。建立CVS服務(wù)啟動(dòng)文件,我們使用xinetd方式:

          #> [Crtl]+[d] 切換到root用戶身份
          #> 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
          =   - -- allow - root =/ home2 / cvsroot / project1  -- allow - root =/ home2 / cvsroot / project2 pserver 
          log_on_failure 
          +=  USERID 
          }

          注:由于xinetd的server_args長度限制,當(dāng)你想運(yùn)行很多的單個(gè)倉庫的時(shí)候,可以這么做:

          #> vi cvspserver

          service cvspserver 

          disable 
          =  no 
          flags 
          =  REUSE 
          socket_type 
          =  stream 
          wait 
          =  no 
          user 
          =  root 
          server 
          =   / cvsroot / cvs.run 
          log_on_failure 
          +=  USERID 
          }

          編寫cvs.run腳本

          #> vi /cvsroot/cvs.run

          # !/ bin / bash 
          / usr / bin / cvs  -
          -- allow - root =/ cvsroot / project1 
          -- allow - root =/ cvsroot / project2 
          pserver

          #>chmod +x /cvsroot/cvs.run

          10。加入cvs服務(wù):

          #>vi /etc/services

          cvspserver 2401/tcp #pserver cvs service
          cvspserver 2401/udp #pserver cvs service
          11。啟動(dòng)cvs服務(wù):

          #> /etc/init.d/xinetd restart

          12。檢查cvspserver服務(wù)是否已經(jīng)啟動(dòng):

          #> netstat -l |grep cvspserver
          應(yīng)該有如下結(jié)果:

          tcp 0 0 *:cvspserver *:* LISTEN

          二。CVS服務(wù)的用戶管理:

          上面我們已經(jīng)建立了project1和project2兩個(gè)CVS倉庫,下面我們分別給兩個(gè)倉庫建立cvs用戶。

          13。創(chuàng)建可以登陸cvs服務(wù)器的用戶名和密碼:

          #> su cvsroot
          #> vi /cvsroot/project1/CVSROOT/passwd

          trotter:*****:cvsroot
          mimi:*****:cvsroot

          #>vi /cvsroot/project2/CVSROOT/passwd

          trotter:*****:cvsroot
          gary:*****:cvsroot

          這兩個(gè)文件的意思是有trotter,mimi,gary三個(gè)cvs用戶,mimi擁有project1的使用權(quán)限,gary擁有project2的使用權(quán)限,trotter擁有project1和project2的使用權(quán)限。登陸后的權(quán)限是cvsroot權(quán)限。
          注意:這里的cvs用戶和系統(tǒng)用戶是不同的。

          14。*****為密碼,由以下文件生成:

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

          #>chmod a+x /cvsroot/passwd.pl

          15。如果你想生成一個(gè)密碼是“123456”,則:

          #> /cvsroot/passwd.pl “123456”

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

          16。Ok,cvs現(xiàn)在已經(jīng)全部安裝完成了,如果你想讓一個(gè)用戶擁有project1的權(quán)限,你就在/cvsroot/project1/CVSROOT/passwd中給他加入一個(gè)用戶;如果你想讓一個(gè)用戶同時(shí)具有project1和project2的權(quán)限,你就給/cvsroot/project1/CVSROOT/passwd和/cvsroot/project2/CVSROOT/passwd里給他加一個(gè)用戶名和密碼相同的用戶即可。最后,我們試用一下:

          #> cvs -d :pserver:trotter@192.168.1.200:/cvsroot/project1 login

          敲入命令回車后提示輸入trotter的密碼,你按照自己設(shè)置的密碼輸入,如果沒有什么錯(cuò)誤信息出現(xiàn)就是成功了

          posted on 2006-11-16 18:42 Derek.Guo 閱讀(431) 評論(0)  編輯  收藏 所屬分類: Linux/Unix
          MSN:envoydada@hotmail.com QQ:34935442
          主站蜘蛛池模板: 四子王旗| 高台县| 胶州市| 仁布县| 蓬莱市| 大悟县| 称多县| 垫江县| 津南区| 临夏县| 和林格尔县| 长丰县| 平泉县| 绥宁县| 五大连池市| 北川| 咸宁市| 铁岭市| 磐安县| 尖扎县| 兖州市| 志丹县| 昌黎县| 汝南县| 嘉黎县| 衡水市| 瑞金市| 遂溪县| 镇宁| 文山县| 洛扎县| 宁乡县| 华容县| 通山县| 渑池县| 江西省| 灵璧县| 连云港市| 柘荣县| 瑞丽市| 龙陵县|