Wni11 下 WSL 安装 CentOS

news2024/9/20 1:12:56

Wni11 下 WSL 安装 CentOS

  • 方法一、安装包安装
    • 下载包安装
    • 安装
    • 打开 CentOS
      • 1. 从 Windows 终端 打开
      • 2. 从 PowerShell 打开
  • 方法二、导入 CentOS 的 tar 文件进行安装
    • 0. 查看版本(可选)
    • 1. 导出 Docker 容器到 tar 文件
    • 2. 将 tar 文件导入 WSL
      • 2.1. 导入 tar
      • 2.2. 改名(重导)
      • 2.3. 修改默认系统
  • 三、安装完成
    • 1. 开启 systemctl
    • 2. 修改默认主机名
    • 3. 修复命令行高亮丢失的问题
    • 4. 设置阿里云的 CentOS 国内源
      • 先备份
      • 再修改源
      • 更新走一波
  • WSL 其他常用命令
  • 参考资料

方法一、安装包安装

下载包安装

https://github.com/mishamosher/CentOS-WSL
https://wsldl-pg.github.io/docs/Using-wsldl/#distros
https://github.com/wsldl-pg/CentWSL
在这里插入图片描述

安装

解压后运行 CentOS7.exe 即可
在这里插入图片描述

打开 CentOS

1. 从 Windows 终端 打开

安装 Windows 终端
在这里插入图片描述

2. 从 PowerShell 打开

在这里插入图片描述

方法二、导入 CentOS 的 tar 文件进行安装

在 docker 中运行一个 CentOS 容器,用 docker exprot 命令导出为 tar 文件。

0. 查看版本(可选)

先查看一下 CentOS 版本,很好是 8.x 前面安装包装的是 7.x 这回装个 8.x

ocker run -it centos /bin/bash                                                                          
[root@dca578a4bc76 /]# cat /etc/centos-release                                                                          
CentOS Linux release 8.4.2105    

确认版本没问题后,我们按下 Ctrl + P,然后紧接着按下 Ctrl + Q 这样退出 CentOS,但保持容器不终止。用 docker ps 查看一下容器还在:

C:\Users\jerry>docker ps
CONTAINER ID   IMAGE     COMMAND       CREATED         STATUS         PORTS     NAMES
dca578a4bc76   centos    "/bin/bash"   4 minutes ago   Up 4 minutes             wizardly_hypatia

1. 导出 Docker 容器到 tar 文件

  1. 我先创建个目录用来存导出文件 D:/OS/CentOS8/
  2. 执行导出命令,格式:docker export 容器名 > 导出文件.tar
docker export wizardly_hypatia > D:/OS/CentOS8/centos8.4.2105.tar

在这里插入图片描述
3. 容器利用完了,可以抛弃它了

docker stop wizardly_hypatia
docker rm wizardly_hypatia

2. 将 tar 文件导入 WSL

2.1. 导入 tar

执行命令格式:wsl --import <发行版名称> <安装目录> <导入文件.tar>
导入成功会在安装目录下生成一个虚拟磁盘镜像文件,比如:ext4.vhdx

wsl --import CentOS8.4.2105 D:\OS\CentOS8 D:\OS\CentOS8\centos8.4.2105.tar

导入完成用 wsl -l -v 查看一下:多了一个 CentOS8.4.2105

C:\Users\jerry>wsl -l -v
  NAME              STATE           VERSION
* docker-desktop    Running         2
  CentOS8.4.2105    Stopped         2
  CentOS7           Stopped         2
  Debian            Stopped         2

2.2. 改名(重导)

这名称太不合群了,我后悔了,还是改改吧,先注销(注销成功会清除安装目录下的 ext4.vhdx),重新导。

wsl --unregister CentOS8.4.2105
wsl --import CentOS8 D:\OS\CentOS8 D:\OS\CentOS8\centos8.4.2105.tar

重新导入效果

C:\Users\jerry>wsl -l -v
  NAME              STATE           VERSION
* docker-desktop    Stopped         2
  CentOS8           Stopped         2
  CentOS7           Stopped         2
  Debian            Stopped         2

2.3. 修改默认系统

方便以后 WIN + R 运行 WSL 直接进 CentOS8

wsl -d centos8
C:\Users\jerry>wsl -l -v
  NAME              STATE           VERSION
  CentOS7           Running         2
* CentOS8           Stopped         2
  Debian            Stopped         2
  docker-desktop    Stopped         2

操作完后碰到要我更新,又装了一下这个 适用于 x64 计算机的 WSL2 Linux 内核更新包

三、安装完成

1. 开启 systemctl

systemctl 默认没开启,配置一下,重启就可以了1
执行命令:

echo -e "[boot]\nsystemd=true" | sudo tee -a /etc/wsl.conf

它的作用是将如下信息写入 /etc/wsl.conf

[boot]
systemd=true

注意:接下来要先用 wsl -t centos7 停掉 centos7,再启动 centos7 才生效:

# 查看一下版本信息
systemctl --version
systemd 219
+PAM +AUDIT +SELINUX +IMA -APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 -SECCOMP +BLKID +ELFUTILS +KMOD +IDN

2. 修改默认主机名

注意:这里按原来 centos 修改主机名的方法是没用的。
登录进来可以看到,默认主机名用的就是宿主系统 Win11 的主机名。看着容易精神分裂,我还是改改:
还是改 /etc/wsl.conf 2,然后重启生效。

[boot]
systemd=true
[user]
default=jerry
[network]
hostname=centos7
generateHosts=true

重启后进来,主机名变了:

[jerry@centos7 ~]$ 

3. 修复命令行高亮丢失的问题

  1. ~/.bashrc 末尾追加一句(网上找到),喜欢折腾的朋友可以自己研究3

    export PS1="\[\e[37;40m\][\[\e[32;40m\]\u\[\e[37;40m\]@\h \[\e[36;40m\]\w\[\e[0m\]]\\$ "
    

    执行 source ~/.bashrc 生效。
    在这里插入图片描述

  2. 当然哪果你装了多个 Linux 子系统,也可以去别的版本找参考。(打开我的电脑,看左下角)
    在这里插入图片描述

4. 设置阿里云的 CentOS 国内源

先备份

cp -rv /etc/yum.repos.d /etc/yum.repos.d_bak

再修改源

sudo sed -i.bak 's|^mirrorlist=|#mirrorlist=|g' /etc/yum.repos.d/CentOS-*.repo
sudo sed -i.bak 's|^#baseurl=http://mirror.centos.org|baseurl=http://mirrors.aliyun.com|g' /etc/yum.repos.d/CentOS-*.repo
  1. sed:这是一个文本处理工具,常用于在 Linux 和 Unix 系统中执行简单的文本模式替换。
  2. -i:这个选项告诉 sed 在原地修改文件,而不是将结果输出到标准输出(即终端)。
    加上 .bak 表示修改前做备份。
  3. 's|目标|结果|g':这是 sed 的替换命令语法。
    s 表示替换命令。
    | 作为分隔符,用于分隔命令的不同部分。
    g:全局标志,表示在同一行中进行所有的替换,而不仅仅是第一次匹配。
    将所有以 mirrorlist 替换为 #mirrorlist,也就是在开头加#注释掉。
    将所有包含 #baseurl=http://mirror.centos.org 的行修改为阿里云的 CentOS 镜像地址
  4. /etc/yum.repos.d/CentOS-*.repo:此路径匹配 /etc/yum.repos.d/ 目录下所有以 CentOS- 开头 .repo 结尾的文件。

更新走一波

yum  update

装一下 vim

yum -y install vim

WSL 其他常用命令

以我们前面安装的 CentOS8 为例

  • wls -t CentOS8 停止子系统运行
  • wsl -v 查看 WSL 的版本信息
C:\Users\jerry>wsl -v
WSL 版本: 2.2.4.0
内核版本: 5.15.153.1-2
WSLg 版本: 1.0.61
MSRDC 版本: 1.2.5326
Direct3D 版本: 1.611.1-81528511
DXCore 版本: 10.0.26091.1-240325-1447.ge-release
Windows 版本: 10.0.22000.1936

