Ubuntu 驱动自定义设置实用指南
一、显卡 NVIDIA 与双显卡切换
ubuntu-drivers devices 查看可用专有驱动与推荐版本;或在“软件和更新 → 附加驱动”中选择。安装完成后重启。prime-select 切换并验证
prime-select querysudo prime-select nvidiasudo prime-select on-demandsudo prime-select intelnvidia-settings 进行显示相关设置(仅在独显或按需模式下可用)。sudo apt update && sudo apt install build-essential gcc g++ cmake linux-headers-$(uname -r)。二、内核模块与 initramfs 的自定义加载
/etc/modules(或 /etc/modules-load.d/*.conf),例如:
echo "snd_hda_intel" | sudo tee -a /etc/moduleslsmod | grep snd_hda_inteldracut 与 initramfs-tools:
sudo apt-get install dracut initramfs-tools/etc/dracut.conf 添加:add_drivers+="ahci megaraid_sas mpt3sas mpt2sas virtio_blk virtio_scsi virtio_net"/etc/initramfs-tools/modules 追加相同驱动名(空格分隔)sudo update-initramfs -ulsinitramfs /boot/initrd.img-$(uname -r) | grep -E "ahci|megaraid_sas|mpt3sas"echo -e "blacklist nouveau\noptions nouveau modeset=0" | sudo tee /etc/modprobe.d/blacklist-nouveau.confsudo update-initramfs -ulsmod | grep nouveau 检查是否已禁用。三、声卡 ALSA 的自定义配置
aplay -l、arecord -lsudo apt install alsa-base alsa-utils libasound2-devsudo usermod -aG audio $USERalsamixer(解除静音),speaker-test -c2 -twav/etc/asound.conf 或用户级 ~/.asoundrc:
pcm.!default { type plug; slave.pcm "hw:0,0" }ctl.!default { type hw; card 0 }defaults.ctl.card 1defaults.pcm.card 1defaults.timer.card 1dmesg | grep -i audiosudo modprobe -r snd_hda_intel && sudo modprobe snd_hda_intel四、自研或第三方驱动的编译与安装
make -C /lib/modules/$(uname -r)/build M=$(pwd) modulessudo make -C /lib/modules/$(uname -r)/build M=$(pwd) modules_installsudo depmod -a/etc/modules 或使用 /etc/modules-load.d/*.confsudo insmod your_driver.ko 或 sudo rmmod your_driverdrivers/char/(或其他子系统目录)新增目录,补充 Kconfig 与 Makefile,在上层 Kconfig 中 source 新目录,使用 make menuconfig 选中为模块或内建,编译后部署到目标设备测试。