Amazon EC2の起動時にコンソールを操作するにはどうすればよいですか?


8

この起動プロンプトで立ち往生しているインスタンスがあります(管理コンソールからインスタンスログを見てください)。

The disk drive for /mydisk is not ready yet or not present
Continue to wait; or Press S to skip mounting or M for manual recovery

EBSボリュームを追加してマウントしてから、EBSボリュームを削除し、/ etc / fstabからエントリを削除するのを忘れて、マシンを再起動しました。起動時にプロンプ​​トが表示され、インスタンスにSSHで接続できません。

この問題を解決するにはどうすればよいですか?

回答:


11

私はあなたの問題の「簡単な」解決策を知りませんが、(ルートデバイスの種類によっては)多少複雑な解決策があります。

インスタンスにEBSルートがある場合、ソリューションは非常に簡単です。インスタンスを停止し、EBSドライブを切り離し、別のインスタンスを起動して、それにEBSボリュームを接続します。必要に応じてfstabファイルを編集し、EBSボリュームを切り離して、元のインスタンスに再接続します。

インスタンスにS3ベースのルート(つまり、インスタンスストア)がある場合、ソリューションは少し難しくなります。AMIからデータをダウンロードし(ec2-download-bundleを使用)、そのデータを単一のファイルに抽出します(ec2-unbundleを使用)。次に、イメージをマウントし、必要な変更を加えて、イメージを再バンドルします(ec2-bundle-volを使用して、-vフラグでバンドルするデフォルトのボリュームを上書きします)。これにより、行った変更を除いて、古いものと同じ新しい実行可能なAMIが得られます。または、ddを使用してイメージファイルのコンテンツをEBSボリュームにコピーしてから、EBSルートバックアップインスタンスに変換することもできます。


ありがたいことに、私のインスタンスにはEBSルートがあります!答えてくれてありがとう。試してみて、動作することを確認します。
ErJab、2011年

1
ErJab:EBSブートでこれを行う方法を説明した記事を書きました:alestic.com/2011/02/ec2-fix-ebs-root
Eric Hammond

タイプミスnofail/etc/fstabした場合に備えて追加することは賢明でしょうか?おそらく、「エラー」(で説明fstab(5))が起動プロセスを妨げることはありません。
Adam Monsen、2012

@AdamMonsen:ディスクが利用できない場合、ブートプロセスがリカバリモードに戻るため、これは一部のドライブ(たとえば、一時的なドライブ)には良い習慣です。私は通常、オプションを使用しますnobootwait-試したnofailことはありません-それらの間には微妙な違いがあると思います。
cyberx86

0

ubuntuにがある場合、最後の2行をsystemd編集/lib/systemd/system/local-fs.targetしてコメント化できます。

#OnFailure=emergency.target
#OnFailureJobMode=replace-irreversibly

私はこれを広範囲にテストしておらず、リスクや副作用が含まれているかどうかはわかりませんが、今のところそれは魅力的なように機能します。ルートボリュームと他のすべてのボリューム(明らかに構成が正しくないボリュームを除く)をマウントし、SSHが起動するまでブートプロセスを続行するため、インスタンスに接続して誤ったfstabエントリを修正できます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.