1.2.6 配置cvs環境
在 cvs 管理員用戶的HOME目錄里有一個 CVSROOT 目錄,這個目錄里有三個配置文件,passwd, readers, writers,可以通過設置這三個文件來配置 CVS 服務器,下面分別介紹這幾個文件的作用:
passwd:cvs 用戶的用戶列表文件,它的格式很象 shadow 文件:
{cvs 用戶名}:[加密的口令]:[等效系統用戶名]
readers:有 cvs 讀權限的用戶列表文件。就是一個一維列表。在這個文件中的用戶對 cvs只有讀權限。
writers:有 cvs 寫權限的用戶的列表文件。和 readers 一樣,是一個一維列表。在這個文件中的用戶對 cvs 有寫權限。
注意:如果用戶同時在readers和writers文件存在,則這個用戶只有read的權限而沒有write的權限。
1、創建可以登陸cvs服務的用戶及密碼,需要創建文件passwd
vi /root/cvsroot/CVSROOT/passwd
文件內容如下:
smilings:xxxxx:cvsroot
chenxu:xxxxx:cvsroot
此文件的意思是smilings和chenxu兩個用戶可以登陸cvs服務器,登陸后其權限為用戶cvsroot的權限
注意:cvs用戶和服務器用戶是可以不一樣的
2、xxxxxx為密碼,由以下文件生成:
vi /var/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}\n";
3、修改passwdgen.pl為可執行
#chmod +x passwdgen.pl
如果需要密碼為:smilings,則敲入:
passwdgen.pl "smilings"
回車即可得到加密密碼,用其替換passwd文件中的xxxxxx
4、編輯 writers 文件,加入下面幾行:
smilings
chenxu
注:passwd文件的格式是:
以“:”為分隔,分為三部分:
- 第一部分是cvs帳號名(與系統帳號無關,也可與系統帳號名相同)
- 第二部分(可選項)是加密串,每個系統用戶的加密串缺省是在/etc/shadow中,如果cvs帳號不是操作系統的帳號,shadow中是不會有cvs帳號的加密串的,這時就必須手工為cvs帳號生成加密串,可以將其他系統帳號的密碼修改成想要的密碼(此時shadow文件的加密 串跟著改變),在取得加密串后改回去。當第二部分置空時,該帳號以任何口令均可登入cvs server
- 第三部分(可選項)是一個操作系統帳號, 如果登陸成功, cvs用戶就以此系統帳號的身份存取cvs中的源代碼,這里的系統帳號是cvs權限控制的關鍵, 這個系統帳號有什么權限, 以此帳號身份存取cvs的cvs用戶就有相同的權限.。注意: 考慮到cvs用戶是以某個系統帳號的身份運行的, 此系統帳號應當對repository下的相應目錄有寫的權限, 這樣就存在直接進入目錄對文件進行修改的可能, 而這是cvs操作所不允許的,為了避免這種誤操作, 建議在產生此系統帳號時使其shell為/bin/false, 并且不設置此帳號的密碼,這樣可以禁止直接以此系統帳號te.net或者ftp進入CVS Server。
另外,passwd文件中的用戶不能重名,否則只有第一個有效。
1.3 CVS Client端的配置
CVS服務器正確安裝置后,就可以設置Client端來操作了。
設置方法是:將環境變量增加到.profile/bash_profile中:
export CVSROOT=:pserver: smilings@216.245.143.71:/root/cvsroot
%cvs login 系統將提示輸入CVS口令
口令認證通過后,就可以進行CVS的操作了。
1.3.2 Windows環境下
在http://www.wincvs.org下載最新wincvs軟件并安裝。
設置環境CVSROOT變量:
運行wincvs,從界面菜單處,選擇admin --> preference --> General -->設置CVSROOT為::pserver:a@216.245.143.71:/root/cvsroot
其中的a為用戶的CVS帳號,@后面是CVS服務器的IP地址。
當cvs server的端口不是缺省的2401時,需要在
admin --> preference --> Ports -->設置For "pserver"(passwd) port為定義的值。
文章來源于領測軟件測試網 http://www.kjueaiud.com/