Compartilhando recursos com Synergy

Para aqueles já trabalharam com mais de 1 monitor, estão cientes da agilidade e aumento da produtividade em tais condições. A boa notícia é que tal funcionalidade pode ser desfrutada em computadores distintos sem a necessidade de hardware adicional como KVM ou mais de uma placa de vídeo com o aplicativo Synergy.

Synergy é um software livre e opensouce que permite de uma maneira muito fácil compartilhar o mouse e teclado entre computadores distintos. Não entendeu? Imagine que você tem um laptop e desktop em casa e gostaria de trabalhar com os dois computadores. Porém é um tanto chato, ficar trocando de mouse e teclado toda vez. Com Synergy, podemos arrastar o mouse para direita/esquerda/cima/baixo trocando de monitor e de computador respectivamente.

Synergy é atualmente suportado em Windows, Linux e MacOS.

Synergy

A configuração do Synergy é bem simples. Para os usuários de Fedora, basta seguirmos os passos abaixo:

# yum install synergy-plus

Uma vez instalado, basta configurarmos o aplicativo. Em nosso exemplo, temos 2 computadores (1 desktop e 1 laptop) rodando Fedora 15. O Synergy basicamente oferece 2 binários: synergys e synergyc.

synergys: sysnergys (server) deve ser executado no computador servidor, isto é, o computador no qual esta conectado o teclado e o mouse que será compartilhado entre os demais computadores.

synergyc: synergyc (client) deve ser executado nos demais computadores.

Para melhor ilustrar o cenário abaixo utilizado no exemplo, segue algumas informações:

Hostname: stheo.mmello.org IP: 172.16.69.2 – Servidor

Hostname: notebook.mmello.org IP: 172.16.69.3 – Cliente

Como primeiro passo de nossa configuração, é muito importante que ambas as máquinas sejam capazes de resolver nomes entre si. Caso não tenhas um servidor de DNS, colocar os nomes no /etc/hosts será suficiente.

# cat /etc/hosts

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

172.16.69.2 stheo.mmello.local stheo
172.16.69.3 notebook.mmello.local notebook

Uma vez configurado o arquivo /etc/hosts, vamos as configurações do Synergy.

Servidor:

stheo $> cat ˜/.synergy.conf
section: screens
   stheo.mmello.local:
   notebook.mmello.local:
end

section: links
   stheo.mmello.local:
      left = notebook.mmello.local
   notebook.mmello.local:
      right = stheo.mmello.local
end

Cliente:

notebook $> cat ~/.synergy.conf
section: screens
   notebook.mmello.local:
   stheo.mmello.local:
end

section: links
   notebook.mmello.local:
      right = stheo.mmello.local
   stheo.mmello.local:
      left = notebook.mmello.local
end

Como podemos ver nos arquivos listados acima, a configuração do Synergy é bem simples. Basicamente a configuração aponta que levando o mouse para o lado esquerdo do computador selecionado como servidor (stheo), o mouse/teclado será direcionado para o computador cliente (notebook). Uma vez no computador cliente, movendo o mouse para o lado direto da tela, voltaremos ao computador servidor (stheo).

Como nossos arquivos de configuração já estão prontos, basta iniciarmos os processos synergyc e synergys.  Para facilitar a vida, eu criei um alias na máquina servidor e cliente. Obviamente você poderia colocar isso como serviço SYSV, rc.local, etc.

Alias no servidor (stheo):

stheo $> alias  | grep start
alias start_monitor_share='synergys -a 172.16.69.2 --name stheo.mmello.local \
 -c /home/mdemello/.synergy.conf'

Alias no cliente (notebook):

notebook $> alias  | grep start
alias start_monitor_share='synergyc --daemon \
--restart -n notebook.mmello.local stheo.mmello.local'

Detalhe: Se estiver utilizando firewall, libere a porta 24800(tcp).

Uma vez os processos em execução, podemos observar no arquivo /var/log/messages do cliente algumas mensagens do Synergy.

notebook $> sudo cat /var/log/messages | grep Syner
Sep  4 20:26:01 notebook Synergy+ 1.3.4: 2011-09-04T20:26:01 NOTE: started client#012#011synergyc.cpp,331
Sep  4 20:26:01 notebook Synergy+ 1.3.4: 2011-09-04T20:26:01 NOTE: connecting to 'stheo.mmello.local': 172.16.69.2:24800#012#011CClient.cpp,112
Sep  4 20:26:01 notebook Synergy+ 1.3.4: 2011-09-04T20:26:01 NOTE: connected to server#012#011synergyc.cpp,248

Detalhe: o redirecionamento de mouse/teclado não funciona quando se utiliza aplicativos em maximizados. Nesses casos, é possível configurar combinações de teclas.

Com certeza Synergy é um recurso muito interessante e barato para quem deseja trabalhar com vários computador simultâneamente.

Segue um vídeo bem interessante mostrando o Synergy em ação em outras plataformas também.


Um forte quebra costela e até a próxima.