2019/11/12(火)nvidiaのドライバが動いていない

次の記事でnvidiaのドライバをインストールしたと以前書いた。

FreeBSD12 に色々インストールした
https://hesy.dyndns.dk/047


しかし実際にはうまく動いていなかったのでその記録。

環境

AMD Athlon64 X2 4200+
GeForce 7050 PV / nForce 630a
FreeBSD12.1 (12.0からのアップグレード)
xorg-7.7_3
xfce-4.14
nvidia-driver-304-304.137_4


5.4. Xorg の設定 - 第5章 X Window System

https://www.freebsd.org/doc/ja_JP.eucJP/books/handbook/x-config.html

現状調査

FreeBSDハンドブックによれば、設定ファイル xorg.conf は不要で自動で起動するという。
実際に上記環境で設定をしたので起動すると xfce4の画面が映る。

しかし、画面がぼやけていて映りが悪い。
そこでログファイルXorg.0.log をみてみた。
$ grep nvidia /var/log/Xorg.0.log
どうやらnvidiaドライバを読み込んでいない。

ログファイルの一部分を抜き出すと次のようになっていた。
$ cat /var/log/Xorg.0.log | head -64 | tail -41
[    14.933] (==) --- Start of built-in configuration ---
[    14.933]    Section "Device"
[    14.933]            Identifier      "Builtin Default nv Device 0"
[    14.933]            Driver  "nv"
[    14.933]    EndSection
[    14.933]    Section "Screen"
[    14.933]            Identifier      "Builtin Default nv Screen 0"
[    14.933]            Device  "Builtin Default nv Device 0"
[    14.933]    EndSection
[    14.933]    Section "Device"
[    14.933]            Identifier      "Builtin Default modesetting Device 0"
[    14.933]            Driver  "modesetting"
[    14.933]    EndSection
[    14.933]    Section "Screen"
[    14.933]            Identifier      "Builtin Default modesetting Screen 0"
[    14.933]            Device  "Builtin Default modesetting Device 0"
[    14.933]    EndSection
[    14.933]    Section "Device"
[    14.933]            Identifier      "Builtin Default scfb Device 0"
[    14.933]            Driver  "scfb"
[    14.933]    EndSection
[    14.933]    Section "Screen"
[    14.933]            Identifier      "Builtin Default scfb Screen 0"
[    14.933]            Device  "Builtin Default scfb Device 0"
[    14.933]    EndSection
[    14.933]    Section "Device"
[    14.933]            Identifier      "Builtin Default vesa Device 0"
[    14.933]            Driver  "vesa"
[    14.933]    EndSection
[    14.933]    Section "Screen"
[    14.933]            Identifier      "Builtin Default vesa Screen 0"
[    14.933]            Device  "Builtin Default vesa Device 0"
[    14.933]    EndSection
[    14.933]    Section "ServerLayout"
[    14.933]            Identifier      "Builtin Default Layout"
[    14.933]            Screen  "Builtin Default nv Screen 0"
[    14.933]            Screen  "Builtin Default modesetting Screen 0"
[    14.933]            Screen  "Builtin Default scfb Screen 0"
[    14.933]            Screen  "Builtin Default vesa Screen 0"
[    14.933]    EndSection
[    14.933] (==) --- End of built-in configuration ---
nvを読み込もうとして失敗していた。
$ cat /var/log/Xorg.0.log | head -110 | tail -5
[    18.400] (II) LoadModule: "nv"
[    18.411] (WW) Warning, couldn't open module nv
[    18.411] (II) UnloadModule: "nv"
[    18.411] (II) Unloading nv
[    18.411] (EE) Failed to load module "nv" (module does not exist, 0)


そこでnvidiaドライバを使うように設定ファイルを書いた。
$ cat /usr/local/etc/X11/xorg.conf.d/driver-nvidia.conf
Section "Device"
        Identifier  "Card0"
        Driver      "nvidia"
EndSection
このファイルは次のコマンドでコンフィグファイルを生成し一部分を抜き出して作った。
# Xorg -configure


ここで再起動をした。

再起動後、ユーザ名とパスワードを入力するもxfceが立ち上がらず、ただ黒い画面が映るのみ。
ログを見るとドライバは読み込まれている模様。
$ cat /var/log/Xorg.0.log | head -61 | tail -9
[    18.937] (II) LoadModule: "nvidia"
[    18.937] (II) Loading /usr/local/lib/xorg/modules/drivers/nvidia_drv.so
[    19.076] (II) Module nvidia: vendor="NVIDIA Corporation"
[    19.076]    compiled for 4.0.2, module version = 1.0.0
[    19.076]    Module class: X.Org Video Driver
[    19.086] (II) NVIDIA dlloader X Driver  304.137  Thu Sep 14 13:47:42 PDT 2017
[    19.086] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
[    19.086] (--) Using syscons driver with X support (version 2.0)
[    19.086] (--) using VT number 9
ログインはできるようなので、ディスプレイマネージャまでは起動している模様。

xfce4を導入するにあたりハンドブックにある通り.xsessionを作った。
$ echo ". /usr/local/etc/xdg/xfce4/xinitrc" > ~/.xsession
このあたりに現在の状況の原因が有ると予想。

時間が有るときにまた続きをすることにして、
取り敢えずは設定を戻して(rm /usr/local/etc/X11/xorg.conf.d/driver-nvidia.conf)起動させておくことにした。

2019/11/07(木)FreeBSD12.1 がリリース

2019/11/5 に FreeBSD12.1 がリリースされた。
https://www.freebsd.org/releases/12.1R/relnotes.html

現在のシステムは12.0-RELEASE-p11だったので取り敢えずアップグレードしてみた。


# freebsd-update upgrade -r 12.1
これには1時間半ほどかかった。

カーネルのインストール
# freebsd-update install
# reboot
再起動後カーネルが有効になる。

ユーザランドをアップグレード
# freebsd-update install
この処理で30分ほどかかった。

以上で12.1-RELEASEに更新された。
$ freebsd-version -u
12.1-RELEASE
$ freebsd-version -k
12.1-RELEASE

2019/10/29(火)サウンドチップドライバをあてる

FreeBSD12 のサウンドドライバをあてた。

まずサウンドのオンボードチップを調べた。

$ dmesg

hdacc0: at cad 0 on hdac0
hdaa0: at nid 1 on hdacc0
pcm0: <Realtek ALC888 (Rear Analog 7.1/2.0)> at nid 20,22,21,23 and 24,26 on hdaa0
pcm1: <Realtek ALC888 (Front Analog)> at nid 27 and 25 on hdaa0
pcm2: <Realtek ALC888 (Rear Digital)> at nid 30 and 31 on hdaa0
hdacc1: at cad 3 on hdac0
hdaa1: at nid 1 on hdacc1
pcm3: <NVIDIA MCP67 (Digital)> at nid 5 on hdaa1


起動メッセージのそれっぽいところを抜き出した。
これにより次の2つがあるようである。
Realtek ALC888
NVIDIA MCP67

$ cat /dev/sndstat
Installed devices:
pcm0: <Realtek ALC888 (Rear Analog 7.1/2.0)> (play/rec) default
pcm1: <Realtek ALC888 (Front Analog)> (play/rec)
pcm2: <Realtek ALC888 (Rear Digital)> (play/rec)
pcm3: <NVIDIA MCP67 (Digital)> (play)


そこでRealtek ALC888を動くようにしてみる。
調べるとドライバは snd_hda のようである。
有効にするには次のようにする。
$ tail /boot/loader.conf
snd_hda_load="YES"


これで再起動するとドライバが読み込まれて起動する。


文字音がならない時次のコマンドを実行してみる。
sysctl hw.snd.default_unit = 1


ボリュームの調整はmixerコマンドで行う。
引数無しで実行すると現在の設定を表示する。
$ mixer
Mixer vol is currently set to 78:78
Mixer pcm is currently set to 100:100

ボリュームは0から100までの値で左右の値を設定する。
$ mixer vol 100:100

2019/10/29(火)pkgコマンド の 覚書

FreeBSD でバイナリパッケージのインストールにpkgコマンドを使う。

初回のpkgコマンド実行時にこのpkgコマンドをインストールするか聞いてくる。
この問に yes で答えるとインストールが行われ利用できるようになる。

よく利用するであろうコマンドを羅列する。
  • パッケージの検索 : pkg search パッケージ名
  • パッケージのインストール : pkg install パッケージ名
  • インストール済みのパッケージの詳細 : pkg info パッケージ名
  • パッケージに依存しているものを表示 : pkg info -r パッケージ名
  • パッケージが依存しているものを表示 : pkg info -d パッケージ名
  • パッケージでインストールしたファイル一覧 : pkg info -l パッケージ名
  • インストール済みのパッケージを更新 : pkg upgrade
  • 孤立したパッケージを削除 : pkg autoremove
  • キャッシュしているパッケージファイルの削除 : pkg clean
  • パッケージのバージョン一覧 : pkg version
OK キャンセル 確認 その他