1

Мне нужно открыть браузер с определенным URL-адресом с помощью ssh через удаленную машину, я включил соединение без пароля, я могу получить команду o/p, которая запускается на удаленной машине с использованием ssh, но как я могу открыть браузер с помощью ssh? Пробовал с опцией "-X", которая открывает браузер удаленной машины на моей машине (учитывая, что я запускаю ssh с моей машины).

Пытался
1). ssh client@IP_ADDRESS -X "firefox http://google.com - это открывает браузер на моей машине.
2). ssh client@IP_ADDRESS "firefox http://google.com эта команда отображает сообщение об ошибке" Error: no display specified .

По сути, мое требование заключается в том, чтобы через мою машину я запускал браузер с определенным URL-адресом на удаленной машине (это suse linux).

Любые указатели очень полезны.

Благодарю.

3 ответа3

2

Вам необходимо установить переменную окружения DISPLAY . Смотрите env |grep DISPLAY . Таким образом, вы можете использовать что-то вроде export DISPLAY=:0; firefox http://google.de .

1

Спасибо всем за ответ. Я получил это работает с помощью 2 скриптов
На стороне сервера (или на моей машине) у меня есть скрипт, который выглядит следующим образом

#!/bin/bash
ssh client@IP_ADDRESS "nohup sh openBrowser.sh $1" &
PID=$$;
echo "PID IS |$PID|\n";
sleep 3 && kill -9 $PID;

На стороне клиента (где мне нужно открыть браузер удаленно, у меня есть скрипт (openBrowser.sh), который выглядит следующим образом

#!/usr/bin/sh
#read "в качестве обратной цитаты
browserPID="ps aux | grep firefox | grep -vc grep";
if [[ "$browserPID" > 0 ]];
then
    killall -9 firefox
fi
nohup firefox --display=:0 $1 &

Также укажите, что я создал соединение без пароля, используя ssh-keygen.
На сервере я называю скрипт (первый) как
sh launchBrowser_client1.sh http://google.com
это откроет google.com на клиенте.

Ваши указатели на решение этой проблемы приветствуются.

Благодарю.

0

Вам нужен дисплей, чтобы запустить его. Вы указываете это отображение, используя переменную окружения DISPLAY .

Если вы не хотите передавать все данные через SSH, вам нужно использовать сервер X11 на компьютере, к которому вы подключаетесь. Это может быть безголовый сервер, такой как xvfb.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .