kledgeb UbuntuやLinuxの最新情報を紹介

UEFI その1 - UEFIとセキュアブートについて・UEFI環境でOSを起動するOSローダー・UEFI対応PCとBIOS対応PC

UEFI

  UEFIとは、Unified Extensible Firmware Interfaceの略で、従来のBIOSを置き換える新しい仕組みです。


  UEFIも含めEFIと表現されることもありますが、EFIはUEFIの前身です。
  ここではUEFIに限って記述します。

  BIOSとは

    BIOSはPCの電源を入れた時に一番最初に実行されるソフトウェアです。
    BIOSは、ハードウェアのチェックや初期化を行い、HDDに格納されたOSを実行します。
    (正確には処理を移譲します。)
    BIOSはハードウェアと密接して動作するソフトウェアであり、マザーボードなどの基板上に実装されています。

    このBIOSが何らかの理由で壊れると、ハードウェアに問題がなくてもOSを起動することができないどころか、何も出来なくなります。

    BIOSとOSは切り離されており、OSがBIOSを同梱することはありません。
    ただしOSからBIOSの機能にアクセスしたり、連携して機能を提供することはあります。

  BIOS登場から数十年

    BIOSが登場してからもう30〜40年ほど経ちます。
    BIOSはハードウェアの進化に合わせて拡張され、長年使われてきました。

    しかしBIOSの拡張に限界が見えてきました。
    例えば、BIOSには以下のような制限があります。

  • 16bit プロセッサーモードで動作
  • 1MBのアドレス空間
  • PC/ATアーキテクチャーへの依存

    ハードウェアの進化に合わせてBIOSを拡張することが困難になってきました。

  EFIとUEFI

    この状況を改善し新しい仕組みを作ろう、というのがEFIです。
    モダンなOSとモダンなハードウェア、それらの組み合わせに合うように作られたのが、EFIです。
    EFIはIntel等によって作られたものですが、その後UEFIとして標準化されました。

  BIOSからUEFIへ

    BIOSからUEFIへの移行が進んでおり、ここ数年発売されているPCの多くはUEFIに対応しています。

セキュアブート

  セキュアブートは、UEFI上で提供される機能の一つです。
  従ってBIOSでは無関係です。

  セキュアブートの機能

    セキュアブートは、利用できるソフトウェア(OSやドライバーなど)を制限する仕組みです。
    セキュアブートが有効な環境では、署名されたソフトウェアのみ利用することができます。
    これにより悪意あるソフトウェアの実行を妨げ、PCをそのようなソフトウェアから保護します。

  データベース 

    セキュアブートでは、UEFIに信頼できるソフトウェアのデータベース(一覧)があり、そのデータベースと署名を照合することで、実行しようとしているソフトウェアが信頼できるかどうか判断します。

    もしデータベースに該当するソフトウェアが存在しない場合、そのソフトウェアの実行を中止します。

  Linuxディストリビューションとの関係

    データベースにLinuxディストリビューションが登録されていないPCでは、Linuxを起動することはできません。
    データベースは、ハードウェア製造メーカー側で作成します。
    中には出荷後にデータベースを変更できるUEFIが存在するかもしれません。

    多くのハードウェアはWindowの利用を前提、もしくは配慮して作られます。
    そうなると、Linuxディストリビューションは利用できないという事になります。

    このような状況の中どう対応するかは、Linuxディストリビューションによって異なります。
    Windows(Microsoft)と同じ署名を使うか、データベースにLinuxディストリビューション用の設定を追加してもらうか、方針は様々です。 

UEFI環境でOSを起動するOSローダー

  UEFI環境でOSを起動するソフトウェアを「OSローダー」と表現します。
  UEFIでは、特定のフォルダーにあるソフトウェアを、「OSローダー」として認識します。

  OSはこの「OSローダー」 経由で起動されます。

  Ubuntuのライブメディアにもこの「OSローダー」が存在しており、UEFIからUbuntuを起動することができます。


  「OSローダー」はOSの種類に関わらず、必ず「efi」という拡張子を持ちます。

