|
GOTOmsdos
铂金会员
       C++启程者
积分 5154
发帖 1827
注册 2003-7-18
状态 离线
|
『楼 主』:
给XP搬家的试验
使用 LLM 解释/回答一下
前两天看到网友说,想给XP搬家(从一个盘搬到另一盘),但不知怎么弄,我化了两三天专门为解决它试了试。
经过是这样的: 供大家参考借鉴。
(相关盘都是FAT32 或FAT16)
一
在DOS下备份原系统注册表(\windows\system32\config)
二
回到WINDOWS, 修改注册表的环境变量(系统变量和用户变量,在HKEY,LOCAL MACHINE 和CURRENT USER),把原系统盘符(g<img src="images/smilies/face-laugh.png" align="absmiddle" border="0">改成你要的(c<img src="images/smilies/face-laugh.png" align="absmiddle" border="0">
三
DOS下,用98启动盘的XCOPY (同目录中要有XCOPY32.MOD)从g:拷贝整个系统(windows\ documents and settings\ program files\)到c:,后来发现,有很多隐藏的没拷上,失败,接着换用xxcopy.exe, 标明能拷隐藏文件,但还是有一些没拷上,真是不解!
(用DOS下的这两个程序复制的长文件或文件夹名有很多只复制成带“~1”的短文件名,这可能是后来系统能进WINDOWS但在应该显示登陆用户名时死机的原因,因为系统在登陆时要用到用户信息,也就是长文件名documents and settings中等等的信息),
再用GHOST 2002,但说还原时要注册号,再改用GHOST 7.5,这回能拷上了,整盘全一样(要注意:要先克隆到另外一个备用盘(比如,D:)才行,然后再从这个备用盘还原到C:。但还原时要注意:先把原先C盘上的全部引导文件(包括隐藏的)拷到别盘,然后再从D:还原释放到C:,最后再弄回原先C盘上的引导文件)
四
修改C盘的BOOT.INI:
把 default= 改成 multi(0)disk(0)rdisk(0)partition(1)\windows
下加上:
multi(0)disk(0)rdisk(0)partition(1)\windows="你要的字" /nodetect
五
重启。。。。啊?
屏幕显示:
invalid system disk replace the disk and press any key ...
(我估计,是GHOST 还原重启后,把GHOST 或98的引导信息写到XP引导扇区上了!后想了个从软盘启动的办法才行。。。。
六
重启。。。。哈哈! 这回果真从C盘启动,成功显示出了登陆用户名了!
太激动了!。。。。。
但进入系统后,当我要格式化g盘时,系统提示说,有程序正在使用g:,这时才想起,可能在注册表中很多地方程序的路径仍然是 原系统路径g:! 也就是说仅仅改一下系统和用户环境变量是不够的!
七
但奇怪的是:当我抱着耍一耍的念头试着再从原来系统g:启动后,奇迹般的别来无恙的
正常进入了他原来的系统!! 百思不得其解(要知道,我是改了他的环境变量的呀!)
八
这样也好! 我就顺势删掉了被复制到C盘的不伦不类的系统,改回boot.ini,放弃给XP搬家的念头了!
经验总结:
在注册表中,不是所有标注的程序或文件的路径都依据环境变量而定的!有很多程序(包括WINDOWS自身的)直接写出了具体路径(也就是没有用环境变量!)
A few days ago, I saw a netizen saying that he wanted to "move XP" (move from one disk to another), but didn't know how to do it. So I spent two or three days specifically trying to solve it.
Here's how it went: for your reference.
(Related disks are all FAT32 or FAT16)
One
Backup the original system registry in DOS (\windows\system32\config)
Two
Go back to WINDOWS, modify the environment variables of the registry (system variables and user variables , in HKEY, LOCAL MACHINE and CURRENT USER), change the original system drive letter (g:) to the one you want (c:)
Three
In DOS, use XCOPY from the 98 boot disk (XCOPY32.MOD should be in the same directory) to copy the entire system (windows\ documents and settings\ program files\) from g: to c:. Later, I found that many hidden ones were not copied, and it failed. Then I switched to xxcopy.exe, which is said to be able to copy hidden files, but still some were not copied. Really puzzled!
(The two programs in DOS to copy long file or folder names often copy them into short file names with "~1". This may be the reason why the system can enter WINDOWS but freezes when it should display the login username, because the system needs user information when logging in, that is, the information in the long file name documents and settings, etc.)
Then use GHOST 2002, but it said a registration number was needed when restoring. Then switch to GHOST 7.5. This time it can copy. The whole disk is exactly the same (Note: you must first clone to another backup disk (for example, D:) first, and then restore from this backup disk to C:. But when restoring, pay attention: first copy all the boot files (including hidden ones) on the original C disk to another disk, then restore and release from D: to C:, and finally put back the boot files on the original C disk)
Four
Modify the BOOT.INI of C disk:
Change default= to multi(0)disk(0)rdisk(0)partition(1)\windows
Add under :
multi(0)disk(0)rdisk(0)partition(1)\windows="The words you want" /nodetect
Five
Restart.... Ah?
The screen shows:
invalid system disk replace the disk and press any key ...
(I estimated that after GHOST restore restart, the boot information of GHOST or 98 was written to the XP boot sector! Then I thought of a way to boot from a floppy disk....
Six
Restart.... Haha! This time it really boots from C disk, and successfully displays the login username!
So excited!......
But after entering the system, when I wanted to format the g disk, the system prompted that there was a program using g:, then I remembered that maybe in many places in the registry, the path of the program was still the original system path g:! That is to say, just changing the system and user environment variables is not enough!
Seven
But strangely: when I had a try and tried to start from the original system g: again, it miraculously entered his original system without any problem! I was very puzzled (you know, I had changed his environment variables!)
Eight
Well, that's fine! I then deleted the half-baked system copied to C disk, changed back boot.ini, and gave up the idea of moving XP.
Experience summary:
In the registry, not all the paths of the marked programs or files are based on the environment variables! Many programs (including WINDOWS itself) directly write out the specific path (that is, do not use the environment variables!)
|
|
2004-8-22 00:00 |
|
|
fujianabc
金牌会员
     
积分 3467
发帖 1616
注册 2004-6-21
状态 离线
|
『第 2 楼』:
使用 LLM 解释/回答一下
我已经有几次为xp搬家的经验了,每次搬家的原因都是因为换硬盘(而且保留原硬盘),但从未因此而重装系统。可以说,要给xp搬家不要尝试在注册表里面改什么安装路径、环境变量等,这是行不通的,而是要设法更改分区的盘符。也就是把移动的目标分区的盘符改为原系统盘的盘符(在你的例子中,本来c:盘是partition(1),假设系统盘g:是partition(5),那么要移动xp,你要把partition(1)改为g:,partition(5)改为c:)然后再用ghost复制。其中难点在于,xp的磁盘管理器不能更改系统盘的盘符,可以用pqmagic更改。
I have had several experiences of moving XP, and each time the reason for moving was because of changing the hard drive (and keeping the original hard drive), but I have never reinstalled the system because of this. It can be said that to move XP, don't try to change the installation path, environment variables, etc. in the registry, because that doesn't work. Instead, try to change the drive letter of the partition. That is, change the drive letter of the target partition to be moved to the drive letter of the original system drive. In your example, originally the C: drive is partition(1), and suppose the system drive G: is partition(5), then to move XP, you need to change partition(1) to G: and partition(5) to C:), and then use Ghost to copy. The difficulty lies in that the disk manager of XP cannot change the drive letter of the system drive, and you can use PQMagic to change it.
|
|
2004-8-22 00:00 |
|
|
GOTOmsdos
铂金会员
       C++启程者
积分 5154
发帖 1827
注册 2003-7-18
状态 离线
|
『第 3 楼』:
使用 LLM 解释/回答一下
你在用PQMAGIC更改G盘为C盘后,原G盘XP的注册表路径还是G的盘符啊,用PQMAGIC更改G盘为C盘后,注册表里的很多路径,也相应的由G改成了C了吗?否则,在运行程序时,会提示找不到文件的。
After you use PQMAGIC to change drive G to drive C, is the registry path of the original drive G still the drive G letter? After using PQMAGIC to change drive G to drive C, are many paths in the registry also changed from G to C accordingly? Otherwise, when running a program, it will prompt that the file is not found.
|
|
2004-8-22 00:00 |
|
|
fujianabc
金牌会员
     
积分 3467
发帖 1616
注册 2004-6-21
状态 离线
|
『第 4 楼』:
使用 LLM 解释/回答一下
我是说,把你原来的g改成c,c改成g,然后把系统文件全部从原来的g分区复制到原来的c分区中,这样之后,注册表没有任何变化,访问的依旧g盘(也就是原来的c分区)。
I mean, change your original g to c, c to g, and then copy all the system files from the original g partition to the original c partition. After that, there will be no changes in the registry, and you will still access the original g drive (which is the original c partition).
|
|
2004-8-22 00:00 |
|
|
fujianabc
金牌会员
     
积分 3467
发帖 1616
注册 2004-6-21
状态 离线
|
『第 5 楼』:
使用 LLM 解释/回答一下
这样更改之后,系统盘盘符还是g,但是g盘从partition(5)移到了partition(1)。
After such a change, the drive letter of the system partition is still G, but the G drive is moved from partition (5) to partition (1).
|
|
2004-8-22 00:00 |
|
|
GOTOmsdos
铂金会员
       C++启程者
积分 5154
发帖 1827
注册 2003-7-18
状态 离线
|
『第 6 楼』:
使用 LLM 解释/回答一下
啊??你的NTLDR在哪个盘?
Ah?? Which drive is your NTLDR on?
|
|
2004-8-22 00:00 |
|
|
fujianabc
金牌会员
     
积分 3467
发帖 1616
注册 2004-6-21
状态 离线
|
『第 7 楼』:
使用 LLM 解释/回答一下
ntldr随便在那个分区都行,只要他是主分区就行,记得激活此分区,并对boot.ini进行更改。
The ntldr can be placed on any partition, as long as it is a primary partition. Remember to activate this partition and make changes to boot.ini.
|
|
2004-8-22 00:00 |
|
|
GOTOmsdos
铂金会员
       C++启程者
积分 5154
发帖 1827
注册 2003-7-18
状态 离线
|
『第 8 楼』:
使用 LLM 解释/回答一下
既然这样(可用PQMAGIC把G也设为主分区),那还有什么必要把原来的G复制到原来的C?我给XP搬家是一定要把他搬到C,使它的盘符就是C: ,你的做法达不到我的意图呀..
Since that's the case (you can use PQMAGIC to set G as the primary partition too), then why is there a need to copy the original G to the original C? I must move XP to C so that its drive letter is C: Your approach doesn't achieve my intention.
|
|
2004-8-22 00:00 |
|
|
fujianabc
金牌会员
     
积分 3467
发帖 1616
注册 2004-6-21
状态 离线
|
『第 9 楼』:
使用 LLM 解释/回答一下
你一定要变盘符那只有重装了。
If you must change the drive letter, then you can only reinstall it.
|
|
2004-8-22 00:00 |
|
|
GOTOmsdos
铂金会员
       C++启程者
积分 5154
发帖 1827
注册 2003-7-18
状态 离线
|
『第 10 楼』:
使用 LLM 解释/回答一下
其实我几乎成功了,就差注册表内容里的G:改成C:,这个可用某个注册表编辑工具或十六进制编辑工具实现的,但可能也有个问题:有的地方可能是单个的G,没有":",这就难办了.不知道有没有专门的工具?
Actually, I almost succeeded. It's just that I need to change G: to C: in the registry content. This can be achieved with some registry editing tools or hexadecimal editing tools. But there might be a problem: some places might be a single G without ":", which is difficult. I wonder if there are any specialized tools?
|
|
2004-8-23 00:00 |
|
|
有田五亩
初级用户
 
积分 113
发帖 6
注册 2004-8-24
状态 离线
|
『第 11 楼』:
使用 LLM 解释/回答一下
我是直接把C盘的所有复制到另一个盘(我的是D盘),再用注册表编辑器修改D盘下的\WINDOWS\system32\config中的SYSTEM文件!把盘符换了!这样的话你用D盘的系统开机后 D就成了C了!到现在还没发生什么问题!
I directly copied all the contents of drive C to another drive (mine is drive D), and then used the Registry Editor to modify the SYSTEM file in \WINDOWS\system32\config under drive D! Changed the drive letter! In this way, when you boot up with the system on drive D, D becomes C! So far, nothing has gone wrong!
|
|
2004-8-24 00:00 |
|
|
fujianabc
金牌会员
     
积分 3467
发帖 1616
注册 2004-6-21
状态 离线
|
『第 12 楼』:
使用 LLM 解释/回答一下
分区盘符可在注册表中更改,HKLM\system\MountedDevices
Partition drive letters can be changed in the registry, HKLM\system\MountedDevices
|
|
2004-8-24 00:00 |
|
|
GOTOmsdos
铂金会员
       C++启程者
积分 5154
发帖 1827
注册 2003-7-18
状态 离线
|
『第 13 楼』:
你怎么改盘符的的?
使用 LLM 解释/回答一下
以下是引用有田五亩在2004-8-24 5:28:42的发言:
用注册表编辑器修改D盘下的\WINDOWS\system32\config中的SYSTEM文件!把盘符换了!
1 注册表编辑器能单独打开SYSTEM吗? 要不就是HKEY_LOCAL_MACHINE?
2 怎样换盘符? (要把全部的C:换成D:,还有,有的地方只是单独的C,后面没有":"分号哦! 在改时,会不会把不是盘符的C字符也该掉了?),
3 你怎么改的?
The following is the speech of Youtian Wumu on 2004-8-24 5:28:42:
Modify the SYSTEM file in \WINDOWS\system32\config under drive D with the registry editor! Change the drive letter!
1 Can the registry editor open the SYSTEM alone? Or it's HKEY_LOCAL_MACHINE?
2 How to change the drive letter? (Need to change all C: to D:, also, some places are just single C, without the ":" semicolon! When modifying, will the C characters that are not drive letters be changed too?),
3 How did you modify it?
|
|
2004-8-24 00:00 |
|
|
GOTOmsdos
铂金会员
       C++启程者
积分 5154
发帖 1827
注册 2003-7-18
状态 离线
|
『第 14 楼』:
使用 LLM 解释/回答一下
以下是引用fujianabc在2004-8-24 10:45:24的发言:
分区盘符可在注册表中更改,HKLM\system\MountedDevices
这样改后,在注册表中的一般应用程序的路径的盘符,也能相应的改过来吗?
The following is the post by fujianabc on 2004-8-24 10:45:24:
Partition drive letters can be changed in the registry, HKLM\system\MountedDevices
After such a change, will the drive letters of the paths of general applications in the registry also be changed accordingly?
|
|
2004-8-24 00:00 |
|
|
fujianabc
金牌会员
     
积分 3467
发帖 1616
注册 2004-6-21
状态 离线
|
『第 15 楼』:
使用 LLM 解释/回答一下
这和pqmagic效果相同,但可以免去一次重启。
This has the same effect as pqmagic, but it can avoid one reboot.
|
|
2004-8-24 00:00 |
|