Instalando Linux no PlayStation 2

Transforme seu antigo console num computador!


| Se você apoia nosso site, desative o AdBlock quando visitá-lo, inclusive em Mobile!
Os anúncios são poucos e não invasivos. Se quiser contribuir com nosso trabalho, clique em qualquer banner de sua preferência, exceto dos Parceiros. 
Mais detalhes clicando aqui.


1. Introdução

O PlayStation® 2 é um dos consoles mais bem sucedidos da história. Tão icônico que foi tema de nosso post (aqui) sobre o poder de fogo dos consoles comparado com computadores gamers.

E hoje mostro como funciona a instalação do Linux no PlayStation 2 Fat, ou a execução do LiveDVD se for um PlayStation 2 Slim.

2. Senta que lá vem História

Em 2002 a Sony lançou um kit disponibilizado para PlayStation 2, ao custo de US$ 199.00, que continha um disco rígido de 40GB, teclado, mouse, adaptador VGA, adaptador de rede (ethernet) e uma distribuição Linux, dando assim a possibilidade de transformar o PlayStation 2 num computador rodando em cima de um software livre. Foi lançado no Japão e nos Estados Unidos, mas posteriormente foi retirado do mercado nos EUA por falta de vendas.

Kit Linux para PlayStation 2

A ideia, apesar de um fracasso entre a massa gamer e entusiasta, chamou a atenção de cientistas como os pesquisadores do National Center for Supercomputing Applications – NCSA (Estados Unidos) que criaram um cluster unindo 70 consoles PlayStation 2 e criando assim um super computador!

O que tornou o PlayStation interessante aos olhos dos pesquisadores não foi exatamente seu processador, mas justamente o chip de processamento vetorial, a GPU do console, chamada de “Emotion Engine” e capaz de realizar 6,5 bilhões de operações matemáticas por segundo. Os cientistas decidiram então utilizar esse poderio computacional em aplicações científicas.

O Linux Kit para PlayStation 2 possibilita uma alteração radical da finalidade para a qual o console foi inicialmente projetado. O kit dá ao programador acesso direto às unidades de processamento vetorial do console, além de fornecer um ambiente de desenvolvimento e trabalho que contém todas as ferramentas tradicionais de outras distribuições Linux. Isto permite que as unidades vetoriais possam ser usadas para tarefas de computação intensivas em cálculos e não apenas para cálculo de gráficos. – Tal qual vemos hoje quando GPUs são usadas para minerar Bitcoins por serem mais rápidas que CPUs!

A um custo total de US$50.000,00, uma pechincha quando se trata de supercomputadores, o sistema já foi capaz de executar meio trilhão de operações por segundo. E não se trata de algo mágico: tudo o que os cientistas tiveram que fazer, em termos de hardware, foi conectar os equipamentos, utilizando um “switch” de alta velocidade.

O pesquisador Craig Steffen, ao falar sobre as dificuldades da construção do cluster, brinca: “Levou um bocado de tempo porque tivemos que abrir todas as caixas e tira-los dos protetores plásticos.”

Algumas das ferramentas comumente encontradas nos clusters de alto desempenho tradicionais foram adicionadas ao sistema, incluindo a MPI (“Message Passing Interface”), que permite que os consoles individuais comuniquem-se uns com os outros e executem aplicações simultaneamente em todas as máquinas. Estão também disponíveis o PBS (“Portable Batch System”) e o Maui Scheduler, que gerencia tarefas em sistemas cluster.

2.3 PlayStation 3

Ainda falando em consoles e linux, tentativa semelhante ocorreu á época do lançamento do PlayStation 3 Fat, que suportava o Ubuntu 9.04! Mas após uma polêmica atualização de firmware, o PS3 deixou de suportar Linux com a justificativa da Sony de que isso evitaria a pirataria. A Força Aérea dos EUA e a UNICAMP em Campinas/SP são alguns exemplos de instituições que utilizaram consoles PS3 para desenvolver supercomputadores baratos.

