在Windows10上安装CentOS7子系统

由于客户使用的服务器主要是linux的系统,redhat或centos等,而日常办公更多的是使用windows系统,这样就导致有时候做一些调试或者问题复现,需要再申请一台虚拟机,搞得很麻烦。偶尔可能由于网络问题,也无法正常链接到公司的网络,就会导致问题处理效率下降。本文介绍一种在Win10的PC机上安装CentOS7子系统的方法。


准备资料

PowerShell

windows命令行工具。本文所述操作,大多在PowerShell上执行。

LxRunOffline

由于我们安装的CentOS系统在微软商店上没有官方镜像,我们需要使用此工具完成安装。下载后安装到本机备用。

  • LxRunOffline-gitee下载

  • LxRunOffline-github下载

CentOS7的docker镜像

用于安装wsl子系统的镜像包。

  • centos-7-docker.tar.xz

  • centos7官方镜像

WSL2更新包

为了解决部分权限问题,我们需要升级到wsl2。 wsl_update_x64.msi

关于wsl,可以查阅官网资料:什么是适用于 Linux 的 Windows 子系统 | Microsoft Docs

关于wsl1和wsl2的区别,可以查阅官网资料:比较 WSL 1 和 WSL 2 | Microsoft Docs

安装WSL

启用适用于 Linux 的 Windows 子系统

需要先启用“适用于 Linux 的 Windows 子系统”可选功能,然后才能在 Windows 上安装 Linux 分发。

以管理员身份打开 PowerShell 并运行:dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

检查WSL2的运行要求

若要更新到 WSL 2,需要运行64位Win10系统:版本 1903 或更高版本。

查看版本的方法,powershell执行:winver

启用虚拟机功能

安装 WSL 2 之前,必须启用“虚拟机平台”可选功能。

以管理员身份打开 PowerShell 并运行:dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

重新启动 计算机,以完成 WSL 安装并更新到 WSL 2。

安装WSL2的Linux内核更新包

运行WSL2更新包 wsl_update_x64.msi。 (双击以运行 - 系统可能提示你需要提升权限,选择“是”以完成此安装。)

将 WSL 2 设置为默认版本

打开 PowerShell,将 WSL 2 设置为默认版本:wsl --set-default-version 2

安装WSL2子系统centos7

安装centos7

使用lxRunOffline安装WSL子系统。

命令格式:LxRunOffline install -n 自定义系统别名 -d 安装目录路径 -f 安装包路径.tar.xz

执行命令完成安装(注意替换系统别名、安装路径、安装包路径):LxRunOffline install -n centos7 -d D:\wsl -f F:\Download\centos-7-docker.tar.xz

安装失败或者不再使用此wsl,也可以卸载:LxRunOffline.exe uninstall -n 待卸载的系统别名

安装后的确认

安装完成后,使用wsl的查询命令查看已安装的wsl子系统列表和运行状态:wsl -l -v

也可以使用LxRunOffline list查看已安装的wsl子系统列表

如果查到的wsl列表中version为1,则表示该子系统为wsl 1的版本。

使用wsl --set-version centos7 2转换为wsl 2版本。注意,centos7是已安装的系统别名,需要根据实际情况替换名称,下文亦如此,不再赘述

如果安装了多个wsl子系统,可以使用wsl --set-default centos7设置centos7为默认的子系统。

启动

使用wsl或bash命令启动默认的子系统。

使用wsl -d centos7启动指定的子系统。

关闭

使用wsl --shutdown关闭所有wsl子系统。

使用wsl --shutdown -n centos7关闭指定的wsl子系统。

安装Windows Terminal原生工具

打开Microsoft Store搜索并安装Windows Terminal。安装完成后根据个人喜好配置和优化。

Windows Terminal帮助说明

请参考官方资料:Windows 终端安装 | Microsoft Docs

善后工作

注意:使用官方镜像安装后,root用户缺少环境变量,需要自行配置。一种简单的方法是创建一个新用户,把该用户的.bash开头的文件拷贝过来。操作命令依次是useradd testxcp /home/testx/.* /root/source .bash_profile

设置root密码

打开wsl后,使用passwd设置root用户密码。

修改hosts文件

首先使用ip addr或者ifconfig命令查看当前服务的ip地址,使用hostname查看主机名。

然后编辑/etc/hosts文件,修改后参考:

 127.0.0.1       localhost #仅保留这一条127.0.0.1的配置192.168.111.111 H1-11111WSC #根据上边查到的ip hostname设置这一条记录# The following lines are desirable for IPv6 capable hosts,以下ipv6的配置如不使用ipv6可以不管::1     ip6-localhost ip6-loopbackfe00::0 ip6-localnetff00::0 ip6-mcastprefixff02::1 ip6-allnodesff02::2 ip6-allrouters

修改yum源

 curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repocurl -o /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo# 改点东西sed -i -e '/mirrors.cloud.aliyuncs.com/d' -e '/mirrors.aliyuncs.com/d' /etc/yum.repos.d/CentOS-Base.repo# 刷新缓存yum makecache

更新本地包

 yum update -y

安装一些常用的包

 yum install -y NetworkManager net-tools bind netstat ncat iptablesyum install -y abrt alias alias-lib autoconfig autoconf ModemManager lrzsz mlocate bash-completionyum install -y libaio color-filesystem colord epel-release file gcc gcc-c++ http-parser java lshw lsofyum install -y man nmap ntp openssh-server pciutils perf python3 rsyslog tcpdump telnet-server telnetyum install -y traceroute tracker unzip usermode vim xml xml-common yum-langpacks zip gdb htop iproute

