Skip to content
This repository has been archived by the owner on Jun 2, 2020. It is now read-only.

monolive/euca-single-kernel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 

Repository files navigation

euca-single-kernel

Provides a single kernel/ramdisk for all Linux EMI. The EMI is initially booted using kernel / ramdisk.

The ramdisk reads grub ( 1 or 2 ) :

  • grub.cfg
  • menu.lst
  • grub.conf

It will then kexec into the configured kernel. It will also erase partition 2 ( ephemeral disk ) and add it to partition 1 ( / )

Both scripts are modified version of Scott Moser scripts. https://code.launchpad.net/~smoser/+junk/kexec-loader

Requirements

The ramdisk is generated on top of ubuntu. You will need to have the following package available as part of your image

  • kexec-tools
  • cloud-utils ( provides growpart )
  • util-linux ( provides sfdisk )

How to

  1. Check out code

  2. Copy all files from conf directory to /etc/initramfs-tools/


cp -ax kexec-loader/conf/* /etc/initramfs-tools
  1. Update initramfs

update-initramfs -c -k `uname -r`
  1. Bundle / upload / register - kernel / initramdisk pair

  2. growroot resize the root partition but not the FS. By doing it in ramdisk, I get an 80% succes rate, by doing it after boot, I get 100% sucess rate. You can add the following lines as part of your user-data or in rc.local.


rootdisk=`ls /dev/[xvsh]*da`
resize2fs ${rootdisk}1

Todo

  • Clean up kexec-loader script ( some part of script are not neccesary )
  • Create a conf file for growroot ( to enable it or not )

About

Unified kernel to boot all images.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages