gpt4 book ai didi

php - 从远程服务器执行 gnome-terminal

转载 作者:太空宇宙 更新时间:2023-11-03 17:23:54 26 4
gpt4 key购买 nike

好的,所以我有一个运行 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): WARNING **: Could not open X display Failed to parse arguments: Cannot open display:

我试图让它从远程服务器运行命令,该命令将在 gnome 终端中执行并打开 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 服务器上显示任何内容

最佳答案

VPS 是否正在运行 X?我会建议一个稍微不同的方法:与其运行 gnome-terminal,不如直接使用 ssh 执行。请记住,您的 php 将挂起,直到 java 完成。如果您希望命令与 ssh 分离,请在命令末尾添加一个“&”。

关于php - 从远程服务器执行 gnome-terminal,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38455131/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com