1、刪除系統(tǒng)自帶的cvs
????? rpm -e cvs
2、安裝cvs(設(shè)定cvs安裝在/usr/cvs,cvs倉(cāng)庫(kù)目錄為/opt/cvsroot)
從http://ximbiot.com/cvs/wiki/index.php?title=Main_Page#CVS_Downloads下載最新cvs源代碼包c(diǎn)vs-1.11.22.tar.gz
tar -zxvf cvs-1.11.22.tar.gz
cd cvs-1.11.22
./configure --prefix=/usr/cvs
make
make install
ln /usr/cvs /usr/bin/cvs
3、創(chuàng)建cvs用戶和用戶組
groupadd cvs
useradd cvsroot
passwd cvsroot
輸入cvsroot用戶密碼
4、初始化cvs倉(cāng)庫(kù)
該操作需要在cvsroot用戶下執(zhí)行
su -u cvsroot
cvs -d /opt/cvsroot init
exit(退出cvsroot用戶,進(jìn)入root用戶)
5、修改系統(tǒng)環(huán)境變量
vi /etc/profile
在文件末尾增加:
CVSROOT=/opt/cvsroot;export CVSROOT
保存退出。
更新環(huán)境變量:
source /etc/profile
6、啟動(dòng)CVS服務(wù)
vi /etc/xinetd.d/cvspserver,內(nèi)容如下:
?# default: on
# description: The cvs server sessions;
service cvspserver
{
socket_type = stream
wait = no
user = root
server = /usr/bin/cvs
server_args = -f --allow-root=/opt/cvsroot pserver
#only_from = 192.168.0.110/24? #限制訪問(wèn)
}
保存退出。
chmod 644 /etc/xinetd.d/cvspserver
/etc/rc.d/init.d/xinetd restart
netstat -lnp | grep 2401 #查看cvs服務(wù)是否已啟動(dòng),啟動(dòng)成功則出現(xiàn)如下字樣:
tcp??????? 0????? 0 0.0.0.0:2401??????????????? 0.0.0.0:*?????????????????? LISTEN????? xxxxx/xinetd
7、建立cvs用戶
vi /opt/cvsroot/CVSROOT/config
查找#SystemAuth,并更改為:SystemAuth=no?
#該更改的意思是不檢查操作系統(tǒng)的用戶名和密碼,避免安全問(wèn)題。
更改/opt/cvsroot目錄權(quán)限:
chmod -R ug+rwx /opt/cvsroot
chmod 644 /opt/cvsroot/CVSROOT/config
建立密碼生成腳本文件:
vi /opt/cvsroot/CVSROOT/passwordgen.pl,內(nèi)容如下:
#!/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";?
保存退出。
chmod 740 /opt/cvsroot/CVSROOT/passwordgen.pl
執(zhí)行 /opt/cvsroot/CVSROOT/passwordgen.pl "test" 就能得到test的加密字串。
建立passwd文件:
vi /opt/cvsroot/CVSROOT/passwd,內(nèi)容格式樣式如下:
cvsroot:$1$yrf/5TD/$9QmhHgjiy.k.WcMyWEqNy1:cvsroot
test:eLkyeXuIWlQew:cvsroot
保存退出。
#passwd文件說(shuō)明:passwd文件為cvs所使用的用戶文件,分三部分(冒號(hào)分隔):
第一部分為用戶名,第二部分為密碼(該MD5加密密碼字串可由上面passwordgen.pl腳本獲得),第三部分為映射到對(duì)應(yīng)的操作系統(tǒng)用戶(從而實(shí)現(xiàn)權(quán)限管理)。
8、為用戶分配權(quán)限
在/opt/cvsroot/CVSROOT目錄下,建立readers和writers2個(gè)文件。
只讀權(quán)限的用戶加入readers文件,可寫(xiě)權(quán)限用戶加入writers文件。
注意,readers文件比writers優(yōu)先,也就是說(shuō)出現(xiàn)在readers中的用戶將會(huì)是只讀的,不管writers文件中是否存在該用戶。
9、測(cè)試
cvs -d :pserver:cvsroot@192.168.0.110/opt/CVSROOT login
輸入cvsroot用戶密碼,如果沒(méi)有任何錯(cuò)誤信息,則登錄成功。
注:192.168.0.110為cvs服務(wù)器地址。