<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title><![CDATA[Latest posts for the topic "在CentOS 4.5 Linux上安裝Trac 0.10.4"]]></title>
		<link>https://forum.andowson.com/posts/list/6.page</link>
		<description><![CDATA[Latest messages posted in the topic "在CentOS 4.5 Linux上安裝Trac 0.10.4"]]></description>
		<generator>JForum - http://www.jforum.net</generator>
			<item>
				<title>在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ [url=http://trac.edgewall.org/]Trac[/url]是一個用[url=http://www.python.org/]Python[/url]程式語言開發出來的軟體開發專案管理程式，可與[url=http://subversion.tigris.org/]Subversion[/url]版本控制系統整合，也支援[url=http://www.postgresql.org/]PostgreSQL[/url]資料庫，可讓開發團隊透過網頁介面來管理專案的Wiki文件及問題追蹤。Trac不但免費且開放原始碼(符合[url=http://trac.edgewall.org/wiki/TracLicense]BSD[/url]授權)，安裝在同樣也是免費的Linux作業系統[url=http://www.centos.org/]CentOS[/url]上是個非常棒的組合。 
<br>
<br>
通常同一個開發團隊會參與多個專案，在安裝時我們需要考慮支援多專案的管理。對於多專案的管理，我們可以這樣設計: 
<br>
 :arrow:每個Project一個專屬的Subverstion Repository，但是放在一個共同的根目錄下: 
<br>
/path/to/repos/project1 
<br>
/path/to/repos/project2 
<br>
Repository存取方式: 
<br>
http://my.domain.name/svn/project1 
<br>
http://my.domain.name/svn/project2 
<br>
<br>
 :arrow:每個Project一個專屬的Trac Project Environment，但是放在一個共同的根目錄下: 
<br>
/path/to/projects/project1 
<br>
/path/to/projects/project2 
<br>
Trac Project存取方式: 
<br>
http://my.domain.name/projects/project1 
<br>
http://my.domain.name/projects/project2 
<br>
<br>
瞭解了設計的理念後，要安裝就很容易了，請將以下的程式碼複製後貼到一個trac_setup.sh檔案內，並修改相關的參數，然後將trac_setup.sh變更為可執行，然後執行即可(假設已安裝好gcc和[url=http://www.andowson.com/posts/list/177.page]PostgreSQL[/url])。 
<br>
[code]#!/bin/bash 
<br>
# Name: trac_setup.sh 
<br>
# Author: Andowson Chang (andowson [at] gmail [dot] com) 
<br>
# Version: 0.9 
<br>
# Since: 2007-01-10 
<br>
# Last Modified: 2007-08-31 
<br>
<br>
# 請自行依據實際環境修改這邊的參數 
<br>
SETUP_DIR=/var/trac/setup 
<br>
REPOSITORY=/var/trac/repos 
<br>
PROJECTS=/var/trac/projects 
<br>
TRAC_ADMIN_USER=admin 
<br>
TRAC_ADMIN_PASSWD=admin 
<br>
APACHE_USER=apache 
<br>
APACHE_GROUP=tomcat 
<br>
<br>
# 安裝 Python, ClearSilver, pyPgSQL, Subversion, SWIG, mod_python 
<br>
# 因為要裝的東西不少，建議是建立一個目錄來存放比較好管理 
<br>
mkdir -p ${SETUP_DIR} 
<br>
cd ${SETUP_DIR} 
<br>
<br>
# 安裝Python 
<br>
yum -y install python python-devel mod_python 
<br>
PYTHON_VERSION=`python -V 2&gt;&amp;1 | awk '{print $2}' | cut -d "." -f1-2` 
<br>
<br>
# 安裝ClearSilver 
<br>
yum -y install zlib-devel 
<br>
wget http://www.clearsilver.net/downloads/clearsilver-0.10.5.tar.gz 
<br>
tar zxf clearsilver-0.10.5.tar.gz 
<br>
cd clearsilver-0.10.5 
<br>
./configure --with-python=/usr/bin/python --prefix=/usr/local --disable-ruby --disable-java --disable-apache --disable-csharp --disable-perl 
<br>
make 
<br>
make install 
<br>
cd .. 
<br>
<br>
# 安裝pyPgSQL 
<br>
yum -y install postgresql-devel 
<br>
wget http://nchc.dl.sourceforge.net/sourceforge/pypgsql/pyPgSQL-2.5.1.tar.gz 
<br>
tar zxvf pyPgSQL-2.5.1.tar.gz 
<br>
cd pyPgSQL-2.5.1 
<br>
python setup.py install 
<br>
cd .. 
<br>
<br>
# 安裝Subversion 
<br>
yum -y install subversion mod_dav_svn swig 
<br>
<br>
# 安裝setuptools 
<br>
wget http://peak.telecommunity.com/dist/ez_setup.py 
<br>
python ez_setup.py 
<br>
<br>
# 安裝docutils 
<br>
wget http://docutils.sourceforge.net/docutils-snapshot.tgz 
<br>
tar zxf docutils-snapshot.tgz 
<br>
cd docutils 
<br>
python setup.py install 
<br>
cd tools 
<br>
./rst2html.py ../FAQ.txt ../FAQ.html 
<br>
cd ../.. 
<br>
<br>
# 安裝SilverCity 
<br>
yum -y install gcc-c++ libstdc++-devel 
<br>
wget http://nchc.dl.sourceforge.net/sourceforge/silvercity/SilverCity-0.9.7.tar.gz 
<br>
tar zxf SilverCity-0.9.7.tar.gz 
<br>
cd SilverCity-0.9.7 
<br>
python setup.py install 
<br>
cd .. 
<br>
<br>
# 安裝enscript 
<br>
yum -y install enscript 
<br>
<br>
# 安裝 mxDateTime 
<br>
wget http://downloads.egenix.com/python/egenix-mx-base-3.0.0.linux-i686-py${PYTHON_VERSION}_ucs4.prebuilt.zip 
<br>
unzip egenix-mx-base-3.0.0.linux-i686-py${PYTHON_VERSION}_ucs4.prebuilt.zip 
<br>
cd egenix-mx-base-3.0.0.linux-i686-py${PYTHON_VERSION}_ucs4.prebuilt 
<br>
python setup.py build --skip install 
<br>
cd .. 
<br>
<br>
# 安裝Trac 
<br>
wget http://ftp.edgewall.com/pub/trac/trac-0.10.4.tar.gz 
<br>
tar zxf trac-0.10.4.tar.gz 
<br>
cd trac-0.10.4 
<br>
python setup.py install 
<br>
cd .. 
<br>
<br>
# 安裝WebAdmin管理介面 
<br>
easy_install http://svn.edgewall.com/repos/trac/sandbox/webadmin/ 
<br>
<br>
# 安裝AccountManager 
<br>
easy_install http://trac-hacks.org/svn/accountmanagerplugin/0.10/ 
<br>
<br>
# 安裝IniAdmin 
<br>
easy_install http://trac-hacks.org/svn/iniadminplugin/0.11/ 
<br>
<br>
# 安裝Gantt圖 
<br>
wget http://willbarton.com/files/TracGantt-0.3.2a-py${PYTHON_VERSION}.egg 
<br>
easy_install TracGantt-0.3.2a-py${PYTHON_VERSION}.egg 
<br>
<br>
# 使用mod_python和Apache整合 
<br>
echo "&lt;Location /projects&gt; 
<br>
 SetHandler mod_python 
<br>
 PythonHandler trac.web.modpython_frontend 
<br>
 PythonOption TracEnvParentDir ${PROJECTS} 
<br>
 PythonOption TracUriRoot /projects 
<br>
 SetEnv PYTHON_EGG_CACHE /tmp 
<br>
&lt;/Location&gt; 
<br>
<br>
&lt;LocationMatch \"/projects/[^/]+/login\"&gt; 
<br>
 AuthType Basic 
<br>
 AuthName \"Trac\" 
<br>
 AuthUserFile ${PROJECTS}/.htpasswd 
<br>
 Require valid-user 
<br>
&lt;/LocationMatch&gt;" &gt;&gt; /etc/httpd/conf.d/python.conf 
<br>
<br>
# 使用mod_dav_svn和Apache整合 
<br>
echo "&lt;Location /svn&gt; 
<br>
 DAV svn 
<br>
 SVNParentPath ${REPOSITORY} 
<br>
 AuthType Basic 
<br>
 AuthName \"Subversion Repository\" 
<br>
 AuthUserFile ${PROJECTS}/.htpasswd 
<br>
 AuthzSVNAccessFile ${PROJECTS}/svnaccess 
<br>
 &lt;LimitExcept GET PROPFIND OPTIONS REPORT&gt; 
<br>
 Require valid-user 
<br>
 &lt;/LimitExcept&gt; 
<br>
&lt;/Location&gt;" &gt;&gt; /etc/httpd/conf.d/subversion.conf 
<br>
<br>
# 新建Subversion Repository Root Directory 
<br>
mkdir -p ${REPOSITORY} 
<br>
chown -R ${APACHE_USER}.${APACHE_GROUP} ${REPOSITORY} 
<br>
<br>
# 新建Project Root Directory 
<br>
mkdir -p ${PROJECTS} 
<br>
chown -R ${APACHE_USER}.${APACHE_GROUP} ${PROJECTS} 
<br>
<br>
# 建立共用的管理者帳號 
<br>
htpasswd -bc ${PROJECTS}/.htpasswd ${TRAC_ADMIN_USER} ${TRAC_ADMIN_PASSWD} 
<br>
chown ${APACHE_USER}.${APACHE_GROUP} ${PROJECTS}/.htpasswd 
<br>
<br>
# 設定Repositoty存取權限 
<br>
echo "[/] 
<br>
* = r 
<br>
${TRAC_ADMIN_USER} = rw" &gt; ${PROJECTS}/svnaccess 
<br>
[/code] 
<br>
<br>
至此便安裝好了Trac，由於改了Apache的設定檔，故我們需要重新啟動Apache 
<br>
[code]service httpd restart[/code] 
<br>
<br>
接下來要為每個專案建立一個Trac環境，Trac只需要安裝一套就可以支援多個專案，但是每個專案都要建立一個自己的Trac資料庫，例如我們的專案叫做project1，我們就新建一個叫trac_project1的資料庫（如果還有project2，資料庫名稱便取叫trac_project2）。請將下面的程式碼存成/var/lib/pgsql/newtracdb.sh並設為可執行： 
<br>
[code=sql]psql -c "create user trac_$1 createdb;" template1 
<br>
psql -c "create database trac_$1 with encoding 'unicode';" -U trac_$1 template1 
<br>
psql -c "alter user trac_$1 nocreatedb;" template1 
<br>
psql -c "alter user trac_$1 with encrypted password 'trac_$1';" template1[/code] 
<br>
<br>
使用方式: 
<br>
[code]su - postgres 
<br>
./newtracdb.sh project1[/code] 
<br>
<br>
建立好了資料庫，我們可以將下面的指令存檔為newproject.sh並設為可執行： 
<br>
[code]# Name: newproject.sh 
<br>
# Author: Andowson Chang (andowson [at] gmail [dot] com) 
<br>
# Version: 0.9 
<br>
# Last Modified: 2007-08-31 
<br>
<br>
# 請自行依據實際環境修改這邊的參數 
<br>
REPOSITORY=/var/trac/repos/$1 
<br>
PROJECTS=/var/trac/projects 
<br>
PROJECT=${PROJECTS}/$1 
<br>
PROJECT_NAME="$2" 
<br>
PROJECT_MANAGER=$3 
<br>
DBNAME=trac_$1 
<br>
DBUSER=trac_$1 
<br>
DBPASSWD=trac_$1 
<br>
TRAC_ADMIN_USER=admin 
<br>
APACHE_USER=apache 
<br>
APACHE_GROUP=tomcat 
<br>
<br>
# 新建Subversion Repository 
<br>
svnadmin create --fs-type fsfs ${REPOSITORY} 
<br>
mkdir /tmp/$1 
<br>
mkdir /tmp/$1/branches 
<br>
mkdir /tmp/$1/tags 
<br>
mkdir /tmp/$1/trunk 
<br>
svn import /tmp/$1 file:///${REPOSITORY} --message 'Initial repository layout' 
<br>
rm -rf /tmp/$1 
<br>
chown -R ${APACHE_USER}.${APACHE_GROUP} ${REPOSITORY} 
<br>
<br>
echo " 
<br>
[$1:/] 
<br>
* = r 
<br>
${TRAC_ADMIN_USER} = rw 
<br>
${PROJECT_MANAGER} = rw" &gt;&gt; ${PROJECTS}/svnaccess 
<br>
<br>
# 新建一個Trac環境 
<br>
trac-admin ${PROJECT} initenv "${PROJECT_NAME}" postgres://${DBUSER}:${DBPASSWD}@localhost/${DBNAME} svn ${REPOSITORY} /usr/share/trac/templates 
<br>
chown -R ${APACHE_USER}.${APACHE_GROUP} ${PROJECTS} 
<br>
<br>
# 設定管理者帳號 
<br>
trac-admin ${PROJECT} permission add ${TRAC_ADMIN_USER} TRAC_ADMIN 
<br>
trac-admin ${PROJECT} permission add ${PROJECT_MANAGER} TRAC_ADMIN 
<br>
<br>
# 取消匿名使用者的部分寫入權限（以免有人惡意搗蛋） 
<br>
trac-admin ${PROJECT} permission remove anonymous TICKET_CREATE TICKET_MODIFY WIKI_CREATE WIKI_MODIFY 
<br>
trac-admin ${PROJECT} permission add authenticated TICKET_CREATE TICKET_MODIFY TICKET_VIEW WIKI_CREATE WIKI_MODIFY 
<br>
<br>
# 啟用 WebAdmin 
<br>
echo "[components] 
<br>
webadmin.* = enabled 
<br>
tracgantt.* = enabled 
<br>
iniadmin.iniadmin.iniadminplugin = enabled 
<br>
trac.web.auth.LoginModule = disabled 
<br>
acct_mgr.* = enabled 
<br>
<br>
[account-manager] 
<br>
password_format = htpasswd 
<br>
password_file = ${PROJECTS}/.htpasswd 
<br>
<br>
[ticket-custom] 
<br>
due_assign = text 
<br>
due_assign.label = Due to assign 
<br>
due_assign.value = YYYY/MM/DD 
<br>
<br>
dependencies = text 
<br>
dependencies.label = Dependencies 
<br>
dependencies.value = 
<br>
<br>
due_close= text 
<br>
due_close.label = Due to close 
<br>
due_close.value = YYYY/MM/DD 
<br>
<br>
include_gantt = checkbox 
<br>
include_gantt.label = Include in GanttChart 
<br>
include_gantt.value = 
<br>
<br>
[gantt-charts] 
<br>
# The format of dates entered by humans in the above ticket fields 
<br>
date_format = %Y/%m/%d 
<br>
<br>
# Include the ticket summary in the gantt chart display 
<br>
include_summary = true 
<br>
<br>
# Trim the included summary to the given number of characters 
<br>
summary_length = 16 
<br>
<br>
# Use the creation date of a ticket as the "due assign" date if no 
<br>
# assignment date is given 
<br>
use_creation_date = true 
<br>
<br>
# Show on the gantt chart the date the ticket was opened, to contrast 
<br>
# with the assignment date. 
<br>
show_opened = true" &gt;&gt; ${PROJECT}/conf/trac.ini 
<br>
<br>
# 調整一些共同的參數 
<br>
sed -i -e "s/max_size = 262144/max_size = 10000000/" -e "s/always_notify_owner = false/always_notify_owner = true/" -e "s/always_notify_reporter = false/always_notify_reporter = true/" -e "s/smtp_enabled = false/smtp_enabled = true/" -e "s/default_charset = iso-8859-15/default_charset = UTF-8/" ${PROJECT}/conf/trac.ini 
<br>
<br>
trac-admin ${PROJECT} permission add anonymous GANTT_VIEW[/code] 
<br>
執行方式： 
<br>
[code]./newproject.sh project1 "My Project1" user1[/code] 
<br>
<br>
接著編輯一個/var/lib/pgsql/session_attribute.sql檔案，將小組成員的姓名和email填寫好: 
<br>
[code=sql]insert into session_attribute(sid, authenticated, name, value) values('admin', 1, 'email', 'admin@example.org'); 
<br>
insert into session_attribute(sid, authenticated, name, value) values('admin', 1, 'name', 'Andowson Chang'); 
<br>
insert into session_attribute(sid, authenticated, name, value) values('user1', 1, 'email', 'user1@example.org'); 
<br>
insert into session_attribute(sid, authenticated, name, value) values('user1', 1, 'name', 'John Doe'); 
<br>
insert into session_attribute(sid, authenticated, name, value) values('user2', 1, 'email', 'user2@example.org'); 
<br>
insert into session_attribute(sid, authenticated, name, value) values('user2', 1, 'name', 'Mary Doe');[/code] 
<br>
<br>
將小組成員的資料加到這個新開好的專案 
<br>
[code]su - postgres 
<br>
psql trac_project1 trac_project1 -f session_attribute.sql[/code] 
<br>
<br>
要加入小組成員的寫入權限時，可以請他先透過Trac網頁介面register，然後再把帳號加到svnaccess去; 或者透過htpasswd幫他開好帳號及密碼，然後再把帳號加到svnaccess去。 
<br>
<br>
[code]htpasswd -b /var/trac/projects/.htpasswd user1 user1pwd 
<br>
htpasswd -b /var/trac/projects/.htpasswd user2 user2pwd[/code] 
<br>
<br>
vi /var/trac/projects/svnaccess 
<br>
[code] 
<br>
[/] 
<br>
* = r 
<br>
admin = rw 
<br>
<br>
[project1:/] 
<br>
* = r 
<br>
admin = rw 
<br>
user1 = rw 
<br>
user2 = rw 
<br>
[/code] 
<br>
參考資料: 
<br>
[url=http://twpug.net/docs/Subversion/]Version Control with Subversion中譯版[/url] 
<br>
[url=http://plog.longwin.com.tw/my_note-unix/2007/07/07/apache2_svn_trac_build_2007]Debian Linux: Apache2(Virtual Host) + Subversion(SVN) + Trac 快速建置[/url]]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/22.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/22.page</link>
				<pubDate><![CDATA[Wed, 10 Jan 2007 01:31:50]]> GMT</pubDate>
				<author><![CDATA[ andowson]]></author>
			</item>
			<item>
				<title>回覆:在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ Trac的中文化（尚未完整） 
<br>
<br>
[code]cd /var/trac/setup 
<br>
wget http://taipedia.selfip.info/templates.zh_TW.UTF-8.tar.gz 
<br>
tar zxvf templates.zh_TW.UTF-8.tar.gz 
<br>
mv /usr/share/trac/templates /usr/share/trac/templates.orig 
<br>
mv /var/trac/setup/templates.zh_TW.UTF-8 /usr/share/trac/templates[/code] 
<br>
<br>
參考資料： 
<br>
http://b6s.blogspot.com/2007/01/trac.html]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/53.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/53.page</link>
				<pubDate><![CDATA[Sat, 10 Feb 2007 18:13:12]]> GMT</pubDate>
				<author><![CDATA[ andowson]]></author>
			</item>
			<item>
				<title>回覆:在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ 升級到新版的Trac 0.10.4-&gt;0.11，一定要記得做資料庫備份！ 
<br>
[code]cd /var/trac/setup 
<br>
easy_install Genshi 
<br>
easy_install psycopg2 
<br>
easy_install docutils 
<br>
easy_install Pygments 
<br>
easy_install pytz 
<br>
easy_install Trac 
<br>
su - postgres 
<br>
psql -l 
<br>
pg_dump trac_project1 &gt; /tmp/trac_project1.bak 
<br>
exit 
<br>
trac-admin /var/trac/projects/project1 upgrade --no-backup 
<br>
trac-admin /var/trac/projects/project1 wiki upgrade[/code] 
<br>
<br>
升級後刪除舊的版本(for 0.11) 
<br>
cd /usr/lib/python2.3/site-packages 
<br>
rm -rf trac 
<br>
easy_install -m TracWebAdmin 
<br>
rm -rf TracWebAdmin* 
<br>
<br>
解決升級後不顯示Login的問題 
<br>
vi /var/trac/projects/project1/conf/trac.ini 
<br>
... 
<br>
[components] 
<br>
trac.web.auth.loginmodule = enabled 
<br>
webadmin.* = enabled 
<br>
...]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/117.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/117.page</link>
				<pubDate><![CDATA[Tue, 29 May 2007 23:00:57]]> GMT</pubDate>
				<author><![CDATA[ andowson]]></author>
			</item>
			<item>
				<title>回覆:在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ 最近遇到這個問題 
<br>
[quote]Traceback (most recent call last): 
<br>
 File "/usr/lib/python2.3/site-packages/trac/web/main.py", line 406, in dispatch_request 
<br>
 dispatcher.dispatch(req) 
<br>
 File "/usr/lib/python2.3/site-packages/trac/web/main.py", line 206, in dispatch 
<br>
 req.hdf = HDFWrapper(loadpaths=chrome.get_all_templates_dirs()) 
<br>
 File "/usr/lib/python2.3/site-packages/trac/web/chrome.py", line 263, in get_all_templates_dirs 
<br>
 dirs += provider.get_templates_dirs() 
<br>
 File "build/bdist.linux-i686/egg/acct_mgr/web_ui.py", line 252, in get_templates_dirs 
<br>
 File "/usr/lib/python2.3/site-packages/setuptools-0.6c3-py2.3.egg/pkg_resources.py", line 799, in resource_filename 
<br>
 return get_provider(package_or_requirement).get_resource_filename( 
<br>
 File "/usr/lib/python2.3/site-packages/setuptools-0.6c3-py2.3.egg/pkg_resources.py", line 1229, in get_resource_filename 
<br>
 return self._extract_resource(manager, zip_path) 
<br>
 File "/usr/lib/python2.3/site-packages/setuptools-0.6c3-py2.3.egg/pkg_resources.py", line 1235, in _extract_resource 
<br>
 last = self._extract_resource( 
<br>
 File "/usr/lib/python2.3/site-packages/setuptools-0.6c3-py2.3.egg/pkg_resources.py", line 1249, in _extract_resource 
<br>
 real_path = manager.get_cache_path( 
<br>
 File "/usr/lib/python2.3/site-packages/setuptools-0.6c3-py2.3.egg/pkg_resources.py", line 880, in get_cache_path 
<br>
 self.extraction_error() 
<br>
 File "/usr/lib/python2.3/site-packages/setuptools-0.6c3-py2.3.egg/pkg_resources.py", line 846, in extraction_error 
<br>
 raise err 
<br>
ExtractionError: Can't extract file(s) to egg cache 
<br>
<br>
The following error occurred while trying to extract file(s) to the Python egg 
<br>
cache: 
<br>
<br>
 [Errno 13] Permission denied: '/.python-eggs' 
<br>
<br>
The Python egg cache directory is currently set to: 
<br>
<br>
 /.python-eggs 
<br>
<br>
Perhaps your account does not have write access to this directory? You can 
<br>
change the cache directory by setting the PYTHON_EGG_CACHE environment 
<br>
variable to point to an accessible directory. 
<br>
[/quote] 
<br>
<br>
參考了下面這個網址, 主要是需要修改PYTHON_EGG_CACHE的設定 
<br>
http://projects.edgewall.com/trac/wiki/TracPlugins#SettingupthePluginCache 
<br>
<br>
修改/etc/httpd/conf.d/python.conf: 
<br>
[code] 
<br>
&lt;Location /projects&gt; 
<br>
 SetHandler mod_python 
<br>
 PythonHandler trac.web.modpython_frontend 
<br>
 PythonOption TracEnvParentDir /var/trac/projects 
<br>
 PythonOption TracUriRoot /projects 
<br>
 SetEnv PYTHON_EGG_CACHE /tmp 
<br>
&lt;/Location&gt; 
<br>
[/code] 
<br>
<br>
重新啟動Apache即可]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/218.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/218.page</link>
				<pubDate><![CDATA[Thu, 23 Aug 2007 08:10:09]]> GMT</pubDate>
				<author><![CDATA[ andowson]]></author>
			</item>
			<item>
				<title>回覆:在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ 如果安裝Trac+Subversion的Apache主機本身也跟Tomcat整合起來的話, 要再修改一下mod_jk的設定, 例如/etc/httpd/conf.d/mod_jk.conf: 
<br>
[code=xml] 
<br>
JkUnMount /projects/* loadbalancer 
<br>
JkMount /*.jsp loadbalancer 
<br>
<br>
# Deny direct access to WEB-INF 
<br>
&lt;LocationMatch ".*WEB-INF.*"&gt; 
<br>
 Deny from all 
<br>
&lt;/LocationMatch&gt; 
<br>
<br>
# Allow direct access to WEB-INF directory under /projects and /svn 
<br>
&lt;LocationMatch "[/projects/ /svn/].*/WEB-INF.*"&gt; 
<br>
 Allow from all 
<br>
&lt;/LocationMatch&gt; 
<br>
[/code] 
<br>
<br>
這樣子就可看到JSP和WEB-INF底下檔案的原始碼了.]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/221.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/221.page</link>
				<pubDate><![CDATA[Sun, 26 Aug 2007 00:08:59]]> GMT</pubDate>
				<author><![CDATA[ andowson]]></author>
			</item>
			<item>
				<title>回覆:在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ 修正 [quote]Report execution failed: 錯誤: 欄位"modified"不存在[/quote] 
<br>
用具有TRAC_ADMIN權限的帳號如admin登入，點選View Tickets-&gt;點選{6} All Tickets By Milestone (Including closed) 
<br>
點選Edit Report按鈕，替換為下方的程式碼： 
<br>
[code]SELECT p.value AS __color__, 
<br>
 t.milestone AS __group__, 
<br>
 (CASE status 
<br>
 WHEN 'closed' THEN 'color: #777; background: #ddd; border-color: #ccc;' 
<br>
 ELSE 
<br>
 (CASE owner WHEN $USER THEN 'font-weight: bold' END) 
<br>
 END) AS __style__, 
<br>
 id AS ticket, summary, component, status, 
<br>
 resolution,version, t.type AS type, priority, owner, 
<br>
 changetime AS modified, 
<br>
 time AS _time,reporter AS _reporter 
<br>
 FROM ticket t 
<br>
 LEFT JOIN enum p ON p.name = t.priority AND p.type = 'priority' 
<br>
 ORDER BY (milestone IS NULL), milestone DESC, (status = 'closed'), 
<br>
 (CASE status WHEN 'closed' THEN changetime ELSE (-1)* CAST(p.value AS numeric) END) DESC[/code]]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/239.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/239.page</link>
				<pubDate><![CDATA[Fri, 7 Sep 2007 19:27:53]]> GMT</pubDate>
				<author><![CDATA[ andowson]]></author>
			</item>
			<item>
				<title>回覆:在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ 客戶端能改密碼嗎？]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/408.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/408.page</link>
				<pubDate><![CDATA[Sat, 19 Jul 2008 16:39:13]]> GMT</pubDate>
				<author><![CDATA[ wtom]]></author>
			</item>
			<item>
				<title>回覆:在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ 在0.10.4是可以的，登入後選擇My Account功能即可修改密碼。 
<br>
升級到0.11後，webadmin改為內建，之前安裝的TracAccountManager Plugin變成失效，因此註冊register和修改密碼的My Account功能都消失了。]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/409.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/409.page</link>
				<pubDate><![CDATA[Sat, 19 Jul 2008 18:36:57]]> GMT</pubDate>
				<author><![CDATA[ andowson]]></author>
			</item>
			<item>
				<title>回覆:在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ 降級trac 0.11-&gt;0.10.5 
<br>
cd /var/trac/setup 
<br>
wget <a class="snap_shots" href="http://ftp.edgewall.com/pub/trac/trac-0.10.5.tar.gz" target="_blank">http://ftp.edgewall.com/pub/trac/trac-0.10.5.tar.gz</a>
<br>
tar zxvf trac-0.10.5.tar.gz 
<br>
cd trac-0.10.5 
<br>
python setup.py install 
<br>
easy_install <a class="snap_shots" href="http://svn.edgewall.com/repos/trac/sandbox/webadmin/" target="_blank">http://svn.edgewall.com/repos/trac/sandbox/webadmin/</a>
<br>
cd /usr/lib/python2.3/site-packages 
<br>
rm -rf Trac-0.11-py2.3.egg/ 
<br>
vi easy-install.pth 
<br>
刪除Trac-0.11 
<br>
service httpd stop 
<br>
su - postgres 
<br>
pg_dump trac_project1 &gt; /tmp/trac_project1-0.11.bak 
<br>
dropdb trac_project1 
<br>
dropuser trac_project1 
<br>
./newtracdb.sh project1 
<br>
psql trac_project1 &lt; /tmp/trac_project1.bak 
<br>
exit 
<br>
trac-admin /var/trac/projects/project1 upgrade --no-backup 
<br>
trac-admin /var/trac/projects/project1 wiki upgrade 
<br>
service httpd start]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/410.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/410.page</link>
				<pubDate><![CDATA[Sat, 19 Jul 2008 21:55:53]]> GMT</pubDate>
				<author><![CDATA[ andowson]]></author>
			</item>
			<item>
				<title>在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ 请问代码用什么提交比较好？在trac上没有找到]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/412.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/412.page</link>
				<pubDate><![CDATA[Sat, 26 Jul 2008 17:34:13]]> GMT</pubDate>
				<author><![CDATA[ wtom]]></author>
			</item>
			<item>
				<title>回覆:在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ 程式碼提交可以使用Subversion Client來進行，例如[url=http://tortoisesvn.tigris.org/]TortoiseSVN[/url]或安裝開發工具的plug-in，例[url=http://subclipse.tigris.org/]Subclipse[/url] for [url=http://www.eclipse.org]Eclipse[/url]，可以參考這篇文章 
<br>
http://www.andowson.com/posts/list/57.page]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/413.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/413.page</link>
				<pubDate><![CDATA[Sat, 26 Jul 2008 19:28:28]]> GMT</pubDate>
				<author><![CDATA[ andowson]]></author>
			</item>
			<item>
				<title>在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ 谢谢你的回复，我在执行完trac_setup.sh中的过程（大部分采用RHEL5中的RPM包安装）以及执行 1. ./newproject.sh project1 "My Project1" user1 没有出问题，之后访问http://localhost/svn/project1出现：Forbidden 
<br>
You don't have permission to access /svn/project1 on this server. 
<br>
是什么问题？ 
<br>
执行http://localhost/projects/project1时出现： 
<br>
Environment not found]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/414.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/414.page</link>
				<pubDate><![CDATA[Sun, 27 Jul 2008 18:10:29]]> GMT</pubDate>
				<author><![CDATA[ wtom]]></author>
			</item>
			<item>
				<title>回覆:在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ 請問您的svnaccess（依您實際安裝位置而定，本文是位於/var/trac/projects/svnaccess）內的設定為何？ 
