How to install a Windows XP or Windows Server 2003 virtual machine on a remote Ubuntu server by command line?
Also, please advise what virtualization software is best for this kind of job?
This assumes you are using VirtualBox, which is free and available for Linux as well as other operating systems:
Create the virtual machine on another computer first, and install windows the normal way. Once the virtual machine is configured the way you want it, transfer the virtual disk image to the remote ubuntu machine.
Once you have the image in place, you can control virtualbox from a command line using the VBoxManage command. For example, to start a VM called "WinXP" you issue a command like:
$ VBoxManage startvm "WinXP" -type vrdp.