问题描述

C盘(系统盘)爆红了,检查了一下 C:\Users\我的用户名 快100G了,除了正常的 下载(Downloads)文档(Documents)图片(Pictures) 等等几个目录外,还有一个隐藏目录 AppData ,将近70G的一个目录。C:\Users\用户名\AppData 里面一般有三个文件夹,分别是 LocalLocalLow Roaming ,简单地来说,都是用来存放软件的配置文件和临时文件的,里面有很多以软件名称或软件公司命名的文件夹,还有用户帐户的配置文件。随着系统使用时间的增加和安装软件的增多, 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 ,点击取消,将它关闭。
关闭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下因为缺少驱动,键盘无法使用,可以借助其他计算机编写,并拷贝,也可以完全用鼠标操作完成,看个人能力。

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

<?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 服务:

net stop wmpnetworksvc

然后运行 Sysprep

%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

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