在 Windows 下 使用 WSL 安装 Ubuntu 或者 Debian 并迁移 D 盘及 Root 免密登录全攻略


为什么要做这个?

  • 节省 C 盘空间: 默认安装在 C 盘,随着软件增加会迅速“吃掉”系统盘空间。

  • 最高权限体验: 直接以 root 身份登录,免去频繁输入 sudo 的烦恼,适合开发与实验环境。

  • 数据安全: 迁移到 D 盘后,即便重装 Windows 系统,虚拟磁盘文件(VHDX)依然可以轻松找回。


第一阶段:环境安装与准备

  1. 安装 Debian 基础系统:

    打开 PowerShell,运行以下命令(如果已安装可跳过):

    wsl --install -d Debian
    

    安装后需设置临时的用户名和密码,完成后输入 exit 退出。

  2. 全面关闭 WSL:

    确保在迁移前系统处于停止状态:

    wsl --shutdown
    

第二阶段:迁移 Debian 到 D 盘

通过“先导出、再导入”的方式实现物理位置的搬迁。

  1. 导出镜像文件:

    在 D 盘创建一个文件夹(如 D:\WSL\Debian),然后执行:

    # 将系统打包成 tar 文件
    wsl --export Debian D:\WSL\debian_backup.tar
    
  2. 注销原有的 C 盘系统:

    wsl --unregister Debian
    
  3. 重新导入到 D 盘:

    # 格式:wsl --import <系统名> <安装位置> <镜像文件路径>
    wsl --import Debian D:\WSL\Debian D:\WSL\debian_backup.tar
    

    导入成功后,你可以删除 D:\WSL\debian_backup.tar 以节省空间。


第三阶段:配置默认 Root 登录

核心原理: 通过 wsl --import 命令安装的系统,默认就是以 root 用户登录的。

1. 验证登录状态

直接输入 wsl 即可进入系统:

root@jack:/mnt/c/Users/Administrator# whoami
# 返回结果应该是 root

2. 设置 Debian 为默认分发版

如果你的电脑里还有 Docker 或其他 Linux 系统,请执行此命令确保直接输入 wsl 就能进 Debian:

wsl --set-default Debian

3. (可选) 修改注册表强制指定 root

如果由于某种原因默认不是 root,可以通过修改注册表来实现:

  1. 运行 regedit

  2. 定位到:HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Lxss

  3. 找到 DistributionNameDebian 的文件夹。

  4. DefaultUid 的数值数据修改为 0(十进制)。


第四阶段:验证安装位置

如何确定 Debian 真的已经在 D 盘了?

  • 物理检查: 进入 D:\WSL\Debian 文件夹,你会看到一个 ext4.vhdx 文件。这就是你的整个 Linux 系统磁盘。

  • 空间对比: 在 Debian 内部执行 df -h / 看到的剩余空间,应与 Windows D 盘的可用空间基本一致。


避坑指南 & 常用命令小结

  • 重启 WSL: wsl --shutdown(最彻底的重启)。

  • 查看运行状态: wsl -l -v(带星号 * 的是默认系统)。

  • Docker 冲突: 如果发现输入 wsl 进的是 Docker,请务必执行 wsl --set-default Debian

  • 路径说明: 在 root 模式下,/mnt/c/ 代表你的 Windows C 盘,/mnt/d/ 代表 D 盘。

结语: 现在的你已经拥有了一个安装在 D 盘、拥有最高 root 权限、且运行丝滑的 Debian 开发环境!


留下评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注

1 + 2 =