更新日志
2013.11.20:更新对appdata的处理方法
第二篇 个人文件、应用程序和系统文件的分离
很多帖子是将C盘下的User目录转移到了别的盘,但C:/user/%username%下存放了此用户的注册表,重装系统而不重置注册表会造成注册表信息的冗余或无法解决系统问题。又考虑到一般用户的电脑只供他一个人使用,所以我这里不转移C盘下的User目录;又发现appdata里的三个文件夹可以重定向,于是重定向local、locallow和Roaming。
成功安装win7以后第一次进入系统你将看到新建用户的提示时,请停下!
如果你要安装谷歌浏览器(chrome)或itunes,你要按正常流程继续设置系统,然后安装它们!然后跳到本文标★的地方。因为chrome固执地必须往C:/user/ %username%/appdata装,如果目录不存在它就无法从网上安装,也无法自动更新;itunes固执地认为用户的程序目录在C:/Program files,否则装不上或找不到AppleMobileDeviceSupport.msi,便无法识别苹果的设备。
如果你不想安装这两款软件,就按住Shift+F10打开命令提示符,如下做。
重要警告:路径中有空格要用引号包起来,路径中没有空格时一定不要使用引号!
小自检:运行robocopy命令时,屏幕应当滚动,显示许多行信息。例如“较旧的文件”“已存在”等等。
robocopy "C:/Program Files" "D:/Program Files" /E /COPYALL /XJ
rmdir "C:/Program Files" /S /Q
mklink /J "C:/Program Files" "D:/Program Files"
robocopy "C:/Program Files (x86)" "D:/Program Files (x86)" /E /COPYALL /XJ
rmdir "C:/Program Files (x86)" /S /Q
mklink /J "C:/Program Files (x86)" "D:/Program Files (x86)"
robocopy C:/ProgramData D:/ProgramData /E /COPYALL /XJ
rmdir C:/ProgramData /S /Q
mklink /J C:/ProgramData D:/ProgramData
如果在删除ProgramData文件夹时因为用户权限等问题无法成功删除,不必着急,继续做,下文会提示你。
1. 改变程序路径:输入regedit打开注册表编辑器。
2. 找到HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion,手动修改 ProgramFilesDir 与 CommonFilesDir的参数,如图 二‑1。
二‑1:32位与64位操作系统在这里有些差别。
图片上是64位系统的改法。
3. 关闭注册表和命令提示符。
4. 继续创建用户帐户,登录桌面。
★重新启动电脑,在启动时按F8,选择修复计算机。
此时你应该到达图 二‑2画面,选择命令提示符。
如果你是安装了chrome或itunes过来的,请按上文的处理Program Files、处理Program Files (x86)、处理ProgramData和设置注册表来做。完成后不要关闭命令提示符。
处理appdata
这里准备重定向C:/Users/%Username%/appdata里面的三个文件夹,考虑到在系统登录后可能某些文件在使用而无法转移,就在修复计算机的命令提示符里一起先把文件复制到目的地。
复制方法就是用之前的rebocopy。
复制后重启进入系统,重定向三个文件夹到rebocopu到的地方。系统问你是否转移文件,选择否,因为你已经复制过了。
appdata里的三个文件夹local、locallow、roaming都是像我的文档一样可以重定向的,所以不需要以上的办法。所以应该右击local文件夹,属性、位置,然后输入新的地址。注意,确定时不要转移现有文件!如果你尝试转移现有文件,会发现某些文件被系统使用而无法访问。另外,在重启之后,你会惊奇地发现你无法访问任何文件夹,包括我的电脑,提示“无法访问指定设备、路径或文件”。
大功告成!
注:本文参考了《win7全版本完美实现系统文件与用户信息的分离》http://acer.it168.com/viewthread.php?tid=1205482