centos上dspace的安装部署

来源:互联网 发布:node inspector 编辑:程序博客网 时间:2024/06/06 09:12

dspace是基于jdk跟tomcat上的 我前边有装 这里就不重复了

 

借鉴网址:http://rspproject.wordpress.com/2010/07/28/installing-dspace-on-centos-5/

 

apache-maven-2.2.1:http://maven.apache.org/

apache-ant-1.8.1:http://ant.apache.org/

dspace-1.6.2-src-release:http://sourceforge.net/projects/dspace/files/

phpPgAdmin-4.2.3

postgresql84

 

maven

将apache-maven-2.2.1-bin.tar.gz放在/usr/local下

tar zvxf apache-maven-2.2.1-bin.tar.gz   //解压maven

ln –s apache-maven-2.2.1 maven    //加别名

配置/etc/profile,在末尾加上:

export M2_HOME=/usr/local/maven

export PATH=$PATH:$M2_HOME/bin

加完后重新加载配置文件:source /etc/profile

可输入mvn –version进行测试

 

ant

 

将apache-ant-1.8.1-bin.tar.gz放在/usr/local下

tar zvxf apache-ant-1.8.1-bin.tar.gz   //解压ant

ln –s apache-ant-1.8.1 ant    //加别名

配置/etc/profile,在末尾加上:

export ANT_HOME=/usr/local/ant

export PATH=$PATH:$ANT_HOME/bin

加完后重新加载配置文件:source /etc/profile

可输入ant –version进行测试

 

 

postgresql84

 

1)安装postgresql

yum install postgresql84 postgresql84-server postgresql84-devel

postgresql84-libs //安装postgresql84,这几个为主要包,其他包可根据需要选择,我好像全选了~

装好后在启动之前需前初始化一下,在你启动时他会有提示

 

# service postgresql start

/var/lib/pgsql/data is missing. Use "service postgresql initdb" to initialize the cluster first.
                                                           [FAILED]

 

# service postgresql initdb
Initializing database: postgres
                                                           [  OK  ]//postgres是自己输入的同名数据库

 

 

service postgresql start|restart|stop  //启动|重启|停止服务

 

 

配置postgresql

配置postgresql能被其他主机用户访问:(local)服务端采用密码认证(md5),(host)客户端不验证

 

修改:/var/lib/pgsql/data/postgresql.conf

改  listen_addresses =’ *’

port = 5432  //去掉前边的#

 

给超级用户postgres添加密码:

su postgres –c psql template1   //进入postgresql控制台 -c psql template1可根据版本添加,有些不需要

alter user postgres with password '123456' ;  //给超级用户postgres加上密码

/q;    //退出postgresql控制台

添加后需重启postgresql一下,不然不生效~, 不生效就创建用户跟数据库

 

修改:/var/lib/pgsql/data/pg_hba.conf

改                 local       all          all                                      md5

                     host      all          all       127.0.0.1/32            trust

                     host       all         all        ::1/128                    trust

在末尾添加: host       all          all      192.168.0.1/24          trust

注:配置完后,重启一下postgresql服务器

 

创建新用户dspace及同名数据库,以备配置dspace使用:

su postgres   //进入到控制台

createuser –A –d –e –P dspace   //创建用户dspace,不可创建其他用户,可建数据库以及需要密码验证,会提示输入密码,根据提示输入便可

createdb –U dspace -W dspace   //创建同名数据库,会提示输入dspace的密码,根据提示输入便可

exit     // 退出控制台

创建成功后,可用此用户组登录到phppgadmin测试一下

 

附:postgresql创建用户及数据库的sql语法

 

删除用户:dropuser

 

 

 删除数据库:dropdb

创建用户

createuser 是 SQL 命令 CREATE USER的封装。

命令:createuser [-a] [-A] [-d] [-D] [-e] [-P] [-h 主机名] [-p port] 用户名

参数说明:

[-a]:允许创建其他用户,相当于创建一个超级用户;

[-A]:不允许此用户创建其他用户;

[-d]:允许此用户创建数据库;

[-D]:不允许此用户创建数据库;

[-e]:将执行过程显示到Shell上;

[-P]:创建用户时,同时设置密码;

[-h 主机名]:为某个主机上的Postgres创建用户;

[-p port]:与-h参数一同使用,指定主机的端口。

创建表

createdb — 创建一个新的 PostgreSQL 数据库 

语法

createdb [ options ] dbname [ description ]

输入

-h postmaster 正在运行的机器的主机名. 

-p postmaster 侦听着等待连接的互联网 TCP/IP 端口或一个本地 Unix 域套接字文件扩展(描述符). 

-U  进行联接的用户名。 

-W 强制口令提示符。 

-e createdb 生成的查询并且把它发送到后端。 

-q  不显示响应。 

-D  声明变更了的数据库安装(节点)的位置.这是数据库的安装系统目录.不是声明的数据库位置,两者是不同的. 

-E  声明用于此数据库的字符编码方式。 

dbname 

