繁体   English   中英

从远程服务器执行gnome-terminal

[英]Execute gnome-terminal from remote server

好吧,所以我有一个运行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上打开桌面应用程序。

这可能还是我做错了什么?

UPDATE

在Putty我通过发出以下命令让它工作

export DISPLAY=:1
gnome-terminal -e "java -jar file.jar"

但仍尝试使用我的Web服务器执行它

<?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服务器上显示任何内容

VPS是否有X运行? 我建议采用一种稍微不同的方法:您可以使用ssh直接执行内容,而不是运行gnome-terminal。 请记住,你的PHP将挂起,直到java完成。 如果要将其从ssh中分离,请在命令末尾添加“&”。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM