WSL 迁移到D盘后,默认用户变成了root !!?

WSL本来装载在C盘(默认),导致D盘越来约大,变红。迫切需要挪动,往上搜到并亲测步骤指令如下

1. 在windows的 powershell(如果不行可以尝试管理员权限,我是没用) 中输入以下命令:

# 关闭所有WSL实例
wsl --shutdown
 
# 查看所有WSL发行版及其存储位置
# 注意记录目前的wsl名字,前后的名字必须一致,防止会有意外,比如: wsl_ubuntu
wsl --list --verbose
 
# 导出发行版到tar文件
wsl --export Ubuntu D:\tmp\wsl_ubuntu.tar
 
# 注销发行版
wsl --unregister wsl_ubuntu
 
# 将tar文件复制到新盘
# D:\myWsl为新的存放ubuntu wsl的目录
# D:\temp\wsl_ubuntu.tar为上面导出的目录
# 这步你需要使用文件管理器或命令行工具手动完成
 
# 导入tar文件到新位置, 
wsl --import Ubuntu-New D:\myWsl D:\temp\wsl_ubuntu.tar --version 2

2. 上述的导出和导入执行时间都比较长,文件越大越长,务必要耐心等待执行完成

3.  迁移成功后,发现默认登录用户变成了 root, 防止一些权限隐患问题,需要改回安装时候的用户

在wls ubuntu,执行命令如下:

 

#这个应该都一样,我的也是在这个目录这个文件
vim /etc/wsl.conf

#改变[user] default为你之前的默认用户,若没有这行就添加
[user]
default=myusername

#如果记不清你自己的用户名,可以输入如下命令寻找
cat /etc/passwd 

#关闭然后重启wsl,完毕,还有问题,继续差吧,我这里到这儿就成功了
wsl --shutdown

wsl 

  

### 将 WSL2 的 Ubuntu 安装到 D 的方法 #### 修改默认存储路径 为了将 WSL2 的 Ubuntu 安装到 D 而非默认的 C ,可以通过修改注册表来更改 WSL 文件系统的默认保存位置。具体操作如下: 编辑注册表键 `Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Lxss` 下的新字符串值 `DefaultBasePath` 并设置为目标驱动器上的文件夹路径,例如 `D:\WSL\[1]。 #### 使用命令行指定安装目录 另一种方法是在 PowerShell 或者 CMD 中执行特定命令来进行自定义位置安装。先确保启用了 WSL 特性并更新至最新版本之后,利用 wsl --import 命令配合 tar 打包好的 Linux 发行版根文件系统镜像一起使用可实现这一点 [^2]。 ```powershell wsl --install -d Ubuntu-20.04 ubuntu2004.exe install --root-directory D:\Ubuntu2004 ``` 上述脚本中的第二条指令演示了如何通过官方提供的 .exe 安装程序直接指明目标磁分区内的某个文件夹作为新的根目录所在处[^2]。 #### 迁移现有发行版数据 如果已经有一个位于 C 上的 WSL 实例想要迁移到其他符,则需按照以下流程处理:导出当前环境为压缩包形式;创建新位置用于存放解压后的文件结构体;最后重新导入这些资料完成迁移过程 [^3]。 ```bash wsl --export Ubuntu "C:\path\to\backup.tar" mkdir D:\Ubuntu2004 wsl --import UbuntuNew D:\Ubuntu2004 "C:\path\to\backup.tar" ``` 以上代码片段展示了怎样安全地转移整个虚拟机状态而不丢失任何配置或个人化设定。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值