在WSL2中安装多个Ubuntu教程_wsl安装了两个ubuntu,近期想跳槽的程序员必看
先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。





既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上运维知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip1024b (备注运维)

正文
- 测试
sudo docker run hello-world
Docker安装完成之后,我们需要在Ubuntu20.04中再启动一个Ubuntu16.04的Docker容器:
- 拉取Docker镜像
sudo docker pull ubuntu:16.04
- 创建容器
docker run -it ubuntu:16.04 /bin/bash
- 检查docker容器
luu@DELL:/mnt/c/Users/ding$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
2ed6c4e7cbe7 ubuntu:16.04 "/bin/bash" About a minute ago Exited (0) 16 seconds ago angry_dijkstra
c5743d46ac51 centos "bash ls /" 48 minutes ago Exited (0) 48 minutes ago wizardly_carson
注意:这里的Ubuntu16.04必须是在Ubuntu20.04的子系统创建,而不是在Window系统中创建,这个
十分重要!!不然导出的tar文件无法导入到WSL中。
- 导出tar文件
luu@DELL:/mnt/c/Users/ding$ dockerContainerID=$(docker container ls -a | grep -i ubuntu:16.04 | awk '{print $1}')
luu@DELL:/mnt/c/Users/ding$ docker export $dockerContainerID > /mnt/c/temp/ubuntu1604.tar
注意:需要在C盘新建一个空的temp/**.tar文件。
3. 将tar文件导入WSL
准备好 tar 文件后,可使用以下命令导入它:wsl --import < Distro > < InstallLocation > < FileName > 。
- 打开 PowerShell,并确保已创建一个要存储发行版的文件夹。
cd C:\temp
mkdir E:\wslDistroStorage\ubuntu1604
- 使用命令 wsl --import < DistroName> < InstallLocation> < InstallTarFile> 导入 tar 文件。
wsl --import Ubuntu-16.04 E:\wslDistroStorage\ubuntu1604 .\ubuntu1604.tar
- 检查结果
PS C:\temp> wsl --import Ubuntu-16.04 E:\wslDistroStorage\ubuntu1604 .\ubuntu1604.tar
正在导入,这可能需要几分钟时间。
操作成功完成。
PS C:\temp> wsl -l -v
NAME STATE VERSION
* Ubuntu-18.04 Running 2
CentOS Stopped 2
docker-desktop-data Running 2
docker-desktop Running 2
Ubuntu-16.04 Stopped 2
4. 设置默认用户
- 进入Ubuntu-16.04系统
PS C:\temp> wsl -d Ubuntu-16.04
安装sudo
apt-get update
apt-get install sudo
- 设置用户账户
root@DELL:/mnt/c/temp# NEW\_USER=ztl
root@DELL:/mnt/c/temp# useradd -m -G sudo -s /bin/bash "$NEW\_USER"
root@DELL:/mnt/c/temp# passwd "$NEW\_USER"
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
- 设定默认用户,将 Ubuntu 实例默认登录用户从 root 用户替换为新创建的用户
tee /etc/wsl.conf <<\_EOF
[user]
default=${NEW\_USER}
\_EOF

- 使用新用户登录

红框部分为关键操作,重启Ubuntu-16.04,实现用户从root切换到ztl。
- 设置su密码
sudo passwd
7.将用户添加到 sudo 用户组
在 Ubuntu 上,最简单的授予一个用户 sudo 权限的方式就是将用户添加到“sudo”用户组。该组成员可以以 root 身份执行任何命令,并且在使用sudo命令,被提示时,使用他们自己的密码进行认证
sudo whoami
#如果用户有 sudo 权限,这个命令将会打印“root”
将用户添加到sudoers文件中,授权sudo特权:
sudo visudo
#在“User privilege specification”下面添加:
username ALL=(ALL:ALL) ALL #username替换成想要添加的用户名
总结
之前一直出现导入失败的情况,来回折腾了好几次,后面发现问题出在了系统切换上,不能从Window上导出Ubuntu16.04,必须进入到一个WSL子系统,然后从子系统导出相应的tar文件,最后再在Window的WSL中导入才行。
最后的话
最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!
资料预览
给大家整理的视频资料:

给大家整理的电子书资料:

如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注运维)

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
有持续创作的动力!**
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注运维)
[外链图片转存中…(img-F9O7Z0DS-1713231154862)]
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)