在linux下搭建jira+svn[原创]

 

LinuxJIRASVN相关配置说明

一、               安装包及其工具准备

1.1、以下是我在linux上使用的安装包

-          jdk-1_5_0_16-linux-i586.bin

-          MySQL-server-4.1.0-0.i386.rpm

-          MySQL-client-4.1.0-0.i386.rpm

-          apache-tomcat-4.1.37.tar.gz

-          atlassian-jira-enterprise-3.7.4-standalone.tar.gz

-          mysql-connector-java-5.0.8.tar.gz

-          httpd-2.2.9.tar.gzapache

-          subversion-1.4.0.tar.gz

1.2用到的工具

- tortoisewin32svn.msi

- SSHSecureShellClient-3.2.9.exe

- winscp417setup_类似于ssh可以查看liux所有目录下的文件并可以修改里面的文件.zip

二、               安装配置说明

2.1JDK1.5的安装

1.       ssh连接linux服务器终端,运行命令su root  切换到超级用户。

2.       winscp417工具连接服务器将jdk安装包放到/user/local/下面

3.       # cd /usr/local

4.       local目录下。运行命令 chmod a+x jdk-1_5_0_16-linux-i586.bin给於相应权限。

5.       运行命令 ./jdk-1_5_0_16-linux-i586.bin 等待,按提示安装jdk,默认安装在/usr/local/jdk1.5.0_16目录下

6. 配置环境变量:

/etc下面找到profile文件打开。

profile文件的最下面加入一下内容:

JAVA_HOME=/usr/local/jdk1.5.0_16

CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar

PATH=$JAVA_HOME/bin:$PATH

export JAVA_HOME

export PATH

export CLASSPATH

运行java –version

[root@localhost svnroot]# java -version

java version "1.5.0_16"

Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_16-b02)

Java HotSpot(TM) Client VM (build 1.5.0_16-b02, mixed mode, sharing)

显示版本号表示成功

也可以写个java文件然后编译,运行

test.java

class test

{

public static void main(String[] args)

{

System.out.println("Hello World!");

}

}

运行

Javac test.java

运行

Java test

如果出现Hello word 安装成功

2.2MYSQL的安装

参考网址:http://www.yesky.com/187/1754687.shtml

安装MySQL

rpm文件是Red Hat公司开发的软件安装包,rpm可让Linux在安装软件包时免除许多复杂的手续。该命令在安装时常用的参数是 –ivh ,其中i表示将安装指定的rmp软件包,V表示安装时的详细信息,h表示在安装期间出现“#”符号来显示目前的安装过程。这个符号将持续到安装完成后才停止。

1)安装服务器端
  在有两个rmp文件的目录下运行如下命令:
  [root@test1 local]# rpm -ivh MySQL-server-4.1.0-0.i386.rpm
  显示如下信息。
    warning: MySQL-server-4.1.0-0.i386.rpm: V3 DSA signature: NOKEY, key ID 5072e1f5
  Preparing...       ########################################### [100%]
  1:MySQL-server     ########################################### [100%]
   。。。。。。(省略显示)
  /usr/bin/mysqladmin -u root password 'new-password'
  /usr/bin/mysqladmin -u root -h test1 password 'new-password'
   。。。。。。(省略显示)
  Starting mysqld daemon with databases from /var/lib/mysql

如出现如上信息,服务端安装完毕。测试是否成功可运行netstatMysql端口是否打开,如打开表示服务已经启动,安装成功。Mysql默认的端口是3306
  [root@test1 local]# netstat -nat
  Active Internet connections (servers and established)
  Proto Recv-Q Send-Q Local Address      Foreign Address     State   
  tcp  0  0 0.0.0.0:3306     0.0.0.0:*      LISTEN   
  上面显示可以看出MySQL服务已经启动。

注意:有可能看不到3306端口,说明没启动,则要手动启动一下,这就要注意了,启动mysql服务必须要用mysql组的用户去启用,而安装了mysql后会自动建立一个叫做”mysql”的用户,他就是属于”mysql”组。执行一下命令手动开启mysql服务

Su mysql

Mysqld start

再用 netstat –nat查看则可以看到3306端口了

 

2)安装客户端
  运行如下命令:

