德克云技术联盟

会员中心
发新帖
打印 上一主题 下一主题

CentOS下安装配置Trac
发布人: 李臻宇 发布时间:2014-07-16 浏览:5379

本帖最后由 李臻宇 于 2014-7-16 12:39 编辑



1 最小化安装CentOS 6.

2 关闭SElinux
#vi /etc/selinux/config
[第6行]SELINUX=disabled
#setenforce 0 (立即生效,免重新启动)

3 安装基础支持包
#yum install -y gcc wget vim python-devel httpd httpd-devel curl curl-devel unzip ncurses-devel libxml2-devel openssl-devel ibjpeg-devel libpng-devel freetype-devel autoconf automake libtool gcc gcc-c++ flex bison vim-enhanced python-devel pcre pcre-devel zlib zlib-devel libevent libevent-devel libtool-libs libtool-ltdl libtool-ltdl-devel bzip2 bzip2-devel gdb e2fsprogs-devel subversion

4 安装python简易安装工具setuptools
#yum install -y python-setuptools

5 安装Trac基础支持
#easy_install Babel==0.9.6
#easy_install Genshi==0.6

6 下载/编译/安装mod_python
http://modpython.org/
#wget http://archive.apache.org/dist/h ... od_python-3.3.1.tgz
#tar zxvf mod_python-3.3.1.tgz
#cd mod_python-3.3.1
#vi mod_python-3.3.1/src/connobject.c
!(b == APR_BRIGADE_SENTINEL(b) || 142行更改为
!(b == APR_BRIGADE_SENTINEL(bb) ||
cd mod_python-3.3.1
#./configure
#make
#make install

7 修改Apache配置文件,使之加载mod_python模块
#vi /etc/httpd/conf/httpd.conf
加入LoadModule python_module modules/mod_python.so

8 下载/安装Trac
#wget http://download.edgewall.org/trac/Trac-1.0.1.tar.gz
#tar zxvf Trac-1.0.1.tar.gz
#cd Trac-1.0.1
#python setup.py install

9 创建Trac根目录
#mkdir /var/trac
#chown -R apache.apache /var/trac/ (更改权限)

10 编辑Apache配置文件使之配合trac
#vi /etc/httpd/conf/httpd.conf
在末尾处添加
<Location />
    SetHandler mod_python
    PythonInterpreter main_interpreter
    PythonHandler trac.web.modpython_frontend
    PythonOption TracEnvParentDir /var/trac
    PythonOption TracUriRoot /trac/
    PythonOption PYTHON_EGG_CACHE /tmp/egg-cache
</Location>

11 启动Apache并设置为自动启动
#/etc/init.d/httpd start
#chkconfig --level 35 httpd on

12 放火墙打开apache端口
#iptables -F
#iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
#/etc/init.d/iptables save

13 验证以上操作正确。
浏览器输入http://ip/trac
如果显示Available Projects则说明以上配置正确,如果出现问题,则检查以上配置。

14 增加trac系统用户
#htpasswd -c /var/trac/.htpasswd admin

15 修改apache对htpasswd用户支持
#vi /etc/httpd/conf/httpd.conf
在末尾处添加
<LocationMatch "/trac/[^/]+/login">
    AuthType Basic
    AuthName "Trac"
    AuthUserFile /var/trac/.htpasswd
    Require valid-user
</LocationMatch>

16 创建Trac项目
命令trac-admin /PYTH/PROJECTNAME initenv
示例:
#trac-admin /var/trac/isms_eisweb_20130423 initenv
#chown -R apache.apache /var/trac/isms_eisweb_20130423

17 分配管理员权限
trac-admin /var/trac/isms_eisweb_20130423 permission add admin TRAC_ADMIN
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~ ~~~~~~~
                 项目目录 用户名 用户组

18 创建trac-admin test initenv
chown -R apache.apache test/
trac-admin test permission add admin TRAC_ADMIN (目录名称非项目名称)

19 创建新的项目
重复16-18项目

插件安装:
1、首先安装python-setuptools
yum install python-setuptools -y
2、安装插件
以下是些有用的插件
easy_install -U -Z http://trac-hacks.org/svn/customfieldadminplugin/0.11
easy_install https://trac-hacks.org/svn/wikitablemacro/trunk
easy_install http://trac-hacks.org/svn/ticketextplugin/0.12
easy_install http://trac-hacks.org/svn/tracwysiwygplugin/0.11
easy_install TracSqlQueryMacro
easy_install http://trac-hacks.org/svn/sqlquerymacro/0.11
easy_install TracSqlQueryMacro

拾遗:
1. 指派任务所有人http://trac-hacks.org/wiki/FlexibleAssignToPlugin#yum install subversion (为了支持从svn源下载文件)easy_install http://trac-hacks.org/svn/flexibleassigntoplugin/0.13/trunk修改..PROJECT/conf/trac.inirestrict_owner = true

2.  邮件通知#vi /var/trac/isms_eisweb_20130423conf/trac.ini[notification]admit_domains =always_notify_owner = turealways_notify_reporter = turealways_notify_updater = trueambiguous_char_width = singlebatch_subject_template = $prefix Batch modify: $tickets_descremail_sender = SmtpEmailSenderignore_domains =mime_encoding = nonesendmail_path = sendmailsmtp_always_bcc =smtp_always_cc =smtp_default_domain =smtp_enabled = yessmtp_from = system@decoclouds.comsmtp_from_author = falsesmtp_from_name = system@decoclouds.comsmtp_password = net.*******smtp_port = 25smtp_replyto = tracsmtp.ym.163.comsmtp_server = smtp.ym.163.comsmtp_subject_prefix = __default__smtp_user = system@decoclouds.comticket_subject_template = $prefix #$ticket.id: $summaryuse_public_cc = falseuse_short_addr = falseuse_tls = false

3.用户管理3.1.安装插件   #easy_install http://trac-hacks.org/svn/accountmanagerplugin/0.11/3.2.更改加密文件权限使apache可以操作文件   chown apache.apache /var/trac/.htpasswd3.3.登陆系统-管理-插件-TracAccountManager 0.4.3下面选择如下功能模块   在plugin设置中我选择了如下一些功能模块
管理员账号管理AccountManagerAdminPanelacct_mgr.admin
账号管理AccountManageracc_mgr.api
密码存放文件,采用htpasswd格式HtPasswdStroeacct_mgr.htfile
保存密码的hash方法,和前面HtPasswdStore对应HtPasswdHashMethodacct_mgr.pwhash
账号模块,用户可以在这儿修改自己的密码AccountModuleacct_mgr.web_ui
Web页面方式的登陆模块LoginModuleacct_mgr.web_ui
3.4.配置好以后保存,然后再进行用户管理,按照提示配置:登陆系统-管理-账户-配置filename: /var/trac/.htpasswd hash_type:  cryptPassword Refrsh 打钩Persistent Sessions 打钩
3.5.最后确定配置文件这两项是否如下配置,否则trac用户管理模块不生效[components]trac.web.auth.LoginModule = disabledacct_mgr.web_ui.LoginModule = enabled[account-manager]password_store = HtPasswdStore
3.6.编辑配置文件禁用apache验证,改用trac系统验证删除或注释配置文件末尾配置#<LocationMatch "/trac/[^/]+/login">#    AuthType Basic#    AuthName "Trac"#    AuthUserFile /var/trac/.htpasswd#    Require valid-user#</LocationMatch>
以上配置正确就可以在系统内进行用户管理。
4. 备份/恢复Trac Backuptrac-admin /trac/PROJECT_NAME hotcopy ~/backup/PROJECT_NAME
Trac Restorecp 拷回去即可.
tar zcvf PROJECT_NAME%date%.tar.gz ~/backup/PROJECT_NAME

5. 修改项目列表页面/usr/lib/python2.6/site-packages/Trac-1.0.1-py2.6.egg/trac/templates/index.html
Trac备份脚本#/bin/shTRACHOME=/var/trac/BAKHOME=/opt/backupPRONAME=tracTRACBAKPATH=$BAKHOME/$PRONAMETRACAUTH=$TRACHOME/.htpasswdTIMESUFF=`date +%y%m%d`TARGETFILENAME=trac_bak_$TIMESUFF.tar.gzTARGETFILE=$BAKHOME/$TARGETFILENAMEFTPURL=219.144.222.199FTPPORT=18021FTPUSER=backupFTPPASSWD=net.re.2014FTPBAKHOME=/Trac
if [ -d $TRACBAKPATH ]thenecho -n ""elsemkdir $TRACBAKPATH -pfi
for i in `ls $TRACHOME`dotrac-admin $TRACHOME$i hotcopy $TRACBAKPATH/$i >/dev/nulldone
cp $TRACAUTH $TRACBAKPATH/
tar zcvf $TARGETFILE $TRACBAKPATH >/dev/null
if [ -f $TARGETFILE ]thenftp -n <<EOF >/dev/nullopen $FTPURL $FTPPORTuser $FTPUSER $FTPPASSWDbinaryhashcd $FTPBAKHOMElcd $BAKHOMEpromptput $TARGETFILENAMEclosebyeEOFelseexit 0fi
rm $TRACBAKPATH -rf



分类浏览
关于我们
联系我们
技术联盟
云服务
云技术
云合作
帮助中心
发帖规则
QQ客服
内部通道
企业邮箱
企业论坛
版本选择
手机版
电脑版
用手机扫描下方二维码查看手机版页面

版权所有 西安云联电子科技有限公司
Copyright @ 2011-2022 | decoclouds.com All Rig
陕ICP备13002202号-1

快速回复 返回顶部 返回列表