i want to setup a windows 10 virtual machine on my manjaro distro through virt-manager.
the windows 10 is already installed and configured with all the softwares i need to run and is on a separate SSD on dev/sda how can i passthrough the SSD as a hard disk to virt-manager?
Hi, which guide are you following?
none, i couldnt find any on this subject.
i used this to setup a virt-manager with qemu and kvm but thats about how far i came… Install and setup Virt Manager, KVM, and QEMU (Arch/Manjaro) by [Vashinator] in youtube
You could use virsh, to edit it seperate to virt-manager?
Like, if you do
sudo virsh edit VmName
then add the details like these:
<driver name='qemu' type='raw' />
<target dev='sda' bus='sata'/>
<address type='drive' controller='0' bus='0' target='0' unit='0'/>
# if you installed the virtio drivers, better performance may be had with
# working, bus=’virtio’ works fine too
** DRAFT ** Introduction In the future, computer operating systems and hardware will be smart enough to allow apps to run in an operating system agnostic way. To me this means that a computer could run a windows app, a mac app, a Linux app (or BeOS, or FreeBSD, or Plan9, or Android, or anything, really…) side-by-side with performance like as if it were on bare metal hardware. This is a companion discussion topic for the original entry at
sorry i dont follow, what do you mean by edit it seperate to virt-manager? edit what?
and i have intel cpu not ryzen didnt see the video by wendell you posted tho…
Okay, so Virt-Manager is the program you use in Manjaro to launch and manipulate VM’s
But it just takes the VM’s “XML” file, and runs it.
The XML file is like the recipe for the actual machine, and you could use different front ends to actually start/stop it.
Virsh is a program on the command line, that allows for editing of the XML, with finer grained control of what you can change, past what virt-manager can do.
It might use Vim as the default editor, so make sure you know how to :wq your way out of it, but Virsh basically just lets you do more.
When you save and quit out of Virsh, it will also trigger a check, to make sure all edits are sane, and there were no missing characters / punctuation etc.
You can use other apps to launch/run VM’s, like cockpit etc, but I lie virt-manager, as it has a lot of options available, in an easy to use graphical interface, but it lacks the power of the cli…
got you, but where do i find the VM itself to open? i only have one thing in virt-manager its name is QEMU/KVM and the storage tab has two pools like so:
> <pool type="dir">
> <capacity unit="bytes">484571783168</capacity>
> <allocation unit="bytes">38445703168</allocation>
> <available unit="bytes">446126080000</available>
sudo virsh list --inactive
Dang, editted the dev= bit
Huh, how about if you start the vm, and run virsh list while it is running in V-M?
Presuming you have already set up a VM, and are just fine tuning it.
If you did not make one to start with, beacuse of the HDD passthrough, then we go a different way…
tried running a VMware and using the command you gave me, it output nothing again.
just watching the vid now, to see where the passthrough is mentioned, and fails.
I presume you can run a VM with just a virtual storage space to see if the rest all works?
Right, what kind of tasks would you like to do with your system once it’s all running?
Like, editing, or developing, or testing, or gaming?
Or just for services or hosting?
looks like there was already a thread about this with a possible soultion:
If you want to pass through a raw disk device, you don’t create a storage pool. Storage pools store images.
In the storage selection step, select “Select or create custom storage”, then type /dev/sda in the entry field. Click Forward.
Actually, it’s better if you don’t use the /dev/sd* entries for this, use the link to the device in the /dev/disk/by-id directory. This way, if the name of the device changes (because you plugged in a usb drive or whatever), it’ll still work.
i am looking to run manjaro for my main work and a windows 10 VM machine(which is also a bare-metal in case i need it) for gaming.
Okay, the reason I ask, is because GPU’s can be finnekey.
The link above briefly describes how to pass through a block device, in Virt-Manager, without having to mess with the cli/virsh.
It also suggests to use the /dev/disk/by-id/ name for the device, rather than the /dev/sda because that letter can change.
so if you did:
ls -la /dev/disk/by-id/ | grep sda
it’d give the ata-OCZVertex4000shdfjhsd name for the drive, which won’t change.
It’ll also list the partition names as -part1 and -part2 etc.
I would say look at the Arch Wiki for info as well, but there is a lot to take in, so take a little time, try a few things, hit some errors, google them and carry on trying the next bit.
Nvidia GPU’s are notorious for troubles in guests, but that is another can of worms…
there are a few guides on this forum for the set up, two of the the most rated are here:
In this installation we are going to be discussing the technology behind PCI Passthrough to VMs. The concept of passthrough is relatively simple. You take a physical device and forward it’s memory registers to the VM. A simple idea, however, doesn’t make an implementation simple. There’s a lot that goes into passthrough, and a bunch of extremely talented people have put a lot of time into software to bring passthrough to the point where it’s a lot easier than it was before, but still not quite plug ‘n’ play.
Now, what goes into it exactly? To give a brief overview, we’ve got the hardware support for passthrough, the IOMMU or Input-Output Memory Management Unit, supported by both the motherboard and CPU. (more info on that
here) The Linux driver, VFIO, is assigned to the device at boot, preventing the device from being initialized. This will help us when it comes to passing our GPU into the vm. If we’ve got the GPU bound to another driver, we won’t achieve successful passthrough, because you won’t be able to exclusively lock the GPU’s resources to the QEMU vm.
Now, let’s talk about the PCIe bus. The machine I’m going to be using as a reference has an ASUS Z170-a and a 6700k. This gives me 16 PCIe lanes on the CPU to play with. Most GPU’s will be happy with 8 lanes, so we shouldn’t have bandwith issues here. I am going to be passing two devices to my VM: GPU and USB-3 controller. The passthrough GPU will be using an 8x connection on the PCH and the USB controller will be using a 4x connection on the CPU. This will allow the GPU I’m using for Linux output to be connected by an 8x connection as well.
Handling PCIe passthrough isn’t 100% straightforward. There are limitations and rules about how the IOMMU sees a device and its IO Virtual Addresses (IOVA). Some devices will alias to the same IOVA space which makes the IOMMU unable to destinguish between the two devices. This becomes problematic when dealing with transaction…
Hello all! I am Gray from GrayWolfTech. I make videos on Linux and other interesting technology. Wendell has given me permission to post my written guides here for my videos. This is great for two reasons: First it helps grow this community and second my videos reach a wider audience to share what I have learned. I look forward to posting all my guides and videos here, and I am more than happy to answer any questions about the guide you may have.
– Onward! –
Now it’s time for one of the coolest and more advanced capabilities of Linux. KVM, or kernel virtual machines. We are going to go through step by step, how to setup PCI pass-through to a Windows virtual machine on a Debian host to play games!
Thanks to Redhat, KVM can run virtual machines with almost bare metal performance and supports a wide variety of other neat features. The one we are going to focus on in this video is of course, PCI pass-through. The process of allowing a virtual machine full access to a PCI express graphics card for gaming, CAD, or 3D rendering. With this neat capability, you can run Linux as your host OS, and then pass your GPU (or one of your GPUs if you have multiple) to a virtual machine to play games.
Let’s go over the requirements for this project:
First and most important, you should backup any data you have on your PC. If you know what you are doing then you will not lose anything, but accidentally selecting the wrong drive when installing can lead you to be very sad when you figure out the drive you wiped had all your really good porn on it.
Second, this process will take time. For someone who is an experienced Linux user it should take about 20 minutes (not counting time to install Debian or recompile the kernel). For someone who is new it might take longer. Make sure you allow yourself an entire afternoon or a good chunk of 4-5 hours where you could potentially not have a working PC.
Third, follow the instructions I lay out in the video. I will answer questions down belo…
and the Arch Wiki is best reguarded written source for non partisan advice:
after running the QUEM/KVM with the /dev/disk/by-id all i get is a error of booting:
Booting from Hard Disk…
No bootable device .
ill read the thread’s you linked and watch the video and try to make it running…
Okay, not so useful. As a trial, I presume that you tried with the /dev/sda just to check?
I saw a few posts about having to delete part of the disk, but that is something you don’t want to do if you can avoid it.
Another test would be to make a virtual storage pool rather than the raw disk, to make sure you can get something runngin, before you chuck the already-configured drive at it?
So just make any machine, and create a new storage space in any old folder, like a 30gb file, just to practice installing windows and stuff?