声明要创建的数据库名.该名称应该在本节点的PostgreSQL 所有数据库里面是唯一的.缺省是与当前系统用户同名。 

description 

这个选项声明一个与新创建的数据库相关的注解

 

 

 

 

phpPgAdmin-4.2.3

 

 

tar zvxf phpPgAdmin-4.2.3.tar.gz            //解压

mv phpPgAdmin-4.2.3 phppgadmin     //重命名

cd phppgadmin/conf

cp config.inc.php-dist config.inc.php  //从模板文件生成配置文件

mv phppgadmin /var/www/html     //将phpPgAdmin-4.2.3移到apache发布目录

yum install php-pgsql      //安装pgsql软件包,让php支持postgresql

                                    这个可以在装系统时定制包的时选上

service httpd start       //启动apache

可用这个地址访问:http://IP/ phppgadmin

 

 

dspace-1.6.2-src-release

 

将dspace-1.6.2-src-release.tar.gzr放到/usr下

tar zvxf dspace-1.6.2-src-release.tar.gz          //解压

 

配置dspace:

vi dspace-1.6.2-src-release/dspace/config/dspace.cfg

修改里边的键值对:

dspace.dir = /usr/dspace     //dspace安装目录

dspace.hostname = 主机IP      //访问的服务器名字,可任一

dspace.baseUrl = http://主机IP:8080  //访问地址

dspace.url = ${dspace.baseUrl}/jspui            //访问完整地址

dspace.name = My Dspace Test         //发布的标题,注释

db.username = dspace          //对应的postgresql的用户名

db.password = dspace         //对应的postgresql的密码

mail.server = smtp.163.com //邮件服务器,可任一,例子中的为163的

mail.from.address = bianbianmomo@163.com          //email地址

feedback.recipient = bianbianmomo@163.com      //email反馈地址

mail.admin = bianbianmomo@163.com       //email用户名

 

根据dspace.dir,新建指定目录

cd /usr/local       

mkdir dspace

 

运行maven下载包

cd dspace-1.6.2-src-release/dspace

mvn package

 

运行ant帮助安装

cd  dspace-1.6.2-src-release/dspace/target/dspace-1.6.2-build.dir

ant fresh_install

 

运行tomcat中进行虚拟目录配置

<context path=”/jspui” docBase=”/opt/dspace/webapps/jspui” />

<context path=”/oai” docBase=”/opt/dspace/webapps/oai” />

 

<context path=”/oai” docBase=”/opt/dspace/webapps/xmlui” />

 

 

建立dspace管理用户,根据提示输入你所要建立的用户名跟密码

cd /usr/local/dspace/bin

./create-administrator

在创建管理用户时有遇到一个异常,然后我从周一纠结到今天,直到中午才结束

= = 我勒个去,装了那么多回,同样的装法同样滴人,为毛为毛~后来才知道是JDK版本冲突,原来在装系统定制包的时候我好死不死的把那个java给选上了,然后知道不知道又装了个1.6的,苍天呐

那异常如下:

 [root@bian101 bin]# ./create-administrator
Exception in thread "main" java.lang.NoSuchMethodError: method java.lang.management.ManagementFactory.getPlatformMBeanServer with signature ()Ljavax.management.MBeanServer; was not found.
   at org.dspace.servicemanager.DSpaceKernelInit.getMBean(DSpaceKernelInit.java:155)
   at org.dspace.servicemanager.DSpaceKernelInit.getKernel(DSpaceKernelInit.java:52)
   at org.dspace.app.launcher.ScriptLauncher.main(ScriptLauncher.java:80)

……= = 从这异常可以看出是环境配置,汗,忘记有两个jdk,所以一直纳闷呐纳闷呐

启动tomcat后,可输入:http://localhost:8080/jspui进行测试

 

 

 好像上回有写dspace的配置 不知道怎么全部被替换成tomcat+jdk的了 = =! 于是又得重写 忘得都差不多了 = =

 

我机上的/etc/profile整体配置就是这样

JAVA_HOME=/usr/local/jdk1.6
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib
export JAVA_HOME CLASSPATH

TOMCAT_HOME=/usr/local/tomcat6.0
CATALINA_HOME=/usr/local/tomcat6.0
CATALINA_BASE=/usr/local/tomcat6.0
export TOMCAT_HOME CATALINA_HOME CATALINA_BASE

TOMCAT_2_HOME=/usr/local/tomcat6.0-2
CATALINA_2_HOME=/usr/local/tomcat6.0-2
CATALINA_2_BASE=/usr/local/tomcat6.0-2
export TOMCAT_2_HOME CATALINA_2_HOME CATALINA_2_BASE

M2_HOME=/usr/local/maven
ANT_HOME=/usr/local/ant
export M2_HOME ANT_HOME

export PATH=$PATH:$JAVA_HOME/bin:$M2_HOME/bin:$ANT_HOME/bin

export JRE_HOME=$JAVA_HOME/jre

export JAVA_OPTS="-Xms256M -Xmx512M -Dfile.encoding=UTF-8"

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/apr/lib

我装了两个tomcat,一个放项目一个放dspace