「USB インストールメディア」の版間の差分
(→BIOS システム向けの他の方法: 削除) |
(→BIOS・UEFI ブータブル USB: 削除) |
||
309行目: | 309行目: | ||
#* FAT32 のボリュームラベルを {{ic|ARCH_''YYYYMM''}} に合うように変更してください。 |
#* FAT32 のボリュームラベルを {{ic|ARCH_''YYYYMM''}} に合うように変更してください。 |
||
# USB フラッシュドライブを取り出してください。 |
# USB フラッシュドライブを取り出してください。 |
||
− | |||
− | == BIOS・UEFI ブータブル USB == |
||
− | |||
− | === dd を使う === |
||
− | {{Note|この方法はシンプルなので推奨される方法です。この方法で上手く行かない時は下の[[#手動フォーマットを使う|手動フォーマットを使う]]方法に進んで下さい。}} |
||
− | |||
− | {{Warning|この方法では {{ic|/dev/'''sdx'''}} の全てのデータを完全に消去します。Arch ISO イメージを使った後に USB ドライブをストレージデバイスとして使える状態に戻したい場合、root で {{ic|wipefs --all /dev/'''sdx'''}} を実行して iso9660 ファイルシステムの署名を削除してから、USB ドライブを[[パーティショニング]]・[[フォーマット]]してください。}} |
||
− | |||
− | ==== GNU/Linux ==== |
||
− | |||
− | {{Tip|{{ic|lsblk}} を使って USB フラッシュインストールメディアがマウント'''されていない'''ことを確認して下さい。}} |
||
− | |||
− | 以下のコマンドを実行してください ({{ic|/dev/'''sdx'''}} は USB ドライブに置き換えてください、例: {{ic|/dev/sdb}}): |
||
− | |||
− | # dd bs=4M if=/path/to/archlinux.iso of=/dev/'''sdx''' status=progress && sync |
||
− | |||
− | {{Warning|パーティション番号を追加してはいけません。つまり {{ic|/dev/sdb'''1'''}} などと指定してはいけません。}} |
||
− | |||
− | データが完全に書き込まれたことを確認するため ''sync'' コマンドが完了するまで待ってから USB ドライブを抜いてください。 |
||
− | |||
− | {{ic|dd}} コマンドに関する詳細は [[Core Utilities#dd]] を参照。 |
||
− | |||
− | ==== Windows ==== |
||
− | |||
− | ===== Rufus を使う ===== |
||
− | [https://rufus.akeo.ie/ Rufus] は多目的の USB ISO 書き込みツールです。Arch Linux の ISO を選択して、ブータブルな Arch Linux インストーラーを作成したい USB ドライブを選択して Start をクリックしてください。 |
||
− | |||
− | Rufus はドライブが正しくフォーマットされているかどうか気にせず、GUI が用意されているため、簡単に使えるツールです。 |
||
− | |||
− | {{Note|'''DD''' モードを選択しないとイメージの転送が正しく行われません。}} |
||
− | |||
− | ===== USBwriter を使う ===== |
||
− | |||
− | Linux の {{ic|dd}} と同じように簡単に使うことができます。Arch Linux の ISO をダウンロードして、管理者権限で [https://sourceforge.net/p/usbwriter/wiki/Documentation/ USBwriter] ユーティリティを使って USB フラッシュメモリに書き込むだけです。 |
||
− | |||
− | ===== win32diskimager を使う ===== |
||
− | |||
− | [https://sourceforge.net/projects/win32diskimager/ win32diskimager] は Windows 用のグラフィカルな USB ISO 書き込みツールです。ISO イメージを選択して、書き込みを行う USB ドライブ文字を選択し (先にフォーマットする必要があります)、Write をクリックしてください。 |
||
− | |||
− | ===== Cygwin を使う ===== |
||
− | |||
− | [http://www.cygwin.com/ Cygwin] をインストールするときに {{ic|dd}} パッケージを選択してください。 |
||
− | |||
− | {{Tip|Cygwin をインストールしたくないのならば、Windows 対応の {{ic|dd}} が [http://www.chrysocome.net/dd こちら] からダウンロードできます。詳しくは次のセクションを見て下さい。}} |
||
− | |||
− | イメージファイルをホームディレクトリに置いてください、例: |
||
− | |||
− | C:\cygwin\home\John\ |
||
− | |||
− | 管理者として cygwin を実行します (cygwin からのハードウェアへのアクセスが必要です)。次のコマンドで USB ドライブに書き込みます: |
||
− | |||
− | dd if=image.iso of=\\.\'''x''': bs=4M |
||
− | |||
− | image.iso は {{ic|cygwin}} ディレクトリ中の iso イメージファイルのパスに、{{ic|\\.\'''x'''}} は USB デバイスに置き換えてください。'''x''' は windows が決めた文字になります、例: {{ic|\\.\d:}}。 |
||
− | |||
− | cygwin 6.0 では正しいパーティションを見つけてください: |
||
− | |||
− | cat /proc/partitions |
||
− | |||
− | そして出力を見て ISO イメージを焼きこみます。例: |
||
− | |||
− | {{Warning|この作業は USB スティックの全てのファイルを完全に消去します、実行する前にスティックに重要なファイルが残っていないか確認してください。}} |
||
− | |||
− | dd if=image.iso of=/dev/sdb bs=4M |
||
− | |||
− | ===== dd for Windows ===== |
||
− | |||
− | {{Note|この方法を使うと起動時に "isolinux.bin missing or corrupt" 問題が起こることがあります。}} |
||
− | |||
− | Windows に対応した GPL ライセンスの dd が http://www.chrysocome.net/dd から利用できます。Cygwin と比べてダウンロード容量は少なくてすみます。使用方法は、上の Cygwin の方法に従って下さい。 |
||
− | |||
− | 初めに dd for Windows の最新バージョンをダウンロードしてください。ダウンロードが完了したら、圧縮ファイルを展開してください。 |
||
− | |||
− | そして、管理者として {{ic|command prompt}} を立ち上げてください。次に、ダウンロードしたディレクトリにディレクトリを変更 ({{ic|cd}}) してください。 |
||
− | |||
− | Arch Linux の ISO は dd の実行可能ファイルがある場所と同じフォルダに置いた方が便利です、どこか他のところに ISO を置いた場合はフルパスを記述する必要があります。 |
||
− | |||
− | 使用するコマンドは以下のようになります: |
||
− | |||
− | # dd if=''archlinux-2017-XX-YY-x86_64.iso'' od=\\.\''x'': bs=4M |
||
− | |||
− | {{Note|Windows のドライブ文字はパーティションに紐付けられています。ディスク全体を選択できるようにするため、''dd for Windows'' には {{ic|od}} パラメータが存在し、上記のコマンドで使用しています。このパラメータが使えるのは ''dd for Windows'' だけであり、他の ''dd'' 実装では存在しないので注意してください。}} |
||
− | |||
− | {{Warning|{{ic|od}} を使用するため、選択されたディスクのパーティションは全て破壊されます。実行する前に dd のコピー先のドライブが正しいことを確認してください。}} |
||
− | |||
− | ("x" になっている) 日付やドライブ文字は適当な文字列に置き換えてください。実際に使用するコマンドは以下のようになります: |
||
− | |||
− | # dd if=ISOs\archlinux-2017.04.01-x86_64.iso od=\\.\d: bs=4M |
||
− | |||
− | {{Note|もしくは、ドライブ文字を {{ic|\\.\PhysicalDrive''X''}} に置き換えてください ({{ic|''X''}} は0から始まる物理ドライブ番号になります)。例: |
||
− | {{bc|1=# dd if=ISOs\archlinux-2017.04.01-x86_64.iso of=\\.\PhysicalDrive1 bs=4M}} |
||
− | 物理ドライブ番号はコマンドプロンプトで {{ic|wmic diskdrive list brief}} を実行するか {{ic|dd --list}} を使うことで確認できます。エクスプローラーのウィンドウは全て閉じて下さい。閉じていないと dd がエラーを吐きます。}} |
||
− | |||
− | ==== macOS ==== |
||
− | |||
− | まず USB ドライブを確認する必要があります。{{ic|/Applications/Utilities/Terminal}} を開いて以下のコマンドでストレージデバイスを全て確認できます: |
||
− | |||
− | $ diskutil list |
||
− | |||
− | USB デバイスは {{ic|/dev/disk2 (external, physical)}} というふうに表示されます。名前や容量から消去したいデバイスであることを確認できたら、識別子を使って下のコマンドを実行してください ({{ic|/dev/diskX}} を確認できた識別子に置き換えてください)。 |
||
− | |||
− | 通常 masOS では USB デバイスは自動的にマウントされるため、{{ic|dd}} を使ってブロック単位で書き込む前にアンマウントする必要があります (エジェクトではありません)。ターミナルで、以下を実行: |
||
− | |||
− | $ diskutil unmountDisk /dev/diskX |
||
− | |||
− | それから ISO イメージファイルをデバイスにコピーしてください。{{ic|dd}} コマンドは Linux のものと似ていますが、'disk' の前に 'r' を指定して raw モードを使うことで高速に転送できます: |
||
− | |||
− | $ sudo dd if=path/to/arch.iso of=/dev/'''r'''diskX bs=1M |
||
− | |||
− | 完了すると macOS が「セットしたディスクは、このコンピュータで読み取れないディスクでした。」とエラーを吐くことがあります。「無視」を選択してください。これで USB デバイスはブータブルになります。 |
||
− | |||
− | === 手動フォーマットを使う === |
||
− | |||
− | ==== GNU/Linux ==== |
||
− | |||
− | この方法は {{ic|dd}} でイメージを直接書き込むより少し複雑ですが、ドライブをデータストレージとして使える状態のままにすることができます (既存の[[パーティショニング|パーティション分割されたデバイス]]の中のパーティションに ISO をインストールします)。 |
||
− | |||
− | {{Note|以下の文中にあるコマンドで使っている、書き込み先の {{ic|/dev/sd'''Xn'''}} は適当なパーティションに置き換えてください。}} |
||
− | |||
− | * 最新の {{Pkg|syslinux}} パッケージ (バージョン 6.02 以降) がシステムにインストールされているか確認してください。 |
||
− | |||
− | * MBR (msdos) パーティションテーブルには FAT32 ファイルシステムを含むパーティションが少なくともひとつ必要です。存在しない場合、次に進む前にパーティションやファイルシステムを作成してください。 |
||
− | |||
− | * ISO イメージをマウントして、USB フラッシュドライブの FAT32 ファイルシステムをマウントし、ISO イメージの中身をコピーしてください。そして ISO イメージをアンマウントして、FAT32 パーティションはマウントされた状態のままにします (後で使います)。例: |
||
− | # mkdir -p /mnt/{iso,usb} |
||
− | # mount -o loop archlinux-2017.04.01-x86_64.iso /mnt/iso |
||
− | # mount /dev/sd'''Xn''' /mnt/usb |
||
− | # cp -a /mnt/iso/* /mnt/usb |
||
− | # sync |
||
− | # umount /mnt/iso |
||
− | |||
− | {{Note|[[Archiso]] の代わりに [[Archboot]] を使用する場合、以下の手順は必要ありません。}} |
||
− | |||
− | * 起動するにはラベルか [[UUID]] で起動するパーティションを選択する必要があります。デフォルトでは {{ic|ARCH_2017'''XX'''}} というラベルが使われます (ラベルの文字列はリリース年月になります)。そのため、''gparted'' を使うなどしてパーティションのラベルを正しく設定しなければなりません。また、{{ic|/mnt/usb/arch/boot/syslinux/archiso_sys.cfg}} (BIOS ブートの場合) や {{ic|/mnt/usb/loader/entries/archiso-x86_64.conf}} (UEFI ブートの場合) の {{ic|1=archisolabel=ARCH_2017'''XX'''}} で終わる行を変更することで使用するラベルは変更できます。UUID を使用したい場合、{{ic|1=archiso''device''=/dev/disk/by-uuid/'''YOUR-UUID'''}} と置き換えてください。UUID は {{ic|1=blkid -o value -s UUID /dev/sd'''Xn'''}} で確認することができます。 |
||
− | |||
− | {{Warning|ラベルや UUID が間違っていると作成したメディアから起動できなくなります。}} |
||
− | |||
− | * Syslinux は既に {{ic|/mnt/usb/arch/boot/syslinux}} にプリインストールされています。[[Syslinux#手動インストール]]に従ってフォルダに完全にインストールしてください。 |
||
− | ** (ISO の) USB に存在している既存の Syslinux モジュール ({{ic|*.c32}} ファイル) を syslinux パッケージに含まれているファイルで上書き ({{ic|/usr/lib/syslinux/bios}} に存在します)。この手順はバージョンの不一致でブートに問題が生じないようにするために必要です。 {{bc|# cp /usr/lib/syslinux/bios/*.c32 /mnt/usb/arch/boot/syslinux}} |
||
− | ** 以下のコマンドを実行: {{bc|# extlinux --install /mnt/usb/arch/boot/syslinux}} |
||
− | ** パーティションをアンマウント ({{ic|umount /mnt/usb}}) して USB デバイスに MBR あるいは GPT パーティションテーブルをインストール。 |
||
− | |||
− | * パーティションを active (あるいは “bootable”) に設定。 |
||
− | |||
− | ==== Windows ==== |
||
− | |||
− | {{Note| |
||
− | * UEFI ブータブル USB を作成するのに '''Bootable USB Creator ユーティリティ'''を使ってはいけません。手動フォーマットの場合、USB ドライブに ISO を dd するのに ''dd for Windows'' を使わないで下さい。 |
||
− | * 下のコマンド内の '''X:''' は Windows での USB フラッシュドライブを意味しています。 |
||
− | * Windows はパスを分けるのにバックスラッシュ {{ic|\}} を使っているので、下のコマンドでもバックスラッシュを使っています。 |
||
− | * 全てのコマンドは Windows のコマンドプロンプトで'''管理者として'''実行する必要があります。 |
||
− | * {{ic|>}} は Windows のコマンドプロンプトを示しています。 |
||
− | }} |
||
− | |||
− | * [http://rufus.akeo.ie/ Rufus USB partitioner] を使って USB ドライブをパーティション・フォーマットしてください。パーティションスキームは '''MBR for BIOS and UEFI''' をファイルシステムは '''FAT32'''を選んで下さい。"Create a bootable disk using ISO image" と "Create extended label and icon files" オプションのチェックを外して下さい。 |
||
− | |||
− | * USB フラッシュドライブ {{ic|X:}} の'''ボリュームラベル'''を {{ic|<ISO>\loader\entries\archiso-x86_64.conf}} の {{ic|1=archisolabel=}} に記述されている LABEL と一致するように変更してください。この手順は公式 ISO ([[Archiso]]) の代わりに [[Archboot]] を使っている場合は必要ありません。この設定は Rufus でも行うことができます。 |
||
− | |||
− | * ISO を (ZIP アーカイブの解凍と同じように) USB フラッシュドライブに [http://7-zip.org/ 7-Zip] を使って展開してください。 |
||
− | |||
− | * https://www.kernel.org/pub/linux/utils/boot/syslinux/ から最新の公式 syslinux 6.xx バイナリ (zip ファイル) をダウンロードして展開してください。Syslinux のバージョンは ISO イメージで使われているバージョンと合わせてください。 |
||
− | |||
− | * 以下のコマンドを実行してください (管理者として実行した Windows のコマンドプロンプトで実行): |
||
− | |||
− | {{Note|Archboot の iso の場合 {{ic|X:\boot\syslinux\}} を使ってください。}} |
||
− | |||
− | > cd bios\ |
||
− | > for /r %Y in (*.c32) do copy "%Y" "X:\arch\boot\syslinux\" /y |
||
− | > copy mbr\*.bin X:\arch\boot\syslinux\ /y |
||
− | |||
− | * 以下を実行して Syslinux を USB にインストールしてください (64ビット版 Windows では {{ic|win64\syslinux64.exe}} を使ってください): |
||
− | |||
− | {{Note|Archboot の iso の場合 {{ic|-d /boot/syslinux}} を使ってください。}} |
||
− | |||
− | > cd bios\ |
||
− | > win32\syslinux.exe -d /arch/boot/syslinux -i -a -m X: |
||
− | |||
− | {{Note| |
||
− | * 上記のステップで Syslinux の {{ic|ldlinux.sys}} が USB パーティションの VBR にインストールされ、MBR パーティションテーブルでパーティションが "active/boot" と設定されて USB の最初の440バイトのブートコード領域に MBR ブートコードが書き込まれます。 |
||
− | * {{ic|-d}} スイッチには Unix 環境と同じようにスラッシュで区切るパスを使います。 |
||
− | }} |
||
== トラブルシューティング == |
== トラブルシューティング == |
2022年7月8日 (金) 17:13時点における版
このページでは Arch Linux のインストーラーを USB ドライブ (別名: "フラッシュドライブ", "USB スティック", "USB キー" など) に書き込む様々な方法を記述します。LiveCD のようなシステム (ここでは "LiveUSB") は SquashFS を使うので、コンピュータを一度シャットダウンすると、すべての変更は破棄されます。
USB ドライブからの Arch Linux のフルインストールをしたい場合 (すなわち永続的な設定もする場合) は、USB キーに Arch Linux をインストールを参照してください。ブータブル Arch Linux USB スティックをレスキュー USB として使いたい場合は、Change Root を参照してください。
目次
ISO をそのまま使う(BIOS と UEFI)
GNU/Linux で
基本的なコマンドラインユーティリティを使う
そのようなツールは coreutils (base メタパッケージに含まれています)の一部であるため、簡単で普遍的に利用可能であることからこの方法は推奨されます。
以下のコマンドを実行してください (/dev/sdx
は USB ドライブに置き換えてください、例えば /dev/sdb
) のように。(パーティション番号を追加してはいけません。つまり /dev/sdb1
などと指定してはいけません。):
- cat(1) を使う場合:
# cat path/to/archlinux-version-x86_64.iso > /dev/sdx
- cp(1) を使う場合:
# cp path/to/archlinux-version-x86_64.iso /dev/sdx
- dd を使う場合:
# dd bs=4M if=path/to/archlinux-version-x86_64.iso of=/dev/sdx conv=fsync oflag=direct status=progress
- tee を使う場合:
# tee < path/to/archlinux-version-x86_64.iso > /dev/sdx
- pv を使う場合:
# pv path/to/archlinux-version-x86_64.iso > /dev/sdx
以上のツールの比較や使い方、なぜ dd があまり使われないのかについては [1] や [2] を見てください。
GNOME Disk Utility を使う
GNOME を使っている Linux ディストリビューションなら nautilus と gnome-disk-utility を使うことで簡単にライブ CD が作成できます。.iso
ファイルを右クリックして、 "Open With Disk Image Writer" を選択してください。GNOME Disk Utility が開いたら、"Destination" ドロップダウンメニューからフラッシュドライブを選択して "Start Restoring" をクリックしてください。
MultiWriter を使う
gnome-multi-writer は、ISO ファイルを複数の USB デバイスに一度に書き込める、シンプルな GTK3 ベースのグラフィカルツールです。
Kindd を使う
Kindd は、dd の Qt ベースグラフィカルフロントエンドです。kinddAUR で利用できます。
Popsicle を使う
Popsicle は、ISO ファイルを複数の USB デバイスに並列で書き込むためのツールで、PopOS 開発チームにより作成されました。Rust で記述されており、GTK を使用します。popsicleAUR で利用可能です。
SUSE Studio ImageWriter を使う
SUSE Studio ImageWriter は、OpenSUSE 開発チームにより作成された、Qt ベースのツールです。imagewriterAUR で利用可能です。
xorriso-dd-target を使う
(libisoburn の) xorriso-dd-target は、間違ったストレージデバイスへの上書きリスクの軽減を試みるシェルスクリプトです。最も安全なモードは -plug_test
という名前です。例えば、sudo を使って root に昇格できる通常ユーザとしてこのツールを使うには:
$ xorriso-dd-target -with_sudo -plug_test -DO_WRITE -image_file archlinux-version-x86_64.iso
詳細は xorriso-dd-target(1) を見てください。
Windows で
win32diskimager を使う
win32diskimager は Windows 用のグラフィカルな USB ISO 書き込みツールです。ISO イメージを選択して、書き込み先の USB ドライブ文字を選択し (先にフォーマットする必要があります)、Write をクリックしてください。
USBwriter を使う
Linux の dd
と同じように簡単に使うことができます。Arch Linux の ISO をダウンロードして、管理者権限で USBwriter ユーティリティを使って USB フラッシュメモリに書き込むだけです。
Rufus を使う
Rufus は多目的の USB ISO 書き込みツールです。このツールはグラフィカルな UI を提供し、ドライブが正しくフォーマットされているかどうかを気にしません。
単に Arch Linux の ISO と、ブータブルな Arch Linux を作成したい USB ドライブを選択し、START をクリックするだけです。
Cygwin を使う
Cygwin をインストールするときに dd
パッケージを選択してください。
イメージファイルをホームディレクトリに置いてください、例:
C:\cygwin\home\John\
管理者として cygwin を実行します (cygwin からのハードウェアへのアクセスが必要です)。次のコマンドで USB ドライブに書き込みます:
dd if=archlinux-version-x86_64.iso of=\\.\x: bs=4M
archlinux-version-x86_64.iso
の部分は cygwin
ディレクトリ内にある iso イメージファイルへのパスです。\\.\x:
の部分は USB フラッシュドライブで、x
は windows が決めた文字になります、例: \\.\d:
。
cygwin 6.0 では正しいパーティションを見つけてください:
cat /proc/partitions
そして出力を見て ISO イメージを焼きこみます。例:
dd if=archlinux-version-x86_64.iso of=/dev/sdb bs=4M
dd for Windows
Windows に対応した GPL ライセンスの dd が http://www.chrysocome.net/dd から利用できます。Cygwin と比べてダウンロード容量は少なくてすみます。使用方法は、上の Cygwin の方法に従って下さい。
初めに dd for Windows の最新バージョンをダウンロードしてください。ダウンロードが完了したら、圧縮ファイルを展開してください。
そして、管理者として command prompt
を立ち上げてください。次に、ダウンロードしたディレクトリにディレクトリを変更 (cd
) してください。
Arch Linux の ISO は dd の実行可能ファイルがある場所と同じフォルダに置いた方が便利です、どこか他のところに ISO を置いた場合はフルパスを記述する必要があります。
使用するコマンドは以下のようになります:
# dd if=archlinux-version-x86_64.iso od=\\.\x: bs=4M
("x" になっている) 日付やドライブ文字は適当な文字列に置き換えてください。実際に使用するコマンドは以下のようになります:
# dd if=ISOs\archlinux-version-x86_64.iso od=\\.\d: bs=4M
flashnul を使う
flashnul はフラッシュメモリ(USB-Flash, IDE-Flash, SecureDigital, MMC, MemoryStick, SmartMedia, XD, CompactFlash など)の機能を検証したりメンテナンスしたりするユーティリティです。
コマンドプロンプトから flashnul を -p
付きで実行してください。そして、どのデバイスインデックスが、対象の USB ドライブであるかを判断してください。例:
C:\>flashnul -p
Avaible physical drives: Avaible logical disks: C:\ D:\ E:\
正しいデバイスを見つけたら、デバイスにイメージを書き込むことができます。-L
とデバイスインデックス、イメージへのパスを付けて flashnul を実行してください。例:
C:\>flashnul E: -L path\to\archlinux-version-x86_64.iso
データを書き込んでいいと確信しているのであれば yes と入力してください。そして、書き込みが終わるまで少し待ってください。アクセス拒否のエラーが発生した場合、開いているエクスプローラーのウインドウをすべて閉じてください。
Vista や Win7 ではコンソールを管理者として開かないと、flashnul が USB をブロックデバイスとして開くことができず、Windows が提供するドライブハンドルを通じてしか書き込むことができません。
macOS で
macOS dd を使う
まず USB ドライブを確認する必要があります。/Applications/Utilities/Terminal
を開いて以下のコマンドでストレージデバイスを全て確認できます:
$ diskutil list
USB デバイスは /dev/disk2 (external, physical)
のように表示されます。名前や容量から消去したいデバイスであることを確認できたら、識別子を使って下のコマンドを実行してください (/dev/diskX
を確認できた識別子に置き換えてください)。
通常 masOS では USB デバイスは自動的にマウントされるため、dd
を使ってブロック単位で書き込む前にアンマウントする必要があります (エジェクトではありません)。ターミナルで、以下を実行:
$ diskutil unmountDisk /dev/diskX
それから ISO イメージファイルをデバイスにコピーしてください。dd
コマンドは Linux のものと似ていますが、'disk' の前に 'r' を指定して raw モードを使うことで高速に転送できます:
# dd if=path/to/archlinux-version-x86_64.iso of=/dev/rdiskX bs=1m
このコマンドは何も出力せずに動きます。進捗を表示させるには、Ctrl+t
を押して SIGINFO を送信してください。diskX
には s1
サフィックスを含めるべきではないことに注意してください。さもないと、その USB デバイスは UEFI モードでしか起動できず、レガシーモードでは起動できません。完了すると macOS が「セットしたディスクは、このコンピュータで読み取れないディスクでした。」とエラーを吐くことがあります。「無視」を選択してください。これで USB デバイスはブータブルになります。
Android で
EtchDroid
EtchDroid は、Android のための OS イメージ書き込みツールです。Android 5 から Android 8 で root 権限なしで動作します。バグレポートによると、Android 9 と Android 4.4 では常に動作するとは限らないようです。
Arch Linux インストーラーを作成するには、ISO イメージを Android デバイス上にダウンロードしてください。(必要であれば USB-OTG アダプタを使って) USB ドライブを Android デバイスに挿入してください。EtchDroid を開き、"Flash raw image" を選択し、Arch ISO を選択し、USB ドライブを選択してください。USB API の使用許可を付与し、確認してください。
イメージの書き込み中は携帯を机の上に置いておいてください: 多くの USB-OTG アダプタは少しぐらつくので、間違えて抜けてしまうかもしれません。
手動フォーマットを使う
BIOS と UEFI
GNU/Linux で
この方法は dd
でイメージを直接書き込むより少し複雑ですが、ドライブをデータストレージとして使える状態のままにすることができます (既存のパーティション分割されたデバイスの中のパーティションに ISO をインストールします)。
/dev/sdX
上にパーティションテーブルを作成してください(まだ作成していないのであれば)。- デバイス上にパーティションを作成してください(まだ作成していないのであれば)。パーティション
/dev/sdXn
は FAT32 にフォーマットされていなければなりません。 - USB フラッシュデバイスにあるその FAT32 ファイルシステムをマウントしてください。そして、ISO イメージの内容をそこへ展開してください。例えば:
# mount /dev/sdXn /mnt # bsdtar -x -f archlinux-version-x86_64.iso -C /mnt
起動するには、展開されたファイルが存在するボリュームを指定する必要があります。デフォルトでは、ARCH_YYYYMM
というラベルが使用されます(ラベルの文字列は適切なリリース年月になります)。そのため、ファイルシステムのラベルを適宜設定する必要があります。あるいは、ブートローダの設定を変更することでこの挙動を変更できます:
- BIOS ブート:
/mnt/syslinux/archiso_sys-linux.cfg
内のarchisolabel=ARCH_YYYYMM
。 - UEFI ブート:
/mnt/EFI/BOOT/grub.cfg
内のarchisolabel=ARCH_YYYYMM
とsearch --no-floppy --set=root --label ARCH_YYYYMM
。
UUID を代わりに使うには、これらの行の一部を archisodevice=/dev/disk/by-uuid/YOUR-UUID
に置き換えてください。grub.cfg
の場合は search --no-floppy --set=root --fs-uuid YOUR-UUID
を使用してください。
BIOS システム用の Syslinux のファイルはすでに /mnt/syslinux
へコピーされています。
FAT ファイルシステムをアンマウントし、syslinux と mtools をインストールして、パーティションを起動可能にするために以下のコマンドを実行してください:
# umount /mnt # syslinux --directory syslinux --install /dev/sdXn # dd bs=440 count=1 conv=notrunc if=/usr/lib/syslinux/bios/mbr.bin of=/dev/sdX
Windows で
- Rufus USB partitioner を使って USB ドライブをパーティショニング・フォーマットしてください。パーティション構成オプションは MBR for BIOS and UEFI を、ファイルシステムは FAT32 を選んで下さい。"Create a bootable disk using ISO image" と "Create extended label and icon files" オプションのチェックを外して下さい。
- USB フラッシュドライブ
X:
のボリュームラベルをX:\EFI\BOOT\grub.cfg
のarchisolabel=
に記述されている LABEL と一致するように変更してください。この手順は公式 ISO (Archiso) の代わりに Archboot を使っている場合は必要ありません。この設定は、先の "パーティショニング・フォーマット"のステップで Rufus でも行うことができます。 - ISO を (ZIP アーカイブの解凍と同じように) USB フラッシュドライブに 7-Zip を使って展開してください。
- https://www.kernel.org/pub/linux/utils/boot/syslinux/ から最新の公式 syslinux 6.xx バイナリ (zip ファイル) をダウンロードして展開してください。Syslinux のバージョンは ISO イメージで使われているバージョンと合わせてください。
- 以下のコマンドを実行してください (管理者として実行した Windows のコマンドプロンプトで実行):
> cd bios\ > for /r %Y in (*.c32) do copy "%Y" "X:\syslinux\" /y > copy mbr\*.bin X:\syslinux\ /y
- 以下を実行して Syslinux を USB にインストールしてください (64ビット版 Windows では
win64\syslinux64.exe
を使ってください):
> cd bios\ > win32\syslinux.exe -d /syslinux -i -a -m X:
BIOS のみ
GNU/Linux で
USB-ZIP ドライブの作成
一部の古い BIOS 環境では、USB-ZIP ドライブからの起動しかサポートされていないことがあります。この方法では USB-HDD ドライブからの起動を可能とします。
- 公式リポジトリから syslinux と mtools をダウンロードしてください。
lsblk
で usb ドライブを確認します。mkdiskimage -4 /dev/sdx 0 64 32
を実行してください (x はドライブの文字に置き換えてください)。しばらく時間がかかります。
ここからは手動フォーマットの手順に従ってください。ZIP ドライブのためパーティションは /dev/sdx4
になります。
UEFI のみ
UEFI のみの起動をする場合、ファイルを ISO からコピーして、FAT ボリュームのラベルを変更するかブートローダーの設定ファイルを編集して archisolabel
/archisodevice
を適宜設定するだけで可能です。
GNU/Linux で
この方法は、ISO イメージから USB フラッシュドライブにファイルをコピーして、systemd-boot の設定かファイルシステムのラベルを修正するだけです。
- もしまだなら、パーティションテーブルを
/dev/sdX
に作成し、パーティション をデバイス上の (/dev/sdXn
) に作成してください。 - もしまだなら、そのパーティションを FAT32 にフォーマットしてください:
# mkfs.fat -F 32 /dev/sdXn
- その FAT32 ファイルシステムをマウントしてください:
# mount /dev/sdXn /mnt
- そのマウントしたファイルシステムに ISO イメージを展開してください:
# bsdtar -x --exclude=syslinux/ -f archlinux-version-x86_64.iso -C /mnt
- 以下のどちらか一方を行ってください:
/mnt/EFI/BOOT/grub.cfg
を編集し、archisolabel=ARCH_YYYYMM
とsearch --no-floppy --set=root --label ARCH_YYYYMM
をデバイスに合うように変更してください。例: これらをそれぞれarchisodevice=/dev/disk/by-uuid/YOUR-UUID
とsearch --no-floppy --set=root --fs-uuid YOUR-UUID
に置き換える。その後、FAT32 ファイルシステムをアンマウントしてください。- ファイルシステムをアンマウントし、LABEL を
ARCH_YYYYMM
に合うように変更してください:# fatlabel /dev/sdXn ARCH_YYYYMM
Windows で
- USB フラッシュドライブをパーティショニングし、FAT32 にフォーマットしてください。
archlinux-version-x86_64.iso
を右クリックし、マウントを選択してください。- 新しく作成した DVD ドライブに移動し、
syslinux
を除いてすべてのファイルとフォルダを USB フラッシュドライブにコピーしてください。 - コピーが終わったら、DVD ドライブを右クリックして、取り出しを選択してください。
- 以下のどちらか一方を行ってください:
/mnt/EFI/BOOT/grub.cfg
をテキストエディタで編集し、archisolabel=ARCH_YYYYMM
とsearch --no-floppy --set=root --label ARCH_YYYYMM
をデバイスに合うように変更してください。例: これらをそれぞれarchisodevice=/dev/disk/by-uuid/YOUR-UUID
とsearch --no-floppy --set=root --fs-uuid YOUR-UUID
に置き換える。その後、FAT32 ファイルシステムをアンマウントしてください。- FAT32 のボリュームラベルを
ARCH_YYYYMM
に合うように変更してください。
- USB フラッシュドライブを取り出してください。
トラブルシューティング
/dev/disk/by-label/ARCH_XXXXXX
がマウントされず "device did not show up after 30 seconds" エラーが表示される場合は、USB メディアの名前をARCH_XXXXXX
に変えてみて下さい (例:ARCH_201501
)。