<br>
有無加入[color=red]* = r[/color]的設定在[/]及[project1:/]下？ 
<br>
另外您可以執行一下psql -l來確認一下trac_project1這個資料庫存在嗎？如果存在您可以將它刪除(dropdb trac_project1;dropuser trac_project1)再重新建立一次(newtracdb.sh)，然後再執行一次newproject.sh，完成後再重新啟動一次Apache(service httpd restart)。]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/415.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/415.page</link>
				<pubDate><![CDATA[Mon, 28 Jul 2008 00:48:47]]> GMT</pubDate>
				<author><![CDATA[ andowson]]></author>
			</item>
			<item>
				<title>在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ 按照您的说法我试了一下，问题依旧。您回复： 
<br>
<br>
“請問您的svnaccess（依您實際安裝位置而定，本文是位於/var/trac/projects/svnaccess）內的設定為何？ 
<br>
有無加入* = r的設定在[/]及[project1:/]下？ 
<br>
另外您可以執行一下psql -l來確認一下trac_project1這個資料庫存在嗎？如果存在您可以將它刪除(dropdb trac_project1;dropuser trac_project1)再重新建立一次(newtracdb.sh)，然後再執行一次newproject.sh，完成後再重新啟動一次Apache(service httpd restart)。” 
<br>
<br>
我实际的位置“/home/trac/projects/svnaccess”，经检查svnaccess文件内容无错误，其内容如下： 
<br>
[/] 
<br>
admin =rw 
<br>
<br>
[project1:/] 
<br>
* = r 
<br>
admin = rw 
<br>
user1 = rw 
<br>
user2 =rw 
<br>
<br>
使用psql –l后发现数据库已经存在了，按上述要求重建在执行上述删除和创建过程后，依然如故。 
<br>
<br>
下面我介绍一下我的安装过程： 
<br>
因为我安装的是RHEL5.0，没有REDHAT的安装好因此无法使用yum 命令从redhat 升级，因此我考虑使用安装光盘内的rpm 安装文件。 
<br>
1、 在安装RRHEL5.0 时选择安装SUBVERSION、PostgreSQL、python-2.4.3 
<br>
2、 从光盘中拷贝出mod_python-3.2.8-3.1.i386.rpm、libxml2-python-2.6.26-2.1.2.i386.rpm、mod_python-3.2.8-3.1.i386.rpm、swig-1.3.29-2.el5.i386.rpm、python-devel-2.4.3-19.el5.i386.rpm并用rpm –ivh 指令安装。 
<br>
3、 安装后检查系统内的软件安装情况： 
<br>
<br>
httpd Version : 2.2.3 Release : 6.el5 
<br>
python Version : 2.4.3 Release : 19.el5 
<br>
python-devel Version : 2.4.3 Release : 19.el5 
<br>
mod_python Version : 3.2.8 Release : 3.1 
<br>
subversion Version : 1.4.2 Release : 2.el5 
<br>
mod_dav_svn Version : 1.4.2 Release : 2.el5 
<br>
swig Version : 1.3.29 Release :2.el5 
<br>
<br>
4、 从网络上下载的软件包如下： 
<br>
<br>
clearsilver-0.10.5.tar.gz 
<br>
docutils-snapshot.tgz 
<br>
egenix-mx-base-3.0.0.linux-i686-py2.4_ucs4.prebuilt.zip 
<br>
egenix-mx-base-3.1.0.linux-i686-py2.4_ucs4.prebuilt.zip 
<br>
enscript-1.6.4.tar.gz 
<br>
ez_setup.py 
<br>
pyPgSQL-2.5.1.tar.gz 
<br>
SilverCity-0.9.7.tar.gz 
<br>
TracGantt-0.3.2a-py2.4.egg 
<br>
Trac0.10.4zh3 
<br>
<br>
5、 按照您文章中的顺序进行安装，区别在于第2点中的安装包是用rpm安装，不是您文中使用的yum 指令 
<br>
<br>
6、 安装完trac_setup.sh中的软件后，再执行./newtracdb.sh project1（有点小问题，我在postgres下一条一条执行的，也创建了数据库和用户）， 再执行./newproject.sh project1 "My Project1" user1 并得到trac成功信息 
<br>
<br>
至此，我觉得可以用http://localhost/svn/project1来查看源码，而结果就是上面的情况，用http://localhost/ projects /project1 来查看TRAC时出现Environment not found， 
<br>]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/426.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/426.page</link>
				<pubDate><![CDATA[Sat, 9 Aug 2008 16:52:54]]> GMT</pubDate>
				<author><![CDATA[ wtom]]></author>
			</item>
			<item>
				<title>回覆:在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ 1.請加上* = r到/home/trac/projects/svnaccess的[/]下，如下： 
