还在用虚拟机吗?通过WSL2在Win10下愉快的玩耍Linux(详细教程+报错解决方案)

简介: 还在用虚拟机吗?通过WSL2在Win10下愉快的玩耍Linux(详细教程+报错解决方案)

Preface



WSL(Windows Subsystem for Linux),即适用于Linux的Windows子系统。


自从 Win10 有了 Linux 子系统(WSL),我就直接把电脑上的 VMware 虚拟机软件卸载了。


WSL 体验之好,谁用谁知道!!!


再加上 Windows Terminal 这款最新的终端,通过一些配置可以使得终端非常好用而且舒适养眼,更利于Linux编程了。


这篇包含Win10下使用Linux的完整教程(自夸一句:极其完整,每一步都有还有报错解决方案),包括安装和环境配置。


教程足够详细,小白也能看懂,希望能给个赞 😘 放个最终成果:

image.png


WSL安装



win10版本需要在1903以上,我的版本是20H2。

可以 win + R 打开运行,输入 winver 查看版本号。


  1. 管理员身份打开 PowerShell 分别输入:


dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
复制代码


  1. 输入完成后重启电脑,以完成 WSL 安装并更新到 WSL 2。
  2. 重启完下载适用于 x64 计算机的 WSL2 Linux 内核更新包,安装即可。
  3. 将 WSL 2 设置为默认版本:


wsl --set-default-version 2
复制代码


  1. 在微软商店内下载Linux分发版,这里我下载的是Ubuntu 20.04 LTS
  2. 下载完成后打开,首次打开需要等待一会儿,然后我们设置一下用户名和密码。


image.png


  1. 创建完用户名和密码后,该帐户将是分发版的默认用户,并将在启动时自动登录。被视为 Linux 管理员,能够运行 sudo 管理命令。


附上全部分发版链接


Ubuntu配置



  1. 为了避免每次sudo都要输入密码,这里配置一下visudo


sudo visudo
复制代码
  1. 在文件末尾加上一句(改为自己的用户名),修改后 Ctrl + S 保存,Ctrl + X 退出。


username ALL=(ALL) NOPASSWD: ALL
复制代码

配置国内镜像源


为了提升下载软件的速度


  1. 备份原来的源:


cd ../../../../../..      # 一直退到根目录
cd /etc/apt/
cp sources.list sources.list.bak
# 如果不能复制,进入超级用户再试
sudo su
复制代码
  1. 修改源的内容:


sudo vim sources.list
复制代码
  1. 全部删除后修改为阿里云的镜像:


deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
复制代码
  1. 更新软件列表:


sudo apt update
sudo apt upgrade
复制代码

vim


怕有人不会用,简单说一下怎么写入保存:

  1. I 可以编辑,复制粘贴就好了(老CV工程师了)。
  2. 按 Esc 退出编辑,输入 :wq 保存并退出 vim 。


配置python环境


  1. 安装:


sudo apt install python3
sudo apt install python3-pip
复制代码
  1. 替换一下pip源:


cd ~
mkdir .pip
复制代码
  1. 新建并编辑 pip.conf :


sudo vim ~/.pip/pip.conf
复制代码
  1. 改为:


