配置CVS服務(wù)器得時(shí)候,才突然發(fā)現(xiàn)一個(gè)問題,在本論壇精華區(qū)里面的CVS服務(wù)器配置過程有一個(gè)錯(cuò)誤!居然沒有人發(fā)現(xiàn)?!
重新寫一下CVS服務(wù)器的配置過程:
[list:7f22e156ec]
[*:7f22e156ec]檢查 /etc/services
首先鍵入 [i:7f22e156ec]vi /etc/services[/i:7f22e156ec]
然后鍵入 [i:7f22e156ec]/cvspserver[/i:7f22e156ec]
如果找到的行前面并沒有#,那么不用修改了,否則去掉行首的#
[*:7f22e156ec]在 /etc/x.netd.d 目錄下創(chuàng)建一個(gè)文件,隨便命名,比如 cvs
[i:7f22e156ec]vi /etc/xinetd.d/cvs[/i:7f22e156ec]
在其中添上
[quote:7f22e156ec]
service cvspserver
{
socket_type = stream
wait = no
user = root
env = HOME=
server = /usr/bin/cvs
# 以下配置選項(xiàng)是錯(cuò)誤的,錯(cuò)誤之處用紅色標(biāo)記
# [color=red:7f22e156ec]server-tags[/color:7f22e156ec] = --allow-root=/home/cvsroot pserver
server_args = --allow-root=/home/cvsroot pserver
}
[/quote:7f22e156ec]
[*:7f22e156ec]保存以后創(chuàng)建一個(gè)名為 cvs 的組和一個(gè)名為 cvsroot 的用戶
[i:7f22e156ec]groupadd cvs
useradd -g cvs -s /sbin/nologin cvsroot[/i:7f22e156ec]
[*:7f22e156ec]然后
[i:7f22e156ec]vi /etc/profile[/i:7f22e156ec]
在其中添上
[i:7f22e156ec]export CVSROOT = /home/cvsroot[/i:7f22e156ec]
[*:7f22e156ec]重啟 xinetd:
[i:7f22e156ec]/etc/init.d/xinetd restart[/i:7f22e156ec]
[*:7f22e156ec]初始化CVS倉庫
[i:7f22e156ec]cvs -d /home/cvsroot init[/i:7f22e156ec]
這樣CVS可以用了
[/list:u:7f22e156ec]
如果不修改以上的錯(cuò)誤,會(huì)在cvs login的時(shí)候出現(xiàn):cvs [login aborted]: unrecognized auth response from localhost: Usage: cvs [cvs-options] command [command-options-and-arguments] 這樣的錯(cuò)誤提示。
[list:7f22e156ec]使用提示:
[*:7f22e156ec] 添加倉庫: 進(jìn)入到你的源碼目錄
[i:7f22e156ec]cd /your/sources/path[/i:7f22e156ec]
然后執(zhí)行
[i:7f22e156ec]cvs export SOURCE_DIR_NAME Author Version[/i:7f22e156ec]
其中的SOURCE_DIR_NAME 是你的工程在 CVSROOT 目錄中保存的目錄名, Author 為工程作者, Version 為你的工程發(fā)行版本號(hào),必須以字母開頭
[*:7f22e156ec] 添加匿名只讀用戶:
[i:7f22e156ec]useradd -g cvs -M -s /sbin/nologin anonymous
chmod 644 /home/cvsroot/CVSROOT/passwd
echo "anonymous::anonymous" >> /home/cvsroot/CVSROOT/passwd
chmod 444 /home/cvsroot/CVSROOT/passwd
echo "anonymous" >> /home/cvsroot/CVSROOT/readers
chmod 444 /home/cvsroot/readers[/i:7f22e156ec]
[*:7f22e156ec] 防止CVSROOT被下載:
[i:7f22e156ec]chmod 644 /home/cvsroot/CVSROOT/modules
echo "CVSROOT -a" >> /home/cvsroot/CVSROOT/modules
chmod 444 /home/cvsroot/CVSROOT/modules[/i:7f22e156ec]
[*:7f22e156ec] 不使用 real system user 登陸:
[i:7f22e156ec]chmod 644 $CVSROOT/CVSROOT/config
vi $CVSROOT/CVSROOT/config[/i:7f22e156ec]
將第二行的
#SystemAuth = no
去掉注釋,即改為
SystemAuth = no
[/list:u:7f22e156ec]
以上內(nèi)容在RedHat ES 3 U2上測試通過