Ubuntu User Space! O Ubuntu Integrado ao Windows


Parece mesmo que desde a saída do CEO da Microsoft Steve Ballmer, e com a chegada de Satya Nadella ao cargo de CEO, muitos paradigmas mudaram na empresa. Muitos desenvolvedores e usuários foram e são ouvidos agora, e muitas pesquisas feitas para atender as necessidades apontadas por eles. Dentre eles, a expansão de seu sistema operacional Windows 10 abraçando diversos conceitos de unificação de recursos entre plataformas, convergência, a adição de diversos recursos existentes em outros sistemas operacionais como no Linux e Mac, expansão de produtos para outros sistemas operacionais como o SQL Server para Linux, e assim por diante.
E agora mais uma novidade. Desta vez, sobre um projeto real que a Microsoft fez em parceria com a Canonical chamado Ubuntu User Space divulgado em sua conferência Build 2016. Trata-se dos binários do Ubuntu rodando dentro do Windows.
Dustin Kirkland líder do time de estratégia, ciclo de vida e roadmap do Ubuntu, e que trabalha para o CEO da Canonical Mark Shuttleworth, publicou em um artigo do Insights do Ubuntu a notícia após participar da conferência Build 2016 da Microsoft, e vou transcrever aqui integralmente.
Mark Shuttleworth CEO da Canonical, também se pronunciou sobre o projeto dizendo:
“Em nossa jornada para trazer software livre para o público mais amplo possível, este não é foi um momento que poderíamos ter previsto. No entanto, estamos muito satisfeitos de estar por trás do Ubuntu para Windows, o compromisso de responder às necessidades dos desenvolvedores do Windows explorando Linux desta maneira nova e surpreendente, e estamos animados com as possibilidades anunciadas por esta mudança inesperada dos acontecimentos.”
Segue abaixo a descrição de Dustin Kirkland:
É meio difícil de entender, então eu vou explicar mais detalhadamente.
- …Os usuários do Windows 10…
- …Poderão abrir o menu Iniciar do Windows…
- …E digitar “bash” [enter]…
- …Que irá abrir um terminal cmd.exe…
- …Rodando o Ubuntu /bin/bash…
- …Com acesso total a todo o espaço do usuário Ubuntu.
- …Isso significa trabalhar com o apt, ssh, rsync, find, grep, awk, sed, sort, xargs, md5sum, gpg, curl, wget, apache, mysql, python, perl, ruby, php, gcc, tar, vim, emacs, diff, patch…
- …E a maioria das dezenas de milhares de pacotes binários disponíveis nos arquivos do Ubuntu!
Mas aí você pergunta…
Certo, então apenas Ubuntu rodando em uma máquina virtual?”
Não! Esta não é uma máquina virtual! Não há nenhuma inicialização do kernel Linux em uma máquina virtual sob um hypervisor. É apenas o Ubuntu user space.
Ah, ok, então este é o Ubuntu em um contêiner, então?”
Não! Este não é um contêiner. São os binários nativos do Ubuntu rodando diretamente no Windows.
“Hum, bem, é como o Cygwin talvez?”
Não! Cygwin inclui utilitários de código aberto que são recompilados da fonte para rodar nativamente no Windows. Aqui, estamos falando de bit-por-bit, check-sum por check-sum, os binários ELF Ubuntu rodando diretamente no Windows.
“Então, talvez algo como um emulador de Linux?”
Agora você está ficando mais quente!
A equipe de desenvolvedores da Microsoft tem estado a trabalhar arduamente adaptando uma tecnologia de pesquisa da Microsoft para executar basicamente tradução em tempo real do Linux syscalls em syscalls do sistema operacional Windows. Geeks podem concluir corretamente que é algo do tipo do inverso do “Wine” – binários Ubuntu rodando nativamente no Windows. Microsoft chama de seu “Windows Subsystem para Linux”. (E não, não é de código aberto).
Observação do Cleuber: Sabe quando você usa o Wine para emular programas de Windows dentro do Linux? Seria isso, mas sem a necessidade de um “Wine para Windows”, por causa das traduções em tempo real dos syscalls.
Agora você poderá usar o ssh para acessar outros sistemas Linux. Não haverá mais a necessidade do Putty! Apenas ssh diretamente de dentro do shell.
Está tudo funcionando exatamente como o esperado? Não, não completamente. A vasta maioria da LTP funciona bem. Mas há algumas imperfeições ainda, especialmente em torno tty. Meu amado Byobu, tela, e tmux não chegam a funcionar ainda, mas eles estão chegando! A imagem do Ubuntu que está sendo usada é a Ubuntu 14.04 LTS, mas em breve mudará para a do Ubuntu 16.04 LTS na Windows Store muito, muito em breve.
Finalmente, eu imagino que alguns de vocês – Que usam há muito tempo o Windows e o Linux Ubuntu talvez ainda estejam pensando, ” por quê?!?” Este parece ser um endosso quase surreal pela Microsoft sobre a importância de código aberto para desenvolvedores. Na verdade, o que é uma oportunidade fantástica para fazer uma ponte do mundo da tecnologia de código livre e aberto diretamente em qualquer desktop do Windows 10 no planeta. E um vector para aprender e usar mais o Ubuntu e Linux em nuvens públicas, como Azure. Do ponto de vista da Microsoft, uma variedade de pesquisas e estudos de usuários têm apontado para o bash e outras ferramentas do Linux – e muito especificamente, o Ubuntu – para estar disponível no Windows, e sem a pesada virtualização completa.
Então, se você faz parte do programa “Insider” do Windows terá acesso ao beta inicial desta tecnologia.
Veja abaixo o vídeo da Build 2016 com o pessoal da Microsoft apresentando o recurso.
Obs. Buscando pela internet, já vi pessoas usando o Xming X Server para chamar aplicações do Ubuntu com interface gráfica como o vim, o xeyes (apenas para testar) e o Firefox do Ubuntu dentro do Windows. Ainda com performance lenta e travando, mas ainda sim mais rápida do que chamando a aplicação via conexão remota VNC ou ssh com janela gráfica. (por ser uma execução local e independente da conexão de rede com outra máquina).
Como o projeto está em desenvolvimento, creio que após ser lançado e estiver maduro, entregará recursos preciosos especialmente para desenvolvedores que em alguns casos, adoram os recursos do Linux, mas que muitas vezes precisam também trabalhar no Windows.
Abraços
Cleuber

Cleuber Silva Hashimoto
AdministradorGestor de Infraestrutura | Suporte | Cibersegurança.
Graduado em Gestão de TI e Pós-graduado em Segurança da Informação e Computação Forense. Fundador da Agência WebGenese e criador do cleuber.com.br