「リムーバブルメディアに Arch Linux をインストール」の版間の差分
Kusanaginoturugi (トーク | 投稿記録) (リダイクレトに変更) タグ: 新規リダイレクト |
細 (リンクを修正) |
||
(2人の利用者による、間の8版が非表示) | |||
1行目: | 1行目: | ||
− | + | [[Category:Arch の入手とインストール]] |
|
+ | [[en:Install Arch Linux on a removable medium]] |
||
+ | [[es:Install Arch Linux on a removable medium]] |
||
+ | [[lt:Install Arch Linux on a removable medium]] |
||
+ | [[pt:Install Arch Linux on a removable medium]] |
||
+ | [[zh-hans:Install Arch Linux on a removable medium]] |
||
+ | {{Related articles start}} |
||
+ | {{Related|ビギナーズガイド}} |
||
+ | {{Related|インストールガイド}} |
||
+ | {{Related|一般的な推奨事項}} |
||
+ | {{Related|一般的なトラブルシューティング}} |
||
+ | {{Related|ソリッドステートドライブ}} |
||
+ | {{Related articles end}} |
||
+ | このページでは標準的な Arch のインストールをリムーバブルメディア(USB フラッシュドライブなど)に行う方法を説明しています。[[USB インストールメディア]]で説明している LiveUSB の作り方と違って、HDD に通常インストールするのと同じように USB フラッシュドライブにインストールを行います。 |
||
+ | |||
+ | == インストール == |
||
+ | |||
+ | {{Note|最低でも 2 GiB のストレージ容量が必要です。パッケージの数は控えめにして、ストレージ用に空き容量を残します。}} |
||
+ | リムーバブルメディアに Arch をインストールするには、利用可能なオペレーティングシステムに応じて様々な方法があります。 |
||
+ | |||
+ | * 既に Arch を実行している場合、{{Pkg|arch-install-scripts}} を[[インストール]]して iso からインストールするのと同じように[[インストールガイド]]に従って下さい。ただし {{ic|/dev/sda}} を使用する代わりに、インストールする前に {{ic|$ lsblk}} を使って USB キーの {{ic|/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 で終了してしまう場合、残された方法はドライブ上の全てのパーティションを消去することだけです。別のターミナルを開いて ({{ic|Alt+F2}})、{{ic|fdisk /dev/''sdX''}} と入力し ({{ic|''sdX''}} はあなたの使用している usb ドライブに置き換えてください)、パーティションテーブルを表示 (p) して、問題ないか確認をし、パーティションテーブルを削除 (d) してから変更を書き込んでください (w)。そして cfdisk に戻ります。 |
||
+ | * ファイルシステムを選択する前に [[SSD]] の wiki 記事の[[SSD#SSD の読み書きを最小化するヒント|読み書きを最小化するヒント]]を読むことを強く推奨します。結論としては、[http://fenidik.blogspot.com/2010/03/ext4-disable-journal.html ジャーナルを無効にした ext4] が良いでしょう (ただしジャーナルを無効化するとデータを消失する危険性が高まります)。{{ic|# mkfs.ext4 -O "^has_journal" /dev/sdXX}} で作成できます。フラッシュが書き込みを行える回数には限りがあり、ジャーナリングファイルシステムは、ジャーナルを更新するたびに回数を減らしてしまうということを覚えてください。同じ理由から、スワップパーティションは作成しないのがベストです。USB ハードドライブへのインストールには影響がありません。 |
||
+ | * 初期 RAM ディスクを作成 ({{ic|# mkinitcpio -p linux}}) する前に、{{ic|/etc/mkinitcpio.conf}} の HOOKS の {{ic|udev}} のすぐ後に {{ic|block}} フックを追加してください。初期ユーザー空間で適切なモジュールをロードするために必要です。 |
||
+ | * UFD デバイスをクロスプラットフォームなリムーバブルドライブとして使い続けたい場合、(NTFS や exFAT など) 適当なファイルシステムのパーティションを作成します。データパーティションはデバイスの1番目のパーティションにする必要があります。Windows はリムーバブルデバイスには1つのパーティションしかないと想定しており、そうでない場合、EFI システムパーティションを自動的にマウントしてしまいます。{{Pkg|dosfstools}} や {{Pkg|ntfs-3g}} を忘れずにインストールしてください。UFD デバイスのリムーバブルメディアビットを反転させるツールはオンラインで使うことができます。これによってオペレーティングシステムに UFD デバイスを外付けのハードディスクとして扱わせたり、選択したパーティションスキームを使用することができます。 |
||
+ | {{Warning|UFD デバイスのリムーバブルメディアビットは反転できないことがあり、使用できないデバイスで無理に反転しようとすると壊れてしまう可能性があります。リムーバブルメディアの反転は推奨しません。}} |
||
+ | |||
+ | == 設定 == |
||
+ | |||
+ | * {{ic|/etc/fstab}} に USB キーの {{ic|/}} などのパーティションの適切な情報を記述してください。複数のマシンで USB キーを起動する場合、ハードディスクのデバイス番号は変わってしまう可能性があります。そのため UUID やラベルを使用することを推奨します: |
||
+ | |||
+ | パーティションの正しい UUID を取得するには {{ic|blkid}} を実行します。 |
||
+ | |||
+ | {{Note| |
||
+ | * GRUB を USB キーにインストールした場合、キーは常に {{ic|hd0,0}} になります。 |
||
+ | * 現在のバージョンの GRUB では、自動的に uuid を使用するようにデフォルト設定されているようです。以下の指示は GRUB legacy 用です。 |
||
+ | }} |
||
+ | |||
+ | === GRUB legacy === |
||
+ | |||
+ | GRUB legacy の設定ファイルである {{ic|menu.lst}} を以下のように設定する必要があります: |
||
+ | |||
+ | {{ic|/dev/sda''X''}} を使用: |
||
+ | |||
+ | root (hd0,0) |
||
+ | kernel /boot/vmlinuz-linux root=/dev/sda1 ro |
||
+ | initrd /boot/initramfs-linux.img |
||
+ | |||
+ | ラベルを使う場合 {{ic|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 システム]] の指示に従って {{ic|--removable}} オプションを付けるようにしてください。そうしないと既存の GRUB が破壊される可能性があります。コマンドは以下のようになります: |
||
+ | |||
+ | # grub-install --target=x86_64-efi --efi-directory=$esp --bootloader-id=grub '''--removable''' --recheck |
||
+ | |||
+ | === Syslinux === |
||
+ | |||
+ | {{ic|/dev/sda''X''}} を使用: |
||
+ | |||
+ | 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 インストールを使う === |
||
+ | |||
+ | ==== インプットドライバー ==== |
||
+ | |||
+ | ノートパソコンを使う (またはタッチスクリーンを使用する) 場合、タッチパッドやタッチスクリーンを使用するには {{Pkg|xf86-input-synaptics}} パッケージが必要になります。 |
||
+ | |||
+ | タッチパッドの設定方法や問題のトラブルシューティングについては、[[Touchpad Synaptics]] の記事を見てください。 |
||
+ | |||
+ | ==== ビデオドライバー ==== |
||
+ | |||
+ | {{Note|USB キーに Arch Linux をインストールするような場合にプロプライエタリのビデオドライバーを使用するのは推奨されません。}} |
||
+ | |||
+ | ほとんどの GPU で動作するように {{Pkg|xf86-video-vesa}}, {{Pkg|xf86-video-ati}}, {{Pkg|xf86-video-intel}}, {{Pkg|xf86-video-nouveau}} をインストールしてください。 |
||
+ | |||
+ | ==== 永続的なブロックデバイスの命名 ==== |
||
+ | |||
+ | [[fstab]] とブートローダーの設定では [[UUID]] を使うことが推奨されます。詳しくは[[永続的なブロックデバイスの命名]]を見て下さい。 |
||
+ | |||
+ | また、USB キーのカスタムシンボリックリンクを作成する udev ルールを作成することもできます。fstab やブートローダーの設定ではシンボリックリンクを使うようにします。詳しくは [[udev#固定デバイス名を設定する]] を見て下さい。 |
||
+ | |||
+ | ==== カーネルパラメータ ==== |
||
+ | |||
+ | Intel のビデオカードなどを使っている場合に、黒画面や "no signal" エラーが表示されないように、KMS は無効化したほうが良いでしょう。KMS を無効化するには、カーネルパラメータに {{ic|nomodeset}} を追加します。詳しくは[[カーネルパラメータ]]を参照してください。 |
||
+ | |||
+ | {{Warning|[[Xorg]] ドライバーによっては KMS が無効になっていると動作しないことがあります。詳しくはそれぞれのドライバーのページを見て下さい。特に Nouveau はディスプレイのの解像度を正しく認識するために KMS を必要とします。{{ic|nomodeset}} カーネルパラメータを追加する場合、Nvidia のビデオカードが搭載されたマシンを使うときはディスプレイの解像度を手動で調整する必要があります。詳しくは [[Xrandr]] を参照。}} |
||
+ | |||
+ | ==== USB-3 メディアから起動 ==== |
||
+ | |||
+ | [http://www.wyae.de/docs/boot-usb3/] を見て下さい。 |
||
+ | |||
+ | === 互換性 === |
||
+ | |||
+ | フォールバックイメージを使うことで互換性を最大限に高めることができます。 |
||
+ | |||
+ | === ディスクアクセスの最小化 === |
||
+ | |||
+ | * カスタム設定ファイルを作成するなどして、ジャーナルを RAM に保存するように [[Systemd#Journal|journald]] を設定すると良いでしょう: |
||
+ | |||
+ | {{hc|/etc/systemd/journald.conf.d/usbstick.conf|2= |
||
+ | [Journal] |
||
+ | Storage=volatile |
||
+ | RuntimeMaxUse=30M |
||
+ | }} |
||
+ | |||
+ | * ウェブブラウザなどのアプリケーションで {{ic|fsync}} と関連するシステムコールを無効化するには、{{Pkg|libeatmydata}} の ''eatmydata'' コマンドを使ってシステムコールを無効化できます: |
||
+ | |||
+ | $ eatmydata firefox |
||
+ | |||
+ | == 参照 == |
||
+ | |||
+ | * [https://github.com/r-darwish/alma ALMA] - Rust で書かれた、Arch Linux ベースの起動可能な USB ドライブを作成するユーティリティ。 |
||
+ | * [https://magyar.urown.cloud/arch-usb.html ArchLinux USB] - c-magyar による Live USB インストールの作成に関する素晴らしい記事です。 |
||
+ | * [https://github.com/laurent85v/archuseriso archuseriso] - Arch Linux Live ISO イメージを構築するためのテンプレート、暗号化を備えた Live USB 作成ツール。 |
2023年12月28日 (木) 12:55時点における最新版
このページでは標準的な Arch のインストールをリムーバブルメディア(USB フラッシュドライブなど)に行う方法を説明しています。USB インストールメディアで説明している LiveUSB の作り方と違って、HDD に通常インストールするのと同じように USB フラッシュドライブにインストールを行います。
目次
インストール
リムーバブルメディアに 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 システムパーティションを自動的にマウントしてしまいます。dosfstools や ntfs-3g を忘れずにインストールしてください。UFD デバイスのリムーバブルメディアビットを反転させるツールはオンラインで使うことができます。これによってオペレーティングシステムに UFD デバイスを外付けのハードディスクとして扱わせたり、選択したパーティションスキームを使用することができます。
設定
/etc/fstab
に USB キーの/
などのパーティションの適切な情報を記述してください。複数のマシンで USB キーを起動する場合、ハードディスクのデバイス番号は変わってしまう可能性があります。そのため UUID やラベルを使用することを推奨します:
パーティションの正しい UUID を取得するには blkid
を実行します。
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 の記事を見てください。
ビデオドライバー
ほとんどの 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] を見て下さい。
互換性
フォールバックイメージを使うことで互換性を最大限に高めることができます。
ディスクアクセスの最小化
- カスタム設定ファイルを作成するなどして、ジャーナルを RAM に保存するように journald を設定すると良いでしょう:
/etc/systemd/journald.conf.d/usbstick.conf
[Journal] Storage=volatile RuntimeMaxUse=30M
- ウェブブラウザなどのアプリケーションで
fsync
と関連するシステムコールを無効化するには、libeatmydata の eatmydata コマンドを使ってシステムコールを無効化できます:
$ eatmydata firefox
参照
- ALMA - Rust で書かれた、Arch Linux ベースの起動可能な USB ドライブを作成するユーティリティ。
- ArchLinux USB - c-magyar による Live USB インストールの作成に関する素晴らしい記事です。
- archuseriso - Arch Linux Live ISO イメージを構築するためのテンプレート、暗号化を備えた Live USB 作成ツール。