使用WSL和EAS构建APK时C盘意外占用激增问题求助
解决方案
1. 清理EAS本地构建缓存
EAS本地构建会生成大量临时缓存文件,默认存储路径可能占用C盘空间,执行命令清理:
eas build:clean
同时可修改eas.json,指定缓存到非C盘的WSL挂载路径:
"build": { "production": { "cache": { "cacheDirectory": "/mnt/d/eas-build-cache" } } }
2. 迁移Gradle缓存到非C盘
React Native Android构建依赖Gradle,默认缓存目录(WSL内~/.gradle或Windows端%USERPROFILE%/.gradle)均在C盘,可通过环境变量迁移:
WSL端配置
在~/.bashrc或~/.zshrc中添加:
export GRADLE_USER_HOME="/mnt/d/gradle-cache"
执行source ~/.bashrc生效,后续Gradle缓存将存储到D盘。
Windows端配置
在系统环境变量中新增GRADLE_USER_HOME,值设为D:\gradle-cache这类非C盘路径。
3. 清理WSL临时文件
WSL的/tmp目录会积累大量构建残留文件,手动清理:
sudo rm -rf /tmp/*
也可配置WSL自动清理临时文件,在/etc/wsl.conf中添加:
[boot] command = "rm -rf /tmp/*"
重启WSL生效:wsl --shutdown
4. 清理Windows临时目录
构建过程中可能在C:\Users\<你的用户名>\AppData\Local\Temp生成临时文件,可通过以下方式清理:
- 打开「设置」→「系统」→「存储」→「临时文件」,勾选临时文件后删除。
5. 迁移WSL虚拟机到非C盘
若后续仍有WSL虚拟机的空间占用问题,可将其迁移到非C盘:
- 关闭WSL:
wsl --shutdown - 导出虚拟机:
wsl --export Ubuntu D:\wsl-backup.tar(替换Ubuntu为你的发行版名称) - 注销原虚拟机:
wsl --unregister Ubuntu - 重新导入到非C盘:
wsl --import Ubuntu D:\wsl-install D:\wsl-backup.tar - 设置默认用户:
ubuntu config --default-user <你的用户名>
内容的提问来源于stack exchange,提问作者Metalvain
相关产品推荐
相关产品推荐

