1. 程式人生 > >Ubuntu14.04 Server安裝iServer

Ubuntu14.04 Server安裝iServer

最近接到一個任務,需要在ubuntu14.04 Server 環境下安裝SuperMap的iServer,在部署過程中遇到了比較多的問題,現在把相關問題記錄下來。

環境:

伺服器1:SuperMap iDesktop+IntantClient

伺服器2:Ubuntu14.04 LTS Server+iServer+InstantClient 

伺服器3:RedHat 6.5+Oracle11.2.0.4

宣告:在安裝之前需要保證作業系統、GIS軟體、資料庫客戶端、資料庫伺服器端的位數保持一致,本環境都為64Bit

系統需求

檢視超圖的官方網站,iServer是可以安裝在Ubuntu作業系統上的,但是需要安裝額外的包。

Ubuntu

在 Ubuntu 14 Server作業系統安裝使用iServer時,需要依賴某些庫才能正常使用iServer,如 libx11-dev、xinit、gcc等,以及中文語言包。您可以載入系統安裝盤補充安裝相關庫,或在Ubuntu官網獲取相關庫來手動安裝。 如果載入了系統安裝盤,或在外網環境下,您可以通過 apt-get install 命令安裝相關的庫。

  • 安裝 libx11-dev、xinit、gcc等,依次執行以下命令:

sudo apt-get install libx11-dev

sudo apt-get install xinit

sudo apt-get install gcc

sudo apt-get install libgomp1

sudo apt-get install libxtst6

sudo apt-get install libxi6

  • 安裝許可驅動依賴的 32bit 支援庫 libc6-i386 和 ia32-libs,依次執行以下命令:

sudo apt-get install libc6-i386

sudo apt-get install ia32-libs

  • 安裝中文語言包

簡體中文版 iServer 需要依賴中文環境。如果您在安裝Ubuntu系統的時候,沒有安裝中文語言包,可以執行如下命令為系統安裝中文語言包:

sudo apt-get install language-pack-zh-hans


安裝部署

由於需要考慮到整個環境的儲存大小的限制,本次安裝為iServer的部署版本,該tar包將近200多MB,直接進行解壓即可

[email protected]:~$ tar -zxvf supermap_iserver_7.1.0a_linux64_deploy.tar.gz 

解壓成功後,系統會看到一個新建的SuperMapiServer7C目錄。

a:解壓完畢之後,我們需要安裝許可驅動,前面已經介紹了,這個許可驅動需要額外的作業系統32Bit包

[email protected]:~/SuperMapiServer7C/support/SuperMap_License/Support$ pwd
/home/supermap/SuperMapiServer7C/support/SuperMap_License/Support
[email protected]:~/SuperMapiServer7C/support/SuperMap_License/Support$ tar -xvf aksusbd_2.4.1-i386.tar 

解壓之後,進入aksusbd-2.4.1-i386資料夾,使用root許可權執行dinst檔案,安裝相關的驅動程式。

[email protected]:~/SuperMapiServer7C/support/SuperMap_License/Support/aksusbd-2.4.1-i386$ ls
aksusbd     dunst       hasp_update                  winehasp
aksusbd.rc  hasplmd     haspvlib_99235.so
dinst       hasp.rules  SuperMap Trial License .v2c
[email protected]:~/SuperMapiServer7C/support/SuperMap_License/Support/aksusbd-2.4.1-i386$ sudo ./dinst
dpkg-query: no packages found matching aksusbd
Copy AKSUSB daemon to /usr/sbin ...
Copy WINEHASP daemon to /usr/sbin ...
Copy HASPLMD daemon to /usr/sbin ...
Copy start-up script to /etc/init.d ...
Link HASP SRM runtime environment startup script to system startup folder
Starting HASP SRM runtime environment...
Starting AKSUSB daemon: .
Starting WINEHASP daemon: .
Starting HASPLM daemon: .
Coping VLIB...
Installing v2c...
hasp_update failed with status 65
Done
[email protected]:~/SuperMapiServer7C/support/SuperMap_License/Support/aksusbd-2.4.1-i386$

b:安裝Oracle Instant Client,配置環境變數

直接在Oracle官網下載64Bit的IntantClient,本次測試環境為Oracle10.2.0.5版本,包含sqlplus包,SSH上傳到指定目錄,配置環境變數即可。

需要注意的是,需要在setenv.sh檔案裡面新增Oracle的環境變數

[email protected]:~/SuperMapiServer7C/bin$ ls
bootstrap.jar                 service.bat
catalina.bat                  setclasspath.bat
catalina.sh                   setclasspath.sh
catalina-tasks.xml            setenv.bat
commons-daemon.jar            setenv.sh
commons-daemon-native.tar.gz  shutdown.bat
configtest.bat                shutdown.sh
configtest.sh                 startup.bat
daemon.sh                     startup.sh
digest.bat                    tomcat-juli.jar
digest.sh                     tomcat-native.tar.gz
iserver.bat                   tool-wrapper.bat
iserver-info.jar              tool-wrapper.sh
iserver.sh                    version.bat
passwordreset.bat             version.sh
passwordreset.sh
[email protected]:~/SuperMapiServer7C/bin$ sudo vi setenv.sh

新增內容如下

export ORACLE_HOME=/home/supermap/instantclient_10_2
export PATH=$ORACLE_HOME:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME
export TNS_ADMIN=$ORACLE_HOME/NETWORK/ADMIN

新增完畢之後,重新啟動iserver服務即可。

[email protected]:~$ cd SuperMapiServer7C/bin/
[email protected]:~/SuperMapiServer7C/bin$ sudo ./startup.shUsing ISERVER_HOME:    /home/supermap/SuperMapiServer7C/webapps/iserver
Using ISERVER_CONFIG:  /home/supermap/SuperMapiServer7C/webapps/iserver/WEB-INF
Using UGO_HOME:        /home/supermap/SuperMapiServer7C/support/objectsjava/bin
Using CATALINA_BASE:   /home/supermap/SuperMapiServer7C
Using CATALINA_HOME:   /home/supermap/SuperMapiServer7C
Using CATALINA_TMPDIR: /home/supermap/SuperMapiServer7C/temp
Using JRE_HOME:        /home/supermap/SuperMapiServer7C/support/jre
Using CLASSPATH:       /home/supermap/SuperMapiServer7C/bin/bootstrap.jar:/home/supermap/SuperMapiServer7C/bin/tomcat-juli.jar
Tomcat started.

釋出服務測試

通過iDesktop,載入Oracle裡面的資料,儲存相關的工作空間到Oracle資料庫中,然後在iServer的manager裡面快速釋出,提示錯誤。
檢視iServer的後臺日誌的catalina.out檔案
[email protected]:~/SuperMapiServer7C/logs$ ls
accessrecords.db             iserver.log
catalina.2015-04-04.log      iserverOperation.log
catalina.2015-04-07.log      localhost.2015-04-04.log
catalina.2015-04-11.log      localhost.2015-04-07.log
catalina.2015-04-13.log      localhost.2015-04-11.log
catalina.2015-04-14.log      localhost.2015-04-13.log
catalina.out                 localhost.2015-04-14.log
host-manager.2015-04-04.log  manager.2015-04-04.log
host-manager.2015-04-07.log  manager.2015-04-07.log
host-manager.2015-04-11.log  manager.2015-04-11.log
host-manager.2015-04-13.log  manager.2015-04-13.log
host-manager.2015-04-14.log  manager.2015-04-14.log
[email protected]:~/SuperMapiServer7C/logs$ pwd
/home/supermap/SuperMapiServer7C/logs

