我有一个有这些规格的系统:
一切都很好,直到我订购了NVIDIA显卡并安装了它。当尝试使用插入NVIDIA卡的一两台监视器启动(甚至启动到一个活动的USB映像以安装新的发行版)时,此输出将失败:

值得注意的是,我正在安装Linux,但我们也无法让其他发行版工作,但每个发行版的错误信息是不同的。在本例中,我可以引导到实时USB映像,选择我想要引导Linux的内容,并在一段时间内显示Mint徽标,然后出现此错误。
我可以用插入集成图形的显示器启动,然后切换它们,但是当我点击鼠标或按键盘上的一个键时,大约有5-10秒的滞后时间,所以计算机基本上是无法使用的。
基本上,我不知道为什么将监视器插入显卡会产生“无法分配usb_device”错误。它似乎认为有超过127个USB设备插入,这肯定不是真的。
发布于 2018-09-17 20:55:20
解决方案是将amd_iommu=off添加到内核的引导参数中。
要做到这一点,在引导USB映像时,我在启动菜单上点击"e“,找到以"linux”开头的行,并在行尾的最终amd_iommu=off之前添加了-- (就在quiet splash之后)。
在安装Mint之后,我重新启动了,但是出现了相同的错误,因为这个修复只是临时的,对于那个单独的引导。为了使修复永久,我反复按Esc键后,权力循环,直到出现grub提示。我输入normal来加载grub菜单,然后重复上面的步骤,暂时禁用amd_iommu。一旦它启动,我通过编辑/etc/default/grub并用GRUB_CMDLINE_LINUX_DEFAULT修改靠近顶部的行使其永久化为GRUB_CMDLINE_LINUX_DEFAULT="quiet splash amd_iommu=off" (per这些指示)。
我听说这对安全有影响。但是,设置amd_iommu=fullflush会导致启动挂起并最终失败。
这就永久地解决了这个问题;监视器仍然插在NVIDIA卡上。
(为我自己记录下剩下的部分,以防我需要稍后再做一次,但问题略有不同.)然而:我有两个LG 4K显示器,只有一个运行在60赫兹;另一个是在30赫兹,没有60赫兹选项(xrandr),尽管显卡是有能力的。一个在DisplayPort上,另一个在HDMI上。HDMI显示器卡在30 at。我修正了这一点,使用监视器的控件转到菜单->快速设置->比率,并将其设置为原始,而不是宽。下一次运行xrandr时,有一个60 The的选项可用。我通过运行xrandr --output HDMI-O --mode 3840x2160 --rate 60启用了该速率。但由于这只是一个临时修复,我修改了~/.config/monitors.xml并将其<rate>字段更改为60。现在它每启动一次就能达到60赫兹。
呼。我累坏了--花了一个星期才弄明白。多亏有耐心的同事帮了忙。
https://unix.stackexchange.com/questions/469610
复制相似问题