A friend of a friend had a very old IBM machine running Windows XP with some specialized software that doesn’t exist for at least 17 years - we don’t know the name because the old PC is super-dead, like not even a twitch, HDD not responding on another machine or in USB rack etc… All we have is a 3 month old Disk2VHD image “somewhere”.
The problem is there is no source for the software they need, so the only reasonable option is using the image we might have in a VM.
- Run the old software, it is not GPU intensive from the description
- Print whatever comes out of it, but plan for the future printer upgrade
So here is my plan, and I’d like a sanity check and/or comments as budget is very tight:
- Get a new PC with Core i3 10100 (cheapest quad core i3 we can find), 8 or 16GB RAM, 250GB SATA SSD. I’m going Intel to give it a best shot to work out of the box
- Install some desktop Linux distro and QEMU/KVM stack with Red Hat VMM
- Convert presumably VHD(X) to QCOW2 using this STH guide
- Create a single or dual core (whatever the old PC was), 3GB, 32bit VM, attach the qcow2 HDD and hope it works
- If necessary attempt Windows XP repair via install disk
- Pass USB printer to guest
- Teach them to use VMM to access their work environment
In the (near) future when printer upgrade is required plan is either to have a USB drive to pass back and forth and print from the host what we think are PDF files or attempt to somehow share a folder with windows XP and save there, have a cron job running on host every few minutes and print then delete whatever is in the shared folder. The second option may or may not work, I don’t know what the situation is with SMB V1 but we may try another protocol such as FTP if that doesn’t work.
Am I missing and obvious problems, on a scale of 1 to 10 how good is this plan? Should we just try and look for a used somewhat compatible PC, transplant the image to it and hope for the best?
i honestly don’t think i would bother running it in a KVM hypervisor. either grab the bare esxi, or even just vmware player, and drop it on a running machine.
for the printing i would put a ‘print to pdf’ handler like CutePDF on the old XP image, then just send the pdf to the host machine or anywhere to print.
Not a big problem with samba… it still supports a few remarkably old authentication methods predating even windows XP (although there’s big fat warnings in documentation about some of them - for good reasons).
You can also print into .ps or .pdf from windows XP whichever is easier, … or setup CUPS and print from windows XP to network.
(where network == a virtual network adapter linking guest and host, doesn’t necessarily need to have internet access).
I don’t know how computer literate the end users are - and how much of an outlier a Linux box would be in the particular environment. Stick to Ubuntu LTS maybe?
Make sure you have full system backups/snapshots.
I’m not sure those would be an option due to budget constraints. ESXi would require another computer, so way over budget, and even VM Ware Player is 180€, additional cost we are trying to avoid.
I have considered Hyper-V, but that requires Windows 10 Pro license and can’t pass USB printer down to guests. Second option was VirtualBox but again, extensions to use USB devices are not free for commercial use.
This was my thinking too, but I’m not sure yet if the program itself pushes out PDFs or not.
Would CUPS require Windows XP to have the driver for that exact printer? If that is the case, upgrading to a new printer later would not be supported on XP for sure, so probably samba or FTP.
esxi, as well as vmware player, have basic free versions. im lost for your comment on ‘would require another computer’ also. the basic esxi would be more than enough for 1 VM in a dedicated use.
my recommendation should save time as well as cost.
I am under impression that ESXi is bare metal hypervisor and as such connecting to the guest would require remote desktop of some sort or a GPU and peripherals pass-trough? Maybe I’m wrong tho…
I’ll check out Player, didn’t see that they have a free version.
true about bare metal esxi to some degree. i assumed that there was at least 1 other desktop pc on premises that they could use to connect to the system. but as the VM is xp based, no matter what the software is doing, i doubt it would need any GPU passthrough.
the ‘free’ vmware player is incredibly basic. if you can get it to work with that VM image, it would probably be the best bet.
No, but Linux / CUPS would need it. XP could be configured to talk to CUPS using some generic post script type of printer, and CUPS driver would do the conversion.
We managed to track down Adele OptiPlex with 10th gen i5 to test the theory before committing to it, and yep from pulling the screwdriver on it to replace the SSD to guest boot in 69 minutes flat. Nice. Some housekeeping to do but it looks good, booted right up without needing a repair.
I was surprised to see Fedora update run the firmware updates as well, but Windows 10 Pro didn’t.
Pretty sure Windows XP had IPP printing support, so get printing working on the host with CUPS, set that printer as shared and then point Windows guest at the IPP URL for the CUPS printer using a postscript driver on Windows (MS Pagesetter is built in).
No need for Samba that way, and you could set CUPS to only listen to the guest network if you don’t want random other computers finding the shared printer.