ubuntu显卡切换本质是会话级配置,需重启图形会话或系统才生效;prime-select通过更新gl库链接、内核模块配置等四类路径实现切换,而非实时热切。

Ubuntu 本身不提供“运行时动态切换显卡”的能力——所谓“切换”实际是重启生效的会话级配置,不是像 Windows 那样热切 GPU 渲染路径。你看到的 nvidia-settings 里 PRIME Profiles 界面、或 prime-select 命令,本质都是修改 X server 启动时加载的 GL 库和内核模块组合,必须重启图形会话(或整机)才真正生效。
PRIME Profiles 在 nvidia-settings 里为什么没反应
常见现象是:点选了 NVIDIA (Performance Mode),点 Apply,界面没报错,但 glxinfo | grep "OpenGL renderer" 仍显示 Intel 或 Mesa;或者 nvidia-smi 根本不显示进程。
- 根本原因:当前用户会话仍在使用旧的 GL 库链。X server 没有重启,
libGL.so软链接仍指向mesa或intel版本 - 验证方式:运行
prime-select query—— 它只读取当前配置文件状态,不反映实际运行时状态;真正要看的是ls -l /etc/alternatives/x86_64-linux-gnu_gl_conf和glxinfo -B | grep "OpenGL renderer" - 修复动作:不是点 Apply,而是退出当前桌面(Ctrl+Alt+F3 →
sudo systemctl restart gdm3),或直接sudo reboot
prime-select nvidia / prime-select intel 的真实作用
prime-select 不是驱动开关,它是一套符号链接管理器,批量更新 4 类关键路径:
PostgreSQL 18.4 官方 Ubuntu 安装包现已发布,这是目前最新的稳定版本。推荐通过官方 APT 仓库安装:先执行 sudo apt update 更新索引,再运行 sudo apt install postgresql-18 即可完成部署。新版本引入了异步 I/O 子系统,在顺序扫描与 VACUUM 场景下性能提升显著,同时支持 UUID v7 原生生成函数与虚拟生成列。
-
/etc/alternatives/x86_64-linux-gnu_gl_conf→ 指向nvidia或mesa的 glvnd 配置 -
/usr/lib/x86_64-linux-gnu/libGL.so.1→ 实际软链接到libGLX_nvidia.so.0或libGLX_mesa.so.0 -
/etc/modprobe.d/nvidia-graphics-drivers.conf→ 控制是否blacklist nouveau、是否install nvidia为默认 -
/var/lib/prime-select/下的锁文件 → 供nvidia-settingsGUI 读取状态
所以执行 sudo prime-select nvidia 后必须重启,否则 X server 仍用旧链接加载库,GPU 不参与渲染。
切换后黑屏或登录循环的典型诱因
尤其在 prime-select intel 后黑屏,不是命令错了,而是 Intel 核显驱动与当前内核/GRUB 参数不兼容:
-
nomodeset是临时救命参数,但长期开着会让 Intel 显卡无法启用 KMS,导致 X 启动失败 —— 切回 Intel 前务必确认nomodeset已从/etc/default/grub的GRUB_CMDLINE_LINUX_DEFAULT中移除 - 某些 OEM 笔记本(如 ROG、Dell XPS)BIOS 启用了 Secure Boot + UEFI strict mode,会拒绝加载未签名的
nvidia.ko,但更隐蔽的问题是:Intel 核显固件(i915)在 Secure Boot 开启时可能被内核禁用,导致无输出 - 验证方法:启动卡住时按 Ctrl+Alt+F2 进 TTY,运行
dmesg | grep -i "i915\|nvidia\|drm",看是否有i915: probe failed或Secure boot disabled类错误
真正麻烦的从来不是“怎么切”,而是“切完谁在画屏、谁在解码、谁在跑 CUDA”——这些细节不会自动对齐。比如你切到 NVIDIA 模式,但 Firefox 仍走 VA-API 的 Intel 编码器,nvidia-smi 就看不到它;又比如 Blender 启动时没加 __NV_PRIME_RENDER_OFFLOAD=1,它就默认用 Intel 渲染。这些才是实际使用中卡住你的点。










