微软设计了比如:我的文档、我的OOXX,之类的东西,在WIN7下面更连游戏、下载等等目录都设计好了,我也很乖巧的把各种文件都分门别类的放进去了。

同时也很厉害的设计在了“%HOMEDRIVE%”里面,各种的资料,这种软件的配置就全给放进去了

在XP的时候对于C盘的要求还不是那么大,但是在win7下就显的捉襟见肘了

再格式化,重装系统就全没了,囧,就也是必须移动出来的第二个理由

以前只是自己挪挪地儿,小改一下注册表,今天无意中参考了几篇文章,那搞的才是个全面啊,在膜拜只后就全给做笔记了,忽忽,先上牛人原文的传送门

首先,不管你要怎么挪,请记住挪坏了我不会负责。其次,确定系统是刚刚安装好的,这样比较不会出现意外,也更有效优化,确定是用 Administrator 登录。

移动Program Files目录到非系统盘

第一步,复制 Program Files 目录

不能直接用资源管理器复制,我们需要保留此目录的所有权限设置,(以前我就是直接在资源管理器面弄到,现在严重怀疑,我的机器时不时的抽风是不是和这个有关)假设要从 C 盘移动到 D 盘:

xcopy "C:\Program Files" "D:\Program Files\" /E /H /K /X /Y /C

第二步,修改注册表

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion]
"ProgramFilesDir"="D:\\Program
Files"
"CommonFilesDir"="D:\\Program
Files\\Common Files"

第三步,重启

注意不是注销,因为 Program Files 里有很多文件是被系统服务使用的,注销并不能重启服务。

第四步,关闭 iphlpsvc 服务

因为它使用到了 “C:\Program Files\Internet Explorer\sqmapi.dll”:

net stop iphlpsvc

第五步,删除 “C:\Program Files” 目录

要先取得所有权,添加改写权限后才可以删除。

第六步,创建 Junction 文件夹映射

把 “C:\Program Files” 指向 “D:\Program Files”,这是为了防止一些硬编码的 SB 程序不由分说地往
“C:\Program Files” 里写东西。

mklink /J "C:\Program Files" "D:\Program Files"

至此,Program Files目录的转移就结束了,与还不太放心的话,可以去注册表找找“C:\Program
Files”这个字串符,手动改改了,呵呵,改坏了就是你人品问题了。

移动ProgramData 目录到非系统盘

第一步,复制 ProgramData 目录

假设要从 C 盘移动到 D 盘:

xcopy C:\ProgramData D:\ProgramData\ /E /H /K /X /Y /B /C

第二步,修改注册表

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows
NT\CurrentVersion\ProfileList] 下的 ProgramData 数据原为
%SystemDrive%\ProgramData,改为 D:\ProgramData。

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell
Folders] 下的 “Common Administrative Tools”、”Common AppData”、”Common
Programs”、”Common Startup”、”OEM Links”、”Common Templates”
等值的数据也相应地改改。如下:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell
Folders]
"Common Start Menu"="D:\\ProgramData\\Microsoft\\Windows\\Start
Menu"
"Common Programs"="D:\\ProgramData\\Microsoft\\Windows\\Start
Menu\\Programs"
"Common Administrative Tools"="D:\\ProgramData\\Microsoft\\Windows\\Start
Menu\\Programs\\Administrative Tools"
"Common Startup"="D:\\ProgramData\\Microsoft\\Windows\\Start
Menu\\Programs\\Startup"
"OEM Links"="D:\\ProgramData\\OEM
Links"
"Common Templates"="D:\\ProgramData\\Microsoft\\Windows\\Templates"
"Common AppData"="D:\\ProgramData"

第三步,重启

注销的话需要多加 net stop iphlpsvc 和 net stop BITS。

第四步,删除 C:\ProgramData 目录

其中有两个无法直接删除的文件要先取得所有权,添加改写权限后才可以删除。

第五步,创建 Junction 文件夹映射

把 C:\ProgramData 指向 D:\ProgramData,这是为了防止一些硬编码的程序不由分说地往
“C:\ProgramData” 里写东西。

mklink /J C:\ProgramData D:\ProgramData

移动Users 目录到非系统盘

第一步,修改注册表

