Roberto Colistete Jr.

Blog sobre computação física, científica e móvel : (Micro)Python, CUDA, smartphones, Linux, etc

Rodando Linux em um Mini-PC via múltiplo boot

Posted by robertocolistete em 23/09/2012

É possível um Mini-PC de US$40-70 rodar Linux desktop com velocidade semelhante a PC’s de US$500-1000 ? A resposta é… sim !

O segredo é comprar um Mini-PC com processador Allwinner A10 e entrada para cartão microSD, escolher uma imagem Linux adequada, gravar tal imagem no cartão microSD e… ligar o Mini-PC com o microSD inserido, é só ! Vamos então por partes.

1) Escolher um Mini-PC’s (AK/MK802, MiniX, MiniX Plus, etc) com processador Allwinner A10 (1 núcleo Cortex A8 @ 60-1008 MHz, GPU Mali-400). Isso pois eles rodam Linux desktop via boot no cartão microSD devido ao fato que o Allwinner A10 permitir múltiplo boot (via memória interna, microSD, USB, etc) e ter as especificações abertas para a comunidade Linux. Evite outros processadores, p.e., os mais rápidos Amlogic M3 (1 núcleo Cortex A9) ou RockChip RK3066 (2 núcleos Cortex A9) não têm Linux para eles e talvez nunca cheguem a ter (16/01/2013 : vide final desse artigo, agora alguns Mini-PC’s com RK3066 tem Ubuntu funcional e fácil de instalar). Sugestões com Allwinner A10 : MK802 formato pen-drive por (US$55,90 em 09/2012, agora em 2013 custa) US$45,60, MiniX com vários conectores por (US$67,80 em 09/2012, agora em 2013 custa) US$59,99, ambos com 1GB de RAM, 4GB de memória interna, Android 4.0 pré-instalado, etc.

2) Escolher uma imagem Linux no tópico “Install Ubuntu Linux 12.04” do fórum MiniAnd e fazer download. Eu recomendo :

  • LUbuntu 12.04 com resolução 720p (HD) para melhor desempenho, use imagem versão 4 1GB se o Mini-PC tiver 1GB de RAM, use imagem versão 3 512MB se o Mini-PC tiver 512MB de RAM (a versão 4 tem bug, na verdade é para 1GB de RAM). LUbuntu usa LXDE que é um ambiente gráfico muito leve e essa imagem está bem configurada;
  • XUbuntu 12.04 v1, feita para resolução 720p (HD). XUbuntu usa XFCE que é um ambiente gráfico leve e essa imagem está quase 100% bem configurada.

3) Seguir no tal tópico as instruções de instalação da imagem em um cartão microSD. Recomendo cartão microSD de 8GB ou mais classe 10 de boa marca para ser ter boa velocidade.

4) colocar o microSD no Mini-PC e dar boot conectado a um monitor/TV HDMI, teclado e mouse USB (se necessário via hub USB). A senha de login é “miniand” para o usuário “miniand” (que é administrador). Voilà, temos um L/XUbuntu 12.04 desktop completo pronto para uso !

XUbuntu 12.04 rodando LibreOffice 3.5.4, Firefox 15.0, terminal, etc, no Mini-PC MiniX H24 com teclado & mouse USB, hub USB, monitor de 21,5″ (via conversor HDMI-VGA) com resolução HD (1280 x 720).

Minhas experiências usando o Mini-PC modelo MiniX H24 TV Box (512MB de RAM) e um cartão microSD Kingmax 8GB classe 10 :

a) LUbuntu 12.04 v3 720p 512MB :

  • vem com kernel 3.0.36, 306MB de RAM livres (ou mais de 800MB se usar Mini-PC e imagem de 1GB), 511MB de swap. Originalmente 3,4GB em “/” com 1,9GB ocupados;
  • softwares pré-instalados : editor de textos Abiword 2.9.2, planilha Gnumeric 1.10.17, navegador web Chromium  18.0.1025.151 (sem Java e sem Flash), Adobe Reader 3.4.0, editor Leafpad, Galculator, mtPaint, cliente de email Sylpheed, PCManFM file manager, gerenciador de instalações Synaptic, Python 2.7.3, etc;
  • problema de ficar tentando conectar “Wired network”, a solução é apagar tal conexão ou desabilitar sua conexão automática;
  • problema de LUbuntu Software Centre não funciona;
  • instalei o Onboard (teclado virtual) via “sudo apt-get install xvkbd onboard python-gi-cairo”, é prático quando não se quer usar teclado físico;
  • eu recomendo instalar softwares via terminal, com comando “sudo apt-get install –no-install-recommends <nome-do-pacote>”, pois evita instalação de pacotes recomendados, aproveitando o espaço limitado. Sugestões de pacotes : htop, nano, gnome-system-monitor, firefox, browser-plugin-gnash (Flash plug-in 10.1 da comunidade), openjdk-6-jre / icedtea6-plugin (Java 1.6.0 plug-in da comunidade), thunderbird (cliente de email), vino (servidor VNC), libreoffice (suite Office completa), evince (visualizador de PDF, PS, etc), vlc e smplayer (para ver vídeos), gimp / gimp-data-extras /gimp-plugin-registry (editor gráfico GIMP), texlive-latex-recommended / abntex / texlive-lang-portuguese / prosper / latex-beamer / texmaker (TeX/LaTeX/TeXMaker), gedit / gedit-plugins / gedit-latex-plugin (editor de textos/programação), maxima / wxmaxima / maxima-share (wxMaxima Computer Algebra System), dpkg-dev e build-essential (programação C/C++ via gcc/g++/make/etc), ipython, python-numpy, python-scipy python-matplotlib, python-mpmath, python-pyglet, python-sympy, mayavi2 (Python científico);
  • é trabalhoso mudar idioma para português no sistema e teclado;

b) XUbuntu 12.04 v1 :

  • vem com kernel 3.0.8 Android, 306MB de RAM livres, 511MB de swap. Originalmente 3,4GB em “/” com 2,3GB ocupados;
  • softwares pré-instalados : editor de textos Abiword 2.9.2, planilha Gnumeric 1.10.17, navegador web Firefox 11.0 (sem Java e sem Flash), cliente de email Thunderbird 11.01, GIMP, Adobe Reader 3.4.0, editor Leafpad, Thunar file manager, gerenciador de instalações Synaptic, teclado virtual Onboard, Python 2.7.3, gcc 4.6.3, etc;
  • problema da rede Internet não funcionar, a solução é adicionar os grupos inet e inetadmin ao usuário miniand : “sudo groupadd -g 3003 inet; sudo groupadd -g 3005 inetadmin; sudo usermod -aG inet; sudo usermod -aG inetadmin”;
  • eu recomendo instalar softwares via terminal, com comando “sudo apt-get install –no-install-recommends <nome-do-pacote>”, pois evita instalação de pacotes recomendados, aproveitando o espaço limitado. Sugestões de pacotes : htop, nano, gnome-system-monitor, indicator-multiload, browser-plugin-gnash (Flash plug-in 10.1 da comunidade), openjdk-6-jre / icedtea6-plugin (Java 1.6.0 plug-in da comunidade), vino (servidor VNC), libreoffice (suite Office completa), evince (visualizador de PDF, PS, etc), vlc e smplayer (para ver vídeos), gimp-data-extras /gimp-plugin-registry (editor gráfico GIMP), texlive-latex-recommended / abntex / texlive-lang-portuguese / prosper / latex-beamer / texmaker (TeX/LaTeX/TeXMaker), gedit / gedit-plugins / gedit-latex-plugin (editor de textos/programação), maxima / wxmaxima / maxima-share (wxMaxima Computer Algebra System), dpkg-dev e build-essential (programação C/C++ via gcc/g++/make/etc), ipython, python-numpy, python-scipy python-matplotlib, python-mpmath, python-pyglet, python-sympy, mayavi2 (Python científico);
  • é fácil mudar idioma (para pt_BR, por exemplo), tal como se faz no XUbuntu, i.e., basta ir em “Configurations -> Language Support”, adicionar idioma, selecionar português, depois arrastar “Português (Brasil)” para o topo da lista de idiomas. O idioma do teclado é depois alterado via “Configurações -> Gerenciador de Configurações -> Teclado -> Disposição”, adicionado “Português (Brasil)”.

Em ambas as imagens :

  • coloquei login sem senha para o usuário “miniand” (basta clicar com o mouse na tela de login);
  • para aumentar o espaço, use em Linux PC o software “gparted” com cartão maior que 4GB e aumente a partição de 3,4GB para algo maior;
  • adicionei repositórios via as seguintes linhas no arquivo “/etc/apt/sources.list” : “deb http://ports.ubuntu.com/ubuntu-ports precise-updates main universe multiverse”, “deb http://ports.ubuntu.com/ubuntu-ports precise-backports main universe multiverse”, “deb http://ports.ubuntu.com/ubuntu-ports precise-security main universe multiverse”. Depois mandei “sudo apt-get update; sudo apt-get upgrade”;
  • mesmo com 306MB de RAM livre o LUbuntu/XUbuntu roda tranquilamente, com pouco uso de CPU e RAM;
  • via porta USB host (ou hub USB conectado nela) é possível conectar pendrive (16GB, etc) e até HD externo (testei de 500GB) se o hub USB tiver alimentação externa.

Comparado com o Android 4.0 no MiniX, o boot do Android é mais lento (1 minuto e 40s), a multitarefa do Linux é melhor, p.e., durante instalação de programas via “apt-get install” é viável usar o Mini-PC enquanto que no Android 4 é inviável fazer qualquer coisa durante instalação de programas. Mas o Android no Mini-PC é melhor para tocar vídeo e gráficos 3D pois a GPU Mali-400 tem suporte a aceleração de vídeo no Android mas (ainda) não no Linux.

Tabela de desempenho de alguns softwares rodando em notebooks (com XUbuntu 12.04 e Windows 7) e no Mini-PC MiniX H24 com cartão microSD de 8GB classe 10. Formato : tempo em segundos para abrir pela 1a vez / na 2a vez (versão do software), exceto para o sistema operacional (1o tempo é de boot até tela de login, 2o tempo é após login até ficar disponível ao usuário).

Software XPS15-U12.04 A1215B-XU12.04 A1215B-Win7 MiniX-LU12.04 MiniX-XU12.04
Sistema operacional 32s / 29s 40s / 33s 33s / 17s 34s / 14s 34s / 28s
LibreOffice Writer 6s / 1s (LO 3.5.4) 7s / 2s (LO 3.5.4) 26s / 10s (LO 3.5.6) 9s / 5s (LO 3.5.4) 9s / 5s (LO 3.5.4)
Abiword 5s / 1s (2.9.2) 7s / 3s (2.9.2) 6s / 2s (2.9.2) 9s / 8s (2.9.2) 9s / 8s (2.9.2)
Gnumeric 3s / 1s (1.10.17) 3s / 1s (1.10.17) 7s / 2s (1.10.16) 4s / 3s (1.10.17) 3s / 2s (1.10.17)
Firefox 4s / 1s (14.0.1) 4s / 2s (14.0.1) 5s / 3s (14.0.1) 6s / 5s (15.0) 8s / 4s (15.0)
TeXMaker 5s / 1s (3.2) 5s / 1s (3.2) 6s / 2s (3.5) 3s / 2s (3.2) 3s / 2s (3.2)
wxMaxima 2s / 1s (11.08) 2s / 1s (11.08) 2s / 1s (11.08) 2s / 2s (11.08) 2s / 2s (11.08)

Em azul temos os melhores tempos, em vermelhos os piores. Onde :

  1. XPS15-U12.04 : notebook Dell XPS 15 L502X com Ubuntu 12.04 64 bits, Core i7 2670QM 4 núcleos @ 2,2-3,1 GHz, 1+6 MB cache L2/L3, 8GB RAM DDR3 1.333 MHz, 1TB 5.400 RPM SATA hard drive;
  2. A1215B-XU12.04 : notebook Asus 1215B com XUbuntu 12.04 64 bits, AMD C-50 2 núcleos @ 1,0GHz, 1 MB cache L2, 2GB RAM DDR3 1.066 MHz, 320 GB 5.400 RPM SATA hard drive;
  3. A1215B-Win7Pro : notebook Asus 1215B com Windows 7 Starter 32 bits, AMD C-50 2 núcleos @ 1,0GHz, 1 MB cache L2, 2GB RAM DDR3 1.066 MHz, 320 GB 5.400 RPM SATA hard drive;
  4. MiniX-LU12.04: Mini-PC MiniX H24 com LUbuntu 12.04 ARM 32 bits, Allwinner A10 (1 Cortex A8 @ 1008 MHz), 1 GB RAM DDR3 a 800 MHz, 512 KB cache L2, GPU Mali-400MP a 300 MHz, microSD 8GB classe 10
  5. MiniX-XU12.04: Mini-PC MiniX H24 com XUbuntu 12.04 ARM 32 bits, idem.

Analisando a tabela acima vemos que :

  • Mini-PC com Linux realmente é viável para trabalhar substituindo um PC desktop, ao contrário com Android, digo isso baseado em horas de uso real;
  • no Mini-PC, LUbuntu é em geral um pouco mais rápido que XUbuntu;
  • LUbuntu/XUbuntu no Mini-PC é bem competitivo com Windows 7 Starter 32 bits em um notebook barato, chegando a ser mais rápido em 4 dos 7 ítens;
  • LUbuntu/XUbuntu no Mini-PC é competitivo com Ubuntu/XUbuntu 12.04 64 bits em notebooks baratos e mesmo notebooks topo-de-linha, sendo o Mini-PC pouco mais lento, igual ou mesmo mais rápido;
  • se os notebooks tivessem memória SSD (flash), os tempos seriam no máximo 1-2 s e mais rápidos que os do Mini-PC.

Minha opinião sobre Linux em Mini-PC : as imagens estão quase prontas em termos de maturidade para uso por usuário iniciante; o desempenho do Linux usando o Allwinner A10 já é bom comparativamente; se a comunidade conseguir aceleração da GPU Mali 400 no Linux, o desempenho ficará ainda melhor.

Com esse poder de processamento (2-4 núcleos Cortex A9), então poderemos ver Linux em Mini-PC’s ultrapassando alguns computadores PC !

Alguns links interessantes de Linux em Mini-PC’s :

Obviamente que o Mini-PC, sem o cartão microSD inserido, inicializa o Android (tipicamente 4.0) pré-instalado, vide artigo anterior “Configurando e testando um Mini-PC com Android 4.0.4“.

Sobre Mini-PC’s com 2-4 núcleos Cortex A9 (Atualizado em 10 e 16/01/2013)

 Quanto a nova geração de processadores com 1/2/4 núcleos Cortex A9, alguns Mini-PC’s já tem suporte inicial a Linux :

Esse suporte a Linux nesses Mini-PC’s com 2 a 4 núcleos Cortex A9 apareceu de Novembro de 2012 para cá, talvez daqui 1-2 meses esteja mais maduro com maior funcionalidade (WiFi, Bluetooth, etc) e facilidade de instalação para vários modelos de Mini-PC’s. (17/01/2013) Por enquanto os modelos acima com Cortex A9 não vem com root, logo precisa rootear ou gravar novo firmware/imagem com Android, antes de instalar Linux com duplo boot.

(16-17/01/2013) Até 10/01/2013, se quisesse rodar Linux em Mini-PC, a recomendação era um Mini-PC do tipo MK802 (ou semelhante) com processador AllWinner 10 (1 núcleo Cortex A8), pela funcionalidade (WiFi funcionando, etc) e facilidade de instalação, pois já vem rooteado. Mas entre 11 e 15/01/2013, os Mini-PC’s UG802, MK802 e GK802 ganharam versões iniciais de Ubuntu bastante funcionais (com WiFi, etc) e quase tão fáceis de instalar.

