我有一个服务器上的Shell脚本。 该脚本由特定用户运行,而不是根。
该脚本具有以下内容:
export DISPLAY=:8 Xorg $DISPLAY
但是有一个错误:
致命的服务器错误:PAMauthentication失败,无法启动X服务器。 也许你没有控制台的所有权?
任何人都可以指导我如何解决这个问题? 我一直在谷歌search,但有许多不同的答案,所以我需要一些指导。
谢谢你的时间。
编辑:我已经find了这个( 在这里input链接描述 ),build议更改/etc/pam.d/xserver文件,但我真的不知道这是正确的事情吗?
WebDriver实际上不应该在服务器上运行 – 它应该在用于执行testing的工作站上运行。
如果你真的想在服务器上运行WebDrivertesting套件,那么就像SvenW指出的那样,你做错了 – 你不能只在任何你喜欢的机器上启动X服务器,特别是当你不在控制台(这Perhaps you do not have console ownership?错误消息的一部分)。
在你的情况下,最简单的解决scheme是在你正在使用ssh -X的计算机上运行X服务器,并使用ssh -X将来自服务器的X客户端(如Firefox)请求转发回工作站。
当你这样做时,从脚本中删除export DISPLAY=:8和Xorg $DISPLAY行。
ssh -X会自动为你设置DISPLAY环境variables。
请注意,还有其他可能的解决scheme(“虚拟”X服务器,不显示任何地方),但是这比现在需要更复杂。