windows 迁移ubuntu wsl从C盘到D盘

放C盘太占空间,所以迁移到D盘

在C盘的位置为:

csharp 复制代码
C:\Users\lutia\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu22.04LTS_79rhkp1fndgsc\LocalState\ext4.vhdx

首先管理员模式打开powershell,然后停止wsl

csharp 复制代码
wsl --shutdown

查看ubuntu 版本

csharp 复制代码
wsl -l -v

我的是Ubuntu-22.04

将ubuntu导出到D盘

csharp 复制代码
wsl --export Ubuntu-22.04 D:\ubuntu.tar

注销老的ubuntu

csharp 复制代码
wsl --unregister Ubuntu-22.04

导入新的ubuntu放到D盘自己定义的文件夹下

csharp 复制代码
wsl --import Ubuntu-22.04 D:\WSL\Ubuntu2204 D:\ubuntu.tar --version 2

现在进入D盘可以看到虚拟磁盘在D盘下面了

csharp 复制代码
D:\WSL\Ubuntu2204\ext4.vhdx

迁移后进入ubuntu可能默认进入root用户,并且会从zsh变成bash

echo $SHELL

/usr/bin/zsh

which zsh

/usr/bin/zsh

如果没有输出,则需要重新安装:

sudo apt install zsh

第三步:切换默认 shell 到 zsh(恢复你以前的界面)

chsh -s /usr/bin/zsh

然后退出 WSL 再进入。

如果你用的是 Windows Terminal,关闭所有窗口再打开即可。

第四步:确认 Oh-My-Zsh 是否被保留

检查目录:

ls ~/.oh-my-zsh

如果在,则 oh-my-zsh 没有丢。

然后查看你的主题和插件是否还在 .zshrc:

nano ~/.zshrc

重点看:

ZSH_THEME="xxx"

plugins=(git z sudo history substring-search ...)

特别是你提到的"右箭头补全历史"是 zsh-history-substring-search 插件。

你在 .zshrc 中应有类似配置:

plugins=(

git

z

history

history-substring-search

)

如果没有,请加上。

然后:

source ~/.zshrc

自动补全和配色就回来了。

  1. 确认你以前使用的用户名

运行:

cat /etc/passwd | grep "/home"

一般是:

ubuntu❌1000:1000:Ubuntu:/home/ubuntu:/bin/bash

这个 "ubuntu" 或其他名字就是你原来的用户。

  1. 切换回原来的普通用户

例如你的原用户叫 ubuntu:

su - ubuntu

如果能进入到:

ubuntu@PC6463:~$

且颜色、美化恢复 → 说明问题完全解决。

  1. 如果希望 WSL 进入时自动用原来的用户

执行:

wsl -d Ubuntu-22.04 --user ubuntu

若正常工作,则设置默认用户:

wsl -d Ubuntu-22.04 --set-default-user ubuntu

  1. 确认 oh-my-zsh 是否在你的普通用户目录下

在 WSL 中切到普通用户后检查:

ls ~/.oh-my-zsh

如果有文件夹 → 正常。

  1. 如果你忘了用户密码或无法进入普通用户

我可以帮你:

重设密码

修复默认 shell

重装 oh-my-zsh 但不破坏原配置

只需要告诉我:

你之前的用户名字是什么(在 /home 目录里能看到)。

当你运行 su - 用户名 时出现什么输出。

如果你愿意,你可以把以下命令的输出贴过来,我帮你判断:

ls /home

cat /etc/wsl.conf

echo $SHELL

whoami

相关推荐
ouliten2 小时前
《Linux C编程实战》笔记:mmap
linux·c++·笔记
呆萌小新@渊洁2 小时前
Linux离线环境安装ffmpeg
linux·ffmpeg·php
梦想的旅途22 小时前
Hook技术与内存注入在企业微信外部群数据获取中的技术与风险分析
linux·运维·服务器
robator2 小时前
ubuntu 22.04 升级nvidia显卡驱动、cuda 和cudnn
linux·服务器·ubuntu
肖恭伟2 小时前
Pycharm历史community版本下载
linux·ubuntu·pycharm·下载·community
翼龙云_cloud2 小时前
亚马逊云渠道商:AWS Lightsail的常见问题怎么解决?
运维·服务器·云计算·aws
牛奶咖啡132 小时前
Linux中搭建Samba服务并实现共享目录的配置及其不同策略授权访问操作实践教程
linux·samba服务的安装部署·samba共享目录和权限的配置·特殊场景共享目录授权·smb的匿名用户访问共享目录·smb的指定用户访问共享目录·强制清除smb缓存
Menahem2 小时前
CentOS Stream 9 添加多个副ip
linux·tcp/ip·centos
风乍起吹皱一池春水3 小时前
Linux 文件及用户的一些日常命令
linux·服务器