Linux上安装openacs

Openacs的安装分为四大步:

1.安装jdk

2.安装jboss

3.安装mysql

4.部署openacs

JDK简介

Java DevelopmentKit(JDK)是由Sun公司发布的针对Java开发人员发布的免费软件开发工具包(SDK, Software development kit)。自Java推出以来,JDK已经成为使用最广泛的Java SDK。作为java语言的SDK,普通用户不需要安装JDK来运行Java程序,只需要安装JRE即可。而程序开发者必须安装JDK来开发、编译和调试程序。这里因为Openacs是基于jdk-1.5.0_22开发的,因此选用1.5版本的JDK来作为运行环境。

JBOSS简介

JBoss是一个基于J2EE的开放源代码的应用服务器。 因为JBoss代码遵循LGPL许可,可以在任何商业应用中免费使用它。在J2EE应用服务器领域,JBoss是发展最为迅速的应用服务器。由于JBoss遵循商业友好的LGPL授权分发,并且由开源社区开发,这使得JBoss广为流行。JBoss应用服务器还具有许多优秀的特质。

Openacs简介

Openacs是一个用Java编写的开源的ACS服务器,该项目于2007-09-06 由Audrius Valunas发起,经过四年的开发,Openacs已经拥有了非常完善的功能,不仅仅可以作为CPE开发的辅助测试工具,而且完全可以胜任对一定数量的CPE进行远程管理。Openacs采用B/S模式,可以通过浏览器访问ACS服务器,对CPE的远程管理可以通过编写Java script来灵活实现。Openacs需要部署在JBoss应用程序服务器,Release的版本有bin(二进制)版本和src(源码)版本的,其中源码版本需要使用ant进行编译。

一.安装JDK1.5

1.从SUN公司的官网上下载二进制格式的JDK安装包jdk-1_5_0_22-linux-i586.bin

2.运行该文件,安装在/opt目录下

Cd  /opt

Sh  ./ jdk-1_5_0_22-linux-i586.bin

之后选择yes,安装成功会在/opt目录下生成jdk1.5.0_22目录。

3.安装成功后需要设置环境变量,在~/.bashrc文件里加入如下语句:

PATH=$PATH:/opt/jdk1.5.0_22/bin

JAVA_HOME=/opt/jdk1.5.0_22

CLASS_PATH=/opt/jdk1.5.0_22/lib/tools.jar

export PATH JAVA_HOME CLASS_PATH

修改完成后使用source /etc/bashrc来更新环境变量。在终端里使用java -version来查看环境变量是否设置正确以确。

二.安装JBOSS4.2.2.2

1.下载JBoss的安装包jboss-4.2.2.GA.zip

2.将安 装包解压到/opt文件夹下面,修改环境变量,在~/.bashrc加入如下语句:

PATH=$PATH:/opt/jboss-4.2.2.GA/bin

JBOSS_HOME=/opt/jboss-4.2.2.GA

3.部署完成后到/opt/jboss/bin目录下,以./run.sh -b 0.0.0.0 来运行JBOSS,看是否能启动成功,如果可以正常浏览http://localhost:8080/,说明JBOSS安装成功。(如果以localhost登陆不进去,就把localhost改为你的ip地址,注意是服务器的ip。)

4.如果jboss不能通过ip访问,注意防火墙的问题

a.把要使用的8080端口打开,执行如下命令:

/sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT

b.把更改保存,执行如下命令:

/etc/rc.d/init.d/iptables save

c.重启防火墙,使更改立马生效,执行如下命令:

/etc/init.d/iptables restart

三.安装mysql数据库

1.因为mysql数据库在Linux上实在是太流行了,所以目前下载的主流Linux系统版本基本上都集成了mysql数据库在里面,我们可以通过如下命令来查看我们的操作系统上是否已经安装了mysql数据库

[weishusheng@centos opt]$rpm -qa | grep mysql

有的话,我们就可以用已经安装好的。

2.我是通过yum的方式来进行 mysql 的数据库安装,首先我们可以输入 yum list | grep mysql 来查看yum上提供的 mysql 数据库可下载的版本:

[weishusheng@centos opt]$yum list | grep mysql

