Amazon Elastic Compute Cloud (Amazon EC2) Linux インスタンスに接続できなかったり、起動に問題が起こったりします。EC2Rescue を使用してオペレーティングシステム (OS) の問題を診断し、トラブルシューティングしたいです。
EC2Rescue for Linux を使用すると、次のアクションを実行できます。
注: EC2 シリアルコンソールにアクセスできる場合は、コンソールを使用すると、サポートされている Nitro ベースのインスタンスタイプをトラブルシューティングできます。詳細については、「EC2 シリアルコンソールに接続する」を参照してください。AWSSupport-ExecuteEC2Rescue ランブックを使用しても、接続の問題を引き起こす問題を自動的に特定して修正できます。詳細については、「到達できないインスタンスに EC2Rescue ツールを実行する」を参照してください。
前提条件 システムが EC2Rescue の OS およびソフトウェア要件に準拠していることを確認してください。
次の手順を実行します。
問題のあるインスタンスの Amazon マシンイメージ (AMI) を使用して、仮想プライベートクラウド (VPC) でレスキューインスタンスを起動します。 注: 新しいインスタンスが、問題のあるインスタンスと同じアベイラビリティーゾーンに配置されていることを確認してください。問題があるインスタンスと同じアベイラビリティーゾーン内の、既存のインスタンスを使用することもできます。
問題があるインスタンスから Amazon Elastic Block Store (Amazon EBS) ルートボリュームをデタッチします。/dev/xvda、/dev/sda1 などのデバイス名を書き留めておきます。
その Amazon EBS ボリュームをセカンダリデバイスとしてレスキューインスタンスにアタッチします (例: /dev/sdf)。 注: インスタンスのルートデバイスが Amazon EBS 基盤のボリュームの場合は、インスタンスを停止して再起動します。
SSH を使用してレスキューインスタンスに接続します。
root ユーザーとして、次のコマンドを実行して正しいデバイス名を特定します。
$ sudo -i
# lsblk
# rescuedev=/dev/xvdf1
注: lsblk を実行する際、出力のデバイス名を書き留めます。xvsf1 は、レスキューインスタンスに接続したデバイスのデバイス名に置き換えます。
未使用である既存の一時マウントポイントを選択するには、次のコマンドを実行します。
# rescuemnt=/mnt # mkdir -p $rescuemnt
注: マウントポイントには /mnt を使用することをおすすめします。
アタッチされたボリュームからルートファイルシステムをマウントするには、次のコマンドを実行します。
# mount $rescuedev $rescuemnt
ボリュームのマウントが失敗した場合は、次のコマンドを実行します。
dmesg | tail
ログに競合するユニバーサルユニーク識別子 (UUID) が表示される場合は、-o nouuid オプションを指定して上記のコマンドを再実行します。例:
mount -o nouuid $rescuedev $rescuemnt
特別なファイルシステムをマウントし、ルートディレクトリを新しいファイルシステムに変更するには、次のコマンドを実行します。
# for i in proc sys dev run; do mount --bind /$i $rescuemnt/$i ; done # chroot $rescuemnt
Linux 用 EC2Rescue ツールをオフラインの Linux ルートボリュームにダウンロードしてインストールします。
オプションを指定せずに EC2Rescue for Linux を実行し、すべてのモジュールを実行します。
結果に応じて次のコマンドを実行し、サポートされているモジュールでの修復を有効にします。
# ./ec2rl run --remediate
# exit # umount $rescuemnt/{proc,sys,dev,run,}
注: アンマウント操作が失敗した場合は、セカンダリデバイスをアンマウントする前に、レスキューインスタンスを停止または再起動してください。 レスキュー EC2 インスタンスからセカンダリボリュームをデタッチします。 セカンダリボリューム /dev/sdf をルートボリューム /dev/xvda または /dev/sda1 として元のインスタンスにアタッチします。 インスタンスを起動し、インスタンスが期待通りに動作することを確認します。
OS レベルでの接続に関する問題のトラブルシューティングには、次の手順を実行します。
EC2Rescue と Amazon EC2 Systems Manager Automation を使用して障害が発生したインスタンスを復旧する
Amazon EC2 Windows インスタンスに関する問題のトラブルシューティング