2024/09/08(日)LinuxマシンのBIOS更新(ASUS製マザーボード)

LinuxマシンのBIOSを更新しました.
巷を騒がせている,Intel Core iシリーズの13,14世代の不具合(Intel microcode 0x129問題)に対応する更新です.
Windowsマシンであれば,OS上から更新するツールがあるので深く考えなくてもできると思いますが,
Linux向けにそういったツールはないので*1,別の方法を探しました.

ネットを徘徊した結果,最近のASUSマザーは“ASUS EZ Flash 3”という,
USBメモリからBIOS更新をするツールが用意されていることがわかったので,それを使いました.
更新対象としたのは,過去の記事に書いたとおりASUS PRIME H770-PLUS D4というマザーボードです.
ASUSの解説を見ながら,USBメモリの一番上の階層に更新ファイルを置いて,BIOS画面上からEZ Flash 3を実行するだけですんなり完了しました.

適用後にffmpegで動画ファイルエンコード処理をしましたが,以前は温度爆上がり状態だったものが,マイルドになって温度が下がり,ちょっと処理速度が落ちました.
BIOS更新前の挙動は安定していて,かつ思いっきりぶん回している感があって良かったのですが*2
長期的に見ると壊れてしまう可能性は捨てきれないので仕方がないですね.

性能は低下しましたが,それでも十分速いので当面はこのまま使います.
参考・記録として,BIOS更新前後のffmpeg実行中のsensorsコマンドの結果を貼っておきます.

下の通り更新前はCPU温度が100度付近に張り付いていたので,
壊れる上限まで動かして大丈夫なのか少しだけ不安でした.
リテールの空冷ファンだから仕方ないというのと,壊れるような制御はしないだろうと思っていたのですが…….
Before:
ushi@bigowl:~$ sensors
nct6798-isa-0290
Adapter: ISA adapter
in0:                        1.04 V  (min =  +0.00 V, max =  +1.74 V)
in1:                        1.02 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in2:                        3.38 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in3:                        3.28 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in4:                        1.02 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in5:                      200.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
in6:                        1.02 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in7:                        3.38 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in8:                        3.14 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in9:                      528.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
in10:                     600.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
in11:                     816.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
in12:                       1.07 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in13:                       1.02 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in14:                       1.02 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
fan1:                        0 RPM  (min =    0 RPM)
fan2:                     3154 RPM  (min =    0 RPM)
fan4:                        0 RPM  (min =    0 RPM)
fan5:                        0 RPM  (min =    0 RPM)
fan6:                        0 RPM  (min =    0 RPM)
fan7:                        0 RPM  (min =    0 RPM)
SYSTIN:                    +34.0°C  (high = +80.0°C, hyst = +75.0°C)  sensor = thermistor
CPUTIN:                    +72.5°C  (high = +80.0°C, hyst = +75.0°C)  sensor = thermistor
AUXTIN0:                   +25.5°C    sensor = thermistor
AUXTIN1:                   +15.0°C    sensor = thermistor
AUXTIN2:                    -9.0°C    sensor = thermistor
AUXTIN3:                   +25.0°C    sensor = thermistor
PECI Agent 0 Calibration:  +87.5°C  
PCH_CHIP_CPU_MAX_TEMP:      +0.0°C  
PCH_CHIP_TEMP:              +0.0°C  
PCH_CPU_TEMP:               +0.0°C  
intrusion0:               OK
intrusion1:               ALARM
beep_enable:              disabled

acpitz-acpi-0
Adapter: ACPI interface
temp1:        +27.8°C  (crit = +105.0°C)

coretemp-isa-0000
Adapter: ISA adapter
Package id 0: +100.0°C  (high = +80.0°C, crit = +100.0°C)
Core 0:        +98.0°C  (high = +80.0°C, crit = +100.0°C)
Core 4:        +92.0°C  (high = +80.0°C, crit = +100.0°C)
Core 8:        +97.0°C  (high = +80.0°C, crit = +100.0°C)
Core 12:       +96.0°C  (high = +80.0°C, crit = +100.0°C)
Core 16:       +95.0°C  (high = +80.0°C, crit = +100.0°C)
Core 20:      +100.0°C  (high = +80.0°C, crit = +100.0°C)
Core 24:       +85.0°C  (high = +80.0°C, crit = +100.0°C)
Core 25:       +85.0°C  (high = +80.0°C, crit = +100.0°C)
Core 26:       +85.0°C  (high = +80.0°C, crit = +100.0°C)
Core 27:       +85.0°C  (high = +80.0°C, crit = +100.0°C)
Core 28:       +88.0°C  (high = +80.0°C, crit = +100.0°C)
Core 29:       +88.0°C  (high = +80.0°C, crit = +100.0°C)
Core 30:       +88.0°C  (high = +80.0°C, crit = +100.0°C)
Core 31:       +88.0°C  (high = +80.0°C, crit = +100.0°C)

