在Linux系统中,禁用显卡通常是为了解决驱动冲突、降低功耗、使用集成显卡替代独立显卡,或在特定调试场景下避免显卡干扰,以下是几种常见的禁用显卡方法,涵盖不同场景和显卡类型,操作前建议备份重要数据,避免误操作导致系统无法启动。
通过内核参数临时禁用(适用于临时需求)
内核参数可以在系统启动时直接禁用显卡驱动,无需修改配置文件,适合临时测试或单次使用。
操作步骤:
- 重启系统并进入GRUB菜单:开机时按
Shift
键(或Esc
,取决于GRUB配置)进入GRUB引导界面。 - 编辑启动参数:选择当前内核版本,按
e
键进入编辑模式。 - 添加内核参数:找到以
linux
开头的行,在行末添加nomodeset
(禁用内核模式设置,通用参数)或特定显卡的黑名单参数(如rdblacklist=nouveau
针对NVIDIA开源驱动)。- 示例:
linux /boot/vmlinuz-5.15.0-88-generic root=UUID=xxx ro nomodeset
- 示例:
- 启动系统:按
Ctrl+X
或F10
保存并启动,此时显卡驱动将被临时禁用。
说明:此方法仅在本次启动生效,重启后需重复操作。nomodeset
会禁用所有显卡的内核模式设置,可能导致图形界面性能下降,但可避免驱动崩溃问题。
通过驱动模块黑名单永久禁用(推荐通用方法)
通过将显卡驱动模块加入黑名单,可阻止系统加载该模块,实现永久禁用。
操作步骤:
-
确认显卡驱动模块名称:
- 执行
lspci | grep -i vga
查看显卡型号,- NVIDIA显卡:
NVIDIA Corporation GP107 [GeForce GTX 1050 Ti]
(模块名为nvidia
或nouveau
) - AMD显卡:
Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere [Radeon RX 470/480]
(模块名为amdgpu
或radeon
) - Intel显卡:
Intel Corporation UHD Graphics 620
(模块名为i915
)
- NVIDIA显卡:
- 执行
lsmod | grep -i "nvidia|amdgpu|i915"
查看已加载的模块。
- 执行
-
创建黑名单配置文件:
以root权限创建或编辑/etc/modprobe.d/blacklist.conf
(或新建.conf
文件,如blacklist-nvidia.conf
),添加以下内容(以NVIDIA开源驱动nouveau
为例):blacklist nouveau options nouveau modeset=0
blacklist
:阻止模块加载;options 模块名 modeset=0
:禁用该模块的modeset
功能(双重保险)。
-
更新initramfs并重启:
- 执行
update-initramfs -u
(Ubuntu/Debian)或dracut --force
(CentOS/RHEL),更新初始内存盘中的模块配置; - 重启系统:
reboot
。
- 执行
验证方法:重启后执行lsmod | grep -i "nouveau|amdgpu|i915"
,若无输出则表示禁用成功。
通过BIOS/UEFI设置硬件级禁用(彻底禁用方法)
如果希望彻底禁用显卡(如集成显卡),可通过BIOS/UEFI设置实现,从硬件层面禁用显卡,系统层面无需额外配置。
操作步骤:
- 进入BIOS/UEFI:开机时按
F2
、Del
或Esc
(具体键位取决于主板型号)进入BIOS设置界面。 - 找到显卡设置选项:
- 不同BIOS路径可能不同,常见路径:
Advanced
→Integrated Peripherals
→Onboard VGA Device
(集成显卡)Advanced
→PCH Settings
→PEG/Onboard VGA Priority
(显卡优先级设置)
- 将选项设置为
Disabled
(禁用集成显卡)或PEG
(仅使用独立显卡,若存在)。
- 不同BIOS路径可能不同,常见路径:
- 保存并退出:按
F10
保存设置,重启系统。
说明:此方法会彻底禁用硬件,若禁用的是集成显卡,系统将仅使用独立显卡(若存在),反之亦然,注意禁用前确认系统是否有其他显示输出,避免黑屏。
针对不同显卡的具体禁用方案
不同显卡厂商(NVIDIA、AMD、Intel)的驱动模块和配置存在差异,以下是针对性方案:
显卡厂商 | 常见驱动模块 | 黑名单配置文件内容 | 内核参数选项 |
---|---|---|---|
NVIDIA(开源) | nouveau |
blacklist nouveau options nouveau modeset=0 |
rdblacklist=nouveau |
NVIDIA(闭源) | nvidia |
blacklist nvidia blacklist nvidia_drm |
modprobe.blacklist=nvidia |
AMD(开源) | amdgpu /radeon |
blacklist amdgpu blacklist radeon |
rdblacklist=amdgpu |
Intel | i915 |
blacklist i915 |
i915.modeset=0 |
注意事项:
- 若使用NVIDIA闭源驱动(
.run
安装包),需先通过sudo ./NVIDIA-Linux-x86_64-xxx.run --uninstall
完全卸载驱动,再进行黑名单配置; - Intel显卡通常为集成显卡,禁用后需确保独立显卡正常工作,否则可能导致无显示。
验证显卡是否被禁用
-
命令行检查:
lspci -nnk | grep -i vga
:查看显卡是否被系统识别,若被禁用,对应条目可能显示“Kernel driver in use: vfio-pci”(若使用虚拟化)或无驱动;glxinfo | grep "OpenGL renderer"
:若禁用成功,会提示“direct rendering: No”或显示通用渲染器(如“Mesa Gallium 0.4”);dmesg | grep -i "nouveau|amdgpu|i915"
:检查内核日志,若无相关驱动加载信息,则表示禁用成功。
-
图形界面验证:
若禁用后仍进入图形界面,可通过System Settings
→Display
查看分辨率是否降低(如降至1024×768,说明驱动未加载),或安装lshw
工具查看硬件状态:sudo lshw -c display
。
常见问题与注意事项
-
禁用后无法进入图形界面:
- 切换到文本模式:开机时按
Ctrl+Alt+F1-F6
进入终端; - 检查黑名单配置是否正确:
cat /etc/modprobe.d/blacklist.conf
; - 重新安装显卡驱动:若误禁用集成显卡,需重新安装驱动并重启。
- 切换到文本模式:开机时按
-
禁用独立显卡后仍高功耗:
部分笔记本需同时禁用NVIDIA Optimus技术,可通过optimus-manager
工具管理显卡切换:sudo apt install optimus-manager # 安装工具 sudo optimus-manager --set nouveau # 强制使用集成显卡
相关问答FAQs
Q1:禁用显卡后无法进入图形界面,如何恢复?
A:可通过以下步骤恢复:
- 开机时进入GRUB菜单,选择内核版本按
e
编辑,删除nomodeset
或黑名单参数(如rdblacklist=nouveau
),按Ctrl+X
启动; - 进入系统后,检查
/etc/modprobe.d/
下的黑名单文件,删除或注释相关配置(行首加); - 更新initramfs:
sudo update-initramfs -u
,重启系统。
Q2:为什么禁用NVIDIA显卡后,系统仍提示“nouveau”驱动加载?
A:可能是因为未完全卸载NVIDIA驱动或未更新initramfs,解决方法:
- 卸载开源驱动:
sudo apt purge --autoremove xserver-x-video-nouveau
; - 更新initramfs:
sudo update-initramfs -u -k all
; - 重启后检查:
lsmod | grep nouveau
,确保无输出。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/23056.html