aws ec2 run-instances --image-id ami-1624987f --max-count 1 --min-count 1 --key-name mel --instance-type t1.micro
aws ec2 create-volume --availability-zone us-east-1a --size 10
This team will make a 10 Gb disk for us. Important: the drive must be in the same zone as the instance (in our case it is us-east-1a). aws ec2 attach-volume --instance-id i-2bc0925b --volume-id vol-08ab3079 --device /dev/xvdf
mkfs.ext3 /dev/xvdf mkdir /mnt/centos-image mount /dev/xvdf /mnt/centos-image cd !$
mkdir centos-image/{boot,tmp,dev,sys,proc,etc,var} mount -t proc none /mnt/centos-image/proc/ mount -t sysfs none /mnt/centos-image/sys/ for i in console null zero ; do /sbin/MAKEDEV -d /mnt/centos-image/dev -x $i ; done
[main] cachedir=/var/cache/yum debuglevel=2 logfile=/var/log/yum.log exclude=*-debuginfo gpgcheck=0 obsoletes=1 reposdir=/dev/null [base] name=CentOS-5.9 - Base mirrorlist=http://mirrorlist.centos.org/?release=5.9&arch=x86_64&repo=os #baseurl=http://mirror.centos.org/centos/5.9/os/x86_64/ gpgcheck=1 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5 [updates] name=CentOS-5.9 - Updates mirrorlist=http://mirrorlist.centos.org/?release=5.9&arch=x86_64&repo=updates #baseurl=http://mirror.centos.org/centos/5.9/updates/x86_64/ gpgcheck=1 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5 [extras] name=CentOS-5.9 - Extras mirrorlist=http://mirrorlist.centos.org/?release=5.9&arch=x86_64&repo=extras #baseurl=http://mirror.centos.org/centos/5.9/extras/x86_64/ gpgcheck=1 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-5 [centosplus] name=CentOS-5.9 - Plus mirrorlist=http://mirrorlist.centos.org/?release=5.9&arch=x86_64&repo=centosplus #baseurl=http://mirror.centos.org/centos/5.9/centosplus/x86_64/ gpgcheck=1 enabled=0 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-5 [contrib] name=CentOS-5.9 - Contrib mirrorlist=http://mirrorlist.centos.org/?release=5.9&arch=x86_64&repo=contrib #baseurl=http://mirror.centos.org/centos/5.9/contrib/x86_64/ gpgcheck=1 enabled=0 gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-5
yum -c ~/yum-centos.conf --installroot=/mnt/centos-image/ -y groupinstall Base
yum -c ~/yum-centos.conf --installroot=/mnt/centos-image/ install $packet_name
vi /mnt/centos-image /dev/xvda1 / ext3 defaults 0 0 none /dev/pts devpts gid=5,mode=620 0 0 none /dev/shm tmpfs defaults 0 0 none /proc proc defaults 0 0 none /sys sysfs defaults 0 0
yum -c ~/yum-centos.conf --installroot=/mnt/centos-image/ -y install kernel-xen
chroot /mnt/centos-image/ grub-install /dev/xvdf
chroot /mnt/centos-image/ cd boot/ mkinitrd --omit-scsi-modules --with=xennet --with=xenblk --fstab=/etc/fstab --preload=xenblk initrd-2.6.18-348.1.1.el5xen.img 2.6.18-348.1.1.el5xen
default=0 timeout=5 hiddenmenu title CentOS_5.9_(x86_64) root (hd0) kernel /boot/vmlinuz-2.6.18-348.1.1.el5xen ro root=/dev/xvda1 initrd /boot/initrd-2.6.18-348.1.1.el5xen.img
vi etc/sysconfig/network-scripts/ifcfg-eth0 ONBOOT=yes DEVICE=eth0 BOOTPROTO=dhcp TYPE=Ethernet USERCTL=yes PEERDNS=yes IPV6INIT=no vi etc/sysconfig/network NETWORKING=yes chroot /mnt/centos5img/ chkconfig --level 2345 network on vi /mnt/centos5img/etc/ssh/sshd_config ... UseDNS no PermitRootLogin without-password
vi /mnt/centos5img/etc/init.d/ec2-get-ssh
chmod +x /mnt/centos-image/etc/init.d/ec2-get-ssh /usr/sbin/chroot /mnt/centos-image/ /sbin/chkconfig --level 34 ec2-get-ssh on
umount /mnt/centos-image/proc/ umount /mnt/centos-image/sys/ umount /mnt/centos-image/
aws ec2 create-snapshot --volume-id vol-0b4bd07a --description centos-snap
aws ec2 describe-images --owner amazon --region us-east-1 --output text | grep "\/pv-grub-hd0.*-x86_64" | awk '{print $7}' | grep aki aki-88aa75e1 aki-b4aa75dd
Source: https://habr.com/ru/post/169331/
All Articles