ushi@bigowl:~$
After:

ushi@bigowl:~$  sensors
nct6798-isa-0290
Adapter: ISA adapter
in0:                      880.00 mV (min =  +0.00 V, max =  +1.74 V)
in1:                        1.02 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in2:                        3.38 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in3:                        3.30 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in4:                        1.02 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in5:                      192.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
in6:                        1.01 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in7:                        3.38 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in8:                        3.14 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in9:                      528.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
in10:                     600.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
in11:                     816.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
in12:                       1.07 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in13:                       1.02 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in14:                       1.02 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
fan1:                        0 RPM  (min =    0 RPM)
fan2:                     1841 RPM  (min =    0 RPM)
fan4:                        0 RPM  (min =    0 RPM)
fan5:                        0 RPM  (min =    0 RPM)
fan6:                        0 RPM  (min =    0 RPM)
fan7:                        0 RPM  (min =    0 RPM)
SYSTIN:                    +27.0°C  (high = +80.0°C, hyst = +75.0°C)  sensor = thermistor
CPUTIN:                    +57.0°C  (high = +80.0°C, hyst = +75.0°C)  sensor = thermistor
AUXTIN0:                   +25.5°C    sensor = thermistor
AUXTIN1:                   +15.0°C    sensor = thermistor
AUXTIN2:                   -10.0°C    sensor = thermistor
AUXTIN3:                   +25.0°C    sensor = thermistor
PECI Agent 0 Calibration:  +57.0°C  
PCH_CHIP_CPU_MAX_TEMP:      +0.0°C  
PCH_CHIP_TEMP:              +0.0°C  
PCH_CPU_TEMP:               +0.0°C  
intrusion0:               OK
intrusion1:               ALARM
beep_enable:              disabled

acpitz-acpi-0
Adapter: ACPI interface
temp1:        +27.8°C  (crit = +105.0°C)

coretemp-isa-0000
Adapter: ISA adapter
Package id 0:  +68.0°C  (high = +80.0°C, crit = +100.0°C)
Core 0:        +66.0°C  (high = +80.0°C, crit = +100.0°C)
Core 4:        +66.0°C  (high = +80.0°C, crit = +100.0°C)
Core 8:        +67.0°C  (high = +80.0°C, crit = +100.0°C)
Core 12:       +67.0°C  (high = +80.0°C, crit = +100.0°C)
Core 16:       +66.0°C  (high = +80.0°C, crit = +100.0°C)
Core 20:       +68.0°C  (high = +80.0°C, crit = +100.0°C)
Core 24:       +62.0°C  (high = +80.0°C, crit = +100.0°C)
Core 25:       +62.0°C  (high = +80.0°C, crit = +100.0°C)
Core 26:       +62.0°C  (high = +80.0°C, crit = +100.0°C)
Core 27:       +62.0°C  (high = +80.0°C, crit = +100.0°C)
Core 28:       +62.0°C  (high = +80.0°C, crit = +100.0°C)
Core 29:       +62.0°C  (high = +80.0°C, crit = +100.0°C)
Core 30:       +62.0°C  (high = +80.0°C, crit = +100.0°C)
Core 31:       +62.0°C  (high = +80.0°C, crit = +100.0°C)

ushi@bigowl:~$ 

*1 : 調べた範囲ではいくつかツールはあるようです.ただし,更新が止まっていたり,対応している環境が限定されていて今回は利用できませんでした.例えば,最近のLinuxディストリビューションにはfwupdという管理デーモンがあるようですが,一部メーカー製PCのみ対応のようで,ASUSマザーは対象外でした.

*2 : システムがブルースクリーンに陥ったり,不安定な挙動をしたりということはありませんでした.