开发者社区 问答 正文

阿里云上安装oracle遇到Check if the DISPLAY variable is set怎么解决?

系统使用的是centos 6.8,用了Oracle官方的rmp提前把依赖包都安装好了。


但是到了runInstaller这一步就是调用不出图形界面,出现错误:


Checking monitor: must be configured to display at least 256 colors >>>
Could not execute auto check for display colors using command /usr/openwin/bin/xdpyinfo.
Check if the DISPLAY variable is set. Failed <<<<


我本地使用的是xshell连到ECS上,xshell上也做了xmanager的转发,ECS上也安装了xorg-x11-server-utils-7.7-14.el6.x86_64这个包。


我本地用virtualbox也安装了centos68这个系统,通过上面这种方法是可以调出图形界面的,而且能够正常安装。


登录root,执行xhost +,此时系统调出了xmanager passive窗口。
两行执行export DISPLAY=192.168.1.172:10.0
上面IP的话是我的本机的本地IP
su - oracle切换到oralce用户,再切换到程序解压的目录
执行runInstaller,就出现上面那个错误了,调用不出图形界面。


我试过直接用oracle进行登录,然后再执行也不行。


请问有大神知道是什么原因吗?






展开
收起
XYZ 2017-06-12 17:51:22 3469 分享 版权
阿里云 AI 助理回答

根据您描述的问题,您在尝试通过X11转发从ECS实例上启动Oracle安装的图形界面时遇到困难,尽管已经配置了X11转发、安装了必要的X11服务器工具,并且在本地虚拟机中该方法能够成功。以下是一些可能的原因和解决步骤:

可能原因分析

  1. DISPLAY环境变量设置问题:虽然您已设置了DISPLAY环境变量,但错误提示指出无法执行xdpyinfo命令来检查显示颜色配置,这可能意味着X11转发并未正确建立或存在权限问题。
  2. 防火墙或SELinux限制:ECS实例上的防火墙规则或SELinux策略可能阻止了X11相关的网络连接。
  3. 缺少图形库或配置:ECS实例上可能缺少运行Oracle图形安装程序所需的特定图形库或配置。

解决步骤

1. 确认X11转发正确配置

  • 确保Xshell中的X11转发已启用。
  • 在ECS实例上,使用xhost +允许从任何主机进行X11连接(仅测试目的,生产环境中应更谨慎地设置)。

2. 检查DISPLAY变量与X11转发

  • 确认DISPLAY变量设置正确指向您的本地机器。您已设置为192.168.1.172:10.0,请确保此地址是可访问的,并且Xmanager正在监听这个端口。
  • 使用echo $DISPLAY确认环境变量是否被正确继承到oracle用户下。

3. 防火墙与SELinux调整

  • 检查并临时关闭ECS实例上的防火墙,以排除网络阻塞问题。可以使用如下的命令(CentOS 6):
    sudo service iptables stop
    
  • 暂时将SELinux设置为宽容模式以排除其影响:
    sudo setenforce 0
    

4. 安装额外的图形库

  • 尝试安装更多可能需要的图形库,例如:
    sudo yum install libXp* libXrender*
    

5. 检查Oracle安装脚本的执行用户与环境

  • 确保oracle用户有权限访问X11服务,并且所有环境变量(包括DISPLAY)在切换用户后依然有效。

6. 测试X11转发功能

  • 在ECS实例上尝试一个简单的X11应用测试,比如xclockxeyes,以验证X11转发是否工作正常:
    xclock & # 或者使用 xeyes &
    

注意事项

  • 完成测试后,记得重新开启防火墙并调整SELinux至适当的安全级别。
  • 上述操作涉及系统安全性和稳定性,请在非生产环境下先行测试。

如果以上步骤仍不能解决问题,建议查看Oracle安装文档中关于远程图形安装的具体要求,或者考虑使用VNC等其他远程桌面方案来绕过X11转发的复杂性。您也可以通过ECS一键诊断全面排查并修复ECS问题。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答