Supercomputador feito com 1500 PlayStation’s 3 da Força Aérea dos EUA
A Universidade Tecnológica de Eindhoven (TU/e) também entrou na brincadeira e desenvolveu seu próprio cluster com 200 unidades do PS3; um de seus feitos foi quebrar uma hash MD5!

Ter um sistema Linux num console de videogame não é novidade. Pena que a Sony não quis levar a ideia adiante no PS2, no PS3 ou mesmo no PS4, seria uma grande oportunidade para entusiastas e programadores.

Mas o sonho, em termos, não deixou de existir.
Quem ainda possuir um PS2 Fat destravado, uma Expansion Bay e um HDD IDE, poderá instalar o Linux!

3. Requisitos e Informações

  • Seu console deve ser destravado/desbloqueado. Não importa se está com ou sem modchip.
  • O PlayStation 2 que suporta nativamente o sistema é o Fat.
    Porém ele não tem rede ethernet a menos que você utilize uma Expansion Bay, facilmente vendida no MercadoLivre e que adiciona também uma entrada IDE para HDD.
  • No PS2 Slim o Linux só abre via LiveDVD.
    Nem perca tempo tentando via HDD Externo, a porta USB é 1.0 e é mais lenta que a leitura de um DVD.
Expansion Bay do PlayStation 2 Fat: Adiciona modem com conexão á internet e slot para disco rígido IDE.
  • Você deve ter 1 memory card vazio para gravar os arquivos necessários, seja pra o PS2 Fat ou o Slim.
  • Se for usar um PS2 Slim, tenha um pendrive em mãos para poder gravar arquivos nele. Devido a ausência de um disco rígido, o LiveDVD não tem persistência e todas as alterações serão perdidas caso você reinicie o console.
  • Se for usar um PS2 Fat, tenha um disco rígido IDE de 40 ou 60Gb, plugue na Expansion Bay.
    Ele funcionará a internet mesmo sem HDD! Basta ter a expansion bay devidamente parafusada atrás.
  • Tenha em mãos teclado e mouse! Pode deixá-los plugados no PS2.

3.1 Você precisará dos seguintes arquivos:

  • LiveDVD do Linux BlackRhino 1.0, baseado em Debian: Clique aqui!
    Grave um DVD com essa imagem de disco.
  • Ter o uLaunchELF no MemoryCard ou via LiveCD, ou tenha outro gestor de arquivos que permita iniciar arquivos .elf no seu PS2. Para esta parte, recomendo a leitura deste outro tutorial!
    O uLaunchELF é um gerenciador de arquivos que permite por exemplo executar homebrews em .elf, copiar arquivos do Memory Card pro Pendrive e vice-versa, etc.; e ele permite que você inicie o Linux pelo LiveDVD. Portanto ele é muito importante!
  • Baixe o “KernelLoader 3.0” e coloque-o na raíz do MemoryCard.
    Ele é basicamente um arquivo .elf pequeno que compõe o vmlinuz e dará o pré-início no sistema.
    Pode ficar junto dos arquivos do uLaunch e/ou do Free Memory Card Boot, fica a gosto do usuário.
    Apenas lembre-se de onde o colocou!
    Download clicando aqui.

4. Iniciando

De maneira simples e direta:

  • Tenha o uLaunchELF pronto com o KernelLoader3.0.elf no seu MemoryCard.
    Ao iniciar o console, coloque o DVD do Linux recém gravado, e abra o uLaunchELF.
  • Pelo uLaunchELF, navegue até cdfs:/ (seu DVD) e dê bolinha no arquivo KLOADER.elf.
    O Kernel Loader pode vir em diversas versões, as mais recentes são 2.7 e 3.0.
    O bootloader do Linux de PlayStation 2 deve iniciar agora!
Se você chegou até aqui, está tudo certo!

Agora vem uma parte chatinha. Para o boot apropriado do sistema no seu console, você vai ter que navegar até alguns menus e fazer algumas configurações. Se essa tela surgir com “booting in 3 seconds”, pressione X uma vez pra ir ao menu principal deste bootloader.