[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple/ 
[install]
trusted-host = pypi.tuna.tsinghua.edu.cn
复制代码
  1. 更改默认python版本为python3,每次输入python3太麻烦了:


# 删掉原来的软链接,如果没有直接新建
sudo rm /usr/bin/python
sudo rm /usr/bin/pip
# 新建软链接
sudo ln -s /usr/bin/python3 /usr/bin/python
sudo ln -s /usr/bin/pip3 /usr/bin/pip
复制代码
  1. 现在输入python就直接进入python3环境了


下篇将更新如何通过 Windows Terminal + oh-my-zsh + p10k + zsh-plugins 打造Win10完美终端体验,还是完整的教程+报错解决方案。如果您感兴趣的话,点个关注吧~

目录
相关文章
|
13天前
|
Linux Python
Linux 中某个目录中的文件数如何查看?这篇教程分分钟教会你!
在 Linux 系统中,了解目录下文件数量是常见的需求。本文介绍了四种方法:使用 `ls` 和 `wc` 组合、`find` 命令、`tree` 命令以及编程实现(如 Python)。每种方法都附有详细说明和示例,适合不同水平的用户学习和使用。掌握这些技巧,可以有效提升系统管理和日常使用的效率。
70 6
|
18天前
|
Linux Python
Linux 中某个目录中的文件数如何查看?这篇教程分分钟教会你!
在 Linux 系统中,了解目录下的文件数量是常见的需求。本文介绍了多种方法,包括使用 `ls` 和 `wc` 命令组合、`find` 命令、`tree` 命令以及编程方式(如 Python)。无论你是新手还是有经验的用户,都能找到适合自己的方法。掌握这些技巧将提高你在 Linux 系统中的操作效率。
26 4
|
2月前
|
数据可视化 大数据 Linux
OpenEuler虚拟机安装保姆级教程 | 附可视化界面
本文介绍了如何在VMware中安装openEuler操作系统,从选择合适的镜像版本下载开始,到创建虚拟机、配置CPU虚拟化、进行系统安装、设置网络连接,直至安装DDE桌面环境实现图形化操作。openEuler是一款由华为开源的操作系统,支持多种处理器架构,广泛应用于数据库、大数据、云计算等领域。文中还分享了安装过程中的注意事项及解决网络问题的方法,适合初次接触openEuler的用户参考学习。
336 3
OpenEuler虚拟机安装保姆级教程 | 附可视化界面
|
2月前
|
Linux Docker 容器
Centos安装docker(linux安装docker)——超详细小白可操作手把手教程,包好用!!!
本篇博客重在讲解Centos安装docker,经博主多次在不同服务器上测试,极其的稳定,尤其是阿里的服务器,一路复制命令畅通无阻。
910 4
Centos安装docker(linux安装docker)——超详细小白可操作手把手教程,包好用!!!
|
2月前
|
存储 数据可视化 Java
震惊!如何在linux下部署项目,部署/运行jar包 超详细保姆级教程!
如何在Linux系统下部署和运行Java项目jar包,包括传输文件到Linux、使用nohup命令运行jar包、查看端口状态、杀死进程和查看项目运行状态,以及如何解决“没有主清单属性”的错误。
505 1
震惊!如何在linux下部署项目,部署/运行jar包 超详细保姆级教程!
|
2月前
|
关系型数据库 MySQL Linux
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
279 3
|
3月前
|
Unix Linux 开发工具
centos的官网下载和vm16虚拟机安装centos8【保姆级教程图解】
本文详细介绍了如何在官网下载CentOS 8以及在VMware Workstation Pro 16虚拟机上安装CentOS 8的步骤,包括可能出现的问题和解决方案,如vcpu-0错误的处理方法。
centos的官网下载和vm16虚拟机安装centos8【保姆级教程图解】
|
2月前
|
Linux C语言 C++
vsCode远程执行c和c++代码并操控linux服务器完整教程
这篇文章提供了一个完整的教程,介绍如何在Visual Studio Code中配置和使用插件来远程执行C和C++代码,并操控Linux服务器,包括安装VSCode、安装插件、配置插件、配置编译工具、升级glibc和编写代码进行调试的步骤。
276 0
vsCode远程执行c和c++代码并操控linux服务器完整教程
|
2月前
|
Ubuntu Linux Windows
linux 挂载硬盘报错 "mount: unknown filesystem type 'ntfs'"
【10月更文挑战第7天】在Linux系统中挂载硬盘时遇到“mount: unknown filesystem type 'ntfs'”错误,是因为Linux默认可能不支持NTFS文件系统。本文提供了解决方案:安装NTFS-3G软件包以支持NTFS,并检查内核是否已加载NTFS模块。对于Ubuntu/Debian系统,可使用`sudo apt-get install ntfs-3g`命令;对于CentOS/RHEL系统,则需先安装EPEL仓库再安装NTFS-3G。此外,还需确认硬盘设备名正确无误,并创建合适的挂载点目录。
490 2
|
3月前
|
存储 Linux 5G
Linux 基于 LVM 逻辑卷的磁盘管理【简明教程】
这篇文章介绍了LVM(逻辑卷管理)如何提供灵活的磁盘管理方式,允许动态调整逻辑卷的大小而不会丢失数据。
Linux 基于 LVM 逻辑卷的磁盘管理【简明教程】