<br>
[/] 
<br>
* = r 
<br>
admin = rw 
<br>
<br>
[project1:/] 
<br>
* = r 
<br>
admin = rw 
<br>
user1 = rw 
<br>
user2 =rw 
<br>
<br>
2.請問您有沒有執行trac_setup.sh的98-142行部分，可否檢視一下這幾個設定檔： 
<br>
/etc/httpd/conf.d/python.conf 
<br>
/etc/httpd/conf.d/subversion.conf 
<br>
<br>
 :arrow: 檢查/etc/httpd/conf.d/python.conf的檔尾有沒有下列設定： 
<br>
[code] 
<br>
&lt;Location /projects&gt; 
<br>
 SetHandler mod_python 
<br>
 PythonHandler trac.web.modpython_frontend 
<br>
 PythonOption TracEnvParentDir /home/trac/projects 
<br>
 PythonOption TracUriRoot /projects 
<br>
 SetEnv PYTHON_EGG_CACHE /tmp 
<br>
&lt;/Location&gt; 
<br>
<br>
&lt;LocationMatch "/projects/[^/]+/login"&gt; 
<br>
 AuthType Basic 
<br>
 AuthName "Trac" 
<br>
 AuthUserFile /home/trac/projects/.htpasswd 
<br>
 Require valid-user 
