AsbestOS: Running Linux as GameOS
As most of you will probably already know, I’ve been working on a project recently which aims to run Linux on the PS3 (including the PS3 Slim) using the PSJailbreak exploit, effectively replacing GameOS on the fly. I think it’s gotten to the point where it’s useful enough for other people to be interested, so here’s something resembling an official announcement.
Obligatory demo video:
AsbestOS (a mineral, and meaning “inextinguishable” in Greek) is a bootloader to run PS3 Linux without OtherOS. It runs using the USB GameOS exploit (on PS3 version 3.41) from any compatible device, and any reprogrammable devices currently running the PS3 exploit can be used as long as they have enough free internal or external storage (40kB or so) to hold the loader. It is general enough that it should be useful to boot Linux given any other GameOS exploit in the future. It has been tested to work on the PS3 Slim too.
Currently, it only supports netbooting a kernel and no initrd (mostly due to bootmem limitations). This is enough to run a Linux system booting from an NFS share or from USB storage media. Almost everything that works under OtherOS is working. As additional perks of running as GameOS, you also get access to a seventh SPE (needs a kernel patch to enable) and there is clearly full access to the RSX including 3D support, although we still need to learn a few details about how that works to be able to use it.
AsbestOS is a fully independent open source payload and does not contain any code from the original PSJailbreak payload or derivatives. It is licensed under the GPLv2. Compiling it does not require any SDK tools, and it includes a script to build a fully vanilla GNU toolchain for the PS3.
If you’re interested, check out the git repository. The README file contains information on how to run AsbestOS and how to set up kernels. Currently, ports exist for software USB AVRs (Arduino etc.), iPods, and the reference implementation for devices with a TI OMAP3, but anything currently running PSGroove or similar can be adapted with only a few lines of new code.
For the impatient or lazy folks, here’s a kernel that you can use Update: and a stage1 binary and a stage2 binary. You’ll probably want to change the kernel commandline options to set up your NFS root partition. This will eventually be handled by AsbestOS, but for now, open it up in a hex editor, search for HEXEDIT_THIS, and change the commandline to suit your needs (without changing the total length, of course). Do note that this kernel does not have built-in USB support, so it can only be used for NFS booting (the USB stuff is built as a module).
You can use this filesystem as a starting point. It’s a Gentoo stage3 updated to date and with PS3-specific tools installed. Keep in mind that there’s no Portage tree included, so be sure to either emerge --sync or NFS mount your server’s Portage tree (which is what I do). At the very minimum, you’ll want to edit the following files to configure your NFS and networking settings (or to specify USB device partitions, if you want to go that route – but you need to compile your own kernel then): /etc/fstab, /etc/hosts, /etc/resolv.conf, and quite likely a few others. This filesystem includes kernel modules for the above kernel. The root password is ‘ps3′.
October 20th, 2010 at 12:49 am
Man, I’m impressed. This is some cool stuff right here.
October 20th, 2010 at 12:53 am
sorry couldnt help it, but woa! a finished rubix cube?!?!?!?!
October 20th, 2010 at 12:54 am
This is some very impressive work, yet may be difficult for those who don’t really understand how toolchains and compiling works. Still, this a great starting point — kudos to you and your hard work and dedication.
October 20th, 2010 at 1:04 am
thanks for your hard work and this release :p
October 20th, 2010 at 1:17 am
As always, good work marcan. Hope to see some graphic interface in there soon
October 20th, 2010 at 1:54 am
@Clayton Braasch
To clarify, at this stage I think this will be interesting enough for developers (those who know OtherOS). It’s certainly nowhere near ready for end-users yet.
October 20th, 2010 at 2:08 am
Thanks marcan, been following this on twitter for a while. So cool you got it working, can’t wait to try it out
October 20th, 2010 at 2:23 am
So this coupled with geohot’s older hardware LV1 exploit could potentially allow the PS3 master key to be dumped from the “isolated” spu?
Awesome work regardless!
October 20th, 2010 at 2:38 am
Cool.
By the way are you greek ?
October 20th, 2010 at 3:59 am
Is this similar to how haret works for windows mobile phones?
October 20th, 2010 at 4:30 am
I take it this won’t help those of us on 3.5 until that gets something like the USB exploit that 3.41 has
October 20th, 2010 at 6:12 am
Regarding “figuring out how to use the graphics in PS3″ from the video.
The accelerated 2D linux drivers which uses RSX on PS3 instead of framebuffer was already released back in 2007. Then Sony plugged it in firmware v2.10. That’s all you need for 1080p video on PS3, probably needs a lot of work for games using 3D though.
The original thread is over at ps2dev.org (http://forums.ps2dev.org/viewtopic.php?t=8364&postdays=0&postorder=asc&start=240), but the site seem down at the moment. You can also find info here: http://boardsus.playstation.com/t5/PlayStation-3-Media/Finally-accelerated-2D-linux-drivers-uses-RSX-on-PS3-instead-of/m-p/32674024
October 20th, 2010 at 6:37 am
Wow, that’s cool!
I was waiting for this for so long time! Thank you for you job! Gentoo on PS3 is awesome! ^_^
Now it’s time to put GNU/Linux on my 3.41 PS3 too…
October 20th, 2010 at 7:45 am
This is what I was waiting for. I dont have to illegal copys from the internet or “play backups”. But since the PS3 came out, i was dreaming of using it as a medaiceneter like the old xboxs. I’m following you on tweeter since you started to develope this bootloeader. You have my fully respect for this work becaus you spend so much time of your free and private time. Your employer should be very happy, that you are working for him.
Greetings
m0nKeY
October 20th, 2010 at 10:40 am
man this is good stuff right there..
im kinda sad i updated my ps3 to the new firmware now
October 20th, 2010 at 10:58 am
Do you keep a TODO list? In case someone wants to chip in?
October 20th, 2010 at 11:15 am
this will bring back 3.15 days and hacks
thanks Marcan
October 20th, 2010 at 11:54 am
Great work!!
Quick question,does it boot up before it loads anything from the ps3 ?
I have a faulty PS3,which has a loopupdate because off a faulty bluray drive.
Is it possible to port it to a earlier version (2.42),so i can atleast run linux on it?
October 20th, 2010 at 4:01 pm
MAN you’re great!
this reminds me of the first days of the twilight hack! *sniff*
good ol’ hack!
I owe you ANOTHER one
October 20th, 2010 at 4:06 pm
You have made it to the frontpage of Linux Weekly News.
http://lwn.net/Articles/410773
October 20th, 2010 at 5:59 pm
any chance for an omap3 binary and a quick guide to get nfs up? for us curious people, that are not leet enough to actually contribute. (I has a pandora)
October 20th, 2010 at 6:13 pm
Will the GFX driver be a Gallium3D driver?
http://www.x.org/wiki/GalliumStatus
Gallium3D should deprecate the classic MESA implementation over time.
October 20th, 2010 at 8:29 pm
hey marcan
could you tell me which board do you use in the video to load the linux kernel
thanks
October 20th, 2010 at 11:29 pm
@Tim:
I’ve only heard of the exploit being portable to 3.0 and beyond, sorry
@Amadeus:
3D will likely steal bits of nouveau, at least the userspace side. The kernel side of nouveau is pretty much worthless because we don’t get direct access to the hardware, but instead we need to marshal through the hypervisor. In a way, the hypervisor implements the part of the graphics driver that is normally implemented in the kernel.
So yes, whenever (proper) 3D arrives, it should be Gallium-based.
@lows
It’s an IGEPv2 board.
@Gizmo
here’s a binary, run it as c/code>./ps3pwn stage1.bin stage2.bin. As for NFS, you should look up your distro's documentation. Don't forget that you must disable, unload, or unbind the musb driver for the OMAP before using ps3pwn.
October 21st, 2010 at 9:36 am
Actually, RichDevX posted on his twitter some time ago that the exploit should work all the way back to 2.01:
http://twitter.com/RichDevX/status/24643255457
October 21st, 2010 at 10:34 am
Instead of the USB device, can’t we use a computer/laptop running Linux kernel with USB_GADGET support?
October 21st, 2010 at 12:40 pm
Thank you very much, i was waiting a lot for linux in ps3. But my jailbreak comes with only 32mb.
October 21st, 2010 at 12:51 pm
@Marcan: I think it was in the “24c3-playstation_portable_cracking.mkv” video, where TyRaNiD said that the speculation is that the PSP and PS3 used the same API’s, and exploits from on one platform might work on the other.
In the video he says that they have figured out the GPU API. Do you think code could be shared there?
Btw. Way cool that the driver will be Gallium based =)
October 21st, 2010 at 2:44 pm
OHHHHH you Rockss ……… thanks for that
October 21st, 2010 at 3:01 pm
@Nikanth Karthikesan
Nope, because USB_GADGET support requires a special gadget controller that is only present on embedded systems.
October 21st, 2010 at 5:50 pm
Have you been able to bring up the SPUs on the cell?
October 21st, 2010 at 9:35 pm
You are the MAN, marcan.
You have just left your footstep on the moon.
Linux in text mode is the first step to a full GUI linux.
Thank you.
October 23rd, 2010 at 1:49 pm
Amazing work ! This is the best news I have heard from the 1st April Sony “joke”
Just two questions:
1) Does the AsbestOS erases the GameOS from the chip ?
2) Do we get access to the PS2 Emotion Engine ( if it is present ) ?
October 24th, 2010 at 8:45 am
Fantastic work! Been watching this on Twitter for a while
October 25th, 2010 at 3:49 am
Has anyone tried on the N900 ?
It wont work for me, ps3pwn keeps putting out the below debug messages.
Waiting for connection…
VBUS detected!
Now soft-connecting
IRQs: 01
IRQs: 01
IRQs: 04
High-speed reset
IRQs: 04
High-speed reset
IRQs: 04
High-speed reset
IRQs: 04
High-speed reset
IRQs: 01
Waiting for connection…
And keeps looping.
October 25th, 2010 at 12:41 pm
@Andrew
You need to stop all the built-in USB services on the n900 before, and disable the existing kernel driver.
To disable the driver, you can use the sysfs unbind mechanism. Look for a directory like
/sys/bus/platform/drivers/musb_hdrcor/sys/bus/usb/gadget/drivers/musb_hdrcor similar. There should be a symlink in there and an “unbind” file. Echo the name of the symlink into unbind to unbind the driver from the hardware. However, before doing this, you need to disable the services that actually use the USB connection on the n900 (I’m not sure how that works, as I don’t own one).October 26th, 2010 at 7:56 am
marcan, what is your opinion on that altered asbestOS solution?
http://psx-scene.com/forums/f6/hermes-asbestos-payload-69498/
October 26th, 2010 at 12:23 pm
Booted gentoo-ps3 linux using the ipodvideo rockbox_psgroove port with AsbestOS!!
http://img839.imageshack.us/img839/2827/dsc08895u.jpg
October 26th, 2010 at 3:49 pm
Hey, how have u got nfs root working, mind to share ur /etc/exports ?
and what nfs server u used ?
October 26th, 2010 at 10:49 pm
Thanks for all your hard work, this is a giant leap in the right direction. Kudos!
October 27th, 2010 at 7:18 pm
but for now, open it up in a hex editor, search for HEXEDIT_THIS, and change the commandline to suit your needs (without changing the total length, of course).
Ya me diras como , pq no hay manera . Cambio el path o la ip y pantallazo en negro ….
October 29th, 2010 at 11:20 am
Hello
I managed to get it to boot and aquiring IP addresses correctly, however I’m having some weird problem with NFS server. The PS3 and Linux PC are directly connected and no firewalls / any iptables rules configured. In wireshark I see V2 GETPORT Call NFS(100003) V:2 UDP coming from the PS3 and then the PC replying V2 GETPORT Reply (Call In 514) Port:2049, but after that there is no traffic and PS3 panics. I used Ubuntu 10.10 with default kernel and nfs-kernel-server package, exportfs and other settings are properly configured AFAIK, also it was possible to mount the share locally when I changed the IP in exports from PS3 IP to localhost. I also tried with Gentoo on the PC with the exact same result, so it must be something configuration related and not a bug in the distro.
With what kind of nfs server setup have you had success with?
I’m also wondering would it be possible for the root fs to work from a USB HDD if I rebuilt the ps3 kernel with USB mass support and made /dev/sda1 the root (HDD having one ext3 partition.)
October 29th, 2010 at 4:40 pm
same problem with nfs here..
October 30th, 2010 at 2:30 am
I’m also having the same issue as windi. PS3 slim, Hermes 4b. If I use the original, unhexed dtbImage.bin, I can see the penguins, but it dies looking for the nfs root (I use 192.168.10, not .3). If I use the hex-edited one, I can see the portmap traffic, and then…. nothing. Blank screen. In both cases I can see all the stage2 debug traffic on port 18194.
Side note, I’m using the Hermes homebrew and Gatz loaders because I don’t have a Teensy++ 2.0 port. I see the AVR port has stage1 put in the port1_config_descriptor, but I’m not familiar or patient enough with LUFA/USB/programming to know how to present stage2 in a similar fashon to how the AVR port does it. I figured someone who knew what they were doing would have ported it by now..
October 30th, 2010 at 3:41 am
recompiled the kernel and got through it, but now some strange page fault error appeared. i’m off for now, continuing tomorrow
October 30th, 2010 at 12:13 pm
ok, i just logged in via ssh
October 30th, 2010 at 12:30 pm
Your git repository server is heavy loaded. no chance to get a snapshot or a clone of the git.
October 30th, 2010 at 7:39 pm
The git server should work now, please let me know if there are any issues.
As for NFS trouble, I realize that it’s hard to diagnose since after the network starts up you lose all debugging information. mf, mind sharing what your issue was and how you overcame it? It might help others
Personally, I’m just using the standard Gentoo NFS server and whatnot.
Anyway, AsbestOS should be getting support for configuration files (to specify kernel arguments) and remote initrd pretty soon, that should hopefully make things a bit easier.
October 30th, 2010 at 9:29 pm
i just compiled my own binary (edited arch/powerpc/boot/dts/ps3.dts with my pc’s ip address and path to nfsroot – though added support for wireless networking and ufs, but that shouldn’t be the issue (..or?))
psgroopic with hermes payload, hermes asbestos loader, fat ps3
November 5th, 2010 at 3:50 am
Excellent. Will be nice to finally see fully-functional Linux on all PS3 models.
(It’s also quite nice to see all these comments not asking how to use this for piracy.
)
November 10th, 2010 at 5:18 am
i would like to have the text of your video presentation, it will be very heplfuly for non english people. thank you verry !
November 10th, 2010 at 12:30 pm
Great work being done !
How are things going ? Can we have the recent updates ?
Take care,
Tamis
November 10th, 2010 at 3:04 pm
This is brilliant… Thank you for such a great post.
Tony
November 11th, 2010 at 6:22 am
Just brilliant, you’re great man!
Keep going!
Alex
November 11th, 2010 at 8:27 pm
Hey! I was hoping you could tell me what laptop that is you have there.. and where can I find it/others alike?
November 12th, 2010 at 1:28 am
Sony en lugar de usar la tecnologia para hacer la vida fácil a sus clientes se dedica a complicarsela. Al final con esta actidud no se elimina la pirateria pero si que se pierde a los clientes.
November 15th, 2010 at 6:40 am
What omap3 board are you using?
November 15th, 2010 at 1:06 pm
Impressive work. I can tell from the video you were very excited to announce this project. Can you please give an estimate on how much time until it will be possible to run a full Linux kernel (if possible at all) ? We definitely need to see some GUI.
Nouveau all the way, baby ! But for now 2D should suffice. Maybe vesa, something like that.
Thanks.
November 15th, 2010 at 2:51 pm
sos un genio, felicitaciones!! voy a seguir muy de cerca tus trabajos.
Sr Fox.
November 16th, 2010 at 3:06 pm
DSpider: “full” linux kernel? it is “full” linux kernel. and you can use framebuffer for 2d. just “emerge xdm” (gdm, kdm..) – or apt-get install if you want to use debian or ubuntu or what..
November 18th, 2010 at 10:38 pm
mf, could you please upload the kernel you compiled somewhere? I got the same weird nfs issue and wanted to try your kernel first before building my own. thanks in advance
November 19th, 2010 at 3:22 pm
You mean it can run xorg, gnome, etc. ? Ext4 support and all ?
November 25th, 2010 at 1:12 pm
Wham AsbestOS hit the scene !!! Wham … nothing further ?
I, along with 10 gazillion other humble followers await the day that Marcan (or someone) can add full RSX-3D support.
Please can you supply an update on something just to keep me hanging in there ??? (Marcan – drop that kinect crap)
November 25th, 2010 at 9:09 pm
sorry to say that, but i is very difficoult for me to build. When i type in make, it does a lot of commands and after 45 minutes of waiting it says that it cant make it without any messages why it could not build.
November 26th, 2010 at 11:44 am
Hi, i have a dubt, when you used the ps3 JS your ps3 was banned on windows live?
November 26th, 2010 at 10:47 pm
Whats in the way to publish a working otheros-function? the hardest part seems to be done. why stopping now. as normal user i can’t do anything with that stuff over there. how far is ist away to create a other-os-homebrow tool which can boot a ubuntu-cd for example…? i would be very interested….
thank ya also for your hard work!
December 12th, 2010 at 6:48 am
Great soft! I’ve been wanting to use a ps3 for linux and still be able to play games and watch movies.
The problem is, I’m not sure what type of boards can I use for this. Is there a non-exhaustive list of boards and hardware that can be used for this?
I’ve done some searching but my google-fu needs an upgrade.
December 15th, 2010 at 4:42 pm
i”m a brazilian guy in google tradutor “asbestOS” is “amianto” it don’t mean nothing so if u want in portuguese can call asbestOS in “OMelhOS”
haha this is a detail but…
can u put a tutorial to instal this on my ps3?
December 15th, 2010 at 5:35 pm
I use iPod JB 3.15, I have debootstrapped a USB HDD, how would I proceed using AsbestOS to start my system from HDD?
December 15th, 2010 at 5:38 pm
I use iPod JB 3.15, I have debootstrapped a USB HDD, how would I proceed using AsbestOS to start my system from the USB HDD?
December 18th, 2010 at 6:12 pm
I do not understand anything, but how?
December 20th, 2010 at 12:33 am
keep up the good work man
December 20th, 2010 at 12:34 am
greetings from mexico
December 30th, 2010 at 1:51 am
Thanks a Lot!! from Portugal
Realy!!
December 30th, 2010 at 5:39 pm
Good job! ¡Llegaras lejos!!
Eskerrik asko!
December 31st, 2010 at 1:36 pm
thnx thanks keep you hardwork set us free from Honduras thanks a lot
January 1st, 2011 at 4:47 pm
Marcan,
I watched the video, but I could not understand where you said what “dongle” you were using.
January 8th, 2011 at 7:03 am
With linux on my ps3.
1. Can I back up my ps3 games to blu ray disc.
2. Can I watch any format movies, avi, mp4, rmvb, and rm etc.
January 12th, 2011 at 4:38 pm
Ánimo tío. Me parece una pasada tu trabajo y supongo que después del aviso de demanda de Sony estarás preocupado. No creo que tengas problemas para defenderte de ellos aquí en España, pero si necesitas cualquier cosa no dudes en contactar conmigo.
Un saludo!
January 13th, 2011 at 1:58 am
The links do not work, is there a mirror?
January 14th, 2011 at 6:38 pm
will asbestos get a new lease of life with the ps3 master key being revealed?
January 18th, 2011 at 12:06 pm
So this has been a couple of months since debut is there current news/ progress in this development. Just asking because there are a ton of people that would love to see this get fully off the ground (Myself included). Just keep up the good work.
January 29th, 2011 at 1:14 am
First of all I have to say you’ve done some amazing work on the PS3.
Second, has anyone tried to do this with an iPod touch 1G or the E3 Card Reader?
If so, is there anywhere a guide on it ?
Third, does anyone know what microcontroller is in the E3 Card Reader ?
Keep up the good work.
March 13th, 2011 at 7:17 pm
Can it be done on the mini2440 board ?
May 12th, 2011 at 6:08 pm
The history of AsbestOS and asbestos are not similar, but they are interesting: http://www.weitzlux.com/history-of-asbestos-use-united-states_1962615.html
July 15th, 2011 at 6:46 pm
Как похудеть на Кремлевской диете, таблица, рецепты, отзывы о диете.
Диеты Если вы задались целью похудеть, то попали по адресу. Не так давно я тоже была в поиске идеальной диеты. Конечно, хотелось быстро и не прилагая
ЭФФЕКТИВНЫЕ ДИЕТЫ ДЛЯ БЫСТРОГО ПОХУДЕНИЯ. Анализ эффективности современных диет для похудения, их плюсы и минусы, критика и последствия быстрых диет.
Тем, кто стремится вести здоровый образ жизни, часто не хватает элементарных диетологических познаний. Данный раздел поможет Вам разобраться в этом
Диета, диеты, похудеть, похудение, еда, питание, здоровье, рецепты, салаты, красота, лицо, снижение веса.Диета, диеты, похудеть, похудение, еда, питание,
January 29th, 2013 at 11:52 pm
do 2D linux drivers use RSX on my PS3 well?
April 10th, 2013 at 5:05 am
Thanks for your inquiry. That’s really cool. Please keep moving like this.
May 11th, 2013 at 1:57 pm
I like the helpful info you provide in your articles. I will bookmark your weblog and take a look at again right here regularly. I am rather certain I’ll be told a lot of new stuff proper here! Best of luck for the next!