Petitboot OS on PS3

4
petitboot home docs code photos blog Petitboot is a graphical bootloader for the PlayStation 3. It's based on the existing kboot project, plus the twin windowing system for the GUI. At present, petitboot is very much a work-in-progress, but works on our test PS3. Petitboot is licensed under the GPL v2. screenshots Devices can provide their own icons Loading the Ubuntu PS3 CD download Petitboot, version 0.2: otheros.bld (PS3 flash image, 3.4M) The installing section below has instructions on installing petitboot. I have another image, same as the above, but with a telnet server, a ssh server and a http server enabled. However, this isn't secure; there is no password set, and anyone with network access to the machine can get root access. Only run this image if your ps3 is on a trusted network: otheros-petitboot+network.bld (PS3 flash image, 3.5M) You will need to rename this to otheros.bld after you download it.

description

Cobra

Transcript of Petitboot OS on PS3

Page 1: Petitboot OS on PS3

petitboot home

 

docs

 

code

 

photos

 

blog

Petitboot is a graphical bootloader for the PlayStation 3. It's based on the existing kboot project, plus the twin windowing system for the GUI.

At present, petitboot is very much a work-in-progress, but works on our test PS3.

Petitboot is licensed under the GPL v2.

screenshots

Devices can provide their own icons Loading the Ubuntu PS3 CD

downloadPetitboot, version 0.2:

otheros.bld  (PS3 flash image, 3.4M)

The installing section below has instructions on installing petitboot.

I have another image, same as the above, but with a telnet server, a ssh server and a http server enabled. However, this isn't secure; there is no password set, and anyone with network access to the machine can get root access. Only run this image if your ps3 is on a trusted network:

otheros-petitboot+network.bld  (PS3 flash image, 3.5M)

You will need to rename this to otheros.bld after you download it.

installing

Page 2: Petitboot OS on PS3

1. Put your otheros.bld file on to a USB disk, in a file called /PS3/otheros/otheros.bld. Assuming your USB disk is mounted at /media/usbdisk:

2. [jk@pokey ~]$ mkdir -p /media/usbdisk/PS3/otheros3. [jk@pokey ~]$ cp otheros.bld /media/usbdisk/PS3/otheros/

If you don't have a USB disk, you can use any sort of media that the PS3 can read - CDROM, DVD, compact flash, etc. Just make sure that the file is called/PS3/otheros/otheros.bld.

4. Plug the USB disk into your PS3, and navigate to System → System Settings → Install Other OS. The PS3 should find the new file on the USB disk, and install it.

5. To boot with petitboot, just set your default operating system to "Other OS" (System → System Settings → Set Default OS), and reboot.

using petitbootWhen petitboot starts, it will try to find existing Linux installations, by looking for /etc/kboot.conf, /etc/yaboot.conf or /boot/petitboot.conf files on any storage device connected to the system. Each discovered device will appear on the left-hand pane of the screen, and bootable options appear on the right.

You can navigate the boot options with the arrow keys (if you have a USB keyboard connected), or the D-Pad on the PS3 controller. If you're using a PS3 controller, you will need to have it connected via the cable; wireless controllers aren't supported (yet!).

If you only have a blank screen with no device icons, then petitboot has not found any bootable options. You can flip to a text console (using Alt+F1) to investigate.

The keys available are:

Keyboard PS3 Controller FunctionUp, Down, Left, Right Navigate between boot options

Enter Circle Select boot optionDelete / Backspace Square Boot to GameOS1 Switch to 720p mode2 Switch to 1080i mode3 Switch to 1080p modeAlt+F1 Switch to text console (Alt+F2 to switch back)

consoleIf you're using the petitboot console (either by hitting Alt+F1, or logging-in over the network), you have a fairly standard Linux system available. Some notes:

Discovered storage devices are mounted under /var/tmp/mnt, named by their device. For example, /dev/ps3da1 is mounted at /var/tmp/mnt/ps3da1.

To boot a kernel, use kexec: kexec -f --append="root=/dev/ps3da1" /var/tmp/mnt/ps3da1/boot/vmlinux .

petitboot is a work-in-progress: if you have any problems, email me at [email protected].

reverting to the standard ps3 softwareIf you'd like to revert to the standard PS3 behaviour (ie, the PS3 boots directly to gameos), then you can just do a reset of the PS3:

1. Turn the ps3 off2. Hold down the power button until you get a second set of beeps

Page 3: Petitboot OS on PS3

The ps3 boot sequence will now be back at the factory default.

frequently asked questionsCan petitboot boot an option by default?Unfortunately, the version of petitboot on this site does not have support to autoboot a particular option. Geoff Levand has added this feature to his petitboot update, which is on his site. However, Geoff's updates do not include a GUI at the moment.

There are no bootable options, how do I fix this?When petitboot starts, it looks for installations of Linux on any drives connected to your PS3. It then tries to find a kboot.conf file, which describes the bootable options that are on this drive. The kboot.conf files look something like this:

linux=/boot/vmlinux initrd=/boot/initrd.gz quiet splash

The first part (before the =) is the label to show, the second part is the kernel and boot options. You will probably need to adjust these paths to suit your setup.

sourcesPetitboot sources, version 0.2. You only need these if you want to make changes to petitboot.

petitboot-0.2.tar.gz  (.tar.gz, 81kB)

You'll also need the 'twin' windowing system, version 0.0.3

libtwin-0.0.3.tar.gz  (.tar.gz, 400kB)

buildingThe above images are built using the OpenWRT infrastructure. However, we need to apply some patches (which are in the process of submission). Grab the patches here.

This OpenWRT config file  was used for the otheros images above.

authorsPetitboot was brought to you by Benjamin Herrenschmidt <[email protected]> and Jeremy Kerr <[email protected]>.

acknowledgementsPetitboot wouldn't be possible without:

Keith Packard for the initial twin library The OpenWRT team for the build infrastructure Artwork from the kde team

http://jk.ozlabs.org/projects/petitboot/