Windows 7 把用户数据、软件配置数据、软件默认安装位置移动到其他分区的方法
来源{
http://sacookbook.blogspot.com/2011/02/moving-cusers-and-cprogramdata-to.html(需FQ)
http://superuser.com/questions/445654/how-to-move-completely-the-programdata-folder-from-one-partition-in-to-another-p
http://llloo.cn/archives/1018.html
http://www.siqiboke.com/post/108.html
}
作用{
1 减小C:大小
2 安装软件可以放心的next了,只要目标分区(如D:)足够大
3 重装系统后,只需重做下junction就能使用之前的用户数据、软件配置数据
}
正常安装完Windows 7后,重启,按F8,进入【修复计算机】,打开【命令提示符】,切换到系统分区(一般为C:)下,移动如下目录{
用户数据目录 Users
软件配置数据 ProgramData
软件默认安装位置 Program Files 和 Program Files (x86)
}
命令模板(目标分区 X, 被移动目录名 toBeMovedDir){
robocopy C:\toBeMovedDir X:\toBeMovedDir /MIR /XJ
rmdir /S /Q C:\toBeMovedDir
mklink /J C:\toBeMovedDir X:\toBeMovedDir
}
例如,移动Users到D:下的命令{
robocopy C:\Users D:\Users /MIR /XJ
rmdir /S /Q C:\Users
mklink /J C:\Users D:\Users
}
重装系统后,重做junction{
rmdir /S /Q C:\Users
mklink /J C:\Users D:\Users
}
关键命令说明{
robocopy C:\toBeMovedDir X:\toBeMovedDir /MIR /XJ
把源文件/目录(C:\toBeMovedDir)复制到目标文件/目录(X:\toBeMovedDir),包括子目录/子文件,包括空的子目录(/MIR),除了软链接指向的文件/目录(/XJ)。
参数说明{
robocopy Windows的可靠文件复制
C:\toBeMovedDir 源文件/目录位置
X:\toBeMovedDir 目标文件/目录位置
/MIR 镜像目录树(等同于 /E 和 /PURGE){
/E 复制子目录,包括空的子目录
/PURGE 删除源中不再存在的目标文件/目录
}
/XJ 排除结合点(默认情况下通常包括),即不复制软链接指向的目录或文件
也可使用此命令 robocopy /E /COPYALL /XJ C:\toBeMovedDir X:\toBeMovedDir
/COPYALL 复制所有文件信息(等同于 /COPY:DATSOU)
详细帮助文档可在win7的cmd下执行 robocopy /? 查看。
}
rmdir /S /Q C:\toBeMovedDir
递归(/S)静默(/Q)删除(rmdir)指定目录(C:\toBeMovedDir)
mklink /J C:\toBeMovedDir X:\toBeMovedDir
创建junction软链接(mklink /J),软链接名为C:\toBeMovedDir,指向的目标文件/目录为X:\toBeMovedDir
}
Windows的软链接: 符号链接(Symbolic link)和结合点(junction point)的区别{
http://en.wikipedia.org/wiki/Symbolic_link#Microsoft_Windows
http://en.wikipedia.org/wiki/NTFS_symbolic_link
http://en.wikipedia.org/wiki/NTFS_junction_point
概括{
junction point只能创建本机范围内的目录的软链接,Windows 2000以上系统可用,XP可使用的工具有早期的linkd和后来更高级的junction
Symbolic link可以创建本机的目录/文件的软链接,可以使用相对路径,还可链接到网络上的远程路径,Windows Vista以上系统可用,系统自带命令mklink
}
}