Desenvolvimento
Linux
Rodar programas linux remotos a partir do windows
Rodar programas linux remotos a partir do windows
Precisei de um aplicativo especial para uma empresa. Tal aplicativo é open-source, mas só roda em linux. E a empresa cliente usa desktops windows.
Não há a possibilidade de instalar linux em cada desktop nem como dual-boot.
Como resolver tal situação?
Então, lembrei de uma característica do X do linux que permite que o acesso do usuário pode ser feito via sockets. Uma maneira de se fazer o windows ter um shell do linux é usando o Cygwin. Mas o cygwin é bem meio chato de se configurar para o que desejo.
Então, encontrei uma ótima e simples opção: XMing. Como pode-se ler no site:
Xming é o servidor X Window líder para o Microsoft XP/2008/Windows7. É um servidor X completo e é leve, rápido, atual, simples de instalar e por ser autônomo nativo do Microsoft Windows ®, feito facilmente portátil (não necessitando de uma instalação específica da máquina).
O Xming usa o ssh para acessar a máquina linux, o que garante a segurança dos dados trafegados. Inclusive, você pode fazer isso funcionar via web. A configuração para isso é caso para outro artigo, mas não é bixo-de-sete-cabeças. Há suporte a compactação dos dados trafegados, o que é bastante interessante em conexões de baixa velocidade.
Ele é opensource, mas pra baixar o binário, o autor pede uma contribuição. Você pode baixar os fontes de graça e compilar. Mas eu não estava com tempo pra isso. Contribuí com 10 libras e ganhei uma chave de acesso.
De acordo com o download que você fizer, pode ter uma versão instalável ou portable. Eu resolvi instalar pra não ficar me preocupando.
Na sua distribuição linux, é necessário que o ssh esteja instalado e ativo. Como meu servidor é baseado em debian, um simples sudo apt-get install openssh-server deixou tudo funcionando. Vou considerar que você saiba instalar e configurar basicamente softwares no linux.
Na estação que rodará windows deve-se executar o XLaunch.

Nas configurações do display, escolhi "Multiple Windows" porque quero que o programa rode livre no desktop windows.

No tipo de sessão, escolhi "Start a program".

Na configuração do "Start program", é só fornecer o nome real do aplicativo, e escolher "Using PuTTY". Forneça o endereço do computador rodando linux, o usuário e a senha.
Se estiver acessando a partir de uma rede lenta, habilite "with compression". Caso contrário, deixe desabilitado. O trabalho das duas máquinas compactando no envio e descompactando na recepção degrada a performance e só vale a pena se a conexão for realmente lenta.

Por fim, nos parâmetros adicionais, você pode deixar o Clipboard integrado habilitado e testar a aceleração por OpenGL (depende das suas configurações).

Na última tela de configuração você tem a opção de salvar o que definiu em um arquivo .xlaunch.
Clicando em "Concluir" o programa escolhido será executado na máquina linux, mas aparecerá na máquina windows.
Se quiser criar um atalho é só colocar como "C:\Program Files (x86)\Xming\XLaunch.exe -run programa_linux.xlaunch". Localize o arquivos xlaunch.exe e seu programa_linux.xlaunch de acordo com suas configurações.
Divirta-se
Adicional
Já que eu precisei do linux aqui, resolvi que seria uma boa gerenciar os arquivos e as impressões dos usuários.
Assim, cada usuário teve sua área de trabalho configurada, com arquivos privados e públicos, acesso à impressora pela rede e mais alguns detalhes que só o mundo linux proporciona a custo baixo ou mesmo zero. Algumas opções: esta máquina poderia ser um proxy transparente de internet, ter um sistema de anti-virus, sincronização dos dados dos usuários com contas externas (dropbox, por exemplo)
Criei uma máquina virtual usando o VirtualBox e instalei o linux nessa VM (lembra que eu disse que não seria possível uma nova máquina nem mudar uma windows para linux?).
Essa máquina linux virtual tem seu próprio IP (bridge) e é acessível a todos na rede.
Além de tudo, o backup ficou muito mais fácil. É só exportar o appliance do VirtualBox e salvar em um DVD ou qualquer outro sistema de backup.
Caso a máquina que hospeda o servidor seja danificada, é só restaurar a máquina virtual (copiando) e em minutos todo o sistema estará de volta.

Lançamento Dell! Notebook Inspiron 15R
Novo design e mais tecnologia com 2GB e HD320. Apenas 12xR$ 142. Confira!

Notebook Dell Inspiron 14
Praticidade total em 14" com o melhor preço: só R$ 1.499 em 12x sem juros! Aproveite!

Netbook Dell Mini 10v
Conectividade e mobilidade total com o melhor preço e frete grátis! Só 12x R$ 99!

Acessórios Dell! Mochila Dell Curve Preta e Vermelha
Proteção com mais estilo para o seu notebook.
Apenas R$ 119

Acessórios Dell! Mouse Wireless Microsoft
Ergonomia total e mais precisão por só R$ 109 com frete grátis!








