Introdução
Certamente quem trabalha com
Linux, em algum momento, esbarrou em alguma aplicação que é compatível somente com o Windows, ou até mesmo aplicações Web que são apenas compatíveis com seu navegador Internet Explorer.
Este artigo tem como objetivo, possibilitar que aplicações para Windows sejam executadas no Linux como se fossem aplicações locais, isto é, de forma
transparente ao usuário. Aplicações Windows são apresentadas como qualquer aplicativo que está sendo executado no Linux.
Para isso, será utilizada uma conexão RDP 'seamless', que executará as aplicações no Windows apresentando-as no sistema Linux fazendo com que seja
visualizada somente a janela da aplicação executada.
Esta configuração pode ser feita através de uma máquina virtual Windows no próprio sistema, ou com um servidor através do Terminal Services.
Compilando o RDESKTOP
Primeiramente, para que o
rdestkop suporte o compartilhamento de sessões, que possibilitará a execução de diversas aplicações, ou várias
instâncias da mesma, simultaneamente, é necessário aplicar o Patch disponibilizado pela
Cendio.
Vamos utilizar os links disponibilizados pela Fontis em:
http://www.fontis.com.au/rdesktop
Código fonte do rdestkop:
http://www.fontis.com.au/system/files/rdesktop_src.tar.gz
Patch para SeamlessRDP:
http://www.fontis.com.au/system/files/rdesktop.patch
Efetuado o download dos arquivos acima, descompacte o arquivo com os fontes do rdesktop:
$ tar zxf rdesktop_src.tar.gz
Aplique o Patch:
$ patch -p1 < rdesktop.patch
Agora iremos compilar o rdesktop:
# ./bootstrap
# ./configure
# make
Após compilado, copie o executável do rdesktop para o caminho desejado (neste tutorial, utilizaremos o caminho “/usr/local/bin/rdesktop”).
Se ao compilar o rdesktop, for apresentado o erro:
suspicious cache-id, must contain _cv_ to be cached
... Por favor, siga as orientações na dica:
suspicious cache-id, must contain _cv_ to be cached ao compilar o rdesktop
[1] Comentário enviado por
leo.silva em 29/02/2012 - 11:57h:
quando executo o comando ./bootstrap apresenta o seguinte erro:
./bootstrap: 3: autoreconf: not found
como posso soluciona-lo?
[2] Comentário enviado por
fs.schmidt em 29/02/2012 - 12:42h:
Olá amigo, é necessário instalar o pacote autoconf.
[3] Comentário enviado por
leo.silva em 29/02/2012 - 13:12h:
Valeu amigão, agora funcionou!
[4] Comentário enviado por
edulanzani em 29/02/2012 - 17:56h:
Não econtrei o executavel do rdesktop.
[5] Comentário enviado por
brunovictor86 em 02/03/2012 - 11:05h:
Fabio, otimo artigo, vai me ajudar muito.
Estou com o seguinte problema, não consigo abrir mais de uma sessão aparece o seguinte erro.
line 33: syntax error near unexpected token `newline'
line 33: `</aplicativo>'
Apaguei essa ultima linha `</aplicativo>' e tambem nao abre.
[6] Comentário enviado por
brunovictor86 em 02/03/2012 - 12:28h:
Fabio, tem como ter duas instancia de um programa abreto com o mesmo usuario de ts?
[7] Comentário enviado por
edulanzani em 02/03/2012 - 14:37h:
Para abrir duas instancias de um mesmo usuario, vc deve configurar no servidor de ts pra ele aceitar multiplas conexes do mesmo usuario.
[8] Comentário enviado por
Tacioandrade em 02/03/2012 - 14:50h:
Fábio esta é uma ótima dica mesmo, porem tendo um problema. Fiz o passo a passo todo correto, consegui compilar o rdesktop depois de aplicar o patch, tudo OK, descompactei o arquivo seamlessrdp_server.zip como nas sua explicação e tudo OK.
Porem quando fui para o Linux tentar executar o script (já com os dados modificados), está aparecendo a seguinte mensagem de erro: Error binding to socket: bind: Permissão negada.
Você sabe o que pode ser isso?????
Outra duvida que tenho, desta forma do tutorial. poderei abrir a aplicação apenas de 1 computador por vez no Windows XP ou 7 normal, ou poderei abrir várias instâncias em várias maquinas, como se estivesse usando como Terminal Server?
Obrigado pela contribuição. =)
[9] Comentário enviado por
fs.schmidt em 02/03/2012 - 17:30h:
edulanzani = Se o make consegui compilar corretamente, no diretório irá estar o excutável, com o nome "rdesktop"
brunovictor86 = Essa linha </aplicativo> apareceu por engano na publicação da dica, testei aqui apenas retirando, copiando e colando e funcionou perfeitamente.
Tacioandrade = Verifique se está com permissão de gravação no diretório informado na variável SOCKETRDP
Sobre a limitação de sessões simultaneas no Windows sei que o XP ou 7 não permite, somente o TS da linha Server.
Abraços e obrigado pela leitura !
[10] Comentário enviado por
Tacioandrade em 03/03/2012 - 23:30h:
Estava realmente como somente para leitura, porem mesmo dando permissão a pasta C:\seamlessrdp e todos os arquivos dentro dela, continua dando o mesmo erro: Error binding to socket: bind: Permissão negada
O acesso normal ao computador via rdesktop funciona perfeitamente, apenas quando o parametro -A está ativo que ele dá este erro. =/
[11] Comentário enviado por
edulanzani em 04/03/2012 - 08:08h:
Tacioandrade = Qual a versão do windows que você está utilizando?
[12] Comentário enviado por
Tacioandrade em 04/03/2012 - 22:08h:
Eu estou usando o Windows XP, porem tentei também com o 2003 server que instalei apenas para testar isso.
Uma coisa que percebi é que a pasta está como somente para leitura e mesmo que eu retire esta opção, toda vez que eu clico em OK (após aplicar) ela volta a ficar somente para leitura.
Tentei isso várias vezes, pois vejo nisto um bom projeto para livrar dos XPiratas uma empresa que presto consultória. =)
[13] Comentário enviado por
fs.schmidt em 05/03/2012 - 09:53h:
Tacioandrade, esse erro está dando no Linux, o rdesktop não está conseguindo escrever no arquivo com socket para realizar o compartilhamento de sessão.
[14] Comentário enviado por
ipi em 06/03/2012 - 23:13h:
Desculpe, eu nao entendi direito, precisa ter um windows instalado em outra particao ou numa VM? É isso mesmo?
Obrigado se puder esclarecer.
[15] Comentário enviado por
fs.schmidt em 07/03/2012 - 09:37h:
Ipi = Esta configuração pode ser feita através de uma máquina virtual Windows no próprio sistema, ou com um servidor através do Terminal Services.
[16] Comentário enviado por
edulanzani em 12/04/2012 - 09:09h:
Estou usando essa solução a quase um mes. E funciona muito bem. Parabéns pelo artigo.
[17] Comentário enviado por
manchatnt em 24/04/2012 - 14:01h:
Boa Tarde a todos.
Consegui rodar no Windows Server 2003.
Mas não no Windows XP. No Windows XP abre a conexão tsclient sem executar o aplicativo desejado.
Existe alguma configuração em específico para o Windows XP?