<br>
&lt;/LocationMatch&gt; 
<br>
[/code] 
<br>
<br>
 :arrow: 檢查/etc/httpd/conf.d/subversion.conf的檔尾有沒有下列設定： 
<br>
[code] 
<br>
&lt;Location /svn&gt; 
<br>
 DAV svn 
<br>
 SVNParentPath /home/trac/repos 
<br>
 &lt;LimitExcept GET PROPFIND OPTIONS REPORT&gt; 
<br>
 AuthType Basic 
<br>
 AuthName "Subversion repository" 
<br>
 AuthUserFile /home/trac/projects/.htpasswd 
<br>
 AuthzSVNAccessFile /home/trac/projects/svnaccess 
<br>
 Require valid-user 
<br>
 &lt;/LimitExcept&gt; 
<br>
&lt;/Location&gt; 
<br>
[/code]]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/427.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/427.page</link>
				<pubDate><![CDATA[Sat, 9 Aug 2008 17:19:17]]> GMT</pubDate>
				<author><![CDATA[ andowson]]></author>
			</item>
			<item>
				<title>在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ 按照第1点执行，检查第2点中提到的/etc/httpd/conf.d/python.conf 及/etc/httpd/conf.d/subversion.conf 文件，设定与回复中的内容一致，重启httpd后，情况依旧。 