[root@test1 local]# rpm -ivh MySQL-client-4.1.0-0.i386.rpm

  warning: MySQL-client-4.0.16-0.i386.rpm: V3 DSA signature: NOKEY, key ID 5072e1f5
  Preparing...    ########################################### [100%]
  1:MySQL-client  ########################################### [100%]
  显示安装完毕。
  用下面的命令连接mysql,测试是否成功。

 [root@localhost svnroot]# mysql -uroot -p

Enter password:

Welcome to the MySQL monitor. Commands end with ; or "g.

Your MySQL connection id is 50 to server version: 4.1.0-alpha

Type 'help;' or '"h' for help. Type '"c' to clear the buffer.

mysql>

ok,成功

 

由于后面在安装jira是需要用到jira_user用户和jiradb因此我们在这里先创建好

root用户创建一个UTF8格式的数据库(jiradb

之所以要utf8格式的,是因为避免jira导入数据时出现乱码现象

mysql> create database jiradb character set utf8;

添加一个用户,名为jira_user密码为1qaz@WSX,第一行为添加一个本地用户,第二行为添加一个所有人都可以连接的用户


mysql>create user jira_user identified by '1qaz@WSX';
mysql> grant all privileges on *.* to
 jira_user@% identified by '1qaz@WSX ' with grant option;
mysql> grant all privileges on *.* to jira_user@localhost identified by '1qaz@WSX ' with grant option;

完成后需要重新启动数据库,或是执行如下语句生效
mysql> flush privileges;

2.3TOMCAT的安装

参考网址:http://wenson.javaeye.com/blog/65294

1,Linux版本:我的是企业版.
[root@tpwb /]# uname –r

2.6.18-8.el5

tomcat版本:apache-tomcat-4.1.37.tar.gz(大小:10.2M
你可以去http://jakarta.apache.org/tomcat 下载

tomcat的安装

首先解压缩。
[root@tpwb local]# tar -zxvf  apache-tomcat-4.1.37.tar.gz

设置环境变量(如果只要跑jira就不需要在单独设置环境变量了)

[root@tpwb ~]#  Vi /etc/profile

{前面已经将jdk的设置好了}

export CATALINA_BASE=/usr/local/ apache-tomcat-4.1.37

export CATALINA_HOME=/usr/local/ apache-tomcat-4.1.37

这里要说明一下,如果是单独安装tomcat就要设置环境变量,但如果要安装jira的话则不需要设置,我也不确定是不是正确的,反正我的是没设置。

因为在启动jira是他加载的应该是 /usr/jira374如果设置了tomcat的环境变量则变成了/usr/local/ apache-tomcat-4.1.37

这样好像不能访问jira页面

下面来验证一下变量设置是否生效

设置完环境变量最好重起一下,不然看不到效果。

[root@tpwb tp]# reboot

我们来查看一下

[root@tpwb ~]# echo $CATALINA_HOME

/usr/local/ apache-tomcat-4.1.37

(我的是空,因为我没设置)


[root@tpwb ~]# echo $CATALINA_BASE

/usr/local/ apache-tomcat-4.1.37

(我的是空,因为我没设置)
已经没问题了。

tomcat安装目录的bin下面执行./startup.sh

[root@tpwb bin]./startup.sh

我们先看一下linux所开的端口:

[root@tpwb ~]# netstat –l

如果看到了8080表示可以了

好下面开始我们的安装测试了

http://你的IP8080 是不是看到tomcatWeb页面了。

如果还没看到,那就把放火墙关了。

[root@tpwb ~]# iptables stop

清除防火墙规则:确定  ]

chains 设置为 ACCEPT 策略:filter [  确定  ]

正在卸载 Iiptables 模块:确定  ]

 

 

2.4JIRA的安装

我的安装目录为/usr/local/jira374

1.解压jira
[root@localhost local]#  tar zxvf atlassian-jira-enterprise-3.7.4-standalone.tar.gz

将文件夹atlassian-jira-enterprise-3.7.4-standalone改名为jira374

2.解压mysql-connector-java-5.0.8.tar.gz


[root@localhost local]#tar zxvf mysql-connector-java-5.0.8.tar.gz

mysql-connector-java-5.0.8-bin.jar 文件拷到 jira374/common/lib/ 目录下

[root@localhost local]# cd mysql-connector-java-5.0.8
[root@localhost mysql-connector-java-5.0.8]#cp mysql-connector-java-5.0.3-bin.jar usr/local/jira374/common/lib/

