To install Syslinux on an NTFS partition to boot Windows XP:
- Download and extract the latest Zip file from: https://www.kernel.org/pub/linux/utils/boot/syslinux/
This file contains code for Windows and Linux systems, only copy files from within the “bios” folder. - Create the directoriy structure on the active NTFS partition: C:\boot\syslinux
- Within the extracted folders, find and copy from the syslinux-x.xx\bios\com32 folder:
chain.c32, config.c32, libcom.c32, libmenu.c32, ls.c32, menu.c32, vesamenu.c32, ldlinux.c32, syslinux.sys
Copy to C:\boot\syslinux\ - To install the bootloader to the MBR:
- cmd.exe
- cd syslinux-x.xx\bios\win32
- syslinux.exe –directory C:\boot\syslinux –install –mbr
- Create the config file C:\boot\syslinux\syslinux.cfg
containing something like:
UI menu.c32
DEFAULT WindowsXP
TIMEOUT 30
LABEL WindowsXP
MENU LABEL Windows XP
COM32 chain.c32
APPEND ntldr=/ntldr
*The file needs to be in plain text, not UTF-8 – recommend a compact Windows text editor such as TED Notepad which can be configured to save in Unix style text.
The above steps fixed a problem we were getting on a Windows XP guest converted from VMware to KVM, where the guest would hang, stuck at boot with the message “Booting from Hard Disk…”.