裡面報如下內容,libmawt.so的問題
java.lang.UnsatisfiedLinkError: /home/supermap/SuperMapiServer7C/support/objectsjava/bin/libWrapj.so: /home/supermap/SuperMapiServer7C/support/objectsjava/bin/libjawt.so: symbol awt_FreeDrawingSurface, version SUNWprivate_1.1 not defined in file libmawt.so with link time reference
	at java.lang.ClassLoader$NativeLibrary.load(Native Method)
	at java.lang.ClassLoader.loadLibrary1(ClassLoader.java:1965)
	at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1890)
	at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1880)
	at java.lang.Runtime.loadLibrary0(Runtime.java:849)
	at java.lang.System.loadLibrary(System.java:1088)
	at com.supermap.data.Environment.LoadWrapJ(Unknown Source)
	at com.supermap.data.Environment.<clinit>(Unknown Source)
	at com.supermap.data.InternalHandle.<clinit>(Unknown Source)
	at com.supermap.services.providers.WorkspaceContainer$DefaultWorkspaceConnectionInfoFactory.a(WorkspaceContainer.java:1171)
	at com.supermap.services.providers.WorkspaceContainer$InnerContainer.createUGOConnInfo(WorkspaceContainer.java:864)
	at com.supermap.services.providers.WorkspaceContainer$InnerContainer.get(WorkspaceContainer.java:761)
	at com.supermap.services.providers.WorkspaceContainer$InnerContainer.get(WorkspaceContainer.java:445)
	at com.supermap.services.providers.WorkspaceContainer.get(WorkspaceContainer.java:157)
	at com.supermap.services.rest.resources.impl.ManagementRestUtil.checkWorkspaceValid(ManagementRestUtil.java:1018)
	at com.supermap.services.rest.resources.impl.ValidationResource.checkRequestEntityObjectValid(ValidationResource.java:172)
	at com.supermap.services.rest.DefaultMethodHandler.b(DefaultMethodHandler.java:1416)
	at com.supermap.services.rest.DefaultMethodHandler.a(DefaultMethodHandler.java:1238)
	at com.supermap.services.rest.DefaultMethodHandler.handlePost(DefaultMethodHandler.java:293)
	at com.supermap.services.rest.resources.ResourceBase.handlePost(ResourceBase.java:978)
	at com.supermap.services.rest.resources.ResourceBase.handle(ResourceBase.java:1379)
	at org.restlet.resource.Finder.handle(Finder.java:246)
	at org.restlet.routing.Filter.doHandle(Filter.java:159)
	at org.restlet.routing.Filter.handle(Filter.java:206)
	at org.restlet.routing.Router.doHandle(Router.java:431)
	at org.restlet.routing.Router.handle(Router.java:648)
	at org.restlet.routing.Filter.doHandle(Filter.java:159)
	at org.restlet.routing.Filter.handle(Filter.java:206)
	at org.restlet.routing.Filter.doHandle(Filter.java:159)
	at org.restlet.routing.Filter.handle(Filter.java:206)
	at org.restlet.routing.Filter.doHandle(Filter.java:159)
	at org.restlet.routing.Filter.handle(Filter.java:206)
	at org.restlet.routing.Filter.doHandle(Filter.java:159)
	at org.restlet.engine.application.StatusFilter.doHandle(StatusFilter.java:155)
	at org.restlet.routing.Filter.handle(Filter.java:206)
	at org.restlet.routing.Filter.doHandle(Filter.java:159)
	at org.restlet.routing.Filter.handle(Filter.java:206)
	at org.restlet.engine.CompositeHelper.handle(CompositeHelper.java:211)
	at org.restlet.engine.application.ApplicationHelper.handle(ApplicationHelper.java:84)
	at org.restlet.Application.handle(Application.java:381)
	at org.restlet.ext.servlet.ServletAdapter.service(ServletAdapter.java:206)
	at com.supermap.services.rest.servlets.ManagementServlet.service(ManagementServlet.java:198)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
	at com.supermap.server.host.webapp.handlers.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:63)
	at com.supermap.server.host.webapp.handlers.ManagerServiceHandler.handle(ManagerServiceHandler.java:176)
	at com.supermap.server.host.webapp.handlers.AbstractHandler.process(AbstractHandler.java:190)
	at com.supermap.server.host.webapp.handlers.AbstractHandler.a(AbstractHandler.java:216)
	at com.supermap.server.host.webapp.handlers.AbstractHandler.invokeLowerPriorityHandlers(AbstractHandler.java:205)
	at com.supermap.server.host.webapp.handlers.AbstractHandler.process(AbstractHandler.java:192)
	at com.supermap.server.host.webapp.handlers.BasicHandler.process(BasicHandler.java:423)
	at com.supermap.server.host.webapp.ApplicationFilter.doFilter(ApplicationFilter.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:501)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Thread.java:745)

