ubuntu20 kvm显卡直通实验-a4000

一、环境:

显卡:NVIDIA RTX A4000
系统:Ubuntu20.04
CPU:intel

二、安装kvm

sudo apt install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virtinst virt-manager   ovmf`

添加用户到“libvirt”和“kvm”组

sudo usermod -aG libvirt $USER
sudo usermod -aG kvm $USER

三、开启iommu
1、修改/etc/default/grub,添加“intel_iommu=on”到CRUB_CMDLINE_LINUX,如下图
在这里插入图片描述
若为amd芯片,变更为"amd_iommu=on"

2、更新grub,然后重启ubuntu

sudo update-grub
sudo reboot

3、检查iommu是否成功开启

dmesg | grep -e DMAR -e IOMMU

如下图输出即为开启成功在这里插入图片描述
四、验证nouveau是否禁用

lsmod | grep nouveau

如下图,无输出,即已完成禁用:
在这里插入图片描述
如果有输出,请执行如下:

sudo gedit /etc/modprobe.d/blacklist.conf

#在文件末尾添加如下配置:

blacklist nouveau
blacklist lbm-nouveau
options nouveau modeset=0
alias nouveau off
alias lbm-nouveau off

#保存并退出
在内核中直接禁用Nouveau,命令如下(确保完全禁用):

echo options nouveau modeset=0 | sudo tee -a /etc/modprobe.d/nouveau-kms.conf

更新配置,并重启

sudo update-initramfs -u
sudo  reboot`

五、显卡解绑
验证显卡是否安装驱动
nvidia-smi
在这里插入图片描述
若已安装显卡驱动,执行如下命令卸载:

sudo /usr/bin/nvidia-uninstall​

卸载成功后,重启,重新执行nvidia-smi,确认是否卸载成功

1、查询显卡id

lspci -nn | grep NVIDIA
在这里插入图片描述
10de:24b0字样即为id

2、用libvirt解除绑定

(1)查询设备ID:

virsh nodedev-list | grep pci

在这里插入图片描述
验证设备NVIDIA id是否一致

virsh nodedev-dumpxml pci_0000_01_00_0

如下图:
在这里插入图片描述
(2)、开始解绑

sudo modprobe pci_stub
sudo virsh nodedev-detach pci_0000_01_00_0
sudo virsh nodedev-detach pci_0000_01_00_1

#多张显卡时,变更id重复执行

(3)、设置重启设备时,确保显卡自动解绑

sudo gedit /lib/systemd/system/rc-local.service`   

#末尾添加:

[Install]
WantedBy=multi-user.target
Alias=rc-local.service

在这里插入图片描述
#保存并退出,设置自启动

sudo systemctl enable rc-local.service

编写rc.local

 sudo gedit /etc/rc.local
#!/bin/sh -e
sudo vim /etc/rc.local
# rc.local
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# In order to enable or disable this script just change the execution
# By default this script does nothing.
# add your scritp here
echo "this shows rc.local is start onboot" > /usr/local/rc-local-info.log
sleep 1
sudo modprobe pci_stub
sleep 1
virsh nodedev-detach pci_0000_01_00_0
sleep 1
virsh nodedev-detach pci_0000_01_00_1
exit 0

在这里插入图片描述

#保存并退出,多张显卡更改id进行添加。

设置rc.local权限,并重启ubuntu

sudo chmod -R +x /etc/rc.local
sudo reboot

六、创建kvm

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值