Amazon āĻ•ā§āĻ˛āĻžāĻ‰āĻĄā§‡ āĻŦāĻŋāĻļā§āĻĻā§āĻ§ CentOS 8.1 āĻĻāĻŋāĻ¯āĻŧā§‡ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ¨āĻŋāĻœā§‡āĻ° āĻ›āĻŦāĻŋ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž

āĻāĻ‡ āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļāĻŋāĻ•āĻžāĻŸāĻŋ āĻāĻ•āĻ‡ āĻ¨āĻžāĻŽā§‡āĻ° āĻāĻ•āĻŸāĻŋ "āĻ•āĻžāĻāĻŸāĻž" āĻĒā§āĻ°āĻŦāĻ¨ā§āĻ§ CentOS 5.9 āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡, āĻāĻŦāĻ‚ āĻ¨āĻ¤ā§āĻ¨ OS āĻāĻ° āĻŦā§ˆāĻļāĻŋāĻˇā§āĻŸā§āĻ¯āĻ—ā§āĻ˛āĻŋāĻ•ā§‡ āĻŦāĻŋāĻŦā§‡āĻšāĻ¨āĻž āĻ•āĻ°ā§‡āĨ¤ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§‡ AWS āĻŽāĻžāĻ°ā§āĻ•ā§‡āĻŸāĻĒā§āĻ˛ā§‡āĻ¸ā§‡ centos.org āĻĨā§‡āĻ•ā§‡ āĻ•ā§‹āĻ¨ā§‹ āĻ…āĻĢāĻŋāĻ¸āĻŋāĻ¯āĻŧāĻžāĻ˛ Centos8 āĻ›āĻŦāĻŋ āĻ¨ā§‡āĻ‡āĨ¤

āĻ¯ā§‡āĻŽāĻ¨ āĻ†āĻĒāĻ¨āĻŋ āĻœāĻžāĻ¨ā§‡āĻ¨, āĻ…ā§āĻ¯āĻžāĻŽāĻžāĻœāĻ¨ āĻ•ā§āĻ˛āĻžāĻ‰āĻĄā§‡ āĻ­āĻžāĻ°ā§āĻšā§āĻ¯āĻŧāĻžāĻ˛ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ—ā§āĻ˛āĻŋ āĻ›āĻŦāĻŋāĻ° āĻ‰āĻĒāĻ° āĻ­āĻŋāĻ¤ā§āĻ¤āĻŋ āĻ•āĻ°ā§‡ āĻšāĻžāĻ˛ā§ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ (āĻ¤āĻĨāĻžāĻ•āĻĨāĻŋāĻ¤ āĻ†āĻŽāĻŋ āĻ•āĻŋ) āĻ…ā§āĻ¯āĻžāĻŽāĻžāĻœāĻ¨ āĻ¤āĻžāĻĻā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻŦāĻĄāĻŧ āĻ¸āĻ‚āĻ–ā§āĻ¯āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻ•āĻ°ā§‡; āĻ†āĻĒāĻ¨āĻŋ āĻ¤ā§ƒāĻ¤ā§€āĻ¯āĻŧ āĻĒāĻ•ā§āĻˇā§‡āĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤ āĻ•āĻ°āĻž āĻ¸āĻ°ā§āĻŦāĻœāĻ¨ā§€āĻ¨ āĻšāĻŋāĻ¤ā§āĻ°āĻ—ā§āĻ˛āĻŋāĻ“ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨, āĻ¯āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ•ā§āĻ˛āĻžāĻ‰āĻĄ āĻĒā§āĻ°āĻĻāĻžāĻ¨āĻ•āĻžāĻ°ā§€ āĻ…āĻŦāĻļā§āĻ¯āĻ‡ āĻ•ā§‹āĻ¨ āĻĻāĻžāĻ¯āĻŧāĻŦāĻĻā§āĻ§āĻ¤āĻž āĻŦāĻšāĻ¨ āĻ•āĻ°ā§‡ āĻ¨āĻžāĨ¤ āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ•āĻ–āĻ¨āĻ“ āĻ•āĻ–āĻ¨āĻ“ āĻ†āĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ āĻĒāĻ°āĻžāĻŽāĻŋāĻ¤āĻŋ āĻ¸āĻš āĻāĻ•āĻŸāĻŋ āĻĒāĻ°āĻŋāĻˇā§āĻ•āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻšāĻŋāĻ¤ā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨, āĻ¯āĻž āĻšāĻŋāĻ¤ā§āĻ°āĻ—ā§āĻ˛āĻŋāĻ° āĻ¤āĻžāĻ˛āĻŋāĻ•āĻžāĻ¯āĻŧ āĻ¨ā§‡āĻ‡āĨ¤

āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻ•āĻŽāĻžāĻ¤ā§āĻ° āĻ‰āĻĒāĻžāĻ¯āĻŧ āĻšāĻ˛ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ¨āĻŋāĻœā§‡āĻ° AMI āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻžāĨ¤

āĻ…āĻĢāĻŋāĻ¸āĻŋāĻ¯āĻŧāĻžāĻ˛ āĻĄāĻ•ā§āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻļāĻ¨ āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻ•āĻ°ā§‡ āĻĒā§āĻ°āĻŖāĻžāĻ˛ā§€ āĻāĻ•āĻŸāĻŋ "āĻ‡āĻ¨āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ¨ā§āĻ¸ āĻ¸ā§āĻŸā§‹āĻ°-āĻŦā§āĻ¯āĻžāĻ•āĻĄ āĻāĻāĻŽāĻ†āĻ‡" āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻžāĨ¤

āĻāĻ‡ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ° āĻ…āĻ¸ā§āĻŦāĻŋāĻ§āĻž āĻšāĻ˛ āĻ¯ā§‡ āĻ¸āĻŽāĻžāĻĒā§āĻ¤ āĻšāĻŋāĻ¤ā§āĻ°āĻŸāĻŋāĻ•ā§‡ āĻāĻ•āĻŸāĻŋ "EBS-āĻŦā§āĻ¯āĻžāĻ•āĻĄ AMI" āĻ¤ā§‡ āĻ°ā§‚āĻĒāĻžāĻ¨ā§āĻ¤āĻ° āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤ āĻ•āĻ•āĻĒāĻŋāĻŸ āĻ‡āĻŽā§‡āĻœ āĻŦāĻŋāĻ˛ā§āĻĄāĻžāĻ°āĻ“ āĻ˛āĻ•ā§āĻˇāĻŖā§€āĻ¯āĻŧāĨ¤ āĻāĻŸāĻŋ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ•āĻžāĻ¸ā§āĻŸāĻŽ āĻ‡āĻŽā§‡āĻœ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻ¤ā§‡ āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§‡āĻŦā§‡, āĻŽāĻ§ā§āĻ¯ā§‡ CLI āĻŦāĻž WEB āĻ—ā§āĻ‡ āĻŽā§‹āĻĄ, āĻ•āĻŋāĻ¨ā§āĻ¤ā§ āĻ¯āĻ–āĻ¨ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ‡āĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§‡ Centos 8 āĻ†āĻ›ā§‡āĨ¤

āĻŽāĻ§ā§āĻ¯āĻŦāĻ°ā§āĻ¤ā§€ āĻĒāĻĻāĻ•ā§āĻˇā§‡āĻĒ āĻ›āĻžāĻĄāĻŧāĻžāĻ‡ āĻ…ā§āĻ¯āĻžāĻŽāĻžāĻœāĻ¨ āĻ•ā§āĻ˛āĻžāĻ‰āĻĄā§‡ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ¨āĻŋāĻœāĻ¸ā§āĻŦ EBS-āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ AMI āĻ•ā§€āĻ­āĻžāĻŦā§‡ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻŦā§‡āĻ¨ āĻ¤āĻž āĻāĻ‡ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§‡ āĻ†āĻ˛ā§‹āĻšāĻ¨āĻž āĻ•āĻ°āĻž āĻšāĻŦā§‡āĨ¤

āĻ•āĻ°ā§āĻŽ āĻĒāĻ°āĻŋāĻ•āĻ˛ā§āĻĒāĻ¨āĻž

  • āĻĒāĻ°āĻŋāĻŦā§‡āĻļ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤ āĻ•āĻ°ā§āĻ¨
  • āĻāĻ•āĻŸāĻŋ āĻĒāĻ°āĻŋāĻˇā§āĻ•āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ āĻ•āĻ°ā§āĻ¨ āĻāĻŦāĻ‚ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§€āĻ¯āĻŧ āĻ¸ā§‡āĻŸāĻŋāĻ‚āĻ¸ āĻ•āĻ°ā§āĻ¨
  • āĻĄāĻŋāĻ¸ā§āĻ•ā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻ¸ā§āĻ¨ā§āĻ¯āĻžāĻĒāĻļāĻŸ āĻ¨āĻŋāĻ¨
  • AMI āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻ¨ āĻ•āĻ°ā§āĻ¨

