|
本帖最后由 great轻狂 于 2023-4-15 03:39 编辑
看到ikuai虚拟机里有直通网卡才发现不用验证,越想越气,干脆写篇教程
1. 创建一个docker,把docker.sock挂载进去
2.在容器中安装docker,以ubuntu:20.04为例
此时你就可以在容器中操作ikuai的docker了
3.创建启动虚拟机的容器和虚拟机的前端,这里可以换为自己喜欢的容器:
其中 -v /etc/disk_user/sda7/libvirt1:/var/run/libvirt/--privileged --network host 是必须的,--dns 非必须
4.通过你设置的ip访问virt-manager并创建虚拟机
5.为虚拟机分配网卡
5.1 创建分配网卡脚本及分配执行权限
- chmod +x /var/run/libvirt/createTap.sh
复制代码 5.2 在virt-manager容器使用virt-xml创建qemu:commadline,由于界面不能创建,故此操作
结果
修改冲突的vga配置
最后启动虚拟机,可以看到网卡正确分配ip了
其他项目就自行探索了
没东西,骗回复的
- #安装docker
- apt update && apt install docker.io -y
- #创建libvirtd容器<font color="#ff0000">/etc/disk_user/sda7/</font>是你ikuai的磁盘取决于你实际的磁盘 -v /:/ikhome 是把ikuai的根目录挂载到容器下的/ikhome目录下
- docker run -itd -v /:/ikhome <font color="#ff0000">-v /etc/disk_user/sda7/libvirt1:/var/run/libvirt/ --privileged --network host</font> --dns 192.168.10.22 --name libvirtd_by_docker ghcr.io/speedy37/docker-libvirtd/libvirtd:main
- #创建virt-manager容器 <font color="#ff0000">doc_docker</font>替换为你创建的docker用网卡
- docker run -itd --name virt_in_docker <font color="#ff0000">-v /etc/disk_user/sda7/libvirt1:/var/run/libvirt/ --network doc_docker</font> --ip 192.168.10.48 mber5/virt-manager:latest
- <font color="#ff0000">#!/bin/bash</font>
- #删除tap
- #ifconfig $tapn down > /dev/null 2>&1
- #brctl delif $brn $tapn > /dev/null 2>&1
- #ip tuntap del dev $tapn mode tap > /dev/null 2>&1
- <font color="#ff0000">#创建tap
- tunctl -t qtap1_lan1 > /dev/null 2>&1
- brctl addif lan1 qtap1_lan1 > /dev/null 2>&1
- ifconfig qtap1_lan1 0.0.0.0 promisc up</font>
- #安装tunctl
- apk update && apk add tunctl
- #执行脚本,路径使用你放的位置,注意脚本换行符,在windows下写的脚本可能有换行符问题
- sh /var/run/libvirt/createTap.sh
- #检查tap是否创建
- ifconfig |grep tap
- #查看是否被桥接了
- brctl show
复制代码
uefi配置
- <os>
- <type arch='x86_64' machine='pc-q35-5.2'>hvm</type>
- <loader readonly='yes' secure='no' type='pflash'>/usr/share/OVMF/OVMF_CODE.fd</loader>
- <nvram>/usr/share/OVMF/OVMF_VARS.fd</nvram>
- <boot dev='hd'/>
- <bootmenu enable='yes'/>
- </os>
复制代码 好难用,老乱跑
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|