35 Respostas to “Rodando Linux em um Mini-PC via múltiplo boot”

  1. […] Rodando Linux em um Mini-PC via múltiplo boot […]

  2. Kristopher said

    Hi – Have you cross compiled the uvc driver into any of these distributions? This would enable webcam support which would be really helpful.

  3. Thiago said

    Voces chegaram rodar o XBMC no linux?

  4. Andre said

    Bom dia Roberto tudo bem ? Gostaria de Parabenizar pelo blog. Tenho um desse netbook:http://www.maniavirtual.com.br/netbook-airis-kira-tela-10-imapx210-arm11-512mb-de-memoria-leitor-de-cartoes-hdmi-android-2-3-branco-0029586.html?utm_source=Google&utm_medium=Shopping&ori=GShop&CodPromo=201

    Mas não consigo de maneira alguma rodar ubuntu nem debian nada nele, o que acontece é que nem boot ele dá. Gostaria de saber se não for pedir muito se eu mandar um desse para você, seria possível você tentar rodar ubuntu nele ?

  5. […] Rodando Linux em um Mini-PC via múltiplo boot […]

  6. Olá Roberto

    Estou com um MINI PC Android, com MK802, saída HDMI e praticamente o mesmo sistema genérico que o seu.
    Havia usado o Miniand, com Ubuntu, Lubuntu e tudo perfeitinho. Sem nenhum problema.
    Porém, tentei fazer algo para torná-lo mais útil em um projeto social. Estava tentando usá-lo como um terminal burro usando o LTSP.
    Você conhece alguma imagem pronta para isso? Realmente seria muito bom ter uns 5 pcs como terminal burro, aproveitando o processamento de um servidor e máquinas com custo bem baixo como este pczinho.
    Inclusive usando SD’s menores para dar o boot.

    Vi esta matéria sobre dar boot com wireless no ltsp – http://popblog-popinfo.blogspot.com.br/2009/09/wireless-ltsp-no-ubuntu-904.html
    Que poderia ser adaptado para uma versão de distro pequena só para bootar no ARM.

    Pesquisei não achei referências a respeito. Na Miniand tem um tópico meu criado para isso.
    Alguma idéia? Saberia se é possível?
    Estou estudando e tentando criar uma imagem limpa e bootável para esta tarefa.
    Se possível de um feedback. Até!

    • Olá Adriano,
      Eu também tenho interesse em uso de Mini-PC’s para inclusão social, porém mais aplicado em educação (estudantes carentes, escolas, etc). O principal empecilho que vi para isso, no Brasi atualmente : alto custo de monitor/TV com HDMI, indisponibilidade de Mini-PC’s no Brasil (somente via importação).
      Sobre uso LTSP, não tenho experiência e nem como ajudar diretamente.
      Se você conseguir algo, fique à vontade em postar aqui.

      • frederico campos said

        Ola Roberto, eu também tenho muito interesse em colaborar para propagar a nova computação nas escolas, principalmente as publicas, sou de BH. qual seu mail?para podermos trocar mais informações… eu trabalho com iluminação led e automação… o meu eh fredcambh@gmail.com

  7. jose Sousa said

    Roberto estou pensando o mesmo, o uso de minipcs para a inclusao social, mas tambem para uso comercial, como controle de caixas, automacao comercial.

  8. […] Rodando Linux em um Mini-PC via múltiplo boot […]

  9. gostaria de saber como reinstalar a firmware andriod no meu mini pc pois ele nao dá video de jeito nenhum já procurei como fazer isso mas não achei nada será que alguem pode me ajudar

  10. Alexandre said

    Meu mini pc veio com apenas 256 de RAM… Será que consigo instalar esse linux pra 512 de RAM nele sem problemas? Você conhece algum app pra android que mostre o tipo de processador que o mini pc está usando?

    • Nunca vi Mini-PC com 256MB. Normalmente vem com 512MB-1GB, e parte da memória é usada pela GPU, sobrando uns 300 a 800 e poucos MB.
      System Panel Lite, é um ótimo gerenciador de tarefas, gratuito e mostra informações do dispositivo.

  11. radjalma said

    amigo roberto se possivel me tire uma duvida: comprei mês passado um minipc UG007 que dizia ter 1gb de memória blothoot etc. a dúvida é que não sei se ele é de 1gb ou de apenas 512mb. pois mexendo no menu dele encontrei algo como 372mb livres ? como saber exatamente se ele tem 1gb de ram e 8gb de espaço memória como especificado pelo vendedor quando comprei ? grato pela possivel informação!

    • Instale no Android o “System Panel Lite”, por exemplo. Nele tem informações do dispositivo, com detalhes de RAM, processador, etc. É normal mostrar uns 800-900 MB para um Mini-PC com 1GB, pois o restante é usado para vídeo. Que eu saiba, todos os UG007 (na DealExtreme, ao menos) tem 1GB de RAM.

  12. Peguei esse aqui http://www.labdegaragem.org/loja/index.php/45-equipamentos/android-4-0-mini-pc.html qual é a melhor opção: lubuntu ou xubuntu? Compensa pegar esse microsd (http://produto.mercadolivre.com.br/MLB-479175614-carto-memoria-transcend-microsdhc-32gb-class-10-uhs1-90mbs-_JM) e esse hub (http://produto.mercadolivre.com.br/MLB-483937373-hub-com-7-portas-usb-20-480mbps-fonte-bi-volt-aproveite-_JM)?

  13. Jackson Soares said

    E ai amigo, será que é possível utilizar pendrive de 16Gb no lugar do Cartão SD?

    • Dependendo do Mini-PC ele permite boot através de pendrive USB.
      Porém normalmente esses pendrives não são rápidos, i.e., tipicamente classe 2 a 4.
      E recomendo usar um microSD classe 10 de boa marca. Faz muita diferença dar boot em Linux no Mini-PC com um microSD bem rápido.

  14. israel said

    ola Roberto, gostaria de uma informação sua se for possivel comprei um mini pc tv estalei tudo direito entrou todos os programa mas não entrou internet vc pode me explicar por que e me ajuda, não enten
    do muito eu pensei que colocando o mini pc ja entrasse tudo e não precisasse de mas nada.

    • Olá Israel,
      Sua pergunta é muita genérica. Pois podem ser vários problemas possíveis entre a conexão (WiFi ?) entre o MiniPC (qual modelo ?) e seu roteador WiFi, resultando em incompatibilidade do seu roteador :
      – uso de segurança (WEP, WPA, WPA2) no roteador, tente primeiro tirar a segurança no roteador e ver se o MiniPC conecta. Já tive smartphones/tablets com esse problema;
      – atribuição de IP (dinâmico) não está funcionando bem (já vi isso ocorrer para tablets), pode-se contornar isso associando um IP fixo ao MAC address do MiniPC.
      De 3 Mini-PC’s que eu usei/uso, todos conectaram facilmente a diferentes roteadores WiFi.

  15. Mário César said

    Olá Roberto,
    Estou com um MK-802 S1, com 1G, instalei a imagem do LUBUNTU na SD-Card , mas não deu boot, ou melhor, não aconteceu nada. Acendeu o LED de power-on, resetei pela pequena chave, removi o cartão e coloquei novamente, mas nada ocorreu, o minipc não deu sinal de vida. Minha SD é ScanDisk 4G HC. Não sei se é classe 10. O que pode estar ocorrendo ?

  16. patrique sampaio said

    Ola roberto, primeiro obrigado pelas informacoes, instaleu o Lubuntu, no meu mini pc , e o resultado [ incrivel, chega a ser mais rapido do que o netbook acer , no android era impraticavel, mas a funcao que mais mi interessa e ver videos, e nao estou conseguindo instalar o adobe flash pelo terminal, ja tentei tudo, sudo apt-get install flashplugin-installer, etc como alternativa tentei o Ubuntu After Install mas na ora da senha de administrador da erro, nao aceita miniand, nem Miniand ou admin como faco para resolver isso?
    obrigado!

Deixe um comentário