目的:html
在centos6.5操做系统环境下制做一个centos6.5的kvm镜像,安装cloud-init,能本身主动扩展根分区linux
1、制做环境:git
操做环境是在openstack平台开一个实例。装的是centos6.5,镜像来自:http://cloud.centos.org/centos/6.5/images/CentOS-6-x86_64-GenericCloud-20140929_01.qcow2github
centos社区制做的镜像。不支持本身主动扩展根分区。致使建立实例时不论你指定硬盘大小是多大,它都是7G多点。centos
2、安装软件:网络
qemu-img create -f qcow2 centos-6.5.qcow2 5G
三、建立命令:
virt-install --name centos-6.5 --ram 1024 --cdrom=CentOS-6.5-x86_64-minimal.iso --disk centos-6.5.qcow2,format=qcow2 --grap hics vnc,listen=0.0.0.0 —noautoconsole --os-type=linux --os-variant=rhel6四、系统安装过程:
/boot/grub/menu.lst
中kernel參数中添加如下的内容:
kernel console=tty0 console=ttyS0,115200n8(4)改动网络信息 /etc/sysconfig/network-scripts/ifcfg-eth0 (删掉mac信息)例如如下:...(省略n个參数)...TYPE=Ethernet DEVICE=eth0 ONBOOT=yes BOOTPROTO=dhcp NM_CONTROLLED=no添加一行到/etc/sysconfig/network :NOZERCONF=yes
(5)添加epel源、更新系统。安装git:yum install -y http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum -y distro-sync
yum -y install git
(6)安装ACPI服务,能让宿主机对虚拟机进行开关机等电源管理操做yum install acpidchkconfig acpid on
(7)安装linux rootfs resize。使得实例启动时可以本身主动扩展根分区cd /tmp git clone https://github.com/flegmatik/linux-rootfs-resize.git cd linux-rootfs-resize ./install(8)安装cloud-inityum install -y cloud-utils cloud-init parted改动配置文件/etc/cloud/cloud.cfg 。在cloud_init_modules 如下添加:- resolv-conf
(9)关机:
poweroff
六、善后操做
(1)清除网络相关硬件生成信息virt-sysprep -d centos-6.5
(2)压缩镜像
virt-sparsify --compress /tmp/centos-6.5.qcow2 centos-6.5-cloud.qcow2镜像制做到此结束