【问题标题】:Kernel panic - Creating own AMI (Amazon Machine Image)内核恐慌 - 创建自己的 AMI(亚马逊系统映像)
【发布时间】:2011-03-03 20:59:53
【问题描述】:

我创建了自己的 AMI 并在 Amazon EC2 上注册了它。但是当 AMI 启动时,我收到以下错误:

内核崩溃 - 不同步:VFS: Unable to mount root fs on unknown-block(8,1)

图片在本地运行没有任何问题。

fstab 包含:

proc          /proc   proc     defaults                      0 0
/dev/sda1     /       ext3     relatime,errors=remount-ro    0 1

图像是使用以下命令创建的

ec2-bundle-image -i image.raw -r i386 -c cert-xxx.pem -k pk-xxx.pem --user 123456

完整的 AMI 启动日志:

Linux version 2.6.16-xenU (builder@xenbat.amazonsa) (gcc version 4.0.1 20050727 (Red Hat 4.0.1-5)) #1 SMP Mon May 28 03:41:49 SAST 2007

BIOS-provided physical RAM map:

 Xen: 0000000000000000 - 000000006a400000 (usable)

980MB HIGHMEM available.

727MB LOWMEM available.

NX (Execute Disable) protection: active

IRQ lockup detection disabled

Built 1 zonelists

Kernel command line:  root=/dev/sda1 ro 4

Enabling fast FPU save and restore... done.

Enabling unmasked SIMD FPU exception support... done.

Initializing CPU#0

PID hash table entries: 4096 (order: 12, 65536 bytes)

Xen reported: 2666.666 MHz processor.

Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)

Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)

Software IO TLB disabled

vmalloc area: ee000000-f53fe000, maxmem 2d7fe000

Memory: 1718700k/1748992k available (1958k kernel code, 20948k reserved, 620k data, 144k init, 1003528k highmem)

Checking if this processor honours the WP bit even in supervisor mode... Ok.

Calibrating delay using timer specific routine.. 5335.60 BogoMIPS (lpj=26678013)

Mount-cache hash table entries: 512

CPU: L1 I cache: 32K, L1 D cache: 32K

CPU: L2 cache: 6144K

Checking 'hlt' instruction... OK.

Brought up 1 CPUs

migration_cost=0

Grant table initialized

NET: Registered protocol family 16

Brought up 1 CPUs

xen_mem: Initialising balloon driver.

highmem bounce pool size: 64 pages

VFS: Disk quotas dquot_6.5.1

Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)

Initializing Cryptographic API

io scheduler noop registered

io scheduler anticipatory registered (default)

io scheduler deadline registered

io scheduler cfq registered

i8042.c: No controller found.

RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize

Xen virtual console successfully installed as tty1

Event-channel device installed.

netfront: Initialising virtual ethernet driver.

mice: PS/2 mouse device common for all mice

md: md driver 0.90.3 MAX_MD_DEVS=256, MD_SB_DISKS=27

md: bitmap version 4.39

NET: Registered protocol family 2

Registering block device major 8

IP route cache hash table entries: 65536 (order: 6, 262144 bytes)

TCP established hash table entries: 262144 (order: 9, 2097152 bytes)

TCP bind hash table entries: 65536 (order: 7, 524288 bytes)

TCP: Hash tables configured (established 262144 bind 65536)

TCP reno registered

TCP bic registered

NET: Registered protocol family 1

NET: Registered protocol family 17

NET: Registered protocol family 15

Using IPI No-Shortcut mode

md: Autodetecting RAID arrays.

md: autorun ...

md: ... autorun DONE.

Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(8,1) 

