Czy można ustawić przeglądarkę komputera hosta jako domyślną przeglądarkę systemu gościa

8

Więc chcę zostać przekierowany do mojej przeglądarki systemu hosta, kiedy kliknę jakiś link w systemie gościa.

Pamiętaj, że w ogóle nie chcę mieć przeglądarki w systemie gościa.

Host: Windows 7

Gość: GNU / Linux i KDE

Przypadek użycia: mam 2 monitory, jeden dla Linuksa (działający w VirtualBox), ale chcę mieć jedną przeglądarkę dla obu, więc kiedy kliknę link w kliencie IRC dla Linuksa, chcę, aby ten link był otwierany w uruchomionej przeglądarce na systemie hosta .

cnd
źródło
1
Jakie jest twoje aktualne pytanie, ponieważ wydaje się bardzo szerokie?
Dave
Wyjaśnienie: Czy mówisz: „Gdy jestem w przeglądarce internetowej Guest Gnu / Linux i klikam określony link, następnie minimalizuję gościa, maksymalizuję przeglądarkę internetową hosta i otwieram określoną stronę”. Lub „Gdy przeglądam przeglądarkę Guest Gnu / Linux i klikam określony link, otwieram stronę hostowaną na hoście”. Lub jak przeglądać pliki hosta od gościa, Lub coś innego.
ctrl-alt-delor
nie w przeglądarce gości, kde ma domyślną aplikację przeglądarki, chcę, aby była to przeglądarka hosta.
cnd
Musisz mi powiedzieć, czego chcesz, nie mogę zgadnąć. Więc 1) KDE ma narzędzie do ustawiania domyślnej przeglądarki internetowej. czy to jest poprawne? 2) Chcesz, aby host korzystał z niektórych przeglądarek, zgodnie z konfiguracją gościa KDE. czy to jest poprawne?
ctrl-alt-delor
1) Tak, KDE jest głównym DE, więc ustawienia -> aplikacje domyślne -> przeglądarka internetowa 2) nie, chcę, aby linki były otwierane w przeglądarce internetowej hosta, gdy chcę otworzyć jakiś link od gościa.
cnd

Odpowiedzi:

5

Kolejna odpowiedź z powodu niektórych wyjaśnień poniżej.

Jak już powiedziałeś, możesz stworzyć mały skrypt i ustawić go jako domyślną przeglądarkę w ustawieniach KDE. Aby uczynić te rzeczy w najprostszy możliwy sposób, powinieneś po prostu wysłać polecenie firefox na swój komputer hosta przez SSH. Oto link opisujący sposób konfiguracji serwera SSH w systemie Windows 7, http://codeoptimism.com/2010/10/08/SSH-on-Windows-7-the-full-awesome-implementation

Wtedy skrypt byłby tak prosty (nie zapomnij zezwolić na wykonanie):

#!/bin/sh
ssh [email protected] '/c/Program\ Files/Mozilla\ Firefox/firefox.exe $1'

Uruchom to polecenie, zanim użyjesz go jako domyślnej przeglądarki internetowej, ponieważ musisz dodać maszynę do listy znanych hostów. Konieczne będzie również skonfigurowanie uwierzytelniania za pomocą klucza publicznego, aby nie wyświetlał hasła.

KDE4 shoud pozwala określić ścieżkę skryptu, która ma być uruchamiana za każdym razem, gdy klikniesz link.

Axel Isouard
źródło
Jak myślisz, co może być możliwe przy użyciu Virtualbox API? Dodanie kolejnej usługi (ssh) to narzut)
cnd
Właśnie przyjrzałem się temu, ten interfejs API byłby użyteczny tylko po stronie sprzętowej, takiej jak sterowanie myszą, klawiaturą, biosami ... Możesz z nim powiązać zdarzenia na myszy, ale zwróciłoby to tylko względne lub bezwzględne współrzędne myszy.
Axel Isouard
Nadal mam wątpliwości, ale może masz rację i ssh to jedyny sposób na uruchomienie czegoś na hoście, ale to smutne, że uruchamianie serwera ssh na hoście nie jest tym, czego chciałem, ale jest to rozwiązanie i w pełni odpowiada na pytanie. Może zdam sobie z tego sprawę później, dziękuję.
cnd
1

