设置访问Subversion版本库的用户和用户组
设置Subversion版本库的访问权限也有很多方法,通常的做法是,创建一个名为“
Subversion”的组,并将该组拥有访问Subversion版本库所在的目录的权限,同时将需要
访问Subversion版本库的用户加入到这个组中(在这里添加的是自己的本地用户和Apache
2用户): firehare是用户名。
sudo groupadd subversion
sudo usermod -G subversion -a firehare
sudo usermod -G subversion -a www-data
创建Subversion版本库目录十分简单,只需要输入下列命令即可:
sudo mkdir -p /home/svn/repo
sudo chown -R root:subversion /home/svn/repo
sudo chmod -R g+rws /home/svn/repo
sudo svnadmin create /home/svn/repo
创建配置Trac环境 Trac用目录和数据库来储存项目信息, 叫做”环境“。一个新的Trac环境是通过使用trac -admin创建出来的,同Subversion一样,Trac环境可以放至在任意位置,由于Trac是个 Web应用,是通过Apache来访问的,所以通常将其设在/var/www目录中。具体命令及设置如 下:
cd /var/www
sudo mkdir trac
sudo chown -R www-data:www-data trac
sudo -u www-data trac-admin trac initenv
ProjectName[MyProject]> cmet (在这里输入你的项目名称)
Database connection string[sqlite:db/trac.db]>postgres://firehare:123456@
localhost/trac (输入PostgreSQL数据库的位置)
Repository type [svn]>
Path to repository [/path/to/repos]>/home/svn/repo (在这里输入你的项目对应的
Subversion地址,注意Trac默认情况下只能访问本机的Subversion仓库,在上面填写地址时
不能加"file://"前缀。)
Templates directory [/usr/share/trac/templates]>/usr/share/pyshared/trac/
templates
配置Apache 创建Trac环境后,还需要在Apache2中进行相应的配置才能正常使用。配置Trac有两种方式 :做为CGI(CGI、WSGI、FCGI)以及使用mod-python。在这里,我们使用apache2-mod- python方式来配置Apache2服务器:
sudo apt-get install libapache2-mod-python libapache2-mod-python-doc
sudo a2enmod python
然后配置虚拟主机站点,当然如果没有虚拟主机的话,也可以将之放在/etc/apache2/ sites-available/default文件中,在这里我们还是新建一个虚拟主机:
sudo vi /etc/apache2/site-available/trac
<VirtualHost10.10.3.29>
ServerName trac.firehare.name
ServerAdmin ubuntu.firehare@gmail.com
DocumentRoot/var/www/myproject
<Location/>
SetHandler mod_python
PythonInterpreter main_interpreter
PythonHandler trac.web.modpython_frontend
PythonOptionTracEnv/var/www/trac/
PythonOptionTracUriRoot/
SetEnv PYTHON_EGG_CACHE /tmp
</Location>
<Location /login>
AuthTypeBasic
AuthName"CMET_WZU Trac Server"
AuthUserFile/var/www/trac/.htpasswd
Require valid-user
</Location>
ErrorLog "/var/log/apache2/trac_errors.log"
CustomLog "/var/log/apache2/trac_accesses.log" common
</VirtualHost>
设置Trac的访问权限
sudo htpasswd -c /var/www/trac/.htpasswd admin
管理员权限
trac-admin /data/trac permission add admin TRAC_ADMIN
trac-admin /data/trac permission add zhlong admin
将该虚拟主机激活:
sudo a2ensite trac
sudo /etc/init.d/apache2 restart