解决方案 A

解决方案 A

当我尝试安装 Ubuntu 时,也出现了黑屏,但那时,我按下e编辑 GRUB,并进行修改quiet splash ---quiet splash nomodeset并成功安装了 Ubuntu。

但是每次启动 Ubuntu 时,我唯一能看到的图片就是登录页面,之后屏幕上只剩下黑色。我知道 Ubuntu 启动成功了,因为当我按下Alt+ Ctrl+T并输入时reboot,它就成功了,即使我只看到黑屏。所以我猜这是 nvidia 造成的。

我尝试Shift在启动 Ubuntu 时按住,但无法进入 GRUB 菜单,我按下Esc后只得到 GRUB 命令行,那么我该如何解决这个问题呢?

答案1

此黑屏/空白屏幕是由于 引起的nouveau kernel drivers

Nouveau 是 NVIDIA 显卡的开源图形驱动程序。

tty它们应该在启动期间或登录之前在 grub 中被禁用。

解决方案 A

你需要使用nouveau.modeset=0以下行开始的命令来更新你的 grubGRUB_CMDLINE_LINUX_DEFAULT="

您可以通过点击e在启动时编辑 grub 或在登录之前切换到tty
要切换到 tty,请单击ctrl + alt + f3/f4

  1. 登录tty并输入

    nano /etc/default/grub
    

    编辑 grub。键入nouveau.modeset=0以下内容quiet splash以禁用 nouveau 内核驱动程序的加载。

  2. 然后输入

    sudo bash -c "echo blacklist nouveau > /etc/modprobe.d/blacklist-nvidia-nouveau.conf"
    sudo bash -c "echo options nouveau modeset=0 >> /etc/modprobe.d/blacklist-nvidia-nouveau.conf"
    
  3. 确认新的 modprobe 配置文件的内容:

    cat /etc/modprobe.d/blacklist-nvidia-nouveau.conf
    

    它应该具有类似于下面的输出:

    blacklist nouveau 
    options nouveau modeset=0
    
  4. 更新内核 initramfs

    输入以下linux命令重新生成initramfs:

    sudo update-initramfs -u
    
  5. 更新 Grub

    输入以下命令更新 grub

    sudo update-grub
    
  6. 重启你的电脑。

    sudo reboot
    


解决方案 B

要禁用 Nouveau 内核驱动程序:

  1. 删除已安装的 NVIDIA 驱动程序:

    sudo apt-get purge "nvidia*"
    sudo apt autoremove
    
  2. /etc/modprobe.d/disable-nouveau.conf创建一个名为以下行的新文件:

    blacklist nouveau
    blacklist lbm-nouveau
    options nouveau modeset=0
    alias nouveau off
    alias lbm-nouveau off
    
  3. 将此行附加到 /etc/modprobe.d/nouveau-kms.conf:

    options nouveau modeset=0
    
  4. 更新内核的启动环境:

    sudo update-initramfs -u
    
  5. 重启您的计算机,您应该获得一个低分辨率的 GUI,这表明它nouveau graphics driver未被使用。


解决方案 C

  1. 清理所有 nvidia 包(删除所有与 nvidia 相关的包)。

    sudo apt-get remove nvidia* && sudo apt autoremove
    

    如果您收到以下错误,则意味着您从未安装过 nvidia 包并且没问题:

    no matches found: nvidia*
    
  2. 现在安装一些必需的依赖项:

    sudo apt-get install dkms build-essential linux-headers-generic
    
  3. 黑名单 nouveau 驱动程序(阻止并禁用 nouveau 内核驱动程序)

    sudo vim /etc/modprobe.d/blacklist.conf
    
  4. 将以下行附加到 blacklist.conf:

    blacklist nouveau 
    blacklist lbm-nouveau
    options nouveau modeset=0
    alias nouveau off
    alias lbm-nouveau off
    
  5. 通过输入以下命令禁用 Kernel nouveau:

    echo options nouveau modeset=0 | sudo tee -a /etc/modprobe.d/nouveau-kms.conf 
    
  6. 更新内核的启动环境:

    sudo update-initramfs -u
    
  7. 最后更新并重启:

    reboot
    

我希望这有帮助。

参考

  1. 如何禁用 nouveau 驱动程序链接 1
  2. 如何禁用 Nouveau Driver Link 2
  3. 如何删除 nouveau 内核驱动程序
  4. 如何删除 nouveau-kernel-driver-Nvidia-install

相关内容