Linux学习笔记1---Windows上运行Linux

在正点原子的教程中学习linux需要安装虚拟机或者在电脑上安装一个Ubuntu系统,但个人觉得太麻烦了,现在linux之父加入了微软,因此在Windows上也可以运行linux 了。具体方法如下:

一、 在Windows上的设置

  1. 在window的搜索框内 (所有你找不到的应用都可以用这个搜索功能),搜索"Windows功能 ",出现了"启用或关闭Windows功能",双击打开。
  1. 勾选**"适用于Linux的Windows子系统","虚拟机平台","Windows虚拟机监控程序平台"** ,点击"确定"。点击"立即重新启动"。

勾选适用于Linux的Windows子系统,虚拟机平台,Windows虚拟机监控程序平台,点击 确定。

点击 立即重新启动

二、安装 Ubuntu

打开Microsoft Store ,单击搜索框 ,搜索 "wsl2" 。 然后单击"免费下载"进行下载和设置。(WSL2- Windows Subsystem for Linux)

下载后,打开,输入用户名和密码

这样,Ubuntu-20.04 系统就安装好了!

如果报错:

  1. WslRegisterDistribution failed with error: 0x800701bc

造成该问题的原因是WSL版本由原来的WSL1升级到WSL2后,内核没有升级,前往微软WSL官网下载安装适用于 x64 计算机的最新 WSL2 Linux 内核更新包即可。

下载链接:https://wslstorestorage.blob.core.windows.net

如果需要安装GUI界面应用,可以参考:超简单,不安装虚拟机,Windows11运行Linux - 知乎 (zhihu.com)

Windows中安装linux子系统(Ubuntu) - 知乎 (zhihu.com)

我这里暂时不安装了。

三、 Linux访问Windows

bash 复制代码
cd /mnt

/mnt文件夹中包含了windows10中所有的盘符。例如需要访问D盘,则只需输入:cd /mnt/d

四、安装GCC

原始的Ubuntu软件下是不带gcc的,所以还需要自行安装一下。

打开Ubuntu后输入以下命令即可自行安装gcc。

bash 复制代码
apt install gcc

假如在安装失败并提示:Err:1 http://security.ubuntu.com/ubuntu focal-updates/main amd64 binutils-common amd64 2.34-6ubuntu1.5

可以采用如下命令即可解决:

bash 复制代码
sudo service network-manager stop
sudo rm /var/lib/NetworkManager/NetworkManager.state
sudo service network-manager start

再运行如下命令:

bash 复制代码
sudo apt-get update

然后再次安装gcc即可:

bash 复制代码
apt install gcc

安装成功后可以运行以下命令查看gcc的版本:

bash 复制代码
gcc -v

五、利用Ubuntu输出hello world

1、进入d盘创建一个Linux文件夹

bash 复制代码
cd ../mnt/d
mkdir Linux

2、进入Linux文件下创建一个main.c文件

bash 复制代码
cd Linux
vim main.c

3、单击i切换到输入模式,在文件中编写一下代码

bash 复制代码
#include <stdio.h>
int main(void)
{
        printf("hello world!!!\r\n");
}

关于vim编译器的相关命令可以查看:【Linux】VIM命令(全面详解)_linux vim-CSDN博客

4、按ESC退出输入模式,然后键盘敲击:wq,保存文件并退出

可以利用 cat main.c 查看文件是否输入成功

4、利用gcc编译main.c文件,并输出一个out文件

bash 复制代码
 gcc main.c -o main

5、运行main文件(即运行程序)

bash 复制代码
./main

六、建立快捷方式

每次打开Ubuntu都需要重新进入需要的目录下,为了方便使用可以建立个快捷脚本

1、创建hzz文件(名称自定义)

复制代码
vim hzz

2、按下i键进行编码

复制代码
#"../mnt/d/STM32CubeMX/Linux" 是你所要进入的文件目录
cd ../mnt/d/STM32CubeMX/Linux

3、按Esc键,输入:wq (英文模式下输入),按回车键,保存文件并退出

4、利用source命令执行hzz 文件即可进入所需要的目录底下

复制代码
source hzz
相关推荐
byte轻骑兵6 分钟前
【BlueZ 】蓝牙配对/绑定基础:BlueZ 中安全机制的入门级源码解析
linux·人工智能·bluez·电脑蓝牙·嵌入式蓝牙
MartinYeung513 分钟前
[论文学习]智能合约不变式防御网络犯罪
网络·学习·智能合约
xx~t15 分钟前
嵌入式学习——进程与线程2
linux·c语言·学习·进程与线程
给AI剪纸的打工人24 分钟前
OpenCode怎么接第三方API?自定义Provider与Responses配置实战
linux·数据库·人工智能
我爱cope25 分钟前
【计算机网络 | 网络层10:OSPF 与 BGP:自治系统内部和互联网之间如何路由?】
网络·学习·计算机网络·智能路由器
白猫不黑28 分钟前
网络空间安全/信息安全专业学习规划(超级详细版)
运维·学习·安全·web安全·网络安全·信息安全
HyperAI超神经36 分钟前
MiniMax H3 突破视频生成边界,音画内容一体生成;Ornith-1.5-35B-A3B 探索推理模型自进化训练新模式
人工智能·深度学习·学习·音视频·多模态·视频生成·推理模型
lingran__1 小时前
Linux 基础常用指令万字详解(下)|一切皆文件:重定向、管道、日志 与 Shell 原理
linux·运维·服务器·shell·管道·重定向·打包压缩
小小帅呀1 小时前
学习 VLA 第6天:SWIN VIT算法原理以及复现
学习·算法
平原20181 小时前
AI岗位需求增长244%背后:从任务重组到可验证学习闭环
大数据·人工智能·学习