Windows 10 迁移用户文件夹(C:\Users)到其他盘
Windows 10 迁移用户文件夹(C:\Users)到其他盘
目标:制作一个符号链接 C:\Users
-> D:
,像 linux 分区挂载那样。
事先说明:
- 数据无价,请提前保存好用户目录数据。我本人是刚刚重装之后操作的,因此对数据不敏感。
- 本人参考了 Win11使用mklink转移C:\Users文件夹至非系统盘 的方法,因为操作系统不同,而且实际目标不太一样,所以实现方法几乎每一步都不太一样。关于数据安全和操作系统安全方面的问题请参考以上文章的部分链接。
- 作者为 linux 用户,对 windows 不了解,不保证以后没问题,不保证这是最简单的操作方式,不保证一定能成功,但是我个人感觉成功率应该挺高。
- 本文中涉及 CMD 或 powershell 的操作,记得用管理员权限打开。
准备
首先要有一个 windows PE 盘,如果没有,请参考上面的链接,但是本人亲测有可能失败。
步骤
首先启动电脑,D 盘内的东西暂时不需要删除。
1. 禁用 onedrive
我本人不使用 onedrive,装系统之后可能是默认开启的,开启 onedrive 可能导致复制失败,因此需要先关闭。具体关闭方法请自己查询。
2. 激活 Administrator 用户
因为复制本用户的东西不能占着本用户的文件,因此需要退出当前用户。
上面链接的方法可能不能找得到设置按钮(万恶的 GUI),所以采取 CLI 解决。
管理员启动 CMD 或 powershell,输入:
net user administrator /active:yes
执行后即可激活。
3. 切换到 Administrator 复制文件
win+X 之后按 U 注销当前用户,切换到 Administrator 登录,管理员打开 CMD 或 powershell 执行:
robocopy "C:\Users" "D:" /E /COPYALL /XJ /XD "C:\Users\Administrator"
具体含义参见之前的知乎链接。
4. PE 处理文件
注释:
关于为什么不直接在 PE 里复制,这一点是因为我当初这样执行的时候总是提示各种文件不能复制。
以及:
上面链接里说,C:\Users 在原操作系统能直接删除,但是因为 win10 及以前的 Administrator 也在 C:\Users 里,所以早期的操作系统不能直接删。这时需要 PE 完成。
插入 PE 盘,重启根据自己电脑的方式进入 PE 系统。
管理员打开 CMD 或 powershell 删除 C:\Users
:
rmdir C:\Users /S /Q
5. 创建目录交换点
继续在 PE 里,管理员打开 CMD 或 powershell:
mklink /J C:\Users D:
6. 重启系统,收拾残局
关闭 PE,重启原操作系统,登录原有用户(不是 administrator)
首先关闭 administrator,方法是管理员 CMD 或 powershell:
net user administrator /active:no
最好重启一下验证是否正常。
然后,如果有必要的话启动 onedrive 或者恢复数据。D 盘内原有的其他文件建议挪到自己用户目录里。
总结
这样操作之后打开 C 盘,C:\Users
会变成一个符号链接,这样完成迁移。