和前面不同,因为 Users 目录下有一些系统占用的文件,复制不了。如果你和我一样有双系统或者用 U 盘启动
WinPE,那可以试试,不必按照这里写出的步骤做。但如果你没有相应的设备的话,那就继续SBS吧,先修改注册表,再复制文件。假设要移动到
E 盘:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows
NT\CurrentVersion\ProfileList] 下的 Default、ProfilesDirectory、Public
三个值的数据改一下,把盘符都改为 E:。

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows
NT\CurrentVersion\ProfileList\S-1-5-21-3843801140-3458922274-3296897442-500]
下的 ProfileImagePath 数据改为 E:\Users\Administrator。

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell
Folders] 下的 “Common Desktop”、”Common
Documents”、CommonMusic、CommonPictures、CommonVideo 五个值的数据把盘符都改为
E:。

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell
Folders] 下的值看到数据中有 C:\Users 的都改为 E:\Users。

第二步,注销,重新登录

会发现一些用户配置没正确加载的问题,但不用理会。

第三步,复制文件

xcopy C:\Users E:\Users\ /E /H /K /X /Y /B /C

第四步,注销,重新登录

在第二步看到的问题,解决了。

第五步,删除 “E:\Users\Default User” 目录

因为这个目录被 xcopy 复制错误,重新创建:

mklink /J "E:\Users\Default User" E:\Users\Default

然后对照 “C:\Users\Default User” 的权限设置,把 “E:\Users\Default User”
设置成和它一样:

cacls "E:\Users\Default User" /S:"D:PAI(D;;CC;;;WD)(A;;0x1200a9;;;WD)(A;;FA;;;SY)(A;;FA;;;BA)"

第六步,删除 C:\Users 目录

直接用资源管理器删除,很顺利。

第七步,创建映射

mklink /J C:\Users E:\User

高级移动

好吧,我承认前面的你都移动了,其实系统还是会添加几个G文件区C盘,我们前面只是移动了应用软件的默认安装位置,和一些个人数据

这里要说的是,对于像 %SystemRoot%\Installer、%SystemRoot%\SoftwareDistribution
这类“顽固”的文件夹,不能通过修改注册表来定义路径的设置!

我们要先准备一个工具Junction传送门

 

这两个文件夹比较“常用”,MSI 安装程序会把安装文件缓存到 %SystemRoot%\Installer,比如您装了
VS,会发现这个文件夹大了很多;而 %SystemRoot%\SoftwareDistribution
是自动更新服务用来缓存更新程序的。我的这两个文件夹加起来就有2GB多,惆怅

  假设要把 %SystemRoot%\Installer 修改为 E:\SysDir\Installer,

首先通过资源管理器把 C:\WINDOWS\Installer 文件夹剪切到 E:\SysDir\ 下(这个文件夹是隐藏的)

然后在命令提示符下输入:

junction C:\WINDOWS\Installer E:\SysDir\Installer

对于 SoftwareDistribution 要多一步,要先停止自动更新服务:

net stop wuauserv

后面步骤和 Installer 的一样,剪切 -> Junction:

junction C:\WINDOWS\SoftwareDistribution
E:\SysDir\SoftwareDistribution

  这样做完之后 C:\WINDOWS\ 下的 Installer 和 SoftwareDistribution
其实只是文件夹的映射,对他们的写入操作全部都会映射到 D:\SysDir\ 下的对应文件夹。本质上就是把E盘的空间拿到 C
盘使用,减少对 C 盘的写入。

