• Linux下远程启动SuperMap iServer Java 2008的问题


    如题,问题很简单,就是用图形化界面xmanager或者vnc的远程桌面控制启动SuperMap iServer Java 2008服务后,关闭图形化界面,服务也会停止;而如果采用PUTTY等客户端工具启动服务,则是出现报错,类似ugcXEngine.so的错误,服务无法启动。

    针对这样的问题如何解决?

    先看看采用console类型的客户端下如何远程启动。启动前必须确保启动iServer的基本环境变量都已经配置完好,没有缺少各种依赖项。然后在当前用户下输入:

    nohup X :n&(n为任意正整数,在第n个屏幕上启动XServer,&表示为后台程序,nohup表示当前终端退出,不挂起进程)

    export DISPLAY=:n.0(n为连接端口,也为任意正整数)

    然后启动服务,关闭客户端即可。

    而如果采用xmanager或者vnc的话,则需要修改start.sh如下:

    nohup ..\thirdparty\jdk\bin\java -cp Server.jar com.supermap.server.Manager -start -checkProcess &

    再在当前用户下输入命令:

    nohup X :n&

    export DISPLAY=:n.0

    然后启动服务,关闭客户端即可。

    那么究竟X是什么,为什么会这样来设置呢?

    X是用在大多数UNIX系统中的图形支持系统。如果你在你的Linux机器上使用GNOME或者KDE的话,你就正在使用X系统。它由X联盟(http://www.x.org/)定义并维护。大多数的Linux用户使用的都是由XFree86 项目 (http://www.xfree86.org/)提供的X Window系统的实现。xdm 是一个显示管理器,提供了灵活的任务管理功能。然而xdm通常被认为是“GUI的登陆屏幕,可以自动启动我的X任务”。

    在Linux/Unix类操作系统上,DISPLAY用来设置将图形显示到何处。直接登陆图形界面或者登陆命令行界面后使用startx启动图形, DISPLAY环境变量将自动设置为:0:0, 此时可以打开终端, 输出图形程序的名称(比如xclock)来启动程序, 图形将显示在本地窗口上。DISPLAY环境变量格式如下host:NumA.NumB, host指Xserver所在的主机主机名或者ip地址,图形将显示在这一机器上,可以是启动了图形界面的Linux/Unix机器,也可以是安装了Exceed, X-Deep/32等Windows平台运行的Xserver的Windows机器。 如果Host为空, 则表示Xserver运行于本机,并且图形程序(Xclient)使用unix socket方式连接到Xserver,而不是TCP方式。 使用TCP方式连接时, NumA为连接的端口减去6000的值, 如果NumA为0,则表示连接到6000端口;使用unix socket方式连接时则表示连接的unix socket的路径, 如果为0, 则表示连接到/tmp/.X11-unix/X0 . NumB则几乎总是0。

    It's all.

    Author:dulvyizhihua
  • 相关阅读:
    天平天国和诗,和远方,和苟且
    ui设计师做好这几点,产品经理准闭嘴
    谈谈个人视觉创意的学习经验
    保持觉知
    第37周本人进步点
    扒一扒万恶的导航网站
    16年第四本《简单的逻辑学》
    hey,开通个人公众号啦!
    今朝有酒今朝醉,也是一种理性-附个人心得
    元素的定位
  • 原文地址:https://www.cnblogs.com/dulvyizhihua/p/1754826.html
Copyright © 2020-2023  润新知