C 盘瘦身:可迁移目录对照表 + mklink 命令生成
数据最后核对:2026-10· 软件目录随版本可能变化,迁移前先确认文件夹真实存在
C 盘爆红的元凶大多不在系统本身,而在 AppData:Ollama 的模型库、微信的聊天记录、剪映的素材缓存、JetBrains 的索引、npm/pnpm 的包缓存,随随便便就能吃掉几十 GB。这份表整理 40+ 个可以搬到 D 盘的文件夹, 逐条标出对应的软件、里面存的是什么、值不值得迁。填入你的用户名,每行都能直接复制 mklink /J 命令, 也能整批导出成 .bat 脚本。页面还附了另一记重拳——把虚拟内存(pagefile.sys)从 C 盘改到 D 盘的完整步骤与大小参考表。
迁移原理:把文件夹搬到 D 盘,再留一个「传送门」
mklink /J C盘原路径 D盘新路径 会在 C 盘原位置创建一个目录联接(Junction): 软件以为数据还在 C 盘,实际读写的是 D 盘。目录联接不需要管理员权限,对绝大多数软件完全透明。 完整流程四步:
- 彻底退出对应软件(微信、QQ 要在托盘图标右键退出,不是只关窗口)。
- 把 C 盘原文件夹整个剪切到 D 盘对应位置,例如
D:\Users\你的用户名\AppData\Local\Ollama。 - 确认 C 盘原文件夹已不在,然后运行下面的
mklink /J命令(在「命令提示符 cmd」里执行;PowerShell 里要写成cmd /c mklink /J ...)。 - 启动软件验证一切正常,再删掉安装包等残余垃圾。
用户名留空时命令里显示「用户名」占位。先筛选出你要迁的行,再点「复制全部命令」可得整批脚本。
另一记重拳:把虚拟内存(pagefile.sys)搬到 D 盘
C 盘根目录有个看不见的巨无霸 pagefile.sys——虚拟内存的分页文件, 默认钉在 C 盘,大小跟着物理内存走,16G 内存的机器常见 8-16 GB,32G 内存能到 24 GB 以上。 在资源管理器里看不到它?因为它是受保护的系统文件。把它改到 D 盘,C 盘立刻省下一大块,跟上面的目录迁移是两件独立的事,各做各的。
操作步骤(Win10 / Win11 相同)
- 按
Win + R输入sysdm.cpl回车(或:设置 → 系统 → 关于 → 高级系统设置)。 - 「高级」选项卡 →「性能」区点「设置」→ 再切到「高级」选项卡 →「虚拟内存」点「更改」。
- 取消勾选最上面的「自动管理所有驱动器的分页文件大小」——不取消,下面全部灰着没法改。
- 在驱动器列表选中 C 盘 → 点选「无分页文件」→ 必须点一下「设置」。这一步最容易漏:只选了 D 盘没在 C 盘上点设置,改完 C 盘照样躺着好几个 GB。
- 选中 D 盘 → 点选「自定义大小」→ 填初始大小和最大值(参考下表)→ 点「设置」。
- 一路「确定」退出,重启电脑生效。重启后 C 盘根目录的 pagefile.sys 消失(打开「显示系统文件」才能确认)。
大小怎么填(单位 MB)
| 物理内存 | 初始大小 | 最大值 | 说明 |
|---|---|---|---|
| 8 GB | 4096 | 8192 | 日常办公足够 |
| 16 GB | 8192 | 16384 | 最常见配置 |
| 24 - 32 GB | 12288 | 24576 - 32768 | 跑本地大模型、剪映、大型游戏按这档给,例如初始 24576 / 最大 32768 |
| 64 GB 及以上 | 8192 | 16384 | 内存够大时分页文件可以收着给 |
初始值给小一点没关系(按需增长),最大值才是硬保障。嫌麻烦就选「系统管理的大小」让 Windows 自己在 D 盘上伸缩; 想图个固定可控再自定义。D 盘最好是 SSD——分页文件放机械盘上,内存吃紧时整机会有明显的卡顿感。
别把分页文件彻底关掉
所有驱动器都选「无分页文件」能再省一块空间,但不建议:程序崩溃时没法生成转储、内存一旦吃满直接弹「内存不足」甚至闪退。 Ollama、剪映、PS 这类吃内存大户在无分页的机器上最先出事。留一份在 D 盘,钱不多花,稳很多。
这些目录千万别动
- AppData\Local\Packages——UWP 商店应用的数据,联接后经常报错甚至无法启动。
- C:\Windows、Program Files、Program Files (x86)——系统与软件本体,动了就是重装系统套餐。
- NTUSER.DAT 及用户根下的注册表 hive 文件——系统锁定文件,剪切不动它,强动就坏。
- AppData\Local\Temp——不值得联接,用「存储感知」或磁盘清理定期删更省心。
- 正在运行中的软件的目录——联接前软件必须彻底退出,否则文件占用、数据损坏两头空。
几个软件有比 mklink 更稳的路子
- 微信:设置 → 文件管理 → 更改目录到 D 盘,官方支持、迁移向导自动搬历史记录,比手动联接稳。
- Steam:设置 → 存储 → 添加 D 盘库文件夹,新游戏直接装 D 盘;老游戏在库里右键「移动安装文件夹」。
- Docker Desktop:数据在 WSL 虚拟磁盘里,junction 对它经常无效——正确姿势是
wsl --export导出再wsl --import到 D 盘。 - npm / pnpm / pip:比起联接,用它们自己的配置改缓存路径更干净(
npm config set cache D:\cache\npm、pnpm config set store-dir、pip config set global.cache-dir)。 - Epic / 育碧:启动器内都能改游戏安装位置,游戏本体别靠联接硬搬。
- Adobe(PR/AE 媒体缓存):在软件首选项里直接改「媒体缓存」位置到 D 盘,只迁缓存不迁程序。
常见问题
- 软件更新后目录又出现在 C 盘了?
- Electron 应用(Discord、Notion、Slack 这类)自更新时会重建目录。重新剪切 + 重跑一次联接命令即可,数据还在 D 盘不会丢。
- 联接做完 C 盘没变小?
- 先确认原文件夹真的搬走了(联接本身只占几 KB);再确认资源管理器没有把「用户配置文件」里的重复副本算进来。用 WizTree / SpaceSniffer 扫一遍看真实占用。
- 后悔了想搬回来?
- 删掉 C 盘的联接(只是个指针,放心删),把 D 盘文件夹剪切回 C 盘原位,完事。
- 迁移后软件报错找不到文件?
- 九成是搬完忘了建联接、或建联接时原文件夹还残留在 C 盘。删掉 C 盘残留 → 确认 D 盘数据完整 → 重跑命令。