<br>
我估计问题出在執行trac_setup.sh中的指令，因为我是用rpm包安装的，可能的原因有3个： 
<br>
1、libxml2-python-2.6.26-2.1.2.i386.rpm这个包对不对，它是否是适合python-2.6的而不是python-2.4的。 
<br>
2、subversion默认配置文件的位置不对，我用rpm -ql subversion 检查发现 
<br>
/etc/subversion 
<br>
/usr/bin/svn 
<br>
usr/bin/svnadmin 
<br>
...... 
<br>
其中subversion的配置文件在/etc/subversion中，而按照上面的安装过程配置文件应是在/etc/httpd/conf.d/subversion.conf 
<br>
3、在您文中subversion安装应当是 
<br>
yum -y install subversion mod_dav_svn swig，是在一行中完成的，而我安装是rpm -ivh swig-1.3.29-2.el5.i386.rpm,是分开安装的。 
<br>
<br>
不知道是否是上述原因导致错误出现？]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/431.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/431.page</link>
				<pubDate><![CDATA[Mon, 11 Aug 2008 09:51:24]]> GMT</pubDate>
				<author><![CDATA[ wtom]]></author>
			</item>
			<item>
				<title>回覆:在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ 請問您有修改newproject.sh的第7~17行的參數嗎？ 
