在 EC2 上更新内核似乎是一场噩梦。
我使用的是 saucy,根据uname -a
,目前使用的是内核 3.11.0-14-generic。3.12 中有一个我需要的修复程序,我该如何获取它?
我尝试了说明这里在我的系统日志中得到下面的内容,我必须编辑 grub 默认值来修复它:
kernel /boot/vmlinuz-3.12.0-031200-generic root=LABEL=cloudimg-rootfs ro console=hvc0
initrd /boot/initrd.img-3.12.0-031200-generic
can only boot x86 64 kernels, not xen-3.0-x86_32p
Error 13: Invalid or unsupported executable format
Press any key to continue...
我如何升级到 3.12?
答案1
看来您构建的是 64 位内核而不是 xen 内核。您需要确保以下配置正确:
CONFIG_HYPERVISOR_GUEST=y (3.10+ only)
CONFIG_PARAVIRT=y
CONFIG_XEN=y
CONFIG_PARAVIRT_GUEST=y
CONFIG_PARAVIRT_SPINLOCKS=y
以及 Xen pv 控制台设备支持(设备驱动程序|字符设备)
CONFIG_HVC_DRIVER=y
CONFIG_HVC_XEN=y
以及 Xen 磁盘和网络支持(设备驱动程序|块设备和设备驱动程序|网络设备支持)
CONFIG_XEN_FBDEV_FRONTEND=y
CONFIG_XEN_BLKDEV_FRONTEND=y
CONFIG_XEN_NETDEV_FRONTEND=y
其余部分(设备驱动程序|Xen 驱动程序支持)
CONFIG_XEN_PCIDEV_FRONTEND=y
CONFIG_INPUT_XEN_KBDDEV_FRONTEND=y
CONFIG_XEN_FBDEV_FRONTEND=y
CONFIG_XEN_XENBUS_FRONTEND=y
CONFIG_XEN_SAVE_RESTORE=y
CONFIG_XEN_GRANT_DEV_ALLOC=m
然后您需要使用以下命令构建内核:
make all -j <2*number_of_cores>
要制作 deb 包,只需使用make deb-pkg
。
来源: