基于符号链接的 Windows C 盘开发环境迁移实践
开发者的 C 盘空间通常被 Hugging Face 模型缓存、npm 全局依赖、VS Code 插件数据等目录大量占用,且这些数据删除后会自动重建。本文介绍一种基于 Windows NTFS 符号链接的迁移方案,将高空间占用目录转移至第二块固态硬盘,同时保证上层软件无感知、无性能损耗。
方案原理
Windows NTFS 支持两种目录级链接:
符号链接(
mklink /D):指向目标路径的软链接,支持跨盘使用。目录联接(
mklink /J):基于卷的硬链接,兼容性更优,适用于对符号链接支持不完善的老旧程序。
两者均在原路径创建重定向入口,实际数据存放于目标盘。程序访问原路径时,由文件系统透明转发至目标路径,应用层无需任何修改。
前提条件:目标盘应为高速存储(NVMe SSD)。若目标盘为机械硬盘,迁移后可能出现明显的加载延迟。
标准操作流程
所有目录迁移均遵循以下四步:
终止进程:关闭目标目录相关的软件、终端及后台服务,避免文件占用。
物理转移:将 C 盘源文件夹剪切并粘贴至目标盘对应路径,确保原路径无同名残留。
获取管理员权限:以管理员身份启动 Windows PowerShell 或命令提示符。
建立链接:执行
mklink命令建立映射。推荐优先使用/J(目录联接
