Take a look at our
ThinkPads.com HOME PAGE
For those who might want to contribute to the blog, start here: Editors Alley Topic
Then contact Bill with a Private Message

Why Windows (XP) is even worse than Linux

Operating System, Common Application & ThinkPad Utilities Questions...
Post Reply
Message
Author
dr_st
Admin
Admin
Posts: 9692
Joined: Sat Oct 29, 2005 6:20 am
Location: Israel

Why Windows (XP) is even worse than Linux

#1 Post by dr_st » Sat Aug 18, 2012 1:24 am

The dark side of the hard drive clone I performed last night (the bright side is here).

I always thought it was mighty stupid how the Linux kernel depends on the root= parameter in the LILO/Grub config files to be exactly right to complete its boot. There is just something mind boggling when you start booting, and everything works, and then when it tries to mount the drive, if the root= is not correct, it panics that it cannot find the drive and halts. I mean, the drive is right there! You just booted from it - why do I have to tell you again where it is?! :lol:

Well, XP is even worse. ;) You would think that after cloning the drive, you can just disconnect the original, connect the cloned in its place and it will work? No way. Windows assigns DOS drive letters not based on the physical connection of the drive, but based on the drive itself. It remembers drives it's seen, and keeps drive letters the same even if you connect them to different ports inside the system, unless you tell it to change the drive letter.

This does make sense to an extent (for example if you were forced to move to a different SATA/IDE port, you would have less problems). However here it meant that my OS became completely unusable. Once I told the PC to boot from the new drive, Windows booted just fine, but then when one comes to login, it tries to run the Userinit.exe from drive C:, but the new drive has been assigned a different letter! So it got stuck in a permanent logon/logoff loop, and since I could not login, I could not change the drive letter assignment!

So far it seems just like Linux, so why is it worse?

Because in Linux at least one can append a root= parameter during boot to get the system up at which point one can edit the config files. How the heck do you do that in Windows? It's not an issue with the boot record, so FIXBOOT/FIXMBR/BCDEDIT won't help - the OS sees "itself" and boots just fine. The drive letter is something embedded in the registry! :evil:

The solution?

1) Find where in the registry the drive letter assignments take place (this took some googling - answer is HKLM\System\MountedDevices)
2) Boot up from the old drive with the new drive connected to a different port
3) Load the registry editor
4) From inside the registry editor, load the HKLM\System hive from the new drive (this is a neat feature I didn't know the built-in registry editor had)
5) Change the drive letter assignment so that the new drive is recognized in its own registry hive as C:, and unload the hive)
6) Turn PC off, disconnect the old drive and boot from the new drive. Finally!
:mrgreen:

Now, noticed how I rant about XP here. This is because somehow when I did the same procedure on a PC running Vista, it did somehow allow me to login and change the drive letters manually. So I am not sure whether they made the new kernels smarter or whether I did some things differently.

But at least it works now. :wink:
Thinkpad 25 (20K7), T490 (20N3), Yoga 14 (20FY), T430s (IPS FHD + Classic Keyboard), X220 4291-4BG
X61 7673-V2V, T60 2007-QPG, T42 2373-F7G, X32 (IPS Screen), A31p w/ Ultrabay Numpad

jdrou
Senior Member
Senior Member
Posts: 670
Joined: Tue Feb 10, 2009 6:15 pm
Location: Madison Heights, MI

Re: Why Windows (XP) is even worse than Linux

#2 Post by jdrou » Sun Aug 19, 2012 12:37 am

Yes, I've run into this before too (with Win2k). Resources I used to fix it:
http://support.microsoft.com/kb/249321
http://support.microsoft.com/kb/223188
Current Thinkpads:
X31, X40, X61T, X61, X201, X220 (i7 IPS), W520 (FHD), T440p (FHD),
T480 (QHD)
Dells: Latitude C840, Precision M70, Precision M4400, M6400 (WUXGA), M6600, M6700, 7730, XPS 13
Daily driver: MS Surface Pro 7 (i7)