UEFI対応PCとBIOS対応PC

  PCにUEFIが搭載され始めたのは、ここ5,6年ぐらいのことでしょうか。
  セキュアブートが採用され始めたのは、ここ数年です。
  現状利用されているPCには、以下のような組み合わせが存在します。

  1. BIOS
  2. UEFI
  3. UEFI + セキュアブート

  PCによっては、BIOSとUEFIが切り替えられるものも存在します。
  同様にPCによっては、セキュアブートのオン・オフを切り替えられるものも存在します。

  自分が利用しているPCがどの組み合わせに該当するかは、PCの説明書を参考にしてください。


UEFI
スポンサー
コメント
コメントポリシー
コメントをする前に UbuntuのCode of Conduct(CoC/行動規範) を確認し、CoCに沿ったコメントをお願いします。
コメントの使い方は、コメントの使い方を参照してください。
同一カテゴリーの記事
SNS
人気の記事
  • Ubuntu 22.04 その98 - 入力ソースとキーボートレイアウトと日本語入力のカスタマイズ
    入力ソースとキーボートレイアウトと日本語入力 「Ubuntu」ではユーザーが利用しているキーボードレイアウトや日本語入力のカスタマイズが可能です。
  • Ubuntu 22.04 その64 - Windows/Linux/macOSでUbuntu 22.04 LTSのライブUSBメモリーを作るには
    Ubuntu 22.04 LTSのライブUSBメモリーを作る方法 Windows/Linux/macOSでPC向け「Ubuntu 22.04 LTS」のライブUSBメモリーを作る方法を紹介します。
  • Ubuntu 22.04 LTSのインストール その5 - UEFI環境でパーティションの作成と構成 〜 ブートローダーのインストール先の選択
    UEFI環境でパーティションの作成と構成を行う UEFI環境でパーティションの作成と構成を行います。
  • Ubuntu 22.04 その120 - UbuntuのブートローダーをBoot Repairで修復するには・Ubuntuが起動しないトラブルを解決
    UbuntuのブートローダーをBoot Repairで修復するには 「Boot Repair」はOSのブートローダーに起因するOSが起動しない問題を簡単に解決してくれるアプリです。
  • VirtualBox その125 - ゲストOSのUbuntuにLinux Guest Additionsをインストールするには
    ゲストOSのUbuntuにLinux Guest Additionsをインストールするには 仮想マシンにインストールしたゲストOSの「Ubuntu」に、「Linux Guest Additions」をインストールする方法です。
  • Linux Mint その222 - Linux Mint 21.2の新機能と変更点
    Linux Mint 21.2の新機能と変更点 リリースノートから「Linux Mint 21.2」の新機能と変更点を紹介します。
  • Ubuntu 22.04 その107 - ローカルネットワーク上でフォルダーやファイルを共有するには
    ローカルネットワーク上でフォルダーやファイルを共有するには 「ファイル(Nautilus)」アプリはファイルマネージャーです。 「ファイル」はローカルネットワーク上でフォルダーやファイルを共有する仕組みを提供しており、簡単に他のPCとフォルダーやファイルをやりとりできます。
  • Ubuntu 22.04 その99 - 日本語入力(Mozc)の設定をカスタマイズして作業効率を上げよう
    日本語入力(Mozc)の設定をカスタマイズするには 「Ubuntu」では日本語入力に「Mozc」を採用しています。
  • Ubuntu 22.04 LTSのインストール その1 - インストールの準備 〜 ライブメディアの作成とUbuntuの起動
    Ubuntu 22.04 LTSのインストールの準備 ここではPCに「Ubuntu 22.04 LTS(Ubuntu Desktop)」をインストール方法を紹介します。 まずはインストールの準備からです。
  • Ubuntu 20.04 その74 - UbuntuとUEFIセキュアブート
    UbuntuとUEFIセキュアブート 「Ubuntu」と「UEFIセキュアブート」に関するお話です。
記事のピックアップ
オプション