3.安装mysql

将mysql  ,mysql-server ,mysql-devel都安装好(注意:安装mysql时我们并不是安装了mysql客户端就相当于安装好了mysql数据库了,我们还需要安装mysql-server服务端才行)

[weishusheng@centos opt]$yum install -y mysql-server mysql mysql-deve

4.此时我们可以通过如下命令,查看刚安装好的mysql-server的版本

[weishusheng@centos opt]$rpm -qi mysql-server

5.启动mysql

我们通过输入 service mysqld star命令就可以启动我们的mysql服务[weishusheng@centos opt]$service mysqld start

这时我们会看到第一次启动mysql服务器以后会提示非常多的信息,目的就是对mysql数据库进行初始化操作,当我们再次重新启动mysql服务时,就不会提示这么多信息了

6.我们在使用mysql数据库时,都得首先启动mysqld服务,我们可以 通过  chkconfig --list | grep mysqld 命令来查看mysql服务是不是开机自动启动,如:

[weishusheng@centos opt]$chkconfig mysqld on

7.mysql数据库安装完以后只会有一个root管理员账号,但是此时的root账号还并没有为其设置密码,在第一次启动mysql服务时,会进行数据库的一些初始化工作,在输出的一大串信息中,我们看到有这样一行信息 :

/usr/bin/mysqladmin -u root password 'new-password'  // 为root账号设置密码

所以我们可以通过 该命令来给我们的root账号设置密码(注意:这个root账号是mysql的root账号,非Linux的root账号)。

weishusheng@centos opt]$mysqladmin -u root password 'root'  // 通过该命令给root账号设置密码为 root

8.此时我们就可以通过 mysql -u root -p 命令来登录我们的mysql数据库了

[weishusheng@centos ~]$ mysql -u root -p

9.以root用户再新建一个openacs用户, 并设置密码为openacs,

mysql> insert into mysql.user (Host,User,Password) values ('localhost','openacs',password('openacs'));

10.刷新系统权限表

mysql>flush privileges;

11.退出后登录一下

mysql>exit;

[weishusheng@centOS6 ~]$ mysql -u openacs –p

mysql>登录成功

12.接下来为openacs授权。我里我以ROOT身份登录。
mysql -u root -p
密码

a.首先为用户创建一个数据库(ACSDB),

mysql> create database ACS;

b.在mysql中创建用户,使该用户对该数据库有完全权限.
可以用 GRANT命令,格式如下 :

GRANT 许可权 ON 数据库名.表名 TO 新用戶名@主机名 IDENTIFIED BY '密码';

如:
mysql> GRANT ALL ON ACS.* TO openacs@localhost IDENTIFIED BY 'openacs';
注:每一句mysql语句后面都跟有“;”号,注意大小写。

c.查看、使用数据库

maql -u openacs -p ### 登录

use ACS;              ###使用/选中ACS数据库

show tables;           ###查看表

mysql一些常用命令

查看数据库: show databases;
使用数据库: use db_name;
查看表: show tables;
查看表结构: describe table_name;
删除数据库:drop database db_name;
退出mysql:exit

13.将下载到的数据库驱动解压,将mysql-connector-java-5.1.7-bin.jar拷贝到 $(JBOSS_HOME)/server/default/lib/下面。

[weishusheng@centOS6mysql]$cp mysql-connector-java-5.1.7-bin.jar ../jboss/jboss-4.2.2.GA/server/default/lib/

至此数据库和驱动安装完成。

四.部署openacs

1.将acs.ear拷贝到/opt/jboss-4.2.2.GA/server/default/deploy/下面。

2.修改openacs-ds.xml使其适合你的数据库的配置:

<?xml version="1.0" encoding="UTF-8"?>

<datasources>

<local-tx-datasource>

<jndi-name>ACS</jndi-name>

<connection-url>jdbc:mysql://localhost/ACS</connection-url>

<driver-class>com.mysql.jdbc.Driver</driver-class>

<user-name>openacs</user-name>

<password>openacs</password>

<min-pool-size>5</min-pool-size>

<max-pool-size>20</max-pool-size>

<idle-timeout-minutes>5</idle-timeout-minutes>

