基于x86架构的CentOS7虚拟机通过qemu安装ARM架构CentOS7虚拟机_centos7 arm 网络配置

这篇具有很好参考价值的文章主要介绍了基于x86架构的CentOS7虚拟机通过qemu安装ARM架构CentOS7虚拟机_centos7 arm 网络配置。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

【原文连接】基于x86架构的CentOS7虚拟机通过qemu安装ARM架构CentOS7虚拟机_centos7 arm_redrose2100的博客-CSDN博客

试过很多版本的在win10系统直接qemu安装arm版linux都失败了,也看到了别人也说这个方式不行得用虚拟机套虚拟机才行的方式,因为我没有ubunto所以搜到大佬的centos虚拟机套虚拟机方案,亲测可用。只不过该文章没写安装成功之后怎么给qemu虚拟的arm-centos配置网络,以及关机后怎么启动,所以经过一顿csdn探索测试后特意编写此文章,反向学习输出共享给各位需要的大佬。

安装过程:

1.win10安装VMware虚拟机。

2.vmvare安装centos7,配置虚拟机centos操作系统网络,nat或者桥接都行,桥接参考VMWare桥接模式(CentOS7)_centos vmware 桥接_壆無止境的博客-CSDN博客

3.centos7虚拟机通过qemu安装arm版本centos系统,参考(试过很多版主发的都不行,就这个版主的一次就安装成功了,可嗨皮了,在此谢谢大佬。)基于x86架构的CentOS7虚拟机通过qemu安装ARM架构CentOS7虚拟机_redrose2100的博客-CSDN博客

4.按第3步安装成功之后,可能arm版的centos操作系统网络可能还是没网,需要手动设置下dhcp

cd /etc/sysconfig/network-scripts/
vi  ifcfg-eth0

#修改以下两项:
BOOTPROTO=dhcp  #修改为dhcp
ONBOOT=yes  #修改onboot为yes

:wq 保存退出后,重启网卡:systemctl restart network

这时候ifconfig命令还未安装,可通过ip addr 查看eth0已有网络;

arm centos7,操作系统,架构,arm开发

 确认centos虚拟机可以连通外网,就可以在qemu的arm版centos内使用yum安装net-tools等工具。

5.如果不小心关了qemu的arm版centos,则可以使用以下命令重新打开系统

qemu-system-aarch64 -m 2048 -cpu cortex-a57 -smp 6 -M virt -bios /usr/share/AAVMF/AAVMF_CODE.fd -nographic  -device virtio-scsi-device  -drive if=none,file=/var/lib/libvirt/images/test.img,id=hd0 -device virtio-blk-device,drive=hd0 

注意到没,就是去掉了-drive if=none,file=/opt/os/CentOS-7-aarch64-Minimal-2009.iso,id=cdrom,media=cdrom 和-device scsi-cd,drive=cdrom 这两个参数,因为加上这两个参数就第二次重装了(试了很多次,终于明白这个参数的用途,呜呜呜,哈哈哈哈,查看了qemu参数就明白了)

6.使用shell通过vmware虚拟机ssh端口映射的方式连到套的虚拟机里边,采用如下的开机命令

qemu-system-aarch64 -m 2048 -cpu cortex-a57 -smp 6 -M virt -bios /usr/share/AAVMF/AAVMF_CODE.fd -nographic  -device virtio-scsi-device  -drive if=none,file=/var/lib/libvirt/images/test.img,id=hd0 -device virtio-blk-device,drive=hd0 -net user,hostfwd=tcp::5678-:22 -net nic

看到了么,与第5步的开机命令多一个参数:-net user,hostfwd=tcp::5678-:22 -net nic,这样就可以把VMware虚拟机的5678端口号与arm版虚拟机的22端口号映射开通,接着直接通过finalshell、xshell等各种shell连接到arm版的虚拟机里下载文件或者安装包等。

记得xshell的连接IP和端口号为:vmware虚拟机的IP,端口号为5678,用户名密码为你qemu安装arm版本centos的用户名密码。ok到此完事。

具体原理参考:在QEMU虚拟机和宿主机之间传输文件_qemu共享文件夹_远小帅的博客-CSDN博客

(其中直接给qemu的arm虚拟机通过桥接的方式,也就是 windows-桥接--vmware(centos虚拟机)--桥接-qemu(arm版centos))

7.通过两层桥接直接给qemu嵌套的虚拟机供网

首先配置win10宿主机和vmware虚拟及通过桥接方式联网,保证vmvare虚拟机IP与win10宿主机在同一个网段里。