cadillacmike68
ThinkPadder
ThinkPadder
Posts: 1494
Joined: Fri May 27, 2011 9:19 pm
Location: Florida

Re: Why Windows (XP) is even worse than Linux

#3 Post by cadillacmike68 » Wed Sep 19, 2012 7:41 am

This is old, you can fix it by getting a W98SE startup floppy and boot that. From the command prompt enter:

FDISK /MBR

That writes the boot MBR, overwriting the win NT/ 2000 / XP undocumented usages of the 24 or so extra bytes in the MBR without touching the partition table. More on this here:

http://www.goodells.net/multiboot/partsigs.shtml

That whole site is informative.

FDDs are about $3 nowadays - no excuse for not having one.
Last edited by cadillacmike68 on Sat Dec 22, 2012 11:13 pm, edited 1 time in total.
600 600X
760LD FUBARd
T21 2647 T22 2647 1@ 1GHz SXGA+ 4 more; T23 2647 1@ 1.2GHz SXGA+ 3 more
T30 2366-88U 2GHz; 2366-83U 1.8G; 5@ 2366-LU0/66U; 2367-KU6 FUBARd
T41 T42 T43
T60 T61 8897 2.4GHz SXGA+; 8898 2.4Ghz; 6463 2@ WSXGA+; 7658 2.5GHz; T61p; 6 more T61s
T500 2
T530 W530

dr_st
Admin
Admin
Posts: 9692
Joined: Sat Oct 29, 2005 6:20 am
Location: Israel

Re: Why Windows (XP) is even worse than Linux

#4 Post by dr_st » Wed Sep 19, 2012 2:46 pm

Interesting solution! Will remember for the future references.

BTW, plenty of reasons not to have a floppy these days - they take up spaces in the case, requires extra power cables and clumsy IDE cables, adding to cable clutter, and in many new motherboards the floppy connector is either gone or placed in completely stupid and inaccessible places. :) I removed the floppy drive from my old desktop and couldn't be happier, as all it did in the past ~5 years was collect dust.

Fortunately, Win98 with all the tools can be booted from a USB flash driver as well. :D
Thinkpad 25 (20K7), T490 (20N3), Yoga 14 (20FY), T430s (IPS FHD + Classic Keyboard), X220 4291-4BG
X61 7673-V2V, T60 2007-QPG, T42 2373-F7G, X32 (IPS Screen), A31p w/ Ultrabay Numpad

RealBlackStuff
Admin Emeritus
Admin Emeritus
Posts: 23812
Joined: Mon Sep 18, 2006 5:17 am
Location: Loch Garman, Éire

Re: Why Windows (XP) is even worse than Linux

#5 Post by RealBlackStuff » Thu Sep 20, 2012 10:04 am

I use an official "USB Portable Diskette Drive", made by IBM. It has a date on it of MAR2005.
ASM P/N: 08K9835
FRU P/N: 06P5223
Works on every laptop and PC with a USB port!
You can boot from it via F12 or BIOS setting.

There are several of those on eBay.
Lovely day for a Guinness! (The Real Black Stuff)
Lenovo: X240, X250, T440p, T480, M900 Tiny.

PS: the old Boardroom website is still available on the Wayback Machine
.

farmall
Sophomore Member
Posts: 172
Joined: Thu Jul 21, 2011 2:53 pm
Location: Columbia, SC

Re: Why Windows (XP) is even worse than Linux

#6 Post by farmall » Tue Dec 11, 2012 8:58 pm

I burn "floppy emulation" CDs for the same result. Been doing that since 1999.

You can download boot floppy images and manipulate the self-extracting sort using Winimage (free trial) into .IMA files which are bootable.
If you want to, burn other files to the root directory of the CD.

This guy has a Win98 CD boot image for download, as do some other folks:

http://www.onecomputerguy.com/software_download.htm

I use ImgBurn to write .isos when running XP. Burn as slow as possible for best burn.

Post Reply
  • Similar Topics
    Replies
    Views
    Last post

Return to “Windows OS (Versions prior to Windows 7)”

Who is online

Users browsing this forum: No registered users and 23 guests