Linux KVM Hosting Windows NT4

Firstly, let us say: please give up on trying the Physical-to-Virtual (P2V). It's really damn hard, if possible at all. NT4 (like all Windows) is very sensitive to the hardware; IDE vs SCSI and other issues cause BSOD Stop 0x7B.

We are required to use the indicated flags for -M, -cpu, -smp and -no-hpet to make this work properly.

Create KVM Image

Create the image, use raw format for best results, NT4 only understands a 4G partition for boot/root.

~ # qemu-img create -f raw /opt/kvm/nt4.raw 4G

Boot the Image from CD (ISO)

~ # kvm \
    -M pc-0.11 -cpu pentium,level=1 -smp 1 -no-hpet -no-acpi -no-kvm \
    -m $ram \
    -name NT4 \
    -boot c \
    -drive file=/opt/kvm/nt4.raw,if=ide,index=0,cache=unsafe \
    -cdrom /opt/kvm/nt4-svr.iso \
    -net nic,vlan=$vid,macaddr=$mac,model=ne2k_pci \
    -net tap,vlan=$vid,ifname=$tap,script=no,downscript=no \
    -vga std \
    -vnc $vnc \
    -monitor $mon \
    -usb \
    -usbdevice tablet \
    -win2k-hack \
    -no-reboot \
    -daemonize

It is important to set the type of your computer to Standard PC, as shown here:

This will continue through the point where Windows NT4 setup wants to reboot; but will just exit. Now, we re-start the NT4 system with a slightly different incantation, to convert the FS from FAT to NTFS, so do this one twice. Once to convert, once more to continue setup.

~ # kvm \
    -M pc-0.11 -cpu pentium,level=1 -smp 1 -no-hpet -no-acpi -no-kvm \
    -m $ram \
    -name NT4 \
    -boot d \
    -drive file=/opt/kvm/nt4.raw,if=ide,index=0,cache=unsafe \
    -cdrom /opt/kvm/nt4-svr.iso \
    -net nic,vlan=$vid,macaddr=$mac,model=ne2k_pci \
    -net tap,vlan=$vid,ifname=$tap,script=no,downscript=no \
    -vga std \
    -vnc $vnc \
    -monitor $mon \
    -usb \
    -usbdevice tablet \
    -win2k-hack \
    -no-reboot \
    -daemonize

Now proceed through the graphical portion of Windows NT4 Setup, remember that the boot/root partiion for Windows NT4 is limited to 4G. The ne2k_pci adapter should be detected by NT4, once this is done the NT4 setup to should to reboot; which will then exit KVM.

Running Windows NT4

~ # kvm \
    -M pc-0.11 -cpu pentium,level=1 -smp 1 -no-hpet -no-acpi -no-kvm \
    -m $ram \
    -name NT4 \
    -boot d \
    -drive file=/opt/kvm/nt4.raw,if=ide,index=0,cache=unsafe \
    -net nic,vlan=$vid,macaddr=$mac,model=ne2k_pci \
    -net tap,vlan=$vid,ifname=$tap,script=no,downscript=no \
    -vga std \
    -vnc $vnc \
    -monitor $mon \
    -daemonize

Once into Windows NT4 you'll want to