Skip to content
X-F1REBALL-XPublic

About

Linux (Arch KDE) on jailbroken PS4 - Belize/Aeolia & Baikal kernels. FW 13.52 tested.

Resources

Stars

4 stars

Watchers

0 watching

Forks

Latest commit

 

History

7 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PS4 Linux

Run Linux (Arch Linux with KDE Plasma) on a jailbroken PS4 from a USB drive. Tested setup, ready-to-use files.

This file contains the latest Linux update, dated 29/09/2026.

Screenshot

KDE Plasma desktop running on PS4

Which kernel, and what the light means

After you send the payload, watch the light on the PS4.

If it turns from white to blue within about 15 seconds, the kernel started and Linux is loading.

If the light stays white for more than 20 seconds, check that the kernel matches the console using the table below.

If it stays white, you can also power off, turn the console back on, and try again.

Only two models are known to work. Everything else in this table is untested.

Model Type Southbridge Kernel Status
CUH-10xx, CUH-11xx Fat Aeolia bzImage-belize-7.1.7 Untested
CUH-12xx Fat Belize bzImage-belize-7.1.7 Untested
CUH-2116A Slim Baikal bzImage-baikal-7.0.8 Works (FW 13.52, GoldHEN)
Other CUH-2xxx Slim Depends on the motherboard Belize: bzImage-belize-7.1.7. Baikal: bzImage-baikal-7.0.8. Untested
CUH-70xx Pro Belize bzImage-belize-7.1.7 Untested
CUH-7116B Pro Belize bzImage-belize-7.1.7 Works (FW 13.52, GoldHEN)
Other CUH-7xxx Pro Depends on the motherboard Belize: bzImage-belize-7.1.7. Baikal: bzImage-baikal-7.0.8. Untested

Fat CUH-10xx and CUH-11xx are Aeolia, so they should use the Belize kernel. That has not been tested. Some Fat models have Wi-Fi and Bluetooth chips that may not work.

Slim CUH-2xxx and Pro CUH-7xxx can be either Belize or Baikal. CUH-70xx is Belize. For the other Slim and Pro models, it depends on the motherboard, so the model number alone is not enough.

Both tested consoles use the same payload (linux-1024mb.elf), initramfs and USB drive. The loader supports FW 5.05-13.52.

On the console, the kernel must always be named /data/linux/boot/bzImage.

Do not put a file named bzImage on the USB. The loader prefers a USB kernel over /data/linux/boot/, so leave it off and one USB works on every console.

Download

Get everything from Releases. Unzip kernel.zip, payloads.zip, and tools.zip first. Leave psxitarch.tar.xz as its own file.

File What it is
psxitarch.tar.xz The compressed Linux file. 2.8 GB (2962027772 bytes).
kernel.zip Kernels and the small boot file. 36.4 MB (38147462 bytes). Unzip it to get kernel/.
payloads.zip The files you send to the PS4. 185 KB (189240 bytes). Unzip it to get payloads/. Use payloads/linux-1024mb.elf.
tools.zip Scripts that build and burn the USB, plus checksums. 5 KB (5089 bytes). Unzip it to get tools/.

Do not put a file named bzImage on the USB. The PS4 would boot that file instead of the kernel that matches the console. One USB then works for both Belize and Baikal.

Which USB

  • Best: a 32GB USB 3.0 stick. Fast, and there is room left after Linux is installed.
  • Minimum: 16GB. It fits, but there is almost no free space until you grow the partition.
  • Slower USB 2.0 sticks work, but boot and the desktop feel slow.

Burning erases the whole stick.

Install

1. Make the USB image

Unzip kernel.zip and tools.zip first. On Linux or Windows WSL, with psxitarch.tar.xz in the same folder:

sudo bash tools/build-img.sh psxitarch.tar.xz kernel/initramfs.cpio.gz psxitarch-usb.img

You get psxitarch-usb.img, about 12GB. That is the file you burn.

2. Burn it

Windows

  1. Open PowerShell as Administrator.
  2. Run Get-Disk and note the number of the USB stick. Do not pick your PC disk.
  3. Run:
powershell -ExecutionPolicy Bypass -File .\tools\write-img.ps1 -ImagePath .\psxitarch-usb.img -DiskNumber 1

Change 1 to your USB number. If Windows asks to format the stick, click Cancel.

You can also burn psxitarch-usb.img with balenaEtcher, or with Rufus in DD mode.

3. Put the kernel on the PS4

