13 de janeiro de 2017

Rodando o openSUSE Leap nativamente no Windows 10


Usa Windows mas gosta do Linux porém odeia o Ubuntu e não gosta de máquina virtual?

Seus problemas acabaram. Aprenda a rodar nativamente (sim, nativamente) a melhor distro de Linux no seu Windows 10.


Antes de mais nada, tudo Linux no Windows está em testes, pode cagar sua máquina, travar sua conta bancária e aliciar SuaMãe™. Então esteje™ avisado!


Estava lendo um post sobre o openSUSE Leap 42.2 rodando nativamente no Windows 10. Obviamente eu quis pagar pra ver se realmente funcionava.

Habilitando o Linux no Windows


Primeiro passo é ativar o UOW (Ubuntu On Windows, que nome mais tosco). Obs: funciona apenas na build 14393 ou superioe e processador X64.

Vá em Settings > Update & Security > For developers e selecione Developer Mode.


Depois vá no Control Panel > Programs and Features > Turn Windows features on or off. Então habilite o Windows Subsystem for Linux (beta).


Se Deus gostar de você vai dar tudo certo e aparecerá que o sistema está pesquisando pelos arquivos necessários e irá solicitar para reiniciar. Mas não renicie, antes abra o PowerShell como administrador (só clicar com o botão da direita no ícone dele e selecionar Run as Administrator) e digitar:

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

Aí vai pedir novamente para reniciar o computador, então você obedeça.


Pronto, depois de reiniciado basta abrir o command prompt (não precisa ser como administrador) e digitar:

bash

Então ele vai questionar se deseja baixar o Ubuntu via Windows Store:


Aceite os termos sem ler e aguarda baixar, extrair e instalar. Em seguida, vai pedir para criar um novo usuário lá, basta escolher o nome e senha (que é totalmente independente do Windows).

E voilá, terá um Linux rodando nativamente no seu Windows.


Os arquivos ficarão no %localappdata%\lxss\, ou seja, C:\Users\SeuNome\AppData\Local\lxss.

ATENÇÃO: Não mexa nesses arquivos usando o Windows, pois irá corrompê-los.

Vamos ser sincero, ter Ubuntu e Windows no mesmo sistema é muita desgraça. Então vamos exorcizar para remover o demônio e instalar o openSUSE.


Instalando o openSUSE Leap 42.2

Após ter instalado o Ubuntu, saia do Bash e entre novamente, através do atalho no Start. Infelizmente terá o ícone da Canonical (mas iremos resolver isso):


É muito importante que você saia do cmd após instalar porque ele estará no C:\ ainda e você não terá permissão e poderá cagar no seu PC.

Agora no Bash mesmo, o primeiro passo é baixar o openSUSE Docker Space com o comando:

$ wget -O openSUSE-42.2.tar.xz https://github.com/openSUSE/docker-containers-build/blob/openSUSE-42.2/docker/openSUSE-42.2.tar.xz?raw=true

Obs: Não precisa digitar o $, é apenas para mostrar que está como usuário, não como root que seria #.

Dica: para colar no Bash basta clicar com o botão da esquerda.


Então criar a pasta rootfs e descompactar o arquivo

$ sudo mkdir rootfs
$ sudo tar -C rootfs -Jxf openSUSE-42.2.tar.xz


Assim como na sua vida, você vai ignorar os erros que aparecerem.


Depois saia:

$ exit

O que aconteceu? Você baixou um arquivo com o openSUSE e extraiu na pasta rootfs do seu usuário. Agora você precisa substituir esses arquivos que baixou pelo original, do Ubuntu.

Para isso, melhor fazer um backup dos arquivos. Abra o command prompt (cmd) e copie os arquivos antigos para uma nova basta (não esqueça de ter saído do Bash, senão não terá permissão):

Fazendo backup:

cd %localappdata%\lxss\
rename rootfs rootfs.ubuntu


Vai renomear o rootfs original (não é o que você criou com o arquivo baixado) para rootfs.ubuntu como backup. Agora sim vai mover o do openSUSE para a raiz:

move .\home\nomedousuárioquevocêcriou\rootfs .\

Por enquanto não existe o SUDO (fazer algo com poderes de superusuário, root), então digite (ainda no cmd):

lxrun /setdefaultuser root

Resumindo:


 Pronto, agora você tem o openSUSE no lugar do Ubuntu!

Mas pera.... e aquela bosta de ícone do Ubuntu e escrito "Bash on Ubuntu on Windows" ? Falei que íamos resolver.

Basta escolher um ícone de sua preferência, eu escolhi esse e salvar lá no %localappdata\lxss (pode ser pelo Windows Explorer mesmo), renomear o bash.ico original para ubuntu.ico (para fazer backup) e renomear o que você baixou para bash.ico

Ou fazer pelo cmd:

cd %localappdata%\lxss\
rename bash.ico Ubuntu.ico
rename Saki-NuoveXT-Apps-suse.ico bash.ico


Depois renomear o atalho normalmente (clica com o botão da direita, More > Open file location).


Instalando o screenfetch...

zypper in screenfetch

e voilá:


openSUSE Leap 42.2 rodando nativamente no Windows 10

É isso aí, eu vivi para ver o Windows rodando o Linux!