ubuntu环境如何安装驱动
小樊
45
2025-11-22 15:49:33
Ubuntu 驱动安装实用指南
一、通用准备与注意事项
- 更新系统并安装常用依赖:sudo apt update && sudo apt upgrade -y,随后安装构建工具与内核头文件:sudo apt install build-essential linux-headers-$(uname -r) -y。
- 优先使用带有 recommended 标记的专有驱动;如需手动安装,先切换到文本模式并关闭显示管理器(如 gdm3/lightdm/sddm)。
- 安装完成后务必重启:sudo reboot。
- 验证命令:NVIDIA 显卡执行 nvidia-smi;声卡执行 aplay -l、lsmod | grep snd;通用内核模块执行 lsmod。
二、NVIDIA 显卡驱动安装
- 方法一 仓库自动/推荐安装(推荐)
- 查看显卡与推荐驱动:ubuntu-drivers devices(优先选择带 recommended 的版本)。
- 安装推荐版本:sudo apt install nvidia-driver-;或一键自动:sudo ubuntu-drivers autoinstall。
- 重启:sudo reboot;验证:nvidia-smi。
- 说明:nvidia-smi 右上角的 CUDA Version 表示驱动支持的最高 CUDA 运行时版本,不代表已安装该版本 Toolkit。
- 方法二 手动安装官方 .run 驱动
- 从 NVIDIA 驱动页面下载对应型号的安装包:NVIDIA-Linux-x86_64-*.run。
- 切换到文本模式并关闭显示管理器:sudo systemctl stop gdm3(或 lightdm/sddm),必要时 sudo reboot。
- 禁用 Nouveau:
echo “blacklist nouveau” | sudo tee /etc/modprobe.d/blacklist-nvidia-nouveau.conf
echo “options nouveau modeset=0” | sudo tee -a /etc/modprobe.d/blacklist-nvidia-nouveau.conf
sudo update-initramfs -u && sudo reboot
- 安装驱动:chmod +x NVIDIA-Linux-x86_64-.run && sudo ./NVIDIA-Linux-x86_64-.run(建议勾选安装 DKMS)。
- 重启并验证:nvidia-smi。
- 版本选择要点:驱动决定可安装的 最高 CUDA 版本;实际使用的 CUDA Toolkit 版本应不高于 nvidia-smi 显示的 CUDA Version。
三、声卡驱动与音频问题排查
- 快速检查:lspci | grep -i audio(确认硬件被识别);aplay -l(列出播放设备);lsmod | grep snd(检查 ALSA 模块)。
- 常见修复(ALSA/通用声卡)
- 安装音频基础包:sudo apt-get install linux-sound-base alsa-base alsa-utils。
- 安装当前内核的额外声卡模块:sudo apt-get install linux-modules-extra-$(uname -r)。
- 加载对应声卡模块(示例为 Ensoniq ES1371):sudo modprobe snd-ens1371;随后确认:lsmod | grep snd。
- 重启音频服务:sudo alsa force-reload;pulseaudio --kill && pulseaudio --start。
- 图形界面下可用 pavucontrol 检查输出设备与配置。
- 特殊/老旧声卡:若发行版模块缺失,可考虑从 ALSA 源码编译安装 driver/lib/utils 三个组件(按顺序),适用于需要最新或特定补丁的场景。
四、常见问题与排错要点
- 安装 NVIDIA 驱动时提示 Nouveau 正在使用:按上文禁用 Nouveau 并更新 initramfs,重启后再安装。
- 使用 .run 安装器时报错与现有包管理器冲突:选择不安装驱动组件,或使用仓库方式安装以避免冲突。
- Secure Boot 导致内核模块未签名:在 BIOS 关闭 Secure Boot,或按提示为 NVIDIA 模块签名后再重启。
- 服务器/无头环境:优先使用仓库安装专有驱动,避免手动 .run 带来的依赖与显示管理问题。
- 多版本驱动并存或切换:apt purge nvidia-* 清理旧版本后再装;使用 update-initramfs -u 更新后再重启。