How are Ubuntu creating cloud images? Are they using FAI or some custom process? I am interested in creating these images myself. I would like them to have syslinux instead of grub and console=ttyS0 output, so I can use them for Eucalyptus cloud.
Ubuntu – What does Ubuntu use for creating cloud-images
clouddisk-image
Related Solutions
I was having the same issue, so I ended up downloading all the "trusty-server-cloudimg-amd64" prefixed images. There was a tar which when unzipped contained a README.files that provided some information:
This compressed tar archive contains files relevant to this machine image. Each filename is prefixed by a constant string denoting release and architecture information. The prefix, for example, may be 'maverick-server-cloudimg-amd64', in which case files will be named like maverick-server-cloudimg-amd64.img maverick-server-cloudimg-amd64-vmlinuz-virtual
All or some of the following files may be present in the archive:
.img This file is an partition image. It can be bundled, uploaded and registered to EC2, Eucalyptus or OpenStack as a Amazon Machine Image (ami/emi).
-disk1.img This is a qcow2 compressed disk image. It can be uploaded to OpenStack or booted directly via kvm. You should probably uncompress the image (qemu-img convert) before use in non-testing environment.
-uefi1.img This is a qcow2 compressed disk image that has GPT partitioning and a UEFI bootloader. It is bootable via UEFI, BIOS/GPT and PVGRUB (with support for GPT partition tables. It is bootable in OpenStack or directly via kvm. You should probably uncompress the images (qemu-img convert) before using it in a non-testing environment.
-root.tar.gz This is a compressed tar file containing the contents of the root filesystem. Essentially, 'tar cpzf - /'.
-vmlinuz-virtual This is a Linux kernel. It can be bundled, uploaded, and registered UEC as an Amazon Kernel Image (aki/eki). The '-virtual' string represents the Ubuntu Linux package that this kernel came from. It could potentially be '-server' or another string.
-initrd-virtual This is a Linux initrd. It can be bundled, uploaded, and registered UEC as an Amazon Ramdisk Image (ari/eri). Not all images require an initrd, and thus this file may not be present. If it is not present, then the image should be registered without a ramdisk.
-loader This file is a multiboot compliant image capable of loading the guest image. On UEC installs where the host operating system is 10.10 or later (LP: #611144), this can registered as a kernel (eki). It provides function similar to the Amazon released feature "Enabling User Provided Kernels". When the loader is used to boot an instance, a kernel upgrade performed inside the instance will take affect on subsequent boots.
-floppy This file is a floppy disk image. It is not useful or relevant to running inside of EC2 or UEC. The purpose of this file is to allow booting the .img outside a cloud. To boot outside of a cloud environment (where a metadata service is not present), the following kvm command line can be used: kvm -boot a -fda -floppy -drive file=.img,if=virtio This is not necessary, and generally obsolete, if -disk1.img is available.
Best Answer
You can find the code for building all the cloud images here:
See also: