「Clover」の版間の差分
(同期) |
(同期) |
||
(2人の利用者による、間の2版が非表示) | |||
1行目: | 1行目: | ||
[[Category:ブートローダー]] |
[[Category:ブートローダー]] |
||
[[en:Clover]] |
[[en:Clover]] |
||
+ | [[pt:Clover]] |
||
[[zh-hans:Clover]] |
[[zh-hans:Clover]] |
||
{{Related articles start}} |
{{Related articles start}} |
||
{{Related|Arch ブートプロセス}} |
{{Related|Arch ブートプロセス}} |
||
− | {{Related|ブートローダー}} |
||
{{Related|Unified Extensible Firmware Interface}} |
{{Related|Unified Extensible Firmware Interface}} |
||
{{Related|EFISTUB}} |
{{Related|EFISTUB}} |
||
{{Related articles end}} |
{{Related articles end}} |
||
+ | [https://github.com/CloverHackyColor/CloverBootloader Clover EFI] は、OS X ([[Wikipedia:en:Hackintosh|Hackintosh]])、Windows、そして Linux をレガシーモードや UEFI モードでブートするために開発されているブートローダです。 |
||
− | Clover は Hackintosh を起動して他のオペレーティングシステムとのマルチブートを実現するために開発された UEFI ブートローダーです。[[EFISTUB]] をサポートする Linux カーネルを起動するのに使うことができます。他のブートローダーと比べて Clover には今日広く使われているワイドスクリーンでのネイティブ解像度の GUI をサポートしているという利点があります。 |
||
+ | Clover の主な長所は: |
||
− | == インストール == |
||
+ | * レガシー BIOS システムで UEFI をエミュレートできる |
||
+ | * [[EFISTUB]] をサポートする Linux カーネルをブートできる |
||
+ | * 今日一般的に使用されている大きなスクリーンでネイティブな解像度 GUI をサポートする |
||
+ | * 簡単に使える |
||
+ | * 簡単にカスタマイズ可能 |
||
+ | == インストール == |
||
− | [http://sourceforge.net/projects/cloverefiboot/files/Bootable_ISO/ こちら] から Clover のブータブル ISO をダウンロードしてください。 |
||
+ | Clover は BIOS システム上で UEFI 環境をエミュレートできるので、UEFI システムと BIOS システムでの手順は似ています。 |
||
− | 圧縮ファイルを解凍して {{ic|Clover-*-X64.iso}} ファイルをマウントします。 |
||
+ | === UEFI システム === |
||
− | {{ic|EFI}} フォルダの中身を全て [[EFI システムパーティション|UEFI パーティション]]にコピーしてください。 |
||
+ | |||
+ | [[EFI システムパーティション]]を {{ic|/boot}} にマウントしてください。これは、UEFI から [[EFISTUB]] カーネルを直接ブートする場合に推奨される方法です。 |
||
+ | |||
+ | 初期 RAM ディスク環境を [[mkinitcpio]] で生成してください。 |
||
+ | |||
+ | Clover ブータブル ISO を[https://github.com/CloverHackyColor/CloverBootloader/releases ここ]からダウンロードしてください。 |
||
+ | |||
+ | {{ic|Clover-*-X64.iso.7z}} アーカイブを展開し、{{ic|Clover-*-X64.iso}} ファイルを見つけて、その ISO を {{ic|/mnt/iso}} などのようなディレクトリにマウントしてください。Windows と Mac OS と異なり、Linux では すべてのファイルとフォルダの名前が小文字で表示されることに注意してください。 |
||
+ | |||
+ | {{ic|/mnt/iso/efi}} フォルダ全体を [[EFI システムパーティション]] にコピーしてください。{{ic|/boot}} のディレクトリツリーは以下のようになるはずです: |
||
+ | |||
+ | /boot/EFI |
||
+ | /boot/EFI/BOOT |
||
+ | /boot/EFI/CLOVER |
||
+ | /boot/initramfs-linux-fallback.img |
||
+ | /boot/initramfs-linux.img |
||
+ | /boot/vmlinuz-linux |
||
+ | |||
+ | === BIOS システム === |
||
+ | |||
+ | {{Note|以下はレガシー BIOS ですが、[[パーティショニング#UEFI/GPT レイアウト例|UEFI/GPT]] パーティショニングレイアウトが必要です。唯一の違いは、[[EFI システムパーティション]]に "Legacy BIOS bootable" フラグを設定する必要があるということです。}} |
||
+ | |||
+ | [https://github.com/CloverHackyColor/CloverBootloader/releases Clover Bootable ISO] をダウンロードしてください。 |
||
+ | |||
+ | {{ic|Clover-*-X64.iso.7z}} アーカイブを展開し、{{ic|Clover-*-X64.iso}} ファイルを見つけて、その ISO を {{ic|/mnt/iso}} などのようなディレクトリにマウントしてください。 |
||
+ | |||
+ | Clover コードを現在の Master と ''P''artition ''B''oot ''R''ecords にマージしてください (ESP が {{ic|/dev/sda}} のパーティション 1 であると仮定しています。必要に応じて変更してください): |
||
+ | |||
+ | {{bc|1= |
||
+ | # dd if=/dev/sda1 of=/tmp/''original_PBR'' bs=512 count=1 conv=notrunc |
||
+ | # cp /mnt/iso/usr/standalone/i386/boot1f32 /tmp/''new_PBR'' |
||
+ | # dd if=/tmp/''original_PBR'' of=/tmp/''new_PBR'' skip=3 seek=3 bs=1 count=87 conv=notrunc |
||
+ | # dd if=/tmp/''new_PBR'' of=/dev/sda1 bs=512 count=1 conv=notrunc |
||
+ | # dd if=/mnt/iso/usr/standalone/i386/boot0ss of=/dev/sda bs=440 count=1 conv=notrunc |
||
+ | }} |
||
+ | |||
+ | [[EFI システムパーティション]]を {{ic|/boot}} にマウントしてください。 |
||
+ | |||
+ | {{ic|/mnt/iso/efi}} フォルダ全体を [[EFI システムパーティション]]にコピーしてください。 |
||
+ | |||
+ | レガシーなブートローダを [[EFI システムパーティション]]にコピーしてください: |
||
+ | |||
+ | {{bc|# cp /mnt/iso/usr/standalone/i386/x64/boot6 /boot/boot}} |
||
== 設定 == |
== 設定 == |
||
− | 設定は |
+ | 設定は [[EFI システムパーティション]]にある {{ic|EFI/CLOVER}} 下の XML ファイル {{ic|config.plist}} で行います。 |
− | {{ic|config.plist}} を簡単に編集できるツールが存在します: [ |
+ | {{ic|config.plist}} を任意の OS で簡単に編集できるツールが存在します: [https://cloudclovereditor.altervista.org/cce/index.php Cloud Clover Editor (CCE)] |
+ | それぞれのキーの意味は、[https://sourceforge.net/p/cloverefiboot/wiki/GUI/#custom-entries カスタムエントリの wiki] を参照してください。{{ic|Volume}} キーは、EFI システムパーティションの [[PARTUUID]] である必要があり、大文字でなければなりません。{{ic|Arguments}} の最小 initramfs {{ic|initramfs-linux.img}} と {{ic|Path}} の Linux カーネル実行ファイル {{ic|vmlinuz-linux}} は、EFI システムパーティションからの相対パスです。逆スラッシュは EFI 標準にしたがって使用する必要があります。{{ic|Arguments}} の他の引数については、[[EFISTUB]] と [[カーネルパラメータ#パラメータ一覧]] を参照してください。 |
||
− | 設定の詳細は [http://clover-wiki.zetam.org/Home wiki] を参照してください。Linux カーネル EFISTUB のブートエントリとネイティブ解像度の GUI を使う場合、以下のコードを適当な場所に記述します: |
||
+ | 以下の例では、initramfs とカーネルのファイルが EFI システムパーティションのルートに置かれているとします (つまり、{{ic|efi}} ディレクトリと同じ階層にある)。EFI システムパーティションは {{ic|/boot}} にマウントされているとします。 |
||
− | <key>GUI</key> |
||
+ | |||
− | <dict> |
||
+ | {{hc|/boot/EFI/CLOVER/config.plist|2= |
||
+ | <?xml version="1.0" encoding="UTF-8"?> |
||
+ | <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "https://www.apple.com/DTDs/PropertyList-1.0.dtd"> |
||
+ | <plist version="1.0"> |
||
+ | <dict> |
||
+ | <key>GUI</key> |
||
+ | <dict> |
||
<key>Custom</key> |
<key>Custom</key> |
||
<dict> |
<dict> |
||
− | + | <key>Entries</key> |
|
− | + | <array> |
|
− | + | <dict> |
|
− | + | <key>Arguments</key> |
|
− | + | <string>initrd=\initramfs-linux.img root=PARTUUID=d5d0fceb-c58e-c745-a7ff-f2f1b2824e66 rw add_efi_memmap</string> |
|
− | + | <key>Path</key> |
|
− | + | <string>\vmlinuz-linux</string> |
|
− | + | <key>Title</key> |
|
− | + | <string>Arch Linux</string> |
|
− | + | <key>Type</key> |
|
− | + | <string>Linux</string> |
|
− | + | <key>Volume</key> |
|
+ | <string>33BA6C23-4772-294D-9053-72A49FCAEF39</string> |
||
− | <false/> |
||
− | + | <key>VolumeType</key> |
|
− | + | <string>Internal</string> |
|
− | + | </dict> |
|
− | + | <dict> |
|
− | + | <key>Arguments</key> |
|
+ | <string>initrd=\initramfs-linux-fallback.img root=PARTUUID=d5d0fceb-c58e-c745-a7ff-f2f1b2824e66 rw debug add_efi_memmap</string> |
||
− | <string>EFI</string> |
||
− | + | <key>Path</key> |
|
− | + | <string>\vmlinuz-linux</string> |
|
− | </ |
+ | <key>Title</key> |
− | </ |
+ | <string>Arch Linux Rescue Mode</string> |
+ | <key>Type</key> |
||
+ | <string>Linux</string> |
||
+ | <key>Volume</key> |
||
+ | <string>33BA6C23-4772-294D-9053-72A49FCAEF39</string> |
||
+ | <key>VolumeType</key> |
||
+ | <string>Internal</string> |
||
+ | </dict> |
||
+ | </array> |
||
</dict> |
</dict> |
||
+ | </dict> |
||
− | <key>ScreenResolution</key> |
||
+ | </dict> |
||
− | <string>2560x1080</string> |
||
+ | </plist>}} |
||
− | <key>Theme</key> |
||
+ | |||
− | <string>bootcamp</string> |
||
+ | === systemd-boot をチェインロードする === |
||
− | </dict> |
||
+ | |||
+ | [https://uapi-group.org/specifications/specs/boot_loader_specification/ The Boot Loader Specification] に準拠している、BIOS システム用のブートローダが必要である場合、systemd-boot を BIOS システムで使用することができます。以下は、[[Clover]] に systemd-boot をチェインロードさせるために必要な設定ファイルです: |
||
+ | |||
+ | {{hc|/boot/EFI/CLOVER/config.plist|2= |
||
+ | <?xml version="1.0" encoding="UTF-8"?> |
||
+ | <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "https://www.apple.com/DTDs/PropertyList-1.0.dtd"> |
||
+ | <plist version="1.0"> |
||
+ | <dict> |
||
+ | <key>Boot</key> |
||
+ | <dict> |
||
+ | <key>DefaultVolume</key> |
||
+ | <string>EFI</string> |
||
+ | <key>DefaultLoader</key> |
||
+ | <string>\EFI\systemd\systemd-bootx64.efi</string> |
||
+ | <key>Fast</key> |
||
+ | <true/> |
||
+ | </dict> |
||
+ | <key>GUI</key> |
||
+ | <dict> |
||
+ | <key>Custom</key> |
||
+ | <dict> |
||
+ | <key>Entries</key> |
||
+ | <array> |
||
+ | <dict> |
||
+ | <key>Hidden</key> |
||
+ | <false/> |
||
+ | <key>Disabled</key> |
||
+ | <false/> |
||
+ | <key>Image</key> |
||
+ | <string>os_arch</string> |
||
+ | <key>Volume</key> |
||
+ | <string>EFI</string> |
||
+ | <key>Path</key> |
||
+ | <string>\EFI\systemd\systemd-bootx64.efi</string> |
||
+ | <key>Title</key> |
||
+ | <string>Arch Linux</string> |
||
+ | <key>Type</key> |
||
+ | <string>Linux</string> |
||
+ | </dict> |
||
+ | </array> |
||
+ | </dict> |
||
+ | </dict> |
||
+ | </dict> |
||
+ | </plist>}} |
||
== 参照 == |
== 参照 == |
||
− | * [ |
+ | * [https://sourceforge.net/projects/cloverefiboot/ プロジェクトのホームページ] |
− | * [https:// |
+ | * [https://sourceforge.net/p/cloverefiboot/wiki/Home/ Clover Wiki] |
+ | |||
+ | {{TranslationStatus|Clover|2023-07-27|777096}} |
2023年7月27日 (木) 16:42時点における最新版
Clover EFI は、OS X (Hackintosh)、Windows、そして Linux をレガシーモードや UEFI モードでブートするために開発されているブートローダです。
Clover の主な長所は:
- レガシー BIOS システムで UEFI をエミュレートできる
- EFISTUB をサポートする Linux カーネルをブートできる
- 今日一般的に使用されている大きなスクリーンでネイティブな解像度 GUI をサポートする
- 簡単に使える
- 簡単にカスタマイズ可能
インストール
Clover は BIOS システム上で UEFI 環境をエミュレートできるので、UEFI システムと BIOS システムでの手順は似ています。
UEFI システム
EFI システムパーティションを /boot
にマウントしてください。これは、UEFI から EFISTUB カーネルを直接ブートする場合に推奨される方法です。
初期 RAM ディスク環境を mkinitcpio で生成してください。
Clover ブータブル ISO をここからダウンロードしてください。
Clover-*-X64.iso.7z
アーカイブを展開し、Clover-*-X64.iso
ファイルを見つけて、その ISO を /mnt/iso
などのようなディレクトリにマウントしてください。Windows と Mac OS と異なり、Linux では すべてのファイルとフォルダの名前が小文字で表示されることに注意してください。
/mnt/iso/efi
フォルダ全体を EFI システムパーティション にコピーしてください。/boot
のディレクトリツリーは以下のようになるはずです:
/boot/EFI /boot/EFI/BOOT /boot/EFI/CLOVER /boot/initramfs-linux-fallback.img /boot/initramfs-linux.img /boot/vmlinuz-linux
BIOS システム
Clover Bootable ISO をダウンロードしてください。
Clover-*-X64.iso.7z
アーカイブを展開し、Clover-*-X64.iso
ファイルを見つけて、その ISO を /mnt/iso
などのようなディレクトリにマウントしてください。
Clover コードを現在の Master と Partition Boot Records にマージしてください (ESP が /dev/sda
のパーティション 1 であると仮定しています。必要に応じて変更してください):
# dd if=/dev/sda1 of=/tmp/original_PBR bs=512 count=1 conv=notrunc # cp /mnt/iso/usr/standalone/i386/boot1f32 /tmp/new_PBR # dd if=/tmp/original_PBR of=/tmp/new_PBR skip=3 seek=3 bs=1 count=87 conv=notrunc # dd if=/tmp/new_PBR of=/dev/sda1 bs=512 count=1 conv=notrunc # dd if=/mnt/iso/usr/standalone/i386/boot0ss of=/dev/sda bs=440 count=1 conv=notrunc
EFI システムパーティションを /boot
にマウントしてください。
/mnt/iso/efi
フォルダ全体を EFI システムパーティションにコピーしてください。
レガシーなブートローダを EFI システムパーティションにコピーしてください:
# cp /mnt/iso/usr/standalone/i386/x64/boot6 /boot/boot
設定
設定は EFI システムパーティションにある EFI/CLOVER
下の XML ファイル config.plist
で行います。
config.plist
を任意の OS で簡単に編集できるツールが存在します: Cloud Clover Editor (CCE)
それぞれのキーの意味は、カスタムエントリの wiki を参照してください。Volume
キーは、EFI システムパーティションの PARTUUID である必要があり、大文字でなければなりません。Arguments
の最小 initramfs initramfs-linux.img
と Path
の Linux カーネル実行ファイル vmlinuz-linux
は、EFI システムパーティションからの相対パスです。逆スラッシュは EFI 標準にしたがって使用する必要があります。Arguments
の他の引数については、EFISTUB と カーネルパラメータ#パラメータ一覧 を参照してください。
以下の例では、initramfs とカーネルのファイルが EFI システムパーティションのルートに置かれているとします (つまり、efi
ディレクトリと同じ階層にある)。EFI システムパーティションは /boot
にマウントされているとします。
/boot/EFI/CLOVER/config.plist
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "https://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>GUI</key> <dict> <key>Custom</key> <dict> <key>Entries</key> <array> <dict> <key>Arguments</key> <string>initrd=\initramfs-linux.img root=PARTUUID=d5d0fceb-c58e-c745-a7ff-f2f1b2824e66 rw add_efi_memmap</string> <key>Path</key> <string>\vmlinuz-linux</string> <key>Title</key> <string>Arch Linux</string> <key>Type</key> <string>Linux</string> <key>Volume</key> <string>33BA6C23-4772-294D-9053-72A49FCAEF39</string> <key>VolumeType</key> <string>Internal</string> </dict> <dict> <key>Arguments</key> <string>initrd=\initramfs-linux-fallback.img root=PARTUUID=d5d0fceb-c58e-c745-a7ff-f2f1b2824e66 rw debug add_efi_memmap</string> <key>Path</key> <string>\vmlinuz-linux</string> <key>Title</key> <string>Arch Linux Rescue Mode</string> <key>Type</key> <string>Linux</string> <key>Volume</key> <string>33BA6C23-4772-294D-9053-72A49FCAEF39</string> <key>VolumeType</key> <string>Internal</string> </dict> </array> </dict> </dict> </dict> </plist>
systemd-boot をチェインロードする
The Boot Loader Specification に準拠している、BIOS システム用のブートローダが必要である場合、systemd-boot を BIOS システムで使用することができます。以下は、Clover に systemd-boot をチェインロードさせるために必要な設定ファイルです:
/boot/EFI/CLOVER/config.plist
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "https://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Boot</key> <dict> <key>DefaultVolume</key> <string>EFI</string> <key>DefaultLoader</key> <string>\EFI\systemd\systemd-bootx64.efi</string> <key>Fast</key> <true/> </dict> <key>GUI</key> <dict> <key>Custom</key> <dict> <key>Entries</key> <array> <dict> <key>Hidden</key> <false/> <key>Disabled</key> <false/> <key>Image</key> <string>os_arch</string> <key>Volume</key> <string>EFI</string> <key>Path</key> <string>\EFI\systemd\systemd-bootx64.efi</string> <key>Title</key> <string>Arch Linux</string> <key>Type</key> <string>Linux</string> </dict> </array> </dict> </dict> </dict> </plist>