Skip to main content

Install to an M.2 SSD

Requires firmware 4.00 or later. The M.2 drive is used for Linux only: you cannot store PS5 games on it at the same time.

Before you buy a drive, read M.2 drives: only NVMe drives work, and Gen3 drives need an unlock.

PS5 Bazzite Deck

Bazzite mounts the boot partition somewhere else and uses different labels. Follow its own M.2 steps instead.

1. Install the drive​

Install the M.2 drive following Sony's official guide. If it was previously used for games, format it first: Settings → Storage → M.2 SSD Storage.

2. Initialise the drive from Linux​

Boot Linux from USB as usual, then run:

cd ps5-linux-tools
sudo ./m2_init
sudo reboot

If the PS5 asks you to format the M.2 drive again after the reboot, report it on Discord with the drive's model and size.

3. Install the Linux image onto the drive​

cd ps5-linux-tools
chmod +x ./m2_install.sh
sudo ./m2_install.sh --install /path/to/ps5-ubuntu2604.img

4. Boot from the drive​

cd ps5-linux-tools
chmod +x ./m2_exec.sh
sudo ./m2_exec.sh

To boot from M.2 every time, edit /boot/efi/cmdline.txt and change root=LABEL=ubuntu2604 to root=LABEL=ubuntu2604-m2.

note

You still need the USB drive plugged in: the loader reads its FAT32 partition at boot.

Kernel updates on M.2

Updating the kernel on an M.2 install can cause a black screen. Stay on kernel 7.0.10 for now, see Known issues.

Switching distros​

You don't need to reformat from the PS5 OS. Formatting the M.2 drive from the PS5 settings only does a "soft" format: it overwrites the blocks the PS5 itself needs and leaves your Linux partition alone. To switch distros, reformat the partition directly from Linux (for example sudo mkfs.ext4 /dev/nvme1, or your preferred filesystem) and reinstall.

No 64 GB USB drive?​

If your USB drive is too small for the full image, use the community rsync-based script instead of m2_install.sh: github.com/g4caos/ps5-linux-script. It copies your running Linux session straight onto the M.2 drive, so you don't need a pre-built image file.