Windows7系统目录迁移:Users,Progr…的更多相关文章

  1. windows 7、Windows10 系统目录迁移,修改安装的默认路径:Users,Program Files,ProgramData

    Tips:本文只针对Win7.windows 10系统有过测试,其他系统尚未测试:不过大家想尝试也可.这次实验是我做的全新 win7_32位系统来测试的,windows10当然64位的系统也可.至少现 ...

  2. Windows 10瘦身

    Windows操作系统功能越来越强大,同时体型也越来越臃肿.安装盘没有60Gb都不敢安装.Windows10 安装最低磁盘要求20G ====瘦身基础篇,适合任何用户:(可见目录,简单迁移)1. 安装 ...

  3. SQL Server 备份迁移策略

    标签:SQL SERVER/MSSQL SERVER/数据库/DBA/xp_cmdshell/备份压缩 概述 当备份空间不是很充裕的情况下需要找方法将备份文件拷贝到专用的备份机器上去,特别是存储空间不 ...

  4. windows7 阻止copyfile到windows目录的解决办法

    一. windows7 x64,uac会阻止copyfile到c:/windows.提示拒绝访问. [会引起uac提示的3种情况: Administrator access token checks. ...

  5. 如何在windows7上安装启明星系统。

    启明星系统提供多种安装方式.安装包里自带了setup.exe.每个程序的 install下有在线安装(例如请假应用程序为book,则默认为 http://localhost/book/install ...

  6. 从Windows XP系统迁移到Windows 7,Windows 8开始

    Microsoft在2014年4月8日结束了Windows XP的支持.您的公司准备好了吗?如果您还没有迁移到Windows 7或8,那就要抓紧时间了.从现在起将不再向XP系统提供安全修补程序,而仍然 ...

  7. Outlook账户迁移帮助

    Outlook账户迁移指南 1. 介绍 开贴聊聊如何迁移Outlook用户账户到另外一台电脑. 相信许多Outlook用户都遇到过这样的情况:买来一台新电脑,安装完Outlook后,想把旧电脑里面的O ...

  8. MSSQL备份及数据迁移

    版本:MSSQL 2008 备份情景:从A服务器的SQL 迁移到B服务器,并且数据也迁移过去. 操作环境:A服务器:WINDOWS7  B服务器:WINDOWS8.1   辅助工具:VNC 首先从A服 ...

  9. 代码托管SVN到Git迁移(使用小乌龟工具)

    1.环境信息 Git   Server     华为软件开发云   代码托管 SVN Server    本地SVN服务器   Windows Server2012 R2 本地主机       Win ...

随机推荐

  1. Nginx的try_files使用详解

    try_files 语法: try_files file ... uri 或 try_files file ... = code 默认值: 无 作用域: server location 按顺序检查文件 ...

  2. 如何理解 UL94HB , UL94-V0 , UL94-V1 , UL94-V2

    塑料阻燃等级由HB,V-2,V-1向V-0逐级递增: UL94V0,V1,V2是不同的阻燃等级,其等级不同,耐燃的测试方法亦不同,测试判定的标准也不同. V0的测试方法是将测试物倾斜45度,用酒精灯点 ...

  3. katalon系列五:使用Katalon Studio手动编写WEB自动化脚本

    上一篇主要讲了怎么录制脚本,这次我们看看怎么手动编写脚本,接下来就编写一个简单的用百度搜索的脚本. 1.我们先抓取页面上的元素,点击工具栏上的Spy Web按钮(地球上有个绿点),URL输入百度地址, ...

  4. Java开发工程师(Web方向) - 01.Java Web开发入门 - 第2章.HTTP协议简介

    第2章--HTTP协议简介 HTTP协议简介 Abstract: HTTP协议的特性,HTTP请求/响应的过程,HTTP请求/响应的报文格式等知识,最后会演示如何通过Chrome提供的开发者工具,去跟 ...

  5. 数据库Mysql的学习(四)-表的记录操作

    ,);//指定插入的顺序 ,);//按照默认的插入 ,),(,)(,);//同时插入多条数据 //将查询结果插入表中 CREATE TABLE TEXT( category_id INT PRIMAR ...

  6. [Clr via C#读书笔记]Cp4类型基础

    Cp4类型基础 Object类型 Object是所有类型的基类,有Equals,GetHashCode,ToString,GetType四个公共方法,其中GetHashCode,ToString可以o ...

  7. [ Continuously Update ] The Paper List of Image / Video Captioning

    Papers Published in 2018 Convolutional Image Captioning - Jyoti Aneja et al., CVPR 2018 - [ Paper Re ...

  8. 关于mysql开元数据库的几个随想

    现在已经是凌晨了,昨天晚上写了我人生中的第一篇笔记,觉得没什么可写的,写了一个多小时都没写出什么,现在突然想写点东西了,这是一个比较有趣的问题,前两个月换了新工作,记得当初面试这份工作的时候面试到第三 ...

  9. SpringCloud IDEA 教学 (一) Eureka的简介与服务注册中心的建立

    写在开头 SpringCloud进来成为业界排名靠前的微服务框架,最核心功能就是搭建微服务,并在此基础上衍生出一系列功能,如断路器(Hystrix).断路监控.管理配置.Zuul.OAuth2等功能. ...

  10. 一些容易记混的c++相关知识点

    一些容易记混的c++相关知识. 截图自:<王道程序员面试宝典>