3.修改配置文件:

1)。将ira374/conf/ server.xml里面的对应节点内容改成如下:

<Context path="" docBase="${catalina.home}/atlassian-jira" reloadable="false">

          <Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"

            username="jira_user"

            password="1qaz@WSX"

            driverClassName="com.mysql.jdbc.Driver"            url="jdbc:mysql://192.168.170.102/jiradb?autoReconnect=true&amp;useUnicode=true&amp;characterEncoding=UTF8"

[删除这里的minEvictableIdleTimeMillis and timeBetweenEvictionRunsMillis 参数]/>

注意:上面url里面”&amp;”字符串在linux环境下是 &amp;”而在windowns下面是”&”

 

2编辑 jira374/atlassian-jira/WEB-INF/classes/entityengine.xml, 改变 field-type-name 属性为mysql

<datasource name="defaultDS" field-type-name="mysql"

      helper-class="org.ofbiz.core.entity.GenericHelperDAO"

      check-on-start="true"

      use-foreign-keys="false"

      use-foreign-key-indices="false"

      check-fks-on-start="false"

      check-fk-indices-on-start="false"

      add-missing-on-start="true"

      check-indices-on-start="true">

。。。。。。。。。

。。。。。。。。

</datasource>

4.停止

[root@localhost ~] cd /usr/local/jira374/bin

[root@localhost bin]# ./stutdown.sh

5.启动

[root@localhost ~] cd /usr/local/jira374/bin

[root@localhost bin]# ./startup.sh

If you encounter issues starting up JIRA Standalone Edition, please see the Troubleshooting guide at http://confluence.atlassian.com/display/JIRA/Installation+Troubleshooting+Guide

Using CATALINA_BASE:   /usr/local/jira374

Using CATALINA_HOME:   /usr/local/jira374

Using CATALINA_TMPDIR: /usr/local/jira374/temp

Using JRE_HOME:       /usr/local/jdk1.5.0_16
打开http://localhost:8080  并进行配置,
选择中文,设置相关索引、附件、备份路径及邮件服务器地址、管理员帐号,完成配置即可登陆JIRA

其中需要填入授权号码”,并且在官网上申请的key只能试用一个月,因此涉及到破解问题.

破解方法参照http://www.eclipseworld.org/bbs/read-cec-tid-13642-page-e.html

1.在上面网站上下载下他的补丁后,解压将破解压缩文件解压, 里边有一个jirapatcher.jar文件,将他拷贝到你的/usr/local/jira374/atlassian-jira/WEB-INF/lib下面

2. 确定你的JIRA服务器没有运行, 如果服务器在运行(可能是Tomcat),

cd /usr/local/jira374/bin

./shutdown.sh

3.转到 /usr/local/jira374/atlassian-jira/WEB-INF/lib 目录, 运行命令
java -jar jirapatcher.jar,
此时破解应该已经成功

4. 启动Jira server

cd /usr/local/jira374/bin

./shutdown.sh

 

5进入Jira首页找到如下位置

有效期到了2009-10-17

 

2.5APACHESVN的安装

apache下载地址

http://apache.mirror.phpchina.com/httpd/

 

1.    下载subversion和apache的最新src包

2.    新建一个用户:svnroot

以下操作非特别说明皆为root用户操作

#groupadd svn

#useradd svnroot -g svn

#passwd svnroot

3. 编译安装httpd:

//解压apache2安装包

# tar xvzf httpd-2.2.9.tar.gz

//进入解压后的目录

# cd httpd-2.2.9

//配置apache安装

# ./configure --enable-dav --enable-so --prefix=/usr/local/apache2/

# make

//安装

# make install

//启动apache服务

# /usr/local/apache2/bin/apachectl start

//打开浏览器http://localhost/如果有测试页"It works!"出现则证明已经安装成功。

4. 安装Subversion

//解压SubVersion安装包

# tar xvzf subversion-1.4.0.tar.gz

//进入解压后的目录

# cd subversion-1.4.0

//配置subversion安装

#./configure --with-apxs=/usr/local/apache2/bin/apxs --prefix=/usr/local/subversion --with-apr=/usr/local/apache2 --with-apr-util=/usr/local/apache2 --with-ssl --with-zlib --enable-maintainer-mode

