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