将Windows的文档目录迁移到其他盘下

问题描述
C盘(系统盘)爆红,检查了一下C:\Users\我的用户名 快100G,除了正常的 下载(Downloads)文档(Documents)图片(Pictures)等等几个目录外,还有一个隐藏目录 AppData ,将近70G的一个目录。C:\Users\用户名\AppData里面一般有三个文件夹,分别是 Local LocalLowRoaming,简单地来说,都是用来存放软件的配置文件和临时文件的,里面有很多以软件名称或软件公司命名的文件夹,还有用户帐户的配置文件。随着系统使用时间的增加和安装软件的增多,AppData 占用的空间会越来越大。

思考: 如何才能把C:\Users整个目录放到其他盘。

问题分析

C:\Users\目录下有什么

  • 每个用户的文档 桌面下载图片、 视频 等文件夹(此类文件夹可以改变位置)
  • AppData 目录默认在用户根目录下,存储了大部分软件的数据、配置(无法移动位置)
  • config.ssh.configscoop等配置(无法移动位置)
  • 许多软件的默认数据位置(部分软件可以修改)

移动目录
文档桌面下载图片视频 等文件夹查看文件夹位置属性,即可根据需要移动默认位置,但是此办法无法解决AppData和其他配置目录的问题。这类方法显然不是我想要的,我的终极目标是将,整个C\Users目录移动到其他盘。下面分新安装系统和已安装系统两种情况介绍解决办法:

一、 安装 win10/11系统时修改默认用户路径(新装系统)

1、 安装Win10/11

当 windows 连接到网络的时候有时 Sysprep 会失败,所以建议全程关闭网络连接安装系统

安装系统的方法不多做介绍。安装系统重启后停留在选择地区的配置界面

2、 进入 Audit Mode

在系统配置选择地区的界面,按下 Ctrl+Shift+F3 ,这时 windows 会重启,进入 Audit Mode ,然后显示一个 System Preparation Tool(系统准备工具) ,点击取消,将它关闭。

3、 新建relocate.xml

现在你可以将电脑连接到网络了。

接下来我们要使用System Preparation Tool (Sysprep)工具来设置用户路径。这个工具会执行一个xml 文件中的配置(也就是relocate.xml
我们现在只需要一个非常简单的xml配置文件,只需包含以下内容:

  • windows 的版本(32 或 64 bit)

  • 用户文件夹的新路径(例如 D:\Users

新建relocate.xml,并使用记事本打开

警告,在操作之前,请先读一下这个:
1、Windows 以字母来标识盘符,但是当安装了 windows 重启之后,本来你想把用户目录安装到 d盘,但这个盘符可能会发生改变,比如变成了 e盘,这个时候就会失败,所以一定要确定好盘符(在开始之前理顺盘符)。
2、xml 文件保存到磁盘根目录(不能是 C盘),例如我把它保存到了:D:\relocate.xml
3、部分计算机在Audit Mode下因为缺少驱动,键盘无法使用,可以借助其他计算机编写,并拷贝,也可以完全用鼠标操作完成,看个人能力。

将以下代码粘贴到配置文件中

1
2
3
4
5
6
7
8
9
10
<?xml version="1.0" encoding="utf-8"?>
<unattend xmlns="urn:schemas-microsoft-com:unattend">
<settings pass="oobeSystem">
<component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<FolderLocations>
<ProfilesDirectory>D:\Users</ProfilesDirectory>
</FolderLocations>
</component>
</settings>
</unattend>

记得修改User目录位置

4、运行Sysprep

以管理员身份运行cmd,首先,关闭WMP Network Sharing Service服务:

1
net stop wmpnetworksvc

然后运行Sysprep

1
%windir%\system32\sysprep\sysprep.exe /oobe /reboot /unattend:d:\relocate.xml

上述命令告诉系统从Windows\System32\Sysprep运行 Sysprep,执行D:\relocate.xml中的指令,为OOBE(the firlst boot of newly installed Windows) 重启准备系统,最后重启。

5、完成

完成上述操作后,自动重启进入系统,检查User录已经移动到了D:\

二、 在已经安装好的 Windows 系统上迁移用户目录(不推荐)

警告:操作之前,一定要先创建一个系统映像,做好备份。
对一个 OEM 预先安装的 Windows 使用 Sysprep 是非常危险的。电脑厂商可能有他们自己的 unattended answer file,这样可能就会忽略掉你的 unattended file。在这个过程中可能会出各种错误,所以不建议操作。
如果中途出错了,你的备份文件可以帮助你恢复。
这个操作非常有可能导致你的电脑恢复出厂设置。
警告****1703 或者更高版本,请不要禁用已存在的用户!!!
在 Win10 1703 或更高版本上,千万不要禁用现有用户,因为禁用现有用户可能会让你无法登录 Windows,进而需要重装。

1、 新建relocate.xml

按照上面说过的步骤新建一个relocate.xml文件

2、 运行 Sysprep

按照上面说过的步骤运行Sysprep

3、 OOBE

虽然你已经安装了 Win10/11,但是在Sysprep运行之后OOBE仍然会运行,这意味着你的电脑会经历初始化程序。

这里有两点需要注意:

  • Windows 要求你输入产品密钥,但是不需要去输入,单击跳过就行了;
  • 之前的账户还会存在,但是OOBE会要求新建一个用户,如果新建的这个用户和已存在的用户名字相同,那就会发生错误。只需要新建一个随意的账户,之后,再把它删掉就可以了。

学习过程

1、关于Audit Mode和OOBE,请看官方的说明:将 Windows 启动至审核模式或 OOBE

2、参考文章:How to Move Users Folder to another Location in Windows 10

打赏
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!
  • Copyrights © 2015-2023 Move Jian
  • 访问人数: | 浏览次数:

请我喝杯咖啡吧~

支付宝
微信