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,有相關的解決方案如下:
-
為什麼在 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引導,無果,嘗試了網上