Ubuntu上安装Trac

Ubuntu上安装Trac

Trac是一个轻量级项目管理软件,使用Web界面,最近我发现用它来管理一下个人事务也是提不错的,因此就在自己的机器上安装了一个。对于像我这样的非专业人式来说,安装Trac实在是有点麻烦,有些问题我还是在得到专门人工的帮忙下才搞定,因此有必要记录一下。我的系统是Ubuntu 7.04,相信以下的安装过程在Debain上也是大同小异。

第一步: 安装Trac软件并初始化Trac系统

在Ubuntu上安装Trac软件很简单,只需运行:

  sudo apt-get install trac

安装完后就可以建立Trac系统,我准备安装在/var/www/trac目录下。建立Trac系统主要使用trac-admin中的initenv命令。注意所有对Trac系统的操作我都用www-data用户来完成,因为Trac是一个Web应用,是通过Apache来访问的。详细过程如下:

  cd /var/www
  sudo mkdir trac
  sudo chown -R www-data:www-data trac
  sudo -u www-data trac-admin trac initenv
    Project Name [My Project]> 在这里输入你的项目名称
    Database connection string [sqlite:db/trac.db]>
    Repository type [svn]>
    Path to repository [/path/to/repos]> 在这里输入你的项目对应的Subversion地址
    Templates directory [/usr/share/trac/templates]>

注意Trac默认情况下只能访问本机的Subversion仓库,在上面填写地址时不能加"file://"前缀。

第二步: 配置Apache
初始化Trac系统后,还需要在Apache中进行相应的配置才能使用。由于Trac使用CGI,因此首先要将Trac的CGI程序(/usr/share/trac/cgi-bin/trac.cgi)部署到Apache的cgi-bin目录中(做个符号链接即可)。过程如下:

  cd /usr/lib
  sudo mkdir cgi-bin
  sudo chown -R www-data:www-data cgi-bin
  cd cgi-bin
  sudo -u www-data ln -s /usr/share/trac/cgi-bin/trac.cgi trac.cgi

然后在Apache配置中加入Trac站点的配置信息,在Ubuntu下站点配置通常放在/etc/apache2/sites-available/default这一文件中,可编辑该文件加入以下内容(这些内容在Trac的说明文档中都有,在/usr/share/doc/trac/README.Debian文件中):

  Alias /trac/ "/usr/share/trac/htdocs/"
  <Directory "/usr/share/trac/htdocs/">
        Options Indexes MultiViews
        AllowOverride None
        Order allow,deny
        Allow from all
  </Directory>
  <Location "/cgi-bin/trac.cgi">
        SetEnv TRAC_ENV "/var/www/trac"
  </Location>
  <Location "/cgi-bin/trac.cgi/login">
        AuthType Basic
        AuthName "trac"
        AuthUserFile /etc/apache2/trac.htpasswd
        Require valid-user
  </location>

上面配置使用Apache内建支持的基于htpasswd文件的Basic认证方式,使用/etc/apache2/trac.htpasswd为口令文件,因此需要创建这一文件,并创建用于访问Trac系统的用户名和密码。这通过htpasswd命令完成,如下所示:

  cd /etc/apaceh2
  sudo htpasswd -c trac.htpasswd 你的用户名
    在这里输入用户密码

最后使用重新加载Apache配置:
  sudo /etc/init.d/apache2 reload

然后就可以通过浏览器访问你的Trac了,地址是http://localhost/cgi-bin/trac.cgi。

第三步: 安装WebAdmin
按上面的方法安装后已经获得了一个全功能的Trac系统,但很多管理工作如增加模块,管理权限等都要通过trac-admin命令行工具来完成,不是很方便。为简化Trac使用,可以安装WebAdmin插件。

首先安装setuptools:
  sudo apt-get install python-setuptools

然后从Trac的Subversion上下载WebAdmin的源代码进行编译,如下:

  cd /tmp
  sudo -u www-data svn co http://svn.edgewall.com/repos/trac/sandbox/webadmin/
  sudo -u www-data python setup.py bdist_egg

编译完成后在dist目录下会产生一个TracWebAdmin-xxx.egg文件,将这一文件拷贝到trac系统的plugins目录。.egg文件为一个Python软件的打包方式,类似于Java开发EJB时的.ear等文件,在加载这一软件包时Apache会将其内容解压放到/var/www/.python-eggs目录下,因此如果你还没有创建/var/www/.python-eggs目录需要先创建一个。最后重新加载Apache配置,WebAdmin的安装就算完成了。

安装完WebAdmin后,对于那些有某些admin权限的用户,在登陆到Trac后将在顶总的导航栏出现"Admin"项,点击进入即可完成一些管理操作。但由于默认的用户都没有admin权限,因此首先要使用trac-admin工具为用户设置权限,才能用WebAdmin的管理功能。
介绍的比较全面。支持顶一个!