Nie ma żadnych popularnych rozwiązań online, ale myślę, że możesz spróbować utworzyć dwie wtyczki (z Greasemonkey, NPAPI lub FireBreath), i byłoby to trochę trudniejsze, ponieważ twoją maszyną jest Windows 7, ponieważ nie wiem jakikolwiek sposób na wykonanie polecenia zdalnie, jak przy użyciu SSH.

  • Jeden dla twojego systemu hosta, który nasłuchuje na porcie dla połączeń przychodzących i otrzyma polecenie nawigowania przez łącze, które klikniesz w przeglądarce internetowej systemu gościa.

  • Kolejny dla twojego systemu gościa, który połączy się z twoim słuchaczem i wyśle ​​pakiet zawierający link do przejścia.

Jeśli czujesz się dobrze z tym rozwiązaniem i jesteś gotowy, aby rozpocząć, proponuję, aby zapytać StackOverflow, czy potrzebujesz pomocy w tym zakresie.

Powodzenia.

Axel Isouard
źródło
Virtualbox nie jest ssh ... Muszę zaczepić, gdy link nadchodzi do przeglądarki, a następnie przekierować go do VirtualBox - więc są dwie różne strony pytania. Może powinienem zapytać o to na Stackoverflow, ponieważ dotyczy API VBox i skryptów?
cnd
Nie chcesz mieć przeglądarki na maszynie gościa, czy chciałbyś klikać łącza pojawiające się w terminalach lub innych aplikacjach?
Axel Isouard
tak, na przykład w mojej aplikacji klienta IRC.
cnd
Ok, to całkowicie zależy od aplikacji IRC, będziesz musiał zrobić to samo, co powiedziałem dla każdego rodzaju aplikacji, którą chciałbyś zostać przekierowany. Naprawdę nie znam żadnego sposobu na wykrycie kliknięcia myszką na link w sposób ogólny.
Axel Isouard
nie trzeba wykrywać kliknięcia myszy ani tworzyć aplikacji, które chcę zastąpić domyślną aplikacją przeglądarki internetowej skryptem, który przekieruje mnie (jakoś) do hosta.
cnd
0

W jednym systemie stwórz demona, który słucha żądań i otwiera adresy URL w przeglądarce.
W drugim systemie ustaw domyślną przeglądarkę na coś, co wywołuje takie żądanie.


Pierwszą częścią tego jest serwer HTTP, który nasłuchuje żądań na komputerze, na którym chcesz otworzyć przeglądarkę. Na przychodzące żądanie otwiera (w przeglądarce) adres URL podany jako argument żądania POST.

Wybierz jedno:

Powinieneś dodać ten skrypt do uruchamiania, powinien on działać w tle.


Druga część to coś, co wywołuje żądanie.

Wybierz jedno:

Powinieneś wyznaczyć ten skrypt jako domyślną przeglądarkę.
W KDE: Domyślne aplikacje → Przeglądarka internetowa

Może być również używany jako narzędzie wiersza poleceń: ./open_url.sh 'http://google.com/'


Skrypty w języku Python powinny działać na wszystkich głównych systemach z dowolną stosunkowo nową wersją języka Python (podejrzewam, że 2.6+, 3.1+).

W systemie Windows, jeśli nie chcesz, aby skrypt w Pythonie działał w oknie poleceń, zmień jego rozszerzenie na .pyw. Użyj Menedżera zadań, jeśli chcesz go zatrzymać (poszukaj pythonw.exe ).

Karta sieciowa VirtualBox powinna być ustawiona na NAT (ustawienie domyślne). Więcej informacji o adresie IP tutaj . Wybór portu jest arbitralny, możesz zmienić 1337 na coś innego wszędzie.

Serwer jest bezpieczny, ponieważ nasłuchuje tylko połączeń z hosta lokalnego. VirtualBox sprawia, że ​​jakoś działa. Ale jeśli chcesz, aby działało to zdalnie, określ adres IP nasłuchiwania jako '0.0.0.0'lub ''zamiast 'localhost'.

Oleh Prypin
źródło