# make

//安装

# make install

//创建库文件所在的目录 (svnroot用户进行下面的操作)

# mkdir /home/svnroot/repository

//创建仓库"test"

# /usr/local/subversion/bin/svnadmin create /home/svnroot/repository/test

//查看svn是否安装成功

# /usr/local/subversion/bin/svnadmin --version

//不让其他人有该目录的权限

# chmod 700 /home/svnroot/repository

(svnroot用户操作结束)

5. 修改Apache配置文件

# vi /usr/local/apache2/conf/httpd.conf

   //找到下列语句,如果没有则自行添加(说明,先安装完apache是没有下面两个.so文件的,当安装完毕svn后就会自动添加,并且在/usr/local/apache2/modules下面可以找到这两个.so文件)

  LoadModule dav_svn_module modules/mod_dav_svn.so

  LoadModule authz_svn_module modules/mod_authz_svn.so

//在.so后面添加

<Location /svn>

 

   DAV svn

 

   SVNParentPath /home/svnroot/repository/   //svn父目录

 

   AuthzSVNAccessFile /home/svnroot/repository/authz.conf //权限配置文件

 

   AuthType Basic //连接类型设置

 

   AuthName "Subversion.zoneyump" //连接框提示

 

   AuthUserFile /home/svnroot/repository/authfile //用户配置文件

 

   Require valid-user //采用何种认证

//支持匿名访问------------------

<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
</LimitExcept>

---------------------------------------

   </Location>

//重启apache

# /usr/local/apache2/bin/apachectl restart

//打开浏览器访问http://localhost/svn/test/,如果有东西显示就说明成功。

6. 权限管理

1)增加用户

# htpasswd -c /home/svnroot/repository/authfile 用户名(我的是svnuser

注意://第一次设置用户时使用-c表示新建一个用户文件。回车后输入用户密码,完成对用户的增加

# htpasswd /home/svnroot/repository/authfile 用户名(加入新的用户,就不用-c了)

2)权限分配

# vi /home/svnroot/repository/authz.conf

[groups]

 

admin=useradmin

 

devteamcs = svnuser

 

[/]

 

@admin = rw

 

* = r

 

[test:/]

 

@devteamcs = rw

按”esc”输入:wq回车保存就可以了

// 在 /usr/local/apache2/conf/httpd.conf 文件中配置,找到文件中的这两行:

User daemon

Group daemon

// 将daemon改为svnroot,组也做相应更改,让apache进程以svnroot的身份运行

//改完后是这个样子

User svnroot

Group svn

 

//注意:一定要将repository目录的属主设为svnroot用户,否则在客户端签入文件时会报“无权限操作”导致message不能写入,在jiar与svn集成后jira中看不到签入的文件。执行一下命令就可以了

chown -R svnroot:svn repository

//关闭防火墙否则有可能看不到页面

 # cd /etc/init.d

 # ./iptables stop

//重启apache

   # /usr/local/apache2/bin/apachectl restart

访问http://localhost/svn/test ,现在需要身份验证,且通过验证后应该可以看到信息

如果你运行着卡巴斯基,可能会导致无法访问svn

解决办法是:进入卡巴斯基的设置-->网络设置--->端口设置,然后从端口列表中去掉80端口即可

2.6JIRASVN的集成

1.在下载subversion-jira-plugin以前,得看看版本对应

Version

JIRA Version(s)

0.9.8

3.7x

0.9.7

3.7.x

0.9.6

3.7.x

0.9.5

3.7-beta2

0.9.4

3.6

0.9.3

3.6

0.9.2

3.6

0.9.1

3.5.x

0.8.2

3.4.x

0.7.1

3.3.x

0.6.1

3.2.x

我装的是3.7.4,因此subversion-jira-plugin版本我选择了0.9.8

http://confluence.atlassian.com/display/JIRAEXT/JIRA+Subversion+plugin 下载atlassian-jira-subversion-plugin-0.9.8 并解压;

2.把下述三个JAR包拷贝到JIRA按装目录〉/atlassian-jira/WEB-INF /lib (覆盖原有的文

件):

- lib/atlassian-jira-subversion-plugin-0.9.8.jar

- lib/javasvn-1.0.5.jar

- lib/ganymed.jar

