Чи можливо налаштувати браузер хост-машини як браузера гостьової системи за замовчуванням


8

Тож я хочу перенаправитись на браузер моєї хост-системи, коли натискаю посилання в гостьовій системі.

Зауважте, що я зовсім не хочу мати браузер у гостьовій системі.

Хост: Windows 7

Гість: GNU / Linux та KDE

Випадок використання: у мене є два монітори, один призначений для Linux (працює в VirtualBox), але я хочу мати один браузер для обох, тому коли я натискаю на якесь посилання клієнта IRC Linux, я хочу, щоб це посилання було відкрито в запущеному браузері на хост-системі .


1
Яке ваше власне питання, оскільки воно здається дуже широким?
Дейв

Пояснення: Ви говорите: "Коли я перебуваю у веб-браузері Guest Gnu / Linux, і натискаю певне посилання, потім мінімізую гостя, максимізую веб-браузер хостингу та відкриваю конкретну сторінку". Або "Коли я перебуваю у веб-браузері Guest Gnu / Linux і натискаю певне посилання, відкриваю сторінку, розміщену на хості". Або як переглядати хост-файли від гостя, Або щось інше.
ctrl-alt-delor

не в гостьовому веб-браузері, kde має додаток для браузера за замовчуванням, я хочу зробити його веб-переглядачем.
CND

Вам доведеться сказати мені, чого ви хочете, я не можу здогадатися. Отже 1) KDE має інструмент для встановлення веб-браузера за замовчуванням. це правильно? 2) Ви хочете, щоб хост використовував деякий браузер, встановлений в kde guest. це правильно?
ctrl-alt-delor

1) Так, KDE є основним DE, тому налаштування -> програми за замовчуванням -> веб-браузер 2) ні, я хочу, щоб посилання були відкриті веб-браузером хоста, коли я хочу відкрити якесь посилання від гостя.
CND

Відповіді:


5

Ще одна відповідь через деякі пояснення нижче.

Як ви вже говорили, ви можете створити невеликий сценарій і встановити його як ваш браузер за замовчуванням у налаштуваннях KDE. Щоб зробити ці речі найпростішим можливим способом, ви просто надішліть команду firefox на свою хост-машину через SSH. Ось посилання, що описує, як налаштувати SSH-сервер у Windows 7, http://codeoptimism.com/2010/10/08/SSH-on-Windows-7-the-full-awesome-implementation

Тоді сценарій був би таким же простим (не забудьте дозволити виконання):

#!/bin/sh
ssh user@192.168.1.20 '/c/Program\ Files/Mozilla\ Firefox/firefox.exe $1'

Запустіть цю команду перед тим, як використовувати її як веб-браузер за замовчуванням, оскільки вам доведеться додати апарат у відомий список хостів. Вам також доведеться налаштувати аутентифікацію відкритого ключа, щоб він не запросив пароль.

KDE4 повинен вказати шлях сценарію, який слід запускати щоразу, коли ви клацаєте на посилання.


Як ви думаєте, що це можливо можливо за допомогою API Virtualbox? Додавання ще один сервіс (SSH) є накладними витратами)
CND

Я щойно переглянув це, цей API був би корисний лише на апаратній стороні, наприклад, керування мишкою, клавіатурою, біографією, ... Ви можете зв'язати події на миші з нею, але це лише поверне Відносні або абсолютні координати миші.
Аксель Ісуар

Я все ще сумніваюся з цього приводу, але, можливо, ти маєш рацію, а ssh - єдиний спосіб запустити щось на хості, але це сумно, запуск SSH-сервера на хост-машині насправді не те, що я хотів, але це рішення і повністю задає питання. Можливо, я це зрозумію трохи пізніше, дякую.
CND

1

Для цього в Інтернеті немає жодних популярних рішень, але я думаю, ви можете спробувати створити два плагіни (за допомогою Greasemonkey, NPAPI або FireBreath), і це буде трохи складніше, оскільки ваша хост-машина - це Windows 7, як я не знаю будь-який спосіб виконувати команду віддалено, як-от за допомогою SSH.

  • Один для вашої хост-системи, який прослуховує порт для вхідних з'єднань та отримає замовлення для переходу по посиланню, яке ви натиснете у веб-браузері вашої гостьової системи.

  • Ще одна для вашої гостьової системи, яка підключиться до вашого слухача і надішле пакет, що містить посилання для проходження.

Якщо ви почуваєтеся добре з цим рішенням і готові почати, пропоную вам попросити StackOverflow, якщо вам потрібна допомога, роблячи це.

Удачі.


Virtualbox - це не ssh ... Мені потрібно підключити, коли посилання приходить до браузера, а потім перенаправити його на VirtualBox якось - тож є дві різні сторони питання. Можливо, я запитую про це на Stackoverflow, оскільки це стосується API VBox та сценаріїв?
CND

Ви не хочете, щоб у вашій гостьовій машині був браузер, ви хочете натиснути на посилання, що з’являються в терміналах чи інших програмах?
Аксель Ісуар

так, наприклад, у моїй клієнтській програмі IRC.
CND

Гаразд, це повністю залежатиме від програми IRC, вам доведеться робити те саме, що я сказав для кожного типу програми, яку ви хочете перенаправити, я дійсно не знаю жодного способу виявити клацання миші на посилання в родовому порядку.
Аксель Ісуар

не потрібно виявляти клацання миші або робити це для будь-якої програми. Я хочу замінити програму веб-браузера за замовчуванням на якийсь сценарій, який перенаправить мене (якось) на хост.
CND

0

В одній системі зробіть демон, який слухає запити та відкриває URL-адреси у браузері.
В іншій системі встановіть браузер за замовчуванням на те, що викликає такий запит.


Отже перша частина цього - сервер HTTP, який слухає запити на машині, де ви хочете відкрити браузер. На вхідний запит він відкриває (у браузері) URL-адресу, задану як аргумент POST-запиту.

Вибрати один:

Ви повинні додати цей сценарій до запуску, він повинен працювати у фоновому режимі.


Друга частина - це те, що викликає запит.

Вибрати один:

Ви повинні призначити цей скрипт як браузер за замовчуванням.
У KDE: Програми за замовчуванням → Веб-браузер

Його також можна використовувати як інструмент командного рядка: ./open_url.sh 'http://google.com/'


Сценарії Python повинні працювати у всіх основних системах із будь-якою порівняно недавньою версією Python (я підозрюю 2.6+, 3.1+).

У Windows, якщо ви не хочете, щоб сценарій Python запускався у вікні команди, слід змінити його розширення на .pyw. Використовуйте диспетчер завдань, якщо ви хочете його зупинити (шукайте pythonw.exe ).

Мережевому адаптеру VirtualBox слід встановити значення NAT (налаштування за замовчуванням). Більше про IP-адресу тут . Вибір порту умовний, сміливо змінюйте 1337 на щось інше скрізь.

Сервер захищений, оскільки він слухає лише з'єднання з localhost. VirtualBox змушує його якось працювати. Але якщо ви хочете, щоб це працювало віддалено, вкажіть IP-адресу прослуховування як '0.0.0.0'або ''замість 'localhost'.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.