Tal qual todo sistema Linux, você precisa de um kernel vmlinuz e uma memória RAM initrd. Você vai conseguir os 2 da seguinte maneira:

Menu principal

OBS: Se o KLOADER.elf for o 3.0, você deve descer até “Advanced Options” para ver o menu da imagem!

  1. Vá até Select Kernel
  2. Navegue até CD/DVD embaixo
  3. Clique na pasta BOOT
  4. Selecione o arquivo vmlinuz como na próxima imagem. Confirme com X.

  1. Agora vá até o menu Select RAM Disc
  2. Repita o caminho até BOOT e selecione Initrd:

Agora atento:

Vá em Configuration Menu, apenas desça e encontre essa entrada:

  • Se seu PS2 for o Fat, dê X deixando-a VERDE!
  • Se seu PS2 for Slim, dê X deixando-a VERMELHA! (como na imagem)

Explicando, o suporte a disco rígido e internet só existe no Fat. Se estiver habilitado no Slim, ele vai dar kernel panic durante o boot do liveDVD.

Suba os menus e volte ao primeiro menu.
Dentro de Configuration Menu existe um menu que grava os dados no Memory Card, assim você não precisa repetir isso tudo sempre que iniciar o sistema. Após salvar, dê X em “Boot Current Config”.

Se seguiu tudo á risca, selecionou a imagem de RAM e o kernel; e desativou o módulo de internet se estiver usando um PS2 Slim, o sistema vai começar a carregar agora!

Caso surjam dúvidas ou erros desconhecidos, existem mais detalhes neste tutorial, de onde baseei a criação deste post!

4.1 Instalando o sistema no HDD do PS2 Fat:

  • Se estiver usando o PS2 Fat com disco rígido, poderá instalar o sistema a partir do LiveDVD!
    Para isso, siga este tutorial, pois é um processo extenso que requer modificar os pontos de montagem do sistema no kernel loader, saindo do DVD para HDD.
  • O referido tutorial ensina como instalar por uma .ISO do DVD presente direto de um Pendrive. Não ensinei isso no tutorial porque o USB do PS2 é 1.1 e é muito lento! E o LiveDVD possui melhor suporte de boot.

5. Discos Oficiais da Sony

  • Somente para usuários do PS2 Fat!

Os famigerados discos do Linux, originalmente desenvolvidos pela Sony, se perderam a muitos anos.
Mas consegui encontrá-los recentemente e o download se encontra aqui!
Não é pirataria pois é software livre e abandonware, a Sony não dá suporte a esse sistema a mais de 2 décadas.

São 2 DVD’s, o primeiro instala o sistema e o segundo configura e serve como disco de recuperação.

Caso deseje baixar em 39 partes, para quem tem internet lenta, clique aqui.
Caso deseje baixar os dois arquivos .ISO’s diretamente, clique aqui.

Por ser oficialmente suportado, basta gravar as ISO’s em DVD 1 e o DVD 2 e iniciar o DVD 1 no seu PS2 Fat com o disco rígido e a Expansion Bay devidamente instalados. Aparentemente não requer que o PS2 Fat seja destravado.

Detalhe:
O sistema original da Sony tinha uma grave incompatibilidade por exigir que a TV usada fosse com suporte a Sync-on-Green. Esse suporte é raro e, caso ausente, deixa a imagem da TV estourada, muitas vezes na cor rosa. A maioria das TV’s atuais não suportam sync-on-green! Teje avisado.

Não cheguei a testar o sistema oficial da Sony, apenas o fork BlackRhino do qual abordo mais abaixo.
Mas garanto que as .ISO’s funcionam adequadamente, não estão corrompidas pois consegui abri-las no PS2 Slim. Portanto não darei mais detalhes sobre ele aqui.

6. Executando o LiveDVD BlackRhino 1.0

Muito bem, você passou por todo o sofrimento e conseguiu iniciar seu sistema Linux no PlayStation 2.
E mesmo que não o tenha conseguido, mostro um pouco do que encontrará nele!

