安装OpenWRT虚拟机且让它能够进行网卡直通,需要几步,也是三步,第一步准备可用的虚拟机的磁盘;第二步把网卡解绑并绑定为vfio设备;第三步创建一个OpenWRT的虚拟机并实现网卡直通。
- 创建给虚拟机用的磁盘:OpenWRT作为为路由器开发的系统,直接提供了一个.img,且不能引导,很多人会将其转换为iso,然后制作成引导盘。这种转换在给物理机安装OpenWRT时是必须的,但是我们现在是在安装虚拟机,所以直接用qemu-img进行转换
qemu-img convert -p -f raw -O qcow2 ./openwrt-23.05.2-x86-64-generic-ext4-combined.img openwrt-23.05.2-generic-ext4-conbined.qcow2 #转换产生一个qcow2以供qemu使用
qemu-img resize -f raw openwrt-*.img 20G #扩容到20 G。
- 卸载网卡并以vfio的方式驱动:Linux系统中,使用PCI/PCI-e总线连接到电脑上的设备都有一个id,可以用来识别某个设备
lspci | grep "Ethernet" #lspci列出使用PCI/PCI-e总线的设备,grep "Ethernet"用于匹配网卡
第一列就是设备的id。
按照第一列给出的内容,找到你想要直通给OpenWRT的设备。我在这里用eth1和eth2,解绑并且允许作为vfio设备使用。
sudo modprobe vfio
sudo modprobe vfio-pci
echo "0000:02:00.0" | sudo tee /sys/bus/pci/devices/0000:02:00.0/driver/unbind
echo "0000:03:00.0" | sudo tee /sys/bus/pci/devices/0000:03:00.0/driver/unbind
echo "vfio-pci" | sudo tee /sys/bus/pci/devices/0000:02:00.0/driver_override
echo "vfio-pci" | sudo tee /sys/bus/pci/devices/0000:03:00.0/driver_override
echo "0000:02:00.0" | sudo tee /sys/bus/pci/drivers/vfio-pci/bind
echo "0000:03:00.0" | sudo tee /sys/bus/pci/drivers/vfio-pci/bind
前两行加载vfio相关的模块,3、4行解绑、5、6行说明这两网卡跟vfio跑了,7、8行把网卡绑定到vfio。
3. 启动一个直通这两个网卡的虚拟机:
qemu-system-x86_64 -enable-kvm -machine q35 -cpu host -smp 2 -m 2048 -drive file=/path-to/openwrt-23.05.2-generic-ext4-conbined.qcow2,if=virtio -device vfio-pci,host=0000:02:00.0 -device vfio-pci,host=0000:03:00.0 -nographic -net none
#/path-to/改为openwrt-23.05.2-generic-ext4-conbined.qcow2所在路径
#2核,2 GiB内存。
虚拟机,启动!
进去看看哪个网卡被设置成了wan,哪个网卡被设置成了lan。wan对应的网卡接上游的设备,lan口接下游的设备,剩下的自己配置吧。
写在最后
一分钟安装只是开个玩笑,后续补几张图说明一下。
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Linux运维工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Linux运维知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加VX:vip1024b (备注Linux运维获取)
为了做好运维面试路上的助攻手,特整理了上百道 【运维技术栈面试题集锦】 ,让你面试不慌心不跳,高薪offer怀里抱!
这次整理的面试题,小到shell、MySQL,大到K8s等云原生技术栈,不仅适合运维新人入行面试需要,还适用于想提升进阶跳槽加薪的运维朋友。
本份面试集锦涵盖了
- 174 道运维工程师面试题
- 128道k8s面试题
- 108道shell脚本面试题
- 200道Linux面试题
- 51道docker面试题
- 35道Jenkis面试题
- 78道MongoDB面试题
- 17道ansible面试题
- 60道dubbo面试题
- 53道kafka面试
- 18道mysql面试题
- 40道nginx面试题
- 77道redis面试题
- 28道zookeeper
总计 1000+ 道面试题, 内容 又全含金量又高
- 174道运维工程师面试题
1、什么是运维?
2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?
3、现在给你三百台服务器,你怎么对他们进行管理?
4、简述raid0 raid1raid5二种工作模式的工作原理及特点
5、LVS、Nginx、HAproxy有什么区别?工作中你怎么选择?
6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?
7、Tomcat和Resin有什么区别,工作中你怎么选择?
8、什么是中间件?什么是jdk?
9、讲述一下Tomcat8005、8009、8080三个端口的含义?
10、什么叫CDN?
11、什么叫网站灰度发布?
12、简述DNS进行域名解析的过程?
13、RabbitMQ是什么东西?
14、讲一下Keepalived的工作原理?
15、讲述一下LVS三种模式的工作过程?
16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?
17、如何重置mysql root密码?
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
码?
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-NBeN8kKZ-1712896185887)]