好吧,所以我有一个运行gnome-terminal的VPS,我在远程服务器上使用以下php脚本执行命令。
<?php
include('Net/SSH2.php');
$ssh = new Net_SSH2('IP address');
if (!$ssh->login('root', 'rthtrhtrhrthrthrth')) {
exit('Login Failed');
}
echo $ssh->exec('gnome-terminal -e java -jar run.jar --window-with-profile=b1dcc9dd-5262-4d8d-a863-c897e6d979b9');
?>
当我运行脚本时,我收到以下错误
**(gnome-terminal:1952):警告**:无法打开X显示无法解析参数:无法打开显示:
我正在尝试从远程服务器运行命令,该命令将在gnome-terminal中执行并打开jar文件。几乎在我的远程服务器上执行shell命令时,连接到ssh并运行gnome-terminal命令在该VPS上打开桌面应用程序。
这可能还是我做错了什么?
更新
在Putty中,我通过发出以下命令让它发挥作用
export DISPLAY=:1
gnome-terminal -e "java -jar file.jar"
但仍尝试使用
使用我的网络服务器执行它<?php
include('Net/SSH2.php');
$ssh = new Net_SSH2('IP address');
if (!$ssh->login('root', 'rthtrhtrhrthrthrth')) {
exit('Login Failed');
}
echo $ssh->exec('export DISPLAY=:1');
echo $ssh->exec('gnome-terminal -e "java -jar run.jar"');
?>
我仍然遇到无法打开X显示的错误。我只是试图将其传递给VPS,而不是在Web服务器上显示任何内容
答案 0 :(得分:0)
VPS是否有X运行? 我建议采用略有不同的方法: 您可以使用ssh直接执行内容,而不是运行gnome-terminal。 请记住,你的PHP将挂起,直到java完成。添加&#34;&amp;&#34;如果你希望它与ssh分离,请在命令的末尾。