O hardware do PS2 é curiosamente poderoso (para a época) mas fraco para os dias atuais. Ele vinha com 32Mb de RAM, 4Mb de VRAM e CPU de 300Mhz.

Instalando o sistema num HDD, você poderá configurar 2Gb de SWAP permitindo rodar aplicações mais pesadas! – Lembre-se que também será extremamente lento.

O usuário padrão se chama “Adent”; a interface gráfica é o Fluxbox, possui compilador GCC (falarei mais dele!), BASH (XTerm) entre outros inúmeros pacotes curiosamente familiares, como o SSH, dd, etc.

Rodando sob o Kernel Linux 2.4.17, o hardware é arquitetura MIPS.

  • Quadrado abre o menu
  • X seleciona o que pretende abrir
  • Login do usuario padrão é automatico;
  • O usuario root é acessado digitando apenas “su” no X-Term
    O usuário convidado é Guest, login remoto pelo SSH é:
    ssh guest@IP-do-PS2
    Verifique o IP dele através de outro PC, dando um “sudo arp-scan –localnet” num PC dentro da sua rede local; ou dando “ifconfig” no XTerm do PS2.
  • Senha: guest
  • Digitando “su” você acessa root remotamente!OBS: O PS2 não possui firewall nativa e sua segurança geral é muito baixa.
    Utilize-o para tarefas simples que não requerem alta segurança de dados pois ele é facilmente hackeável; acessível remotamente.

O sistema possui diversos programas nativos como editor de imagens GIMP, os browsers Dillo e Firefox, Pidgin, etc.

  • NÃO ABRA O FIREFOX! Mesmo no Fat com sistema instalado no disco rígido, ele é extremamente pesado e lento, vai congelar o sistema. O Dillo Browser é leve e rápido.
Dillo Browser abrindo este site no PS2 Fat!
Gerenciador de Arquivos PathFinder do sistema.
Editor de Textos NANO
Comando top exibindo os processo em execução – Nota-se que são poucos!
Listagem dos daemons em execução; Init é o gestor de daemons do sistema.
Lista de binários nativos do sistema em /bin
Lista de binários nativos do sistema em /sbin

7. Compilação

O sistema possui o compilador GCC e permite que você compile programas para ele!
O problema é que é difícil encontrar pacotes simplórios que não possuem muitas dependências para compilar. Nos testes que fiz, compilei com sucesso o pacote NetCat, ausente no sistema. O NetCat é pequeno canivete suíço em redes que caiu em desuso com os anos, possui poucos pacotes e poucas dependências.

NetCat compilado bem sucedido!

Você tambem pode compilar seus programas em C dentro do PlayStation 2. Basta enviar o arquivo via Pendrive, explorá-lo com o gerenciador de arquivos – estará em /dev/mnt ou /dev/media – e compilar com o GCC.

8. Conclusão

Com certeza executar Linux num PlayStation 2 estará longe de ter bom desempenho, mas a presença das principais ferramentas clássicas do Busybox e do GNU torna-o interessante. Poder compilar algo para a arquitetura MIPS usando o GCC ou mesmo editar textos, dar comandos remotos a qualquer PC pelo SSH, navegar na internet mesmo que basicamente já que o browser não possui um bom suporte a HTML5, são possibilidades que tornam o BlackRhino um sistema para PS2 que deixam o console mais interessante nesse aspecto.

#UrbanCompassPony

Fontes:
Cluster PS2 da NCSA: Imagem e informações.
Força Aérea dos EUA: Cluster com 1500 PS3
TU/e: Quebra de hash MD5 com PS3 
Imagens do PS3 Lab: TU/e
Fonte histórica
Supercomputador da UNICAMP

8 comentários em “Instalando Linux no PlayStation 2”

  1. eu tenho o ps2 fat com o mordem original, um hd ide de 160 gb e o leitor bom, os tres funcionado bem, se eu grava o linux original da sony em 2 dvd como diz ai no artigo da pra intalar apati dos dvds?

    Responder

Deixe um comentário