Can a Linux installation be run as a VM in Windows?
This might sound daft, but something similar used to work with live discs.
I've got Windows 10 and Mint 21.1 dual booting on my computer at the moment. Every so often I'll realise that I've missed something from my Windows installation. If it's important, I then have to boot to Windows to get the information, or the settings etc.
Is there a way to virtualise my Mint installation so that I can run both the OSs at once to make sure that I've got everything?
VirtualBox had a tool to do this with a live USB, but that was back in the MBR days, so it probably won't work with modern hardware.
EDIT: Sorry, I should clarify, Mint and Windows are on the same physical disk, and the plan is to remove Windows once I'm done.
Update: I'm giving up. It looks like it is possible if you have separate disks with separate boot partitions, but getting it to work with a shared boot partition is harder work than I'm willing to do right now.
VMware Player can use a partition or disk, but might be in read only mode, I couldn't get far enough to check.
Depending on which virtual machine software you use, you might need to go onto the Linux even after you boot from it and run some programmer script to install drivers or something, but depends on which virtual machine software you use.
Sorry, I should have clarified, I've got a data disc, but I'm forgetting about things that need to be migrated, like Thunderbird profiles and Syncthing. As far as I can tell, I need to export them first, and then import them in Mint. If I set Mint as a VM, I should be able to do it all in one go and hopefully not forget anything else :)
If you're using the 'Pro' or 'Education' license for Windows 10, you can look into Hyper-V, which should allow you to boot a VM from a physical disk.
Hyper-V is built-in to Windows; & you just need to enable it in system settings.
Not sure if it works with partitions, if you're dual booting the OSs from separate partitions on the same disk -- it probably doesn't; in which case you might need to migrate Mint to its dedicated disk first.
Yeah, it's partitions that I'm dealing with. My goal is to transfer everything over, give it a few weeks to make sure that I haven't missed anything, then wipe Windows from the partition so that Mint has the full disc.
Hyper-V will work with physical disk, but be warned - the wizard you run through when making a VM will make it look like you give the VM a VHD file for storage or nothing. Just attach no storage to the VM initially, then go into the VM settings after the wizard is complete to attach something besides a VHD.
Can't entirely remember if it handles partitions but I know it can boot particular disks and if the setting exists, that's where it would be
I know that you can use a Type-1 Hypervisor to run two OSes at once. That will generally need a higher spec system, because it basically runs two systems at once. Not a very practical option.
From what I can tell, they would both need their own boot partition, which is where I'm stuck. My Windows and Mint installations share a boot partition, and it causes problems for this.
I know that it's not very practical, for most people, but imagine having to use Windows for work or a specific game, and still being able to access your distro as normal. It could be handy for a small niche, and felt like an interesting challenge :)
a type 1 hypervisor is practically an operating system itself, just a very minimal one. it's like installing virtualbox to your hard drive. it's probably not best for your situation, because its usually used in servers.
I succeeded in doing this once long ago. Then while in the Linux vm I wiped the VM’s partition table, which wiped the physical disk partition table, including windows. Do not recommend.
AFAIK on Windows the physical disk containing the partition needs to be marked offline in Disk Management, and the disk or a partition given exclusively to VirtualBox running as administrator, otherwise access is limited to read-only
I would suggest checking some other sources as well, just in case this has changed over the years. If you do successfully pass the physical partition into VirtualBox read-write, you might need to set up a virtual disk with grub to boot into your physical Linux partition
Yeah, that's what another user found too. It doesn't look like VirtualBox can do it, but this thread suggests that VMWare might be able to. I'm just trying it now :)
I did this back in 2008 using virtual box. Had a dual boot system and got curious as to whether or not I could boot the Linux partition as a VM. I don’t remember it being difficult to do but this was before EFI and secure boot so those may cause trouble. I’m not 100% sure I used virtual box either :/
I remember doing it with a file that came with one of the multi ISO tools, LiLo perhaps? It was just named VirtualiseThisKey.exe and would open the key as if it was booting on a PC. I deleted it back last year though as my copy had been corrupted, and I hadn't used it for a long time so didn't bother replacing it.
If Linux is configured to use LUKS and/or Windows is configured to use Bitlocker, it's not so simple as just installing the ext4/NTFS driver.
Also, neither Linux can run Windows programs (I'm aware of Wine, but AFAIK Wine won't run software already installed on an existing Windows installation) nor Windows can run Linux programs (I'm also aware of WSL, but apart from very specific chroot-ings, AFAIK one can't run software from pre-existing Linux installations)..
What you're asking is if you can run the existing Linux Mint on your drive within Windows running on the same drive?
It may be feasible if VirtualBox or VMWare are able to access/mount the existing Linux partition as if its a virtual drive, and boot the OS but its likely to be difficult. The main issue is that windows does not easily mount Linux partitions. It is also an edge case use for most users so there will likely not be much guidance on how to achieve this easily.
It might work more easily the opposite way round - boot Linux and mount Windows within Virtualbox but is not likely to be straightforward. Windows may be less flexible about being booted into a virtual machine with totally different hardware.
All this may be overkill to the problems you're trying to solve. You can mount the existing NTFS Windows drive within Linux Mint to access all your windows files without any virtualization. But I'm not clear what "settings" you're looking at when you boot back in to windows? That seems to be the stumbling block. Is is specific software / tools you're trying to migrate settings for?
Another approach may be to launch windows, create a new linux Mint VM in Virtualbox, share a folder between Linux VM and Windows host, create whatever settings you're trying to migrate in your VM Linux Mint, and when happy copy the home folder / settings folders into the shared folder. Then boot your PC into linux, mount the windows drive and pick up the settings files from the shared folder to migrate into your main Mint system. But whether that is even worth doing depends on what you're trying to migrate.
What you're asking is if you can run the existing Linux Mint on your drive within Windows running on the same drive?
Yes, exactly this. It used to be possible with live usb keys years ago, where you could boot the key normally and have a persistent live disc, but there was a Windows tool that would virtualise the key, letting you access the persistent disc from within Windows.
The reason I want to do it is for programs like Thunderbird, where you have to export your settings, email, etc. to be able to import them on the other OS. As far as I'm aware, this can't be done by just copying files, you have to export them first.
I have memory issues, so I often forget about a program until I need to use it, and if I'm already in Mint, it means that I have to stop what I'm doing and reboot, and then lose track of what I was doing in Mint. If I can access both OS at the same time, like with a virtual machine guest and host, I can just grab whatever I need until I've got everything transferred over.
I run a Hackintosh's dual booting Mac OS and Windows. So you solution is not insane as some have pointed out.
What I would suggest is maybe running a NAS on your local network to act as your share. Obviously this won't help if you dont store your working files on your NAS, but its an idea. I know no way to directly share between the two machines as they are technically not on at the same time.
Thanks, but the sharing itself isn't the issue. I've got three other hard drives in this computer, and can access them all through each OS. What I want to be able to do is be using Windows and realise that I want something from a program on the Mint drive, or have Mint running and realise that I need something from a program on Windows, and just be able to get it without having to shut down everything and reboot.
I've got programs like Thunderbird where the data has to be exported before it can be imported in the Mint version, and the program has to be running for that to happen. With my memory, I keep forgetting about things like that until I'm in Mint and need the data, but in the time it takes me to reboot, get the data, and get back to Mint, I've forgotten why I needed it in the first place >.<
No worries, VMware or some of the other virtualization software's should work in this case as most other comments pointed out. Probably the most simple and straight to the point.
If you have the urge to tinker, another potential item or route you can look at is a proxmox machine. You can run multiple VMs in tandem at the same time. This would run on a standalone machine.
You would then be able to remote desktop into any virtualized OS on your home network. You can use a software like parsec which I like to access each machine from a clean interface.
You might be misunderstanding what I want to do. I want to boot my existing Mint partition as a VM under Windows, not make a new VM with its own drive.
From what I can tell, it might be possible if the distro is on its own drive with its own boot partition, but my Mint installation is on a partition on the same drive as Windows, and they share the same boot partition.
This is just one example out of many out there on Google. Understand that the commands here are NOT making a new drive image. They are making a drive image FILE that is specially formatted with the tools to point to the existing partition on the drive. VMWare can do this, QEMU can do this, Virtualbox can do this... you're just making a VM image, where the data points to an actual hard existing partition on the drive.
Once again -- This is NOT making a new VM with its own drive, even though the command looks similar. I'm sure HyperV can do it as well, I'm simply not familiar enough with its packaging.