wsl2安装ubuntu

参考链接
参考链接

宿主机:Windows 10 教育版
docker版本 :Docker Desktop V4.1.1

wsl2安装

  1. 确认cpu开启虚拟化。

  2. 启用 WSL

     dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
    
  3. 启用“虚拟机平台,后重启系统。

    要在 Windows 10(2004)上启用虚拟机平台,请以管理员身份打开 PowerShell 并运行:

     dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
    

    要在 Windows 10(1903,1909)上启用虚拟机平台,请以管理员身份打开 PowerShell 并运行:

     Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform -NoRestart
    
  4. 设置 WSL 2 为默认值
    win10默认是wsl1,所以请用管理员身份运行的Windows PowerShell里执行一下。

     wsl --set-default-version 2
    

至此,WSL 2环境我已经全部准备完毕!

WSL2安装Ubuntu

  1. 通过下方的链接下载一个发行版本的Ubuntu。

     https://store.rg-adguard.net/
    
  2. 搜索框中输入下方的链接,搜索Ubuntu20.04LTS

     https://apps.microsoft.com/detail/9MTTCL66CPXJ?ocid=pdpshare&hl=en-us&gl=US
    
  3. 我们修改文件后缀名
    原本文件名:
    CanonicalGroupLimited.Ubuntu20.04LTS_2004.6.16.0_neutral_~_79rhkp1fndgsc.AppxBundle
    修改为 :
    CanonicalGroupLimited.Ubuntu20.04LTS_2004.6.16.0_neutral_~_79rhkp1fndgsc.zip

  4. 解压 CanonicalGroupLimited.Ubuntu20.04LTS_2004.6.16.0_neutral_~_79rhkp1fndgsc.zip
    我们选择 Ubuntu_2004.6.16.0_x64.appx 将其改为 Ubuntu_2004.6.16.0_x64.zip
    其他无用的可以删除了

  5. 解压此压缩包Ubuntu_2004.6.16.0_x64.zip,打开此文件夹右键管理员运行 Ubuntu2004.exe,Ubuntu20.04LTS会安装在当前路径下,等待Ubuntu20.04LTS安装完成。

输入用户名和密码(不可设定用户名为root,因为root这个用户已经默认存在)

Installing, this may take a few minutes...
Please create a default UNIX user account. The username does not need to match your Windows username.
For more information visit: https://aka.ms/wslusers
Enter new UNIX username: xx
New password:
Retype new password:
passwd: password updated successfully

查看安装的ubuntu

C:\Users\xx>wsl --list
适用于 Linux 的 Windows 子系统分发:
Ubuntu-20.04 (默认)
  1. 设置默认运行的 Linux 版本
    我们打开 PowerShell 在命令框输入以下命令:

     wsl --set-default Ubuntu-20.04
    
  2. 设定读写权限
    Windows直接访问WSL2路径并直接进行读写操作操作会出现权限不足拒绝的情况,我们之后编译SDK需要往WSL2路径下放置SDK包,所以一定要有权限访问WSL2目录。重庆让配置生效
    我们打开PowerShell 输入以下命令(默认登录用户为root):

     F:\xxxx\ubuntu2004.exe config --default-user root
    
  3. 运行Ubuntu
    双击ubuntu2004.exe,即可运行Ubuntu

启ssh服务

首先确保是root用户

vi /etc/ssh/sshd_config
/******************************/
PermitRootLogin yes  #把上面那行相同的注释掉,新加一行,允许root账户登录
PasswordAuthentication yes #允许使用密码登录
#PermitEmptyPasswords no
/******************************/
sudo service ssh restart

ssh服务不会自动开启

解决思路:

重启ssh服务的命令,根据需要修改参数哦,可以写个cmd脚本放在windows自启动文件夹中,开机自己运行就不用每次输入了

C:\Users\用户名\AppData\Local\Microsoft\WindowsApps\ubuntu2004.exe run "sudo service ssh restart"

win10 和 Linux文件交互

文件资源管理器重输入,

\\wsl$

ubuntu 安装docker

卸载旧版本

sudo apt-get remove docker docker-engine docker.io containerd runc 

使用存储库安装更新 apt 包索引并安装相关软件包以允许 apt 通过 HTTPS 使用 docker 存储库:

sudo apt-get update
sudo apt-get install ca-certificates curl gnupg lsb-release 

添加 Docker 的官方 GPG 密钥:

sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg 

设置存储库:

echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee -a /etc/apt/sources.list.d/docker.list > /dev/null

安装 Docker engine

snap install docker

验证安装完成

docker -v
/*********************/
Docker version 24.0.2, build cb74dfc

构建镜像并运行容器

编辑dockerfile

# 设置基础镜像为Ubuntu 18.04
FROM ubuntu:18.04

# 设置作者信息
MAINTAINER li "service@li.com"

# 设置环境变量,用于非交互式安装
ENV DEBIAN_FRONTEND=noninteractive

# 备份源列表文件
RUN cp -a /etc/apt/sources.list /etc/apt/sources.list.bak

# 将源列表中的 http://.*ubuntu.com 替换为 http://repo.huaweicloud.com
RUN sed -i 's@http://.*ubuntu.com@http://repo.huaweicloud.com@g' /etc/apt/sources.list

# 更新包列表
RUN apt update

# 安装基本的编译工具和依赖
RUN apt install -y build-essential crossbuild-essential-arm64 \
        bash-completion vim sudo locales time rsync bc python
RUN apt install -y bear

# 再次更新包列表并安装任何未安装的依赖
RUN apt update && apt install -y -f

# 生成本地化语言支持
RUN locale-gen en_US.UTF-8
ENV LANG en_US.UTF-8

# 创建用户
RUN useradd -c 'xx user' -m -d /home/xx -s /bin/bash xx

# sudo免密登录
RUN sed -i -e '/\%sudo/ c \%sudo ALL=(ALL) NOPASSWD: ALL' /etc/sudoers
RUN usermod -a -G sudo xx

USER xx
#设置docker工作目录为/home/xx
WORKDIR /home/xx

构建镜像

docbuild -t qemu .

此过程需要一段时间,请耐心等待

创建并运行容器

/home/xx/docker# er# docrun --privileged --mount type=bind,source=//home/xx/qemu,target=//home/xx/qemu --name="qemu" -h ubuntu -it qemu
docker ps -a罗列 所有的容器
#docker start启动容器
#docker attach连接运行状态容器
#docker stop停止容器
#doecker restart重启容器
$exit退出容器
docker images查看镜像

VScode 管理doecker

vscode上安装docker插件。用与启动,停止容器。实际就是将docker的命令菜单化。
vscode上安装Dev Containers插件,远程登陆vscode。

  1. 使用方法docke运行后,在vscode中ctrl+shift+p,出现命令行,之后attach to running container。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值