The kernel stays on the console, not on the USB.

  1. Jailbreak with GoldHEN.
  2. FTP to the PS4, port 2121.
  3. Create the folder /data/linux/boot/.
  4. Upload the kernel for your console and name it /data/linux/boot/bzImage.
  5. Upload kernel/initramfs.cpio.gz to /data/linux/boot/initramfs.cpio.gz.

Belize uses kernel/bzImage-belize-7.1.7. Baikal uses kernel/bzImage-baikal-7.0.8. If the light stays white for more than 20 seconds, check the table and use the kernel that matches the console. You can also power off, turn the console back on, and try again.

4. Boot

  1. Plug the USB into the PS4 before you turn it on.
  2. Jailbreak.
  3. Send payloads/linux-1024mb.elf to the loader:
nc -q 1 <PS4-IP> 9020 < payloads/linux-1024mb.elf

If port 9020 does not answer, try 9090. A black screen for a minute or two is normal. It then logs in to the KDE desktop.

After a reboot you are back on the PS4. Jailbreak and send the payload again. The USB can stay plugged in.

5. Use the rest of the USB

Do this only after Linux is running on the PS4, not from the PC. The image is about 12GB. On a larger stick, the space after that stays unused until you grow the Linux partition.

Grow only the partition whose label is psxitarch. That is partition 2 of the USB stick. Never touch the console's internal disk.

These commands were not run on the console. They are the usual ones. Run lsblk -f and replace sdX with the disk that shows the label psxitarch, not a partition name like sdX1:

lsblk -f
sudo parted /dev/sdX resizepart 2 100%
sudo resize2fs /dev/sdX2

If parted asks whether to continue because the partition is in use, answer yes. This only grows that USB partition.

Payloads

File VRAM Use
linux-32mb.elf to linux-512mb.elf 32-512MB No desktop. Server only.
linux-1024mb.elf 1GB Use this for the desktop. Tested on Pro and Slim.
linux-2048mb.elf 2GB More graphics memory.
linux-3072mb.elf 3GB Not tested.
linux-4096mb.elf 4GB Tested on Pro (FW 13.52). Heavy games and emulators. Leaves about 4GB RAM.

After it boots

  • The controller works on a USB cable. Bluetooth has to be paired again after every boot.
  • Ethernet works. Wi-Fi is still being tested. Prefer 2.4GHz.
  • Sleep is turned off. Suspending the console breaks this Linux.

Troubleshooting

  • Black screen: Linux does not always start after the jailbreak. This is normal. Do a full power off (hold the power button), wait a few seconds, jailbreak again and retry. The 2nd or 3rd try usually works.
  • Best routine: plug the USB in before powering on. Send the ELF right after the jailbreak, without opening games or apps. Wait 1-2 minutes on a black screen before giving up.
  • White light: If it turns from white to blue within about 15 seconds, the kernel started and Linux is loading. If it stays white for more than 20 seconds, check that the kernel matches the console using the table. If it stays white, you can also power off, turn the console back on, and try again.
  • Rescue shell with mounting LABEL=psxitarch failed: the USB was not connected or detected. Plug it in and reboot (resume-boot does not help).
  • Sleep / suspend is not supported: already disabled in the ready-made USB image (suspend, screen dimming and screen off are turned off). If you build your own image, disable it in KDE Power Management, or run:
sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target
  • Pasted commands add junk characters: type them by hand.

Credits

  • fail0verflow (marcan, shuffle2) - original PS4 Linux kernel port and ps4-kexec (the base of the loader)
  • rancido and PSXITA Team, eeply, valeryy, tihmstar, mircoho, codedwrench, crashniels - PS4 kernel patches (amdgpu, Pro/Slim video, HDMI audio, Baikal and Belize support) carried into today's kernels
  • rmuxnet - Strawberry kernels (7.1.7 Aeolia/Belize, Baikal port to 7.0.8) and the firmware/southbridge agnostic loader rework
  • ps4boot - original ps4-linux-payloads loader
  • ArabPixel - ps4-linux-loader maintainer, FW 12.5x and 13.00-13.52 support
  • PSXITA Team (Rancido) - Psxitarch v3 initramfs and install scripts
  • Piotr Karbowski - better-initramfs
  • Erkkola (ErkkolaMaitohappo) - Arch Linux KDE v1.1.1 rootfs
  • centi07 and DionKill - PS4 patched Mesa and video driver packages
  • SiSTR0 - GoldHEN (jailbreak, FTP server, BinLoader)

Kernels, payloads and initramfs are unmodified and belong to their authors.

About

Linux (Arch KDE) on jailbroken PS4 - Belize/Aeolia & Baikal kernels. FW 13.52 tested.

Resources

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages