【Linux】ARM服务器命令行安装虚拟机

一、基础环境准备

1、环境准备

确保你的Linux系统已经更新,并且安装了必要的依赖包。

sudo apt update
sudo apt upgrade -y
sudo apt install -y qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virt-manager

2、检查KVM支持

egrep -c '(vmx|svm)' /proc/cpuinfo

如果输出的结果大于0,说明你的CPU支持虚拟化。

3、启动并启用libvirtd服务

sudo systemctl enable libvirtd
sudo systemctl start libvirtd

4、创建虚拟网络(可选)

如果你需要虚拟机有外部网络访问,可以创建一个桥接网络。

sudo virsh net-start default
sudo virsh net-autostart default

5、使用virt-manager创建虚拟机(支持KVM)

安装virt-manager后,你可以使用GUI来创建和管理虚拟机。

1、打开virt-manager。
2、点击“新建虚拟机”按钮。
3、选择安装介质(ISO文件或网络引导)。
4、设置虚拟机名称、内存、CPU等资源分配。
5、配置虚拟磁盘大小。
6、网络配置可以选择桥接或NAT模式。
7、最后,启动虚拟机,进行操作系统的安装。

命令行安装:
可以使用virt-install工具进行安装

sudo virt-install \
--name=vm_name \
--vcpus=2 \ #CPU核数
--memory=2048 \ #内存大小
--cdrom=/path/to/iso \  #镜像文件路径
--disk size=20 \ #磁盘大小
--os-type=linux \ #系统类型
--network network=default,model=virtio \ #网络,选择默认网桥
--graphics vnc,listen=0.0.0.0 \ 
--noautoconsole

6、管理虚拟机

使用以下命令来管理虚拟机:

列出所有虚拟机:

sudo virsh list --all

启动虚拟机:

sudo virsh start vm_name

关闭虚拟机:

sudo virsh shutdown vm_name

删除虚拟机:

sudo virsh undefine vm_name

9、监控和日志

使用virt-top工具可以监控虚拟机的资源使用情况。

sudo apt install virt-top
sudo virt-top

二、软虚拟化替代方案

如果你的CPU确实不支持硬件虚拟化,或者你无法启用此功能,仍然可以使用软件虚拟化技术,例如使用QEMU的全软件仿真模式来创建虚拟机,但性能会较低。

可以使用以下命令创建一个不依赖硬件虚拟化的虚拟机:
x86:

sudo qemu-system-x86_64 -cdrom /path/to/iso -m 1024 -hda myvirtualdisk.img

ARM:

qemu-system-aarch64 -machine virt -cpu cortex-a57 -m 1024 -nographic -smp 2 \
  -kernel /path/to/kernel -append "console=ttyAMA0" -hda /path/to/disk.img

参数说明:

-machine virt: 指定虚拟机类型为通用ARM虚拟平台。
-cpu cortex-a57: 使用ARM Cortex-A57 CPU型号。
-m 1024: 分配1024MB内存。
-nographic: 不使用图形界面,直接在终端运行。
-smp 2: 分配2个CPU核心。
-kernel /path/to/kernel: 指定内核镜像的路径。
-append "console=ttyAMA0": 启动时附加的内核参数,指定控制台为串口。
-hda /path/to/disk.img: 指定虚拟硬盘的路径。

1、查看虚拟机CPU可支持类型:

使用以下命令列出QEMU支持的CPU类型:

qemu-system-aarch64 -cpu help

设备类型:

qemu-system-aarch64 -machine help

2、创建虚拟硬盘

创建一个50GB的虚拟硬盘文件,用于安装操作系统。

qemu-img create -f qcow2 /iso/img/mykylin.img 50G

执行结果:

root@FT-2000-pc:/iso# qemu-img create -f qcow2 /iso/img/mykylin.img 50G
Formatting '/iso/img/mykylin.img', fmt=qcow2 size=53687091200 cluster_size=65536 lazy_refcounts=off refcount_bits=16

3、使用命令行启动虚拟机并进行操作系统安装

使用以下命令启动虚拟机,并从ISO镜像启动安装程序。

qemu-system-aarch64 -machine virt -cpu cortex-a57 -m 4096 -smp 2 \
  -nographic -drive if=none,file=/iso/img/mykylin.img,id=hd0 \
  -device virtio-blk-device,drive=hd0 \
  -cdrom /iso/kylin/Kylin-Server-10-SP2-xxxxx-Release-Build09-20210524.iso \
  -boot d -device virtio-net-device,netdev=net0 \
  -netdev user,id=net0,hostfwd=tcp::2222-:22

参数说明
-machine virt: 通用的ARM虚拟机平台,适用于多种ARM CPU架构,包括aarch64。
-cpu cortex-a57: 使用Cortex-A57 CPU模型,这是QEMU中常用的ARMv8-A CPU类型。
-m 4096: 分配4GB内存。
-smp 2: 分配2个CPU核心。
-nographic: 以命令行方式运行,不使用图形界面。
-drive if=none,file=/iso/img/mykylin.img,id=hd0: 连接50GB虚拟硬盘。
-device virtio-blk-device,drive=hd0: 使用Virtio驱动,提升磁盘性能。
-cdrom /iso/kylin/Kylin-Server-10-SP2-xxxxx-Release-Build09-20210524.iso: 使用ISO镜像文件进行安装。
-boot d: 从光盘启动,进行操作系统安装。
-device virtio-net-device,netdev=net0: 使用Virtio网络设备,提升网络性能。
-netdev user,id=net0,hostfwd=tcp::2222-:22: 设置用户模式网络,并将宿主机的2222端口映射到虚拟机的22端口(用于SSH连接)。

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

是二狗诶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值