Proxmox for PS4 Beta: Virtualisation to run Windows on PS4

Proxmox VE for PS4 is a virtualisation for PS4 with a Web Admin GUI capable of running Virtual machines with Windows and other OSes on PS4.

Windows on PS4? Well, that is definitely the dream, right? But, there are definite differences between native Windows and virtualised Windows. And right at the outset, I’d like to make it clear that Proxmox for PS4 lets you virtualise Windows on PS4. This means, with Proxmox OS for PS4, you will be able to create and run Windows 10 virtual machines on your PS4.

Many of you guys would remember the beginning of my initial plan to port Proxmox to PS4, a few months ago. I even had started a Ko-fi goal for that purpose. But, due to some reasons, I had to defer it. Anyways, I have been working on Proxmox behind the curtains for quite some time now, and with this article, I am launching Proxmox OS for PS4.

UPDATETutorial: Install Windows 10 on Proxmox for PS4

What is Proxmox?

For those who still don’t know, here is the explanation quoted directly from Proxmox’s website:-

Proxmox VE is a complete open-source platform for enterprise virtualization. With the built-in web interface you can easily manage VMs and containers, software-defined storage and networking, high-availability clustering, and multiple out-of-the-box tools on a single solution.

You get the idea. Proxmox, being a web admin GUI-based OS has multiple possibilities. Technically, you could infact turn a machine into a server using Proxmox. But, remember that Proxmox doesn’t look like the usual virtualisation applications, like VirtualBox or QEMU (GUI), that most of you are familiar with.

Proxmox for PS4: Features

  • Web Admin GUI
  • Internet access via Ethernet
  • Ability to run Windows
  • Built-in console, accessible via browser
  • SSH & FTP access enabled
  • More..

What doesn’t work?

You would have noticed that this is the Beta version of Proxmox for PS4. This invariably means that some stuff doesn’t work. Here are a few that don’t work yet:-

  • GPU passthrough (Virtual machines can’t access PS4 GPU)
  • WiFi passthrough
  • You tell me

As for GPU passthrough, it’s going to be an uphill battle to get it working. But, I haven’t yet given up, and will be working towards achieving it. I can’t guarantee anything yet, but, will be sharing updates via social media. If you’d like to support the project, please consider donating on Ko-fi.

Download

Login details

  • User: root
  • Password: ps4

Requirements

You can check out the general requirements for running Linux on PS4 here. Apart from those, here are a few other things are mandatory for running Proxmox specifically:-

  • Modified kernel
  • Ethernet (via port on PS4 or USB adaptor)
  • Linux OS on PC or virtual machine (Ubuntu or Ubunut-based distro recommended)
  • Another internet capable device (to access Web Admin GUI)

We will be covering these in the installation part more clearly.

Screenshots

Video Tutorial: Install & setup Proxmox on PS4

If you prefer the textual tutorial, keep reading.

Installation: How to install Proxmox on PS4?

The installation and setup of Proxmox for PS4 broadly contains three stages – pre-installation, installation and post-installation. We will talk about these one by one.

Step 1. Pre-installation setup of Proxmox for PS4: Kernel modification

In this step, we will be modifying the kernel for your PS4 in order to enable options that allow for virtualisation. Follow these steps.

  1. Download an appropriate kernel source for your PS4 from here (5.x recommended). To find out your PS4 southbridge, check these steps. If you are new to this, check my detailed PS4 Linux kernel compilation tutorial.
  2. Go into the kernel folder. Check if a config file exists and that it is named .config. If not, try contacting the dev, or use another kernel’s config and work your way up from there.
  3. Open a terminal in the kernel folder, type make menuconfig, and press Enter. This will open up a kernel modification menu.
  4. Check if Virtualization is enabled. If enabled, the brackets prefixed to Virtualization will have an asterisk, like this – [*]. If not, scroll down to Virtualization and press Y.
  5. Go into Virtualization options by pressing Enter. Enable two options (if not already enabled):-
    • Kernel-based Virtual Machine (KVM) support
    • KVM for AMD processors support
  6. Press forward slash (/) on your keyboard and in the search box, type IO_URING and press Enter.
  7. Press 1 on keyboard to directly go to IO_URING option and enable it.
  8. Next, if you are using an Ethernet to USB adaptor, enable the kernel drivers for it. Check out my detailed tutorial for PS4 Linux driver addition.
  9. When satisfied, save it as .config. Press Esc key multiple times to return to the terminal.
  10. Now, check how many cores your PC has. Assuming you are doing it on a quad core (4 cores) CPU, on the terminal we already had open, type make -j5 bzImage and press Enter. The general rule of thumb is in the command, j should be followed by the number cores plus 1. So, if you were to compile on a PS4 Linux distro, you would type make -j9 bzImage as PS4 has an octa core (8 cores) APU.

The compiled kernel (bzImage) will be available in the arch/x86/boot folder. Copy it somewhere safe.

Step 2. Proxmox installation on PS4

