在使用Cadece virtuoso运行adexl的时候,经常会出现任务pending的情况
此类现象经常出现在6.18.070及以前的版本中(未测试其他更高版本)
导致这个问题的基本原因就是virtuoso中集成的realvnc Xvnc版本为3.3.7的32位版本
在virtuoso的安装目录 tools.lnx86/bin 下有cdsXvnc文件
通过命令
file cdsXvnc
cdsXvnc: ELF 32-bit LSB executable
可以看出,这是一个32位的文件,而目前的RHEL系列6/7操作系统(含centos)均是64位操作系统,在用户家目录.vnc-vnc目录下可以看到vnc的相关log
28/01/16 17:44:12 Xvnc version 3.3.7 - built May 31 2004 15:31:52
28/01/16 17:44:12 Copyright (C) 2002-2003 RealVNC Ltd.
28/01/16 17:44:12 Copyright (C) 1994-2000 AT&T Laboratories Cambridge.
28/01/16 17:44:12 All Rights Reserved.
28/01/16 17:44:12 See http://www.realvnc.com for information on VNC
28/01/16 17:44:12 Desktop name 'Tester-Laptop:81 (tester)' (Tester-Laptop:81)
28/01/16 17:44:12 Protocol version supported 3.3
28/01/16 17:44:12 Listening for VNC connections on TCP port 5981
Font directory '/usr/share/X11/fonts/' not found - ignoring
但是实际上这个目录又是存在的
/usr/share/X11/fonts/
那么如何解决这个问题呢?
将virtuoso升级到6.18.180(经过测试)以上的版本。此版本及以上弃用了Xvnc而使用了Xvfb来实现功能。
同时为了支持Xvfb功能,需要安装Xvfb相关包才可以支持。
RHEL6/Centos6
xorg-x11-server-common-1.17.4-17.el6.centos.x86_64.rpm
xorg-x11-server-Xvfb-1.17.4-17.el6.centos.x86_64.rpm
RHEL7/Centos7
xorg-x11-server-common-1.20.4-10.el7.x86_64.rpm
xorg-x11-server-Xvfb-1.20.4-10.el7.x86_64.rpm
安装这两个包之后,重新启动virtuoso adexl
问题得到完美解决!
对于早期使用Xvnc的版本,有另外一种不知道是不是能够完美解决的方案
找到系统用的tigervnc的Xvnc文件,替换掉安装目录 tools.lnx86/bin/cdsXvnc 此方案作者未测试,但是有网友反应可以解决!请谨慎使用。此文件也可以在下方下载!
2023年8月9日补充新内容:
在进行adexl仿真的时候,xxx/xxx/.cmddir0目录下会在点击run的时候生成一个runICRPxx的文件
这是一个bash脚本,第一行就直接调用cdsVncserver 来启动xvn
#!/bin/sh cdsVncserver :95
直接运行cdsVncserver :95
cdsVncserver :95 A VNC server is already running as :95 or another process is using one of ports 5995 or 6095
文章地址:https://www.fasteda.cn/post/303.html 转载请注明
可以发现2个问题:
1、端口被占用
2、验证了一个说法,一个Xvnc要占用2个端口。
使用ps -ef|grep 5995 不要用netstat ,就可以看到是谁占用了这个端口。
解决方法:
参照官方的Solution将cdsXvnc的端口范围设置成从400起
If a the + character is used like below the display used will start at 400:
setenv CDS_XVNC_TENBASE +
补充问题仅存在于6.18.180以前的版本,这些版本使用了Xvnc作为显示组件
文件下载:
网友留言: