Three Questions On Installing Win10 In a VM in Manjaro

I’m about to finish assembly on the new computer I’m building, and I’ve gotten to the point of partitioning the SSDs. I have 2 Samsung 980pro M2 SSD cards, one 500GB (earmarked for “/”) and one 2TB (earmarked for “/home”). I intend to partition both as GPT and EXT4. (Or maybe BTRFS?)

I then intend to install MS-Windows-10 in a virtual machine in Manjaro, so that I can run certain pieces of Windows software that can’t run in Wine.

But three questions rear their heads that need answering before I can proceed:

  1. Does installing an OS such as MS-Win-10 in a VM in Linux need a separate NTFS partition? Or can it be done into a “virtual” partition, actually in my main EXT4 or BTRFS partition?

  2. What VM would folks here recommend for embedding Win10 in Manjaro? VirtualBox? QEMU? Other?

  3. Can a program running in “Windows in Linux VM” have any way of knowing that it’s actually running in Linux? (Some programs aggressively attempt to determine if they are actually being run via Linux and will refuse to work if they are.)

Sorry if these are “newb” level questions, but I’ve never used a VM before so I have zero knowledge of what I’m doing.

be aware that a lot of people are running into trouble because they do not inform themselve about using and handling btrfs. if you’re not keen to it stay on ext4.

2 Likes

Hi @robbie-hatley,

My answers might be true for both, but that would be pure accident. I’ve only used, and know about Virtualbox.

AFAIK it can be mapped to a physical drive, but by default it’s not.

AFAIK you’ll be good with complete device emulation (is that even a concept?) Of course I think there’s a way to detect if something is run on bare-metal or not, but I haven’t come across it, yet.

Hope it helps.

1 Like

KVM/QEMU

found this guy on yt, his tutorials are really good:
https://www.youtube.com/c/PavolElsig/videos

1 Like

no

yes - that is the default and anything other than that (using a real partition …) is more work and adding complexity for no gain in your use case
Every device is virtualized - real devices can be passed through, but that has certain hardware requirements and is generally more difficult and complex to set up
(and mostly not needed/wanted).

other:
like @Olli said
KVM/qemu - via virt-manager, for example

VirtualBox is similar - it’s really a matter of preference and the different limitations between the two
that may matter to you to guide your choice.

probably, however:
without custom configuration (of the Windows registry …)
all that such programs can really gather is that they are not running on real hardware, but in a VM instead.
Finding out on which OS the VM resides is not information that is available to programs from within the VM.

… some just check whether they are being run inside an OS that is virtualized - and react however the developers want them to react upon finding out

No, you create a Virtual HDD, how depends on your choice of VirtualMachine Manager.

I use VirtualBox

Not in my experience. As far as I know applications see a Windows OS, and an NT File System. Do you need it to?

Some games may not work, or work well, simply because they need the Hosts GPU.

To access the Hosts USB port, and other Host Hardware (with VirtualBox) you need to install the Virtualbox Extension Pack.

1 Like

They can look for signs that they are in a VM, such as VirtualBox’s emulated motherboard. Finding out the host OS is a bit trickier, might be given by the extensions mentioned above.

I’ve found that dynamically sized virtual HDD is very slow especially for a Windows client, compared to allocating a fixed size virtual HDD.

1 Like

I have not noticed that slow speed - but perhaps I will notice the difference once I, next time, allocate the disk non-dynamically, full size.

I doubt it, though.
There will likely not be much difference - I (my system) runs on a spinning disk.
no nvme or ssd or …

When I used to run Windows in a VM, I never noticed any issues, just so long as you could provide enough Virtual RAM, I found Windows seemed no less responsive than the Host Linux System. I will admit, it’s been a while now, since I last ran any version of Windows, anywhere.

Short answer

  1. No
  2. VirtualBox
  3. Yes

Windows itself will know it is running in a virtual machine - and require a digitial license.

Applications run inside a virtualized windows can extract the same info - but very few will refuse to function - and those that do, is usually highly specialised apps for programming devices through the serial port e.g. phone rom flashing software.

Technically the virtual harddisk can be on any filesystem - but some better or worse than others.

E.g. a COW filesystem is likely to degrade performance of the virtual machine.

Years back I used VMware but at the time I also used ESXi as bare metal hypervisor.

I carried the usage of VMware Workstation with me to Linux but found VMware to be hard to maintain on Arch based distributions and switched to VirtualBox.

Currently I run a Windows 2019 server and a Windows 10 ltsb virtual machines which I use to develop and test (.NET 4 WebAPI) for the Windows server platform using MSSQL.

1 Like

I’ve used qemu, vmware and virtual box. Vmware is my favourite virtual machine but for running Windows qemu (virt manager) gave me the best compatibility. There were a few windows packages I could only get to work on qemu

1 Like

Ok, looks like I don’t need to do any special partitioning, then, which was my main show-stopper. Just make a fresh Manjaro install stick, boot, run installer, and tell partitioner "make the 500GB drive ‘/’ (plus EFI & swap partitions) and make the 2TB drive ‘/home’ ".

A lot of stuff that was on external devices mounted to subdirs of ‘/’ will now be physically in ‘/home’ which will simplify backups. I’ll just get an external 2TB device, clone /home there, then use “FreeFileSync” every few days to keep the two synced.

Of course I’ll have to decide between EXT4 and BTRFS. I’m kinda torn. EXT4 is stable, but BTRFS has “snapshots” which I’ve found myself wishing I had. Hmmm. Decisions, decisions.

I was wondering about that. Looks like I’ll have to cough up $200, because this won’t be an “upgrade” of anything, and I don’t have a Win-10-Pro license on any machine anyway. Even if I install Win-10-Home and try to have the VM fudge the FS UUID I don’t think Windows would fall for that. It will be worth $200, though, both for the Home → Pro upgrade, and to have Windows finally encapsulated-within-Linux and on-demand, as opposed to “dual-boot” (which I’ve been using) which requires shutting-down Linux to use Windows.

If it wasn’t for certain programs which require Windows to run, I’d dump Windows entirely. But for now, it appears to be a necessary evil.

Hmmm. Well, that tips the balance, in my mind. Ext4 for me, then.

Ok, I’m going to mark your reply as “The Solution” in order to close this out; but I send my thanks to all who replied; you all offered useful advice and your assistance is greatly appreciated.

I used Windows in a VM for developing Visual Basic.Net and C# Apps, using Visual Studio and MSSQL. I had no issues with it.

You can create two or multiple partitions: EXT4 and Btrfs.

I have two paritions in a single disk 1 TB:

  • A Btrfs partition ~600 GB with two full duplicates (2 x 300 GB like RAID 1, "Self-healing"is enabled) for your system and your home-data.
  • A Ext4 partition ~400 GB for Games, VirtualBox images, Downloads, media… no need snapshot.

If you don’t want to complicate manual setup, then full Ext4.

1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.