āĻĒāĻ°āĻŋāĻŦā§‡āĻļ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡

āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻ‰āĻĻā§āĻĻā§‡āĻļā§āĻ¯ā§‡, āĻ•ā§‹āĻ¨ā§‹ āĻ…āĻĢāĻŋāĻ¸āĻŋāĻ¯āĻŧāĻžāĻ˛ āĻ¸ā§‡āĻ¨ā§āĻŸā§‹āĻ¸ 7 āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻ¯ā§‡āĻ•ā§‹āĻ¨ā§‹ āĻ†āĻ•ā§ƒāĻ¤āĻŋ, āĻāĻŽāĻ¨āĻ•āĻŋ t2.microāĨ¤ āĻ†āĻĒāĻ¨āĻŋ CLI āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻāĻŸāĻŋ āĻšāĻžāĻ˛āĻžāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨:

aws ec2 run-instances 
  --image-id ami-4bf3d731 
  --region us-east-1 
  --key-name alpha 
  --instance-type t2.micro 
  --subnet-id subnet-240a8618 
  --associate-public-ip-address 
  --block-device-mappings DeviceName=/dev/sda1,Ebs={VolumeSize=8} 
  --block-device-mappings DeviceName=/dev/sdb,Ebs={VolumeSize=4}

āĻ•āĻŽāĻžāĻ¨ā§āĻĄāĻŸāĻŋ VPC-āĻ¤ā§‡ āĻāĻ•āĻŸāĻŋ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻ‰āĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻŦā§‡ āĻ¯ā§‡āĻ–āĻžāĻ¨ā§‡ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻ¸āĻžāĻŦāĻ¨ā§‡āĻŸ-āĻ†āĻ‡āĻĄāĻŋ āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ—āĻ¤āĨ¤ āĻ¸āĻžāĻŦāĻ¨ā§‡āĻŸāĻŸāĻŋ āĻ¸āĻ°ā§āĻŦāĻœāĻ¨ā§€āĻ¨ āĻšāĻ“āĻ¯āĻŧāĻžāĻ° āĻ•āĻĨāĻž, āĻāĻŦāĻ‚ SG 'āĻĄāĻŋāĻĢāĻ˛ā§āĻŸ' āĻ¸āĻŦāĻ•āĻŋāĻ›ā§āĻ° āĻ…āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§‡āĻ¯āĻŧāĨ¤

āĻāĻ–āĻ¨ ssh āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻ‡āĻ¨āĻ¸ā§āĻŸā§āĻ¯āĻžāĻ¨ā§āĻ¸ā§‡ āĻ˛āĻ— āĻ‡āĻ¨ āĻ•āĻ°āĻŋ, āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ†āĻĒāĻĄā§‡āĻŸ āĻ•āĻ°āĻŋ, āĻ‡āĻ¨ā§āĻ¸āĻŸāĻ˛ āĻ•āĻ°āĻŋ dnf āĻāĻŦāĻ‚ āĻ°āĻŋāĻŦā§āĻŸ āĻ•āĻ°ā§āĻ¨:

sudo yum update -y && sudo yum install -y dnf && sudo reboot

āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§€ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨ āĻĨā§‡āĻ•ā§‡ āĻ¸āĻžā§āĻšāĻžāĻ˛āĻŋāĻ¤ āĻšāĻŦā§‡ root.

āĻ•ā§āĻ˛āĻŋāĻ¨ āĻ¸ā§‡āĻ¨ā§āĻŸā§‹āĻ¸ 8.1 āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡

āĻĢāĻžāĻ‡āĻ˛ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ˛ā§‡āĻ†āĻ‰āĻŸ āĻāĻŦāĻ‚ āĻĒāĻžāĻ°ā§āĻŸāĻŋāĻļāĻ¨ āĻŽāĻžāĻ‰āĻ¨ā§āĻŸ āĻ•āĻ°āĻž

DEVICE=/dev/xvdb
ROOTFS=/rootfs
parted -s ${DEVICE} mktable gpt
parted -s ${DEVICE} mkpart primary ext2 1 2
parted -s ${DEVICE} set 1 bios_grub on
parted -s ${DEVICE} mkpart primary xfs 2 100%

