sábado, 14 de marzo de 2009

Debian en Playstation 3

Es bien sabido que la PlayStation 3 es una plataforma donde se puede instalar otro sistema operativo alternativo al proporcionado por Sony, más específicamente se puede instalar Linux. Y dado que Debian es la distribución con más plataformas soportadas, no se podía quedar atrás con la PS3.


Este post es para quienes tenga una PlayStation 3 y quieran " jugar" con Debian en esta plataforma, sin más, aquí les dejo los pasos que seguí para instalarlo...



Necesitaremos:

  1. Un CD virgen
  2. Un Pendrive
  3. Una Playstation 3
  4. Acceso a Internet
Procedimiento:

Gestor de arranque

Para poder iniciar Linux en la PS3 debemos instalar un gestor de arranque similar al LILO o al GRUB. Los gestores de arranque para PS3 disponibles son el kboot, el yaboot y el petitboot. El kboot permite cargar Fedora, Ubuntu y Debian, mientras que el yaboot es el gestor de arranque de Yellow Dog Linux para la PS3.

Descargamos los siguientes archivos otheros.bld y otheros.self. Una vez descargado estos archivos, se deben copiar en la carpeta /PS3/OTHEROS del pendrive a usar (de ser necesario cree la carpeta).

Para instalar el gestor de arranque conectamos el pendrive en la PS3 y nos vamos "Ajuste del Sistema > Instalar otro Sistema Operativo" en el menú del XMB. Esto detectará el otheros.bld de nuestro pendrive y lo instalará.

Live-CD de Debian

Para instalar Debian estable en el PS3 de debe usar un disco de instalación que también es un live-cd. Puede descargarse esta imagen aquí http://ps3.keshi.org/debian-live/20070114/debian-live-ps3pf-20070114.iso. Una vez que se haya descargado se puede usar un quemador de discos para grabar la imagen (puede usar K3B, Nero, etc).

Introducimos este live-cd de Debian y nos vamos a "Ajuste del Sistema > Sistema Operativo por defecto > Otro Sistema" (por defecto estará en PS3"). Esto permitirá cargar el petitboot con las opciones de arranque del live cd.

Al momento de iniciar la instalación se puede utilizar cualquiera de las siguientes opciones (se pueden deducir del archivo /media/cdrom0/etc/kboot.conf del CD):

install Instalar
install ps3fb:mode:0 Instalar con resolución automática
install ps3fb:mode:1 Instalar con resolución 480i
install ps3fb:mode:2 Instalar con resolución 480p
install ps3fb:mode:3 Instalar con resolución 720p
install ps3fb:mode:4 Instalar con resolución 1080i
install ps3fb:mode:5 Instalar con resolución 1080p
install ps3fb:mode:6 Instalar con resolución 576i
install ps3fb:mode:7 Instalar con resolución 576p


Todo dependerá de la resolución del monitor. En mi caso la mejor que opción fue 720p y luego ajusté el tamaño de la imagen con el zoom del TV. De igual forma esto se puede modificar en el /etc/kboot.conf. Si hay duda de cuál resolución es la mejor, quizás conviene probar con el cd-live, para lo cual se puede seguir estas opciones para el kboot:

live

Iniciar Debian Live

yuv480i

Iniciar Debian Live con resolución 480i

yuv480p

Iniciar Debian Live con resolución 480p

yuv720p

Iniciar Debian Live con resolución 720p

yuv1080i

Iniciar Debian Live con resolución 1080i

yuv1080p

Iniciar Debian Live con resolución 1080p

yuv576i

Iniciar Debian Live con resolución 576i

yuv576p

Iniciar Debian Live con resolución 576p


Instalación de Debian


Seguir los pasos normales de instalación de Debian. Aquí solo hay que comentar que al momento de particionar el disco puede que nos diga que no tenemos una partición ppc. Solo hay que hacer caso omiso a ese mensaje.

Luego a disfrutar de Debian de la PS3 :)

Recursos

jueves, 12 de marzo de 2009

Instalando Debian en el PS3 desde un PenDrive