参考资料

适用于 Linux 的 Windows 子系统文档
导入要与 WSL 一起使用的任何 Linux 发行版


  1. 使用 systemd 通过 WSL 管理 Linux 服务 ↩︎

  2. WSL 中的高级设置配置 ↩︎

  3. Bash Shell PS1:10 个让 Linux 提示符变得非常实用和时尚的例子 ↩︎

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2113552.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

macos安装ArgoCD

本文主要介绍如何在macos上安装并访问argo 我环境上已经安装了minikube&#xff0c;所以只需要启动minikube然后通过命令行安装argocd。 minikube start kubectl create namespace argocd kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/st…

OpenGL(二)-更详细版的三角形

在上篇blog中已经画了一个三角形了&#xff0c;这篇讲解一下一个三角形的渲染过程。 上篇blog中的glbegin搭配glend的流程&#xff0c;在OpenGL3.2中已经被弃用了&#xff0c;3.3以后推荐使用VBOEBOVAO的流程。 图形渲染管线 作用&#xff1a;将三维坐标经过一系列变换&#x…

【Day09】

目录 Mybatis-基础操作-环境准备 Mybatis-基础操作-删除 Mybatis-基础操作-删除&#xff08;预编译SQL&#xff09; Mybatis-基础操作-新增 Mybatis-基础操作-新增(主键返回) Mybatis-基础操作-更新 Mybatis-基础操作-查询&#xff08;根据ID查询&#xff09; Mybatis-基…

YOLOv8改进 | Conv篇 | YOLOv8引入DWR

1. DWR介绍 1.1 摘要:当前的许多工作直接采用多速率深度扩张卷积从一个输入特征图中同时捕获多尺度上下文信息,从而提高实时语义分割的特征提取效率。 然而,这种设计可能会因为结构和超参数的不合理而导致多尺度上下文信息的访问困难。 为了降低多尺度上下文信息的绘制难度…

【系统分析师】-2024-2010年系统分析师历年论文题目

目录 2024.5月 2023 2022 2021 2020 2019 预测2024年11月 2024.5月 信息系统工程 论基于架构的软件设计方法信息系统工程 论性能测试方法及其应用信息系统工程 论云原生应用开发数据库及应用 论多源数据集成方法及其应用 2023 信息系统工…

HTB-Pennyworth(cve查询 和 exp使用)

前言 各位师傅大家好&#xff0c;我是qmx_07,今天给大家讲解Pennyworth靶场 渗透过程 信息搜集 服务器端口开放了8080http端口 访问网站 服务器使用jenkins cms系统&#xff0c;版本是2.289.1 通过弱口令爆破&#xff0c;账户是root,密码是password 通过命令执行nday 连…

Leetcode面试经典150题-76.最小覆盖子串

解法都在代码里&#xff0c;不懂就留言或者私信 理论上提交这个就是最优解 class Solution {public String minWindow(String s, String t) {if(s.length() < t.length()) {return "";}/**转成字符数组 */char[] sArr s.toCharArray();char[] tArr t.toCharAr…

Docker编译环境的使用(ubuntu)

