Windows11 使用 VirtualBox 安装创建 Ubuntu虚拟机

news2024/11/17 5:55:10

〇、背景

开发者大比例习惯都是Windows下编辑代码,比如使用Windows的Visual Studio Code进行代码的开发。但不管是AOSP还是鸿蒙开发,目前都不支持windows本地环境编译的,建议使用Ubuntu操作系统环境对源码进行编译。

因此,没有Ubuntu系统的计算机,可在Windows系统中通过虚拟机方式搭建Ubuntu环境。

主要包含虚拟机和系统镜像的下载和安装。

可参考:

VirtualBox虚拟机和Ubuntu的安装(HarmonyOS Connect 开发工具系列课)

一、虚拟机&系统镜像安装包下载

VirtualBox安装

VirtualBox 官网:https://www.virtualbox.org/

虚拟机软件(当前最新):VirtualBox-7.0.14-161095-Win.exe

进入官网 Downloads -> Windows hosts 主机

VirtualBox 官网
VirtualBox 官网软件下载页

1、打开安装包:下载完毕后,双击启动安装,选择“是”允许应用修改,等到弹出如下安装向导界面:

【VirtualBox安装】安装向导
【VirtualBox安装】7.0.14 安装向导

2、选择安装路径,然后直接下一步

默认安装路径是:C:\Program Files\Oracle\VirtualBox\(个人喜欢放在C盘外,可自定义)

【VirtualBox】自定义安装目录
【VirtualBox安装】自定义存储目录

按默认功能,无需选择调整,直接下一步

【VirtualBox安装】默认功能
【VirtualBox安装】默认功能

3、提示断网链接,选择是,继续直接安装到完成。

【VirtualBox安装】网络断开警告提示
【VirtualBox安装】网络断开警告提示

提示需要Python和win32api环境及相关SDK(区别于6.1.30 没有的提示)

【VirtualBox安装】环境资源缺失提示
【VirtualBox安装】环境资源缺失提示

期间系统会发现虚拟器修改权限,开机自启,

虚拟机安装完毕后,需要下载安装系统镜像。

Ubuntu镜像

Ubuntu官网:http://releases.ubuntu.com/

20.04.6版本:ubuntu-20.04.6-desktop-amd64.iso

Ubuntu官网
Ubuntu官网主页
Ubuntu 20.04.6 LTS (Focal Fossa) 镜像版本下载
Ubuntu 20.04.6 LTS (Focal Fossa) 镜像版本下载desktop

其他镜像获取路径:

华为云Ubuntu镜像:https://mirrors.huaweicloud.com/home

常见版本:18.04.6(desktop,amd64)

ubuntu-20.04.6-desktop-amd64.iso华为鸿蒙南向开发官方推荐ubuntu20版:ubuntu-20.04.6-desktop-amd64.iso(4.1G+)

华为云系统镜像Ubuntu页
【华为云】系统镜像Ubuntu片段页面

mirrors.huaweicloud.com/ubuntu-releases/ 底部获取更多列表未显示的版本,进入会显示不同版本的ubuntu列表:

华为云Ubuntu镜像列表
【华为云】Ubuntu镜像版本完整列表

选择desktop的.iso文件进行下载:

ubuntu-20.04.6-desktop-amd64.iso 下载
【华为云】ubuntu-20.04.6-desktop-amd64.iso 系统镜像下载​​​

二、配置虚拟机Ubuntu系统

VirtualBox 新建虚拟机

1、配置虚拟机路径,选择Linux+Ubuntu版本

v7.0.14功能配置说明
名称(N)自定义虚拟机名称
文件夹(F)

虚拟机存储位置

Note:Ctrl+G全集设定,可修改虚拟机位置便于查找管理。

虚拟光盘(I)系统镜像(v6的vb没有此项的,不过现在也可以不用立马填写)
版本(E)无需手动填写
类型(T)Linux(默认不用改)
版本(V)选择Ubuntu 64-bit
【VirtualBox】新建虚拟机
【VirtualBox】新建虚拟机

2、硬件:选择内存大小(Memory)处理器(Processer)个数

分个12G(12288M)+8CPU先吧,?还是16G吧(16,384M)

3、虚拟硬盘:磁盘空间,存储空间的大小,按照所需要的代码量设置。

如openharmony源码大概十几G,结合编译考虑,建议可以选50G-100G++;AOSP就很大了,没有个500G都不能整的。

默认如上25G的,修改成200G试试。

4、创建完成摘要

以上完成创建,可在设置中查看信息如下:

虚拟机信息:存储-虚拟分配空间(磁盘大小)
虚拟机信息:存储-虚拟分配空间(磁盘大小)

设置 -> 系统 -> 处理器(P),还是可以调整CPU大小的,比如本机8个的,可以选2个,根据实际调整

