半年くらいハマっていましたが解決しました。
ハマっていた原因
私は、ubuntu 17.04 → ubuntu 18.04 と段階的にアップグレードしてUbuntuを利用しているのですが、
古いディストリビューションのディスプレイマネージャーの設定等が邪魔していたのが原因ぽいです?よくわかってないです……
普通にNvidiaのドライバをインストール手順
自分の用にアップグレードではなく、ubuntu18.04をインストールしてUbuntuをつかっている方は以下のような手順で普通にインストールできるかと思います。
- Nvidiaのドライバをダウンロード
↓ - 既存のNvidiaドライバとcudaドライバの削除
↓ - Xディスプレイマネージャからコンソールウィンドウに切り替え
↓ - sudo lightdm stop で X windowを停止
↓ - Nvidiaのドライバをインストール
↓ - sudo lightdm restart && sudo reboot で再起動
下記の記事が参考になります。
しかし、私の場合はこれでは上手くいきませんでした。
lightdmをインストールする()
Nvidiaのドライバをインストールする以前に、そもそもディスプレイの設定をGUIでできなくなっていました。 ubuntu 18.04にアップグレードした際に「設定」が消えたりしていました。
下記の記事を参考にしてインストールすることで様々な失われたGUIソフトウェアと「lightdm」をインストールすることができました。
インストールに失敗したNvdiaドライバがインストールを邪魔する。
lightdmもインストールしたし最新のドライバもダウンロードしたので、既存のドライバをイアンンストールしようとしました。
sudo apt-get --purge remove "nvidia-*"
しかし既存の壊れていたドライバが以下のメッセージを表示してその邪魔をします。
以下のパッケージには満たせない依存関係があります: libcuda1-418: 依存: Nvidia-384 しかし、インストールされようとしていません
しかも、このメッセージが一旦表示されるとapt-get update や apt-get installもできなくなる悲しい状況に見舞われます。 そのため下記のコマンドを利用して強制的に問題を起こしているパッケージを削除する必要がありました。
$ sudo dpkg --remove --force-remove-reinstreq libcuda1-418 $ sudo dpkg --remove --force-remove-reinstreq Nvidia-384
依存問題が発生したパッケージ削除の詳しい手順は下記を参考にしてください。
Nvidiaドライバをインストール!
上記の2つでハマっていましたが、解消した後は一番最初に書いた手順通りで、 問題なくNvidiaドライバをインストールすることができました。
これでノートPCで機械学習できる! ……というより外部ディスプレイとかGoogle Hangoutとか繋いでも画面が表示されない現象が直ったことが嬉しかったです。
疑問
Ubuntu詳しくないので誰か教えてほしいのですが、自分のPCにはlightdmが入っていませんでした……
ubuntu17.04 まではgdm3が利用されていて、Ubuntu18.04からlightdmがデフォルトパッケージになったのでしょうか?