コマンドラインからOsIndications efi変数を書き込む/編集/更新する方法は?
超高速ブート(POST中にキーボードドライバーが読み込まれない)を使用しているときにUEFIファームウェアセットアップユーティリティを起動する必要がある場合は、 "Os Indications" efi変数に書き込みます。私のOSはUbuntu 14.04カーネル3.13.0-35-genericです。 OsIndications 変数はUINT64ビットマスクを返します OsIndicationsSupported 変数はUINT64ビットマスクを返します EFI_OS_INDICATIONS_BOOT_TO_FW_UIファームウェアは、ファームウェアのユーザーインタフェースで停止するOSの要求をサポートしている場合のビットは、ファームウェアによってOsIndicationsSupported変数に設定することができます。 EFI_OS_INDICATIONS_BOOT_TO_FW_UIOSは、次の起動時にファームウェアのユーザー・インターフェースで停止するファームウェアのために望む場合ビットは、OsIndications変数にOSによって設定することができます。 EFI_OS_INDICATIONS_BOOT_TO_FW_UI= 0x0000000000000001- UEFI仕様2.3.1Cのページ312 私のファームウェアには、次回の起動時にファームウェアセットアップユーティリティに入る機能があります。 $ hexdump /sys/firmware/efi/vars/OsIndicationsSupported-8be4df61-93ca-11d2-aa0d-00e098032b8c/data 0000000 0001 0000 0000 0000 0000008 私は上の新しい変数を作成することができます/sys/firmware/efi/efivars使用して $ printf\x07\x00\x00\x00\x00" > myvar-12345678-1234-1234-1234-123456789abc ただし、efi変数に書き込むと、次のようなOsIndications-8be4df61-93ca-11d2-aa0d-00e098032b8c結果になりますwrite error: Invalid argument。 新しいefivarfsの使用 # printf "x00\x00\x00\x01" > /sys/firmware/efi/efivars/OsIndications-8be4df61-93ca-11d2-aa0d-00e098032b8c -bash: printf: write error: Invalid argument # printf "x00\x00\x00\x01" > /sys/firmware/efi/efivars/OsIndications-8be4df61-93ca-11d2-aa0d-00e098032b8c …