📜 ⬆️ ⬇️

Run GNU / Linux on PS3

As you already know, Sony has removed the ability to run OtherOS on the Sony Playstation 3 console. For some geeks, the launch of GNU / Linux on the PS3 was the reason for the purchase. But thanks to the work of third-party developers, it has again become possible. On firmware with version 3.55 without any additional devices (USB jailbreak device, USB JIG).

A short video to attract attention:



UPDATE : now everything has become much easier - you can run Debian GNU / Linux directly from a flash drive without installing TFTP and NFS servers. See instructions .
')

Means used



To run the Linux kernel, the AsbestOS boot loader and the lv2patcher program will be used to make changes. For lv2patcher to work, it is necessary that the system files be pre-modified (the peek and poke system calls work, and the lv1_undocumented_function_114 function calls are modified: 0x2D5A47: 00 -> 01). These changes have already been made in most modified firmware (CFW).

CFW



The following firmware is compatible with lv2patcher:


Install any of them.

lv2patcher



To run AsbestOS, you need the latest version of lv2patcher, v9. It has the opportunity to modify the contents of the hypervisor (lv1), as well as perform a reboot (lv1_panic).

Asbestos



In order for lv2patcher to run AsbestOS, the bootloader must first be written to the console's flash memory. You can't just do this - the / dev_flash partition is write-protected. But for this there is a special program - AsbestOS installer ( version for ps3 fat ). Just run it and wait for the installation process to complete.

Now all the preparations on the PS3 are complete. Since AsbestOS uses the network to boot the kernel, it is necessary to configure a computer connected to the local network so that it can be used as a boot server. Suppose Ubuntu is installed on this computer. To raise the server, we need the dhcp3-server , tftpd-hpa and nfs-kernel-server packages.

DHCP server



The DHCP server is needed by the bootloader to get the IP address and TFTP server address. Here is an example of a working configuration for an ISC DHCP server:
option domain-name "example.org";
option domain-name-servers 8.8.8.8, 8.8.4.4;
default-lease-time 600;
max-lease-time 7200;
ddns-update-style none;
authoritative;
log-facility local7;
subnet 192.168.2.0 netmask 255.255.255.0 {
range 192.168.2.128 192.168.2.250;
}
next-server 192.168.2.1;
filename "kboot.conf";
option routers 192.168.2.1;


Correct this file in accordance with the address space of your network.

TFTP server



Immediately after receiving the address, AsbestOS tries to download the configuration file from the TFTP server. In the example above, the kboot.conf file was specified. The minimum configuration is enough for us, and therefore this file will consist of only one line:

linux='vmlinux video=ps3fb:mode:2 root=/dev/nfs rw ip=dhcp nfsroot=192.168.2.1:/mnt/ps3 panic=5'

As you can see from it, we also need to put the kernel image in the directory of the tftp server and name it vmlinux. The link to the finished kernel will be listed in the next section.

NFS server



Since the hard drive of the console will not be used to store GNU / Linux, and the root file system is needed for work, we will use the Linux ability to use nfs as the root. Add a line to / etc / exports:

/mnt/ps3 192.168.0.0/16(rw,async,no_root_squash,no_subtree_check,anonuid=0,anongid=0)

By the way, the file system can be taken here , and the kernel and modules for it are here .

All is ready. Launch the lv2 patcher, select the new menu item “Linux” and press “X”. After a few seconds, the kernel initializes the framebuffer and displays two rows of penguins.

And how would you use the old (new?) PS3 feature?

Source: https://habr.com/ru/post/113199/


All Articles