mkfs.xfs -L root ${DEVICE}2
mkdir -p $ROOTFS
mount ${DEVICE}2 $ROOTFS

mkdir $ROOTFS/{proc,sys,dev,run}
mount --bind /proc $ROOTFS/proc
mount --bind /sys $ROOTFS/sys
mount --bind /dev $ROOTFS/dev
mount --bind /run $ROOTFS/run

āĻāĻ•āĻŸāĻŋ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻ—āĻžāĻ› āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡

RPM āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ¸āĻšāĻœā§‡āĻ‡ āĻāĻŦāĻ‚ āĻĻā§āĻ°ā§āĻ¤ āĻ­āĻŦāĻŋāĻˇā§āĻ¯āĻ¤ā§‡āĻ° OS-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ•āĻŸāĻŋ āĻĄāĻŋāĻ°ā§‡āĻ•ā§āĻŸāĻ°āĻŋ āĻŸā§āĻ°āĻŋ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤ āĻ•āĻ°āĻ¤ā§‡ āĻĻā§‡āĻ¯āĻŧ:

PKGSURL=http://mirror.centos.org/centos/8/BaseOS/x86_64/os/Packages
rpm --root=$ROOTFS --initdb
rpm --root=$ROOTFS -ivh 
  $PKGSURL/centos-release-8.1-1.1911.0.8.el8.x86_64.rpm 
  $PKGSURL/centos-gpg-keys-8.1-1.1911.0.8.el8.noarch.rpm 
  $PKGSURL/centos-repos-8.1-1.1911.0.8.el8.x86_64.rpm

dnf --installroot=$ROOTFS --nogpgcheck --setopt=install_weak_deps=False 
   -y install audit authselect basesystem bash biosdevname coreutils 
   cronie curl dnf dnf-plugins-core dnf-plugin-spacewalk dracut-config-generic 
   dracut-config-rescue e2fsprogs filesystem firewalld glibc grub2 grubby hostname 
   initscripts iproute iprutils iputils irqbalance kbd kernel kernel-tools 
   kexec-tools less linux-firmware lshw lsscsi ncurses network-scripts 
   openssh-clients openssh-server passwd plymouth policycoreutils prefixdevname 
   procps-ng  rng-tools rootfiles rpm rsyslog selinux-policy-targeted setup 
   shadow-utils sssd-kcm sudo systemd util-linux vim-minimal xfsprogs 
   chrony cloud-init 

āĻ†āĻŽāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻĒā§āĻ¯āĻžāĻ•ā§‡āĻœ āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ āĻ•āĻ°ā§‡ āĻļā§‡āĻˇ āĻ•āĻŽāĻžāĻ¨ā§āĻĄāĻŸāĻŋ āĻāĻ‡āĻ­āĻžāĻŦā§‡ āĻ•āĻžāĻ°ā§āĻ¯āĻ•āĻ° āĻ•āĻ°āĻžāĻ•ā§‡ āĻ¸āĻ°ā§āĻŦā§‹āĻ¤ā§āĻ¤āĻŽ āĻŽāĻ¨ā§‡ āĻ•āĻ°āĻŋ āĻāĻŦāĻ‚ āĻĒā§āĻ°āĻ¸ā§āĻ¤āĻžāĻŦāĻŋāĻ¤ āĻĒā§āĻ¯āĻžāĻ•ā§‡āĻœāĻ—ā§āĻ˛āĻŋāĻ•ā§‡ āĻ‰āĻĒā§‡āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻ¤ā§‡ āĻ­ā§āĻ˛āĻŦā§‡āĻ¨ āĻ¨āĻžāĨ¤

āĻ†āĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻšāĻžāĻ¨, āĻ†āĻĒāĻ¨āĻŋ āĻāĻ‡ āĻŽāĻ¤ āĻ•āĻŋāĻ›ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨:

dnf --installroot=$ROOTFS groupinstall base core 
    --excludepkgs "NetworkManager*" 
     -e "i*-firmware"

В yum āĻ¨āĻž --excludepkgs, āĻāĻŦāĻ‚ āĻ†āĻ—ā§‡ āĻ†āĻŽāĻžāĻ•ā§‡ āĻ—ā§āĻ°ā§āĻĒ āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛ āĻāĻŦāĻ‚ āĻ¤āĻžāĻ°āĻĒāĻ° āĻĒā§āĻ¯āĻžāĻ•ā§‡āĻœāĻ—ā§āĻ˛āĻŋ āĻ¸āĻ°āĻžāĻ¤ā§‡ āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛āĨ¤

āĻĒā§āĻ¯āĻžāĻ•ā§‡āĻœ āĻāĻŦāĻ‚ āĻ¨āĻŋāĻ°ā§āĻ­āĻ°āĻļā§€āĻ˛ āĻ—ā§‹āĻˇā§āĻ ā§€āĻ° āĻ¤āĻžāĻ˛āĻŋāĻ•āĻž āĻ•āĻŽāĻžāĻ¨ā§āĻĄā§‡āĻ° āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ā§‡ āĻĻā§‡āĻ–āĻž āĻ¯āĻžāĻŦā§‡ dnf group info core āĻāĻ•āĻŸāĻŋ āĻĻāĻ˛ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ core.

āĻ“āĻāĻ¸ āĻĢāĻžāĻ‡āĻ˛ āĻ•āĻžāĻ¸ā§āĻŸāĻŽāĻžāĻ‡āĻœā§‡āĻļāĻ¨

āĻšāĻ˛ā§āĻ¨ āĻ¨ā§‡āĻŸāĻ“āĻ¯āĻŧāĻžāĻ°ā§āĻ•, fstab, grub2 āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ° āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻŋ āĻāĻŦāĻ‚ DNS āĻāĻŦāĻ‚ NTP-āĻāĻ° āĻœāĻ¨ā§āĻ¯ AWS āĻ…āĻ­ā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§€āĻŖ 169.254 āĻ āĻŋāĻ•āĻžāĻ¨āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻŋāĨ¤

cat > $ROOTFS/etc/resolv.conf << HABR
nameserver 169.254.169.253
HABR

cat > $ROOTFS/etc/sysconfig/network << HABR
NETWORKING=yes
NOZEROCONF=yes
HABR

cat > $ROOTFS/etc/sysconfig/network-scripts/ifcfg-eth0  << HABR
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=dhcp
HABR

cat > $ROOTFS/etc/fstab << HABR
LABEL=root / xfs defaults,relatime 1 1
HABR

sed -i  "s/cloud-user/centos/" $ROOTFS/etc/cloud/cloud.cfg
echo "server 169.254.169.123 prefer iburst minpoll 4 maxpoll 4" >> $ROOTFS/etc/chrony.conf
sed -i "/^pool /d" $ROOTFS/etc/chrony.conf
sed -i "s/^AcceptEnv/# /" $ROOTFS/etc/ssh/sshd_config

cat > $ROOTFS/etc/default/grub << HABR
GRUB_TIMEOUT=1
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto console=ttyS0,115200n8 console=tty0 net.ifnames=0 biosdevname=0"
GRUB_DISABLE_RECOVERY="true"
GRUB_ENABLE_BLSCFG=true
HABR

āĻāĻ–āĻžāĻ¨ā§‡āĻ‡, GRUB_CMDLINE_LINUX-āĻ, āĻ¯āĻžāĻ°āĻž SELinux āĻ¨āĻŋāĻ¯āĻŧā§‡ āĻāĻ–āĻ¨āĻ“ āĻ­āĻ¯āĻŧ āĻĒāĻžāĻ¨ āĻ¤āĻžāĻĻā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻŽāĻŋ selinux=0 āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ– āĻ•āĻ°āĻžāĻ° āĻ¸ā§āĻĒāĻžāĻ°āĻŋāĻļ āĻ•āĻ°āĻ›āĻŋāĨ¤

chroot-āĻ initramfs āĻĒā§āĻ¨āĻ°ā§āĻ¨āĻŋāĻ°ā§āĻŽāĻžāĻŖ

grub āĻāĻŦāĻ‚ fstab āĻĢāĻžāĻ‡āĻ˛āĻ—ā§āĻ˛āĻŋ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨āĻž āĻ•āĻ°āĻžāĻ° āĻĒāĻ°ā§‡, āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻĒā§āĻ¨āĻ°ā§āĻ¨āĻŋāĻ°ā§āĻŽāĻžāĻŖ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤
āĻ†āĻŽāĻ°āĻž āĻ†āĻĒāĻĄā§‡āĻŸ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨ āĻ•āĻ°āĻŋ:

