LinuxでのUEFI / BIOSの更新

マザーボードやラップトップのメーカーが、LinuxユーザーがWindowsユーザーのように控えめにUEFI/BIOSファームウェアを更新できるとは限らないことはUEFI/BIOSです。 ただし、私が使用しているHP EliteBook 840G1の場合は、少し難しくなります。



これを行うには、次のアーティファクトが必要です。



FAT32 ESP


HP EliteBookノートブックPCには3つのブートモードがあります。 どのモードが選択されているかは、 UEFI/BIOSSystem ConfigurationBoot Mode 。 妥協のない最後のUEFIモードのみが選択されている場合は、このセクションをお読みください。それ以外の場合はスキップできます。



LinuxカーネルEFIブートスタブに関するトピックを注意深く読んだ場合、おそらくディスクパーティションを作成するために何をどのように行うかを知っているでしょう。 gdiskpartedまたはKDE Disk Partitionを使用して、ESPパーティションを作成できます。 これは、既製のセクションがどのように見えるかです。



すべてをFAT32 EFIシステムパーティションに保持するのではなく、通常のLinux FSにLinuxカーネルイメージとブートローダーファイルを保存できるように、ESPパーティションを/boot/efiだけでなく/boot/efiマウントすることをお勧めします。


 (4:549)$ grep efi /etc/fstab /dev/sda4 /boot/efi vfat rw,users,noauto 0 2 

UEFI/BIOS\EFI\BOOT\bootx64.efiを探すことはすでに知っています。ファイルへの絶対パスは/boot/efi/EFI/Boot/Bootx64.efiである必要があります。 OS! これは、システムファームウェアの更新には影響しませんが、オペレーティングシステムをロードできない場合にファームウェアが必要なのはなぜですか? デフォルトではGRUB-2が必要なファイルをコピーしないため、 bootx64.efi 手動でコピーする必要があります。


 (4:569) sudo cp /boot/grub/x86_64-efi/core.efi /boot/efi/EFI/Boot/Bootx64.efi 

準備する


HPのWebサイトから最新のファームウェアを取得し、OSのドロップダウンリストで[Linux]を選択し、次にBIOSをダウンロードし、... Windowsの実行可能ファイルsp64081.exeを見つけます。 いいえ、私たちの目は私たちを失望させませんでした。


 (4:520)$ file sp64081.exe sp64081.exe: PE32 executable (GUI) Intel 80386, for MS Windows 

経験豊富なユーザーは、さまざまなケースがあるので、Windows VMを保持するか、エミュレーター以外のWINEを使用するか、または両方を一緒に使用するような驚きに備えています。 ファイルを解凍するには、WINE機能で十分です。 以下を開始します。



プログラムは無傷のエラーで終了し、予期したものではないことをもう一度思い出させます。



ただし、ファイルが正しく解凍され、それ以上必要なものは何もないので、これはだれにも心配しないでください。


ファイルリスト
 (4:529)$ ls -Rl sp64081/ sp64081/:  18188 drwxr-xr-x 1 root root 356  30 10:52 BIOSUpdate -rw-r--r-- 1 root root 2950466  4 2013 BIOSUpdateEFI.7z -rwxr-xr-x 1 root root 4838072  7 2013 HPBIOSUPDREC.exe -rw-r--r-- 1 root root 883  30 10:52 HPBIOSUPDREC.log -rwxr-xr-x 1 root root 2353368  18 2013 HpqPswd.exe -rwxr-xr-x 1 root root 77824  22 2012 Installer.exe -rw-r--r-- 1 root root 8388608  9 2013 L71_0104.bin -rw-r--r-- 1 root root 1543  24 2013 WSSP64081.rtf sp64081/BIOSUpdate:  2368 -rw-r--r-- 1 root root 259072  5 2012 CryptRSA32.efi -rw-r--r-- 1 root root 443904  5 2012 CryptRSA.efi -rw-r--r-- 1 root root 820784  8 2013 HpBiosUpdate32.efi -rw-r--r-- 1 root root 256  8 2013 HpBiosUpdate32.s09 -rw-r--r-- 1 root root 256  8 2013 HpBiosUpdate32.s12 -rw-r--r-- 1 root root 256  8 2013 HpBiosUpdate32.sig -rw-r--r-- 1 root root 16384  9 2013 HpBiosUpdate.dll -rw-r--r-- 1 root root 850512  8 2013 HpBiosUpdate.efi -rw-r--r-- 1 root root 256  8 2013 HpBiosUpdate.s09 -rw-r--r-- 1 root root 256  8 2013 HpBiosUpdate.s12 -rw-r--r-- 1 root root 256  8 2013 HpBiosUpdate.sig 

このリストから必要なのは、 HpBiosUpdate.efiHpBiosUpdate.s12 、およびHpBiosUpdate.s12 3つのファイルだけです。注意: 指定した場所にファイルを正確にコピーする必要があります。


 (4:534)$ ls -lR /boot/efi/EFI/HP/ /boot/efi/EFI/HP/:  8 drwxr-xr-x 3 root root 4096  22 2015 BIOS drwxr-xr-x 2 root root 4096  21 22:23 BIOSUpdate /boot/efi/EFI/HP/BIOS:  4 drwxr-xr-x 2 root root 4096  21 22:05 New /boot/efi/EFI/HP/BIOS/New:  8192 -rwxr-xr-x 1 root root 8388608  23 13:57 L71_0137.bin /boot/efi/EFI/HP/BIOSUpdate:  840 -rwxr-xr-x 1 root root 850512  8 2013 HpBiosUpdate.efi -rwxr-xr-x 1 root root 3916  21 22:23 HpBiosUpdate.log -rwxr-xr-x 1 root root 256  8 2013 HpBiosUpdate.s12 1291/7720MB 

UEFI/BIOSセットアップメニューを表示するには、電源を入れた後、 EscまたはF10 Escから、 FileUpdate System BIOS Esc Update System BIOS



Accept選択すると、他のカードなしで更新プロセスが開始されます。 バッテリーの価格を明らかに知っているメーカーは、コンピューターの電源がオンになったときにのみファームウェアを更新します。 2〜3分で、プロセスは正常に完了します。


更新 :健全なアイデアに基づいて、コメントにいくつかの追加が必要です。




Source: https://habr.com/ru/post/J306760/


All Articles