Dual Booting with Windows XP?
"I am familiar with dual-booting (and the pratfalls of dual booting) using various versions of Win9x. I understand NT is harder because of the way bootloader installs and also the fact that it uses NTFS. Windows XP sounds like it will be harder still because of its "registration" feature. I have searched in Redhat (my preferred distribution) and at the LDP (Linux Documentation Project) but have not found any treatment of this.
I think one option might be the commercial product Partition Magic by PowerQuest but would prefer to stick with an open-source method, preferrably one supported by a distribution. Does anyone have any experience with or insights about dual-booting with XP? Have I missed some treasure-trove of documentation?"
Search Microsoft and ye shall find the answer.
LOAD "SIG",8,1
LOADING...
READY.
RUN
I've got Slack 8 and winxp dualbooting on this machine right now. I've got it setup the same way I did with slack 3.4 and windows 95. lilo in the mbr, and I'm set.
I'm dual-booting with XP, no problem. Install XP first, then Linux distro and let it's Lilo/GRUB write over XP's loader.
try out XOSL.. Install it in a dedicated partition at the beginning of your drive (the boot partition).. and from there you can boot an OS on any other partition.. works amazingly well, it only requires a bit of planning.. no playing around with messy MBR loaders
There is a Linux+NT HOWTO that explains how to dual boot between Linux and NT (and 2000, and XP - they are all NT architecturally):
r .h tml
http://linuxdocs.org/HOWTOs/mini/Linux+NT-Loade
I am running a machine here at work with Windows XP and Mandrake Linux 8.1. I installed Windows on the primary master hard drive, formatted it using NTFS - and then I installed Linux on the other hard drives. I use GRUB as my boot loader and pretty much I just installed everything as usual. Windows, then Linux..should be easy enough. I have not run in to any trouble and I've booted in to both OS's just fine.
If you install linux first windows will overwrite Lilo/Grub and you'll have to boot from a floppy or CD to reinstall it. Also feasible but less convenient.
As for NTFS, just setup a small (by today's standards that's 500MB) FAT32 partition to interchange files between the 2 systems.
Pedro Côrte-Real.
I've got Windows XP Professional and Mandrake 8.1 on a dualboot system as I type this. I originally just had Windows XP on it, but installed Mandrake two days ago.
Windows XP can use FAT32 or NTFS. If you're serious about accessing files fully from Linux, make it uses FAT32. There is read-only support for NTFS in the kernel (I had to recompile to get it in Mandrake, though), but the write support for NTFS is very dangerous and experimental. Also note that if you're using Partition Magic on XP, you MUST use version 7 (brand new). Previous versions aren't compatable with the version of NTFS on Windows XP (I speak from personal experience).
Dualbooting has no impact on activation or anything. Dualbooting with Windows XP is exactly like it was for Windows 2000.
And finally: The NT Bootloader works differently than GRUB or LILO. How mine works is GRUB appears first, I then select 'NT' or 'Linux' or 'Linux-failsafe'. Selecting NT then brings up the NT bootloader (which has Windows 98 and XP for me). There's no conflicts in that bootloader system.
Since XP is (essentially) the home user version of Windows2000, it should work perfectly. One of my former coworkers was running Redhat 7, Windows 2000, and the WinXP Beta on his laptop last time I talked to him. They all worked just fine for him. I personally run Win2000 and Win98 (gaming reasons) without any trouble, but not Linux (at this point). My guess would be WinXP would run just fine with Linux.
~Forager
student of animation and the fine arts
In my opinion, the cleanest way to dual-boot with an NT-ish Windoze is to write a set of boot sectors that do nothing but load the boot sector of a specific drive and execute it. For instance, here is a boot sector that boots from the first hard drive (BIOS drive number 0x80):
;; BIOS drive number to load from
;; I hate "jmp short"
;; Where we want to be
;;
;; CODE
;;
;; Setup stack, move code somewhere else, and jump there
;; Reset drive
;; Load real boot sector
;; Jump to real boot sector
;; In case of error, print msg and lock up
;; print
;; prints the zero-terminated string pointed to by SI.
.char: lodsb .done .char
.done: pop bx
;; lockup
;; Locks the machine way up.
;;
;; DATA
;;
;; Error message
;; Zero-padding to 512 bytes
;; Magic boot sector number
s 2000" /fastdetect
%define DRIVE 0x80
%macro jmps 1
jmp short %1
%endmacro
org 0x7E00
cli
xor ax, ax
mov ds, ax
mov es, ax
mov ss, ax
mov sp, 0x7C00
mov si, sp
mov di, 0x7E00
mov cx, 0x0100
cld
rep
movsw
jmp moved + 0x200
moved: sti
mov dl, DRIVE
int 0x13
jc error
mov ax, 0x0201
mov bx, 0x7C00
mov cx, 0x0001
mov dh, ch
mov dl, DRIVE
int 0x13
jc error
mov dl, DRIVE
jmp 0x7C00
error: mov si, errmsg
call print
jmps lockup
print: push ax
push bx
mov ah, 0x0E
xor bx, bx
or al, al
jz
int 0x10
jmps
pop ax
ret
lockup:
hlt
jmps lockup
errmsg: db 'Error reading boot sector. System halted.', 0
pad: times 510-($-$$) db 0x00
magic: dw 0xAA55
This was rather pretty code, but you see what is left after HTML-ization and pleasing the lameness filter. You might want to double-check that this works, but it looks good to me. Save this to bootsect.asm. Get NASM and use it to assemble bootsect.asm into whatever boot-sector you need. Make sure to change the definition of DRIVE to match the BIOS drive number you want the boot sector to boot from. Assemble with this command:
nasmw -f bin bootsect.asm -o bootsect.hd0
The final step is updating NT's boot.ini file. Here is a sample one; you figure it out.
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINNT
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINNT="Window
C:\bootsect.hd0="Boot from hard drive 0"
C:\bootsect.hd1="Boot from hard drive 1"
C:\bootsect.hd2="Boot from hard drive 2"
C:\bootsect.hd3="Boot from hard drive 3"
C:\bootsect.fd0="Boot from floppy drive 0"
C:\bootsect.fd1="Boot from floppy drive 1"
Hope that helps someone out there.
Washington, DC: It's like Hollywood for ugly people.
Check out www.vmware.com. You can make Linux your main OS, and still run a full virtual session of Windows XP. It's better than dual booting in many ways because they both run at the same time.
You will need 3 hard drives (or two, if you don't plan on sharing data between OSs)...
Buy a couple of removable IDE trays for your hard drives. Here in Canada I've been able to pick these up for about $20/CDN each.
Install one drive permanently in your machine as the master on the second IDE channel - you can use this one for storing all of your data files so both OSs can access it.
The other two (or more drives), install into the trays. Set the bay component of the tray up as your master on the first IDE channel. Now insert one of your drives and install OS of your choice. After doing so, power down machine, replace that drive with the other one and install your other OS.
Now when you want to boot another OS, all you have to do is power down your machine, yank and replace your hard drive with the other one. This is the system I use at home for using my PC with Win98, WinNT and Linux! It's great! Yes, you have to buy a little more stuff, but hard drives are relatively cheap nowadays...
You can accomplish anything you set your mind to. The impossible just takes a little longer.
I've been running a SuSE linux/WinXP dual boot for months. Prior to that I was running a win2k/Suse machine/ No problem. Install windows first, leaving space (preferably unallocated disk space not in a partition). Install linux. Done. I'm using lilo as the boot loader with no problems. Frankly, Suse even lets you easily re-establish control over the boot loader if you install windows second. Using Suse, you install it on your WinMe Dell. Dual booting etc. You get XP and delete winme, install XP. Woah, your boot loader was taken over by XP, no longer allowing access to linux. No problem. Boot off the Suse CD, choose install, and pick the "boot installed system". It will locate and boot your linux install. Then from within suse, open up their very nice config tool (Yast2) and tell it to re-write LILO to the MBR. Done. SuSE rocks, you won't be using XP much. ;)
fsdlkfdijhiufds980rf98fdshtr80fd9fsd8hgf8hfgh8g5ht dsffdlkfdkfdjhdfalffdfdalfdfd
I run debian and xp on my laptop, what I do is install lilo to the partition, xp's ntloader installs to the partition, then i set linux as the active partition, and use debian-mbr
if i want to start xp, i hold in shift at boot, and can pick which partition to boot off of.
if i want to start linux, i just let it start
usually when installing, windows doesn't overwrite the master boot record, and the acrive partition at the same time. if it overwrites the mbr, it'll boot into linux with no choice, and i'll have to reinstall debian-mbr to go back into windows. if changes the active partition, i can boot into linux anyhow (thanks to a nice mbr) and fix it. if it changes the active partition and overwrites the mbr, i can use vmware and floppy images (or find some floppy images) and fix it.
i imagine boot magic (from power quest) would also work, but this works without paying for additional software.
Need a Catering Connection
I have been multi-booting win9x/winNT/win2000 and linux for ages.
/dev/hda3
A good way is to install windows first, then install linux with LILO
in the MBR. Then add an entry for the windows partition. For example in
lilo.conf :
other =
label = some_windows
and that's it, more or less.
I never tried winXP yet, but I don't expeect it to be much different in
regard to booting.
stein