MX LinuxでGUIが起動しなくて焦った〜(一部未解決)

2024/5/15追記 MX Linux(KDE)でNVIDIAドライバーをあてようが続きです。NVIDIAドライバー問題も解決しました。

MX Linux のGUIがとんでから復旧まで

環境について

os:MX Linux 23.2 Libretto

GPU:GTX1650

最近、メインPCのOSをKubuntuからMX Linuxに変えました。

初期設定などもろもろやって次の日起動するとあれ、CLIしか起動しない。

ユーザー名とパスワードでCLIでは操作できるけどGUIがでないうーん。これはまずい。

Timeshiftというバックアップソフトで少し前のをリストアして復活したけどその次の日、またCLIだけに。 これは本格的に対処しないといけないやつだなと思いGPUドライバーを考えることになりました。

とりあえずMX Linux公式のハードウェアのページにかんたんにnvidiaについてのページがあるので読んでみました。(https://mxlinux.org/wiki/hardware/nvidia-driver-install-recovery/)

Failureのところにあるように /etc/X11/xorg.conf を探しましたがそもそもこれは /etc/X11/xorg.conf.b に私の環境ではなっていたのでこれはだめ。 

そのためつぎのnvidia ドライバーを消去することに。

sudo ddm-mx -p nvidia

途中、なにか確認求められましたが日本語が全部同じように文字化けしていてほとんど意味はわかりませんでしたがとりあえずデフォルト&「yes」で進みnvidiaドライバーを消去。(あとからこれは最小に sudo apt updateをしているのでそれの確認と本当に実行していいかの確認だったことがわかりました。)

再起動して見るととりあえずGUIでログインして元通りに。

最適なドライバー探し

現状ではlinuxの汎用GPUドライバーが使われている状態です。3画面出力できていて最低限不満はないのですがドライバーの最適化ができていないためGPU性能を100%は引き出せていない状態です。

少し悲しいのでnvidiaドライバーをインストールします。

またまた公式ページへ。 (https://mxlinux.org/wiki/hardware/nvidia-driver-install-recovery/)

公式推奨はMX Tools の Nvidiaドライバのインストーラ からインストールするのを推奨しています。 ということでこれをやってみよう。(最初にやったときはMXパッケージインストーラから入れてました。)

残念ながらメニューのアイコンをクリックしても起動しません。なんやこれって思いましたがたぶんこれはルートアカウントでないと起動しないためです。 そのためコンソールでsudo su でルートでログインしてから /usr/bin/ddm-mx -i nvidia で起動します。

何回か聞かれるのではいはい言ってると nvidia-driver 525.147.05-10~mx23ahs がインストールされました。 さてこれでいいのか。この時点ではインストールしているだけでまだ適用されていないので再起動が必要です。 再起動して正しくGUIがでれば成功ですが。

失敗しました

はい、ここまで読んでこれでうまく行くと思った方、甘いです。そう簡単にいくなら苦労しないって話ですよ。 まあもともとのドライバーと変わってないような気もしたので半分ダメそうだなと思いながらやっていたところはあります。 いやあこうなると困ります。とりあえずさっきと同じようにnvidiaドライバーを消してGUIは復帰しましたが結局nvidiaドライバー問題は未解決なわけです。そして何が良くないかというと推奨のドライバーがこれ一つなんです。 いやそんなわけなかろうと思う方もいるかもしれませんがLinux、しかもメインストリームのUbuntuでもないのでこういうことが起こってしまったというわけです。 MXLinuxの思わぬ落とし穴です。これを書いているのはすべて解決したあとではなく現在進行系でこの問題に対処しながら書いているため今かなり絶望的です。

もう一度 nvidia-driver 525.147.05-10~mx23ahs でほかの使えそうなドライバーがないか探します。

alt text

nvidia-tesla-470-driver が使えるかもしれません。 /usr/bin/ddm-mx -i nvidia -f nvidia-tesla-470-driver

これで先程とは別のドライバーをインストールしてみます。さてこれでうまく行くのか…

失敗しました

はい、MX公式の方法はもうなくなりました。

そのためここからはさらに保証がない方法になっていきます。

一旦バックアップをとってしくじってもすぐに戻ってこれるようにします。 まずnvidia公式にいきます。ここです

Linuxを始めとしたUnix系統のOS用のドライバーが用意されています。記事作成時点では550.52.14が最新でした。ちゃんとGTX1650もサポートされています。

alt text

ただこれはなんかうまく行かなかったのでネットをサーフィンしているとこんな記事を見つけました。 https://qiita.com/ynott/items/343c119e8e8b48c740c3 先人に感謝しながらMXlinuxをDebian12とみたてて進めていきます。

https://developer.nvidia.com/cuda-downloads?target_os=Linux&target_arch=x86_64&Distribution=Debian&target_version=12&target_type=deb_local

↑ここから

wget https://developer.download.nvidia.com/compute/cuda/12.4.1/local_installers/cuda-repo-debian12-12-4-local_12.4.1-550.54.15-1_amd64.deb
sudo dpkg -i cuda-repo-debian12-12-4-local_12.4.1-550.54.15-1_amd64.deb
sudo cp /var/cuda-repo-debian12-12-4-local/cuda-*-keyring.gpg /usr/share/keyrings/
sudo add-apt-repository contrib
sudo apt-get update
sudo apt-get -y install cuda-toolkit-12-4

sudo apt-get install -y cuda-drivers を実行します。 そしてドライバーを変えるために再起動。さてうまくいくか…

失敗しました

一瞬だけGUIのログイン画面がでてきたか と思ったらフェイントでCLIにしかなりませんでした。 またnvidiaドライバーを消して今に至ります。うーんこれはもうどうすればいいのか。

ちょっとつかれてきたのでとりあえず汎用のドライバーで今日は終わります。 そのうち更新されて使えるようになるだろうという希望的観測をもって本日は終了です。

2024/5/15追記 続き