リムーバブルメディアに Arch Linux をインストール
このページでは標準的な Arch のインストールを USB キー (または"フラッシュドライブ") で行う方法を説明しています。USB インストールメディアで説明している LiveUSB の作り方と違って、HDD に通常インストールするのと同じように USB フラッシュドライブにインストールを行います。
目次
インストール
USB スティックに Arch をインストールする方法は様々ありますが、一番シンプルなのは 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 ドライブを arch が動いている仮想マシンに追加して、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 ハードドライブへのインストールには影響がありません。 - Before creating the initial RAM disk
# mkinitcpio -p linux
, in/etc/mkinitcpio.conf
add theblock
hook to the hooks array right after udev. This is necessary for appropriate module loading in early userspace. - If you want to be able to continue to use the UFD device as a cross-platform removable drive, this can be accomplished by creating a partition housing an appropriate file system (most likely NTFS or exFAT). Note that the data partition may need to be the first partition on the device, as Windows assumes that there can only be one partition on a removable device, and will happily automount an EFI system partition otherwise. Remember to install dosfstools and ntfs-3g. Some tools are available online that may allow you to flip the removable media bit on your UFD device. This would trick operating systems into treating your UFD device as an external hard disk and allow you to use whichever partitioning scheme you choose.
- NetworkManager をインストールして、ネットワークをコントロールします。NetworkManager はインターフェイス名の変更に対応しています。
設定
- Make sure that
/etc/fstab
includes the correct partition information for/
, and for any other partitions on the USB key. If the usb key is to be booted on several machines, it is quite likely that devices and number of available hard disks vary. So it is advised to use UUID or label:
パーティションの正しい UUID を取得するには blkid
を実行します。
GRUB legacy
menu.lst
, the GRUB legacy configuration file, should be edited to (loosely) match the following:
With the static /dev/sdaX
:
root (hd0,0) kernel /boot/vmlinuz-linux root=/dev/sda1 ro initrd /boot/initramfs-linux.img
When using label your menu.lst should look like this:
root (hd0,0) kernel /boot/vmlinuz-linux root=/dev/disk/by-label/Arch ro initrd /boot/initramfs-linux.img
And for UUID, it should be like this:
root (hd0,0) kernel /boot/vmlinuz-linux root=/dev/disk/by-uuid/3a9f8929-627b-4667-9db4-388c4eaaf9fa ro initrd /boot/initramfs-linux.img
Syslinux
With the static /dev/sdaX
:
LABEL Arch MENU LABEL Arch Linux LINUX ../vmlinuz-linux APPEND root=/dev/sdax ro INITRD ../initramfs-linux.img
Using your UUID:
LABEL Arch MENU LABEL Arch Linux LINUX ../vmlinuz-linux APPEND root=UUID=3a9f8929-627b-4667-9db4-388c4eaaf9fa ro INITRD ../initramfs-linux.img
Tips
複数のマシンで USB インストールを使う
アーキテクチャ
For the most versatile compatibility it is recommended that you install the i686 architecture because it will run on both 32-bit (i686) and 64-bit (x86_64) architectures.
Additionally, due to the reduced size of 32-bit binaries and the absence of (possible) multilib packages, an i686 installation typically consumes less space than an equivalent x86_64 one.
インプットドライバー
ノートパソコンを使う (またはタッチスクリーンを使用する) 場合、タッチパッドやタッチスクリーンを使用するには xf86-input-synaptics パッケージが必要になります。
タッチパッドの設定方法や問題のトラブルシューティングについては、Touchpad Synaptics の記事を見てください。
ビデオドライバー
ほとんどの 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
を追加します。詳しくはカーネルパラメータを参照してください。
USB-3 メディアから起動
[1] を見て下さい。
互換性
The fallback image should be used for maximum compatibility.
ディスクアクセスの最小化
- カスタム設定ファイルを作成するなどして、ジャーナルを RAM に保存するように journald を設定すると良いでしょう:
/etc/systemd/journald.conf.d/usbstick.conf
[Journal] Storage=volatile RuntimeMaxUse=30M
- ウェブブラウザなどのアプリケーションで
fsync
と関連するシステムコールを無効化するには、libeatmydataAUR の eatmydata コマンドを使ってシステムコールを無効化できます:
$ eatmydata firefox