3. 拷贝下述文件到JIRA按装目录〉/atlassian-jira/WEB-INF/classes/ subversion-jira-plugin.properties并编辑它的内容:

svn.root=http://localhost/svn/test

svn.root.1=http://localhost/svn/test1

……….

svn.display.name=svn

svn.username=svnuser

svn.password=1qaz@WSX

 

4.这些都完成以后 ,JIRAAdministration->SYSTEM->SERVICES里面就可以看到
Subversion Revision Indexing Service” 他的作用是设置jira个多少分钟去检查一下svn版本库有没有新签入的文件,默认是60分钟。  

5. JIRAAdministration->SYSTEM-> plugins里面就可以看到“Subversion Plugin 

6Jira中的问题IDsvn中是如何关联的

1)建立一个项目project1 key=KM

2)建立project1下面的问题test1 key=KM-1

3)svn客户端连接将New.txt文件签入svn版本库(我的在/usr/home/svnroot/repository/test

OK以后签入新版本,过1分钟(这个时间可以在jira里面是设置,我的目前是1分钟)后就可以在jira里面看到了

7.在首页就可以看到 Subversion Commits标签,并且可以看到签入的文件

2.6、安装Viewvc

要安装viewCvs还需要python-2.0或更高版本的支持。还需要swig的支持。我们这里使用Python-2.6

1) 安装Python-2.6

[root@localhost local]# tar xvf  Python-2.6.tar

[root@localhost Python-2.6]# ./configure --prefix=/usr/local/Python-2.6

[root@localhost Python-2.6]# make

[root@localhost Python-2.6]#  make install

安装完毕以后查看相关信息

python   -v  

 

2) 安装swig,可以先用# which swig查看一下是否已经安装如果没有则到http://www.swig.org/ 去下载

[root@localhost local]# tar zxvf  swig-1.3.36.tar.gz

[root@localhost swig-1.3.36]# ./configure --prefix=/usr/local/swig

[root@localhost swig-1.3.36]# make

[root@localhost swig-1.3.36]#  make install

3) 安装Viewvc

参考网址:

http://www.360doc.com/showWeb/0/0/178352.aspx

http://www.scmlife.com/dp-bbsthread-5993-2.html

 

[root@localhost local]# tar –zxvf viewvc-1.0.7.tar.gz

 

[root@localhost viewvc-1.0.7]# ./viewvc-install

 

打开viewvc.conf,修改下面几行:
cvs_roots = cvs: /home/cvsroot注释掉;kubfk
#svn_roots =
test: /home/svnroot/repository/test

改成仓库所在的路径;如果多个仓库加逗号隔开;

其中test是你指定的仓库名,冒号后面跟的是仓库所在的路径
default_root = cvs
注释掉,这样你至少可以看到仓库列表。

 

Viewvc集成到了apache里面

/conf/httpd.conf文件里面加入,路径根据你你viewvc 的安装目录配置

我是的:

ScriptAlias /viewvc /usr/local/viewvc/bin/cgi/viewvc.cgi

ScriptAlias /query /usr/local/viewvc/bin/cgi/query.cgi

 

重启apache服务

cd /usr/local/apache2/bin

apachectl start

 

访问http://IP/svn/test/

就可以看到有文件列表出现了

 

最后,配置subversion-jira-plugin.properties文件,使jira中可以查看svn的文件

修改ViewVC 1.0.1块下面的连接

linkformat.changeset=http://192.168.170.102/svn/test${path}

linkformat.file.modified=http://192.168.170.102/svn/test${path}

linkformat.file.replaced=http://192.168.170.102/svn/test${path}

linkformat.file.added=http://192.168.170.102/svn/test${path}

linkformat.file.modified=http://192.168.170.102/svn/test${path}

linkformat.file.replaced=http://192.168.170.102/svn/test${path}

linkformat.file.deleted=http://192.168.170.102/svn/test${path}

linkformat.copyfrom=http://192.168.170.102/svn/test${path}

 

FishEye块下面的注释掉,因为默认是这个。

附录

服务器重启以后需要执行的启动

cd /etc/init.d

./iptables stop

cd /usr/local/jira374/bin

./startup.sh

cd /usr/local/apache2/bin

apachectl start

su mysql

mysqld start

 

人生无处不PK
原文地址:https://www.cnblogs.com/ivanyb/p/1315310.html