This will not be covered here separately, as this is same as that of any other PS4 Linux distro. You can use the Alternate method or the Rescueshell method. But, remember to use the modified kernel. As for the initramfs, use any one available.

Step 3. Post-installation setup of Proxmox for PS4

Step 3.1. Load Proxmox for PS4 and setup internet

  1. Connect Proxmox USB drive and Ethernet to PS4 (to PS4 port or via USB adaptor, whatever works).
  2. Load Linux payload from any exploit host.
  3. Login using the username – root and password – ps4.
  4. On the shell, type ip a and press Enter. Make a note of two things:-
    • Ethernet adaptor name, for example, eth0 or enp0s1.
    • Complete IP address, for example, 192.168.1.2/21. If eth0 is your ethernet adaptor, then, the IP address will be available in the inet section under eth0.
  5. Type nano /etc/hosts and press Enter. Replace 192. with the IP address noted down in the earlier step. But, just provide the address and do not add the forward slash and the digits after them. So, the final result should be something like 192.168.1.2 ps4linux. Press Ctrl + S and then Ctrl + X to save and exit.
  6. Type nano /etc/network/interfaces and press Enter. You will see something like this:-
    auto eth0
    iface eth0 inet dhcp
  7. Replace instances of eth0 with your adaptor’s name, if it’s not eth0. Press Ctrl + S and then Ctrl + X to save and exit.
  8. Type /etc/init.d/networking restart and press Enter.
  9. Once that’s completed, you should be ready to access the Web Admin GUI. Connect your second device (computer, tablet, mobile phone, etc.) to the same network as PS4. It doesn’t matter if the second device is connected via WiFi, as long as it is the same network as the PS4.
  10. On your second device’s web browser, type https:// followed by Proxmox PS4’s IP address suffixed by a :8006 and press Enter. For example, https://192.168.1.2:8006.

This will bring up Proxmox’s Web Admin GUI. Everything you plan to do with Proxmox including VM creation and management can be done from this admin panel.

With that, we move to the final step of the setup.

Step 3.2. Setup internet passthrough for virtual machines

This step, by creating a virtual bridge (vmbr0) will enable internet access for virtual machines too.

The edits have to be made via terminal. You can either do this by going back to the terminal shell on your PS4. Better yet, on the Admin panel in the browser on your second device, click on ps4linux on the left pane. Then, click on Shell on top right. This will open up a terminal.

  1. Type nano /etc/network/interfaces and press Enter. Towards the bottom, you will see something like this:-
    auto eth0
    iface eth0 inet dhcp
    #auto vmbr0
    #iface vmbr0 inet static
    #      bridge ports eth0
    #      bridge-stp off
    #      bridge-fd 0
    #      address
  2. Make the following changes:-
    1. Replace dhcp with manual.
    2. Remove all # before the 6 lines shown above.
    3. In the linebridge-ports, replace eth0 with your adaptor name (if not eth0).
    4. After address, provide a space and then, complete IP address of the PS4. It should look like this – address 192.168.1.2/21.
  3. Press Ctrl + S and then Ctrl + X to save and exit.
  4. Type /etc/init.d/networking restart and press Enter.
  5. When done, you can verify if the bridge has been setup successfully. To do that, go back to the Admin panel, and after clicking on ps4linux in the left pane, click on Network in the middle pane. This should now be listing vmbr0 as active.

That’s it! Now, your PS4 is ready for virtualisation on PS4.

Special thanks to all donors

I’d like to thank each and every person who donated towards Proxmox via the Ko-fi goal. Here is a list of all the donors (usernames on Ko-fi) in order of their donation dates (oldest to latest):-

  • Andrea
  • Abdulmohsen Alfardan
  • cheezy5
  • Matias
  • Ydvaditya
  • Maciej Pędzich
  • Pontus
  • Tsunun
  • Alan Frost
  • Reo Auin
  • Core2k
  • novice4321
  • mastakey
  • Mistawes

I also thank the Proxmox team for this awesome distro!

Conclusion

As said earlier, I will be working more on this project in the future. If you would like to support, please donate. Once again, thanks to all the donors who made this possible. Also, if you do face any issues during installation or setup, leave a comment below, or in the forum thread. And, I will get back to you.

12 Comments

  1. After address, provide a space and then, complete IP address of the PS4. It should look like this – address 192.168.1.2/21.

    Press Ctrl + S and then Ctrl + X to save and exit.
    Type /etc/init.d/networking restart and press Enter.

    after this step i have no access to gui anymore.
    is the /21 at ip the port?

  2. You left them alone with their problems. Do it on your own pls. Take care.

    Guys i am still not able to Compiler Kernel. Sorry. You need to ask noob

    • Yah, I am doing it on my own, have been for a long time. Thanks for the well wishes though. And, good luck to you too!
      I don’t have to say this though, if at any point, you’d like to join the Discord or the community, you’re always welcome.

  3. Would yo pleased share your Kernel .config File? From Release day i am trying. Something important seems missing in my Kernels.

Leave a Reply

Your email address will not be published.


*