Sandungas (del foro www.dark-alex.org/forum/) me preguntó el otro día que si se podía instalar Debian desde un pendrive porque le daba temor dañar el lector del PS3 con un cd quemado, a lo cual respondí que no se podía. Luego viendo los archivos de petitbot me di cuenta que había un icono para el pendrive, y eso me puso a pensar...

Luego de googlear una rato y hacer varias pruebas con kboot, aquí está les dejo los pasos para instalar desde el pendrive:

Preparando el PenDrive

Primero tenemos que sacar el contenido de la imagen .iso del live-cd de Debian para PS3. Para eso usé isomaster desde Linux, pero puede usarse cualquier otro programa que permita extraer los archivos desde una imagen iso.

Isomaster
Isomaster
Extraemos las siguientes carpetas de la imagen a la raíz del pendrive:

  • /casper
  • /etc
  • /install
  • /isolinux

NOTA: Instalar Debian testing (Squeeze)

El live-cd tiene referencias a scripts que se rompieron con la última actualización de Debian 5.0 porque esas imágenes son de 2007. Bien el asunto es que el instalador del live-cd es algo viejo y no tiene las referencias correcta para stable (lenny) y testing (squeeze) para los scripts de debootstrap.

Como adjunto subí el archivo para squeeze.odt. Copiar en la raíz del pendrive que lo usaremos posteriormente.

Modo de comando en Kboot

Por defecto kboot lee el archivo de configuración /etc/kboot.conf de los distintos medios que reconozca al momento del inicio como el disco duro del PS3 o un CD de instalación. El problema es que no reconoce los pendrive, por lo que tendremos que usar un truco.

Al iniciar el PS3 y después de una serie de mensajes de reconocimiento de hardware veremos que se detiene unos breves instantes en el mensaje "kboot:". Aquí podemos especificar cualquier entrada reconocida en el archivo kboot.conf o utilizar una consola de texto para administración escribiendo "sh"

kboot: sh

Desde ese momento tendremos acceso a una consola con Linux. Lo primero que debemos hacer es conectar el pendrive al PS3. Al hacer esto se mostrará una serie de mensajes indicando el reconocimiento del pendrive y cuál dispositivo se usar como referencia a él (en mi caso es /dev/sdc). Necesitaremos montar este dispositivo en un directorio para poder trabajar cómodamente:

mkdir /mnt/pendrive
mount /dev/sdc1 /mnt/pendrive

Ahora tendremos que ir a la carpeta install

cd /mnt/pendrive/install

Y ahora el paso final, procederemos a iniciar la imagen del kernel de instalación de Debian:

kexec -l monolithic-linux --initrd=monolithic-initrd.gz --append="root=/dev/ram --"
kexec -l monolithic-linux --initrd=monolithic-initrd.gz --append="root=/dev/ram --" -e

La opción -l indica que se cargará una imagen del kernel en sustitución de la actual, --initrd indica la imagen initrd a cargar necesaria para ayudar el kernel a cargar en el inicio y --append indica desde qué dispositivo se leerá las imágenes. Si se fijan he repetido la ĺinea solo colocando al final de la segunda la opción -e. La primera vez es para cargar la imagen del kernel en memoria y la segunda vez usando la opción -e indica que se debe ejecutar esa imagen.

Llegados a este punto debe empezar la instalación :)

Preparandonos para Debian Testing

Al momento de iniciar el instalador (cuando nos pregunta el lenguaje a usar) podemos iniciar una consola de texto pulsando:
Ctrl+Alt+2

Aquí utlizaremos el truco de montar el pendrive nuevamente. Es necesario repetirlo porque ya iniciamos otro sistema (el instalador de Debian)

mkdir /mnt/pendrive
mount /dev/sdc1 /mnt/pendrive
cd /mnt/pendrive
Copiamos el archivo con las referencia de los paquetes de squeeze:
cp squeeze.odt /usr/lib/debootstrap/scripts

Ahora podemos seguir con el proceso de instalación de Debian. Para ello volvemos a la consola de instalación:

Ctrl+Alt+1

Por último, al momento de pedir la versión a instalar debemos seleccionar "testing" (squeeze).

Referencias