我不太熟悉 Linux,更不用说 X 和显示/窗口管理器之类的东西了。
我正在尝试运行 Oracle Enterprise Manager 的 GUI 安装程序,但是它对 DISPLAY 环境变量的值提出投诉,并且无法加载 GUI。
我以 root 身份登录,然后启动终端,可以看到变量的值为hostname:0
。我需要以 Oracle 身份运行安装程序,因此我su - oracle
使用以下命令将变量设置为相同的值export DISPLAY=hostname:0
我假设有某种权限机制阻止了它的工作,所以我想知道我可以使用 Oracle 的 DISPLAY 环境变量来允许安装程序运行吗?是否必须以 Oracle 身份登录并直接启动终端,还是可以在 su 之后完成?
答案1
您需要配置X11 身份验证MIT-MAGIC-COOKIE。
您可以使用验证配置它:
xauth list $DISPLAY # To list X11 cookies
sudo -iu oracle
# Import the cookies one by one
xauth add laptop.example.org/unix: MIT-MAGIC-COOKIE-1 someHexString
或者:
xauth extract - $DISPLAY | ssh oracle@localhost xauth merge -
或者设置$XAUTHORITY
环境变量:
export XAUTHORITY=$(xauth info|grep "^Authority file"|awk '{print $3}')
sudo -iu oracle