8 ms·
Anybody here using QEMU? What is your use case?
by founderling 7y ago
Anybody here using QEMU? What is your use case?
- jeffhuys 7y agoI used it before to dabble in BIOS coding. Just for fun.
- unixhero 7y agoScreenshots? :)
- osmay88 7y agoVirtualbox doesn't work with Linux 5.1 so I moved a bunch of VMs to Qemu.
- Dylan16807 7y agoHuh, surprised it broke that badly. But support appears to be there as of a week ago, fyi.
- Svenstaro 7y agoIt does now for me at least in version 6.0.6.
- osmay88 7y agoInteresting, I installed 6.0.6 and got issues generating the kernel modules.
- gattilorenz 7y agoMainly playing with old operating systems, I'm a retrocomputing enthusiast. While years ago I would mainly use Virtual PC (I do miss its great GUI) and VMWare (and rarely bochs), qemu improved a lot and has (somewhat decent) support for so many more architectures. You can run Solaris for SPARC and Mac Os 9, for example.
- bane 7y agoI'm interested in your is cases. Do you have any good write-ups for Mac OS 9 and others? I never considered QEMU for those older systems.
- gattilorenz 7y agoWell, usually the internet is large and you can find lots of guides :) I'm an avid follower of virtuallyfun.com and right now the latest post is about installing AIX on QEMU. If you look into the qemu category ( https://virtuallyfun.com/wordpress/category/qemu/ https://virtuallyfun.com/wordpress/category/qemu/ ) you'll find OS X Server, Unixware and more. The author, neozeed, is very friendly and you can leave him comments or shoot him an email and he usually answers pretty in depth. As for OS 9, I'm not sure it is as refined and functional as SheepShaver on Windows yet, but I'm on OS X, where SheepShaver takes more effort to set up. There's a modified QEMU for enhanced OS 9 compatibility (I think more G3 emulation?) here, and people managed to install 9.2: https://www.emaculation.com/forum/viewtopic.php?f=34&t=9028 https://www.emaculation.com/forum/viewtopic.php?f=34&t=9028
- jayalpha 7y ago"Solaris for SPARC" Link?
- gattilorenz 7y agohttps://astr0baby.wordpress.com/2018/09/22/running-solaris-2-6-sparc-on-qemu-system-sparc-in-linux-x86_64-mint-19/ https://astr0baby.wordpress.com/2018/09/22/running-solaris-2... Or do you mean a copy of the ISO? For that I'd try archive.org or winworldpc
- hpaavola 7y agoWe build our own Linux images (using Yocto) for various embedded devices and run the same images on QEMU for testing purposes.
- kbumsik 7y agoIs there any great resources to learn QEMU for ARM embedded system? I googled them bit it's a little bit mess.
- rcarmo 7y agoI'm using it extensively, but as a build tool: https://github.com/multiarch/qemu-user-static https://github.com/multiarch/qemu-user-static (See https://taoofmac.com/space/blog/2019/04/21/2300 https://taoofmac.com/space/blog/2019/04/21/2300 and https://github.com/insightfulsystems/alpine-python https://github.com/insightfulsystems/alpine-python)
- selvakn 7y agoSame here. Use it to build tools targeting arm architecture (rpi, etc) on a x86_64 machine, that too in docker.
- rcarmo 7y agoMy experience is that building for ARMv7 is relatively quick, but ARMv6/armhf is MUCH slower. I have no idea why, really. Will be trying ARM64 soon, as soon as I have a suitable development board.
- cbluth 7y agoi use qemu/kvm almost everyday. i also use qemu-img tools quite often. and as other people have mentioned, building inside qemu is quite convenient, especially with tools like packer.
- rnhmjoj 7y agoI'm on NixOS and QEMU is well integrated in Nix. You can write a system configuration, generate a QEMU VM and run it. Also all NixOS automatic tests[1] are running in QEMU VMs that are generated from a Nix configuration. The most beautiful thing is that you can create multiple VMs and run them simultaneously to create a virtual network. For example you can test a client-server application by running the client and the server on two hosts or test some network configuration[2]. [1]: https://nixos.org/nixos/manual/index.html#sec-nixos-tests https://nixos.org/nixos/manual/index.html#sec-nixos-tests [2]: https://github.com/NixOS/nixpkgs/blob/master/nixos/tests/nat.nix#L67 https://github.com/NixOS/nixpkgs/blob/master/nixos/tests/nat...
- MuffinFlavored 7y agoYou use NixOS as your daily operating system? What’s that like?
- callahad 7y agoI've been using it on my personal laptop for the past two months. There are a lot of rough edges to the desktop experience, but it generally works. And while that's faint praise, I have no current plans to switch back to Fedora (3 years) or Debian (12 years prior to that). It's comforting to know that my entire base system configuration is declarative, and it's pleasant to not worry about libraries conflicting or unnecessary packages lingering around. Immediate, ephemeral access to programs via, e.g., `nix-shell -p pdftk` is extremely convenient: they're only available in that shell session, and they (along with their dependencies) get cleaned up the next time you run `nix-collect-garbage`. Super handy.
- MuffinFlavored 7y agoWhat do you use as a web browser? edit: nevermind, I didn't realize it was a Linux distro.
- pknopf 7y agoWhat do you think about Darch? https://godarch.com/ https://godarch.com/
- V1r 7y agoI use it to run aarch64 unit test builds on my x86 system. Pretty cool with binfmt support, allowing me to run aarch64 executables just like any other x86 executable: https://wiki.debian.org/QemuUserEmulation https://wiki.debian.org/QemuUserEmulation
- kashyapc 7y agoQEMU is one of the core building blocks for many of the KVM-based data center virtualization and infrastructure projects (e.g. OpenStack, oVirt, KubeVirt, etc). And is used by a wide variety of other projects for various use cases (e.g. `systemd` upstream uses QEMU to speed-up development/testing). When you launch a KVM-based guest, most often you would see QEMU doing the major user space heavy-lifting by providing a PC-like environment—it handles guest memory management, network cards, emulated storage devices, and so forth. QEMU also has a robust Block Layer; not to mention its versatile, and widely-used, native disk image format, QCOW2. PS: I am biased, as I work with QEMU on a daily basis :-)
- kstenerud 7y agoI have a NUC sitting in a closet that I've set up to serve virtual desktops using LXC or libvirt (depending on what features I need, or if it's a Linux or MacOS or Windows guest). I made some scripts to build the various types of virtual environments I need [1], and then connect to them using x2go or Chrome Remote Desktop. This has really freed me up because I'm no longer tied to a single machine. My home dirs are mounted volumes that are also backed up, so I can tear down and rebuild the environment with a single command (which means that my environments are also deterministic). I can connect to them from anywhere on the planet, using any machine as a client (even my phone or a tablet). My main laptop is now a weaksauce 1080p chromebook that acts as a glorified thin client and web browser. [1] https://github.com/kstenerud/virtual-builders https://github.com/kstenerud/virtual-builders
- qalmakka 7y agoWe've a shared beefy Threadripper workstation in my lab that has a boatload of RAM and cores to spare. We set up Qemu + KVM in order to run a big Windows VM that we use mainly for MS Office via RDP connections and when we really need Visual Studio. We also have a FreeBSD and a Aarch64 Linux instance that we use for testing. It's amazing how flexible Qemu is, and how reliable the whole stack can be.
- megous 7y agoWebsite browser compatibility testing on Windows/macOS under Linux.
- 1125 7y agoI'm using it in conjunction with PCI passthrough instead of dual boot. I've been running Windows 10 for more than a year now and played all kinds of AAA titles successfully. The performance-loss seems minimal. Recently I managed to get a second GPU and spin up another VM, so now me and my partner can play on the same machine, heaving each a keyboard, mouse and screen.
- scbrg 7y agoDo you have any hints on how to set up a similar system? Links, guides, gotchas, whatnot? I've seen someone mention this setup before (perhaps it was you?) and I'm sure I'm not the only one interested in running something similar.
- PudgePacket 7y agoYou might be able to find some info here https://www.reddit.com/r/VFIO/ https://www.reddit.com/r/VFIO/.
- scbrg 7y agoThis seems very helpful, yes. Thanks a bunch for posting!
- usernam33 7y agoI have written a "guide" for myself to replicate my setup. It is by no means perfect, but maybe it helps: https://gitlab.com/snippets/1678554 https://gitlab.com/snippets/1678554
- pizza234 7y agoAn overall good introduction/guide is: https://github.com/saveriomiroddi/vga-passthrough https://github.com/saveriomiroddi/vga-passthrough. The most complete guide is probably the Arch Linux one: https://wiki.archlinux.org/index.php/PCI_passthrough_via_OVMF https://wiki.archlinux.org/index.php/PCI_passthrough_via_OVM....
- 1125 7y ago
- bronco21016 7y agoMy employer provides me with an iPad Pro and rather than carry around an additional laptop I run x86 systems (Linux and Windows 10) using QEMU-KVM on my ridiculously overpowered home server and remote desktop to them from the iPad Pro.
- MuffinFlavored 7y agoWhat’s your mouse/keyboard situation like? What remote desktop app do you use? What’s your latency like? What are the drawbacks to a setup like this?
- bronco21016 7y agoFor software I use Jump Desktop. On Linux I connect via VNC and Windows I use their custom Fluid protocol. For keyboard and mouse I use an Anker Bluetooth keyboard and mouse is a Swiftpoint GT. Latency varies a lot and I’ve found hotel WiFi to sometimes be unusable. ATT LTE on the device generally works pretty well. I’m primarily running this setup just to have access to a full browser environment for my tinkering with web scraping so having a super responsive low latency connection isn’t as vital as it would be to do something like gaming. The main drawback is always needing a solid connection which is mostly solved with LTE where I go.
- sgtcodfish 7y agoI currently have a messy side project[1] where I'm writing bare-metal RISC-V machine code (i.e. writing in hex after assembling instructions by hand) targeting the SiFive HiFive1. QEMU is handy for testing since it supports that board pretty well - it lets me skip the "code upload" step and just run a binary with gdb right away. I did a similar thing with the Raspberry Pi a few years ago, but the QEMU support wasn't great back then which made debugging incredibly hard. I think the support has improved a lot since then, so I should probably give it another go. [1] https://github.com/SgtCoDFish/bedrock-bootstrap https://github.com/SgtCoDFish/bedrock-bootstrap - I'm writing the steps as a kind of tutorial to myself to aid learning, but fair warning that it's all a bit of a mess right now!
- pmarin 7y agoRecently I started playing with classic Forth systems like figforth and pygmy. If you are using MS-DOS on QEMU there is a open source utility called DOSIDLE.EXE that keep the CPU usage low and stop the annoying CPU fan from spinning.
- classichasclass 7y agoRunning PowerPC Mac OS X on Talos (and OS 9, but this doesn't work with KVM-PR ... yet).
- unixhero 7y agoSo that's OSX Tiger 10.4 with OS9 emulation layer you want to run on your Talos under a linux-ppc build of QEMU?
- usernam33 7y agoRunning linux as Host and optionally starting my gaming vm. With KVM and various hardware passthroughs (pci network card, usb devices, gpu, etc.) it is as fast a native installation and sometimes even faster compared to my old bloated windows host. Ofcourse it was not easy to setup and some games needed tweaking (e.g. Just Cause 2 wanted to use unsupported cpu features and therefore needed an extra flag). But if one has the time and patience this is awesome.
- akling 7y agoI use QEMU every day for testing my new operating system: https://github.com/awesomekling/serenity https://github.com/awesomekling/serenity QEMU has just the right mix of performance and hackability that I need for my "printf debugging" workflow :) (I've used Bochs a lot, too, which is more hackable, but far less performant.)
- ttflee 7y agoTrying to run Linux and Windows guest on macOS host with hvf acceleration. Found that FreeBSD won’t boot perhaps due to lack of support of v86 mode IVT in hvf part. Also trying to setup gvt-g with dmabuf but corner cases still need fixes, e.g. video playback doesn’t work on overlay sprite of yuv encoding.
- JoshuaRLi 7y agoCurrently using it as part of a testing workflow in making my own linux distribution. It makes booting kernels with initramfs, as well as live images, super easy and painless. QEMU is great software! https://jrl.ninja/joy/1/ https://jrl.ninja/joy/1/
- hatsubai 7y agoWe use it here exclusively at my current place of employment in the OS and BSP team. We create pre-built, bootable ramdisk images inside a QEMU instance which are hashed and saved for fast provisioning, as well as having multiple QEMU instances on targets to prevent cross domain pollution (being mandated by NSA). I work in defense, for context.
- LukeShu 7y agoI use qemu to run multiple virtualized machines on a single beefy (32-core) headless box; including a shared build-server, and my own remote-workstation. I got sick of trying to figure out which thing I needed to click in virt-manager to get it to pass the flags I wanted, so I wrote my own minimal qemu-wrapper that covers all of the functionality from libvirt that I care about (vCPU pinning, binding to NUMA nodes, running as non-privileged user), and integrates better with the other system (systemd) monitoring than libvirt does. https://git.lukeshu.com/systemd-qemu/ https://git.lukeshu.com/systemd-qemu/ ---- I'm also involved with the Parabola GNU/Linux-libre distribution. Qemu user-mode emulation is essential to our support of non-x86 platforms (ARM and PPC). It lets us run cross-architecture chroots without a full-blown VM.
- rvp-x 7y agoWe use it with a wrapper[1] for continuous testing of an operating system[2]. The wrapper will perform the installation process as users do, then run the testsuite and upload the results. It's nice because it lets us catch regressions in the installation process, too. [1] - https://www.gson.org/netbsd/anita/ https://www.gson.org/netbsd/anita/ [2] - http://releng.netbsd.org/test-results.html http://releng.netbsd.org/test-results.html
- sangnoir 7y agoI use it as a VirtualBox replacement via libvert - no thanks to Oracle setting it (VB) up as an IP licensing minefield. Some VirtualBox extensions are non-free in commercial environments, and installing them creates liability for your organization.
- pizza234 7y agoVFIO! I play videogames and use Lightroom. It's rock solid (at least, with my usage pattern), however, v4.0.0 hangs on boot, so I use v3.1.0.
- stefan_ 7y agoI have a library that needs to target, among other platforms, big endian MIPS. It does a lot of endianness sensitive stuff but all the CI workers are naturally little endian, so I run the testsuite through qemu-user simulating a MIPS system.
- checkyoursudo 7y agoI used QEMU for VFIO, GPU passthrough to a Win 10 guest for games. It worked really well. I passed an nvidia card, an ssd with the os/programs, and an hdd data disk from a Linux host (Gentoo). Setting it up was somewhat difficult. When I did it there weren't many good guides for just exactly my situation, so I had to use many, many different resources to get it running. Based on some of the links others have posted here, there seems to be more out there on it now. This was my last working startup script. I no longer recall why or even if any of these options were necessary or beneficial. At the time, it was just what worked. (Dual monitor, separate video cards for host and guest, L-CTRL+R-CTRL to pass mouse/keyboard control back and forth.) I haven't used this in quite a while, so I can't say if all of these options are still legit anymore. #!/bin/bash cp /usr/share/edk2-ovmf/OVMF_VARS.fd /tmp/my_vars.fd qemu-system-x86_64 \ -enable-kvm \ -m 16G \ -cpu qemu64,hv_vendor_id=whatever,kvm=off,hv_relaxed,hv_spinlocks=0x1fff,hv_vapic,hv_time,smep=off \ -smp cores=8,threads=1,sockets=1 \ -machine q35,type=pc -vga std -display gtk \ -drive if=pflash,format=raw,readonly,file=/usr/share/edk2-ovmf/OVMF_CODE.fd \ -drive if=pflash,format=raw,file=/tmp/my_vars.fd \ -drive file=/dev/disk/by-id/ata-Samsung_SSD_860_EVO_250GB_XXXXXXXXXXXXXXX,format=raw,if=virtio \ -drive file=/dev/disk/by-id/ata-ST3000DM001-XXXXXXXXXXXXXXX,format=raw,if=virtio \ -boot order=d \ -object input-linux,id=kbd,evdev=/dev/input/by-id/usb-XXXXXXXXXXXXX_USB_Keyboard-event-kbd,grab_all=yes \ -object input-linux,id=mouse,evdev=/dev/input/by-id/usb-XXXXXXXXXXXXXXXX-event-mouse \ -device virtio-mouse-pci \ -device virtio-keyboard-pci \ -netdev user,id=user.0 -device e1000,netdev=user.0 \ &