ubuntu22.04 x86环境上使用QEMU搭建arm虚拟机

这篇具有很好参考价值的文章主要介绍了ubuntu22.04 x86环境上使用QEMU搭建arm虚拟机。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、安装qemu及相关依赖


apt-get -y install qemu

apt-get -y install bridge-utils

apt-get -y install vnc4server

apt-get -y install qemu-kvm

apt install -y qemu-system-arm

apt-get -y install libvirt0

apt-get -y install libvirt-daemon

apt-get -y install libvirt-daemon-system


安装完成后检查:


virsh version

ls /usr/bin/|grep qemu


qemu安装arm ubuntu,arm开发,linux,ubuntu,云计算

2、下载 QEMU_EFI.fd 及 iso


wget http://releases.linaro.org/components/kernel/uefi-linaro/16.02/release/qemu64/QEMU_EFI.fd

 wget https://cdimage.ubuntu.com/ubuntu-legacy-server/releases/20.04/release/ubuntu-20.04.1-legacy-server-arm64.iso


下面是我的文件及路径参考

qemu安装arm ubuntu,arm开发,linux,ubuntu,云计算

 3、创建虚拟硬盘


创建多大根据你自己的需求而定:

qemu-img create ubuntuimg.img 40G


4、创建虚拟机


qemu-system-aarch64 -m 2048 -cpu cortex-a57 -smp 2 -M virt -bios qemu_system/QEMU_EFI.fd -nographic -drive if=none,file=ubuntu-20.04.1-legacy-server-arm64.iso,id=cdrom,media=cdrom -device virtio-scsi-device -device scsi-cd,drive=cdrom -drive if=none,file=ubuntuimg.img,id=hd0 -device virtio-blk-device,drive=hd0

可以根据自己的配置和需求修改加粗部分


命令解释:

-m megs # 设定虚拟机的RAM大小,单位MB。
-cpu model # 设定CPU模型,如cortex-a57、cortex-a9等。
-smp n # 设定模拟的SMP架构中CPU的个数。
-M machine # 指定要模拟的主机类型
-bios file #设置bios启动文件
-nographic #禁用图形界面支持

5、执行第4步骤的命令后进入安装界面

类似于

qemu安装arm ubuntu,arm开发,linux,ubuntu,云计算

根据提示信息一步一步的安装,这一步可能很慢,请耐心点

6、安装成功后

启动命令:

qemu-system-aarch64 -m 2048 -cpu cortex-a57 -smp 2 -M virt -bios qemu_system/QEMU_EFI.fd -nographic -device virtio-scsi-device -drive if=none,file=ubuntuimg.img,format=raw,index=0,id=hd0 -device virtio-blk-device,drive=hd0

进入虚拟机发现默认的ip为 10.0.2.15,可以ping 通宿主机ip (有可能显示没有ping这个命令,很正常,使用 apt-get install iputils-ping 安装),并且可以连网,而宿主机ping不通 虚拟机10.0.2.15

这是由于 虚拟机使用的是NAT网络模式,由qemu负责网络地址转换,数据包首先发送到虚拟化网络中的网关,也就是虚拟网络的一个节点,这个节点代表了宿主机在虚拟网络中的身份。该网关会负责将数据包转发到宿主机所在的物理网络中,从而宿主机能够收到来自虚拟机的请求

qemu安装arm ubuntu,arm开发,linux,ubuntu,云计算

虚拟机中下载 一些工具:


apt-get install -y iputils-ping   //ping  ,上面安装了下面就不用安装了

apt-get install -y net-tools    // 下载 ifconfig

apt-get install -y ssh      // 下载ssh服务


7、实现 宿主机可以通过 ssh 进入 虚拟机

此部分参考链接:

访问qemu虚拟机的五种姿势_进入qemu_RichardYSteven的博客-CSDN博客

宿主机侧:

apt install net-tools   // 下载ifconfig

apt install uml-utilities  // 下载tunctl

brctl addbr virbr0   //创建网桥,名字是virbr0

ifconfig virbr0 192.168.122.1 netmask 255.255.255.0 up  // 配置网桥

tunctl -t tap0    // 创建tap接口,名字为tap0

ifconfig tap0 0.0.0.0 up     // 配置 tap0

brctl addif virbr0 tap0      // 将 tap0 放在 virbr0 内

启动虚拟机:(这儿命令变了,添加了-netdev user,id=natnet -device virtio-net-pci,netdev=natnet -netdev tap,id=tapnet,ifname=tap0,script=no -device rtl8139,netdev=tapnet)这儿tap0 和上面一致

qemu-system-aarch64 -m 2048 -cpu cortex-a57 -smp 2 -M virt -bios qemu_system/QEMU_EFI.fd -nographic -device virtio-scsi-device -drive if=none,file=ubuntuimg.img,format=raw,index=0,id=hd0 -device virtio-blk-device,drive=hd0 -netdev user,id=natnet -device virtio-net-pci,netdev=natnet -netdev tap,id=tapnet,ifname=tap0,script=no -device rtl8139,netdev=tapnet

此命令添加了一张和 宿主机组 tap的网口

在虚拟机侧:

ifconfig ens3 192.168.122.100 netmask 255.255.255.0 up   //设置上面一个网段的ip,ens3根据自己实际的网口名替换