解決方案 檢視SuperMap的iserver的Q&A,有相關的解決方案如下:
  1. 為什麼在 Linux 系統上啟動 iServer 服務時,報以下類似錯誤:“Exception in thread "main" java.lang.UnsatisfiedLinkError: 【libWrapj600.so】: home\SuperMapiServer\support\jre\lib\amd64\headless\libmawt.so: symbol awt_FreeDrawingSurface, version SUNWprivate_1.1 not defined in file libmawt.so with link time reference ”?

    答:如果使用 32 位的 iServer,請用$SuperMap iObjects Java_HOME\bin 目錄下的 libmawt.so 檔案替換 $JRE_HOME\lib\i386\headless 目錄中的 libmawt.so 檔案;

    如果使用 64 位的 iServer,請用 $SuperMap iObjects Java_HOME\bin 目錄下的 libmawt.so 檔案替換 $JRE_HOME\lib\amd64\headless 目錄中的  libmawt.so 檔案。


安裝上述方式執行,問題解決,服務順利釋出!

相關推薦

Ubuntu14.04 Server安裝iServer

最近接到一個任務,需要在ubuntu14.04 Server 環境下安裝SuperMap的iServer,在部署過程中遇到了比較多的問題,現在把相關問題記錄下來。 環境: 伺服器1:SuperMap iDesktop+IntantClient 伺服器2:Ubuntu14.

Ubuntu14.04 server 安裝桌面

網上有幾個教程,最簡單的是一條命令。 apt-get install ubuntu-desktop 如果你只想安裝必要的桌面管理軟體而不想安裝一些諸如 Evolution 和 OpenOffice 的不需要的應用軟體,可使用下面的命令: apt-get install --

ubuntu14.04編譯安裝mysql5.6.28

add memory server 目錄 是否 efault mysql-bin cnblogs adl 一、安裝必備工具sudo apt-get install make bison g++ build-essential libncurses5-dev cmake nc

ubuntu14.04安裝matlabR2015b遇到的一些問題及其解決方法

cal abr 問題 它的 文件夾 打開 pen atl usr 問題1:錯誤提示關於未取得權限,不能再/crack/bin文件中復制文件到安裝matlab的/usr/bin文件中? 采取解決方法: 再終端裏輸入 sudo nautilus,在彈出文件夾裏即可進行相應操作。

Ubuntu14.04安裝Composer

14.04 blog har oca version ins curl pos tps 下載Composer: curl -sS https://getcomposer.org/installer | php 安裝Composer: /usr/bin/php comp

ubuntu14.04無法安裝Curl

tor osi -a pda 更新軟件源 com post ettercap add ubuntu14.04無法安裝Curl apt-get install curl 提示沒有這個軟件 源 更換軟件源到163也不行,更新軟件源也不行。 解決:參考http://www.l

Ubuntu14.04安裝 ffmpeg-2.4.13(處理視頻用,將視頻保存為圖片序列)

ibm blog 提取 ext aac sta video images bmp 首先在 http://www.ffmpeg.org/olddownload.html 下載 ffmpeg-2.4.13.tar.bz2 ; 然後安裝 yasm 和 libx264: apt

Ubuntu14.04安裝 boost (boost_1.54 最簡單的方法)

