Хорошо, поэтому у меня есть VPS, работающий с терминалом gnome, и я использую следующие команды выполнения скриптов php на удаленном сервере.Выполнять gnome-терминал с удаленного сервера
<?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');
?>
Что, когда я запускаю сценарий, я получаю следующую ошибку
** (гном-терминал: 1952): ПРЕДУПРЕЖДЕНИЕ **: открытая X дисплей не удалось Невозможно разобрать аргументы: не удается открыть дисплей:
Я пытаюсь запустить его с удаленного сервера, который будет выполняться в gnome-терминале и открыть файл jar. В значительной степени, когда команда оболочки выполняется на моем удаленном сервере, подключается к ssh и запускает команду gnome-terminal, чтобы открыть настольное приложение на этом VPS.
Возможно ли это, или я делаю что-то неправильно?
UPDATE
В Putty я получил его на работу по issueing следующие команды
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"');
?>
Я m все еще получает ошибку, когда он не может открыть X-дисплей. Я только пытаюсь передать это на VPS, а не отображать что-либо на веб-сервере.
попробуйте вручную подключить ssh к этому серверу и запустить свой код, если он не сработает, попробуйте использовать escapeshellarg() для аргументов оболочки. –
Он будет делать то же самое. @ NicolòCozzani – Xylate
Что я пытаюсь сделать, так это открыть приложение через SSH и перенаправить его на gnome-desktop на VPS – Xylate