虚拟机信息:系统-CPU
虚拟机信息:系统-CPU

虚拟机安装Ubuntu操作系统

点击右边蓝色光盘图标,点击“选择虚拟盘”(第二项)

第一项“选择或创建一个虚拟光盘文件...” 会弹出如下界面:

“选择或创建一个虚拟光盘文件...”
“选择或创建一个虚拟光盘文件...”

点击“选择虚拟盘”后选择已经下载好的Ubuntu镜像:

选择后确定

然后启动

(期间因为锐龙版电脑出现了开机问题,解决后正常进入系统了)

1、选择系统语言

建议默认英语,避免中文出错

2、键盘语言

也是用英文

3、升级和系统软件设置

继续

4、安装类型

直接install now, continue。默认选中的是清楚整个磁盘并安装Ubuntu

5、选择时区,shanghai

6、设置用户名密码

默认输入密码确认后才能登录,Require my password to log in

接下来等待安装完成即可

安装过程需要等待一段时间......

会有倒计时

安装完需要等待重启才ok。

要键入回车才能继续运行,下面failed项,cdrom.mount,

三、问题区

Window 安装VitrulBox Ubuntu20 虚拟机启动后卡在“Freeing initrd memory: 131304K”-CSDN博客

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

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

相关文章

android emulator windows bat启动

android emulator windows bat启动 先上结果 // 模拟器路径 -netspeed full -avd 模拟器名称 C:\Users\name\AppData\Local\Android\Sdk\emulator\emulator.exe -netdelay none -netspeed full -avd Pixel_3a_API_34_extension_level_7_x86_64一般来说 windows 如果不做…

springcloud第4季 负载均衡的介绍3

一 loadbalance 1.1 负载均衡的介绍 使用注解loadbalance,是一个客户端的负载均衡器;通过之前已经从注册中心拉取缓存到本地的服务列表中,获取服务进行轮询负载请求服务列表中的数据。 轮询原理 1.2 loadbalance工作流程 loadBalance工作…

举4例说明Python如何使用正则表达式分割字符串

在Python中,你可以使用re模块的split()函数来根据正则表达式分割字符串。这个函数的工作原理类似于Python内置的str.split()方法,但它允许你使用正则表达式作为分隔符。 示例 1: 使用单个字符作为分隔符 假设你有一个由逗号分隔的字符串,你可…

JAVAEE——多线程的设计模式,生产消费模型,阻塞队列

文章目录 多线程设计模式什么是设计模式单例模式饿汉模式懒汉模式线程安全问题懒汉模式就一定安全吗?锁引发的效率问题jvm的优化引起的安全问题 阻塞队列阻塞队列是什么?生产消费者模型阻塞队列实现消费生产者模型可能遇到的异常 多线程设计模式 什么是…

网络套接字-TCP服务器

一 前言 前面已经写过udp服务器的实现了&#xff0c;那里说了很多编写服务器的所需知识&#xff0c;在tcp服务器实现中就不再赘述了。 二 服务端编写 大致接口如下。 ./server port端口号 启动时指明端口号 void usage(const std::string proc) {std::cout<<"Usa…

Py之scikit-learn-extra:scikit-learn-extra的简介、安装、案例应用之详细攻略

Py之scikit-learn-extra&#xff1a;scikit-learn-extra的简介、安装、案例应用之详细攻略 目录 scikit-learn-extra的简介 scikit-learn-extra的安装 scikit-learn-extra的案例应用 1、使用 scikit-learn-extra 中的 IsolationForest 模型进行异常检测 scikit-learn-extra…

Orbit 使用指南 10|在机器人上安装传感器 | Isaac Sim | Omniverse

如是我闻&#xff1a; 资产类&#xff08;asset classes&#xff09;允许我们创建和模拟机器人&#xff0c;而传感器 (sensors) 则帮助我们获取关于环境的信息&#xff0c;获取不同的本体感知和外界感知信息。例如&#xff0c;摄像头传感器可用于获取环境的视觉信息&#xff0c…

【小沐学Python】Python实现Web图表功能(Lux)

文章目录 1、简介2、安装3、测试3.1 入门示例3.2 入门示例2 结语 1、简介 https://github.com/lux-org/lux 用于智能可视化发现的 Python API Lux 是一个 Python 库&#xff0c;通过自动化可视化和数据分析过程来促进快速简便的数据探索。通过简单地在 Jupyter 笔记本中打印出…

我的风采——android studio

目录 实现“我的风采”页面要求理论代码生成apk文件 实现“我的风采”页面 要求 要求利用’java框架的边框布局实现“找的风采 ”页而&#xff0c;其中中间为你的生活照&#xff0c;左右和下面为按钮&#xff0c;上面为标签 理论 Java GUI编程是Java程序设计的重要组成部分…