<br>
<br>
我有個建議就是可否請您將Trac整個移掉重裝，然後按照我這篇文章的預設路徑去裝裝看，先排除掉路徑問題，如果裝得起來您可再自行調整路徑重新安裝一次。]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/434.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/434.page</link>
				<pubDate><![CDATA[Mon, 11 Aug 2008 21:54:20]]> GMT</pubDate>
				<author><![CDATA[ andowson]]></author>
			</item>
			<item>
				<title>在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ thanks! 
<br>
已解决，是因为SELinux的原因]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/452.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/452.page</link>
				<pubDate><![CDATA[Wed, 3 Sep 2008 10:37:57]]> GMT</pubDate>
				<author><![CDATA[ wtom]]></author>
			</item>
			<item>
				<title>在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ 能否再问一个问题： 
<br>
在使用http://localhost/svn/project1访问时没有权限控制，也就是说任何人都可以访问代码。 
<br>
因此我将/home/trac/projects/svnaccess中的内容进行修改： 
<br>
[/] 
<br>
admin = rw 
<br>
<br>
[project1:/] 
<br>
admin = rw 
<br>
user1 = rw 
<br>
user2 =rw 
<br>
<br>
将其中的* = r 删除，之后用http://localhost/svn/project1访问就出现 
<br>
Forbidden 
<br>
You don't have permission to access /svn/project1 on this server. 
<br>
而没有出现认证对话框，有什么办法可让其出现认证框以输入user passwd。 
<br>]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/461.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/461.page</link>
				<pubDate><![CDATA[Sat, 6 Sep 2008 11:24:53]]> GMT</pubDate>
				<author><![CDATA[ wtom]]></author>
			</item>
			<item>
				<title>回覆:在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ 經過測試之後發現，svnaccess中的[/]是給Trac看的，其他部分[repos-name:/]才是給Apache看的，如果您將[/]底下的 * = r刪除，則您需要將其他可以讀取或寫入的使用者明確地加到這個section來，例如： 
