1设置网络脚本 我的固定ip是192.168.100.10
注意 enp0s1 具体因系统而已 不是 唯一的,enp0s1是系统的l0外的另一个网卡 否则会无法连接网络。
脚本名字是updataInternet.sh
# 定义虚拟机镜像文件
IMAGE_FILE="linux_rootfs.ext4"
# 创建一个临时脚本文件
cat << 'EOF' > /tmp/setup_network.sh
#!/bin/sh
# 配置网络接口
echo "auto enp0s1\niface enp0s1 inet static\n address 192.168.100.10\n netmask 255.255.255.0\n gateway 192.168.100.2\n dns-nameservers 8.8.8.8" > /etc/network/interfaces
EOF
# 给脚本添加执行权限
chmod +x /tmp/setup_network.sh
# 使用 virt-customize 添加脚本
virt-customize -a "$IMAGE_FILE" --firstboot /tmp/setup_network.sh
# 清理临时脚本
rm /tmp/setup_network.sh
先运行第一个脚本设置网络,就是虚拟机里安装系统的ip执行sh updataInternet.sh
2.设置qemu启动脚本
qemu-system-aarch64 \
-m 2048 \
-cpu cortex-a57 \
-M virt \
-nographic \
-smp 4 \
-kernel linux-4.19.320/arch/arm64/boot/Image \
-append "noinitrd sched_debug root=/dev/vda rootfstype=ext4 rw crashkernel=256M loglevel=8" \
-drive if=none,file=linux_rootfs.ext4,id=hd0,format=raw \
-device virtio-blk-device,drive=hd0 \
-netdev user,id=net0,hostfwd=tcp::2222-:22,net=192.168.100.0/24,dhcpstart=192.168.100.10 \
-device virtio-net-pci,netdev=net0
启动 sh startIp.sh
进入系统