大约一个月前,我设置了一台 Windows 7 Professional 机器,我能够将辅助硬盘安装到路径 C:\Users。这样就将所有用户空间文件都放在了第二块硬盘上,而不用费心编辑注册表。它工作得很好,现在我试图复制它,但我似乎记不起我是怎么做到的。这让我觉得自己是个白痴。
我相信我以某种方式将 c:\Users 文件夹的内容移动到了第二个硬盘驱动器。然后我将 d: 驱动器安装为 c:\Users。这很简单,但我不确定在安装辅助驱动器之前如何将 c:\Users 文件夹的内容移动并删除(因为它必须是一个空文件夹)。它在我的旧机器上已启动并运行,但现在我需要在新机器上执行此操作,我无论如何也记不清我是如何操作的,也记不清我使用的说明在哪里。除了最后将整个 Users 文件夹移动到了 d: 驱动器,并且我没有 C:\Users 文件夹。
您对如何再次执行此操作有什么想法,或者有说明链接吗?个人资料移动无法解决这个问题。谢谢。
答案1
看起来像吉米·R·豪茨在 serverfault 上有我正在寻找的答案。他引用本文提供更多信息。
扩展他的回答,安装 Windows 7 后:
- 您使用安装媒体启动。
- 在“立即安装”屏幕上选择“修复您的计算机”
- 系统恢复选项会询问您是否要“修复并重新启动”,请选择“否”。
- 然后确保 Windows 7 被列为可供恢复的已安装操作系统之一并且被选中;然后按“下一步”。
- 您将获得一个恢复工具列表;选择“命令提示符”。
- 在命令提示符中,您将使用 Robocopy 将 C:\Users 复制到 D:\Users。
- 类型
robocopy c:\Users d:\Users /mir /xj
/mir
告诉 robocopy 镜像目录;这将复制所有文件和权限,并将删除目标目录中的任何其他文件(参考)。如果您已经在 D:\Users 中拥有用户配置文件并且想要保留它们,请尝试这样做/e /copyall
;这将以递归方式复制所有内容 (/e
),包括所有文件属性 (/copyall
),尽管出于某种原因您可能必须稍后调整所有权权限。/xj
非常重要,这告诉 robocopy 不要跟随连接点。如果你忘记了这一点,你会遇到很多麻烦。
- 确保没有文件复制失败(FAILED 列 = 0)。
- 从 C: 驱动器中删除旧的用户文件夹:
rmdir /S /Q C:\Users
- 创建指向新用户文件夹的 NTFS 连接:
mklink /J C:\Users D:\Users
。确保目标 D:\Users 使用将要使用的驱动器号后重新启动,而不是像在恢复命令提示符会话期间那样(谢谢无脑熊猫, 和马特·威尔基)。
现在重新启动,一切就绪。无需进一步配置或摆弄。新用户配置文件将全部存储在 D: 驱动器上,任何用户特定数据也是如此。而且无需在注册表中乱七八糟、搜索和替换值,也不必以任何方式摆弄新配置文件,即可实现。完全一劳永逸。
答案2
创建指向新用户文件夹的 NTFS 连接:mklink /J C:\Users D:\Users
对于此步骤,确保目标 D:\Users 使用重新启动后将使用的驱动器号,而不是像在恢复命令提示符会话期间那样,否则您将收到错误“用户配置文件服务登录失败。无法加载用户配置文件。”重新启动时。
解决此错误的方法是使用具有管理员权限的系统上的另一个配置文件登录并:
- 以管理员身份打开命令提示符
- 类型
Regedit
- 导航
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList
- 每个配置文件都有 1 个密钥。当配置文件有问题时,有 3 件事值得检查:
- 确保密钥名称不以“.bad”或“.bak”结尾,应类似于
S-1-5-21-1234-1234-1234-1234
- 确保 RefCount 值为 0
- 确保 State 值为 0
- 确保密钥名称不以“.bad”或“.bak”结尾,应类似于
- 注销或切换用户,然后您就能正常登录。可能需要重新启动。
使用了附加参考资料这里。
此答案应与 tvanover 于 10 月 9 日 20:01 的答案合并,并借鉴 Gonzalo 于 11 月 8 日 17:03 的答案。我缺乏编辑甚至评论的声誉,因此请其他具有这些权限的人合并(然后我们可以删除此答案)。
答案3
我刚刚在虚拟机中测试了 tvanover 的答案。不过,我做了一些不同的事情。
- 我在审计模式下全新安装时执行了此操作(首次启动时按 Ctrl+Shift+F3)。我先让它启动一次进入审计模式,然后再继续。
- 我将文件复制到第二个驱动器的根目录。
- 我没有建立链接,而是设置了一个挂载点。
以下是我创建挂载点的方法:
删除 C:\Users 目录后,重新创建
mkdir C:\用户
运行 DISKPART 命令,并选择第二个磁盘(用 * 替换 LIST DISK 命令后列出的正确磁盘号)
磁盘分区
列出磁盘
选择磁盘 *
选择分区 1
设置挂载点。如果失败,请返回并确保 C:\Users 目录存在且为空。
分配安装=C:\Users
出口
重新启动。重新启动完成后,您可以使用 Start->diskmgmt.msc 从第二个驱动器中删除驱动器号(如果需要)。
如果您处于审核模式,请返回系统准备工具窗口,确保选择“进入系统开箱即用体验 (OOBE)”作为系统清理操作,取消选中“通用”,并将关机选项设置为重新启动或关机。单击“确定”,系统将清理并重新启动回到首次启动设置。
答案4
要最轻松地将所有用户文件和用户程序文件从启动驱动器(在我的情况下是 SSD)中移出,请按照以下说明操作。
首先,创建还原点:1. 单击“开始”按钮,右键单击“计算机”,然后单击“属性”,打开“系统”。2. 在左侧窗格中,单击“系统保护”。如果系统提示您输入管理员密码或确认,请输入密码或提供确认。3. 单击“系统保护”选项卡,然后单击“创建”。4. 在“系统保护”对话框中,键入描述,然后单击“创建”。
然后:转到系统恢复/命令提示符:使用 Win7 安装 DVD 启动,选择语言、货币和键盘,然后单击下一步。在显示“立即安装”的屏幕上,选择“修复计算机”。系统恢复选项会询问您是否要“修复并重新启动”,请选择“否”。然后确保 Windows 7 被列为可供恢复的已安装操作系统之一,并且已被选中,然后按下一步。您将获得恢复工具列表。选择“命令提示符”。
找到从 Win7 媒体加载的虚拟 Windows 驱动器(可能是 C 或 X),找到您的实际 Windows/SSD 驱动器(D 或 E)并找到您的 HDD(常规硬盘驱动器)(D 或 E)。
在我的系统中通常,C=SSD,上面装有 Windows,D=HDD 数据驱动器
使用 Win7 更新媒体,恢复模式下的驱动器设置不同,因此:X:虚拟/临时 Windows 驱动器,E:实际 Windows/SSD 驱动器,D:HDD,我想要放置 \Users 的硬盘驱动器。
有人报告说系统恢复模式将像这样设置他们的驱动器:C:虚拟/临时 Windows 驱动器 D:实际 Windows/SSD 驱动器 E:HDD,他们想把/Users 放上去。
在命令提示符中,您将使用 Robocopy(不是 xcopy!)将 c:\Users 复制到 d:\Users,然后删除旧的 c:\Users,然后从 c:\Users 到 D:\Users 创建符号链接。请注意,您必须按顺序执行这些操作,并且在执行此操作之前不能有 ad:\Users 目录。
注意:在系统恢复命令提示符窗口中,您的驱动器与离开恢复模式后不同!因此,请根据驱动器在恢复模式下的情况调整以下命令,然后它们稍后就会恢复正确。
我使用:robocopy /mir /xj E:\Users D:\Users
将 /Users 从 Windows/SSD 移动到 HDD。/mir 指示 robocopy 镜像目录,这将复制所有文件和权限。/xj 非常重要,它指示 robocopy 不要遵循连接点。如果忘记了这一点,您将会遇到很多麻烦。确保没有文件复制失败(FAILED 列 = 0)。
然后,您必须从 Windows/SSD(c:)驱动器中删除旧的用户文件夹,然后才能创建符号链接:我使用了:rmdir /S /QE:\Users
创建指向新用户文件夹的 NTFS 连接/符号链接:
我使用:mklink /JE:\Users D:\Users
使用 /J 开关创建一个硬符号链接的连接点。(如果您使用 /D 开关,您还必须编辑注册表,因为它不是硬链接。)使用 /J,当 Windows 查找 C:\Users 目录时,它会找到它!但它将位于 HDD 上,而不是 SSD 上。很棘手!
要查看所创建内容的证明,仍然在命令提示符窗口中,进入实际的 Windows/SSD 并执行“dir”命令,您将看到:“用户 [D:\Users]”
现在重新启动,您将在硬盘上看到 /Users,一切就绪。无需进一步配置或摆弄。新用户配置文件将全部存储在 d: 驱动器上,任何用户特定数据也是如此。而且无需在注册表中乱七八糟、搜索和替换值,也不必以任何方式摆弄新配置文件,即可实现。完全设置并忘记。