「SSH からインストール」の版間の差分
(ローカルマシン上でを翻訳して追加) |
Kusanaginoturugi (トーク | 投稿記録) |
||
(他の1人の利用者による、間の4版が非表示) | |||
1行目: | 1行目: | ||
[[Category:Arch の入手とインストール]] |
[[Category:Arch の入手とインストール]] |
||
− | [[Category: |
+ | [[Category:セキュアシェル]] |
[[en:Install from SSH]] |
[[en:Install from SSH]] |
||
[[es:Install from SSH]] |
[[es:Install from SSH]] |
||
− | [[it:Install from SSH]] |
||
[[pt:Install from SSH]] |
[[pt:Install from SSH]] |
||
[[ru:Install from SSH]] |
[[ru:Install from SSH]] |
||
[[zh-hans:Install from SSH]] |
[[zh-hans:Install from SSH]] |
||
+ | この記事は、[[SSH]] 接続を介して Arch をリモートでインストールする方法を目的としています。ホストがリモートにある場合、または SSH クライアントのコピー/ペースト機能を使用して Arch インストールを実行する場合は、このアプローチを検討してください。 |
||
− | ==最初に== |
||
− | この記事は、SSHによるリモート接続を経由し、Archをインストールする方法を、ユーザに示しています。通常、次のようなシナリオの場合、SSH を使うことを検討する価値があります。 |
||
+ | == リモート (ターゲット) マシン上で == |
||
− | Arch をセットアップする PC が... |
||
− | *モニタ(画面)表示せずに操作する PC である場合。 |
||
− | *別の場所、街、国(友達の家、親の家など)に位置する PC。 |
||
− | *リモートでセットアップするほうが好ましい PC。例えば、Arch Wiki のコピー/ペーストが想定される時など。 |
||
− | {{Note| |
+ | {{Note|これらの手順では、マシンへの物理的なアクセスが必要です。ホストが物理的に別の場所にある場合は、別の担当者と調整する必要がある場合があります。}} |
+ | [[インストールガイド|Live CD/USB イメージの取得とインストール]] を介して、ターゲットマシンを live Arch 環境で起動して、ユーザーは root としてログインします。 |
||
− | ==メディアからの起動== |
||
− | [[ビギナーズガイド#最新のインストールメディアを準備する|live CD/USB イメージ]]から Live Arch 環境を起動する。 |
||
+ | この時点で、[[インストールガイド#インターネットへの接続]] で提案されている例に従って、ターゲットマシン上にネットワークをセットアップします。 |
||
− | ==SSH による Live 環境のセットアップ== |
||
− | {{Note|次のコマンドは、root ユーザーとして実行する必要があります。 コマンドの前の # がそれを意味しています。}} |
||
+ | root のデフォルトの Arch パスワードは空であるため、SSH 接続に必要な root パスワードを設定します: |
||
− | この段階で root としてログインしてください (LiveCD を動かす上のデフォルトユーザーです)。 |
||
+ | # passwd |
||
− | まずは、ターゲットマシン (リモート接続して Arch のセットアップを行う PC) 上で、ネットワーク設定を行います。 |
||
+ | {{ic|/etc/ssh/sshd_config}} に {{ic|PermitRootLogin yes}} が設定されていることを確認します。そうでない場合は、これを設定し、OpenSSH デーモン {{ic|sshd.service}} を [[再起動]] して変更を適用します。 |
||
− | 有線では、{{ic|dhclient}} か {{ic|dhcpcd}} を動作させて接続できます。詳しくは[[ネットワーク設定]]を参照。 |
||
+ | {{Note|ターゲットマシンが NAT ルーターの背後にあり、外部アクセスが必要な場合は、SSH ポート (デフォルトでは 22) をターゲットマシンの LAN IP アドレスに転送する必要があります。あるいは、ローカル (クライアント) マシンへのリバース SSH トンネルを設定し、それを通じて接続し直すこともできます。{{man|1|ssh}} の {{ic|-R}} フラグを参照してください。}} |
||
− | 無線では、アクセスポイントに接続するために[[ネットワーク設定/ワイヤレス]]や [[Wpa_supplicant]] の情報を見て下さい。 |
||
− | |||
− | 既知のインターフェースのリストが表示されます。使用するインターフェースのタイプを入力します。(有線イーサネットのインターフェースの eth0) |
||
− | |||
− | 次に、openssh デーモンを動かします: |
||
− | # systemctl start sshd |
||
− | |||
− | 最後に、ssh 接続に必要な root パスワードを設定します。デフォルトの Arch の root パスワードは空です。 |
||
− | passwd |
||
− | |||
− | ==ターゲットマシンへの SSH 接続== |
||
− | 次のコマンドを使って、ターゲットマシンに接続します。 |
||
− | |||
− | $ ssh root@ターゲットのIPアドレス |
||
− | |||
− | Live 環境のウェルカムメッセージを受け取れましたか?ここからは、物理的に離れた位置からキーボードを操作して、ターゲットマシンを管理出来るようになります。 |
||
− | |||
− | <pre>ssh root@10.1.10.105 |
||
− | root@10.1.10.105's password: |
||
− | Last login: Thu Dec 23 08:33:02 2010 from 10.1.10.200 |
||
− | [root@archiso ~]#</pre> |
||
− | |||
− | ===ノート=== |
||
− | *ターゲットマシンがファイアウォール/ルータ越しにある場合は、デフォルトの SSH ポートである 22 を、ターゲットマシンのローカルエリア上の IP アドレスに転送する必要があります。ポートフォワーディングを使用する方法については、このガイドでは説明していません。 |
||
− | *Live 環境下で、標準ポート番号以外を使うようなデーモンを実行したい場合は、一旦、{{ic|/etc/ssh/sshd_config}} を非標準ポートに設定してください。 |
||
− | *{{ic|/etc/ssh/sshd_config}} を編集することでデーモンが起動するより早くライブ環境を設定することができます、例えば非標準ポートを起動したいときに。 |
||
− | |||
− | ==次のステップ== |
||
− | ここからは自由にやりたいことをしてください。ライブメディアから Arch をインストールしたいのなら、[[インストールガイド]]のガイドを見て下さい。既存の壊れた Linux のインストールをやりなおすには、[[既存の Linux からインストール]] を参照してください。 |
||
− | |||
− | [[GRUB]] と [[GPT]] ハードドライブを使いたい場合 |
||
− | |||
− | *Arch をインストールする前に ''pacman -S gdisk'' でインストールした '''gdisk''' ユーティリティを使って HDD/SSD を手動でパーティションします。インストール作業中にブートローダーをインストールするオプションが提示されたときは、no と回答してスキップし、Live 環境の root プロンプトに戻ります。 |
||
− | *この段階での GRUB2 のインストールは取るにたらないことです。新しい Arch 環境に chroot して(インストール後はデフォルトでマウント済み) GRUB2 をインストール・セットアップします: |
||
− | |||
− | cd /mnt |
||
− | rm console ; mknod -m 600 console c 5 1 |
||
− | rm null ; mknod -m 666 null c 1 3 |
||
− | rm zero ; mknod -m 666 zero c 1 5 |
||
− | mount -t proc proc /mnt/proc |
||
− | mount -t sysfs sys /mnt/sys |
||
− | mount -o bind /dev /mnt/dev |
||
− | chroot /mnt /bin/bash |
||
− | |||
− | 新しい Arch に chroot: |
||
− | |||
− | pacman -S grub2 |
||
− | grep -v rootfs /proc/mounts > /etc/mtab |
||
− | |||
− | 必要に応じて {{ic|/etc/default/grub}} を編集します。 |
||
− | GRUB をインストールして grub.cfg を生成: |
||
− | |||
− | grub-install /dev/sdX --no-floppy |
||
− | grub-mkconfig -o /boot/grub/grub.cfg |
||
− | |||
− | {{Note|The above assumes that if the user intends to boot from a GPT disk, the user has fully read and understood the aforementioned wiki articles and has made a 1M partition ef02 for grub2.}} |
||
− | |||
− | 再起動する準備ができたら、chroot を解除して再起動する前にパーティションをアンマウントします。 |
||
− | |||
− | exit |
||
− | umount /mnt/boot # if mounted this or any other separate partitions |
||
− | umount /mnt/{proc,sys,dev} |
||
− | umount /mnt |
||
== ローカルマシン上で == |
== ローカルマシン上で == |
2024年8月16日 (金) 18:38時点における最新版
この記事は、SSH 接続を介して Arch をリモートでインストールする方法を目的としています。ホストがリモートにある場合、または SSH クライアントのコピー/ペースト機能を使用して Arch インストールを実行する場合は、このアプローチを検討してください。
目次
リモート (ターゲット) マシン上で
Live CD/USB イメージの取得とインストール を介して、ターゲットマシンを live Arch 環境で起動して、ユーザーは root としてログインします。
この時点で、インストールガイド#インターネットへの接続 で提案されている例に従って、ターゲットマシン上にネットワークをセットアップします。
root のデフォルトの Arch パスワードは空であるため、SSH 接続に必要な root パスワードを設定します:
# passwd
/etc/ssh/sshd_config
に PermitRootLogin yes
が設定されていることを確認します。そうでない場合は、これを設定し、OpenSSH デーモン sshd.service
を 再起動 して変更を適用します。
ローカルマシン上で
ローカルマシンで、次のコマンドを使用して SSH 経由でターゲットマシンに接続します:
$ ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null root@ip.address.of.target
ここから、ライブ環境のウェルカムメッセージが表示され、物理キーボードの前に座っているかのようにターゲットマシンを管理できます。この時点で、ライブメディアから Arch をインストールするだけの場合は、インストールガイド に従ってください。破損した既存の Linux インストールを編集することが目的の場合は、既存の Linux からインストール Wiki の記事に従ってください。
ヘッドレスサーバーへのインストール
このセクションでは、キーボード、マウス、ディスプレイのないヘッドレスサーバーへの Arch Linux のインストールについて説明します。cloud-init NoCloud 構成の追加ドライブを使用して、OpenSSH 承認キーとオプションで iwd 接続を自動的に設定します。
Cloud-init 設定ファイルを準備する
必要な cloud-init 設定ファイルは 3 つあります: meta-data
、user-data
、および network-config
meta-data
ファイルは空でも構いません:
$ printf "" > meta-data
user-data
には関連する設定が含まれます。
user-data
#cloud-config users: - name: root ssh_authorized_keys: - ssh-ed25519 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX - ssh-ed25519 YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY
ssh-ed25519 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
をパブリック SSH 鍵 に置き換えます。複数のキーを追加するには、上に示したステートメントを繰り返すだけです。
Wi-Fi ネットワークに自動的に接続するには、write_files:
ステートメントを使用して、iwd ネットワーク設定ファイル を正しいディレクトリに作成します。例えば:
user-data
#cloud-config users: - name: root ssh_authorized_keys: - ssh-ed25519 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX - ssh-ed25519 YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY write_files: - content: | [Security] PreSharedKey=aafb192ce2da24d8c7805c956136f45dd612103f086034c402ed266355297295 path: /var/lib/iwd/spaceship.psk runcmd: - systemctl restart iwd.service
cloud-init は、ISO で出荷されたものとは異なるネットワーク構成を作成します。つまり、mDNS レスポンダーと DHCPv6 クライアントが有効になっていません。これを回避するには、network-config
で Cloud-init のネットワーク設定を無効にします:
network-config
version: 2 config: disabled
3 つのファイルがすべて作成されたら、CIDATA
というラベルの付いた ISO 9660 または FAT ボリュームを持つドライブに配置する必要があります。
追加の FAT フォーマットされたドライブの使用
FAT でフォーマットされたドライブを使用してください。meta-data
、user-data
、および network-config
をドライブにコピーし、ファイルシステムの LABEL を {{ic|CIDATA} に変更します}。
公式 ISO を持つドライブに加えて、このドライブをヘッドレスマシンに接続する必要があります。
追加の ISO の使用
libisoburn の xorriso を使用して、cloud-init.iso
ファイルを作成します:
$ xorrisofs -output cloud-init.iso -volid CIDATA -joliet -rational-rock meta-data user-data network-config
cloud-init.iso
を光ディスクに 書き込み して、cloud-init データメディアを準備します。展開オプションが許可する場合は、ISO をそのまま使用します。
USB フラッシュドライブを使用する
インストールイメージが USB フラッシュドライブなどに書き込まれる場合、ドライブに十分なスペースがあれば、cloud-init データを格納する追加のパーティションを作成できます。
dosfstools、mtools、および libisoburn を インストール して下さい。
まず、LABEL を CIDATA
に設定して FAT イメージを作成します:
$ mkfs.fat -C -n CIDATA cloud-init.img 2048
meta-data
ファイルと user-data
ファイルをそのルートにコピーします:
$ mcopy -i cloud-init.img meta-data user-data network-config ::
公式 ISO を再パックして、FAT イメージを 3 番目のパーティションとして含めます:
$ xorriso -indev archlinux-version-x86_64.iso -outdev archlinux-version-x86_64-with-cidata.iso -append_partition 3 0x0c cloud-init.img -boot_image any replay
最後に、USB インストールメディア#ISO をそのまま使う (BIOS と UEFI) に従って、再パックされた ISO (archlinux-version-x86_64-with-cidata.iso
) を使用して USB フラッシュドライブインストールメディアを準備します。
単一のカスタムビルド ISO の使用
あるいは、Archiso を使用してカスタム ISO を作成します。これにより、タイプに関係なく 1 つのドライブのみを使用できます。
relen プロファイルを基礎として使用します。Cloud-init 設定ファイル を airrootfs/var/lib/cloud/seed/nocloud/
に配置し、ISO をビルドします。
インストールメディアから起動する
完了したら、適切な方法を使用して、インストールメディアと cloud-init データメディア (別々の場合) をヘッドレスマシンに展開します。
ヘッドレスマシンの電源を入れ、インストールメディアから live Arch 環境を起動します。ヘッドレスマシンが起動してネットワークに接続するまで、1 分ほど待ちます。
既存のマシン (キーボードとディスプレイ付き) から SSH でヘッドレス サーバー上のライブ Arch 環境に接続し、インストールガイド の説明に従ってインストールを完了します。