kmod-nvidiaドライバの使用を開始する方法

kmod-nvidiaドライバの使用を開始する方法

NVIDIA GeForce GTX 660 Tiグラフィックカードを搭載したコンピュータにFedora 21をインストールしました。最初にシステムをインストールしたときに、kmod-nvidiaRPMFusionからパッケージをインストールするまでシステムを実行する際に多くの問題がありました。それ以来、オペレーティングシステム自体に対する私の経験はあまりありませんでした。

ただし、カーネル選択画面と起動時に復号化パスワードの入力を求められた場合は、デフォルトのテキストインターフェイスを使用しているため、デフォルトのグラフィックドライバを使用していることがわかります(テーマに表示されるプレーンテキストボックスと比較)。plymouth)。また、復号化フレーズを入力すると、Fedoraバルーンの代わりに棒グラフがロードされます。

これは明らかに大きな問題ではありませんが、私のシステムに有能なドライバがあることを知っていますが、システムに最初にロードする方法がわからないので、しばらく気になりました。

最初にシステムを診断して修理するときは、次のようにしました。このガイド真でなければ偽です。

助けてくれてありがとう!

ベストアンサー1

以下は、rpmfusion nonfreeからkmod-nvidiaソフトウェアをインポートし、Secure Boot / UEFI用に設定されたコンピュータでFedora 26で使用する方法です。 nvidiaカーネルモジュールに対してmodprobeを実行すると、「必要なキーを使用できません」というエラーが発生します。

UEFIセキュアブートを有効にして独自のnvidiaドライバを実行することは可能であり、それほど難しくありません。

  • rpmfusion無料と非フリーのストレージをインストールした後、kmod-nvidiaをインストールします。dnf install kmod-nvidia
  • opensslを設定し、次のコマンドを実行して自己署名証明書とキーを生成します。

    cd /root #or somewhere reasonably safe
    cat > mokutil-openssl.conf << XYZZY
    [ req ]
    default_bits = 4096
    distinguished_name = req_distinguished_name
    string_mask = utf8only
    x509_extensions = exts
    prompt = no
    
    [ req_distinguished_name ]
    O = username
    CN = username
    emailAddress = [email protected]
    
    [ exts ]
    basicConstraints=critical,CA:FALSE
    keyUsage=digitalSignature
    subjectKeyIdentifier=hash
    authorityKeyIdentifier=keyid
    XYZZY
    
    # create the certificate & key
    openssl req -x509 -new -nodes -utf8 -sha256 -days 7300 -config ./mokutil-openssl.conf -outform DER -out mokutil.der -keyout mokutil.key -batch
    # to verify the certificate:
    openssl x509 -inform DER -in ./mokutil.der -noout -text |less
    
  • 次に、提供されたユーティリティを使用して新しいnvidiaカーネルモジュールに署名します。

    cd /lib/modules/$(uname -r)/extra/nvidia
    /usr/src/kernels/$(uname -r)/scripts/sign-file sha256 /root/mokutil.key /root/mokutil.der nvidia.ko
    /usr/src/kernels/$(uname -r)/scripts/sign-file sha256 /root/mokutil.key /root/mokutil.der nvidia-drm.ko 
    /usr/src/kernels/$(uname -r)/scripts/sign-file sha256 /root/mokutil.key /root/mokutil.der nvidia-modeset.ko 
    /usr/src/kernels/$(uname -r)/scripts/sign-file sha256 /root/mokutil.key /root/mokutil.der nvidia-uvm.ko 
    
  • 信頼できるようにするには、証明書をBIOSに追加する必要があります。

    # first, we stage the new certificate to be added to the BIOS on 
    # the next reboot.  You will be prompted to enter a password when
    # running the utility; the BIOS will ask for the same password on 
    # reboot.
    mokutil --import ./mokutil.der
    
    # This command shows whether or not mokutil was able to stage the
    # new certificate for import into the BIOS.  If the process is 
    # unsuccessful, you may have to enter the BIOS and import the key
    # manually from its interface, perhaps from a USB stick.  If this
    # command returns your certificate, you should reboot.  The BIOS 
    # will prompt you to take action and enter in the password you
    # input in the previous step.
    mokutil -N
    
    # This command shows which certificates are trusted by the BIOS.
    # There will be one installed by the manufacturer and if 
    mokutil --list-enrolled 
    
  • すべてが順調に進んだ場合は、コンピュータに新しいモジュールがロードされた可能性があります。確認できますlsmod |grep nvidia

  • 新しいカーネルをインストールするときは、モジュールに再署名する必要があります。

ほとんどの情報を見つけました。ここただし、署名ユーティリティはPerlを使用して呼び出す必要はありません。また、kmod-nvidiaビルドプロセスを通じて出力された4つのモジュールすべてに署名しました。

おすすめ記事