OpenSUSE 11.0 on the PS3
I recently decided to something crazy and install OpenSUSE 11.0 on my PS3.
Motivation: Sony made provisions in the PS3 for installing and booting other operating systems. Aside from fact that it seemed like a cool thing to do I also thought that after doing the Linux install I might be able to rip Blue Ray disks and store them on my PS3 for playback.(Update: The Sony Linux documentation makes it clear this is impossible. All of the access to the hardware is virtualized and “Some of ATAPI commands have been rejected by the hypervisor because of security issues.”) (Update2 [2008-12-29]: Geert Uytterhoeven kindly emailed me with this link which proves raw access to the device is possible.)
I also thought I might experiment with alternative Media front ends like mythTVfrontend or XBMC since so far my PS3 has had limited success playing back many media files from my mythTV backend. (again, this will be the topic of another article)
Method: I opted to use the PPC Network install to save download time. The installed system only uses about 2G and requires about 800Meg of download but the full DVD download is over 4G. Why download 3G of stuff you aren’t going to use?
Setup: Obviously I used a PS3. It was connected to a large screen TV using the Component outputs and the resolution of that output was set on the PS3 to 1080i (this is not relevant to the install since you have to pick the resolution)
I also decided to splurge and get a Wireless USB keyboard and mouse ($50). I don’t happen to own any USB keyboards so I needed to get one anyhow and I figured life would be much easier if I could do everything from the couch. I was right. The wireless USB keyboard and mouse just plugged into the PS3 and worked. Simple as that. And as a bonus they work both in the Linux OS as well as the default PS3 OS.
Drawbacks: You must reformat your PS3 hard drive before doing the install. This means you could loose a lot of data including saved game data as well as installed and downloaded games. However there is a simple backup mechanism in the PS3 which allows you to save this data to a USB key. As a worse case scenario you can re-download your games.
On the PS3, select: Settings -> System Settings -> Backup before you start.
The other drawback is that the install can take a long time which means you can’t play your PS3 while your waiting which is what I normally do when installing systems.
I have incorporated most everything from these instructions on the “official” page located here:
However this page is a bit less “official” and has a bit more detail.
Install Video Resolution: Even though I changed my resolution to 1080i at the start of the installation process, In several places during the install it appears that the display is not large enough to show the buttons at the bottom of the screen so you don’t have any idea what your choices are. Fortunately I’ve installed OpenSUSE enough times to know that in most places “ALT-N” stands for Next.
The only tricky spot is the user creation. At the user creation screen you must create a user or you can’t continue but ALT-N still works once you have entered your username and password.
Apparently the correct solution to this is to specify a different resolution for the kernel at the boot prompt. There are some instructions for this on the OpenSUSE PS3 page but I didn’t find the necessary and did not try them.
At one point the installer says it is creating a mount point in fstab, this seems to take a very long time and I though it was hung but eventually it moved on to the next step and the download worked fine.
Post Install Video Resolution: After the install, the default resolution is insanely small. You have to manually edit the /etc/kboot.conf file so it looks like this
default=openSuSE timeout=20 openSuSE="/dev/ps3da5:/vmlinux initrd=/dev/ps3da5:/initrd quiet panic=42 sysrq=1 video=ps3fb:mode:4"
The mode is based on this table from the PS3 Linux Starter Kit docs.
YUV 60Hz 1:480i 2:480p 3:720p 4:1080i 5:1080p YUV 50Hz 6:576i 7:576p 8:720p 9:1080i 10:1080p RGB 60Hz 33:480i 34:480p 35:720p 36:1080i 37:1080p RGB 50Hz 38:576i 39:576p 40:720p 41:1080i 42:1080p VESA 11:WXGA 12:SXGA 13:WUXGA
full screen mode: + 128
dither ON mode : + 2048
So for example, 1080i = 4, + Full screen = 128, total 132.
In my case I use mode:4 (1080i) with no full screen because too much of the display is lost in full screen mode.