xhost + 不适用于 Oracle 安装

xhost + 不适用于 Oracle 安装

我正在尝试安装OracleUbuntu 14.04.我已按照说明进行操作,现在正在尝试开始安装。然而,我面临着问题。

如果我./runInstaller与用户一起运行命令oracle,我将面临

Starting Oracle Universal Installer...

Checking Temp space: must be greater than 120 MB.   Actual 19088 MB    Passed
Checking swap space: must be greater than 150 MB.   Actual 8191 MB    Passed
Checking monitor: must be configured to display at least 256 colors
    >>> Could not execute auto check for display colors using command /usr/bin/xdpyinfo. Check if the DISPLAY variable is set.    Failed <<<<

问题。如果我输入 yes,我将面临NoClassDefFoundError.

如果我切换到root用户并输入

export DISPLAY=:0.0
xhost +

我面临xhost: unable to open display ":0.0"错误。xdpyinfo命令还会返回xdpyinfo: unable to open display ":0.0".错误消息。

我的/etc/hosts文件包含这些行:

127.0.0.1       localhost
10.0.1.23      bnet-test

我尝试过各种建议,但到目前为止没有一个对我有用。我正在Linux Ubuntu通过连接到远程计算机VPN并使用启用的客户Putty端。SSHX11-Forwarding

我的问题可能是什么?

答案1

如果我理解正确的话,您使用的是运行 X 服务器的 Windows PC。您正在尝试使用 putty 连接到 ubuntu 服务器并在该主机上运行需要访问本地 X 服务器的命令。

连接到服务器后echo $DISPLAY应该给出一个有意义的值,类似的东西xdpyinfo应该可以工作。 (这应该是神奇的 putty/ssh 正在做的事情。)

您的命令能够连接到本地显示服务器,因为$DISPLAY指向正确的显示并~/.Xauthority提供正确的凭据来访问该显示。

对于要访问该显示的另一用户,该用户需要这两条信息。

最简单的方法是直接 ssh 到 oracle 用户。

另一种方法是:

chmod a+r ~/.Xauthority
XAUTHORITY=$HOME/.Xauthority sudo -u oracle runInstaller

第一个命令允许 oracle 用户读取您的凭据。第二个命令明确指向该文件并以 oracle 用户身份运行安装程序。

答案2

有很多方法可以做到这一点。我做了以下对我来说方便的事情并且总是工作得很好。

  1. 在远程服务器上,确保安装 xorg-x11-xauth、xorg-x11-font-utils、xorg-x11-fonts。
  2. 在本地桌面上运行 Xming Server
  3. 在 putty 上,在 ssh 到服务器之前,启用 X11 转发并将显示位置设置为 localhost:0.0
  4. 在服务器上,生成 .Xauthority 文件,并注意 DISPLAY 变量已设置。

$ xauth 列表

$ xauth 添加

要测试它,请输入 xclock 或 xeyes

笔记:要切换用户,请将 .Xauthority 文件复制到相应用户的主目录,并从该用户导出 DISPLAY 变量。

答案3

您需要将安装 UI 加载为甲骨文用户。

尝试遵循以下操作:

登录身份:

sudo su

测试 x 服务器:

xclock

如果您可以看到时钟正在运行,那就很好了,现在尝试运行以下命令:

xhost

结果应该是这样的:

xhost SI:localuser:tri
# tri is my user name

现在让甲骨文用户访问xhost

xhost +SI:localuser:oracle

现在尝试再次登录甲骨文用户并再次尝试运行您的安装。

相关内容