[原]把Windows 7 用户文件夹挪移到非系统分区

    Windows 一直默认都是把用户文档等放在系统分区的,为了避免重装系统后丢失数据,通常会把用户文件夹定义到非系统分区(例如D盘)。XP 前的方法很简单,右键属性修改一下即可。Windows 7 等系统引入了库的概念,针对特定的文件夹,如我的文档、我的视频等,也可以通过右键属性中的“位置”来把其重新定位到其他分区的。但是,一来文件夹比较多,二来有些系统文件夹(%AppData%)等,很多的软件都会把用户数据存放在里面,加上系统缓存等导致所需空间越来越大。这通过简单的位置定位是不能解决的。最终的解决办法是,把系统盘的Users 目录(称为 用户特殊文件夹 User Special Folder)整个迁移到非系统分区,这也是本文的目的。
    本来以为这个问题很简单,Google 一下网上有大堆的方法,工作基本是类似的。但实际操作发现,由于存在100M的系统保留分区,按网上资料的操作会导致丢失用户文件夹的问题。经过若干次测试,终于找到较完善的解决办法,特整理出来。

一、工作原理
实际的工作原理很简单,就是把系统分区上默认的Users 目录移动到非系统分区,然后在原地创建一个指向该目录的链接。这与Linux 环境是非常类似的。

需要注意的地方是,用户登录后就会使用Users 目录下的文件。所以,如果在当前用户登录的情况下,移动或删除Users 目录中的文件都会失败的。网上提供的解决办法通常有三个:
1. 在系统安装过程中操作,也就是说,在需要输入首个用户信息时
点击在新窗口中浏览此图片二、系统保留分区问题
网上不少文档也提到系统修复模式下进行处理的方法,但与这些资料不同的地方是,我的磁盘分区中有个100M的系统保留分区:
点击在新窗口中浏览此图片系统盘是C 盘,非系统盘是D 盘。
不过,在系统修复模式下就不同了,该模式下,会自动读取磁盘上的分区,包括系统保留分区。这时,系统保留分区是C 盘,真正的系统盘是D 盘,而E 盘才是非系统盘

正是因为这个差异,如果按网上的资料中进行拷贝或创建链接操作,是会出现用户文件夹(systemprofile\Desktop)丢失的异常问题。

三、实际操作
把问题搞清楚,实际操作并不复杂。

1. 进入系统修复模式
重启机器,并不断按F8 键,让系统打开高级启动选项菜单:
点击在新窗口中浏览此图片robocopy "D:\Users" "E:\Users" /E /COPYALL /XJ

点击在新窗口中浏览此图片move Users Users_bak

点击在新窗口中浏览此图片mklink /J "D:\Users" "D:\Users"

点击在新窗口中浏览此图片※注意:这是最关键的一步,看上去很奇怪,也是与其他文档不同的地方。
前面数据拷贝到E 盘,但这里的链接还是指向D 盘。原因就是因为系统保留分区的问题。在系统进入正常引导时(非修复模式),这里的非系统分区E 盘,在没有为系统保留分区分配盘符的情况下,会成为D 盘。所以,我们的链接让应该指向D 盘。

看看操作后的结果:
点击在新窗口中浏览此图片四、注意事项
1. 系统保留分区的问题
因为Windows 7 安装方式的不同,在使用光盘安装windows7或在安装过程中执行了删除分区并格式化建立新的分区的时候,才会出现这个100M 的系统保留分区。具体原因可参考:这里。

如果你的硬盘没有出现该分区,那么上面在操作中就完全可以按正常的C 盘和D 盘移动数据和创建符号链接即可,反正原理是相同的。

2. 移动数据大小问题
虽然,理论上该方法与Users 目录大小无关。但由于robocopy 速度很慢,所以,建议在系统安装完毕后尽早进行该操作,以避免其他软件安装后带来的大量用户数据文件。还有IE 浏览器缓存数据等,可以先清空缓存后再操作,这对操作时间还是影响很大的。

3. 可能出现的问题
“User Profile Service 服务未能登录,无法加载用户配置文件”
点击在新窗口中浏览此图片“位置不可用:C:\Windows\system32\config\systemprofile\Desktop 引用了一个不可用的位置。”
点击在新窗口中浏览此图片

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/98411.html

(0)
上一篇 2021年8月21日
下一篇 2021年8月21日

相关推荐

发表回复

登录后才能评论