Linux Trac配置安裝創(chuàng)建賬號文件
Linux Trac還是比較常用的,于是我研究了一下Linux Trac,在這里拿出來和大家分享一下,希望對大家有用。Linux Trac是一款非常優(yōu)秀的項目管理軟件,它將版本控制、WIKI、Bug管理、項目進度管理集成到了一起,但是其安裝部署過程相對麻煩,在這里我將整個部署過程完整記錄,以供其他朋友參考。注意本文針對的僅是一個項目的部署,如果要同時支持多個項目,稍微改一下就行了,請參閱其他文獻。
系統(tǒng)版本:Fedora Release 11 (Leonidas)Kernel Linux 2.6.29.4-167.fc11.i686.PAE
以下操作均使用root權(quán)限進行
1.安裝Linux Trac
1.1安裝python
fedora11默認安裝,此步跳過yum install python yum install python-devel
1.2安裝easy_install
wget http://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c11.tar.gz tar xvzf setuptools-0.6c11.tar.gzcd setuptools-0.6c11
1.3安裝Linux Trac
python easy_install.py trac
2.安裝svn
yum install subversion
3.安裝apache
3.1安裝xampp
由于apache最后要使用https提供服務(wù),為了簡化安裝過程,我們使用已經(jīng)配置好的xamppwget http://www.apachefriends.org/download.php?xampp-linux-1.7.3.tar.gz tar xvfz xampp-linux-1.7.3.tar.gz –C /opt
3.2安裝svn模塊
mod_dav_svn該模塊用于apache讀取svn版本庫用yum install mod_dav_svn mod_python模塊用于apache運行python,Linux Trac需要它yum install mod_python以下操作使用admin賬號進行,admin為一個普通賬號,注意:權(quán)限設(shè)置很重要!
4.創(chuàng)建項目
4.1創(chuàng)建SVN版本庫
mkdir –p /home/admin/svn/myproject svnadmin create /home/admin/svn/myproject
4.2創(chuàng)建Linux Trac項目
mkdir –p /home/admin/trac/myproject trac-admin /home/admin/trac/myproject initenv
然后會出現(xiàn)以下提示:
Project Name: myproject
Database connection string: sqlite:db/trac.db
Repository type: SVN
Path to repository: /home/admin/svn/myproject
最后會提示Congratulations!表明創(chuàng)建成功
以下操作使用admin賬號進行
5.配置項目
5.1創(chuàng)建賬號文件
這里首先創(chuàng)建一個賬號文件,使用的是apache的htpasswd,該賬號文件最后由apache進行認證,并供svn和Linux Trac同時使用。為一個名為user1的用戶創(chuàng)建賬號htpasswd –c /home/admin/.htpasswd user1New password:輸入密碼Re-type new password:再輸入密碼再添加一個名為user2的用戶htpasswd /home/admin/.htpasswd user2
注意第二次以后創(chuàng)建沒有-c選項了,具體的選項可以直接輸入htpasswd看說明New password:輸入密碼Re-type new password:再輸入密碼……以此類推,創(chuàng)建完全部賬號
5.2配置SVN
這里要修改SVN的授權(quán)文件,在/home/admin/svn/myproject/conf里有三個文件,由于認證由apache完成,因此,這里只需要修改授權(quán)文件authz打開authz,把原有內(nèi)容刪除,填寫以下內(nèi)容:
[groups]developers = user1,user2
[/]@developers = rw* =
[repository:/]@developers = rw* =
表明,user1、user2對版本庫有讀寫權(quán)限,其他人沒有權(quán)限。如果有新的用戶加進來,只需在developers組中添加即可
5.3配置Linux Trac
Linux Trac的配置文件在/home/admin/trac/myproject/conf/trac.ini,里面有很多配置選項,這里主要配置svn的授權(quán)打開trac.ini,找到authz_file,填入以下內(nèi)容:…
[trac]authz_file = /home/admin/svn/myproject/conf/authz authz_module_name = repository……注意,上面的authz_module_name = repository對應(yīng)了svn配置文件中的[repository:/]
以下操作使用root賬號進行
6.連接apache、trac、svn、ssl
6.1配置svn模塊
首先把svn模塊拷貝到xampp中
cp /usr/lib/httpd/modules/mod_dav_svn.so /opt/lampp/modules
cp /usr/lib/httpd/modules/mod_authz_svn.so /opt/lampp/modules
cp /usr/lib/httpd/modules/mod_python.so /opt/lampp/modules
然后修改/opt/lampp/etc/httpd.conf,找到LoadModule,在后面添加三行:
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
LoadModule python_module modules/mod_python.so
6.2修改apache權(quán)限
apache默認是以nobody身份運行的,如果不修改權(quán)限,那么無法讀取/home/admin下的內(nèi)容,會出現(xiàn)403 Permission Denied錯誤同樣是在httpd.conf中,搜索nobody將其改成admin即:……User admin……
6.3配置Linux Trac
xampp的https連接配置文件在/opt/lampp/etc/extra/httpd-ssl.conf打開它,隨便找個地方,不過一定要在<VirtualHost>……<VirtualHost>標簽對中,添加:<Location /trac>
SetHandler mod_python
PythonInterpreter main_interpreter
PythonHandler trac.web.modpython_frontend
PythonOption TracEnv /home/admin/trac/myproject
PythonOption TracUriRoot /trac
</Location>
<Location /trac/login>
AuthType Basic
AuthName "trac"
AuthUserFile /home/admin/.htpasswd
Require valid-user
</Location>
注:如果連首頁都需要保密,那么就把AuthType、AuthName等全部寫入/trac的Location中。
6.4Linux Trac配置svn
同樣是在httpd-ssl.conf中添加
<Location /svn>
DAV svn
SVNParentPath /home/admin/svn
AuthType Basic
AuthName "repository"
AuthUserFile /home/admin/.htpasswd
AuthzSVNAccessFile /home/admin/svn/myproject/conf/authz
Require valid-user
</Location>
6.5替換沖突文件
xampp自帶的sqlite庫與Linux Trac有沖突,可以使用fedora中的sqlite庫替換
yum install libsqlite3x
yum install libsqlite3x-devel
cp /usr/lib/libsqlite3.so /opt/lampp/lib/libsqlite3.so
下面操作需要root賬號
7.完成
/opt/lampp/lampp startapache如果需要停止就是
/opt/lampp/lampp stopapache按照上面的步驟,Linux Trac和svn的地址分別是:https://localhost/trac https://localhost/svn/myproject
svn可以用瀏覽器訪問,也可以使用工具下載
注:不用啟動Linux Trac或svnserver
【編輯推薦】