其次,通过在vmware虚拟机centos里配置网桥和虚拟网卡的方式给qemu的arm-centos系统供网,具体设置如下

首先安装 bridge-utils 和 tunctl 

yum install bridge-utils

tunctl安装参考:CentOS 7 Tunctl 安装 虚拟网卡_tom.ma的博客-CSDN博客

# 配置 YUM 源
vim /etc/yum.repos.d/nux-misc.repo
 
[nux-misc]
name=Nux Misc
baseurl=http://li.nux.ro/download/nux/misc/el7/x86_64/
enabled=0
gpgcheck=1
gpgkey=http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
yum --enablerepo=nux-misc install tunctl

(1)备份并配置网桥:

cd  /etc/sysconfig/network-scripts/

cp ifcfg-ens33 ifcfg-ens33.bark

备份后修改ens33网卡为如下配置:

vi ifcfg-ens33

TYPE="Ethernet"
NAME="ens33"
DEVICE="ens33"
ONBOOT="yes"
BRIDGE=br0


修改网桥配置:(修改配置文件重启不用再次添加网桥)

cp ifcfg-ens33 ifcfg-br0 

vi ifcfg-br0

TYPE="Bridge"
BOOTPROTO="static"
NAME="br0"
IPADDR=192.168.1.47
NETMASK=255.255.255.0
GATEWAY=192.168.1.254
DEVICE="br0"
ONBOOT="yes"
DNS1=8.8.8.8

配置好之后重启网卡:

systemctl restart network

ip a 查看网桥br0,并开启网桥 ifup br0 或者 ifconfig br0 up

查看网桥网络连接是否正常,保证可以ping通win10宿主机内网。

(2)VMware-centos虚拟机(也就是qemu-arm的宿主机)创建虚拟网卡,并添加进网桥

tunctl -t tap0     #创建虚拟网卡
ifconfig tap0 up   #开启tap0虚拟网卡
brctl  addif br0 tap0  #添加虚拟网卡到网桥br0中
brctl stp br0 yes  #开启网桥stp

brctl  show #查看网桥结果

ifdown ens33 #关闭网卡
ifup ens33  #启动网卡

下图表示网桥设置成功。

arm centos7,操作系统,架构,arm开发

 ifconfig 查看vmware虚拟机中网络状态

arm centos7,操作系统,架构,arm开发

 其中网桥br0与win10内网地址在同一网段,ping win10 物理机可ping通,www.baidu.com也可ping通,说明网络配置正确。

arm centos7,操作系统,架构,arm开发

ping baidu 域名还需要设置dns。

vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=xxxx #名字随便了
GATEWAY=192.168.1.254 #默认网关和宿主机相同

vi /etc/resolv.conf
# Generated by NetworkManager
nameserver 192.168.0.254 #DNS,跟宿主一样也可以直接写 8.8.8.8

 (3)启动qemu,启动命令如下

qemu-system-aarch64 -m 2048 -cpu cortex-a57 -smp 6 -M virt -bios /usr/share/AAVMF/AAVMF_CODE.fd -nographic  -device virtio-scsi-device  -drive if=none,file=/var/lib/libvirt/images/test.img,id=hd0 -device virtio-blk-device,drive=hd0 -net nic -net tap,ifname=tap0,script=no,downscript=no

其中最后一句-net nic -net tap,ifname=tap0,script=no,downscript=no 配置以tap0虚拟网卡作为qemu-centos-arm的网络,启动后开始配置嵌套的arm-centos网络:(如果启动后已经联网,则不需要在设置下图eth0网卡配置。)

cd /etc/sysconfig/network-scripts/
vi  ifcfg-eth0

DEVICE=eth0
BOOTPROTO=static
TYPE=Ethernet
USERCTL=yes
PEERDNS=yes
IPV6INIT=no
ONBOOT=yes
IPADDR=192.168.1.63 
NETMASK=255.255.255.0 
GATEWAY=192.168.1.254 
DNS1=8.8.8.8
#重启网卡:
systemctl restart network

ficonfig 查看arm网络连接

arm centos7,操作系统,架构,arm开发

ping www.baidu.com 测试发现可以百度,接着可用各种xshell工具直接连接。

arm centos7,操作系统,架构,arm开发

 感谢各位大佬的文章,完美解决了小弟的问题,小弟在此表示感谢大佬。文章来源地址https://www.toymoban.com/news/detail-701929.html

