如何在linux環境下輕鬆搭建CVS伺服器

2021-05-24 15:35:53 字數 2931 閱讀 4953

cvs是一種廣泛應用的、開源的、透明於網路的版本控制系統。使用者使用cvs時,首先要架設一台cvs伺服器,在cvs伺服器上匯入專案例項、設定cvs專案訪問控制等。而客戶則通過客戶端來訪問cvs伺服器,客戶可以取得專案最新**副本,提交自己修改的**等,而客戶可以從internet、lan甚至本機來訪問cvs伺服器。下面,我就帶領大家在linux環境下架設一台cvs伺服器,希望能夠對想要學習cvs伺服器架設的朋友帶來一些幫助。

通過搜尋引擎找到cvs的源**包,也可以從cvs的官方**cvshome.org上尋找,由於cvs歷史上也出現過一些安全漏洞,所以建議要定期去其官方**上看看有沒有最新版本推出。

2、編譯安裝

[root@terry src]# tar -xjpvf cvs-1.12.5.tar.bz2

[root@terry src]# cd cvs-1.12.5

[root@terry cvs-1.12.5]# 。/configure --prefix=/usr/local/terry_yu/cvs

--disable-server-flow-control

[root@terry cvs-1.12.5]# make

[root@terry cvs-1.12.5]# make install

以上指令將cvs安裝到/usr/local/terry_yu/cvs這個目錄上。

注:除了使用原始碼包進行安裝之外,還可以使用rpm包來安裝。

3、設定啟動cvs服務

service cvspserver

disable = no

socket_type = stream

wait = no

user = root

env = home=

server = /usr/bin/cvs

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

注:1)pserver表示是口令認證的訪問方式,這是最常用的方式,其他還有gserver,kserver,ext,如果想要更高的安全性可以使用ssh來加密口令和資料流,不過這裡為了使用者使用的方便,仍然選的是pserver。

2)--allow-root是指定repository的目錄,可以建立多個repository

然後重新啟動xinetd:

[root@terry bin]# /etc/rc.d/init.d/xinetd restart

stopping xinetd: [ ok ]

starting xinetd: [ ok ]

重新啟動xinetd服務後,cvs服務也開始工作了。

4、在cvs伺服器端建立repository

首先要建立乙個名為cvs的組和乙個名為cvsroot的使用者,以後要訪問cvs服務的使用者加入cvs這個組:

[root@terry root]# groupadd cvs

[root@terry root]# useradd -g cvs -s /sbin/nologin cvsroot

[root@terry root]# chown -r cvsroot /home/cvsroot

接下來進行初始化:

[root@terry root]# cvs -d /home/cvsroot init

這樣在/home/cvsroot目錄中就產生了cvsroot目錄,其中存放了一些配置檔案,如config等,然後設定許可權:

[root@terry root]# chown -r cvsroot.cvs /home/cvsroot

[root@terry root]# chmod -r ug+rwx /home/cvsroot

[root@terry root]# chmod 644 /home/cvsroot/cvsroot/config

為了cvs系統的安全,我們要修改/home/cvsroot/cvsroot/config檔案,將「#systemauth =no」前面的注釋號#去掉,即改為「systemauth =no」,然後給開發者們逐一建立賬號,新建的不要分配使用者目錄,因為它將作為乙個虛擬使用者帳號來使用,具體命令如:

[root@terry root]# useradd -g cvs -m bogus

[root@terry root]# passwd bogus

上面的命令就建立了乙個並沒有home目錄的使用者bogus,接著將系統的shadow檔案複製到cvsroot, 並重命名為passwd:

[root@terry root]# cp /etc/shadow /home/cvsroot/cvsroot/passwd

[root@terry root]# chmod 0644 /home/cvsroot/cvsroot/passwd

然後修改passwd檔案,將除bogus之外的所有行刪除,然後去掉每行第二個冒號以後的所有內容,並添上字串cvsroot, 改為如下格式:

bogus:nd5$j8n9bw5dkv.npdxfdsh:cvsroot

然後,刪除掉剛剛在系統中新增的那個使用者bogus:

[root@terry root]# userdel -f bogus

好了,到這裡,cvs伺服器端就已經安裝設定好了,這樣你的cvs使用者就只能用passwd中規定的使用者來登陸你的cvs伺服器了,要注意的是:本文介紹的新增使用者的方法適用於小數量的使用者,如果是有大規模的開發人員,推薦採用連線ldap或者資料庫來進行使用者的認證服務。

用 perl 實現:

$ perl -e 'print crypt("password", "zz"), "\n";'

生成cvs使用者密碼的命令

$vim ~/.bashrc
cvsroot=:pserver:[email protected]:/home/cvsroot

export cvsroot

$source ~/.bashrc

如何在Linux環境下安裝Anaconda軟體

學python,用這個軟體效果挺好的,因為不用配那麼多的環境,好多庫都整合在一起了。這個軟體目前有windows和linux版本,在linux安裝,有點小麻煩,特此總結一下 接著用非root許可權安裝,注意,安裝此檔案不需要root許可權。中間需要輸入 yes 最後完成安裝。安裝完之後測試一下 py...

如何在Mac搭建golang環境

最近學一下go語言,需要在mac上搭建go的開發環境。我比較喜歡用zsh命令列工具,我就從裝zsh說起吧 sh c curl fssl 啟用zsh zsh安裝go的話,去官網看就行了,很詳細。安裝完成後,新增go的path環境變數 指定開發檔案,設定gopath 編輯.zshrc vim zshrc...

輕鬆搭建svn環境

前文所述svn客戶端使用的時候,用的svn伺服器通常為外部,例如google code的伺服器,不過,做為乙個程式開發人員,就算自己乙個人寫程式,也應該有乙個svn版本控制系統,以便對開發 進行有效的管理。這裡我就介紹乙個在windows環境下簡單快速搭建svn伺服器的方法。通常的svn伺服器是搭建...