<br>
[/] 
<br>
admin = rw 
<br>
user1 = rw 
<br>
user2 = rw 
<br>
否則在Trac登入後按下[color=blue]Browse Source[/color]時會出現[color=red]Insufficient permissions to access /[/color]的錯誤。 
<br>
<br>
如果要管控http://localhost/svn/project1時需要輸入帳號密碼，則可以修改/etc/httpd/conf.d/subversion.conf中的設定 
<br>
[code] 
<br>
&lt;Location /svn&gt; 
<br>
 DAV svn 
<br>
 SVNParentPath /home/andowson/repos 
<br>
 #&lt;LimitExcept GET PROPFIND OPTIONS REPORT&gt; 
<br>
 AuthType Basic 
<br>
 AuthName "Subversion repository" 
<br>
 AuthUserFile /home/andowson/projects/.htpasswd 
<br>
 AuthzSVNAccessFile /home/andowson/projects/svnaccess 
<br>
 Require valid-user 
<br>
 #&lt;/LimitExcept&gt; 
<br>
&lt;/Location&gt; 
<br>
[/code] 
<br>
將原來的&lt;LimitExcept&gt;註解掉或刪除掉，再重新啟動Apache即可]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/462.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/462.page</link>
				<pubDate><![CDATA[Sat, 6 Sep 2008 12:43:25]]> GMT</pubDate>
				<author><![CDATA[ andowson]]></author>
			</item>
			<item>
				<title>在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ <br>
在执行./newtracdb.sh project1时总是出现以下错误： 
<br>
bash-3.1$ ./newtracdb.sh project1 
<br>
" 不存在命错误: 数据库 "template1 
<br>
" 不存在命错误: 数据库 "template1 
<br>
" 不存在命错误: 数据库 "template1 
<br>
" 不存在命错误: 数据库 "template1 
<br>
但是将命令分拆，一行一行的执行却没有问题，很不方便。 
<br>
bash-3.1$ psql -c "create user trac_project1 createdb;" template1 
<br>
CREATE ROLE 
<br>
bash-3.1$ psql -c "create database trac_project1 with encoding 'unicode';" -U trac_project1 template1 
<br>
CREATE DATABASE 
<br>
bash-3.1$ psql -c "alter user trac_project1 nocreatedb;" template1 
<br>
ALTER ROLE 
<br>
bash-3.1$ psql -c "alter user trac_project1 with encrypted password 'trac_project1';" template1 
<br>
ALTER ROLE 
<br>
<br>
请问是什么原因？ 
<br>]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/464.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/464.page</link>
				<pubDate><![CDATA[Mon, 8 Sep 2008 11:28:59]]> GMT</pubDate>
				<author><![CDATA[ wtom]]></author>
			</item>
			<item>
				<title>在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ 我查了数据库日志： 
<br>
应当是“致命错误，数据库 "template1 "不存在”]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/465.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/465.page</link>
				<pubDate><![CDATA[Mon, 8 Sep 2008 18:19:26]]> GMT</pubDate>
				<author><![CDATA[ wtom]]></author>
			</item>
			<item>
				<title>回覆:在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ 您問的內容比較屬於跟PostgreSQL有關的問題，請參考這篇[url]http://www.andowson.com/posts/list/140.page[/url]]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/466.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/466.page</link>
				<pubDate><![CDATA[Tue, 9 Sep 2008 01:53:48]]> GMT</pubDate>
				<author><![CDATA[ andowson]]></author>
			</item>
			<item>
				<title>在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ 配置完成后发现在trac中任何登陆的人均可查看所有代码，我希望能够做到与SVN一样的权限控制，有什么办法吗？ 
<br>
[/] 
<br>
admin = rw 
<br>
user1 = rw 
<br>
<br>
[project1:/] 
<br>
admin = rw 
<br>
user1 = rw 
<br>
user2 =rw 
<br>
<br>
[project2:/] 
<br>
admin = rw 
<br>
user2 =rw 
<br>
user1登陆后能够浏览project2的所有代码，能够控制不让他浏览project2代码吗？]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/467.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/467.page</link>
				<pubDate><![CDATA[Tue, 9 Sep 2008 11:28:01]]> GMT</pubDate>
				<author><![CDATA[ wtom]]></author>
			</item>
			<item>
				<title>回覆:在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ 經過一連串的測試後發現，如果我們要用同一個svnaccess來完成這個需求: 
<br>
[color=blue]user1只能看到project1的source code而user2只能看到project2的source code[/color] 
<br>
是不可能的，因為： 
<br>
1.如果我們將svnaccess最上面的[/]區塊刪除時，變成如下： 
<br>
[project1:/] 
<br>
admin = rw 
<br>
user1 = rw 
<br>
user2 =rw 
<br>
<br>
[project2:/] 
<br>
admin = rw 
<br>
user2 =rw 
<br>
配合修改/etc/httpd/conf.d/subversion.conf中的設定，此時我們可以控管由網頁去存取http://localhost/svn/project1時，需要輸入帳號密碼，此時用user1可以登入。接著將網址改成http://localhost/svn/project2，此時會再要求輸入帳號及密碼，但是不論嘗試多少次，用user1都不會成功。 
<br>
<br>
2.此時再用user1登入Trac的project1然後去Browse Source時就會遇到Insufficient permissions to access /的錯誤。於是我們又將[/]區塊加回去svnaccess： 
<br>
[/] 
<br>
admin = rw 
<br>
user1 = rw 
<br>
<br>
[project1:/] 
<br>
admin = rw 
<br>
user1 = rw 
<br>
user2 =rw 
<br>
<br>
[project2:/] 
<br>
admin = rw 
<br>
user2 =rw 
<br>
此時，可以正常瀏覽source code了，但是副作用就是此時用user1將可以登入http://localhost/svn/project2（可能user2還無法登入project2） 
<br>
因此，可以推論，當有設定[/]時，Apache會採用[/]區塊的設定。 
<br>
此外，此時用user1登入Trac project2也可以Browse Source，所以Trac也是用[/]這邊的設定。 
<br>
<br>
所以這個問題在[color=red]一個[/color]svnaccess的狀況下是無解的。 
<br>
<br>
那要怎麼做到原來的需求呢？ 
<br>
答案應該很明顯了，就是每個Trac project使用一個svnaccess檔案，我們可以在trac.ini裡面去設定這個檔案的路徑，例如： 
<br>
[code][trac] 
<br>
authz_file = /var/trac/projects/svnaccess_project1 
<br>
[/code] 
<br>
然後將原來的svnaccess的[/]區塊刪除，編輯svnaccess_project1如下： 
<br>
admin = rw 
<br>
user1 = rw 
<br>
user2 =rw 
<br>
<br>
最後是將Trac裡面BROWSER_VIEW從anonymous和authenticated刪除，用admin帳號登入Web介面去Admin-&gt;Permissions下執行即可，文字指令參考如下： 
<br>
[code]trac-admin /var/trac/projects/project1 permission remove anonymous BROWSER_VIEW 
<br>
trac-admin /var/trac/projects/project1 permission remove authenticated BROWSER_VIEW 
<br>
[/code] 
<br>
<br>
然後我們可以在右邊的Grant Permission:新增Subject:developer，Action: BROWSER_VIEW 
<br>
然後再利用Add Subject to Group:將Subject: user1及user2陸續加到Group: developer 
<br>
<br>
如此一來，我們可以確保只有加到每個Project的developer群組才能看到原始碼。 
<br>
<br>
依此類推，完成project2的相關設定（trac.ini、svnaccess_project2及Permissions設定） 
<br>
<br>
日後維護時，每個專案如有成員異動時，便得注意要同時修改svnaccess和svnaccess_projectX兩個檔案。]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/486.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/486.page</link>
				<pubDate><![CDATA[Fri, 3 Oct 2008 00:39:18]]> GMT</pubDate>
				<author><![CDATA[ andowson]]></author>
			</item>
			<item>
				<title>回覆:在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ Trac有提供一個透過Web介面修改svnaccess檔案的Plugin，可以參考下面的網址： 
