一文搞定Windows11+WSL+Pycharm开发环境及避坑

  • Post author:
  • Post category:其他




零. 环境及背景



0.1 为什么需要这样的开发环境

众所周知,虽然Windows和Linux都可以运行Python,但是对很多Python扩展包的支持是不一样的。

比如 深度学习相关的pytorch

比如 自动化运维相关的ansible

小编本人也尝试将Ubuntu作为自己的主系统,并且为了逼自己适应,硬是将自己三台电脑(家里台式、笔记本、公司台式)全部装上了Ubuntu,但是讲真的生态真的是太差了,除了基本告别摸鱼打游戏之外,一些很基本的应用Office和微信虽然也有wine版本或者替代品,但不得不说真的是太别扭了。

有人这里就要很聪明的说一句,可以开虚拟机啊,但是在我的认知里,VMware Workstation等,是做实验、测试、应急的时候用一用没问题,如果作为常规使用,驱动、性能和切换的体验之差,不用多说了。

如果有一个玩意,可以只是在开发调试的时候将其拉起,并且又可以兼备兼容和便捷的东西,那我想那应该就是WSL了。



0.2 什么是WSL

以下内容来自百度百科

Windows Subsystem for Linux(简称WSL)是一个在Windows 10\11上能够运行原生Linux二进制可执行文件(ELF格式)的兼容层。它是由微软与Canonical公司合作开发,其目标是使纯正的Ubuntu、Debian等映像能下载和解压到用户的本地计算机,并且映像内的工具和实用工具能在此子系统上原生运行。
如果使用Windows 10 2004以上,可以通过WSL 2来窗口化运行桌面应用,也不需要另外安装其他的X 服务器。
2022年9月22日,IT之家消息,微软发布了 Windows 11/10 的 Linux 子系统新预览版,版本号为 0.67.6。  
2022年11月16日,微软 Win11/10 Linux 子系统 WSL 1.0.0 正式版发布。

大概意思就是用户体验可以达到WIndows、Linux,傻傻分不清楚。



0.3 搭建环境

Windows版本信息

版本	Windows 11 专业版
版本	22H2
安装日期	‎2022/‎10/‎13
操作系统版本	22621.819
体验	Windows Feature Experience Pack 1000.22636.1000.0

Pycharm版本

PyCharm 2022.3 (Professional Edition)
Build #PY-223.7571.203, built on November 30, 2022
Licensed to Melody Chaser
订阅有效期至 2023年2月8日。
Runtime version: 17.0.5+1-b653.14 amd64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.

Pycharm是装在WIndows上的,我并没有打算在子系统里安装Pycharm,有兴趣的小伙伴可以试试直接在子系统里安装PYcharm,悄悄告诉我一下体验如何,那样搭建的话可以省下很多需要做目录映射的部署。



壹. Windows11 搭建WSL



1.1 启动 WSL

用管理员身份打开 PowerShell,或者在管理员身份打开Terminal,打开新的PowerShell选项卡,输入:

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart



1.2 启动虚拟机平台功能:

同样在PoweShell中输入下面的命令,输入完命令后,要重启一下电脑,否则第三步的安装包安装不上的。

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



1.3 下载并安装Linux 内核更新包:


Linux 内核更新包



1.4 将WSL2设置为默认版本:

同样在PoweShell中输入下面的命令

wsl --set-default-version 2



1.5 选择Linux发行版进行安装

可以在微软应用商店里搜索Ubuntu,Kali,SUSE Linux Enterprise Server,Debian,Fedora安装,具体装哪个根据自己需要就好了。安装过程点点就好,不详说。

因为习惯及项目需要,我比较偏爱于CentOS,看了WSL

官方文档

没瞅见,幸好万能的Github上有这个:

https://github.com/mishamosher/CentOS-WSL

下载了CentOS7的WSL镜像

https://github.com/mishamosher/CentOS-WSL/releases/download/7.9-2111/CentOS7.zip

下载后解压,双击CentOS7.exe运行,提示风险选择继续之后开始安装,安装完成后有提示。



1.6 如何判定WSL的发行版安装成功

打开Terminal,新增新选项卡时,有自己安装的Linux发行版的选项,选择该选项能够进入到Linux终端,宣告WSL安装成功。

在Terminal新建选项卡中确认WSL已建立

可以正常操作Linux子系统的命令行

基本上达到这样的程度可以说明WSL已经OK了。



贰. 子系统中安装Python3环境

网上有很多教程就不详细说了,写下执行的命令和注解

# 安装编译相关工具
yum -y groupinstall "Development tools"
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
yum install libffi-devel -y

# 下载python安装包
wget http://npm.taobao.org/mirrors/python/3.9.9/Python-3.9.9.tgz
tar -zxvf  Python-3.9.9.tgz

# 安装gcc
yum install gcc



版权声明:本文为qq_33631872原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。