您好,登錄后才能下訂單哦!
這篇文章主要介紹Fedora CVS服務(wù)器如何安裝配置和創(chuàng)建用戶組,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
一、Fedora CVS服務(wù)器安裝
首先確保系統(tǒng)安裝有Fedora CVS服務(wù)器# rpm -qa|grep Fedora CVS服務(wù)器Fedora CVS服務(wù)器-1.11.22-9.fc7 如果命令輸出類(lèi)似于上面的輸出則說(shuō)明系統(tǒng)已經(jīng)安裝有Fedora CVS服務(wù)器,否則就需要從安裝光盤(pán)中安裝Fedora CVS服務(wù)器的rpm包。但安裝完Fedora7后系統(tǒng)自己就安裝好Fedora CVS服務(wù)器軟件了。前期工作: Fedora7默認(rèn)是沒(méi)有安裝上x(chóng)inetd服務(wù),所以先安裝xinetd服務(wù)#yum install xinetd
二、Fedora CVS服務(wù)器端的配置
1.創(chuàng)建Fedora CVS服務(wù)器組和用戶
1)創(chuàng)建Fedora CVS服務(wù)器組
#/usr/sbin/groupadd Fedora CVS服務(wù)器
2)創(chuàng)建新用戶HOME目錄
#mkdir /home/Fedora CVS服務(wù)器root
3)添加新用戶Fedora CVS服務(wù)器root,并將其添加至Fedora CVS服務(wù)器組,并指定其HOME目錄
#/usr/sbin/useradd -g Fedora CVS服務(wù)器 -G Fedora CVS服務(wù)器 -d /home/Fedora CVS服務(wù)器root Fedora CVS服務(wù)器root
4)設(shè)置Fedora CVS服務(wù)器root用戶的密碼,我這里的密碼為:chongqing
#passwd Fedora CVS服務(wù)器root Changing password for user Fedora CVS服務(wù)器root. 新的 UNIX 口令: 重新輸入新的 UNIX 口令: passwd: all authentication tokens updated successfully.
5)更改/home/Fedora CVS服務(wù)器root/目錄及其子目錄的屬主和屬組
因?yàn)槭窃趓oot用戶下間的該目錄,他的屬主和屬組都是root,這里我們要將其屬主改為Fedora CVS服務(wù)器root,屬組改為Fedora CVS服務(wù)器,保證Fedora CVS服務(wù)器組的用戶對(duì)該目錄有相應(yīng)的權(quán)限。# chown -R Fedora CVS服務(wù)器root.Fedora CVS服務(wù)器 /home/Fedora CVS服務(wù)器root/
6)更改/home/Fedora CVS服務(wù)器root目錄屬性
保證Fedora CVS服務(wù)器root同組(Fedora CVS服務(wù)器組)的其他用戶也有讀寫(xiě)和執(zhí)行權(quán),我們以后要為Fedora CVS服務(wù)器組添加用戶# chmod -R 775 /home/Fedora CVS服務(wù)器root/(注意:以下操作是以Fedora CVS服務(wù)器root身份進(jìn)行操作的)
2.切換至Fedora CVS服務(wù)器root用戶,并創(chuàng)建一個(gè)倉(cāng)庫(kù)
1)切換用戶
#su Fedora CVS服務(wù)器root 口令: bash-3.2$
2)設(shè)置全局變量Fedora CVS服務(wù)器ROOT,指定倉(cāng)庫(kù)所在的目錄
$export Fedora CVS服務(wù)器ROOT=/home/Fedora CVS服務(wù)器root/
3)創(chuàng)建倉(cāng)庫(kù)
$ Fedora CVS服務(wù)器 init
OK,到目前為目止,就可以在本機(jī)上以Fedora CVS服務(wù)器root身份提交源代碼了
3.提交源入源代碼
1)進(jìn)入你想提交給Fedora CVS服務(wù)器的代碼所在目錄我這里是/home/HelloWorld/bash-3.2$ cd /home/HelloWorld/ bash-3.2$ ls helloworld.cpp makefile 裝載Fedora CVS服務(wù)器 import -m "[repository test]" [Fedora CVS服務(wù)器test] [vendortag] [releasetag]-m后面引號(hào)內(nèi)填入log內(nèi)容,接下來(lái)是源代碼模塊名稱(chēng),接著是裝載者,最后是標(biāo)識(shí)符號(hào),我這里是:
2)提交工程
$ Fedora CVS服務(wù)器 import -m "my Fedora CVS服務(wù)器 project" myProject Fedora CVS服務(wù)器root start N myProject/makefile N myProject/helloworld.cpp No conflicts created by this import
此時(shí),我們的源碼也提交了,說(shuō)明module已經(jīng)建立了。其目錄為:/home/Fedora CVS服務(wù)器root/myProject/
$ ls -l /home/Fedora CVS服務(wù)器root總計(jì) 20 drwxrwxr-x 3 Fedora CVS服務(wù)器root Fedora CVS服務(wù)器 4096 10-14 10:59 Fedora CVS服務(wù)器ROOT drwxrwxr-x 2 Fedora CVS服務(wù)器root Fedora CVS服務(wù)器 4096 10-14 12:11 myProject
3)checkout工程
如果我們?cè)趓oot用戶(或者其他用戶,但必須保證該用戶對(duì)于存放module的目錄有寫(xiě)的權(quán)限)下測(cè)試,checkout出這一個(gè)module,可以執(zhí)行如下:
# Fedora CVS服務(wù)器 -d /home/Fedora CVS服務(wù)器root checkout myProject
Fedora CVS服務(wù)器 checkout: Updating myProject
U myProject/helloworld.cpp
U myProject/makefile
說(shuō)明在本地可以checkout出來(lái),而且他會(huì)自動(dòng)在當(dāng)前目錄下創(chuàng)建以該module名為名的目錄項(xiàng),不管你checkout出來(lái)的是一個(gè)源碼文件還是整個(gè)module。
4.創(chuàng)建登錄Fedora CVS服務(wù)器的用戶和密碼
Fedora CVS服務(wù)器默認(rèn)使用系統(tǒng)用戶登錄,為了系統(tǒng)安全性的考慮也可以使用獨(dú)立的用戶管理。Fedora CVS服務(wù)器用戶名和密碼保存在Fedora CVS服務(wù)器ROOT目錄下的passwd文件中,格式為:
[Fedora CVS服務(wù)器 用戶名]:[加密的口令]:[等效系統(tǒng)用戶名]
1)先創(chuàng)建一個(gè)passwd文件
$ cd /home/Fedora CVS服務(wù)器root/Fedora CVS服務(wù)器ROOT/
$ htpasswd -c passwd Fedora CVS服務(wù)器user
New password:
Re-type new password:
Adding password for user Fedora CVS服務(wù)器user
$ cat passwd
Fedora CVS服務(wù)器user:R9oDKNeysScdw
$vi passwd
在末尾添加 :Fedora CVS服務(wù)器root 作用是映射到Fedora CVS服務(wù)器root用戶,最終結(jié)果如下:Fedora CVS服務(wù)器user:R9oDKNeysScdw:Fedora CVS服務(wù)器root 在創(chuàng)建其他用戶時(shí),不用帶參數(shù)#htpasswd passwd 用戶名New password: Re-type new password:
要徹底防止使用系統(tǒng)帳號(hào)登陸,可以編輯Fedora CVS服務(wù)器ROOT目錄下的config文件,把:#SystemAuth=yes這一行前面的#去掉,改為如下形式:SystemAuth=noFedora CVS服務(wù)器就不會(huì)驗(yàn)證系統(tǒng)用戶了,否則當(dāng)用戶名不在passwd文件中時(shí),F(xiàn)edora CVS服務(wù)器會(huì)進(jìn)行系統(tǒng)用戶的驗(yàn)證。
2)配置Fedora CVS服務(wù)器用戶的讀寫(xiě)權(quán)限
使用 Fedora CVS服務(wù)器ROOT目錄下的readers和writers文件進(jìn)行這個(gè)工作。這2個(gè)文件默認(rèn)也是沒(méi)有的,沒(méi)關(guān)系,自己創(chuàng)建就可以了。
readers文件記錄 擁有只讀權(quán)限的用戶名,每行一個(gè)用戶;writers文件記錄擁有讀寫(xiě)權(quán)限的用戶名,也是每行一個(gè)用戶。注意, readers文件比writers優(yōu)先,也就是說(shuō)出現(xiàn)在readers中的用戶將會(huì)是只讀的,不管writers文件中是否存在該用戶。
5.設(shè)置開(kāi)機(jī)啟動(dòng)Fedora CVS服務(wù)器服務(wù)
1)檢查/etc/services中,F(xiàn)edora CVS服務(wù)器pserver是否開(kāi)啟。Fedora CVS服務(wù)器pserver是遠(yuǎn)程登錄Fedora CVS服務(wù)器時(shí)對(duì)用戶的驗(yàn)證方式。
$cat /etc/services | grep Fedora CVS服務(wù)器pserver
Fedora CVS服務(wù)器pserver 2401/tcp # Fedora CVS服務(wù)器 client/server operations
Fedora CVS服務(wù)器pserver 2401/udp # Fedora CVS服務(wù)器 client/server operations
如果命令輸出類(lèi)似于上面的輸出,這說(shuō)明我的系統(tǒng)已打開(kāi)該服務(wù)。
2)創(chuàng)建Fedora CVS服務(wù)器pserver文件
切換至root用戶下:
#su root
cd /etc/xinetd.d/
#vi Fedora CVS服務(wù)器pserver
編輯該文件,內(nèi)容如下:
service Fedora CVS服務(wù)器pserver
{
disable = no
socket_type = stream
wait = no
user = root
server = /usr/bin/Fedora CVS服務(wù)器
server_args = -f --allow-root=/home/Fedora CVS服務(wù)器root pserver
log_on_success += USERID
log_on_failure += USERID
}
其中,--allow-root=/home/Fedora CVS服務(wù)器root即倉(cāng)庫(kù)所在目錄。
注意:每行的第一個(gè)"="左右兩側(cè)要有一個(gè)空格。
3)然后更改/etc/xinetd.d/Fedora CVS服務(wù)器
否則的話,在后面的遠(yuǎn)程登錄本機(jī)時(shí)會(huì)出現(xiàn)下面的問(wèn)題
“沒(méi)有該倉(cāng)庫(kù)”
[test@liu ~]$ Fedora CVS服務(wù)器 -d :pserver:Fedora CVS服務(wù)器user@10.15.5.89:/home/Fedora CVS服務(wù)器root login Logging in to :pserver:Fedora CVS服務(wù)器user@10.15.5.89:2401/home/Fedora CVS服務(wù)器root Fedora CVS服務(wù)器 password: /home/Fedora CVS服務(wù)器root: no such repository [test@liu ~]$
更改方法如下:
把disable=yes 改為 disable=no ;env和server_args中路徑改為你的Fedora CVS服務(wù)器root路徑,我的是/home/Fedora CVS服務(wù)器root更改后的內(nèi)容如下
# default: off # description: The Fedora CVS服務(wù)器 service can record the history of your source " # files. Fedora CVS服務(wù)器 stores all the versions of a file in a single " # file in a clever way that only stores the differences " # between versions. service Fedora CVS服務(wù)器pserver { disable = no port = 2401 socket_type = stream protocol = tcp wait = no user = root passenv = PATH server = /usr/bin/Fedora CVS服務(wù)器 env = HOME=/home/Fedora CVS服務(wù)器root server_args = -f --allow-root=/home/Fedora CVS服務(wù)器root pserver # bind = 127.0.0.1 }
3)重啟xinetd服務(wù),使配置生效
重啟xinetd # /etc/init.d/xinetd restart 停止 xinetd: [確定] 啟動(dòng) xinetd: [確定] 確定Fedora CVS服務(wù)器pserver是否啟動(dòng) #netstat -l | grep Fedora CVS服務(wù)器pserver tcp 0 0 *:Fedora CVS服務(wù)器pserver *:* LISTEN
4)最后還必須檢查防火墻的設(shè)置,看2401端口是否打開(kāi)打開(kāi)
#/sbin/iptables -L&line;grep Fedora CVS服務(wù)器
如果看到ACCEPT tcp -- anywhere anywhere tcp dpt:Fedora CVS服務(wù)器pserver說(shuō)明端口已經(jīng)打開(kāi),否則請(qǐng)打開(kāi)防火墻2401端口
#/sbin/iptables -A INPUT -i eth0 -p tcp --dport 2401 -j ACCEPT #/sbin/service iptables save
至此,F(xiàn)edora CVS服務(wù)器配置全部完成,下面進(jìn)行測(cè)試。
三、客戶端測(cè)試
1、連接Fedora CVS服務(wù)器
剛才建立的Fedora CVS服務(wù)器端的IP為:10.15.5.89客戶端主機(jī)使用非root用戶,我的用戶名為test首先建立環(huán)境變量Fedora CVS服務(wù)器ROOT,以剛才建立的Fedora CVS服務(wù)器用戶Fedora CVS服務(wù)器user登錄:
[test@liu ~]$ export Fedora CVS服務(wù)器ROOT=:pserver:Fedora CVS服務(wù)器user@10.15.5.89:/home/Fedora CVS服務(wù)器root [test@liu ~]$ Fedora CVS服務(wù)器 login Logging in to :pserver:Fedora CVS服務(wù)器user@10.15.5.89:2401/home/Fedora CVS服務(wù)器root Fedora CVS服務(wù)器 password: [test@liu ~]$
如果沒(méi)有錯(cuò)誤提示,則代表成功登錄Fedora CVS服務(wù)器。
在此卻很有可能出現(xiàn):unrecognized auth response from 10.15.5.89: Fedora CVS服務(wù)器 pserver: cannot open /home/Fedora CVS服務(wù)器root/Fedora CVS服務(wù)器ROOT/config: Permission denied
尤其是當(dāng)你的linux版本較高時(shí)。這是由于selinux的原因,這是一種安全機(jī)制,具體可以上網(wǎng)查。只要關(guān)閉selinux就可以了:編輯/etc/selinux/config,將SELINUX設(shè)置為SELINUX=disabled,禁用SELINUX。重啟電腦就好了
2、檢出模塊
我們上面已經(jīng)建立了一個(gè)倉(cāng)庫(kù)了: myProject 我們?cè)诳蛻舳藢⒃撃Kcheckout
[test@liu ~]$ Fedora CVS服務(wù)器 checkout myProject
Fedora CVS服務(wù)器 checkout: Updating myProject
U myProject/helloworld.cpp
U myProject/makefile
[test@liu ~]$
好了,在當(dāng)前目錄下生成了目錄myProject,現(xiàn)在你就可以進(jìn)入myProject進(jìn)行修改,刪除,提交等操作了。
四、現(xiàn)在我們來(lái)說(shuō)說(shuō)多倉(cāng)庫(kù)的建立
注意,我們用Fedora CVS服務(wù)器root僅僅是用來(lái)管理,所以,不要在它$HOME下面創(chuàng)建任何倉(cāng)庫(kù)另外,Fedora CVS服務(wù)器root用戶的初始環(huán)境不應(yīng)該包含非空的$Fedora CVS服務(wù)器ROOT.(也就是必須設(shè)置環(huán)境變量)使用Fedora CVS服務(wù)器root來(lái)進(jìn)行的任何管理工作都指明Fedora CVS服務(wù)器ROOT是一個(gè)好的習(xí)慣.OK,開(kāi)始給單個(gè)項(xiàng)目建倉(cāng)庫(kù)假設(shè)有兩個(gè)項(xiàng)目,project1,project2,希望單獨(dú)存放,便于管理
1、分別給兩個(gè)工程建立各自的Fedora CVS服務(wù)器主目錄
#mkdir /home/Fedora CVS服務(wù)器root/pro1
#mkdir /home/Fedora CVS服務(wù)器root/pro2
2、 分別更改pro1和pro2目錄及其子目錄的屬主和屬組
#chown Fedora CVS服務(wù)器root.Fedora CVS服務(wù)器 /home/Fedora CVS服務(wù)器root/pro1
#chown Fedora CVS服務(wù)器root.Fedora CVS服務(wù)器 /home/Fedora CVS服務(wù)器root/pro2
3、更改目錄pro1和pro2的權(quán)限
#chmod 2775 /home/Fedora CVS服務(wù)器root/pro1
#chmod 2775 /home/Fedora CVS服務(wù)器root/pro2
(更高的安全要求則$chmod 2770 /home/Fedora CVS服務(wù)器root/pro1)
4、OK,開(kāi)始建立倉(cāng)庫(kù)
#su Fedora CVS服務(wù)器root
$Fedora CVS服務(wù)器 -d /home/Fedora CVS服務(wù)器root/pro1 init
$Fedora CVS服務(wù)器 -d /home/Fedora CVS服務(wù)器root/pro2 init
$chmod 2775 /home/Fedora CVS服務(wù)器root/pro1
$chmod 2775 /home/Fedora CVS服務(wù)器root/pro2
5、修改啟動(dòng)文件
#vi /etc/xinetd.d/Fedora CVS服務(wù)器pserver
內(nèi)容如下:
service Fedora CVS服務(wù)器pserver { disable = no socket_type = stream wait = no user = root server = /usr/bin/Fedora CVS服務(wù)器 server_args = -f --allow-root=/home/Fedora CVS服務(wù)器root/pro1 --allow-root =/home/Fedora CVS服務(wù)器root/pro2 pserver log_on_success += USERID log_on_failure += USERID }
然后更改/etc/xinetd.d/Fedora CVS服務(wù)器, 否則的話,在后面的遠(yuǎn)程登錄本機(jī)時(shí)會(huì)出現(xiàn)下面的問(wèn)題“沒(méi)有該倉(cāng)庫(kù)”
[test@liu ~]$ Fedora CVS服務(wù)器 -d :pserver:Fedora CVS服務(wù)器user@10.15.5.89:/home/Fedora CVS服務(wù)器root/pro1 login
Logging in to :pserver:Fedora CVS服務(wù)器user@10.15.5.89:2401/home/Fedora CVS服務(wù)器root/pro1
Fedora CVS服務(wù)器 password:
/home/Fedora CVS服務(wù)器root/pro1: no such repository
[test@liu ~]$
更改方法如下:把disable=yes 改為 disable=no ;env和server_args中路徑改為你的Fedora CVS服務(wù)器root路徑,我的是/home/Fedora CVS服務(wù)器root更改后的內(nèi)容如下
# default: off # description: The Fedora CVS服務(wù)器 service can record the history of your source " # files. Fedora CVS服務(wù)器 stores all the versions of a file in a single " # file in a clever way that only stores the differences " # between versions. service Fedora CVS服務(wù)器pserver { disable = no port = 2401 socket_type = stream protocol = tcp wait = no user = root passenv = PATH server = /usr/bin/Fedora CVS服務(wù)器 env = HOME=/home/Fedora CVS服務(wù)器root server_args = -f –allow-root=/home/Fedora CVS服務(wù)器root/pro1 --allow-root=/home/Fedora CVS服務(wù)器root/pro2 pserver # bind = 127.0.0.1 }
6、重啟xinetd服務(wù),使配置生效
重啟xinetd# /etc/init.d/xinetd restart
停止 xinetd: [確定]
啟動(dòng) xinetd: [確定]
7、建立更多的倉(cāng)庫(kù)的技巧
由于xinetd的server_args長(zhǎng)度限制,當(dāng)你想運(yùn)行很多的單個(gè)倉(cāng)庫(kù)的時(shí)候,可以這么做
1)修改Fedora CVS服務(wù)器pserver和Fedora CVS服務(wù)器文件#vi /etc/xinetd.d/Fedora CVS服務(wù)器pserver#vi /etc/xinetd.d/Fedora CVS服務(wù)器
修改它們的內(nèi)容中如下:
service Fedora CVS服務(wù)器pserver { disable = no socket_type = stream wait = no user = root server = /home/Fedora CVS服務(wù)器root/Fedora CVS服務(wù)器.run log_on_success += USERID log_on_failure += USERID }
2)然后寫(xiě)腳本/home/Fedora CVS服務(wù)器root/Fedora CVS服務(wù)器.run#vi /home/Fedora CVS服務(wù)器root/Fedora CVS服務(wù)器.run
腳本內(nèi)容如下:
#!/bin/bash /usr/bin/Fedora CVS服務(wù)器 -f " --allow-root=/home/Fedora CVS服務(wù)器root/pro1 " --allow-root=/home/Fedora CVS服務(wù)器root/pro2 " --allow-root=/home/Fedora CVS服務(wù)器root/pro3 " --allow-root=/home/Fedora CVS服務(wù)器root/pro4 " --allow-root=/home/Fedora CVS服務(wù)器root/pro5 " --allow-root=/home/Fedora CVS服務(wù)器root/pro6 " pserver
3)更改Fedora CVS服務(wù)器.run的權(quán)限:#chmod +x /home/Fedora CVS服務(wù)器root/Fedora CVS服務(wù)器.run
4)重啟服務(wù):#service xinetd restart好了,現(xiàn)在多個(gè)獨(dú)立的倉(cāng)庫(kù)也建立好了 .
以上是“Fedora CVS服務(wù)器如何安裝配置和創(chuàng)建用戶組”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。