TLDR:我正在尝试创建一个由 EBS 支持的 AMI 实例,然后使用 Busybox 转向它,但我得到了内核恐慌:
VFS:以只读方式挂载根目录(ext3 文件系统)。
释放未使用的内核内存:156k 已释放
内核崩溃 - 未同步:未找到 init。尝试将 init= 选项传递给内核。
代码的存储库在这里:https://github.com/atramos/ec2-spotter
它的工作原理是:
- 使用脚本 make-busybox.sh 创建静态 busybox 图像。
- 创建基本文件系统 - /boot、/etc、/sbin 等等。
- 创建一个枢轴脚本来替换/sbin/init
- 将 busybox 映像捆绑到 AMI,并将 AMI 上传到 S3 存储桶
- 创建 EBS 卷
- 将我当前的操作系统克隆到 EBS 卷
- 修复设备路径
- 使用 busybox AMI 创建新的 EC2 实例
- 附加 EBS 卷
- 启动新的 EC2 实例并转向 EBS 卷
一切进展顺利,直到#9,实例启动,但随后内核崩溃,如上所示。
我尝试了不同的初始化脚本路径。我尝试构建一个静态“Hello World”C 程序作为初始化程序。但还是出现同样的错误。
感谢您的帮助!