到了这里,关于基于x86架构的CentOS7虚拟机通过qemu安装ARM架构CentOS7虚拟机_centos7 arm 网络配置的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

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

    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 wget http://releases.linaro.org/components/kernel/

    2024年02月07日
    浏览(90)
  • 【oceanbase】centos7/kylinv10部署oceanbase(x86版本)

    1. 修改系统​ vim /etc/sysctl.conf fs.file-max = 102400 net.nf_conntrack_max = 1024000 net.netfilter.nf_conntrack_max = 1024000 2. 修改 ulimit 的 open file,系统默认的 ulimit 对文件打开数量的限制是 1024 vim /etc/security/limits.conf # 加入以下配置,重启即可生效 * hard nofile 102400 * soft nofile 102400 3. 资源下载: o

    2024年02月07日
    浏览(49)
  • Centos7 x86服务器一键部署ES集群/单机shell

            由于日常的实施工作中经常用到单机或者集群的es,每次都手动部署感觉很麻烦,于是抽空写了一个一键部署脚本,通过简单指定集群名称、节点ip、端口等几个配置参数后自动部署es单机或者集群数据库 该安装包实现利用给定参数安装单机版或者集群版es数据库,指

    2023年04月11日
    浏览(84)
  • Linux 利用 qemu-system-aarch64 实现 x86 机器安装 arm64 的操作系统

    qemu-system-aarch64 启动的虚拟机,无法受到 kvm 的管理,也无法在后台运行 终端一旦断开了,虚拟机就被关掉了,想再次进入目前没找到方法,都会回到安装操作系统的步骤 可能是 centos 有某些特殊性吧,暂时没太多时间研究,后期有时间了再看看有没有解决的方案 qemu-5.2.0 和

    2024年02月06日
    浏览(53)
  • QEMIU-基于CentOS7系统编译安装部署qemu 2.7.0 版本的环境

    【原文链接】QEMIU-基于CentOS系统编译安装部署QEMU环境 备份原有的yum源配置 设置阿里云的yum源 添加EPEL源 更新yum缓存 安装依赖包 下载qemuu并解压 编译安装 验证qemu 退出后重新登录,然后执行qemu- 加tag,即出现如下命令提示,表示qemu已经编译安装成功

    2024年02月15日
    浏览(45)
  • M1 mac 直接安装x86 centos Docker

    安装M1 DockerDesktop https://www.docker.com/products/docker-desktop/ 打开设置DockerEngine 将下列插入进去 拉取CentOS系统 创建CentOS(x86)容器 在我的 M1 Mac 上,我可以从 Docker Hub 运行 Ubuntu 映像的 arm64 和 amd64 版本。uname 提供的机器硬件名称证明了这一点。 因为Docker默认创建的是arm架构的Ce

    2024年02月13日
    浏览(51)
  • VM虚拟机安装Centos7 | 静态ip网络服务配置 | 虚拟化 | 虚拟机运行架构

    在学习之前我觉得有必要先介绍一些前置的知识,列如 “虚拟化” 和 “虚拟机” 还有 “虚拟机运行架构” ,这样更有利于我们对操作环境的理解 (1).什么是虚拟化 ? VT 就是虚拟化技术(Virtualization Technology)的缩写 是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机 对

    2023年04月12日
    浏览(45)
  • Linux 下杀毒软件 clamav-1.0.0.linux.x86_64.rpm 离线安装及测试CentOS7,CentOS6.8,KylinV10 arm架构

    本文主要记录在centos7以及centos6.8版本上安装记录!废话不多说,直接开始操作!后添加KylinV10 arm架构安装记录 1、下载rpm包 https://www.clamav.net/downloads 官网地址 2、上传安装包到服务器并安装 3、创建目录 4、新建日志文件 5、编辑配置conf文件 6、配置库文件 7、创建clamav用户并

    2024年02月13日
    浏览(64)
  • 在x86下运行的Ubuntu系统上部署QEMU用于模拟RISC-V硬件系统

    下载地址: 建议选择stable版本,arch选择riscv64-lp64d,libc选择常用的glibc。 下载后解压,然后将bin目录加入PATH环境变量中。 下载地址: 建议选择稳定版本,下载后解压,然后make --enable-virtfs 用户虚拟机和宿主机之间共享文件 Linux内核下载地址: 选择稳定的版本,下载完后解

    2024年02月13日
    浏览(58)
  • 基于X86六轮差速移动机器人运动控制器设计与实现(一)软件与硬件架构

    本文研究的六轮差速移动机器人 (Six-Wheeled Differential Mobile Robot , SWDMR) 为了满足资源站到资源站点对点的物资运输,对机器人的跨越障碍能力 有较高的要求。对比传统的四轮移动机器人,六轮移动机器人能够提供更强的驱动 力,而且六轮与四轮相比整车分散到单个车轮的负

    2024年02月12日
    浏览(56)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包