カーネルが更新されるたびに、有効なカーネルモジュールがないため、nvidiaグラフィックスドライバーは動作を停止します。
新しいカーネル用にnvidiaモジュールを「再コンパイル」するubuntuの方法は何ですか?
自動的に行われるべきではありませんか?バグに苦しんでいますか?
NVIDIAドライバーをubuntuパッケージとしてインストールしている場合、各カーネルのアップグレード後に自動的に更新されるはずです。
ダッシュボードのAdditional Drivers
ツールを使用して、またはパッケージnvidia-current
をインストールして、パッケージ化されたドライバーをインストールできます。
NvidiaドライバーをWebサイトから直接インストールした場合、このパッケージをインストールする前に削除するのが賢明でしょう。競合を検出するのがどれほど良いかはわかりません。
Ubuntuリポジトリからパッケージをインストールした場合、dpkg-reconfigure
を使用してパッケージを再構成できますが、新しいカーネルをインストールするとnvidiaモジュールのビルドがトリガーされると思われます。従来のアンインストールと再インストールはうまくいくかもしれません(Sudo apt-get remove nvidia-current; Sudo apt-get install nvidia-current
)。
NVIDIAバイナリドライバーをインストールしたとき、おそらくdkmsパッケージをインストールしていないでしょう。 Dkms は、カーネルを更新するたびに、それをサポートするモジュールが再コンパイルされるようにします:
Sudo apt-get install dkms
おそらく、NVIDIAバイナリドライバーを後で再インストールし、セットアップ中にDKMSを登録する必要があるため、DKMSを使用できるようにする必要があります。
私にとっては、dpkg-reconfigureは最新のカーネルでNvidiaドライバーを再構築します。これを有効にするには、再起動が必要です。以下の私の例では、古いnvidia-304-updatesを使用しています。
Sudo dpkg-reconfigure nvidia-304-updates
編集:カーネルの更新後に実行されるスクリプトzz-dkpg-reconfigure-nvidia
を書くことで、これを自動化することができました
#!/bin/bash
#
# Reconfigure nvidia driver
DRIVER=nvidia-304-updates
dpkg-reconfigure $DRIVER > /var/log/dpkg-reconfigure-nvidia.log 2>&1
exit 0
上記のスクリプトを実行してインストールしました
Sudo install zz-dkpg-reconfigure-nvidia /etc/kernel/postinst.d
Ubuntu 14.04カーネル3.13.0-29から3.13.0-36へのアップデートで動作します。
カーネルモジュールのみを再構築する場合は、単に実行することもできます。
Sudo apt-get install --reinstall nvidia-current
nvidia-currentがインストールされている場合、またはnvidia-331がインストールされている場合、これで作業が行われます。
Sudo apt-get install --reinstall nvidia-331
リポジトリを追加したり、新しいソフトウェアをインストールしたりする必要はありません:-)
注意してくださいカーネルアップグレードのインストールも、公式にサポートされていないリポジトリからのドライバーのインストールも推奨されていません!これらの指示は、自分が何をしているかを知っている場合にのみ、自己の責任において行ってください。
現在のUbuntuの公式リポジトリ(カーネル3.4または3.5など)よりも先のカーネルをインストールした場合、nvidiaドライバーを再インストールするだけでは成功しない可能性があります。
Nvidia-driversを再び動作させるためにこれまで見つけた唯一の方法は、次のppaをリポジトリに追加することです。ターミナルタイプ:
Sudo add-apt-repository ppa:xorg-edgers/ppa
その後、Sudo apt-get update
およびSudo apt-get install nvidia-current
を実行します。
これでうまくいくはずです。そうでない場合は、追加のSudo apt-get upgrade
を実行します。