リムーバブルメディアに Arch Linux をインストール

提供: ArchWiki
ナビゲーションに移動 検索に移動

関連記事

このページでは標準的な Arch のインストールをリムーバブルメディア(USB フラッシュドライブなど)に行う方法を説明しています。USB インストールメディアで説明している LiveUSB の作り方と違って、HDD に通常インストールするのと同じように USB フラッシュドライブにインストールを行います。

インストール

ノート: 最低でも 2 GiB のストレージ容量が必要です。パッケージの数は控えめにして、ストレージ用に空き容量を残します。

リムーバブルメディアに Arch をインストールするには、利用可能なオペレーティングシステムに応じて様々な方法があります。

  • 既に Arch を実行している場合、arch-install-scriptsインストールして iso からインストールするのと同じようにインストールガイドに従って下さい。ただし /dev/sda を使用する代わりに、インストールする前に $ lsblk を使って USB キーの /dev/sd* の名前を確認します。
  • Arch Linux CD/USB を使って USB キーに Arch をインストールすることもできます。CD/USB を起動してインストールガイドに従って下さい。ライブ USB から起動する場合、インストールは別の USB スティックに行う必要があります。
  • もしくは、別の Linux コンピュータが使える場合 (Arch である必要はありません)、既存の Linux からインストールにしたがって、設定セクションまで進んでください。
  • Windows や Mac で VirtualBox をダウンロードしている場合、VirtualBox Extension をインストールして、USB ドライブを Live ISO やLinux インストール済の仮想マシンに挿入し、インストールガイドに従いUSB ドライブにインストールを行なって下さい。

インストール時の設定

基本的にはインストールガイドのとおりに行いますが、以下の部分が異なります:

  • cfdisk が "Partition ends in the final partial cylinder" fatal error で終了してしまう場合、残された方法はドライブ上の全てのパーティションを消去することだけです。別のターミナルを開いて (Alt+F2)、fdisk /dev/sdX と入力し (sdX はあなたの使用している usb ドライブに置き換えてください)、パーティションテーブルを表示 (p) して、問題ないか確認をし、パーティションテーブルを削除 (d) してから変更を書き込んでください (w)。そして cfdisk に戻ります。
  • ファイルシステムを選択する前に SSD の wiki 記事の読み書きを最小化するヒントを読むことを強く推奨します。結論としては、ジャーナルを無効にした ext4 が良いでしょう (ただしジャーナルを無効化するとデータを消失する危険性が高まります)。# mkfs.ext4 -O "^has_journal" /dev/sdXX で作成できます。フラッシュが書き込みを行える回数には限りがあり、ジャーナリングファイルシステムは、ジャーナルを更新するたびに回数を減らしてしまうということを覚えてください。同じ理由から、スワップパーティションは作成しないのがベストです。USB ハードドライブへのインストールには影響がありません。
  • 初期 RAM ディスクを作成 (# mkinitcpio -p linux) する前に、/etc/mkinitcpio.conf の HOOKS の udev のすぐ後に block フックを追加してください。初期ユーザー空間で適切なモジュールをロードするために必要です。
  • UFD デバイスをクロスプラットフォームなリムーバブルドライブとして使い続けたい場合、(NTFS や exFAT など) 適当なファイルシステムのパーティションを作成します。データパーティションはデバイスの1番目のパーティションにする必要があります。Windows はリムーバブルデバイスには1つのパーティションしかないと想定しており、そうでない場合、EFI システムパーティションを自動的にマウントしてしまいます。dosfstoolsntfs-3g を忘れずにインストールしてください。UFD デバイスのリムーバブルメディアビットを反転させるツールはオンラインで使うことができます。これによってオペレーティングシステムに UFD デバイスを外付けのハードディスクとして扱わせたり、選択したパーティションスキームを使用することができます。
警告: UFD デバイスのリムーバブルメディアビットは反転できないことがあり、使用できないデバイスで無理に反転しようとすると壊れてしまう可能性があります。リムーバブルメディアの反転は推奨しません。

設定

  • /etc/fstab に USB キーの / などのパーティションの適切な情報を記述してください。複数のマシンで USB キーを起動する場合、ハードディスクのデバイス番号は変わってしまう可能性があります。そのため UUID やラベルを使用することを推奨します:

パーティションの正しい UUID を取得するには blkid を実行します。

ノート:
  • GRUB を USB キーにインストールした場合、キーは常に hd0,0 になります。
  • 現在のバージョンの GRUB では、自動的に uuid を使用するようにデフォルト設定されているようです。以下の指示は GRUB legacy 用です。

GRUB legacy

GRUB legacy の設定ファイルである menu.lst を以下のように設定する必要があります:

/dev/sdaX を使用:

root (hd0,0)
kernel /boot/vmlinuz-linux root=/dev/sda1 ro
initrd /boot/initramfs-linux.img

ラベルを使う場合 menu.lst は以下のようになります:

root (hd0,0)
kernel /boot/vmlinuz-linux root=/dev/disk/by-label/Arch ro
initrd /boot/initramfs-linux.img

UUID の場合:

root (hd0,0)
kernel /boot/vmlinuz-linux root=/dev/disk/by-uuid/3a9f8929-627b-4667-9db4-388c4eaaf9fa ro
initrd /boot/initramfs-linux.img

GRUB

UEFI の GPT を使う場合、GRUB#UEFI システム の指示に従って --removable オプションを付けるようにしてください。そうしないと既存の GRUB が破壊される可能性があります。コマンドは以下のようになります:

# grub-install --target=x86_64-efi --efi-directory=$esp --bootloader-id=grub --removable --recheck

Syslinux

/dev/sdaX を使用:

LABEL Arch
        MENU LABEL Arch Linux
        LINUX ../vmlinuz-linux
        APPEND root=/dev/sdax ro
        INITRD ../initramfs-linux.img

UUID を使用:

LABEL Arch
        MENU LABEL Arch Linux
        LINUX ../vmlinuz-linux
        APPEND root=UUID=3a9f8929-627b-4667-9db4-388c4eaaf9fa ro
        INITRD ../initramfs-linux.img

ヒントとテクニック

複数のマシンで USB インストールを使う

インプットドライバー

ノートパソコンを使う (またはタッチスクリーンを使用する) 場合、タッチパッドやタッチスクリーンを使用するには xf86-input-synaptics パッケージが必要になります。

タッチパッドの設定方法や問題のトラブルシューティングについては、Touchpad Synaptics の記事を見てください。

ビデオドライバー

ノート: USB キーに Arch Linux をインストールするような場合にプロプライエタリのビデオドライバーを使用するのは推奨されません。

ほとんどの GPU で動作するように xf86-video-vesa, xf86-video-ati, xf86-video-intel, xf86-video-nouveau をインストールしてください。

永続的なブロックデバイスの命名

fstab とブートローダーの設定では UUID を使うことが推奨されます。詳しくは永続的なブロックデバイスの命名を見て下さい。

また、USB キーのカスタムシンボリックリンクを作成する udev ルールを作成することもできます。fstab やブートローダーの設定ではシンボリックリンクを使うようにします。詳しくは udev#固定デバイス名を設定する を見て下さい。

カーネルパラメータ

Intel のビデオカードなどを使っている場合に、黒画面や "no signal" エラーが表示されないように、KMS は無効化したほうが良いでしょう。KMS を無効化するには、カーネルパラメータに nomodeset を追加します。詳しくはカーネルパラメータを参照してください。

警告: Xorg ドライバーによっては KMS が無効になっていると動作しないことがあります。詳しくはそれぞれのドライバーのページを見て下さい。特に Nouveau はディスプレイのの解像度を正しく認識するために KMS を必要とします。nomodeset カーネルパラメータを追加する場合、Nvidia のビデオカードが搭載されたマシンを使うときはディスプレイの解像度を手動で調整する必要があります。詳しくは Xrandr を参照。

USB-3 メディアから起動

[1] を見て下さい。

互換性

フォールバックイメージを使うことで互換性を最大限に高めることができます。

ディスクアクセスの最小化

  • カスタム設定ファイルを作成するなどして、ジャーナルを RAM に保存するように journald を設定すると良いでしょう:
/etc/systemd/journald.conf.d/usbstick.conf
[Journal]
Storage=volatile
RuntimeMaxUse=30M
  • ウェブブラウザなどのアプリケーションで fsync と関連するシステムコールを無効化するには、libeatmydataeatmydata コマンドを使ってシステムコールを無効化できます:
$ eatmydata firefox

参照

  • ALMA - Rust で書かれた、Arch Linux ベースの起動可能な USB ドライブを作成するユーティリティ。
  • ArchLinux USB - c-magyar による Live USB インストールの作成に関する素晴らしい記事です。
  • archuseriso - Arch Linux Live ISO イメージを構築するためのテンプレート、暗号化を備えた Live USB 作成ツール。