Dwa komputery z Linuxem — jedna klawiatura i mysz

Autor: nme · środa, 25 Listopad, 2009 · Brak komentarzy ·

Czy kiedykolwiek zdarzyło Ci się pracować na dwóch komputerach — np. notebooku i komputerze stacjonarnym, albo dwóch stacjonarnych jednocześnie? Frustrujące uczucie, kiedy mylą się myszki, prawda? Jeśli oba komputery pracują pod Linuxem — jest na to sposób! :)

x2x

Ostatnio coraz częsciej pracuje na większej ilości komputerów jednocześnie. Zwykle jest to komputer stacjonarny i notebook, ale bywają też bardziej rozbudowane konfiguracje. W takich sytuacjach aż chce się mieć możliwość aby wyjechać myszką "za" ekran i "wjechać" na drugi, najechać na aplikację i coś wpisać za pomocą klawiatury, tej, z której korzystałem do pracy na pierwszej stacji roboczej. Da się to zrobić — rozwiązaniem tego problemu jest mała aplikacja o nazwie x2x.

Aplikacja x2x świetnie współpracuje z ssh. Mamy dzięki temu szyfrowane połączenie między oboma stacjami roboczymi i nie musimy się obawiać, że ktoś podsłucha co wpisujemy.

Aby korzystać z x2x, musimy go najpierw zainstalować. Robimy to na komputerze do którego chcemy się podłączyć, czyli — jeśli standardowo pracujemy na komputerze stacjonarnym, a chcemy mieć możliwość "wyjechania myszką" na notebooka, x2x musimy zainstalować na notebooku.

sudo aptitude install x2x

Kiedy mamy już zainstalowaną aplikację, możemy ją wykorzystać.

x2x w Ubuntu 9.04 i wcześniejszych

Jeśli notebook stoi po lewej stronie, jak na obrazku załączonym powyżej, musimy podać parametr -west. Mamy do dyspozycji również -north, -south i -east.

ssh -X notebook "x2x -west -to :0.0"

W tym momencie możemy już pracować na obu komputerach, korzystając z klawiatury i myszy z pierwszego z nich.

x2x w Ubuntu 9.10 Karmic Koala

Nowe X'y, nowy gdm — sprawy się nieco skomplikowały. Problem zaczął doskwierać również innym i został rozwiązany przez Roberta Jennigsa i Davida Boersma'ę. Aby cieszyć się z x2x w Karmic, możemy skorzystać z poniższego skryptu.

Musimy ustawić w nim następujące parametry:

  • USER — nazwa użytkownika na którego logujemy się na zdalnej maszynie
  • HOST — adres IP komputera lub jego nazwa w DNS lub /etc/hosts
  • HOSTNAME — nazwa zdalnego komputera (taka sama jak zawartość /etc/hostname)
  • SIDE — z której strony naszego podstawowego ekranu myszka może wyjechać
#!/bin/bash
#
# x2x Karmic problem solution based upon:
# https://bugs.launchpad.net/ubuntu/+source/x2x/+bug/471726
# Many thanks to Robert Jennings and David Boersma!
# Setup:
USER=user               # remote host username
HOST=ip                 # remote host IP or name
HOSTNAME=nazwa_hosta    # remote /etc/hostname
SIDE=west               # north / south / west / east
COMPRESSION="-C"        # comment out for LAN
# No need to change anything below:
MERGE="xauth merge /var/run/gdm/auth-for-$USER*/database"
LIST="xauth list"
REMOVE="xauth remove $HOSTNAME/unix:0"
X2X="x2x -$SIDE -to :0.0"
#ssh -X $COMPRESSION $USER@$HOST "$MERGE; $LIST; $X2X; $REMOVE"
#ssh -X $COMPRESSION $USER@$HOST "$LIST"
ssh -X $COMPRESSION $USER@$HOST "$MERGE; $X2X; $REMOVE"

Ja już się uzależniłem, Wam również polecam! :)

Zostaw komentarz