如何在迁移后将 D:\Users 恢复为 C:\Users

如何在迁移后将 D:\Users 恢复为 C:\Users

移动后将 D:\Users 恢复回 C:\Users 的最佳方法是什么?计算机运行的是 Vista 操作系统,我认为可以使用此处描述的方法将 Users 文件夹恢复到另一个分区https://serverfault.com/questions/8187/whats-the-best-way-to-move-c-users-to-d-users-under-vista-w7

robocopy C:\Users D:\Users /mir /xj /copyall
mklink C:\Users D:\Users /j

由于升级到 Windows 7 失败,我需要将用户文件夹重新放在 C 上(无法识别用户文件夹在 D: 上)

不确定以下步骤是否足以完成该任务:

rmdir C:\Users                      #remove junction link
robocopy D:\Users C:\Users /e /xj /copyall
rmdir /S /Q D:\Users
mklink D:\Users C:\Users /j         #to be safe if something will try to save to D:\Users

答案1

去年我和你走了一模一样的路。如果我没记错的话,你写的解决方案和我最终使用的解决方案大致相同,所以我认为没问题。

但为了安全起见,请不要rmdir /S /Q D:\Users立即运行第三个命令()。

在删除之前D:\Users,最好先将其重命名为其他名称,然后查看启动过程中是否会出现问题。如果情况不妙,将其重命名将确保恢复到以前的状态,而如果您事先重命名,则无法做到这rmdir /s一点。

此外,mklink D:\Users C:\Users /j我宁愿使用批量搜索和替换注册表来将所有出现的 改回D:\UsersC:\Users也许让未完成的应用程序失败——这取决于你,我只是不想再有另一个连接点)。我隐约记得必须在这方面发挥一点创造力,因为有时路径存储为D/UsersD:\\Users。也许我使用正则表达式来实现这一点。使用一个好的注册表工具(我使用注册表编辑)。

因此,总结一下,我建议:

rmdir C:\Users                      #remove junction link
robocopy D:\Users C:\Users /e /xj /copyall
rename D:\Users D:\UsersOld
# try booting
# search and replace registry
# use system for a couple of weeks
rmdir /S /Q D:\Users

小提示:这并不是说 Windows“无法识别”该Users文件夹D:。Windows知道您将其移动并用连接点替换原始路径,并故意阻止更新(这在日志中很明显)。

相关内容