The PlayStation 4 may no longer be at the cutting edge of modern gaming, but its hardware—a custom eight-core AMD processor paired with 8 GB of RAM—is still more than capable of running Linux. By installing Linux, you can transform an old PS4 into a stylish media centre, a desktop PC, or even a retro gaming station through emulation.
This detailed guide explains how to set up a complete Linux system on the PS4, covering the essential steps to perform a jailbreak, install and configure Linux, and begin using it for anything from media streaming to hosting server applications.
Overview and Preparations
- Time Required: ~4 hours
- Potential Cost: ~€110 (depending on hardware choices)
- Materials Needed:
- PlayStation 4 console (with cables and controller)
- Mouse and keyboard
- USB 3.0 storage (SSD, HDD, or large-capacity USB stick)
- Windows PC for preparation and file copying
1. PS4 Requirements and Initial Setup
To install Linux, you must first apply a jailbreak. This jailbreak exploits a system vulnerability and allows you to run software the console would normally block. For this article’s approach, the console must be on firmware version 11.0. If your PS4 is on an older firmware, you can manually update it to version 11.0 (provided you can locate the correct update file). A more recent firmware cannot be downgraded, so if your console has been updated past 11.0, you unfortunately cannot install Linux following this guide.
Before proceeding:
- Disable Automatic Updates
Go to Settings → System → Automatic Downloads and untick all options. This ensures the console does not download or install a newer firmware by itself. - Turn Off HDCP
Under Settings → System → Enable HDCP, switch this off. - Adjust Video Settings
In Settings → Sound and Screen → Video Output Settings, set the configuration so that resolution, RGB range, and other parameters match the recommended stable setup. (For example, 1080p resolution and full RGB range if your TV supports it; see any relevant instructions provided by your chosen Linux distribution to avoid graphical problems.)
Updating to Firmware 11.0 (If Needed)
- Download the required firmware file named something like
PS4UPDATE.PUP
(for version 11.0). - On a FAT32-formatted USB stick, create the folder path
PS4/UPDATE
. - Place the
PS4UPDATE.PUP
file inside that folder. - Plug the stick into the console, then go to Settings → System Software Update and follow the prompts to install version 11.0.
2. Preparing the Jailbreak
The jailbreak explained here relies on a bug in the PS4’s PPPoE network implementation. You will:
- Obtain GoldHEN
- Download the GoldHEN package (for example,
GoldHEN_v2.4b18
) and extract it using a tool like 7-Zip. - Inside the extracted folder, locate
goldhen.bin
. Copy it onto a FAT32- or exFAT-formatted USB stick. Insert that stick into the PS4.
- Download the GoldHEN package (for example,
- Extract Additional Files
- Within the GoldHEN archive, find and extract
stage2_11.00.bin
(or a similarly named file) from the relevant sub-folder. Keep this file somewhere on your Windows PC for quick access.
- Within the GoldHEN archive, find and extract
- Obtain PPPwn GUI
- Download a small utility called PPPwn GUI, which will push the jailbreak exploit to the PS4 over a LAN connection.
Setting Up the PS4 Network for the Jailbreak
- Direct LAN Connection
- Connect the PS4 to your Windows PC with a standard Ethernet cable (no router or switch in between).
- On the PS4, go to Settings → Network → Set Up Internet Connection, choose Use a LAN Cable and select Custom.
- Choose
PPPoE
as the connection method. You can fill in any dummy username and password. Let the remaining options stay at defaults. - Eventually, you will see an option to Test Internet Connection—don’t press it yet, or if you do, be prepared to re-run it once everything is set on your PC side.
- Launching PPPwn GUI on the Windows PC
- Start PPPwn GUI.
- Under Payload (stage2), select the
stage2_11.00.bin
file you extracted earlier. - Under Config, pick the network interface on your PC that is directly connected to the PS4, then set the firmware option to
11.0
. - Click Run Exploit.
- Completing the Exploit
- Switch back to the PS4 and continue with the Test Internet Connection step.
- PPPwn GUI will show logs of the exploit attempts. If it fails, it retries automatically until it succeeds. Once successful, the console will display a message like “ppppwnd,” indicating the exploit (jailbreak) is now active.
- The PS4 main menu should now show a new icon or menu for GoldHEN at the top-left corner.
Important: The jailbreak is only loaded into the PS4’s RAM and disappears upon a full reboot. If you want to keep it active for an extended period, use standby mode rather than powering off. Inside GoldHEN settings, activate “Enable Rest Mode Support.” Once set, the console will remain jailbroken when it enters standby.
3. Installing Linux on the PS4
With the console jailbroken, you can run software not officially approved by Sony—including Linux. For this guide, we’ll use a community-maintained distribution adapted for the PS4.
Key Steps
- Download a Suitable Linux Distribution
- A recommended resource is
ps4linux.com
, where you can find various prebuilt images. This guide refers to “Fedora 38 by DF_AUS,” which includes multiple desktop environments and tools like Kodi.
- A recommended resource is
- Obtain the Matching Kernel
- On your PS4, check Settings → System → System Information; under “Southbridge,” note the name Aeolia, Belize, or Baikal (added by GoldHEN).
- Choose the corresponding kernel from ps4linux.com. The kernel file might be named
bzImage
or similar.
- Download the Initramfs
- Also obtain the matching
initramfs.cpio.gz
. This file helps the system initialise hardware and load the main OS.
- Also obtain the matching
Creating the Linux USB Drive
- Prepare a USB 3.0 Stick or External Drive
- A capacity of 128 GB is enough for testing; if you plan more intensive usage, consider 500 GB or more.
- Use Rufus (Windows)
- Insert the USB drive into the PC.
- Start Rufus and select the Fedora image (e.g., “Fedora_38_PS4.iso” or a compressed file you extracted) as the source to “burn.”
- After flashing, Windows may auto-open a small partition on the drive. Inside, you’ll see a default
bzImage
andinitramfs.cpio.gz
. Replace these with the specific kernel and initramfs you downloaded for your PS4 hardware.
- Ready to Boot
- Eject the USB drive from Windows.
4. Booting and Setting Up Linux
- Plug the Linux USB into the PS4
- Launch the Exploit for Linux
- Open the PS4’s web browser (with jailbreak active) and visit a site that hosts Linux payloads, for example
kmeps4...
or a known community exploit page. - Choose the 2 GB VRAM option (if you want 2 GB dedicated to graphics). Alternatively, pick a different VRAM configuration if needed. A typical example might be labelled “11.00 Linux 2GB VRAM.”
- A GoldHEN prompt should say that a payload has been received, then your screen may go black briefly. The kernel will begin to boot.
- Open the PS4’s web browser (with jailbreak active) and visit a site that hosts Linux payloads, for example
- Keyboard and Mouse
- Make sure to have a USB hub (or multiple USB ports) so you can attach both a mouse and keyboard. Once Linux starts displaying text and boots to a login or desktop environment, you can proceed.
- Initial Login
- Depending on the distribution, default credentials vary. For the referenced Fedora build, the username might be
root
orliveuser
, and the password might beps4linux
. - Adjust your language and desktop environment from the login screen if options are offered. (Fedora 38 by DF_AUS might have LXDE, GNOME, Openbox, and Kodi. LXDE is lightweight and recommended for general desktop usage. Kodi is ideal for a media centre.)
- Depending on the distribution, default credentials vary. For the referenced Fedora build, the username might be
Creating a Swap File
Because the PS4 has only 8 GB of RAM (some of which is reserved for VRAM), it’s wise to create a swap file:
bashCopysudo fallocate -l 4G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
To activate it on every boot:
sudo nano /etc/fstab
- Add a new line:bashCopy
/swapfile none swap sw 0 0
- Press
Ctrl+S
to save, thenCtrl+X
to exit.
5. Updating Without Breaking PS4 Drivers
Regular Linux distributions can break PS4-specific drivers if you update them carelessly. In many adapted builds, you must exclude certain packages (like kernel*
, mesa*
, libdrm*
, xorg-x11-drv-a*
) so you don’t overwrite vital PS4 patches. For example, under Fedora:
bashCopysudo dnf update -x kernel*,mesa*,libdrm*,xorg-x11-drv-a*
Check your distribution’s instructions for recommended update parameters to avoid losing PS4 support.
6. Exploring Your New Linux PS4
Media Centre with Kodi
- Fedora 38 by DF_AUS typically includes Kodi for local or network-attached streaming. Some kernel builds even allow DVD playback via the internal PS4 drive, though external USB drives always work if you have trouble.
- Pairing the PS4 controller over Bluetooth can let you navigate Kodi with gamepad controls. On your Linux desktop, enable Bluetooth, hold the middle “PS” button plus “Share” until the controller’s light blinks, then pair.
Emulation and Retro Gaming
- Linux on PS4 can run emulators such as PCSX2 (PlayStation 2) or Dolphin (GameCube/Wii). Performance typically surpasses small hobby boards (like a Raspberry Pi) but may not match a powerful modern PC.
Server Applications
- Because this Linux environment is relatively complete, you can run standard server software, such as a Git hosting service, a web server, or Nextcloud.
- To operate “headless,” you can install a management tool like Cockpit and remotely monitor your PS4 from another device.
More Tips
- If you want the jailbreak to persist between sessions, do not fully shut down the console—use standby.
- Some advanced features (like Blu-ray playback using MakeMKV) involve circumventing copy protection, which may be prohibited in certain regions. Always check local legal requirements.
- For advanced usage, keep an eye on ps4linux.com or similar community pages for updated kernels with new features or bug fixes.