16.04でカーネルまたはNVIDIAドライバーの更新を実行すると、initramfsの再構築がトリガーされ、以下の警告が出力されます。
Processing triggers for initramfs-tools (0.122ubuntu8.1) ...
update-initramfs: Generating /boot/initrd.img-4.4.0-34-generic
W: Possible missing firmware /lib/firmware/i915/skl_guc_ver6.bin for module i915_bpo
NVIDIA GeForce 940MとIntel i5-6200Uの統合グラフィックスの2つのグラフィックスチップを搭載したノートブックを持っています。
使用中のデバイスは私のNVIDIAカードです:
$ inxi -G
Graphics: Card-1: Intel Sky Lake Integrated Graphics
Card-2: NVIDIA GM108M [GeForce 940M]
Display Server: X.Org 1.18.3 driver: nvidia Resolution: [email protected]
GLX Renderer: GeForce 940M/PCIe/SSE2 GLX Version: 4.5.0 NVIDIA 367.35
以下はlshw -c video
の出力です。これは、そのドライバーを使用するIntelグラフィックチップに対応しています。
*-display
description: VGA compatible controller
product: Sky Lake Integrated Graphics
vendor: Intel Corporation
physical id: 2
bus info: pci@0000:00:02.0
version: 07
width: 64 bits
clock: 33MHz
capabilities: pciexpress msi pm vga_controller bus_master cap_list rom
configuration: driver=i915_bpo latency=0
resources: irq:125 memory:a2000000-a2ffffff memory:b0000000-bfffffff ioport:5000(size=64)
警告のファイルは存在せず、次のもののみが存在します。
$ ll /lib/firmware/i915/
total 336
drwxr-xr-x 2 root root 4096 Aug 11 13:24 ./
drwxr-xr-x 74 root root 32768 Aug 11 13:24 ../
-rw-r--r-- 1 root root 5872 Jul 21 17:03 bxt_dmc_ver1_04.bin
-rw-r--r-- 1 root root 5872 Jul 21 17:03 bxt_dmc_ver1_05.bin
-rw-r--r-- 1 root root 8380 Jul 21 17:03 bxt_dmc_ver1_06.bin
-rw-r--r-- 1 root root 8380 Jul 21 17:05 bxt_dmc_ver1_07.bin
lrwxrwxrwx 1 root root 19 Jul 21 17:05 bxt_dmc_ver1.bin -> bxt_dmc_ver1_07.bin
-rw-r--r-- 1 root root 8824 Jul 21 17:03 skl_dmc_ver1_23.bin
-rw-r--r-- 1 root root 8928 Jul 12 21:33 skl_dmc_ver1_26.bin
lrwxrwxrwx 1 root root 19 Jul 12 21:33 skl_dmc_ver1.bin -> skl_dmc_ver1_26.bin
-rw-r--r-- 1 root root 109636 Jul 21 17:03 skl_guc_ver1_1059.bin
lrwxrwxrwx 1 root root 21 Jul 21 17:03 skl_guc_ver1.bin -> skl_guc_ver1_1059.bin
-rw-r--r-- 1 root root 128320 Jul 21 17:03 skl_guc_ver4_3.bin
lrwxrwxrwx 1 root root 18 Jul 21 17:03 skl_guc_ver4.bin -> skl_guc_ver4_3.bin
ただし、最新のドライバーパッケージはインストールされているようです。
$ apt-cache policy xserver-xorg-video-intel
xserver-xorg-video-intel:
Installed: 2:2.99.917+git20160325-1ubuntu1
Candidate: 2:2.99.917+git20160325-1ubuntu1
Version table:
*** 2:2.99.917+git20160325-1ubuntu1 500
500 http://ftp.uni-stuttgart.de/ubuntu xenial/main AMD64 Packages
100 /var/lib/dpkg/status
この警告は正確に何を意味し、どのように修正できますか?
ドライバーパッケージはカーネルにやや遅れています。私の場合、SkyLakeプロセッサを持っていないため、ファームウェアがなくても問題ありませんが、あなたの場合は問題になるかもしれません。新しいファームウェアは here から入手できます。
編集1:リンクが変更されたことに注意してください。ただし、読者は新しいリンクで必要なものを見つけることができますが、探しているものを正確に知ることが難しい場合があります。
編集2:この回答は、この回答が最初に書かれてから来た他のいくつかの新しいファームウェア要件に適用できるはずです。例えば:
W: Possible missing firmware /lib/firmware/i915/kbl_dmc_ver1_01.bin for module i915
W: Possible missing firmware /lib/firmware/i915/kbl_guc_ver9_14.bin for module i915
W: Possible missing firmware /lib/firmware/i915/bxt_guc_ver8_7.bin for module i915
編集3:gitを使用しているユーザーの場合、 この回答 もうまく機能します。
質問に答えるために、実行していないプロセッサのドライバを更新する必要はありませんが、実行すると警告が消えることを確認できます。
今日、私はこれらの警告を受け取りました:
update-initramfs: Generating /boot/initrd.img-5.0.1-050001-generic
W: Possible missing firmware /lib/firmware/i915/skl_dmc_ver1_27.bin for module i915
W: Possible missing firmware /lib/firmware/i915/kbl_dmc_ver1_04.bin for module i915
W: Possible missing firmware /lib/firmware/i915/cnl_dmc_ver1_07.bin for module i915
W: Possible missing firmware /lib/firmware/i915/icl_dmc_ver1_07.bin for module i915
W: Possible missing firmware /lib/firmware/i915/kbl_guc_ver9_39.bin for module i915
W: Possible missing firmware /lib/firmware/i915/bxt_guc_ver9_29.bin for module i915
W: Possible missing firmware /lib/firmware/i915/skl_guc_ver9_33.bin for module i915
次のセクションで説明するブロブをダウンロードしてから使用しました。
$ Sudo cp ~/Downloads/*.bin /lib/firmware/i915/
$ Sudo update-initramfs -u
update-initramfs: Generating /boot/initrd.img-5.0.1-050001-generic
現在、私のSky Lake(skl
)ドライバーは最新であり、インターネットで推奨される最新のカーネルパラメーターを試すことができます。将来のプロセッサの警告メッセージKaby Lake(kbl
)、Cannon Lake(cnl
)およびIce Lake(icl
)はなくなって、ストレスが軽減されました。
最近、Intelは新しい ダウンロードページ と新しいWebページレイアウトを作成しました。
ダウンロードファイルは、ファームウェアblobsと呼ばれるようになりました。これは、ファームウェアdrivers。 BinaryLargeOBject(BLOB)。
ドライバーはプロセッサー別にソートされます。
bxt
Broxton、2016年にキャンセル、Cherry Trailプロセッサーの後継kbl
Kabylake、第7世代、たとえばi7-7700skl
Skylake、第6世代、たとえばi7-6700次に、ドライバーはサブグループごとに整理されます(詳細な説明 ここ ):
update-initramfs
またはupdate-grub
で受信しているエラーメッセージを比較して、不足しているドライバーを見つけます。あなたの例では、メッセージは「/lib/firmware/i915/kbl_guc_ver9_14.bin
」であったため、上記のWebページにkbl_guc_ver9_14.bin
というKabylake GuCがありません。新しいものは必要ありません:kbl_guc_ver9_39.bin
過去のバージョンのようなインストールスクリプトはありません。不足しているドライバー(blob)を強調表示してクリックします。次の画面が表示されます。
最初は「16進ダンプ」しか表示されませんが、plainというタイトルのリンクをクリックすると、上記のようにダウンロードウィンドウが表示されます。
「ファイルを保存」をクリックします
Sudo cp
(コピーコマンド)でドライバーをインストールしますダウンロード後、インストールは簡単なSudo cp
(コピーコマンド)であり、複雑なtar
コマンド、または./script_name
インストール手順はありません。
cd ~/Downloads
Sudo cp kbl_guc_ver9_14.bin /lib/firmware/i915
Sudo cp bxt_guc_ver8_7.bin /lib/firmware/i915
重要:上記のkbl_guc_ver9_14.bin
およびbxt_guc_ver8_7.bin
を、ダウンロードしたドライバー名に置き換えてください。
VOILA!新しいドライバーがインストールされます。 Intel i915ドライバーがない場合の以前のインストール方法よりもはるかに簡単です!
ドライバーは既にインストールされています。この長いインストール方法により、BLOBをコピーする前と後の効果がわかります。
$ Sudo updatedb
$ llocate kbl_guc_ver9_14.bin
ACCESS OWNER GROUP SIZE MODIFIED NAME (updatdb last ran: 2018-05-26 12:07:57)
-rw-rw-r-- rick rick 142656 2018-05-26 /home/rick/Downloads/kbl_guc_ver9_14.bin
-rw-rw-r-- rick rick 142656 2017-02-24 /home/rick/Downloads/kbl_guc_ver9_14/kbl_guc_ver9_14.bin
-rw-r--r-- root root 142656 2017-10-26 /lib/firmware/i915/kbl_guc_ver9_14.bin
$ diff /home/rick/Downloads/kbl_guc_ver9_14/kbl_guc_ver9_14.bin /lib/firmware/i915/kbl_guc_ver9_14.bin
# Blank line appears here signifying no differences from previous version
$ Sudo cp /home/rick/Downloads/kbl_guc_ver9_14/kbl_guc_ver9_14.bin /lib/firmware/i915
$ llocate kbl_guc_ver9_14.bin
ACCESS OWNER GROUP SIZE MODIFIED NAME (updatdb last ran: 2018-05-26 12:07:57)
-rw-rw-r-- rick rick 142656 2018-05-26 /home/rick/Downloads/kbl_guc_ver9_14.bin
-rw-rw-r-- rick rick 142656 2017-02-24 /home/rick/Downloads/kbl_guc_ver9_14/kbl_guc_ver9_14.bin
-rw-r--r-- root root 142656 2018-05-26 /lib/firmware/i915/kbl_guc_ver9_14.bin
llocate の代わりに、locateコマンドを使用します。
今日のこのバグレポートによると( W:不足している可能性のあるファームウェア/lib/firmware/i915/kbl_guc_ver9_14.bin for module i915 )Intelは必要なKabylakeおよびBroxtonドライバーの( https://01.org/linuxgraphics/downloads/firmware =)ウェブページ:
Kabylake( GuC-Ver 9.14 )および( DMC-Ver 1.01 の不足しているドライバーをダウンロードします)およびBroxton( GuC-Ver 8.7 )これらは.tar.gz
および.tar.bz2
形式です。
install.sh
スクリプトを実行できますが、これらの手順が最も簡単です。
:~$ cd Downloads
:~/Downloads$ ll *tar*
-rw-rw-r-- 1 rick rick 69329 Feb 14 21:05 bxtgucver87.tar.gz
-rw-rw-r-- 1 rick rick 4338 Feb 14 21:06 kbldmcver101.tar.bz2
-rw-rw-r-- 1 rick rick 70402 Feb 14 21:06 kblgucver914.tar.gz
:~/Downloads$ tar -zxvf bxtgucver87.tar.gz
firmware/bxt/guc/bxt_guc_ver8_7/
firmware/bxt/guc/bxt_guc_ver8_7/install.sh
firmware/bxt/guc/bxt_guc_ver8_7/ReleaseNotes.txt
firmware/bxt/guc/bxt_guc_ver8_7/bxt_guc_ver8_7.bin
:~/Downloads$ tar -xjvf kbldmcver101.tar.bz2
kbl_dmc_ver1_01/
kbl_dmc_ver1_01/kbl_dmc_ver1_01.bin
kbl_dmc_ver1_01/install.sh
kbl_dmc_ver1_01/ReleaseNotes.txt
:~/Downloads$ tar -zxvf kblgucver914.tar.gz
firmware/kbl/guc/kbl_guc_ver9_14/
firmware/kbl/guc/kbl_guc_ver9_14/install.sh
firmware/kbl/guc/kbl_guc_ver9_14/kbl_guc_ver9_14.bin
firmware/kbl/guc/kbl_guc_ver9_14/ReleaseNotes.txt
:~/Downloads$ Sudo cp -t /lib/firmware/i915/ firmware/bxt/guc/bxt_guc_ver8_7/bxt_guc_ver8_7.bin kbl_dmc_ver1_01/kbl_dmc_ver1_01.bin firmware/kbl/guc/kbl_guc_ver9_14/kbl_guc_ver9_14.bin
:~/Downloads$ Sudo update-initramfs -u
update-initramfs: Generating /boot/initrd.img-4.9.9-040909-generic
エラー(警告)メッセージが消えていることに注意してください!
:~/Downloads$ rm -r firmware kbl_dmc_ver1_01 *.tar.*
カーネル4.6.3、4.7.1、4.7.2、4.7.3および4.7.5のi915ドライバーが見つからないという2つの警告メッセージがありました。私はそれらを無視しましたが、私のHD4000 Intel Integrated Graphicsで問題はありませんでした。 NvidiaとNouvaeuについても同じことが言えるといいのですが。
リンクの回答の1つにあるように、IntelのWebサイトにアクセスして、最新のLinux Graphicsドライバーを入手できます: intel-linux-graphics-firmwares 。しかし、数週間前にそのサイトを読んだとき、さまざまなシナリオでうまくいかない可能性のあるすべてのことを心配していたので、オプトアウトしました。
9月24日から4.8リリース候補6をインストールしましたか?これが、Ubuntuでの最新版だと思います。答える必要はありませんが、なぜ4.7.5ではなく4.8を使用したのか、つまり、問題を修正するためにどのような違いが必要なのか興味があります。
カーネルバージョン4.8.1(実際のバージョンであり、リリース候補ではない)を1週間以上使用しており、問題なく動作しています。ただし、これはUbuntu 16.04の下です。 Ubuntu 16.10は10月13日にリリースされ、カーネルバージョン4.8.0を使用しています。
この答えを更新し続けることは私の計画ではありませんが、4.8リリース候補には問題があるかもしれないという推論を休ませたいと思いました。実際のバージョンはそうではありません。
現在、カーネルバージョン4.9.5メインラインバージョンを実行していますが、この時点でUbuntu 16.04はカーネルを4.4.0-59に更新しました。 IntelはIntel Graphics for Linuxドライバーのリンクを変更し、上記の新しいリンクを更新しました。
カーネルバージョン> 4.8(Ubuntu 16.10およびUbuntu 17.04)のときにSudo update-initramfs -u
によって生成される警告メッセージに関する質問はまだ残っています。
W: Possible missing firmware /lib/firmware/i915/kbl_dmc_ver1_01.bin for module i915
W: Possible missing firmware /lib/firmware/i915/kbl_guc_ver9_14.bin for module i915
W: Possible missing firmware /lib/firmware/i915/bxt_guc_ver8_7.bin for module i915
バグレポートに記載されているように( bugs.launchpad.net-linux firmware bug )ドライバーは単に存在せず、「kaby lake」と呼ばれる将来のチップがリリースされるまで存在しません。
警告メッセージを消すために、次のことを行いました。
$ Sudo cp Assembly/hello /lib/firmware/i915/kbl_dmc_ver1_01.bin
$ Sudo cp Assembly/hello /lib/firmware/i915/kbl_guc_ver9_14.bin
$ Sudo cp Assembly/hello /lib/firmware/i915/bxt_guc_ver8_7.bin
$ Sudo update-initramfs -u
update-initramfs: Generating /boot/initrd.img-4.9.5-040905-generic
出来上がり!これ以上の警告メッセージはありません。
プログラム「hello」は、「Hello World!」という504バイトのアセンブラープログラムです。エラーメッセージに示されているファームウェアバイナリに、小さな実行可能ファイルをコピーできます。 Intelが最終的にそれらをリリースすると、ソフトウェアアップデータはそれらを実際のバージョンに置き換えます。
この画面を表示する新しいIntel Webサイト( 1.org-Linux Graphics Downloads )内をナビゲートする方法についてコメントを求められました。
検索フィールドにUbuntu 16.04
と入力し、Filter
ボタンをクリックします。
Ubuntu 16.10の場合、最初の結果を選択します。この場合、Ubuntu 16.04で2番目の結果INTEL GRAPHICS UPDATE TOOL FOR LINUX* OS V2.0.2
を選択すると、次の画面が表示されます。
私の場合、intel-graphics-update-tool_2.0.2_AMD64.deb
ファイルを~/Downloads
ディレクトリにダウンロードしたUbuntu 16.04 64ビットを選択しました。
次のステップは、ターミナルを開いて次を使用することです。
cd Downloads
Sudo dpkg -i intel*.deb
注:Intelはancientsttfフォントを使用し、システムにない場合、インストールは失敗します。この時点で、使用する必要があります:
Sudo apt -f install
Sudo apt update
Sudo apt upgrade
次の画面に示すように、Intel Graphics for Linux Updater
ツールを実行できます。
apt-get update
中に、次のような警告/エラーメッセージが表示されます。
W: GPG error: https://download.01.org/gfx/ubuntu/16.04/main xenial InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 56A3DEF863961D39
E: The repository 'https://download.01.org/gfx/ubuntu/16.04/main xenial InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
次を使用してIntelの署名を追加する必要があります。
wget --no-check-certificate https://download.01.org/gfx/RPM-GPG-KEY-ilg-4 -O - | \
Sudo apt-key add -
次に、Ubuntuで更新します。
Sudo apt update
Sudo apt upgrade
Ubuntu Gnome 16.04「ソフトウェア」アプリ(ネイティブパッケージマネージャー)からカーネルを更新し、更新中にクラッシュしたため、同様の問題に直面しました。
そのため、linux-imageの生成に失敗したため、Ubuntuの再起動が禁止されました。
その時点からそれを解決するために、私は次のことをしました:
Shift
を押してgrubメニューに入ります。*4.4.0-21-generic
でEnter
を押します。*4.4.0-59-generic
(Synapticパッケージマネージャーを使用しました);KabyLake kbl DMC - Ver 1.01
;*4.4.0-59-generic
(私の場合)または最新の完全な汎用Linuxカーネル用のlinux-generic
を再度インストールします。成功!カーネルは最新であり、すべてのファームウェアが正常に動作しています!
宜しくお願いします!
Debian(私はDebian GNU/Linuxバスターを持っています)を実行している場合は、次の手順に従ってください。
フォルダーを作成します。
Sudo mkdir -p /lib/firmware/i915
すべてのファイルを https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/i915 からこのフォルダーにコピーします
Initramfs-toolsパッケージを再構成します。
Sudo dpkg-reconfigure initramfs-tools