目录 Ubuntu安装docker 重启docker 拉取镜像 进入docker安装软件 提交docker 添加用户到docker组 进入docker 添加build用户 停止容器 保存docker镜像 load镜像 删除容器 Ubuntu安装docker sudo apt install docker.io 国内可用的源 Welcome to nginx! (tence…

git使用基础教程

(一)Git下载 git官网 - downloads 创建本地数据仓 1.创建文件夹 2.当前目录 cmd ---git init gitee.com注册登录 git创建项目 ide 项目地址本地数据库 ide项目上传云端 (一)git 1.git下载 2.新建仓库 3. 配置Configure---Version Control---Git----path to Git Get from…

某里227逆向分析

声明: 该文章为学习使用,严禁用于商业用途和非法用途,违者后果自负,由此产生的一切后果均与作者无关。 本文章未经许可禁止转载,禁止任何修改后二次传播,擅自使用本文讲解的技术而导致的任何意外,作者均不负责,若有侵权,请联系作者立即删除! 前言 这次会简单的讲解…

【中国国际航空-注册/登录安全分析报告】

前言 由于网站注册入口容易被黑客攻击&#xff0c;存在如下安全问题&#xff1a; 1. 暴力破解密码&#xff0c;造成用户信息泄露 2. 短信盗刷的安全问题&#xff0c;影响业务及导致用户投诉 3. 带来经济损失&#xff0c;尤其是后付费客户&#xff0c;风险巨大&#xff0c;造…

【LeetCode】最接近的三数之和

题目要求 解题思路 这道题解题方法和三数之和解题思路一样&#xff0c;可以参考上一篇博客 代码实现 class Solution { public:int threeSumClosest(vector<int>& nums, int target) {//排序sort(nums.begin(),nums.end());int lennums.size();//固定一个&#x…

流媒体协议RTSP(其二)

欢迎诸位来阅读在下的博文~ 在这里&#xff0c;在下会不定期发表一些浅薄的知识和经验&#xff0c;望诸位能与在下多多交流&#xff0c;共同努力 文章目录 前期博客一、RTSP简介二、请求消息结构三、应答消息结构四、RTSP交互流程 前期博客 流媒体与直播的基础理论&#xff08…

Datawhle X 李宏毅苹果书AI夏令营深度学习笔记之——卷积神经网络的前世今生

一、卷积神经网络简介 卷积神经网络&#xff08;Convolutional Neural Network, CNN&#xff09;是一种深度学习模型&#xff0c;尤其擅长处理图像和视频等高维度的数据。CNN 通过模仿人类视觉系统的工作方式&#xff0c;自动学习数据中的空间层次结构&#xff0c;使得它在计算…

启动第一个docker容器

1 、 docker pull ubuntu:20.04 下载镜像 2、 docker image ls 查看镜像 3、 docker run --nametest -itd 9df6d6105df2 创建并运行一个容器 4、 查看容器 docker ps -a 5、 登录容器 docker exec -it test /bin/bash 6 退出容器 exit 7 删除容器 docker rm 238514292c…

JVM面试真题总结(二)

文章收录在网站&#xff1a;http://hardyfish.top/ 文章收录在网站&#xff1a;http://hardyfish.top/ 文章收录在网站&#xff1a;http://hardyfish.top/ 文章收录在网站&#xff1a;http://hardyfish.top/ volatile关键字能防止指令重排序吗?如何实现? volatile关键字可…

2024国赛数学建模B题完整分析参考论文38页(含模型和可运行代码)

2024 高教社杯全国大学生数学建模完整分析参考论文 B 题 生产过程中的决策问题 目录 摘要 一、问题重述 二、问题分析 三、 模型假设 四、 模型建立与求解 4.1问题1 4.1.1问题1思路分析 4.1.2问题1模型建立 4.1.3问题1样例代码&#xff08;仅供参考&#xff09; 4.…

基于人工智能的图像风格迁移系统

目录 引言项目背景环境准备 硬件要求软件安装与配置系统设计 系统架构关键技术代码示例 数据预处理模型训练模型预测应用场景结论 1. 引言 图像风格迁移是一种计算机视觉技术&#xff0c;它可以将一种图像的风格&#xff08;如梵高的绘画风格&#xff09;迁移到另一幅图像上…

在VMware虚拟机中编译文件的时候报错:找不到头文件ft2build.h

以下是报错内容&#xff0c;提示说找不到头文件ft2build.h freetype_show_font.c:12:10: fatal error: ft2build.h: No such file or directory #include <ft2build.h> ^~~~~~~~~~~~ compilation terminated. 在编译之前已经交叉编译了freetype&#xff0c;…

如何使用 Python 读取 Excel 文件:从零开始的超详细教程

“日出东海落西山 愁也一天 喜也一天 遇事不钻牛角尖” 文章目录 前言文章有误敬请斧正 不胜感恩&#xff01;||Day03为什么要用 Python 读取 Excel 文件&#xff1f;准备工作&#xff1a;安装所需工具安装 Python安装 Pandas安装 openpyxl 使用 Pandas 读取 Excel 文件什么是 …