至此,你可以在宿主机侧 通过  ssh 进入虚拟机

ps:

1、ubuntu 创建后第一次给root设置密码:sudo passwd root

2、如果想使用 root 用户登录 vi /etc/ssh/sshd_config 

添加/修改  PermitRootLogin yes

systemctl restart sshd文章来源地址https://www.toymoban.com/news/detail-733962.html

到了这里,关于ubuntu22.04 x86环境上使用QEMU搭建arm虚拟机的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 使用QEMU(x86)模拟运行ARM64架构并进行内核调试

    在 x86 上使用 QEMU 虚拟机模拟并调试 ARM64。 参考:ubuntu虚拟机中使用QEMU搭建ARM64环境 主机 ubuntu 20.04, Linux 5.16.0 QEMU emulator version 7.2.92 (v8.0.0-rc2-23-gefcd0ec14b) :qemu-7.2.29 合适的ARM64内核源码:linux-4.14.221.tar.gz 安装交叉编译工具: sudo apt-get install gcc-aarch64-linux-gnu 命令安装以及源码

    2024年02月09日
    浏览(57)
  • 【深度学习】环境搭建ubuntu22.04

    清华官网的conda源 https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/ 安装torch conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia 2.2.2 conda install 指引看这里: ref:https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#package-manager-metas invidia toolkit的指引在这里,看起来,drive

    2024年04月09日
    浏览(56)
  • ubuntu22.04搭建verilator仿真环境

    操作系统为 Ubuntu(22.04.2 LTS),本次安装verilator开源verilog仿真工具,进行RTL功能仿真。下面构建版本为5.008的verilator仿真环境。先看一下我系统的版本: 安装依赖 获取源码,选择版本为5.008 进行编译 安装后查看版本,大功告成

    2024年02月10日
    浏览(69)
  • Ubuntu22.04 搭建 OpenHarmony 命令行开发环境

    在本文中,我们将介绍如何使用命令行工具在你的设备上安装OpenHarmony操作系统。OpenHarmony是一个开源的、面向物联网(IoT)设备的操作系统,它提供了一套全面的开发框架,使得开发者可以更容易地创建和部署IoT应用。 在本次安装中,使用的电脑是基于Ubuntu22的物理机器,按

    2024年02月03日
    浏览(75)
  • 从头搭建Android源码编译环境(Ubuntu 18.04 / 20.04 / 22.04)

    在新安装的Ubuntu上(版本20.04LTS),完成搭建Android源码编译环境步骤如下。 顺带说一句,当前用的比较多的Ubuntu是18.04和20.04,在实际项目中一直在用,可用性和稳定性都没问题。 最新的Ubuntu22.04版本,系统默认的二进制库变化比较大,编译Android源码有问题(实测过,没细研

    2024年02月06日
    浏览(156)
  • 【深度学习1】ubuntu22.04从零开始搭建深度学习环境

    具体安装步骤可以参考:win11+ubuntu22.04双系统安装(简洁版) 安装之前进入主板BIOS,关闭安全启动!!! 更新软件列表 安装必要的依赖 根据显卡型号下载对应的驱动,官方驱动下载链接:GeForce® 驱动程序 卸载原有驱动(若有) 禁用nouveau驱动,在 /etc/modprobe.d/blacklist.conf

    2024年02月05日
    浏览(94)
  • Linux环境搭建(Ubuntu22.04)+ 配置共享文件夹(Samba)

    Linux开发环境准备 搭建Linux开发环境所需要的软件如下: VMware虚拟机: 用于运行Linux操作系统的虚拟机软件之一,VMware下载安装在文章中不做说明,可自行百度谢谢 Ubuntu光盘镜像: 用于源代码编译,有闲置计算机或服务器可以下载服务器版(没有图形用户界面),只有一台

    2024年02月04日
    浏览(78)
  • ubuntu x86搭建 麒麟arm QT6交叉编译

    近期项目需求开发平台是unbuntu x86,目标机器是UOS arm架构,由于需要在不同平台上使用程序,需要建立基于QT6.32的交叉编译平台 交叉编译器 https://blog.csdn.net/zhang421412170/article/details/110952705 下载 gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu.tar.xz(因为我这里用的是linux平台进行编译,需要

    2024年02月13日
    浏览(45)
  • Qt6.5.1+WebRTC学习笔记(十一)开发环境搭建(ubuntu22.04)

    win10开发测试已经一段时间了,最近将程序移植到ubuntu测试了下,改动不是很大,本教程记录下环境搭建过程 1.操作系统ubuntu22.04 64位 x86架构(建议更新到最新) 2.合理的上网方式,需要正常访问google,最好有40G以上流量 3.安装git,并设置代理 4.安装depot_tools depot_tools是包含下载

    2024年02月09日
    浏览(57)
  • 银河麒麟服务器arm、x86安装qemu虚拟机

    使用下面的命令安装的话只能安装同构的虚拟机,如arm的就只能安装arm的;x86的就只能安装x86的 等待安装完成 直接复制脚本执行即可 使用源码编译安装就能创建异构的虚拟机了,比如:在arm服务器上创建x86的,在x86上创建arm的 我测试使用的是qemu-4.2.0.tar.xz这个版本,因为我

    2024年02月02日
    浏览(70)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包