summaryrefslogtreecommitdiff
path: root/datacontroller/DC_install
diff options
context:
space:
mode:
authorbsdbc <[email protected]>2019-04-02 09:52:52 +0800
committerbsdbc <[email protected]>2019-04-02 09:52:52 +0800
commit4f1a03aeb9329361e7e7c316a4baeaea2dd49518 (patch)
tree47fe65efc58dd9c299828b82380f6b2d7fbb038b /datacontroller/DC_install
parent48f09fa63d5bfba5ab4d9b416e7f26cb5110c5f6 (diff)
init import
Diffstat (limited to 'datacontroller/DC_install')
-rw-r--r--datacontroller/DC_install/bin/DataController.jarbin0 -> 689992 bytes
-rw-r--r--datacontroller/DC_install/conf/druid.properties38
-rw-r--r--datacontroller/DC_install/conf/jvm.conf2
-rw-r--r--datacontroller/DC_install/conf/log4j.properties28
-rw-r--r--datacontroller/DC_install/conf/myconfig.properties287
-rw-r--r--datacontroller/DC_install/install.sh281
-rw-r--r--datacontroller/DC_install/lib/FUtil-0.5.jarbin0 -> 56842 bytes
-rw-r--r--datacontroller/DC_install/lib/ObjectSNMP.jarbin0 -> 1555662 bytes
-rw-r--r--datacontroller/DC_install/lib/ant.jarbin0 -> 1289806 bytes
-rw-r--r--datacontroller/DC_install/lib/bonecp-0.8.0-rc2.jarbin0 -> 110980 bytes
-rw-r--r--datacontroller/DC_install/lib/commons-beanutils-1.7.jarbin0 -> 188671 bytes
-rw-r--r--datacontroller/DC_install/lib/commons-collections.jarbin0 -> 571259 bytes
-rw-r--r--datacontroller/DC_install/lib/commons-io.jarbin0 -> 83613 bytes
-rw-r--r--datacontroller/DC_install/lib/commons-lang.jarbin0 -> 243016 bytes
-rw-r--r--datacontroller/DC_install/lib/commons-logging.jarbin0 -> 60841 bytes
-rw-r--r--datacontroller/DC_install/lib/commons-net-ftp-2.0.jarbin0 -> 91184 bytes
-rw-r--r--datacontroller/DC_install/lib/druid-1.0.23.jarbin0 -> 2113249 bytes
-rw-r--r--datacontroller/DC_install/lib/druid-1.1.10.jarbin0 -> 2756709 bytes
-rw-r--r--datacontroller/DC_install/lib/ezmorph-1.0.4.jarbin0 -> 86381 bytes
-rw-r--r--datacontroller/DC_install/lib/fileComment.jarbin0 -> 997 bytes
-rw-r--r--datacontroller/DC_install/lib/ganymed-ssh2-build210.jarbin0 -> 244831 bytes
-rw-r--r--datacontroller/DC_install/lib/guava-14.0-rc3.jarbin0 -> 2189140 bytes
-rw-r--r--datacontroller/DC_install/lib/jconsole-1.8.0.jarbin0 -> 407728 bytes
-rw-r--r--datacontroller/DC_install/lib/jpcap.jarbin0 -> 18372 bytes
-rw-r--r--datacontroller/DC_install/lib/json-lib-2.2.2-jdk15.jarbin0 -> 143977 bytes
-rw-r--r--datacontroller/DC_install/lib/junit.jarbin0 -> 121070 bytes
-rw-r--r--datacontroller/DC_install/lib/log4j-1.2.15.jarbin0 -> 391834 bytes
-rw-r--r--datacontroller/DC_install/lib/mail.jarbin0 -> 356519 bytes
-rw-r--r--datacontroller/DC_install/lib/mysql-connector-java-5.1.0-bin.jarbin0 -> 566623 bytes
-rw-r--r--datacontroller/DC_install/lib/netty-all-4.1.28.Final-sources.jarbin0 -> 3052998 bytes
-rw-r--r--datacontroller/DC_install/lib/netty-all-4.1.28.Final.jarbin0 -> 3839841 bytes
-rw-r--r--datacontroller/DC_install/lib/ojdbc14.jarbin0 -> 1545954 bytes
-rw-r--r--datacontroller/DC_install/lib/ostermillerutils_1_07_00.jarbin0 -> 525947 bytes
-rw-r--r--datacontroller/DC_install/lib/sigar.jarbin0 -> 423169 bytes
-rw-r--r--datacontroller/DC_install/lib/slf4j-api-1.6.1.jarbin0 -> 25496 bytes
-rw-r--r--datacontroller/DC_install/lib/slf4j-log4j12-1.6.1.jarbin0 -> 9753 bytes
-rw-r--r--datacontroller/DC_install/lib/snmp4j-2.0.3.jarbin0 -> 427718 bytes
-rw-r--r--datacontroller/DC_install/lib/tools-1.8.0.jarbin0 -> 18238570 bytes
-rw-r--r--datacontroller/DC_install/shell/cer/client_ksbin0 -> 1306 bytes
-rw-r--r--datacontroller/DC_install/shell/cer/client_tsbin0 -> 624 bytes
-rw-r--r--datacontroller/DC_install/shell/cer/server_ksbin0 -> 1308 bytes
-rw-r--r--datacontroller/DC_install/shell/cer/server_tsbin0 -> 622 bytes
-rw-r--r--datacontroller/DC_install/shell/datacontroller.sh197
-rw-r--r--datacontroller/DC_install/shell/shutdown.sh30
-rw-r--r--datacontroller/DC_install/shell/startup.sh34
45 files changed, 897 insertions, 0 deletions
diff --git a/datacontroller/DC_install/bin/DataController.jar b/datacontroller/DC_install/bin/DataController.jar
new file mode 100644
index 0000000..a0fdb0a
--- /dev/null
+++ b/datacontroller/DC_install/bin/DataController.jar
Binary files differ
diff --git a/datacontroller/DC_install/conf/druid.properties b/datacontroller/DC_install/conf/druid.properties
new file mode 100644
index 0000000..ab8f9fe
--- /dev/null
+++ b/datacontroller/DC_install/conf/druid.properties
@@ -0,0 +1,38 @@
+##Driver
+#druid.driverClassName=com.mysql.jdbc.Driver
+##数据库链接,
+#druid.url=jdbc:mysql://192.168.0.37:3306/project_demo?useUnicode=true&characterEncoding=UTF-8
+##帐号
+#druid.username=root
+##密码
+#druid.password=xxxx
+#检测数据库链接是否有效,必须配置
+druid.validationQuery=SELECT 1 from dual
+#初始连接数
+druid.initialSize=3
+#最大连接池数量
+druid.maxActive=10
+#去掉,配置文件对应去掉
+#druid.maxIdle=20
+#配置0,当线程池数量不足,自动补充。
+druid.minIdle=3
+#获取链接超时时间为1分钟,单位为毫秒。
+druid.maxWait=60000
+#获取链接的时候,不校验是否可用,开启会有损性能。
+druid.testOnBorrow=false
+#归还链接到连接池的时候校验链接是否可用。
+druid.testOnReturn=false
+#此项配置为true即可,不影响性能,并且保证安全性。意义为:申请连接的时候检测,如果空闲时间大于timeBetweenEvictionRunsMillis,执行validationQuery检测连接是否有效。
+druid.testWhileIdle=true
+#1.Destroy线程会检测连接的间隔时间
+#2.testWhileIdle的判断依据
+druid.timeBetweenEvictionRunsMillis=600000
+#一个链接生存的时间
+druid.minEvictableIdleTimeMillis=600000
+#链接使用超过时间限制是否回收
+druid.removeAbandoned=false
+#超过时间限制时间(单位秒),目前为5分钟,如果有业务处理时间超过5分钟,可以适当调整。
+druid.removeAbandonedTimeout=300
+#链接回收的时候控制台打印信息,测试环境可以加上true,线上环境false。会影响性能。
+druid.logAbandoned=false
+druid.filters= \ No newline at end of file
diff --git a/datacontroller/DC_install/conf/jvm.conf b/datacontroller/DC_install/conf/jvm.conf
new file mode 100644
index 0000000..f4edf37
--- /dev/null
+++ b/datacontroller/DC_install/conf/jvm.conf
@@ -0,0 +1,2 @@
+-Xms64m
+-Xmx128m \ No newline at end of file
diff --git a/datacontroller/DC_install/conf/log4j.properties b/datacontroller/DC_install/conf/log4j.properties
new file mode 100644
index 0000000..fe6bc3e
--- /dev/null
+++ b/datacontroller/DC_install/conf/log4j.properties
@@ -0,0 +1,28 @@
+log4j.rootLogger = debug,stdout,logfile,errorLog
+
+log4j.appender.stdout = org.apache.log4j.ConsoleAppender
+log4j.appender.stdout.layout.ConversionPattern = %d %p [%l] [%t] - <%m>%n
+log4j.appender.stdout.layout = org.apache.log4j.PatternLayout
+
+#----------------------debug---------------------
+
+log4j.appender.logfile = org.apache.log4j.RollingFileAppender
+log4j.appender.logfile.MaxFileSize = 50MB
+log4j.appender.logfile.MaxBackupIndex = 10
+
+log4j.appender.logfile.File = ../dc_logs/datacontroller.log
+log4j.appender.logfile.layout.ConversionPattern = %d %p [%l] [%t] - <%m>%n
+log4j.appender.logfile.layout = org.apache.log4j.PatternLayout
+
+#----------------------error---------------------
+log4j.logger.errorLog = warn,errorLog
+log4j.appender.errorLog = org.apache.log4j.RollingFileAppender
+log4j.appender.errorLog.MaxFileSize = 50MB
+log4j.appender.errorLog.Append = true
+log4j.appender.errorLog.Threshold = warn
+log4j.appender.errorLog.MaxBackupIndex = 10
+log4j.appender.errorLog.File = ../dc_logs/error.log
+log4j.appender.errorLog.layout.ConversionPattern = %d %p [%l] [%t] - <%m>%n
+log4j.appender.errorLog.layout = org.apache.log4j.PatternLayout
+
+
diff --git a/datacontroller/DC_install/conf/myconfig.properties b/datacontroller/DC_install/conf/myconfig.properties
new file mode 100644
index 0000000..fd28b9b
--- /dev/null
+++ b/datacontroller/DC_install/conf/myconfig.properties
@@ -0,0 +1,287 @@
+#--------need modify -----------begin
+##--公共数据存放父目录(*部署需修改*)
+common.datas.dir =
+##--系统SNMP监测,指定服务器IP 指本机(*部署需修改*)
+system.inet.address =
+##--NMSWeb端 通讯IP 指WEB(*部署需修改*)
+web.socket.ip =
+#--数据库驱动
+#db.driver=oracle.jdbc.driver.OracleDriver
+db.driver=com.mysql.jdbc.Driver
+##--数据库 地址(*部署需修改*)
+#db.url = jdbc:oracle:thin:@10.0.6.100:1521:ict
+db.url =
+##--数据库 用户名(*部署需修改*)
+#db.username = nms
+db.username =
+##--数据库 密码(*部署需修改*)
+#db.password = nms
+db.password =
+
+
+#数据库类型
+db.type=mysql
+#--------need modify -----------end
+#-------- DB pool -----------begin
+db.pool.type=druid
+##--##--连接池 设置分区 缺省值 3 一般设置为3~4
+db.pool.partitionCount = 3
+##--设置每个分区中的最大连接数 缺省值 10 注意 此处问每个分区最大线程数 总数为 partitionCount*maxConnectionsPerPartition 即 30
+db.pool.maxConnectionsPerPartition = 20
+##--设置每个分区中的最小连接数 缺省值 5 注意 此处问每个分区最小空闲线程数 总数为 partitionCount*minConnectionsPerPartition 即 15
+db.pool.minConnectionsPerPartition = 3
+##--当连接池中的连接耗尽的时候 BoneCP一次同时获取的连接数 缺省值3
+db.pool.acquireIncrement = 3
+#-------- DB pool -----------end
+#------- Email ---------begin
+##--邮件发送标识,(1启用、0禁用)
+email.flag = 0
+##--邮件通知 发送 用户地址(*部署需修改*)
+email.address =
+##--邮件通知 发送 用户名(*部署需修改*)
+email.userName =
+##--邮件通知 发送 用户密码(*部署需修改*)
+email.password =
+##--邮件服务器IP(*部署需修改*)
+email.host =
+#------- Email ---------end
+
+##--NMSWeb端 通讯服务监听端口
+web.socket.port = 60703
+
+#---Common-------
+##--分中心执行自身范围内client的任务0 关闭 1开启
+mission.single = 1
+##--全局文本解析编码,与web端、Agent端一致,不可修改
+common.text.coding = UTF-8
+##--全局日期格式化方式,须与数据库 日期数据格式化方式(db.date.format)保持一致,不建议修改
+common.date.format = yyyy-MM-dd HH:mm:ss
+
+##--NMSServer升级时,通讯中断延时恢复时间(秒)
+mission.update.daily = 300
+
+##--最大网络带宽限制(Mbps)
+max.network.bandwidth = 5
+#-------Executor Thread---------
+##--公用普通线程池预置线程数(个)
+executor.socket.thread.size = 120
+##--公用定时线程池预置线程数(个)
+executor.scheduled.thread.size = 30
+##--数据解析线程预置线程数(个)
+executor.data.resove.thread.size = 3
+#---Change Operations-------
+##--监测、任务、节点等状态及设置信息变更时,执行变更操作的线程,轮询周期(秒)
+change.operations.period = 300
+change.release.semaphore.max = 10
+#------- Detection Alarm ---------
+##--主动监测执行通讯并发数(个)
+detec.release.semaphore.max = 20
+#------- Detection Resolve ---------
+##--缓存监测数据解析周期(秒)
+detec.data.resovle.period = 60
+##--硬盘监测数据解析周期(秒)
+
+##--DC端主动收集数据(监测数据、任务结果、回传文件)周期(秒)(应该比生成监测数据的间隔时间小,不要web页面会有段时间报警,说缺失一个周期的监测数据,而实际是你还没去收集,5分钟)
+data.collect.period = 300
+##--DC端主动收集数据(执行完成,但无任务结果的任务的结果信息)(大于等于正常收集任务结果的周期data.collect.period的2倍?)
+nonRltTask.result.collect.period = 600
+##--告警数据解析周期(秒)
+alarm.data.resovle.period = 60
+####common.file.resovle.period unable
+##--PING监测类别标识,用于查询数据库中预置PING监测设置的监测类别标识(须与数据库PING监测类别名称一致,默认不可修改)
+detec.ping.str = PING
+##--NMSC监测类别标识,用于查询数据库中预置PING监测设置的监测类别标识(须与数据库NMSClient监测类别名称一致,默认不可修改)
+detec.nmsc.str = NMSClient
+##--SNMP监测类别标识,用于查询数据库中预置SNMP监测设置的监测类别标识(不可修改)
+detec.snmp.str = SNMP
+##--SNMP_SWITCH监测类别标识,用于查询数据库中预置SWITCH监测设置的监测类别标识(不可修改)
+detec.switch.str = SWITCHPORT
+##--systeminfo监测类别解析标识,特有解析方法,用于查询数据库中预置systeminfo监测设置的监测类别标识(不可修改)
+detec.systeminfo.str = systeminfo
+##--SNMP_TRAP监测类别标识,用于查询数据库中预置SNMP_TRAP监测设置的监测类别标识(不可修改)
+alarm.snmp.trap.str = SNMP_TRAP
+
+#---Mission Control-------
+##--周期任务执行时,预置周期的数量(个)
+mission.loop.preset.number = 10
+##--周期任务执行时,默认检查时间(暂未使用)
+mission.loop.finishing.daily = 20:00:00
+
+#---Mission release-------
+##--任务执行,节点下发通讯并发数(个)
+mission.release.semaphore.max = 10
+##--任务执行,重复尝试次数(次)
+mission.release.times = 2
+##--任务执行,重复下发间隔周期(秒)
+mission.release.period = 180
+
+#---Mission File-------
+##--从WEB端下载任务文件的线程的超时时间(秒)
+mission.file.download.delay = 20
+##--上传到WEB端的回传文件线程执行周期(秒)
+mission.file.upload.period = 120
+##--数据库 日期格式化方式 须与全局日期格式化方式(common.date.format)保持一致,不建议修改
+db.date.format = yyyy-MM-dd HH24:mi:ss
+##--数据库 批处理 最大数
+db.execute.batch = 100
+
+#---SNMP-------
+##--SNMP 目标主机信息 获取端口
+snmp.client.port = 161
+##--SNMP 接收告警 监听端口
+snmp.trap.port = 162
+##--SNMP 主动告警 接收端口
+snmp.community = public
+##--ObjectSNMP class文件打包名称(不可修改)
+snmp.class.package = osDomains
+##--SNMP 加密认证级别 0 不认证 不加密'zg' 1 认证 不加密'hckings' ,2认证 且 加密'dxy'
+snmp.v3.security.level = 0
+##--SNMP 加密认证用户 用户名
+snmp.v3.security.name = zg
+##--SNMP 认证协议方式
+snmp.v3.auth.protocol = MD5
+##--SNMP 加密协议方式
+snmp.v3.priv.protocol = DES
+##--SNMP 认证密码明文
+snmp.v3.auth.passphrase = 12345678
+##--SNMP 加密密码明文
+snmp.v3.priv.passphrase = 12345678
+
+#---SSL-------
+##--SSL通讯 密匙类型(不可修改)
+ssl.type = TLS
+##--SSL通讯 密匙文件存放目录,默认为打包程序工程目录下cer(不建议修改)
+ssl.dir = cer
+##--SSL通讯 密匙有效期(暂未使用)
+ssl.key.validity = 90
+##--SSL通讯 Server端 通讯监听端口,须与WEB端、Agent端通讯发送端口保持一致(不建议修改)
+ssl.server.port = 60702
+##--SSL通讯 Agent端 通讯发送端口,须与Agent端 通讯监听端口保持一致(不建议修改)
+ssl.client.port = 60701
+##--SSL通讯 密匙库类型(不可修改)
+ssl.keystore.type = jceks
+##--SSL通讯 Server端 私钥库名称
+ssl.server.store = server_ks
+##--SSL通讯 Server端 公钥库名称
+ssl.server.trust = server_ts
+##--SSL通讯 Agent端 私钥库名称 与Agent端保持一致(预留)
+ssl.client.store = client_ks
+##--SSL通讯 Agent端 公钥库名称 与Agent端保持一致(预留)
+ssl.client.trust = client_ts
+##--SSL通讯 Server端 私钥库密码
+ssl.server.store.psw = client
+##--SSL通讯 Server端 公钥库密码(预留)
+ssl.server.trust.psw = client
+##--SSL通讯 Server端 公钥导出文件名称(预留)
+ssl.server.export = server.cer
+##--SSL通讯 Agent端 公钥导出文件名称(预留)
+ssl.client.export = client.cer
+##--SSL通讯 Server端 旧密钥名称(预留)
+ssl.server.key.old = serverks20110828
+##--SSL通讯 Server端 旧密钥密码(预留)
+ssl.server.key.old.psw = 123456
+##--SSL通讯 Server端 新密钥名称(预留)
+ssl.server.key.new = serverks20110828
+##--SSL通讯 Server端 新密钥密码(预留)
+ssl.server.key.new.psw = 123456
+##--SSL通讯 Agent端 密钥名称(预留)
+ssl.client.key = serverks20110828
+##--SSL通讯 Agent端 密钥密码(预留)
+ssl.client.key.psw = 123456
+
+#-----------debug------------
+##--ZIP 解析线程标识 启用标识(1启用、0禁用)
+zip.flag = 1
+##--监测结果接收超时 启用标识(1启用、0禁用)
+detec.timeout.flag = 1
+##--文件上传功能 启用标识(1启用、0禁用)
+file.upload.flag = 1
+##--监测数据解析功能 启用标识(1启用、0禁用)
+file.resove.flag = 1
+##--数据主动收集功能 启用标识(1启用、0禁用)
+data.collect.flag = 0
+##--执行完成,但无任务结果的任务的结果信息的收集标志 启用标识(1启用、0禁用)
+nonRltTask.result.collect.flag = 1
+##--告警解析功能 启用标识(1启用、0禁用)
+alarm.resove.flag = 1
+##--变更操作功能 启用标识(1启用、0禁用)
+change.operations.flag = 1
+##--主动监测PING功能 启用标识(1启用、0禁用)
+ping.flag = 1
+##--主动监测NMSClient功能 启用标识(1启用、0禁用)
+nmsc.flag = 1
+##--主动监测SNMP功能 启用标识(1启用、0禁用)
+snmp.flag = 1
+##--主动监测交换机功能 启用标识(1启用、0禁用)
+switch.flag = 1
+##--trap功能 启用标识(1启用、0禁用)
+trap.flag = 1
+##--初始化任务执行功能 启用标识(1启用、0禁用)
+mission.flag = 1
+##--任务结果解析功能 启用标识(1启用、0禁用)
+result.flag = 1
+##--邮件发送功能 启用标识(1启用、0禁用)
+email.start.flag = 1
+#-----------debug 2------------
+##--监测数据文件解析 保存到数据库操作标识(1启用、0禁用)
+file.resove.commitDB.flag = 1
+delete.files.flag = 1
+config.update.flag = 8
+delete.files.period = 24
+mailing.period = 120
+keep.file.days = 7
+#硬盘监测数据入库线程开关
+data.files.reader.flag = 1
+error.info.flag = 1
+detec.system.str = system
+
+#握手监测失败时(state=-1),默认的告警级别:0级
+detect.fail.nmsc.police.level=0
+#握手监测失败时(state=-1),默认的紧急状态:0紧急;1非紧急
+detect.fail.nmsc.police.emergent=0
+#非握手监测失败时(state=-1),默认的告警级别:1-5级
+detect.fail.non.nmsc.police.level=1
+#非握手监测失败时(state=-1),默认的紧急状态:0紧急;1非紧急
+detect.fail.non.nmsc.police.emergent=1
+#端口异常(流量为0,设置状态和实际状态不符)时,默认的告警级别:1-5级
+port.alarm.level=5
+#端口异常(流量为0,设置状态和实际状态不符)时,默认的紧急状态:0紧急;1非紧急
+port.alarm.emergent=1
+#NC主动告警(默认为紧急),state=-2时,默认的告警级别:0级,
+nc.alarm.police.level=0
+#DC端主动监测,单节点超时时间
+single.node.detect.timeout=180
+#监测数据每500条入库一次
+detection_info_data_max_rows =500
+data.collect.daily=120
+#dc监测数据入库模式,1:由web 主控控制入库,2:自己主动入库,3:智能模式(1和2结合),4,写入文件,定时上传web端
+detect.insert.mode=2
+
+############ 多线程入库监测数据 ################
+#监测数据入库线程模式,1:单线程,2:多线程(info,detail)
+detect.insert.thread.mode=2
+#info入库线程运行模式,1:每隔 n秒 运行一次,2:间隔 n 秒运行一次
+detect.info.thread.mode=2
+#info入库线程 每隔 或间隔 时间 ,单位:s
+detect.info.thread.time=60
+detect.info.thread.delay=5
+#detail入库线程运行模式,1:每隔 n秒 运行一次,2:间隔 n 秒运行一次
+detect.detail.thread.mode=1
+#detail入库线程 每隔 或间隔 时间 ,单位:s
+detect.detail.thread.time=60
+detect.detail.thread.delay=5
+############ 多线程入库监测数据 ################
+
+
+############## netty ######################
+##--dc 接收nc主动上报 监测数据,任务结果,任务回传文件(1启用、0禁用),启用时要同时将data.collect.flag 置为 0
+netty.server.flag=1
+netty.server.port=9527
+netty.server.ssl=true
+#client 空闲时间,单位:s,设置比client 心跳时间大一点,判断nc 是否在线
+netty.idle.time=15
+netty.so.backlog=128
+
+#代码生成序列,0 关闭,默认为detection_info表,如多个表需要添加序列,多个表名用,隔开
+sequence.table=0
+
diff --git a/datacontroller/DC_install/install.sh b/datacontroller/DC_install/install.sh
new file mode 100644
index 0000000..395e1e1
--- /dev/null
+++ b/datacontroller/DC_install/install.sh
@@ -0,0 +1,281 @@
+#!/bin/bash
+
+DEFAULT_DATA_DIR="/home/ceiec/nms/nmsdata"
+DEFAULT_INSTALL_DIR="/home/ceiec/nms/datacontroller"
+
+# --- set install dir
+PRG="$0"
+PRGDIR=`dirname "$PRG"`
+CUR_PRGDIR=`cd "$PRGDIR"; pwd`
+
+if [ $# = 0 ]
+ then
+ echo -n "enter intall dir [default: $DEFAULT_INSTALL_DIR]:"
+ read INSTALL_DIR
+ if [ -z "$INSTALL_DIR" ]; then
+ INSTALL_DIR="$DEFAULT_INSTALL_DIR"
+ fi
+else
+ INSTALL_DIR="$1"
+fi
+
+if [ ! -d $INSTALL_DIR ]
+ then
+ mkdir -p $INSTALL_DIR
+fi
+
+INSTALL_DIR=`cd "$INSTALL_DIR"; pwd`
+
+# --- check jdk and jdk-version
+install_jdk=0
+javaversion=`java -version 2>&1|grep "java version"`
+if [ -n "$javaversion" ]
+ then
+ # javaversion=${javaversion:14:3}
+ javavmajor=`echo $javaversion | cut -c15`
+ javavminor=`echo $javaversion | cut -c17`
+# OS_TYPE=$( lsb_release -d| cut -d: -f2| cut -f2 )
+# if [ "`echo $OS_TYPE | cut -c1-6`" = "Ubuntu" ]
+# then
+# if [ 2 -gt $javavmajor ]; then
+# if [ 6 -gt $javavminor ]; then
+# install_jdk=1
+# fi
+# fi
+# else
+ if [[ 2 -gt $javavmajor && 6 -gt $javavminor ]]; then
+ install_jdk=1
+ fi
+# fi
+ else
+ install_jdk=1
+fi
+
+# --- install jdk
+cd "$INSTALL_DIR"/..
+NMS_JDK="$(pwd)/nmsjdk"
+JDK_DIR="$(pwd)/jre1.7.0_80"
+JDK_BIN_FILE=$CUR_PRGDIR"/jre_install/jre-7u80-linux-i586.tar.gz"
+if [ "`uname -i`" = "x86_64" ];then
+ JDK_BIN_FILE=$CUR_PRGDIR"/jre_install/jre-7u80-linux-x64.tar.gz"
+fi
+if [ $install_jdk = 1 ]
+ then
+ if [ ! -e "$NMS_JDK" ]
+ then
+ echo "JDK bin file: $JDK_BIN_FILE"
+ echo "now, install jdk: $JDK_DIR"
+ sleep 3
+ if [ ! -e "$JDK_DIR" ];then
+ mkdir -p $JDK_DIR
+ fi
+ tar -xzf $JDK_BIN_FILE -C $JDK_DIR --strip-components=1 || installJdk=1
+ if [ -n "$installJdk" ];then
+ echo "install jdk failure, exit program"
+ exit 1
+ fi
+ ln -s $JDK_DIR $NMS_JDK
+ echo "install jdk done"
+ fi
+elif [ -n "$JAVA_HOME" ];then
+ ln -s $JAVA_HOME $NMS_JDK
+else
+ echo "JDK bin file: $JDK_BIN_FILE"
+ echo "now, install jdk: $JDK_DIR"
+ sleep 3
+ if [ ! -e "$JDK_DIR" ];then
+ mkdir -p $JDK_DIR
+ fi
+ tar -xzf $JDK_BIN_FILE -C $JDK_DIR --strip-components=1 || installJdk=1
+ if [ -n "$installJdk" ];then
+ echo "install jdk failure, exit program"
+ exit 1
+ fi
+ ln -s $JDK_DIR $NMS_JDK
+ echo "install jdk done"
+fi
+cd "$CUR_PRGDIR"
+
+echo "==========================================="
+echo "NMS_JDK: $NMS_JDK"
+echo "INSTALL_DIR: $INSTALL_DIR"
+echo "==========================================="
+
+# --- copy file to install_dir
+if [ "$INSTALL_DIR" == "$CUR_PRGDIR" ]
+ then
+ echo "install directory is current program directory..."
+else
+ echo "install program, it may take a few time..."
+ CP_DIR=(
+ bin
+ lib
+ conf
+ shell
+ )
+ #cp
+ for CP_NAME in ${CP_DIR[@]}
+ do
+ echo $CP_NAME
+ cp -a $CUR_PRGDIR"/$CP_NAME" $INSTALL_DIR
+ done
+fi
+
+function modify_file(){
+ if [ $# != 2 ]
+ then
+ echo "usage: modify_file [prop_name] [prop_value]"
+ exit 0
+ fi
+ prop_name="$1"
+ prop_value="$2"
+ #echo "modify_file $prop_name $prop_value"
+ if [ -z "$(cat $PROP_FILE |grep $prop_name)" ]
+ then
+ echo "" >> $PROP_FILE
+ echo "$prop_name=$prop_value" >> $PROP_FILE
+ else
+ sed -i "s|^$prop_name.*|$prop_name=$prop_value|" $PROP_FILE
+ fi
+}
+
+enter_password=""
+function readPasswd(){
+ enter_password=""
+ stty -echo cbreak
+ while true
+ do
+ character=$(dd if=/dev/tty bs=1 count=1 2> /dev/null)
+ case $character in
+ $(echo -e "\n"))
+ break
+ ;;
+ $(echo -e "\b"))
+ if [ -n "$enter_password" ]; then
+ echo -n -e "\b \b"
+ enter_password=$(echo "$password" | sed 's/.$//g')
+ fi
+ ;;
+ *)
+ enter_password=$enter_password$character
+ echo -n '*'
+ ;;
+ esac
+ done
+ stty -cbreak echo
+ echo ""
+}
+
+# modify property
+PROP_FILE=$INSTALL_DIR"/conf/myconfig.properties"
+
+#echo "PROP_FILE: $PROP_FILE"
+
+#-------------data dir
+echo -n "enter data dir [default $DEFAULT_DATA_DIR]: "
+read data_path
+if [ -z "$data_path" ]
+ then
+ data_path="$DEFAULT_DATA_DIR"
+fi
+#-------------local ip
+echo -n "enter local ip: "
+read local_ip
+while [ -z "$local_ip" ]
+ do
+ echo -n "local ip cannot null, please enter local ip: "
+ read local_ip
+done
+#-------------nmsweb ip
+echo -n "enter nmsweb ip: "
+read nmsweb_ip
+while [ -z "$nmsweb_ip" ]
+ do
+ echo -n "nmsweb ip cannot null, please enter nmsweb ip: "
+ read nmsweb_ip
+done
+#-------------db url
+#echo -n "enter database url: "
+#read db_url
+#while [ -z "$db_url" ]
+# do
+# echo -n "database url cannot null, please enter database url: "
+# read db_url
+#done
+
+#2018-08-26 修改url为只传host和port(默认3306)拼接完成后赋值给db.url
+DBPORT=3306
+#-------------db host
+echo -n "enter database host:"
+read db_host
+while [ -z "$db_host" ]
+do
+ echo -n "database host cannot null,please enter database host:"
+ read db_host
+done
+
+#-------------db port
+echo -n "enter database port[default port 3306]:"
+read db_port
+if [ -z "$db_port" ]
+then
+ db_port="$DBPORT"
+fi
+
+#-----------db url
+db_url="jdbc:mysql://"${db_host}":"${db_port}"/nms?useUnicode=true\&characterEncoding=utf-8\&useOldAliasMetadataBehavior=true\&rewriteBatchedStatements=true"
+
+#-------------db username
+echo -n "enter database username: "
+read db_username
+while [ -z "$db_username" ]
+ do
+ echo -n "database username cannot null, please enter database username: "
+ read db_username
+done
+#-------------db password
+echo -n "enter database password: "
+readPasswd
+db_passwd="$enter_password"
+while [ -z "$db_passwd" ]
+ do
+ echo -n "database password cannot null, please enter database password: "
+ readPasswd
+ db_passwd="$enter_password"
+done
+#-------------log4j dir
+echo -n "enter logs path [default $data_path/dc_logs]: "
+read logs_path
+if [ -z "$logs_path" ]
+ then
+ logs_path="$data_path/dc_logs"
+fi
+
+modify_file "common.datas.dir" $data_path
+modify_file "system.inet.address" $local_ip
+modify_file "web.socket.ip" $nmsweb_ip
+modify_file "db.url" $db_url
+modify_file "db.username" $db_username
+modify_file "db.password" $db_passwd
+
+# modify log4j
+PROP_FILE=$INSTALL_DIR"/conf/log4j.properties"
+encoding=${LANG#*.}
+modify_file "log4j.appender.stdout.encoding" $encoding
+modify_file "log4j.appender.debugAppender.encoding" $encoding
+modify_file "log4j.appender.infoAppender.encoding" $encoding
+modify_file "log4j.appender.debugAppender.File" "$logs_path/datacontroller_debug.log"
+modify_file "log4j.appender.infoAppender.File" "$logs_path/datacontroller_info.log"
+
+#permit
+cd $INSTALL_DIR"/shell"
+chmod 755 *.sh
+cd $CUR_DIR
+
+if [ -z "$(cat /etc/rc.local|grep $INSTALL_DIR"/shell/startup.sh")" ]
+then
+ echo $INSTALL_DIR"/shell/startup.sh" >> /etc/rc.local
+fi
+
+echo "install successed..."
+echo "please use [$INSTALL_DIR/shell/startup.sh] to run the program..." \ No newline at end of file
diff --git a/datacontroller/DC_install/lib/FUtil-0.5.jar b/datacontroller/DC_install/lib/FUtil-0.5.jar
new file mode 100644
index 0000000..cb1759c
--- /dev/null
+++ b/datacontroller/DC_install/lib/FUtil-0.5.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/ObjectSNMP.jar b/datacontroller/DC_install/lib/ObjectSNMP.jar
new file mode 100644
index 0000000..e06bc88
--- /dev/null
+++ b/datacontroller/DC_install/lib/ObjectSNMP.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/ant.jar b/datacontroller/DC_install/lib/ant.jar
new file mode 100644
index 0000000..0a56a58
--- /dev/null
+++ b/datacontroller/DC_install/lib/ant.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/bonecp-0.8.0-rc2.jar b/datacontroller/DC_install/lib/bonecp-0.8.0-rc2.jar
new file mode 100644
index 0000000..0866e9f
--- /dev/null
+++ b/datacontroller/DC_install/lib/bonecp-0.8.0-rc2.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/commons-beanutils-1.7.jar b/datacontroller/DC_install/lib/commons-beanutils-1.7.jar
new file mode 100644
index 0000000..b1b89c9
--- /dev/null
+++ b/datacontroller/DC_install/lib/commons-beanutils-1.7.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/commons-collections.jar b/datacontroller/DC_install/lib/commons-collections.jar
new file mode 100644
index 0000000..75580be
--- /dev/null
+++ b/datacontroller/DC_install/lib/commons-collections.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/commons-io.jar b/datacontroller/DC_install/lib/commons-io.jar
new file mode 100644
index 0000000..7affdef
--- /dev/null
+++ b/datacontroller/DC_install/lib/commons-io.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/commons-lang.jar b/datacontroller/DC_install/lib/commons-lang.jar
new file mode 100644
index 0000000..b910561
--- /dev/null
+++ b/datacontroller/DC_install/lib/commons-lang.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/commons-logging.jar b/datacontroller/DC_install/lib/commons-logging.jar
new file mode 100644
index 0000000..8758a96
--- /dev/null
+++ b/datacontroller/DC_install/lib/commons-logging.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/commons-net-ftp-2.0.jar b/datacontroller/DC_install/lib/commons-net-ftp-2.0.jar
new file mode 100644
index 0000000..f697534
--- /dev/null
+++ b/datacontroller/DC_install/lib/commons-net-ftp-2.0.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/druid-1.0.23.jar b/datacontroller/DC_install/lib/druid-1.0.23.jar
new file mode 100644
index 0000000..ff5a0ab
--- /dev/null
+++ b/datacontroller/DC_install/lib/druid-1.0.23.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/druid-1.1.10.jar b/datacontroller/DC_install/lib/druid-1.1.10.jar
new file mode 100644
index 0000000..545dfa7
--- /dev/null
+++ b/datacontroller/DC_install/lib/druid-1.1.10.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/ezmorph-1.0.4.jar b/datacontroller/DC_install/lib/ezmorph-1.0.4.jar
new file mode 100644
index 0000000..7625af6
--- /dev/null
+++ b/datacontroller/DC_install/lib/ezmorph-1.0.4.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/fileComment.jar b/datacontroller/DC_install/lib/fileComment.jar
new file mode 100644
index 0000000..8c251d9
--- /dev/null
+++ b/datacontroller/DC_install/lib/fileComment.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/ganymed-ssh2-build210.jar b/datacontroller/DC_install/lib/ganymed-ssh2-build210.jar
new file mode 100644
index 0000000..e3bde26
--- /dev/null
+++ b/datacontroller/DC_install/lib/ganymed-ssh2-build210.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/guava-14.0-rc3.jar b/datacontroller/DC_install/lib/guava-14.0-rc3.jar
new file mode 100644
index 0000000..ddead0c
--- /dev/null
+++ b/datacontroller/DC_install/lib/guava-14.0-rc3.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/jconsole-1.8.0.jar b/datacontroller/DC_install/lib/jconsole-1.8.0.jar
new file mode 100644
index 0000000..2d4e09c
--- /dev/null
+++ b/datacontroller/DC_install/lib/jconsole-1.8.0.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/jpcap.jar b/datacontroller/DC_install/lib/jpcap.jar
new file mode 100644
index 0000000..8abd7bb
--- /dev/null
+++ b/datacontroller/DC_install/lib/jpcap.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/json-lib-2.2.2-jdk15.jar b/datacontroller/DC_install/lib/json-lib-2.2.2-jdk15.jar
new file mode 100644
index 0000000..27e7c7c
--- /dev/null
+++ b/datacontroller/DC_install/lib/json-lib-2.2.2-jdk15.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/junit.jar b/datacontroller/DC_install/lib/junit.jar
new file mode 100644
index 0000000..674d71e
--- /dev/null
+++ b/datacontroller/DC_install/lib/junit.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/log4j-1.2.15.jar b/datacontroller/DC_install/lib/log4j-1.2.15.jar
new file mode 100644
index 0000000..c930a6a
--- /dev/null
+++ b/datacontroller/DC_install/lib/log4j-1.2.15.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/mail.jar b/datacontroller/DC_install/lib/mail.jar
new file mode 100644
index 0000000..e6f7083
--- /dev/null
+++ b/datacontroller/DC_install/lib/mail.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/mysql-connector-java-5.1.0-bin.jar b/datacontroller/DC_install/lib/mysql-connector-java-5.1.0-bin.jar
new file mode 100644
index 0000000..d848c13
--- /dev/null
+++ b/datacontroller/DC_install/lib/mysql-connector-java-5.1.0-bin.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/netty-all-4.1.28.Final-sources.jar b/datacontroller/DC_install/lib/netty-all-4.1.28.Final-sources.jar
new file mode 100644
index 0000000..f1fbc97
--- /dev/null
+++ b/datacontroller/DC_install/lib/netty-all-4.1.28.Final-sources.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/netty-all-4.1.28.Final.jar b/datacontroller/DC_install/lib/netty-all-4.1.28.Final.jar
new file mode 100644
index 0000000..058662e
--- /dev/null
+++ b/datacontroller/DC_install/lib/netty-all-4.1.28.Final.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/ojdbc14.jar b/datacontroller/DC_install/lib/ojdbc14.jar
new file mode 100644
index 0000000..2bcaa01
--- /dev/null
+++ b/datacontroller/DC_install/lib/ojdbc14.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/ostermillerutils_1_07_00.jar b/datacontroller/DC_install/lib/ostermillerutils_1_07_00.jar
new file mode 100644
index 0000000..a993150
--- /dev/null
+++ b/datacontroller/DC_install/lib/ostermillerutils_1_07_00.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/sigar.jar b/datacontroller/DC_install/lib/sigar.jar
new file mode 100644
index 0000000..8fe8400
--- /dev/null
+++ b/datacontroller/DC_install/lib/sigar.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/slf4j-api-1.6.1.jar b/datacontroller/DC_install/lib/slf4j-api-1.6.1.jar
new file mode 100644
index 0000000..42e0ad0
--- /dev/null
+++ b/datacontroller/DC_install/lib/slf4j-api-1.6.1.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/slf4j-log4j12-1.6.1.jar b/datacontroller/DC_install/lib/slf4j-log4j12-1.6.1.jar
new file mode 100644
index 0000000..873d119
--- /dev/null
+++ b/datacontroller/DC_install/lib/slf4j-log4j12-1.6.1.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/snmp4j-2.0.3.jar b/datacontroller/DC_install/lib/snmp4j-2.0.3.jar
new file mode 100644
index 0000000..2e9ecbb
--- /dev/null
+++ b/datacontroller/DC_install/lib/snmp4j-2.0.3.jar
Binary files differ
diff --git a/datacontroller/DC_install/lib/tools-1.8.0.jar b/datacontroller/DC_install/lib/tools-1.8.0.jar
new file mode 100644
index 0000000..b211c4a
--- /dev/null
+++ b/datacontroller/DC_install/lib/tools-1.8.0.jar
Binary files differ
diff --git a/datacontroller/DC_install/shell/cer/client_ks b/datacontroller/DC_install/shell/cer/client_ks
new file mode 100644
index 0000000..79459cc
--- /dev/null
+++ b/datacontroller/DC_install/shell/cer/client_ks
Binary files differ
diff --git a/datacontroller/DC_install/shell/cer/client_ts b/datacontroller/DC_install/shell/cer/client_ts
new file mode 100644
index 0000000..312ecd6
--- /dev/null
+++ b/datacontroller/DC_install/shell/cer/client_ts
Binary files differ
diff --git a/datacontroller/DC_install/shell/cer/server_ks b/datacontroller/DC_install/shell/cer/server_ks
new file mode 100644
index 0000000..4a9cbdf
--- /dev/null
+++ b/datacontroller/DC_install/shell/cer/server_ks
Binary files differ
diff --git a/datacontroller/DC_install/shell/cer/server_ts b/datacontroller/DC_install/shell/cer/server_ts
new file mode 100644
index 0000000..fa56598
--- /dev/null
+++ b/datacontroller/DC_install/shell/cer/server_ts
Binary files differ
diff --git a/datacontroller/DC_install/shell/datacontroller.sh b/datacontroller/DC_install/shell/datacontroller.sh
new file mode 100644
index 0000000..dfb7d8a
--- /dev/null
+++ b/datacontroller/DC_install/shell/datacontroller.sh
@@ -0,0 +1,197 @@
+#!/bin/sh
+
+# -----------------------------------------------------------------------------
+# Start/Stop Script for the DATACONTROLLER Server
+#
+# Environment Variable Prequisites
+#
+# DATACONTROLLER_HOME May point at your DATACONTROLLER "build" directory.
+# -----------------------------------------------------------------------------
+
+# resolve links - $0 may be a softlink
+PRG="$0"
+
+while [ -h "$PRG" ] ; do
+ ls=`ls -ld "$PRG"`
+ link=`expr "$ls" : '.*-> \(.*\)$'`
+ if expr "$link" : '/.*' > /dev/null; then
+ PRG="$link"
+ else
+ PRG=`dirname "$PRG"`/"$link"
+ fi
+done
+
+PRGDIR=`dirname "$PRG"`
+
+# Only set DATACONTROLLER_HOME if not already set
+[ -z "$DATACONTROLLER_HOME" ] && DATACONTROLLER_HOME=`cd "$PRGDIR/.." ; pwd`
+cd "$DATACONTROLLER_HOME"/shell
+
+if [ -z "$DATACONTROLLER_TMPDIR" ] ; then
+ DATACONTROLLER_TMPDIR="$DATACONTROLLER_HOME"/temp
+fi
+if [ ! -d $DATACONTROLLER_TMPDIR ]
+ then
+ mkdir $DATACONTROLLER_TMPDIR
+fi
+
+# -------- check jdk
+# check nmsjdk
+NMS_HOME=`cd "$DATACONTROLLER_HOME/.." ; pwd`
+cd "$DATACONTROLLER_HOME"/shell
+NMS_JDK="$NMS_HOME"/nmsjdk
+if [ ! -e "$NMS_JDK" ]
+ then
+ echo "$NMS_JDK not exist"
+ exit 0
+fi
+# check java -version
+javaversion=`$NMS_JDK/bin/java -version 2>&1|grep "java version"`
+if [ ! -n "$javaversion" ]
+ then
+ echo "$NMS_JDK cannot use, please install"
+ exit 0
+fi
+
+# -------- set jdk path
+export JAVA_HOME=$NMS_JDK
+export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
+export PATH=$JAVA_HOME/bin:$PATH
+
+temp=$CLASSPATH
+#setting libs path
+libs="$DATACONTROLLER_HOME"/lib/*
+append(){
+ temp=$temp":"$1
+}
+for file in $libs; do
+ append $file
+done
+jars="$DATACONTROLLER_HOME"/bin/*
+for file in $jars; do
+ append $file
+done
+export DC_CLASSPATH=$temp:.:$DATACONTROLLER_HOME/conf
+export LD_LIBRARY_PATH=$DATACONTROLLERT_HOME/lib
+export LANG=zh_CN.UTF-8
+
+echo "Using DATACONTROLLER_HOME: $DATACONTROLLER_HOME"
+echo "Using DATACONTROLLER_TMPDIR: $DATACONTROLLER_TMPDIR"
+echo "Using JAVA_HOME: $JAVA_HOME"
+echo "Using CLASSPATH: $DC_CLASSPATH"
+
+# ---- get jvm param
+jvmconf_file=$DATACONTROLLER_HOME"/conf/jvm.conf"
+if [ -f $jvmconf_file ]
+ then
+ XmsOpt=`sed -n '/-Xms/p' $jvmconf_file`
+ XmxOpt=`sed -n '/-Xmx/p' $jvmconf_file`
+ JAVA_OPTS="$XmsOpt $XmxOpt -XX:+UseParNewGC"
+else
+ JAVA_OPTS="-Xms64m -Xmx256m -XX:+UseParNewGC"
+fi
+
+program="com.nms.server.DataController"
+name="DataController"
+
+proc_id=
+
+writePid()
+{
+ ps aux|grep java|grep $program|grep -v grep|awk '{print $2}' > $DATACONTROLLER_TMPDIR/serverPid.temp
+}
+getPid()
+{
+ unset proc_id
+ proc_id=`ps aux|grep java|grep $program|grep -v grep|awk '{print $2}'`
+}
+
+if [ "$1" = "start" ] ; then
+ getPid
+ if [ -n "$proc_id" ]
+ then
+ echo "$name already running......"
+ else
+ nohup java $JAVA_OPTS -classpath $DC_CLASSPATH $program >/dev/null &
+ sleep 3
+ getPid
+ if [ -n "$proc_id" ]
+ then
+ echo "$name start success!!!!!"
+ writePid
+ else
+ echo "$name start error!!!!!"
+ fi
+ fi
+elif [ "$1" = "stop" ]; then
+ getPid
+ if [ -n "$proc_id" ]
+ then
+ echo "$name is start, now kill......"
+ kill -15 $proc_id
+ sleep 3
+ writePid
+ echo "$name kill ok !!!!!!!!!!!!!"
+ else
+ echo "$name is not start!!!!!!!!!!!"
+ fi
+elif [ "$1" = "restart" ] ; then
+ getPid
+ if [ -n "$proc_id" ]
+ then
+ echo "`date +%Y-%m-%d" "%H:%M:%S` :$name is start, now restart......" >> $DATACONTROLLER_TMPDIR/job.log
+ count=1
+ while [ $count -le 3 ]
+ do
+ sleep 1
+ kill -15 $proc_id
+ sleep 1
+ getPid
+ if [ -n "$proc_id" ]
+ then
+ echo "`date +%Y-%m-%d" "%H:%M:%S` :$name stop error!!!!!!!!!!" >> $DATACONTROLLER_TMPDIR/job.log
+ else
+ echo "`date +%Y-%m-%d" "%H:%M:%S` :$name stop success!!!!!!!!!!" >> $DATACONTROLLER_TMPDIR/job.log
+ break
+ fi
+ count=$count+1
+ done
+
+ getPid
+ if [ -n "$proc_id" ]
+ then
+ sleep 1
+ kill -9 $proc_id
+ getPid
+ if [ -n "$proc_id" ]
+ then
+ echo "`date +%Y-%m-%d" "%H:%M:%S` :$name stop -9 error!!!!!!!!!!" >> $DATACONTROLLER_TMPDIR/job.log
+ exit 1
+ fi
+ fi
+
+ else
+ echo "`date +%Y-%m-%d" "%H:%M:%S` :$name is not start, now start......" >> $DATACONTROLLER_TMPDIR/job.log
+ fi
+
+ #--------copy right, start proc
+ nohup java $JAVA_OPTS -classpath $DC_CLASSPATH $program >/dev/null &
+ sleep 3
+ getPid
+ if [ -n "$proc_id" ]
+ then
+ writePid
+ echo "`date +%Y-%m-%d" "%H:%M:%S` :$name restart success!!!!!!!!!!" >> $DATACONTROLLER_TMPDIR/job.log
+ else
+ echo "`date +%Y-%m-%d" "%H:%M:%S` :$name restart error!!!!!!!!!!" >> $DATACONTROLLER_TMPDIR/job.log
+ fi
+
+else
+ echo "Usage: datacontroller.sh ( commands ... )"
+ echo "commands:"
+ echo " start Start $name"
+ echo " stop Stop $name"
+ echo " restart ReStart $name in a separate window"
+fi
+
+cd -
diff --git a/datacontroller/DC_install/shell/shutdown.sh b/datacontroller/DC_install/shell/shutdown.sh
new file mode 100644
index 0000000..f6dca3a
--- /dev/null
+++ b/datacontroller/DC_install/shell/shutdown.sh
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+# -----------------------------------------------------------------------------
+# Stop Script for the NMS Server
+#
+# -----------------------------------------------------------------------------
+
+# resolve links - $0 may be a softlink
+PRG="$0"
+
+while [ -h "$PRG" ] ; do
+ ls=`ls -ld "$PRG"`
+ link=`expr "$ls" : '.*-> \(.*\)$'`
+ if expr "$link" : '/.*' > /dev/null; then
+ PRG="$link"
+ else
+ PRG=`dirname "$PRG"`/"$link"
+ fi
+done
+
+PRGDIR=`dirname "$PRG"`
+EXECUTABLE=datacontroller.sh
+
+if [ ! -x "$PRGDIR"/"$EXECUTABLE" ]; then
+ echo "Cannot find $PRGDIR/$EXECUTABLE"
+ echo "This file is needed to run this program"
+ exit 1
+fi
+
+exec "$PRGDIR"/"$EXECUTABLE" stop "$@" \ No newline at end of file
diff --git a/datacontroller/DC_install/shell/startup.sh b/datacontroller/DC_install/shell/startup.sh
new file mode 100644
index 0000000..eabf268
--- /dev/null
+++ b/datacontroller/DC_install/shell/startup.sh
@@ -0,0 +1,34 @@
+#!/bin/sh
+
+# -----------------------------------------------------------------------------
+# Start/Stop Script for the NMSSERVER Server
+#
+# Environment Variable Prequisites
+#
+# NMSSERVER_HOME May point at your NMSSERVER "build" directory.
+# -----------------------------------------------------------------------------
+
+# resolve links - $0 may be a softlink
+PRG="$0"
+
+while [ -h "$PRG" ] ; do
+ ls=`ls -ld "$PRG"`
+ link=`expr "$ls" : '.*-> \(.*\)$'`
+ if expr "$link" : '/.*' > /dev/null; then
+ PRG="$link"
+ else
+ PRG=`dirname "$PRG"`/"$link"
+ fi
+done
+
+PRGDIR=`dirname "$PRG"`
+
+EXECUTABLE=datacontroller.sh
+
+if [ ! -x "$PRGDIR"/"$EXECUTABLE" ]; then
+ echo "Cannot find $PRGDIR/$EXECUTABLE"
+ echo "This file is needed to run this program"
+ exit 1
+fi
+
+exec "$PRGDIR"/"$EXECUTABLE" start "$@"