您现在的位置是:首页 > 名人名句

WSL安装与使用(Ubuntu22.04)

作者:焦糖时间:2024-04-09 09:40:49分类:名人名句

简介  文章浏览阅读4.6k次,点赞2次,收藏25次。本文主要记录Windows WSL的安装和使用过程,内容包括WSL安装过程、WSL安装Ubuntu、Ubuntu更换镜像源,Ubuntu安装Dcoker并配置等步骤。_wsl ubuntu

点击全文阅读

文章目录

概要WSL介绍WSL安装安装环境安装方式一:命令行安装(不推荐,可能出现奇怪的问题)安装方式二:通过控制面板安装 WSL 安装Ubuntu22.04(通过Microsoft Store)Ubuntu更换镜像源进入Ubuntu更换镜像源 Ubuntu安装DockerWSL映射端口到宿主机场景解决方法步骤1:配置端口映射步骤2:关闭windows防火墙或将端口对外开放验证 问题处理使用WSL发现其无法ping通宿主机,也无法连接外网WSL迁移到其他磁盘问题描述解决办法

概要

本文主要记录Windows WSL的安装和使用过程,内容包括WSL安装过程、WSL安装Ubuntu、Ubuntu更换镜像源,Ubuntu安装Dcoker并配置等步骤。

WSL介绍

Windows Subsystem for Linux(简称WSL)是一个在Windows 10\11上能够运行原生Linux二进制可执行文件(ELF格式)的兼容层。它是由微软与Canonical公司合作开发,其目标是使纯正的Ubuntu、Debian等映像能下载和解压到用户的本地计算机,并且映像内的工具和实用工具能在此子系统上原生运行。 [1-3]
如果使用Windows 10 2004以上,可以通过WSL 2来窗口化运行桌面应用,也不需要另外安装其他的X 服务器。
参考链接

WSL安装

安装环境

操作系统: Microsoft Windows 11 家庭中文版
版本号: 10.0.22621
虚拟化: 已开启

安装方式一:命令行安装(不推荐,可能出现奇怪的问题)

在cmd中输入: wsl --install

安装方式二:通过控制面板安装

windows+S,搜索控制面板,打开控制面板:控制面板->程序->启用或关闭Windows功能->适用于Linux的Windows子系统,进行勾选后,重启主机,WSL就安装好了。

WSL 安装Ubuntu22.04(通过Microsoft Store)

打开Microsoft Store搜索WSL,即可看到支持的操作系统,选择Ubuntu 22.04安装即可
在这里插入图片描述

Ubuntu更换镜像源

进入Ubuntu

打开win11最新的终端,选择Ubuntu 22.04,即可进入Ubuntu子系统。
在这里插入图片描述

更换镜像源

# 切换至root用户后,执行下述指令# 备份旧的镜像源文件$ mv /etc/apt/sources.list /etc/apt/sources.list.bk# 更换为阿里源$ vi /etc/apt/sources.listdeb http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiversedeb-src http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiversedeb-src http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiversedeb-src http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiversedeb-src http://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiversedeb http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiversedeb-src http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse# 更新软件$ apt-get update 

Ubuntu安装Docker

# snap安装docker$ snap install docker# 修改docker配置文件# 如果是自行搭建的镜像仓库,使用`insecure-registries`避免出现报错Error response from daemon: Get "https://ip:port/v2/": http: server gave HTTP response to HTTPS client$ vi /var/snap/docker/current/config/daemon.json{    "log-level":        "error",    "registry-mirrors": [        "https://artifact.srdcloud.cn",        "https://hub-mirror.c.163.com"    ],    "insecure-registries": ["IP:PORT"],    "experimental": true}# 修改完配置要先停止docker,再重新启动,否则配置不生效$ snap stop docker$ snap start docker# 查看docker配置$ docker info

WSL映射端口到宿主机

场景

假设此时WSL内部署了个应用,对外访问端口为8080,需要开放给其他用户访问。

解决方法

将WSL内的应用端口映射到宿主机即可。

步骤1:配置端口映射

使用Windows的netsh命令实现端口映射配置,指令如下:
1、打开Windows终端,以管理员身份运行
2、添加端口映射规则

netsh interface portproxy add v4tov4 listenport=18080 listenaddress=0.0.0.0 connectport=8080 connectaddress=XX.XX.XX.XX

listenport为需要在局域网中监听的端口,即宿主机对外开放的端口
connectport为WSL内应用的端口
connectaddress为WSL的IP
listenaddress为宿主机的地址,设为0.0.0.0即可。

步骤2:关闭windows防火墙或将端口对外开放
验证
# xxx.xxx.xxx.xxx为宿主机ip# 该接口访问后,如畅通会返回一个true$ curl xxx.xxx.xxx.xxx:18080/api/v1/health;true

问题处理

使用WSL发现其无法ping通宿主机,也无法连接外网

第一次安装的时候,通过Microsoft Store安装WSL,结果Ubuntu无法ping通宿主机,也无法连接外网,网上的办法都试了也不行。解决方法就是通过控制面板卸载WSL后重装

WSL迁移到其他磁盘

问题描述

WSL的子系统默认会安装在C盘,随着使用,C盘会占用越来越多,导致WSL系统异常

解决办法

将WSL子系统迁移到其他磁盘,具体流程如下:

查看WSL状态:wsl -l -v 确保子系统处于Stopped状态才能进行迁移导出子系统镜像: wsl --export linux_name E:\ubuntu.tar注销Linux子系统:wsl --unregister linux_name导入系统:wsl --import <子系统名称> <要迁移的磁盘路径> E:\ubuntu.tar --version 2修改默认用户: ubuntu22.04.exe config --default-user root

点击全文阅读

郑重声明:

本站所有活动均为互联网所得,如有侵权请联系本站删除处理

我来说两句