我在 Azure 上有一个 RHEL 映像,我们启动它来执行一些专门的任务。没有选项可以实际保持服务运行。
但是,有时在启动时,当我尝试运行时,甚至xeyes
会出现以下错误:
$ xeyes
没有指定协议。
错误:无法打开显示::1
其他时候,当我们使用完全相同的方法启动它时,一切正常。我可以运行从xeyes
VNC 到 VNC 的所有内容,一切都很好。在运行命令之前创建 VM 时,我什至采取了特殊的预防措施,因为我们在规模集中waagent
启动映像,例如创建 VNC 实例(稍后详述)以及我为此目的而严格添加的新用户。
所以这是我的问题:
- 有谁知道会导致这种不稳定行为的任何奇怪之处?
- 有没有人做任何事情来确保 X 启动?
- 我能做些什么来强制 VNC 等在 X 之后启动吗?
注意:我不需要设置远程 X 访问,只需要本地。
我遵循的基本说明是Red Hat 站点本身上的Red Hat RHEL 7 TigerVNC 说明。
在这一点上,我的解决方法是使用 Chef 构建 VM,然后使用这些指令启动一个重建所有内容的过程。