【问题讨论】:

    标签: linux ubuntu amazon-ec2 amazon-web-services


    【解决方案1】:

    尝试使用正确的 AKI 和 ARI 注册 AMI。

    【讨论】:

    • 很高兴它对你有用。顺便说一句,我还在 AWS 论坛上看到了您的帖子。 :)
    • 还必须将架构设置为 i386 或任何其他选项与生成 AMI 的实例的值相同
    • 这非常有用,非常感谢。老实说,我对成功感到非常高兴,以至于我完全忘记了我对代码做了什么导致第二次状态检查失败。
    • fyi,我必须用谷歌搜索 AKI - 这意味着 Amazon Kernel Image 和每个 ec2 实例都有一个 AKI ID
    【解决方案2】:

    为了后代: 我将自己制作的 AMI 从美国东部地区复制到美国西部和欧盟地区。从该 AMI 创建实例时,我必须查找该区域的正确内核映像。
    首先我查了一下us-east内核的名字:

    ec2-describe-images --headers -o amazon --filter "name=pv-grub-*.gz"
    Type    ImageID Name    Owner   State   Accessibility   ProductCodes    Architecture    ImageType   KernelId    RamdiskId   Platform    RootDeviceType  VirtualizationType  Hypervisor
    IMAGE   aki-659ccb0c    amazon/pv-grub-hd00_1.04-i386.gz    amazon  available   public      i386    kernel              instance-store  paravirtual xen
    IMAGE   aki-499ccb20    amazon/pv-grub-hd00_1.04-x86_64.gz  amazon  available   public      x86_64  kernel              instance-store  paravirtual xen
    IMAGE   aki-8f9dcae6    amazon/pv-grub-hd0_1.04-i386.gz amazon  available   public      i386    kernel              instance-store  paravirtual xen
    IMAGE   aki-919dcaf8    amazon/pv-grub-hd0_1.04-x86_64.gz   amazon  available   public      x86_64  kernel              instance-store  paravirtual xen
    IMAGE   aki-b2aa75db    amazon/pv-grub-hd00_1.03-i386.gz    amazon  available   public      i386    kernel              instance-store  paravirtual xen
    IMAGE   aki-b4aa75dd    amazon/pv-grub-hd00_1.03-x86_64.gz  amazon  available   public      x86_64  kernel              instance-store  paravirtual xen
    IMAGE   aki-b6aa75df    amazon/pv-grub-hd0_1.03-i386.gz amazon  available   public      i386    kernel              instance-store  paravirtual xen
    IMAGE   aki-88aa75e1    amazon/pv-grub-hd0_1.03-x86_64.gz   amazon  available   public      x86_64  kernel              instance-store  paravirtual xen
    

    我在 us-east 中使用的内核是 aki-b4aa75dd,其名称为 amazon/pv-grub-hd00_1.03-x86_64.gz

    然后我在 us-west 中查找内核映像:

    ec2-describe-images --region us-west-1 -o amazon --filter "name=pv-grub-*.gz"   ##
    IMAGE   aki-960531d3    amazon/pv-grub-hd00_1.04-i386.gz    amazon  available   public      i386    kernel              instance-store  paravirtual xen
    IMAGE   aki-920531d7    amazon/pv-grub-hd00_1.04-x86_64.gz  amazon  available   public      x86_64  kernel              instance-store  paravirtual xen
    IMAGE   aki-8e0531cb    amazon/pv-grub-hd0_1.04-i386.gz amazon  available   public      i386    kernel              instance-store  paravirtual xen
    IMAGE   aki-880531cd    amazon/pv-grub-hd0_1.04-x86_64.gz   amazon  available   public      x86_64  kernel              instance-store  paravirtual xen
    IMAGE   aki-e97e26ac    amazon/pv-grub-hd00_1.03-i386.gz    amazon  available   public      i386    kernel              instance-store  paravirtual xen
    IMAGE   aki-eb7e26ae    amazon/pv-grub-hd00_1.03-x86_64.gz  amazon  available   public      x86_64  kernel              instance-store  paravirtual xen
    IMAGE   aki-f57e26b0    amazon/pv-grub-hd0_1.03-i386.gz amazon  available   public      i386    kernel              instance-store  paravirtual xen
    IMAGE   aki-f77e26b2    amazon/pv-grub-hd0_1.03-x86_64.gz   amazon  available   public      x86_64  kernel              instance-store  paravirtual xen
    

    ...然后告诉我,us-west 中同名的内核的内核 ID 为 aki-eb7e26ae

    【讨论】:

    • 谢谢,同样的问题。没有意识到我必须使用相同的内核 ID。
    猜你喜欢
    • 1970-01-01
    • 2015-04-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-30
    • 2016-03-11
    • 2013-12-12
    • 2017-06-06
    相关资源
    最近更新 更多