</local-tx-datasource>

</datasources>

主要是修改user-name和password及connection-url 。

3.修改完成后将openacs-ds.xml拷贝到($JBOSS_HOME)/server/default/deploy/下面。

4.创建openacs-service.xml(已经有了就不用创建),并拷贝到($JBOSS_HOME)/server/default/deploy/jms下面,openacs-service.xml格式如下所示:

<?xml version="1.0" encoding="UTF-8"?>

<server>

<mbeancode="org.jboss.mq.server.jmx.Queue" name="jboss.mq.destination:service=Queue,name=acsQueue">

<dependsoptional-attribute-name="DestinationManager">jboss.mq:service=DestinationManager</depends>

</mbean>

</server>

至此Openacs的配置完成。

到这jboss启动又失败,提示信息为:

17:24:34,951 INFO  [Server] Runtime shutdown hook called, forceHalt: true
17:24:34,951 INFO  [Server] JBoss SHUTDOWN: Undeploying all packages
17:24:34,969 INFO  [Server] Shutdown complete
Shutdown complete
Halting VM

我的解决过程:

1.禁用防火墙或者打开8080端口(问题依旧)。

2.在一篇博客看到说是JAVA_HOME路径的问题,说路径里不要包含不常使用的字符,于是我把JAVA_HOME路径里的特殊字符去掉。(但还是登陆不进去)。

3.最终的解决方法很简单,但也颇费了我一番功夫,找来找去发现是机器重名造成的,直接hostname localhost,用这条命令修改名字。(终于登陆进去了)。

http://192.168.1.21:8080/openacs/

附图一张

在此给出几个cwmp相关的服务器和客户端下载链接

1. Perl CWMP Server

- https://github.com/dpavlin/perl-cwmp

2. mini-cwmp

- https://github.com/petersho/mini-cwmp

- http://mini-cwmp.sourceforge.net/

3. open-tr069

- http://code.google.com/p/open-tr069/

4. OpenACS

- http://sourceforge.net/projects/openacs/

5. jCPE

- http://code.google.com/p/jcpe/

6. netcwmp

- http://code.google.com/p/netcwmp/

7. jCWMPServer

- http://sourceforge.net/projects/jcwmpserver/

- http://ftp.heanet.ie/mirrors/sourceforge/j/project/jc/jcwmpserver/

8. cwmpclient

https://bitbucket.org/spapas/cwmpclient

目前 openacs的作者已经移除了相关的全部源代码,不再维护和更新,也有人建议他不要移除,继续留在网上,不更新维护也没关系(因为之前原作者申明openacs是开源的),很遗憾原作者没同意。

大家可以到:http://sourceforge.net/projects/libreacs/去看一下,那里有没移除之前的源代码。