KERNEL=$(ls $ROOTFS/lib/modules/) 
chroot $ROOTFS dracut -f -v /boot/initramfs-$KERNEL.img $KERNEL
chroot $ROOTFS grub2-mkconfig -o /boot/grub2/grub.cfg
chroot $ROOTFS grub2-install $DEVICE
chroot $ROOTFS update-crypto-policies --set FUTURE

āĻāĻ–āĻžāĻ¨ā§‡ update-crypto-policies - āĻāĻšā§āĻ›āĻŋāĻ•, āĻĒā§āĻ¯āĻžāĻ°āĻžāĻ¨āĻ¯āĻŧā§‡āĻĄā§‡āĻ° āĻœāĻ¨ā§āĻ¯ :)

"āĻŦāĻŋāĻ•ā§āĻ°āĻ¯āĻŧ" āĻāĻ° āĻœāĻ¨ā§āĻ¯, āĻ†āĻĒāĻ¨āĻŋ āĻāĻŸāĻŋ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨:

chroot $ROOTFS fips-mode-setup --enable
chroot $ROOTFS grub2-mkconfig -o /boot/grub2/grub.cfg
chroot $ROOTFS grub2-install $DEVICE

OS āĻ˛ā§‹āĻĄ āĻ•āĻ°āĻžāĻ° āĻĒāĻ°ā§‡, āĻ•āĻŽāĻžāĻ¨ā§āĻĄ update-crypto-policies --show FIPS āĻ‡āĻ¸ā§āĻ¯ā§ āĻ•āĻ°āĻŦā§‡āĨ¤

āĻ…āĻŸā§‹āĻ¸ā§āĻŸāĻžāĻ°ā§āĻŸ āĻāĻŦāĻ‚ āĻ†āĻŦāĻ°ā§āĻœāĻ¨āĻž āĻĒāĻ°āĻŋāĻˇā§āĻ•āĻžāĻ° āĻ•āĻ°āĻž

