この答え と thesewebsites のおかげで、Amazon LinuxをVirtualBox内で起動できるようになりました。私が取ったステップの簡単な概要:
dd
ローカルイメージファイルへのssh
を介したEBSボリュームの内容。grub-legacy-ec2
パッケージを使用)。qemu-img
を使用して、イメージファイルをvmdkに変換します。VMが起動し、grubがロードされ、カーネルが見つかりました。しかし、ルートデバイスをマウントしようとすると失敗します:
dracut Warning: No root device "block:/dev/xvda1" found
dracut Warning: Boot has failed. To debug this issue add "rdshell" to the kernel command line.
dracut Warning: Signal caught!
dracut Warning: Boot has failed. To debug this issue add "rdshell" to the kernel command line.
Kernel panic - not syncing: Attempted to kill init!
Pid: 1, comm: init Not tainted 2.6.35.14-107.1.39.amzn1.x86_64 #1
/boot/grub/menu.lst
を変更して、ルートデバイスをラベルとUUIDで検索しようとしましたが、何も機能しません。 xenカーネルはVirtualBoxと互換性がないと思います。
このすべての取り組みの背後にある理由は、本番環境にできるだけ近いVagrantボックスを作成することです。これにより、デプロイをローカルでテストできます。 EC2でテストを実行するのは安上がりですが、接続性が悪いと、エクスペリエンスが台無しになることがあります。さらに、本番環境を備えた仮想マシンがあり、同僚がアプリの開発を開始して実行するためだけにSunの下にすべてをインストールする必要がないようにするのは本当にいいことです。
別のカーネルを実行してみると、どのカーネルをAmazon Linux 2011.09にできるだけ近づけることができますか?
頑張って諦めましたが、結局成功しました!
vmwareに移植されたAmazon Linux AMIで起動できました!
私はほとんど初心者ですが、何時間もの試行錯誤の末、元のAmazonカーネルをvmlinuz-2.6.32-38-genericに置き換える ubuntu 64 10.04ディストリビューションから取得しました。
AMI内のAmazon構成が、明らかに見つからない内部アドレスで何かを探しているため、多くのエラーが発生します。/usr/bin/cloud-initだと思います。
しかし、私は内部でログインできます、そしてすべてがうまくいっているようです!
ご協力いただきありがとうございます!!
this AMIからVMwareに移行するための手順を追ったブログ記事を書きました。
お役に立てれば!
Amazonの公式カーネルは、2011.09ディストリビューションで派生したie 2.6.35.14です。
おそらくget_reference_source
を使用してAmazonのソースパッケージを取得できますが、Amazonの外部で動作することは期待できません。
Cloudifyのスタッフは、ベアメタルマシンにアクセスせずに、VirtualBox対応のVagrantボックスを作成する方法を共有しました。AWSを使用しています。
天国への9つのステップ:
ソース: http://www.developer.com/design/creating-a-reproducible-and-portable-developmentのブログ投稿-environment.html 上記の9つのステップ
コード: https://github.com/cloudify-cosmo/cloudify-packager/tree/3.2m4/image-builder =