urn 分享 ubun 命令 寫入 return test 簡單的 logs 直接執行命令: sudo apt-get install libboost-dev 測試: 創建一個 boost_test.cpp 文件,寫入 #include <boost/lexi

ubuntu14.04 mysql 安裝到主從復制

xid comment 機器 pos out txt mysql 安裝 mirror 主機狀態 安裝環境:Ubuntu Server 14.10MySQL-5.6.23.tar.gz2. 安裝必備的工具sudo apt-get install make bison g++

ubuntu14.04安裝win10記錄

.html 選擇 create AI 感謝 顯示 當前 size ntfs 1首先修改啟動引導順序,從U盤啟動, 2自動安裝,產生一個問題,gpt分區無法安裝,解決方法,感謝https://jingyan.baidu.com/article/08b6a591c82df414

Caffe初學者第一部:Ubuntu14.04安裝caffe(CPU)+Python的詳細過程 (親測成功, 20180524更新)

cython ase n-n 4.5 ipython 下載速度 nds evel CI 前言: 最近在學習深度學習,最先要解決的當然是開源框架的環境安裝了。之前一直在學習谷歌的Tensorflow開源框架,最近實驗中需要跟別人的算法比較,下載的別人的代碼很多都是Caffe的

Ubuntu14.04安裝Py3和切換Py2和Py3環境

python2.7 .com nal vmware actual 最好 ofo data 簡單的 前幾天小編給大家分享了如何安裝Ubuntu14.04系統,感興趣的小夥伴可以戳這篇文章:手把手教你在VMware虛擬機中安裝Ubuntu14.04系統。今天小編給大家分享一下在

MiniGui開發:Ubuntu14.04環境安裝qvfb工具

在Ubuntu14.04上搭建MiniGui開發環境,需要依賴qvfb工具。 minigui官網提供了qvfb的安裝包,下載連線:MiniGui官網 安裝過程比較痛苦, 需要依賴qt3的庫和標頭檔案,但是當前的qt版本已經比較高了,apt的源沒有預設安裝的libqt3-hea

Ubuntu14.04安裝Anaconda2-4.0.0的方法

1 介紹 我虛擬機器Ubuntu14.04上的Python已經存在了兩個版本,一個是python 2.7,一個是Python 3.4。想在它上面安裝Anaconda,但又有所顧慮。我先想到的是,先解除安裝Ubuntu自帶的Python,這是大多數人的想法。後來在網上搜了搜解決方案,不

Ubuntu14.04安裝gnuplot

https://blog.csdn.net/Q1302182594/article/details/42011053 1、apt-get ubuntu $ sudo apt-get install gnuplot 2、Terminal type set to 'unknown' &n

Ubuntu14.04安裝redis

sudo apt-get update sudo apt-get install redis-server 啟動redis服務 sudo /etc/init.d/redis-server restart sudo service redis-server restart 2.連線redis

ubuntu14.04安裝opencv2.4.9

https://blog.csdn.net/chcyj/article/details/78424372 http://jaist.dl.sourceforge.net/project/opencvlibrary/opencv-unix/2.4.9/opencv-2.4.9.zip

ubuntu14.04 解除安裝安裝 Matlab2016b,逐步圖示

一、解除安裝: 由於第一次安裝失敗,故解除安裝重灌,步驟如下: 1.刪除掛載 $ sudo umount /media/matlab #掛載幾次,刪除幾次 2.刪除 MATLAB(你安裝的位置) $ sudo rm -r /media/matlab #由於我沒掛載了,這是之前掛

Ubuntu14.04 Opencv安裝及常見Error

OpenCV Error: Unspecified error (The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support. If you are on Ubun

ubuntu14.04解除安裝(windows10 和 ubuntu14.04 雙系統)

ubuntu14.04解除安裝(windows10 和 ubuntu14.04 雙系統) 前言:原本使用師兄幫裝的windows和ubuntu雙系統,然而手賤點了ubuntu14.04的軟體更新後,發現再也打不開ubuntu,開啟時處於黑屏狀態,用了livecd引導,無果,嘗試了網上