chroot $ROOTFS systemctl enable network.service
chroot $ROOTFS systemctl enable sshd.service
chroot $ROOTFS systemctl enable cloud-init.service
chroot $ROOTFS systemctl mask tmp.mount
dnf --installroot=$ROOTFS clean all
truncate -c -s 0 $ROOTFS/var/log/*.log
rm -rf var/lib/dnf/*
touch $ROOTFS/.autorelabel

autorelabel - āĻĒā§āĻ°āĻĨāĻŽ āĻŦā§āĻŸā§‡ SELinux āĻĒā§āĻ°āĻ¸āĻ™ā§āĻ— āĻĢāĻžāĻ‡āĻ˛āĻ—ā§āĻ˛āĻŋ āĻ¸ā§āĻŦāĻ¯āĻŧāĻ‚āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻ­āĻžāĻŦā§‡ āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨āĨ¤

āĻāĻ–āĻ¨ āĻĄāĻŋāĻ¸ā§āĻ• āĻ†āĻ¨āĻŽāĻžāĻ‰āĻ¨ā§āĻŸ āĻ•āĻ°āĻž āĻ¯āĻžāĻ•:

sync
umount $ROOTFS/{proc,sys,dev,run}
umount $ROOTFS

āĻāĻāĻŽāĻ†āĻ‡ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻ¨

āĻāĻ•āĻŸāĻŋ ebs āĻĄāĻŋāĻ¸ā§āĻ• āĻĨā§‡āĻ•ā§‡ ami āĻĒā§‡āĻ¤ā§‡, āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻĒā§āĻ°āĻĨāĻŽā§‡ āĻĄāĻŋāĻ¸ā§āĻ•ā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻ¸ā§āĻ¨ā§āĻ¯āĻžāĻĒāĻļāĻŸ āĻ¨āĻŋāĻ¤ā§‡ āĻšāĻŦā§‡:

aws ec2 create-snapshot 
    --volume-id vol-09f26eba4c50da110  --region us-east-1 
    --description 'centos-release-8.1-1.1911.0.8 4.18.0-147.5.1 01'

āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ•āĻŋāĻ›ā§ āĻ¸āĻŽāĻ¯āĻŧ āĻ…āĻĒā§‡āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤ āĻĒā§āĻ°āĻžāĻĒā§āĻ¤ āĻ¸ā§āĻ¨ā§āĻ¯āĻžāĻĒāĻļāĻŸ āĻ†āĻ‡āĻĄāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡ āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻž āĻ•āĻ°āĻž āĻ¯āĻžāĻ•:

aws ec2   describe-snapshots  --region us-east-1 --snapshot-ids snap-0b665542fc59e58ed

āĻ†āĻŽāĻ°āĻž āĻ¯āĻ–āĻ¨ āĻāĻŸāĻŋ āĻĒā§‡āĻ¤ā§‡ "State": "completed", āĻ†āĻĒāĻ¨āĻŋ āĻāĻ•āĻŸāĻŋ AMI āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ āĻāĻŦāĻ‚ āĻāĻŸāĻŋ āĻ¸āĻ°ā§āĻŦāĻœāĻ¨ā§€āĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨:

aws ec2 register-image 
    --region us-east-1 
    --name 'CentOS-8.1-1.1911.0.8-minimal' 
    --description 'centos-release-8.1-1.1911.0.8 4.18.0-147.5.1 01' 
    --virtualization-type hvm --root-device-name /dev/sda1 
    --block-device-mappings '[{"DeviceName":"/dev/sda1","Ebs": { "SnapshotId": "snap-0b665542fc59e58ed", "VolumeSize":4,  "DeleteOnTermination": true, "VolumeType": "gp2"}}]' 
    --architecture x86_64 --sriov-net-support simple --ena-support

aws ec2 modify-image-attribute 
    --region us-east-1 
    --image-id ami-011ed2a37dc89e206 
    --launch-permission 'Add=[{Group=all}]'

āĻāĻ–āĻžāĻ¨ā§‡āĻ‡ āĻļā§‡āĻˇ. āĻāĻ–āĻ¨ āĻ†āĻĒāĻ¨āĻŋ āĻĻā§ƒāĻˇā§āĻŸāĻžāĻ¨ā§āĻ¤ āĻšāĻžāĻ˛ā§ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨.

āĻāĻ‡āĻ­āĻžāĻŦā§‡, āĻ†āĻĒāĻ¨āĻŋ āĻāĻ•āĻŸāĻŋ āĻ‡āĻŽā§‡āĻœ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨, āĻ¸āĻŽā§āĻ­āĻŦāĻ¤, āĻ¯ā§‡āĻ•ā§‹āĻ¨ā§‹ āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ āĻĄāĻŋāĻ¸ā§āĻŸā§āĻ°āĻŋāĻŦāĻŋāĻ‰āĻļāĻ¨ā§‡āĻ° āĻ¸āĻžāĻĨā§‡āĨ¤ āĻ…āĻ¨ā§āĻ¤āĻ¤ āĻ āĻŋāĻ• āĻĄā§‡āĻŦāĻŋāĻ¯āĻŧāĻžāĻ¨ (āĻāĻ•āĻŸāĻŋ āĻĒāĻ°āĻŋāĻˇā§āĻ•āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ āĻ•āĻ°āĻ¤ā§‡ āĻĄāĻŋāĻŦā§āĻŸāĻ¸ā§āĻŸā§āĻ°ā§āĻ¯āĻžāĻĒ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°ā§‡) āĻāĻŦāĻ‚ RHEL āĻĒāĻ°āĻŋāĻŦāĻžāĻ°āĨ¤

āĻšāĻžāĻ˛āĻ¨āĻžāĻ—āĻžāĻĻ āĻĒāĻžāĻ āĻ•āĻĻā§‡āĻ° āĻ…āĻ¨ā§āĻ°ā§‹āĻ§ā§‡āĻ° āĻ­āĻŋāĻ¤ā§āĻ¤āĻŋāĻ¤ā§‡āĨ¤ āĻāĻ‡ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ¸ā§āĻŦāĻ¯āĻŧāĻ‚āĻ•ā§āĻ°āĻŋāĻ¯āĻŧ āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ āĻ­āĻ°āĻ•, āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¸ā§āĻŦāĻ¯āĻŧāĻ‚āĻ•ā§āĻ°āĻŋāĻ¯āĻŧ. āĻāĻ–āĻžāĻ¨ā§‡ āĻāĻ•āĻŸāĻŋ āĻ‰āĻĻāĻžāĻšāĻ°āĻŖ āĻŸā§‡āĻŽāĻĒā§āĻ˛ā§‡āĻŸ āĻ‰āĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ.

āĻ‰āĻ¤ā§āĻ¸: www.habr.com

āĻāĻ•āĻŸāĻŋ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻœā§āĻĄāĻŧā§āĻ¨