Emulating non-x86 Machine Types

ChairmanJones

Member
Jul 19, 2017
2
1
8
44
Hello, new user here. Switched from ESXi to Proxmox earlier this year, now I have a small cluster running. These forums have been awesomely helpful in getting everything up and running.

Under QEMU there are many additional machine types, specifically ppc, mips, and sparc. Is it possible to add machine types to proxmox in order to run older OSs? Installing QEMU simply stomped on Proxmox's version.
 
  • Like
Reactions: stappers
Hello, new user here. Switched from ESXi to Proxmox earlier this year, now I have a small cluster running. These forums have been awesomely helpful in getting everything up and running.

Under QEMU there are many additional machine types, specifically ppc, mips, and sparc. Is it possible to add machine types to proxmox in order to run older OSs? Installing QEMU simply stomped on Proxmox's version.

I don't think there is any built-in functionality for that, but it would definitely be a nice feature. Though you might be able to do some trickery with the args: option in the VM configuration as a work-around, I'll look into it.
 
I don't think there is any built-in functionality for that, but it would definitely be a nice feature. Though you might be able to do some trickery with the args: option in the VM configuration as a work-around, I'll look into it.
Yeah, I tried that. KVM complains that it's not a supported machine type if you use machine: or args -M <type> for anything outside the list you get back from kvm -machine help.

EDIT: Thought code tags would inline. Edited for readability.
 
It is possible to trick the system in using linux containers with different architectures via qemu-user binary and binary translation from the kernel, yet this is only LXC, not KVM.
 
Yeah, I tried that. KVM complains that it's not a supported machine type if you use machine: or args -M <type> for anything outside the list you get back from kvm -machine help.

EDIT: Thought code tags would inline. Edited for readability.

qemu's `system` argument refers to some preset system configurations it can provide such as i440fx and q35. For more info on that you can look at qemu-system -machine help.


I'm looking at the QEMU/KVM command that proxmox generates for a VM config ( qm showcmd <vmid> ) and it doesn't look like there would be any easy way to do this. The command it runs uses KVM as the executable, which does support many architectures, but when I run kvm -cpu help the only options that I see are x86 processors, despite the fact that I have the qemu-system-ppc package installed and I am able to emulate PPC systems in that way.
 
we only build the amd64 emulation, and install qemu-system-amd64 as "kvm" binary. so no, this does not work unless you manually re-build our pve-qemu-kvm packages with more architecture support and adapt the perl scripts to use the appropriate qemu-system-XXX binary.
 
For what it is worth

Code:
git clone git://git.proxmox.com/git/pve-qemu-kvm
for old QEMU for PVE

and
Code:
git clone git://git.proxmox.com/git/pve-qemu
for QEMU for PVE

See also https_//pve.proxmox.com/wiki/Developer_Documentation
 
Got a clean build of package pve-qemu-kvm by
Code:
git clone git://git.proxmox.com/git/pve-qemu
cd pve-qemu
# satisfy build depends
make

Now looking for where the non-x86 architectures were disabled.

I couldn't it in debian/patches, the subgitrepostory mirror_qemu looks complete to me.

Clues welcome ;-)
 
Got a clean build of package pve-qemu-kvm by
Code:
git clone git://git.proxmox.com/git/pve-qemu
cd pve-qemu
# satisfy build depends
make

Now looking for where the non-x86 architectures were disabled.

I couldn't it in debian/patches, the subgitrepostory mirror_qemu looks complete to me.

Clues welcome ;-)

it's in the packaging directly - see debian/rules (although such questions might be better asked on pve-devel , where they are not as easily overlooked ;))
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!