<br>
http://trac-hacks.org/wiki/SvnAuthzAdminPlugin 
<br>
[url=http://trac-hacks.org/changeset/latest/svnauthzadminplugin?old_path=/&amp;filename=svnauthzadminplugin&amp;format=zip]下載[/url]後，將其解壓縮，再執行下面的指令安裝 
<br>
[code]python setup.py install[/code] 
<br>
然後再修改trac.ini，將svnauthz.* = enabled加到[components]區塊下：如 
<br>
[code][components] 
<br>
svnauthz.* = enabled[/code] 
<br>]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/487.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/487.page</link>
				<pubDate><![CDATA[Fri, 3 Oct 2008 01:18:23]]> GMT</pubDate>
				<author><![CDATA[ andowson]]></author>
			</item>
			<item>
				<title>在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ 我用SVN和TRAC来管理多达21个项目库时，postgresql 数据库出现：“致命错误：超过了非超级用户的连接限制”，再无法增加新的项目，如何解决这个问题？ 
<br>
其英文提示为“FATAL: connection limit exceeded for non-superusers ”]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/523.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/523.page</link>
				<pubDate><![CDATA[Wed, 10 Dec 2008 11:29:57]]> GMT</pubDate>
				<author><![CDATA[ wtom]]></author>
			</item>
			<item>
				<title>回覆:在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ 您可以試著調整一下PostgreSQL的最大連線數看看 
<br>
<br>
/var/lib/pgsql/data/postgresql.conf 
<br>
[code]max_connections = 200[/code] 
<br>
參考資料： 
<br>
http://readthefuckingmanual.net/error/132/]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/524.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/524.page</link>
				<pubDate><![CDATA[Fri, 12 Dec 2008 22:53:27]]> GMT</pubDate>
				<author><![CDATA[ andowson]]></author>
			</item>
			<item>
				<title>在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ 谢谢！问题解决，另外我想了解一下如何从trac中移除已有的项目以及如何备份和恢复版本库的一些知识。]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/538.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/538.page</link>
				<pubDate><![CDATA[Mon, 15 Dec 2008 15:24:21]]> GMT</pubDate>
				<author><![CDATA[ wtom]]></author>
			</item>
			<item>
				<title>回覆:在CentOS 4.5 Linux上安裝Trac 0.10.4</title>
				<description><![CDATA[ [b]Trac的刪除、備份跟還原[/b] 
<br>
1.刪除Trac專案: 
<br>
 在Trac中每個專案環境就是一個目錄，所以刪除專案很簡單，就是把對應的目錄刪除掉，然後對應的資料庫也刪除掉即可。 
<br>
<br>
2.備份Trac專案： 
<br>
 可以使用trac-admin的hotcopy指令， 
<br>
[code]$ trac-admin /path/to/projenv hotcopy /path/to/backupdir[/code] 
<br>
例如： 
<br>
[andowson@www ~]$ trac-admin /home/andowson/projects/demo hotcopy /tmp/demo 
<br>
Hotcopying /home/andowson/projects/demo to /tmp/demo ... Hotcopy done. 
<br>
<br>
檢視一下內容可以發現其實就是整個目錄複製過去而已，所以理論上只要先把Web Server停止後，自己使用OS的copy指令也是OK的 
<br>
[andowson@www ~]$ ll /tmp/demo/ 
<br>
總計 36 
<br>
drwxrwxr-x 2 andowson andowson 4096 12月 21 20:09 attachments 
<br>
drwxrwxr-x 2 andowson andowson 4096 12月 21 20:09 conf 
<br>
drwxrwxr-x 2 andowson andowson 4096 12月 21 20:09 htdocs 
<br>
drwxrwxr-x 2 andowson andowson 4096 12月 21 20:09 log 
<br>
drwxrwxr-x 2 andowson andowson 4096 12月 21 20:09 plugins 
<br>
-rw-r--r-- 1 andowson andowson 98 9月 9 2007 README 
<br>
drwxrwxr-x 2 andowson andowson 4096 12月 21 20:09 templates 
<br>
-rw-r--r-- 1 andowson andowson 27 9月 9 2007 VERSION 
<br>
drwxrwxr-x 2 andowson andowson 4096 12月 21 20:09 wiki-macros 
<br>
<br>
資料庫部分可以使用資料庫備份的指令，例如PostgreSQL的[url=http://twpug.net/docs/postgresql-doc-8.0-zh_TW/app-pgdump.html]pg_dump[/url] 
<br>
<br>
3.還原Trac專案 
<br>
也是很簡單，就是把備份的目錄覆蓋回去即可，先把Web Server停掉，然後把整個目錄結構copy回去，再把資料庫還原回去，然後再重起Web Server即可。 
<br>
<br>
[b]Subverson的備份跟還原[/b] 
<br>
1.備份Subversion的repository 
<br>
[code]svnadmin hotcopy /path/to/reponame /path/to/backupdir[/code] 
<br>
例如： 
<br>
svnadmin hotcopy /home/andowson/repos/demo /tmp/demorepo 
<br>
這個指令單純的將repository的目錄複製一份出來 
<br>
<br>
2.還原Subversion的repository 
<br>
只要將先前用hotcopy備份的目錄複製回去即可 
<br>
<br>
參考資料： 
<br>
http://trac.edgewall.org/wiki/TracBackup 
<br>
http://svnbook.red-bean.com/en/1.1/ch05s03.html 
<br>
http://wiki.archlinux.org/index.php/Subversion_backup_and_restore 
<br>
http://rory.cba.tw/rewrite.php/read-95.html]]></description>
				<guid isPermaLink="true">https://forum.andowson.com/posts/preList/20/544.page</guid>
				<link>https://forum.andowson.com/posts/preList/20/544.page</link>
				<pubDate><![CDATA[Sun, 21 Dec 2008 20:54:59]]> GMT</pubDate>
				<author><![CDATA[ andowson]]></author>
			</item>
	</channel>
</rss>