默认情况:

当你运行 wsl --install 安装 Ubuntu 时,它会将虚拟磁盘文件(ext4.vhdx)默认存储在 C 盘 的深层目录下(通常是 %LOCALAPPDATA%\Packages\CanonicalGroupLimited...)。
对于做大模型微调来说,C 盘绝对不行。因为:

  1. 环境大:Conda/Python 环境 + 依赖库轻松几 GB。
  2. 模型大:下载几个模型(如 Qwen, Llama3)动不动几十 GB。
  3. 数据大:数据集和微调产生的 Checkpoints 会迅速占满空间。

解决方法:
WSL 没有在安装时直接选择盘符的选项(很反人类)。
最稳妥、最标准的做法是:“先安装到 C 盘,配置好用户名密码,然后通过导出/导入的方式搬家到 D 盘”

请按照以下步骤操作,保证你可以把系统安在 D 盘(或任意大容量盘):

第一步:正常安装(先让它在 C 盘安家)

  1. 打开 PowerShell(管理员),安装 Ubuntu 24.04:
    wsl --install -d Ubuntu-24.04
    
  2. 安装完成后,系统会自动弹出一个黑框框(Ubuntu 终端)。它会让你设置 Username (用户名) 和 Password (密码)。
    • 注意:输入密码时屏幕上不会显示星号,输完回车即可。
  3. 设置完后,输入 exit 退出 Ubuntu 终端。

第二步:执行“搬家”操作(移动到其他盘)

假设我们要把系统移动到 D:\WSL\Ubuntu2404 目录下。

  1. 停止 WSL
    在 PowerShell 中运行:

    wsl --shutdown
    
  2. 导出系统(备份为 tar 包)
    找个临时的地方(比如 D 盘根目录)保存备份文件。

    # 这一步会把刚装好的系统打包,可能需要一点时间
    wsl --export Ubuntu-24.04 D:\ubuntu_backup.tar
    
  3. 注销原系统(释放 C 盘空间)
    这一步会把 C 盘的默认安装彻底删除。

    wsl --unregister Ubuntu-24.04
    
  4. 导入系统到新位置
    创建你想要安装的目录(例如 D:\WSL\Ubuntu2404),然后运行导入命令:

    # 格式:wsl --import <发行版名称> <安装位置> <备份文件路径>
    wsl --import Ubuntu-24.04 D:\WSL\Ubuntu2404 D:\ubuntu_backup.tar
    
  5. 清理备份文件
    现在 D:\ubuntu_backup.tar 已经没用了,可以删掉。

第三步:修复默认用户(关键一步)

通过 --import 导入的系统,默认登录用户会变成 root(超级管理员),这在后续使用 pip 或 git 时会很不方便,我们需要改回你在第一步设置的那个用户名。

  1. 启动新搬家的 Ubuntu:

    wsl -d Ubuntu-24.04
    

    (你会发现提示符是 root@...)

  2. 在 Ubuntu 终端里,创建/编辑配置文件:

    nano /etc/wsl.conf
    
  3. 在编辑器中输入以下内容(把 wangtianwei 换成你第一步设置的那个用户名):

    [user]
    default=wangtianwei
    
  4. 按下 Ctrl + O 然后回车保存,再按 Ctrl + X 退出编辑器。

  5. 在 Windows PowerShell 中重启 WSL 使配置生效:

    wsl --shutdown
    wsl -d Ubuntu-24.04
    

大功告成!
现在你的 Ubuntu 24.04 就稳稳地运行在 D 盘了。以后你下载的模型、安装的 LlamaFactory 都会存储在 D:\WSL\Ubuntu2404\ext4.vhdx 这个虚拟磁盘文件里,不用担心炸 C 盘了。