EC2 上需要 rpcsec_gss_krb5 和 Linux 内核 2.6.35+

EC2 上需要 rpcsec_gss_krb5 和 Linux 内核 2.6.35+

我正在尝试在 EC2 上执行 Kerberos-auth:d NFS4。为了做到这一点,似乎需要至少 2.6.35 的内核才能获得不错的加密算法。我能找到的提供此功能的发行版是 Ubuntu/Natty,它有 2.6.38。但是,默认映像是 -virtual 风格,缺少 rpcsec_gss_krb5。因此,我试图制作一个启动 -generic 映像的映像,但 EC2 pv-grub 加载程序似乎不支持这些:

    Xen Minimal OS!
  start_info: 0xa01000(VA)
    nr_pages: 0x26700
  shared_inf: 0xbee66000(MA)
     pt_base: 0xa04000(VA)
nr_pt_frames: 0x9
    mfn_list: 0x967000(VA)
   mod_start: 0x0(VA)
     mod_len: 0
       flags: 0x0
    cmd_line:  root=/dev/sda1 ro 4
  stack:      0x946780-0x966780
MM: Init
      _text: 0x0(VA)
     _etext: 0x61e65(VA)
   _erodata: 0x76000(VA)
     _edata: 0x7b6d4(VA)
stack start: 0x946780(VA)
       _end: 0x966d34(VA)
  start_pfn: a10
    max_pfn: 26700
Mapping memory range 0xc00000 - 0x26700000
setting 0x0-0x76000 readonly
skipped 0x1000
MM: Initialise page allocator for b3e000(b3e000)-0(26700000)
MM: done
Demand map pfns at 26701000-36701000.
Heap resides at 36702000-76702000.
Initialising timer interface
Initialising console ... done.
gnttab_table mapped at 0x26701000.
Initialising scheduler
Thread "Idle": pointer: 0x36702008, stack: 0xbf0000
Initialising xenbus
Thread "xenstore": pointer: 0x36702478, stack: 0x26600000
Dummy main: start_info=0x966880
Thread "main": pointer: 0x367028e8, stack: 0x26610000
"main" "root=/dev/sda1" "ro" "4" 
vbd 2049 is hd0
******************* BLKFRONT for device/vbd/2049 **********
backend at /local/domain/0/backend/vbd/1312/2049
Failed to read /local/domain/0/backend/vbd/1312/2049/feature-barrier.
Failed to read /local/domain/0/backend/vbd/1312/2049/feature-flush-cache.
4194304 sectors of 0 bytes
**************************
    [H
    [J  Booting 'Ubuntu Natty (development branch), kernel 2.6.38-11-virtual'
root            (hd0)
 Filesystem type is ext2fs, using whole disk
kernel          /boot/vmlinuz-2.6.38-11-generic root=LABEL=uec-rootfs ro console=hvc0 
initrd          /boot/initrd.img-2.6.38-11-generic

ERROR Invalid kernel: elf_xen_note_check: ERROR: Will only load images built for the generic loader or Linux images
xc_dom_parse_image returned -1

Error 9: Unknown boot failure
Press any key to continue...

我想我的问题是这样的:

  1. 我对错误消息的解释是否正确:-generic 内核无法由 pv-grub 启动?
  2. Ubuntu 中是否有其他包含 rpcsec_gss_krb5 的可启动内核/包(apt-file 未找到相关内容,但可能有外部存储库)?
  3. 是否有其他满足我的标准的社区 AMI?

或者,我需要做什么来构建 -generic 内核的 pv-grub/EC2 变体?

答案1

最后,暴力破解了 Debian/unstable 中的一个内核镜像。给定一个来自 AMI ebs/ubuntu-images-milestone/ubuntu-natty-11.04-beta2-i386-server-20110413.1 (ami-4c906c25) 的卷,我必须做三件事:

  1. 从 Debian repo 下载内核:linux-image-3.0.0-2-686-pae_3.0.0-5_i386.deb
  2. 强制内核: dpkg -i --force-all linux-image-3.0.0-2-686-pae_3.0.0-5_i386.deb
  3. 手动生成ramdisk:update-initramfs -c -k 3.0.0-2-686-pae
  4. 手动为新内核创建 /boot/grub/menu.lst 条目。请注意,您需要设置 root=/dev/xvda1,因为生成的 ramdisk 将不包含标签。

完成此操作后,使用 pv-grub 内核 aki-805ea7e9 从该卷上的快照创建的 AMI 可以正常启动。

更新:实际上安装 .deb 会让 apt-get 非常恼火。相反,直接提取它dpkg-deb -x linux-image-3.0.0-2-686-pae_3.0.0-5_i386.deb /可能是更好的选择。

相关内容