QT(C++)-error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“2”不匹配值“0”

1、项目场景&#xff1a; 在VS中采用QT&#xff08;C&#xff09;调试时&#xff0c;出现error LNK2038: 检测到“_ITERATOR_DEBUG_LEVEL”的不匹配项: 值“2”不匹配值“0”错误 2、解决方案&#xff1a; 在“解决方案资源管理器”中选中出现此类BUG的项目&#xff0c;右键-…

uniapp-Form示例(uviewPlus)

示例说明 Vue版本&#xff1a;vue3 组件&#xff1a;uviewPlus&#xff08;Form 表单 | uview-plus 3.0 - 全面兼容nvue的uni-app生态框架 - uni-app UI框架&#xff09; 说明&#xff1a;表单组建、表单验证、提交验证等&#xff1b; 截图&#xff1a; 示例代码 <templat…

PCIe总线-PCIe总线简介(一)

1.概述 早期的计算机使用PCI&#xff08;Peripheral Component Interconnect&#xff09;总线与外围设备相连&#xff0c;PCI总线使用单端并行信号进行数据传输&#xff0c;由于单端信号很容易被外部系统干扰&#xff0c;其总线频率很难进一步提高。目前&#xff0c;为了提高总…

k8s笔记27--快速了解 k8s pod和cgroup的关系

k8s笔记27--快速了解 k8s pod和 cgroup 的关系 介绍pod & cgroup注意事项说明 介绍 随着云计算、云原生技术的成熟和广泛应用&#xff0c;K8S已经成为容器编排的事实标准&#xff0c;学习了解容器、K8S技术对于新时代的IT从业者显得极其重要了。 之前在文章 docker笔记13–…

UDS升级入门,手把手教你——开篇

前面关于OTA的文章&#xff0c;写的比较乱&#xff0c;索性整了一个专栏&#xff0c;来认真梳理下&#xff0c;话不多开整。 准备工作&#xff1a; 1、QT环境 上位机开发 2、MDK环境&#xff0c;STM32F103&#xff0c;vscode MCU开发环境&#xff0c;调试 3、JFlash环境安…

【C语言数据结构】排序

1.排序的概念 在深入研究各个排序算法之前&#xff0c;首先&#xff0c;我们要对排序有个大概的了解&#xff0c;即与排序相关的一些概念 Q&#xff1a;什么是排序&#xff1f; A&#xff1a;所谓排序&#xff0c;就是使一串记录&#xff0c;按照其中的某个或某些关键字的大小…

基于Java中的SSM框架实现考研指导平台系统项目【项目源码+论文说明】

基于Java中的SSM框架实现考研指导平台系统演示 摘要 应对考研的学生&#xff0c;为了更好的使校园考研有一个更好的环境好好的学习&#xff0c;建议一个好的校园网站&#xff0c;是非常有必要的。提供学生的学习提供一个交流的空间。帮助同学们在学习高数、学习设计、学习统计…

使能 Linux 内核自带的 FlexCAN 驱动

一. 简介 前面一篇文章学习了 ALPHA开发板修改CAN的设备树节点信息&#xff0c;并加载测试过设备树文件&#xff0c;文件如下&#xff1a; ALPHA开发板修改CAN的设备树节点信息-CSDN博客 本文是学习使能 IMX6ULL的 CAN驱动&#xff0c;也就是通过内核配置来实现。 二. 使能…

Spring Cloud五:Spring Cloud与持续集成/持续部署(CI/CD)

Spring Cloud一&#xff1a;Spring Cloud 简介 Spring Cloud二&#xff1a;核心组件解析 Spring Cloud三&#xff1a;API网关深入探索与实战应用 Spring Cloud四&#xff1a;微服务治理与安全 文章目录 一、Spring Cloud在CI/CD中的角色1. 服务注册与发现&#xff1a;自动化管理…

YOLOV5 部署:TensorRT的安装和使用

1、介绍 TensorRT 可以加速神经网络的推理时间,常常在工业生产中使用 因为TensorRT需要使用到cuda和cudnn加速,所以需要安装这两个,安装的具体步骤参考前文: YOLOV5 部署:cuda和cuDNN安装-CSDN博客 2、TensorRT 下载 TensorRT下载地址:NVIDIA TensorRT Download | NV…

分类预测 | Matlab实现CNN-LSTM-Mutilhead-Attention卷积神经网络-长短期记忆网络融合多头注意力机制多特征分类预测

分类预测 | Matlab实现CNN-LSTM-Mutilhead-Attention卷积神经网络-长短期记忆网络融合多头注意力机制多特征分类预测 目录 分类预测 | Matlab实现CNN-LSTM-Mutilhead-Attention卷积神经网络-长短期记忆网络融合多头注意力机制多特征分类预测分类效果基本介绍模型描述程序设计参…