配置ssh服务

修改/etc/ssh/sshd_config文件,新增如下内容:

 设置开放的ssh端口,默认是22,防止和主机冲突,我们设置为2222Port 2222# 允许root远程登录PermitRootLogin yes   # 允许密码验证登录PasswordAuthentication yes     # 远程登录时的用户名AllowUsers root 

生成密钥:

 ssh-keygen -t rsa -b 2048 -f /etc/ssh/ssh_host_rsa_keyssh-keygen -t ecdsa -b 256 -f /etc/ssh/ssh_host_ecdsa_keyssh-keygen -t ed25519 -b 256 -f /etc/ssh/ssh_host_ed25519_key

启动sshd服务:

 /usr/sbin/sshd

注意事项

由于wsl是部署在windows系统上的linux子系统,资源与windows系统共享,所以,涉及系统底层管理的命令会被禁用,请知悉。譬如:systemctl、hostnamectl等。

在Windows10上安装CentOS7子系统相关推荐

  1. 升级步骤linux_开发人员福音,在win10系统上安装linux子系统

    对于软件开发人员来说,linux基本上是一个绕不过去的槛. 因为工作经常要用到linux,电脑用纯linux还是windows + 虚拟机装linux,我一直纠结.因为我要使用docker的原因,所以 ...

  2. 如何在win10系统上安装linux子系统

    2019独角兽企业重金招聘Python工程师标准>>> 对于软件开发人员来说,linux基本上是一个绕不过去的槛. 因为工作经常要用到linux,电脑用纯linux还是windows ...

  3. Windows10下安装Linux子系统

    Windows10下安装Linux子系统 版本说明 版本 作者 日期 备注 0.1 ZY 2019.7.9 初稿 目录 文章目录 Windows10下安装Linux子系统 版本说明 目录 一.初衷 二 ...

  4. 如何在Hyper-V上安装Centos7

    本文说下Hyper-V上安装Centos7 文章目录 概述 概述

  5. 在odoo服务器文件夹,在windows10上安装odoo12开发环境的方法

    前言 鉴于好多朋友说没有mac电脑,windows开发其实也差不了多远,只是个人习惯问题,而且吧,windows的电脑其实配环境也挺快的其实,我在这里再稍微补一个比较简单的windows环境部署,希望 ...

  6. Premiere 2020在windows10上安装后出现提示解决方法小试

    Premiere Pro 2020在windows10上安装后出现提示 解决思路: 一是:下载新一些版本的驱动,然后手动更换驱动,具体参考:如何在 Windows® 10 中手动安装 Intel® 图 ...

  7. Windows上安装Linux子系统

    文章目录 下面就介绍怎么在Windows上安装Linux子系统 一.启用开发者模式 二.启用适用于 Linux 的 Windows 子系统 三.从应用商店搜索安装Linux (注意这里安装是默认c盘如 ...

  8. 在Dell R730 服务器上安装CentOS7以及cadence套件

    在Dell R730 服务器上安装CentOS7以及cadence套件 前言 准备CentOS7启动盘 1.CentOS官网下载 2.制作u盘启动盘 BIOS启动 CentOS7系统安装 CentOS ...

  9. win10下linux子系统6,Windows10下安装Linux子系统2020年7月最新版

    作为数据分析的必备工具,Linux系统已经成为不可缺少的系统工具.如今Windows10开始可以安装Linux子系统(Windows Subsystem for Linux,WSL),直接在Windo ...

最新文章

  1. 机器学习热码one hot python
  2. 10种避免大型部署的方法
  3. 如何成为一名专家级的开发人员
  4. go 怎么等待所有的协程完成_GO语言基础进阶教程:Go语言的协程——Goroutine
  5. C语言学习记录_2019.02.02
  6. ​2022年中国医疗信息化研究报告
  7. OAuth2.0_授权服务配置_三项内容_Spring Security OAuth2.0认证授权---springcloud工作笔记141
  8. centos yum mysql-devel 5.5_CentOS 6.5通过yum安装 MySQL-5.5
  9. [!] Unable to satisfy the following requirements:
  10. matlab晶闸管整流电路,三相桥式全控整流电路 MATLAB/SIMULINK电力电子电路仿真
  11. matlab指派问题求法,matlab指派问题
  12. 网络图的绘制方法详细讲解
  13. 桌面右下角出现“测试模式 Windows7 内部版本7601”怎么回事?
  14. 应用程序正常初始化(0xc0150002)失败。请单击“确定”,终止应用程序
  15. C语言——输出一个正方形
  16. linux san网络,教你如何DIY SAN存储网络
  17. C++运算符重载(简单易懂)
  18. Hyperledger Fabric系统架构
  19. 人类能够制造出宏观的亚原子材料、粒子材料吗?
  20. MATLAB Robotics System Toolbox学习笔记(一):一步一步建造一个机械臂

热门文章

  1. 在C++Builder中可以利用FireMonkey的函数实现RGB与HSL之间的转换
  2. 交通规划——基于TransCAD的线性参照和动态分段流程实现
  3. matlab 矩阵转置,列、行翻转
  4. 时间管理---规律你的生活
  5. C#调用BarTender打印
  6. HTML,JavaScript中文乱码
  7. 6.串、数组、广义表
  8. 【通关MySQL】Win11如何将MySQL卸载干净?
  9. 用C语言编写贪吃蛇代码(难度可选)
  10. CSS3美化字体样式