如何安全地移动WSL 2 到另一个驱动器

1,882 阅读1分钟

【翻译于Move WSL 2 Safely to another Drive

当您拥有小型 SSD 并且适用于 Linux 的 Windows 子系统 (WSL) 的大小呈指数增长时,这真的很痛苦。没有简单的方法将 WSL 安装移动到另一个驱动器。在这篇博客中,我将讨论如何通过小步解决这个问题。

  1. 打开具有管理员访问权限的 PowerShell或命令提示符。为此,您可以使用+ X 快捷方式并选择Windows PowerShell(Admin)。

  2. 检查您计划移动的 WSL 2 安装当前是否正在运行/停止。

     PS C:\Users\Avinal> wsl -l -v
     PS C:\Users\Avinal>
     NAME      STATE           VERSION
     * Ubuntu    Running         2
     Kali      Stopped         2
    
  3. 如果它正在运行,那么您必须停止特定的 WSL 分发。(以Ubuntu为例)

     PS C:\Users\Avinal> wsl -t Ubuntu
    
  4. 导出到某个文件夹。(这里将Ubuntu作为ubuntu-ex.tar 导出到Z:wsl2)

     PS C:\Users\Avinal> wsl --export Ubuntu "Z:\export\ubuntu-ex.tar"
    
  5. 取消注册以前的 WSL 安装

     PS C:\Users\Avinal> wsl --unregister Ubuntu
    
  6. 创建一个新文件夹并将您的 WSL 安装导入该文件夹。

     PS C:\Users\Avinal> New-Item -Path "Z:\wsl2" -ItemType Directory
    
         Directory: Z:\
    
     Mode                 LastWriteTime         Length Name
     ----                 -------------         ------ ----
     d-----        31-12-2020     21:03                wsl2
    
     PS C:\Users\Avinal> wsl --import Ubuntu "Z:\wsl2" "Z:\export\ubuntu-ex.tar"
    
  7. 导入完成后检查

     PS C:\Users\Avinal> wsl -l -v
     PS C:\Users\Avinal>
     NAME      STATE           VERSION
     * Ubuntu    Running         2
     Kali      Stopped         2
    
  8. 将您的 WSL 发行版之一标记为(default)。

     PS C:\Users\Avinal> wsl -s Ubuntu
    
  9. 导出后,您的默认用户将设置为root,要将其更改为您想要的用户名,请运行以下命令

     PS C:\Users\Avinal> ubuntu config --default-user user_name
    
  10. 最后运行wsl,您已成功将 WSL 2 安装移动到另一个驱动器。