ドライバーの一般的な問題
ドライバーのトラブルシューティングのワークフロー
ステップ 1: ハードウェアを特定する
# Full hardware overview
sudo lshw -short
# PCI devices (graphics cards, network cards, sound cards, etc.)
lspci -nn
# USB devices
lsusb
# Detailed hardware report
sudo lshw -html > hardware-report.htmlステップ 2: カーネル ログを確認する
# Current boot log
sudo dmesg | less
# Filter errors and warnings
sudo dmesg --level=err,warn
# Real-time monitoring (use when plugging in devices)
sudo dmesg -wステップ 3: ロードされたモジュールを表示する
# List all loaded kernel modules
lsmod
# View information about a specific module
modinfo MODULE_NAME
# View module dependencies
modprobe --show-depends MODULE_NAMEubuntu-drivers ツールの使用
# Detect devices that need additional drivers
sudo ubuntu-drivers devices
# Automatically install recommended drivers
sudo ubuntu-drivers autoinstall
# Install a specific driver (use the version recommended by `ubuntu-drivers devices`, e.g. 580/590)
sudo ubuntu-drivers install nvidia-driver-580DKMSドライバー管理
DKMS (Dynamic Kernel Module Support) により、カーネルの更新後にサードパーティ製ドライバーが自動的に再コンパイルされます。
# View DKMS-managed modules
dkms status
# Manually rebuild modules
sudo dkms autoinstall
# If a module fails to build
sudo dkms remove MODULE_NAME/VERSION --all
sudo dkms install MODULE_NAME/VERSION一般的な問題と解決策
カーネルのアップデート後にドライバーが動作を停止する
# Check DKMS status
dkms status
# Ensure build tools are installed
sudo apt install build-essential dkms linux-headers-$(uname -r)
# Rebuild all DKMS modules
sudo dkms autoinstallドライバーモジュールがブラックリストに登録されています
# Check blacklists
grep -r "blacklist" /etc/modprobe.d/
# Temporarily load a blacklisted module
sudo modprobe MODULE_NAME
# Permanently remove blacklist entry
sudo nano /etc/modprobe.d/blacklist.conf
# Comment out the relevant line, then regenerate the initramfs (Ubuntu 26.04 uses Dracut by default):
sudo dracut -f
# On legacy initramfs-tools systems use instead: sudo update-initramfs -uファームウェアファイルがありません
# Check for firmware missing warnings
sudo dmesg | grep -i firmware
# Install the full firmware package (all of Ubuntu's binary firmware lives in linux-firmware)
sudo apt install linux-firmwareNote
Ubuntu には、firmware-misc-nonfree などの Debian の分割パッケージがありません。必要なファームウェアはすべて linux-firmware にバンドルされています。 26.04 以降、linux-firmware はより細かいベンダー固有のサブパッケージに分割されていますが、アンブレラ パッケージをインストールすると、引き続きすべてのファームウェアが取り込まれます。
デバイスが認識されない
- デバイスが物理的に正しく接続されていることを確認します
- BIOS/UEFI でデバイスが有効になっているかどうかを確認します。
- 別の USB ポートまたはケーブルを試してください
- カーネルのバージョンを更新します。
sudo apt install linux-generic-hwe-26.04ドライバーの手動コンパイルとインストール
事前に構築されたドライバー パッケージが利用できない場合:
# Install build dependencies
sudo apt install build-essential linux-headers-$(uname -r) git
# Typical workflow
git clone <DRIVER_REPOSITORY_URL>
cd <DRIVER_DIRECTORY>
make
sudo make install
sudo modprobe <MODULE_NAME>
# Set up automatic loading at boot
echo "MODULE_NAME" | sudo tee /etc/modules-load.d/MODULE_NAME.conf古いカーネルへのロールバック
新しいカーネルによってハードウェアの問題が発生した場合:
# View installed kernels
dpkg --list | grep linux-image
# Select an older kernel at the GRUB menu during boot
# Hold Shift (BIOS) or Esc (UEFI) to enter the GRUB menu
# Select "Advanced options for Ubuntu" > older kernel version
# Pin a specific kernel version (use with caution)
sudo apt-mark hold linux-image-7.x.x-xx-genericハードウェア診断レポートの生成
コミュニティに助けを求める場合は、次の情報を提供してください。
# Generate a complete hardware report
sudo apt install inxi
inxi -Fxxxz
# Or use hw-probe
sudo apt install hw-probe
sudo hw-probe -all -upload出力リンクは、支援者と直接共有できます。