これまで、FreeBSD 11.1を使っていたのですが、FreeBSD 11.2がリリースされていたので、アップデートすることにしました。 freebsd-update
コマンドでアップグレードをインストールし、再起動して残りのアップデートのインストールを完了させるつもりでした。
この段階では、CUIでログインすることになるだろうなと心構えはありました。 pkg
コマンドでアップデートかけたら、今まで通りデスクトップ環境が戻るだろうと思っていました。 再起動後のfreebsd-update install
を終え、pkg
のアップデートをし、再起動しても、 ログイン画面が表示されず、解決手段を模索しました。 /var/log/messages
を確認したら、
nvidia0: NVRM: rm_init_adapter() failed!
と表示されていたので、Google先生にそのままぶち込んだら、案の定、NVIDIAのドライバが原因だったようです。
FreeBSDのバージョンを11.2から11.1にダウングレードしました。
freebsd-update rollback
上記のコマンドを実行して、カーネルのバージョンを前に戻しました。 無事にX Window Systemも起動するようになり、デスクトップ環境を復帰させることができました。
実のところ、上記の解決手段は、自分の中では最終手段でした。 使えるなら、最新バージョンのカーネルを使いたかったので、試したことを以下に列挙しました。
FreeBSDのフォーラムに、同じような状況で質問が上がっていて、 ソースコードからビルドしてインストールし直せばいいんじゃないかという趣旨の回答があったので、 ports
でmake
を試みたのですが、エラーを吐きました。 compat/linux/linux.h
というファイルがないよ、というエラーが出ていました。 emulators/linux_base-c6
をインストールもしたのですが、エラーが解決しませんでした。 NVIDIAのページからダウンロードしたドライバのコードも同様でした。 埒が明かないので、諦めてバージョンをダウングレードすることにしました。 とりあえず、FreeBSDのバージョンアップは先送りです。