基于CWMP(TR069)协议ACS服务器的搭建相关推荐

  1. linux ftp 团队认证,linux下ftp和ftps以及ftp基于mysql虚拟用户认证服务器的搭建

    linux下ftp和ftps以及ftp基于mysql虚拟用户认证服务器的搭建 1.FTP协议:有命令和数据连接两种 命令连接,控制连接:21/tcp 数据连接: 主动模式,运行在20/tcp端口 和 ...

  2. linux ftp mysql_linux下ftp和ftps以及ftp基于mysql虚拟用户认证服务器的搭建

    命令连接,控制连接:21/tcp 数据连接: 主动模式,运行在20/tcp端口 和 被动模式,运行在随机端口 数据传输模式(自动模式):有二进制(mp3,jpg等)和文本(html)两种传输模式 ft ...

  3. 【解决方案】基于国标GB28181协议视频平台EasyGBS搭建的安监行业应急视频监控系统解决方案

    一.方案背景 随着社会经济的不断发展,国内的安全生产事故也时有发生.在我国近年来接连发生的危险品爆炸.煤矿爆炸.天然气井喷及氯气泄漏事故中,事故的原因尽管不同,但都对国家及人民的生命财产造成了巨大损失 ...

  4. 【保姆级教程】基于WordPress在阿里云服务器上搭建个人博客网站

    写之前先回答几个问题: 1,网上类似的教程非常多,为什么写这篇教程? 答:博客网站我搭建过好几次,但是每次搭建都需要再去网上搜教程:然而网上的教程坑很多,甚至有些是错误的,不能完美解决自己的问题,有时 ...

  5. nginx搭建rtmp协议流媒体服务器总结

    最近在 ubuntu12.04+wdlinux(centos)上搭建了一个rtmp服务器,感觉还挺麻烦的,所以记录下. 大部分都是参考网络上的资料. 前提: 在linux下某个目录中新建一个nginx ...

  6. 打印服务器协议,基于TCP/IP协议的嵌入式网络打印服务器设计

    摘要: 随着电子技术和计算机网络技术的发展,嵌入式系统在家庭和工业的各个领域都得到了广泛的应用,各种信息家电,网络设备以及工业控制领域都出现了嵌入式系统的身影,其数量已经远远超过了各种通用计算机.但是 ...

  7. 基于java的微信公众平台开发(一)--账号申请与服务器的搭建

    2019独角兽企业重金招聘Python工程师标准>>> 微信公众号开发文档:https://mp.weixin.qq.com/wiki 微信公众平台接口调试工具:https://mp ...

  8. 基于阿里云ECS,Ubuntu系统搭建离线下载服务器

    基于阿里云ECS,Ubuntu系统搭建离线下载服务器 很开心能参加本次阿里云训练营,使用的ECS是阿里云,ubuntu系统 1.了解什么是CCAA CCAA 是服务器离线下载解决⽅案包,组件包含了Ar ...

  9. 基于slurm框架的GPU服务器集群搭建方法

    基于slurm框架的GPU服务器集群搭建操作文档 1. 环境基础 2. 环境配置 2.1 hostname配置 2.2 关闭SELinux (master, slave) 2.3 关闭Firewall ...

  10. [golang Web开发] 1.golang web开发:简介以及web服务器的搭建以及http协议简介

    一.web开发简介 1.简介 Web应用在我们的生活中无处不在,看看我们日常使用的各个应用程序,它们要么是 Web应用,要么是移动 App 这类 web应用的变种,无论哪一种编程语言,只要它能够开发出 ...

最新文章

  1. python科学计算基础教程pdf下载-用Python做科学计算 高清晰PDF
  2. 设置上传文件的最大大小
  3. 增加SYSTE表空间数据文件
  4. 【gitlab】gitlab快速部署教程
  5. 关于服务器中毒的预防与治疗
  6. android tag定义快捷键,Android Studio快捷键生成TAG、Log.x日志输出介绍
  7. POJ1430 Binary Stirling Numbers
  8. Python快速调用Teambition接口
  9. x 6什么意思python_Python基础_6
  10. HDU2019 数列有序!
  11. 深度学习基础(七)—— Gibbs 采样
  12. 勿以用户自居,张口就用户如何
  13. (机器人学导论--运动学)(三)DH表达法顺向运动学
  14. UART、RS-232、RS-422、RS-485
  15. LabVIEW编程技巧:手把手教你实现基于状态机的程序框架架构
  16. 同余原理与丢番图方程
  17. 修改python终端不能打开方法解决
  18. [笔记] 疯狂JAVA讲义(第3版)第4章 流程控制与数组
  19. set集合判断集合中是否有无元素_Python基础学习笔记(五)集合与字典
  20. Windows下用texlive+vscode报错Recipe terminated with fatal error: spawn xelatex ENOENT

热门文章

  1. 详细介绍如何在ubuntu20.04中安装ROS系统,超快完成安装(最新版教程)
  2. Github开源人体姿态识别项目OpenPose中文文档
  3. 使用C语言生成DAC的Sin正弦波数据表(一个周期采样32个)
  4. 三极管设计,理解饱和,线性区域和截止区
  5. 基于WeMos的WiFi避障小车
  6. 直方图规定化的编程实现
  7. Pytorch/Tensorflow:tf.multiply torch.mul(矩阵对应元素各自相乘)
  8. diabetes影响因子2017_2017年度影响因子看点和预测(MedSci出品)
  9. 科立捷默认频率_TETRA对讲机简介
  10. 计算机组成原理第五章----存储器容量的扩展与芯片连接